Centralize control of message output to the messageOut() method in order to:
- Prevent the message filter from missing possible messages due to dispered control. - Single decision point for the types of messages to be output given current conditions and options settings.
This commit is contained in:
parent
4c74b14991
commit
fa30773938
|
@ -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 );
|
||||
|
||||
|
|
|
@ -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,
|
||||
|
|
|
@ -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"
|
||||
|
|
|
@ -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/"
|
||||
|
|
|
@ -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 );
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -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 );
|
||||
|
|
Loading…
Reference in a new issue