diff --git a/console/tidy.c b/console/tidy.c index 000dee1..265e178 100644 --- a/console/tidy.c +++ b/console/tidy.c @@ -2480,19 +2480,18 @@ int main( int argc, char** argv ) if ( argc <= 1 ) break; } /* read command line loop */ - - - if (!tidyOptGetBool(tdoc, TidyQuiet) && - errout == stderr && !contentErrors) + + /* blank line for screen formatting */ + if ( errout == stderr && !contentErrors && !tidyOptGetBool( tdoc, TidyQuiet ) ) fprintf(errout, "\n"); - - if (contentErrors + contentWarnings > 0 && - !tidyOptGetBool(tdoc, TidyQuiet)) + + /* footnote printing only if errors or warnings */ + if ( contentErrors + contentWarnings > 0 ) tidyErrorSummary(tdoc); - - if (!tidyOptGetBool(tdoc, TidyQuiet)) - tidyGeneralInfo(tdoc); - + + /* prints the general info, if applicable */ + tidyGeneralInfo(tdoc); + /* called to free hash tables etc. */ tidyRelease( tdoc ); diff --git a/src/language_en.h b/src/language_en.h index 16a1913..8dc3e34 100644 --- a/src/language_en.h +++ b/src/language_en.h @@ -1812,7 +1812,7 @@ static languageDefinition language_en = { whichPluralForm_en, { { STRING_CONTENT_LOOKS, 0, "Document content looks like %s" }, { STRING_DOCTYPE_GIVEN, 0, "Doctype given is \"%s\"" }, {/* The strings "Tidy" and "HTML Tidy" are the program name and must not be translated. */ - STRING_ERROR_COUNT, 0, "Tidy found %u %s and %u %s!" + STRING_ERROR_COUNT, 0, "Tidy found %u %s and %u %s!\n" }, {/* This console output should be limited to 78 characters per line. - The strings "Tidy" and "HTML Tidy" are the program name and must not be translated. */ @@ -1820,9 +1820,9 @@ static languageDefinition language_en = { whichPluralForm_en, { "This document has errors that must be fixed before\n" "using HTML Tidy to generate a tidied up version.\n" }, - { STRING_NO_ERRORS, 0, "No warnings or errors were found." }, + { STRING_NO_ERRORS, 0, "No warnings or errors were found.\n" }, { STRING_NO_SYSID, 0, "No system identifier in emitted doctype" }, - { STRING_NOT_ALL_SHOWN, 0, "Tidy found %u %s and %u %s! Not all warnings/errors were shown." }, + { STRING_NOT_ALL_SHOWN, 0, "Tidy found %u %s and %u %s! Not all warnings/errors were shown.\n" }, {/* This console output should be limited to 78 characters per line. - The strings "Tidy" and "HTML Tidy" are the program name and must not be translated. */ TEXT_GENERAL_INFO, 0, diff --git a/src/language_fr.h b/src/language_fr.h index 4bb6c16..ce617bf 100644 --- a/src/language_fr.h +++ b/src/language_fr.h @@ -1,4 +1,4 @@ -#ifndef language_fr_h +#ifndef language_fr_h #define language_fr_h /* * language_fr.h @@ -742,14 +742,14 @@ static languageDefinition language_fr = { whichPluralForm_fr, { }, { STRING_CONTENT_LOOKS, 0, "Le contenu du document ressemble à %s" }, { STRING_DOCTYPE_GIVEN, 0, "DOCTYPE donnée est «%s»" }, - { STRING_ERROR_COUNT, 0, "Tidy a trouvé %u %s et %u %s!" }, + { STRING_ERROR_COUNT, 0, "Tidy a trouvé %u %s et %u %s!\n" }, { STRING_NEEDS_INTERVENTION, 0, "Ce document contient des erreurs qui doivent d'abord être résolues\n" "en utilisant HTML Tidy pour produire une version nettoyée.\n" }, - { STRING_NO_ERRORS, 0, "Aucun avertissement ou erreur trouvée." }, + { STRING_NO_ERRORS, 0, "Aucun avertissement ou erreur trouvée.\n" }, { STRING_NO_SYSID, 0, "Aucun identifiant système dans le doctype soumis" }, - { STRING_NOT_ALL_SHOWN, 0, "Tidy a trouvé %u %s et %u %s! Tous les avertissements et erreurs n'ont pas été affichés." }, + { STRING_NOT_ALL_SHOWN, 0, "Tidy a trouvé %u %s et %u %s! Tous les avertissements et erreurs n'ont pas été affichés.\n" }, { TEXT_GENERAL_INFO, 0, "À propos de HTML Tidy: https://github.com/htacg/tidy-html5\n" "Rapports de bugs et commentaires: https://github.com/htacg/tidy-html5/issues\n" diff --git a/src/language_pt_br.h b/src/language_pt_br.h index 48bcdf0..6b7434f 100644 --- a/src/language_pt_br.h +++ b/src/language_pt_br.h @@ -1,4 +1,4 @@ -#ifndef language_pt_br_h +#ifndef language_pt_br_h #define language_pt_br_h /* * language_pt_br.h @@ -837,14 +837,14 @@ static languageDefinition language_pt_br = { whichPluralForm_pt_br, { { TEXT_USING_BODY, 0, "É recomendável usar CSS para especificar cores de página e link" }, { STRING_CONTENT_LOOKS, 0, "O conteúdo do documento se parece com %s" }, { STRING_DOCTYPE_GIVEN, 0, "Doctype dado é \"%s\"" }, - { STRING_ERROR_COUNT, 0, "Tidy encontrou %u %s e %u %s!" }, + { STRING_ERROR_COUNT, 0, "Tidy encontrou %u %s e %u %s!\n" }, { STRING_NEEDS_INTERVENTION, 0, "Esse documento possui erros que devem ser corrigidos\n" "antes de usar HTML Tidy para gerar uma versão arrumada.\n" }, - { STRING_NO_ERRORS, 0, "Nenhum aviso ou erro foi localizado." }, + { STRING_NO_ERRORS, 0, "Nenhum aviso ou erro foi localizado.\n" }, { STRING_NO_SYSID, 0, "Nenhum identificado de sistema no doctype emitido" }, - { STRING_NOT_ALL_SHOWN, 0, "Tidy encontrou %u %s e %u %s! Nem todos avisos/erros foram mostrados." }, + { STRING_NOT_ALL_SHOWN, 0, "Tidy encontrou %u %s e %u %s! Nem todos avisos/erros foram mostrados.\n" }, { TEXT_GENERAL_INFO, 0, "Sobre o HTML Tidy: https://github.com/htacg/tidy-html5\n" "Relatórios de erro e comentários: https://github.com/htacg/tidy-html5/" diff --git a/src/message.c b/src/message.c index fd97164..e8d5f25 100644 --- a/src/message.c +++ b/src/message.c @@ -159,16 +159,22 @@ static void messageOut( TidyMessageImpl *message ) go = go & ( doc->errors < cfg(doc, TidyShowErrors) ); } -// /* Suppress TidyInfo on Reports if applicable. */ -// if ( message->level == TidyInfo ) -// { -// go = go & (cfgBool(doc, TidyShowInfo) == yes); -// } - - /* If suppressing TidyInfo/TidyDialogueInfo on Reports, suppress them. */ - if ( message->level == TidyInfo || message->level == TidyDialogueInfo ) + /* Check for conditions to suppress TidyInfo. */ + if ( message->level == TidyInfo ) { go = go & (cfgBool(doc, TidyShowInfo) == yes); + + /* Temporary; we currently let TidyQuiet hide these: */ + switch ( message->code ) + { + case STRING_DOCTYPE_GIVEN: + case STRING_CONTENT_LOOKS: + case STRING_NO_SYSID: + go = go && !cfgBool(doc, TidyQuiet); + break; + default: + break; + } } /* Suppress TidyWarning on Reports if applicable. */ @@ -177,6 +183,23 @@ static void messageOut( TidyMessageImpl *message ) go = go & (cfgBool(doc, TidyShowWarnings) == yes); } + /* Check for conditions to suppress TidyDialogueInfo */ + if ( message->level == TidyDialogueInfo ) + { + /* Temporary; TidyShowInfo shouldn't affect TidyDialogueInfo, but + right now such messages are hidden until we granularize the + output controls. */ + go = go & (cfgBool(doc, TidyShowInfo) == yes); + go = go | (cfgBool(doc, TidyQuiet) == yes); + } + + /* Check for conditions to suppress TidyDialogueSummary */ + /* Temporary; TidyQuiet shouldn't hide this type of message. */ + if ( message->level == TidyDialogueSummary && message->code != STRING_NEEDS_INTERVENTION ) + { + go = go & !cfgBool(doc, TidyQuiet); + } + /* If we're TidyQuiet and handling any type of dialogue above summaries, then suppress. */ if ( message->level > TidyDialogueSummary ) @@ -1225,7 +1248,6 @@ void TY_(ErrorSummary)( TidyDocImpl* doc ) if (doc->footnotes & FN_TRIM_EMPTY_ELEMENT) TY_(Dialogue)( doc, FOOTNOTE_TRIM_EMPTY_ELEMENT ); } - } @@ -1277,8 +1299,6 @@ void TY_(ReportNumWarnings)( TidyDocImpl* doc ) { TY_(Dialogue)( doc, STRING_NO_ERRORS ); } - - TY_(WriteChar)( '\n', doc->errout ); } diff --git a/src/tidylib.c b/src/tidylib.c index d433edc..100973a 100644 --- a/src/tidylib.c +++ b/src/tidylib.c @@ -1380,17 +1380,10 @@ int TY_(DocParseStream)( TidyDocImpl* doc, StreamIn* in ) int tidyDocRunDiagnostics( TidyDocImpl* doc ) { - Bool quiet = cfgBool( doc, TidyQuiet ); - Bool force = cfgBool( doc, TidyForceOutput ); + TY_(ReportMarkupVersion)( doc ); + TY_(ReportNumWarnings)( doc ); - if ( !quiet ) - { - - TY_(ReportMarkupVersion)( doc ); - TY_(ReportNumWarnings)( doc ); - } - - if ( doc->errors > 0 && !force ) + if ( doc->errors > 0 && !cfgBool( doc, TidyForceOutput ) ) TY_(Dialogue)(doc, STRING_NEEDS_INTERVENTION ); return tidyDocStatus( doc );