From: Fletcher T. Penney Date: Sat, 22 Jul 2017 00:57:30 +0000 (-0400) Subject: UPDATED: Tweak astyle settings X-Git-Tag: 6.2.0^2~16 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=36b08ada4cb72dea22f77c21675d6d779e76b102;p=multimarkdown UPDATED: Tweak astyle settings --- diff --git a/.astylerc b/.astylerc index 24a2053..9d6d34a 100644 --- a/.astylerc +++ b/.astylerc @@ -13,8 +13,21 @@ # Indent pre-processor directives --indent-preproc-block +--indent-preproc-define --indent-preproc-cond +# Line endings +--lineend=linux + +# Add brackets to one-liners +--add-brackets + +# Pad with blank lines +--break-blocks + +# Pad around operators +--pad-oper + # Excludes --exclude="Sources/libMultiMarkdown/scanners.c" diff --git a/Sources/libMultiMarkdown/aho-corasick.c b/Sources/libMultiMarkdown/aho-corasick.c index 38020db..c08c2d9 100644 --- a/Sources/libMultiMarkdown/aho-corasick.c +++ b/Sources/libMultiMarkdown/aho-corasick.c @@ -70,8 +70,9 @@ trie * trie_new(size_t startingSize) { trie * a = malloc(sizeof(trie)); if (a) { - if (startingSize <= 1) + if (startingSize <= 1) { startingSize = kTrieStartingSize; + } a->node = malloc(sizeof(trie_node) * startingSize); @@ -217,8 +218,9 @@ size_t trie_search(trie * a, const char * query) { unsigned short trie_search_match_type(trie * a, const char * query) { size_t s = trie_search(a, query); - if (s == -1) + if (s == -1) { return -1; + } return a->node[s].match_type; } @@ -266,8 +268,9 @@ void ac_trie_node_prepare(trie * a, size_t s, char * buffer, unsigned short dept while ((suffix[0] != '\0') && (n->ac_fail == 0)) { n->ac_fail = trie_search(a, suffix); - if (n->ac_fail == -1) + if (n->ac_fail == -1) { n->ac_fail = 0; + } if (n->ac_fail == s) { // Something went wrong @@ -398,6 +401,7 @@ match * ac_trie_search(trie * a, const char * source, size_t start, size_t len) result = match_new(0, 0, 0); m = result; } + m = match_add(m, counter - a->node[temp_state].len, a->node[temp_state].len, a->node[temp_state].match_type); } @@ -447,6 +451,7 @@ void match_describe(match * m, const char * source) { void match_set_describe(match * m, const char * source) { m = m->next; // Skip header + while (m) { match_describe(m, source); m = m->next; @@ -501,8 +506,9 @@ void match_set_filter_leftmost_longest(match * header) { match * ac_trie_leftmost_longest_search(trie * a, const char * source, size_t start, size_t len) { match * result = ac_trie_search(a, source, start, len); - if (result) + if (result) { match_set_filter_leftmost_longest(result); + } return result; } @@ -559,8 +565,9 @@ void Test_aho_trie_search(CuTest* tc) { void trie_node_to_graphviz(trie * a, size_t s) { trie_node * n = &a->node[s]; - if (n->match_type) + if (n->match_type) { fprintf(stderr, "\"%lu\" [shape=doublecircle]\n", s); + } for (int i = 0; i < 256; ++i) { if (n->child[i]) { @@ -571,16 +578,19 @@ void trie_node_to_graphviz(trie * a, size_t s) { } } - if (n->ac_fail) + if (n->ac_fail) { fprintf(stderr, "\"%lu\" -> \"%lu\" [label=\"fail\"]\n", s, n->ac_fail); + } } void trie_to_graphviz(trie * a) { fprintf(stderr, "digraph dfa {\n"); + for (int i = 0; i < a->size; ++i) { trie_node_to_graphviz(a, i); } + fprintf(stderr, "}\n"); } diff --git a/Sources/libMultiMarkdown/beamer.c b/Sources/libMultiMarkdown/beamer.c index bf7a9fb..1f7322c 100644 --- a/Sources/libMultiMarkdown/beamer.c +++ b/Sources/libMultiMarkdown/beamer.c @@ -75,9 +75,11 @@ void mmd_outline_add_beamer(DString * out, token * current, scratch_pad * scratc case BLOCK_SETEXT_1: level = 1; break; + case BLOCK_SETEXT_2: level = 2; break; + default: level = 1 + current->type - BLOCK_H1; } @@ -95,9 +97,11 @@ void mmd_outline_add_beamer(DString * out, token * current, scratch_pad * scratc case BLOCK_SETEXT_1: t_level = 1; break; + case BLOCK_SETEXT_2: t_level = 2; break; + default: t_level = 1 + t->type - BLOCK_H1; } @@ -112,6 +116,7 @@ void mmd_outline_add_beamer(DString * out, token * current, scratch_pad * scratc print_const("\\end{frame}\n\n"); scratch->padded = 2; break; + case 4: pad(out, 1, scratch); print_const("}\n\n"); @@ -137,6 +142,7 @@ void mmd_outline_add_beamer(DString * out, token * current, scratch_pad * scratc scratch->padded = 1; stack_push(s, current); break; + case 4: pad(out, 2, scratch); print_const("\\mode
{"); @@ -148,8 +154,9 @@ void mmd_outline_add_beamer(DString * out, token * current, scratch_pad * scratc void mmd_export_token_beamer(DString * out, const char * source, token * t, scratch_pad * scratch) { - if (t == NULL) + if (t == NULL) { return; + } short temp_short; char * temp_char = NULL; @@ -159,10 +166,12 @@ void mmd_export_token_beamer(DString * out, const char * source, token * t, scra case DOC_START_TOKEN: mmd_export_token_tree_beamer(out, source, t->child, scratch); break; + case BLOCK_CODE_FENCED: pad(out, 2, scratch); temp_char = get_fence_language_specifier(t->child->child, source); + if (temp_char) { printf("\\begin{lstlisting}[language=%s]\n", temp_char); } else { @@ -177,8 +186,10 @@ void mmd_export_token_beamer(DString * out, const char * source, token * t, scra } else { print_const("\\end{verbatim}"); } + scratch->padded = 0; break; + case BLOCK_CODE_INDENTED: pad(out, 2, scratch); print_const("\\begin{verbatim}\n"); @@ -186,6 +197,7 @@ void mmd_export_token_beamer(DString * out, const char * source, token * t, scra print_const("\\end{verbatim}"); scratch->padded = 0; break; + case BLOCK_H1: case BLOCK_H2: case BLOCK_H3: @@ -202,9 +214,11 @@ void mmd_export_token_beamer(DString * out, const char * source, token * t, scra case BLOCK_SETEXT_1: temp_short = 1; break; + case BLOCK_SETEXT_2: temp_short = 2; break; + default: temp_short = t->type - BLOCK_H1 + 1; } @@ -213,12 +227,15 @@ void mmd_export_token_beamer(DString * out, const char * source, token * t, scra case 1: print_const("\\part{"); break; + case 2: print_const("\\section{"); break; + case 3: print_const("\\frametitle{"); break; + default: print_const("\\emph{"); break; @@ -230,18 +247,23 @@ void mmd_export_token_beamer(DString * out, const char * source, token * t, scra print_const("}"); } else { temp_token = manual_label_from_header(t, source); + if (temp_token) { temp_char = label_from_token(source, temp_token); } else { temp_char = label_from_token(source, t); } + printf("}\n\\label{%s}", temp_char); - if (temp_char) + if (temp_char) { free(temp_char); + } } + scratch->padded = 0; break; + default: // Default to LaTeX behavior mmd_export_token_latex(out, source, t, scratch); diff --git a/Sources/libMultiMarkdown/char.c b/Sources/libMultiMarkdown/char.c index 1f8b1f3..902768a 100644 --- a/Sources/libMultiMarkdown/char.c +++ b/Sources/libMultiMarkdown/char.c @@ -99,11 +99,13 @@ int char_is_line_ending(char c) { // Is character part of Windows line ending ('\r\n')? int char_is_windows_line_ending(char * c) { - if (*c == '\n') + if (*c == '\n') { return (*(c - 1) == '\r') ? 1 : 0; + } - if (*c == '\r') + if (*c == '\r') { return (*(c + 1) == '\n') ? 1 : 0; + } return 0; } diff --git a/Sources/libMultiMarkdown/char_lookup.c b/Sources/libMultiMarkdown/char_lookup.c index e61a36c..fc5c10e 100644 --- a/Sources/libMultiMarkdown/char_lookup.c +++ b/Sources/libMultiMarkdown/char_lookup.c @@ -132,6 +132,7 @@ int main( int argc, char** argv ) { for (char i = 'a'; i <= 'z'; ++i) { alpha(i); } + for (char i = 'A'; i <= 'Z'; ++i) { alpha(i); } @@ -139,6 +140,7 @@ int main( int argc, char** argv ) { // Extended ASCII #ifdef USE_EXTENDED_ASCII + // Punctuation ranges for (int i = 132; i < 138; ++i) { punctuation(i); @@ -176,9 +178,11 @@ int main( int argc, char** argv ) { case 247: punctuation(i); break; + case 160: whitespace(i); break; + case 131: case 138: case 140: @@ -188,10 +192,12 @@ int main( int argc, char** argv ) { case 159: alpha(i); break; + default: break; } } + #endif diff --git a/Sources/libMultiMarkdown/critic_markup.c b/Sources/libMultiMarkdown/critic_markup.c index 61b2954..43d47a4 100644 --- a/Sources/libMultiMarkdown/critic_markup.c +++ b/Sources/libMultiMarkdown/critic_markup.c @@ -185,12 +185,16 @@ void accept_token(DString * d, token * t) { if (t->mate) { d_string_erase(d, t->start, t->len); } + break; + case CM_SUB_OPEN: case CM_ADD_OPEN: case CM_ADD_CLOSE: - if (!t->mate) + if (!t->mate) { break; + } + case CM_SUB_DIV: case CM_DEL_PAIR: case CM_COM_PAIR: @@ -198,15 +202,23 @@ void accept_token(DString * d, token * t) { // Erase these d_string_erase(d, t->start, t->len); break; + case CM_SUB_PAIR: + // Erase old version and markers - if (t->child) + if (t->child) { accept_token_tree_sub(d, t->child->mate); + } + break; + case CM_ADD_PAIR: + // Check children - if (t->child) + if (t->child) { accept_token_tree(d, t->child->mate); + } + break; } } @@ -224,8 +236,9 @@ void accept_token_tree(DString * d, token * t) { void mmd_critic_markup_accept(DString * d) { token * t = critic_parse_substring(d->str, 0, d->currentStringLength); - if (t && t->child) + if (t && t->child) { accept_token_tree(d, t->child->tail); + } token_free(t); } @@ -256,12 +269,16 @@ void reject_token(DString * d, token * t) { if (t->mate) { d_string_erase(d, t->start, t->len); } + break; + case CM_SUB_OPEN: case CM_DEL_OPEN: case CM_DEL_CLOSE: - if (!t->mate) + if (!t->mate) { break; + } + case CM_SUB_DIV: case CM_ADD_PAIR: case CM_COM_PAIR: @@ -269,15 +286,23 @@ void reject_token(DString * d, token * t) { // Erase these d_string_erase(d, t->start, t->len); break; + case CM_SUB_PAIR: + // Erase new version and markers - if (t->child) + if (t->child) { reject_token_tree_sub(d, t->child->mate); + } + break; + case CM_DEL_PAIR: + // Check children - if (t->child) + if (t->child) { reject_token_tree(d, t->child->mate); + } + break; } } @@ -295,8 +320,9 @@ void reject_token_tree(DString * d, token * t) { void mmd_critic_markup_reject(DString * d) { token * t = critic_parse_substring(d->str, 0, d->currentStringLength); - if (t && t->child) + if (t && t->child) { reject_token_tree(d, t->child->tail); + } token_free(t); diff --git a/Sources/libMultiMarkdown/d_string.c b/Sources/libMultiMarkdown/d_string.c index eac5328..f40aca6 100644 --- a/Sources/libMultiMarkdown/d_string.c +++ b/Sources/libMultiMarkdown/d_string.c @@ -85,7 +85,11 @@ int vasprintf(char** strp, const char* fmt, va_list ap) { va_copy(ap2, ap); char tmp[1]; int size = vsnprintf(tmp, 1, fmt, ap2); - if (size <= 0) return size; + + if (size <= 0) { + return size; + } + va_end(ap2); size += 1; *strp = (char*)malloc(size * sizeof(char)); @@ -104,13 +108,17 @@ int vasprintf(char** strp, const char* fmt, va_list ap) { DString* d_string_new(const char * startingString) { DString* newString = malloc(sizeof(DString)); - if (!newString) + if (!newString) { return NULL; + } - if (startingString == NULL) startingString = ""; + if (startingString == NULL) { + startingString = ""; + } size_t startingBufferSize = kStringBufferStartingSize; size_t startingStringSize = strlen(startingString); + while (startingBufferSize < (startingStringSize + 1)) { startingBufferSize *= kStringBufferGrowthMultiplier; } @@ -133,14 +141,17 @@ DString* d_string_new(const char * startingString) { /// Free dynamic string char* d_string_free(DString * ripString, bool freeCharacterData) { - if (ripString == NULL) + if (ripString == NULL) { return NULL; + } char* returnedString = ripString->str; + if (freeCharacterData) { if (ripString->str != NULL) { free(ripString->str); } + returnedString = NULL; } @@ -153,6 +164,7 @@ char* d_string_free(DString * ripString, bool freeCharacterData) { /// Ensure that dynamic string has specified capacity static void ensureStringBufferCanHold(DString * baseString, size_t newStringSize) { size_t newBufferSizeNeeded = newStringSize + 1; + if (newBufferSizeNeeded > baseString->currentStringBufferSize) { size_t newBufferSize = baseString->currentStringBufferSize; @@ -173,6 +185,7 @@ static void ensureStringBufferCanHold(DString * baseString, size_t newStringSize exit(1); } + baseString->str = temp; baseString->currentStringBufferSize = newBufferSize; } @@ -224,10 +237,12 @@ void d_string_append_printf(DString * baseString, const char * format, ...) { char* formattedString = NULL; vasprintf(&formattedString, format, args); + if (formattedString != NULL) { d_string_append(baseString, formattedString); free(formattedString); } + va_end(args); } @@ -253,8 +268,9 @@ void d_string_insert(DString * baseString, size_t pos, const char * insertedStri size_t insertedStringLength = strlen(insertedString); if ((insertedString != NULL) && (insertedStringLength > 0)) { - if (pos > baseString->currentStringLength) + if (pos > baseString->currentStringLength) { pos = baseString->currentStringLength; + } size_t newStringLength = baseString->currentStringLength + insertedStringLength; ensureStringBufferCanHold(baseString, newStringLength); @@ -270,8 +286,9 @@ void d_string_insert(DString * baseString, size_t pos, const char * insertedStri /// Insert single character inside dynamic string void d_string_insert_c(DString * baseString, size_t pos, char insertedCharacter) { - if (pos > baseString->currentStringLength) + if (pos > baseString->currentStringLength) { pos = baseString->currentStringLength; + } size_t newSizeNeeded = baseString->currentStringLength + 1; ensureStringBufferCanHold(baseString, newSizeNeeded); @@ -292,21 +309,25 @@ void d_string_insert_printf(DString * baseString, size_t pos, const char * forma char* formattedString = NULL; vasprintf(&formattedString, format, args); + if (formattedString != NULL) { d_string_insert(baseString, pos, formattedString); free(formattedString); } + va_end(args); } /// Erase portion of dynamic string void d_string_erase(DString * baseString, size_t pos, size_t len) { - if ((pos > baseString->currentStringLength) || (len <= 0)) + if ((pos > baseString->currentStringLength) || (len <= 0)) { return; + } - if ((pos + len) >= baseString->currentStringLength) + if ((pos + len) >= baseString->currentStringLength) { len = -1; + } if (len == -1) { baseString->currentStringLength = pos; diff --git a/Sources/libMultiMarkdown/epub.c b/Sources/libMultiMarkdown/epub.c index eb82d56..bb6c43b 100644 --- a/Sources/libMultiMarkdown/epub.c +++ b/Sources/libMultiMarkdown/epub.c @@ -126,6 +126,7 @@ char * epub_package_document(scratch_pad * scratch) { // Identifier HASH_FIND_STR(scratch->meta_hash, "uuid", m); + if (m) { print_const("urn:uuid:"); mmd_print_string_html(out, m->value, false); @@ -141,6 +142,7 @@ char * epub_package_document(scratch_pad * scratch) { // Title HASH_FIND_STR(scratch->meta_hash, "title", m); + if (m) { print_const(""); mmd_print_string_html(out, m->value, false); @@ -151,6 +153,7 @@ char * epub_package_document(scratch_pad * scratch) { // Author HASH_FIND_STR(scratch->meta_hash, "author", m); + if (m) { print_const(""); mmd_print_string_html(out, m->value, false); @@ -160,6 +163,7 @@ char * epub_package_document(scratch_pad * scratch) { // Language HASH_FIND_STR(scratch->meta_hash, "language", m); + if (m) { print_const(""); mmd_print_string_html(out, m->value, false); @@ -169,18 +173,23 @@ char * epub_package_document(scratch_pad * scratch) { case LC_ES: print_const("es\n"); break; + case LC_DE: print_const("de\n"); break; + case LC_FR: print_const("fr\n"); break; + case LC_NL: print_const("nl\n"); break; + case LC_SV: print_const("sv\n"); break; + default: print_const("en\n"); } @@ -188,6 +197,7 @@ char * epub_package_document(scratch_pad * scratch) { // Date HASH_FIND_STR(scratch->meta_hash, "date", m); + if (m) { print_const(""); mmd_print_string_html(out, m->value, false); @@ -245,6 +255,7 @@ void epub_export_nav_entry(DString * out, const char * source, scratch_pad * scr if (*counter < scratch->header_stack->size - 1) { next = stack_peek_index(scratch->header_stack, *counter + 1); next_level = next->type - BLOCK_H1 + 1; + if (next_level > entry_level) { // This entry has children (*counter)++; @@ -286,11 +297,13 @@ char * epub_nav(mmd_engine * e, scratch_pad * scratch) { d_string_append(out, "\n"); HASH_FIND_STR(scratch->meta_hash, "title", temp); + if (temp) { mmd_print_string_html(out, temp->value, false); } else { print_const("Untitled"); } + print_const("\n\n"); print_const("\n