Merge branch 'jk/core-comment-string'
core.commentChar used to be limited to a single byte, but has been updated to allow an arbitrary multi-byte sequence. * jk/core-comment-string: config: add core.commentString config: allow multi-byte core.commentChar environment: drop comment_line_char compatibility macro wt-status: drop custom comment-char stringification sequencer: handle multi-byte comment characters when writing todo list find multi-byte comment chars in unterminated buffers find multi-byte comment chars in NUL-terminated strings prefer comment_line_str to comment_line_char for printing strbuf: accept a comment string for strbuf_add_commented_lines() strbuf: accept a comment string for strbuf_commented_addf() strbuf: accept a comment string for strbuf_stripspace() environment: store comment_line_char as a string strbuf: avoid shadowing global comment_line_char name commit: refactor base-case of adjust_comment_line_char() strbuf: avoid static variables in strbuf_add_commented_lines() strbuf: simplify comment-handling in add_lines() helper config: forbid newline as core.commentChar
This commit is contained in:
9
strbuf.h
9
strbuf.h
@ -288,7 +288,7 @@ void strbuf_splice(struct strbuf *sb, size_t pos, size_t len,
|
||||
*/
|
||||
void strbuf_add_commented_lines(struct strbuf *out,
|
||||
const char *buf, size_t size,
|
||||
char comment_line_char);
|
||||
const char *comment_prefix);
|
||||
|
||||
|
||||
/**
|
||||
@ -384,7 +384,7 @@ void strbuf_addf(struct strbuf *sb, const char *fmt, ...);
|
||||
* blank to the buffer.
|
||||
*/
|
||||
__attribute__((format (printf, 3, 4)))
|
||||
void strbuf_commented_addf(struct strbuf *sb, char comment_line_char, const char *fmt, ...);
|
||||
void strbuf_commented_addf(struct strbuf *sb, const char *comment_prefix, const char *fmt, ...);
|
||||
|
||||
__attribute__((format (printf,2,0)))
|
||||
void strbuf_vaddf(struct strbuf *sb, const char *fmt, va_list ap);
|
||||
@ -518,11 +518,11 @@ int strbuf_getcwd(struct strbuf *sb);
|
||||
int strbuf_normalize_path(struct strbuf *sb);
|
||||
|
||||
/**
|
||||
* Strip whitespace from a buffer. If comment_line_char is non-NUL,
|
||||
* Strip whitespace from a buffer. If comment_prefix is non-NULL,
|
||||
* then lines beginning with that character are considered comments,
|
||||
* thus removed.
|
||||
*/
|
||||
void strbuf_stripspace(struct strbuf *buf, char comment_line_char);
|
||||
void strbuf_stripspace(struct strbuf *buf, const char *comment_prefix);
|
||||
|
||||
static inline int strbuf_strip_suffix(struct strbuf *sb, const char *suffix)
|
||||
{
|
||||
@ -678,6 +678,7 @@ char *xstrfmt(const char *fmt, ...);
|
||||
|
||||
int starts_with(const char *str, const char *prefix);
|
||||
int istarts_with(const char *str, const char *prefix);
|
||||
int starts_with_mem(const char *str, size_t len, const char *prefix);
|
||||
|
||||
/*
|
||||
* If the string "str" is the same as the string in "prefix", then the "arg"
|
||||
|
Reference in New Issue
Block a user