X-Git-Url: http://git.savannah.gnu.org/gitweb/?p=enscript.git;a=blobdiff_plain;f=states%2Fhl%2Fc_ppline.st;h=b3678dfd97470f9b155e9aa664288cda682a1edd;hp=fec44d5f6b34f39f9b8326a4783506c7951e3999;hb=refs%2Fheads%2Fgetopt-stuff;hpb=4933d0270baaa187b7d968ba7c82a5bd2ec14e4d diff --git a/states/hl/c_ppline.st b/states/hl/c_ppline.st index fec44d5..b3678df 100644 --- a/states/hl/c_ppline.st +++ b/states/hl/c_ppline.st @@ -11,7 +11,7 @@ state c_ppline extends CHighlight /\/\*/ { comment_face (true); language_print ($0); - call (c_comment); + call (c_ppline_comment); comment_face (false); } /* Include line. */ @@ -50,6 +50,9 @@ state c_ppline extends CHighlight call (c_ppline_tokensequence); return; } + /\\\\\n/ { + language_print ($0); + } /\n/ { language_print ($0); return; @@ -80,6 +83,9 @@ state c_ppline_include extends CHighlight call (c_ppline_comments_strings_chars); return; } + /\\\\\n/ { + language_print ($0); + } /\n/ { language_print ($0); return; @@ -105,6 +111,9 @@ state c_ppline_define extends CHighlight call (c_ppline_comments_strings_chars); return; } + /\\\\\n/ { + language_print ($0); + } /\n/ { language_print ($0); return; @@ -117,7 +126,7 @@ state c_ppline_comments_strings_chars extends CHighlight /\/\*/ { comment_face (true); language_print ($0); - call (c_comment); + call (c_ppline_comment); comment_face (false); } /* String constants. */ @@ -133,6 +142,9 @@ state c_ppline_comments_strings_chars extends CHighlight language_print ($0); string_face (false); } + /\\\\\n/ { + language_print ($0); + } /\n/ { language_print ($0); return; @@ -145,7 +157,7 @@ state c_ppline_tokensequence extends CHighlight /\/\*/ { comment_face (true); language_print ($0); - call (c_comment); + call (c_ppline_comment); comment_face (false); } /* String constants. */ @@ -180,6 +192,20 @@ state c_ppline_tokensequence extends CHighlight language_print ($0); variable_name_face (false); } + /\\\\\n/ { + language_print ($0); + } + /\n/ { + language_print ($0); + return; + } +} + +/* Comments within pre-processor directives need escaped newlines. */ +state c_ppline_comment extends c_comment { + /\\\\\n/ { + language_print ($0); + } /\n/ { language_print ($0); return;