Package: enscript Version: 1.6.4-7 Binary package hint: enscript
Take the following script: #!/usr/bin/ksh echo \"foo=bar\"/\"baz=quux\" echo "and here's some other stuff" for i in foo bar baz quux do echo $i done ...which I've also attached. In gview, those escaped double-quotes are handled properly, and syntax hightlighting works. With enscript, using either sh or ksh highlighting, the first double-quote turns on the highlighting for "this is quoted stuff", but the rest are ignored until the first unescaped double-quote is encountered. The enscript command line was "cat enscriptbug | enscript --highlight=ksh --color -r -p enscriptbug.ps" Attached is a patch. I submitted this bug in Malone since it affects Ubuntu, and found that the package maintainer listed there is an invalid debian.org address; might want to address that too. Also submitted to gnu.org, but no response. -- Shawn McMahon | "I can see the light at the end of the tunnel. EIV Consulting | And now that I have some light, I can see the http://www.eiv.com | tunnel needs painting too." - Steve Jackson
diff -Naur enscript-1.6.4.orig/states/hl/ksh.st enscript-1.6.4/states/hl/ksh.st --- enscript-1.6.4.orig/states/hl/ksh.st 2006-06-04 07:53:21.000000000 -0400 +++ enscript-1.6.4/states/hl/ksh.st 2006-06-04 07:54:24.000000000 -0400 @@ -34,6 +34,17 @@ reference_face (false); } + /* Ignore escaped quote marks */ + /\\\"/ { + language_print ($0); + } + /\\\'/ { + language_print ($0); + } + /\\\`/ { + language_print ($0); + } + /* Keywords: (build-re '(: alias bg break continue cd command eval exec exit export fc fg getopts hash jobs kill let login newgrp print pwd read readonly diff -Naur enscript-1.6.4.orig/states/hl/sh.st enscript-1.6.4/states/hl/sh.st --- enscript-1.6.4.orig/states/hl/sh.st 2006-06-04 07:53:21.000000000 -0400 +++ enscript-1.6.4/states/hl/sh.st 2006-06-04 07:54:39.000000000 -0400 @@ -30,6 +30,17 @@ reference_face (false); } + /* Ignore escaped quote marks */ + /\\\"/ { + language_print ($0); + } + /\\\'/ { + language_print ($0); + } + /\\\`/ { + language_print ($0); + } + /* Keywords. */ /\b(CDPATH|HOME|IFS|MAIL((CHECK)?|(PATH)?)|P(ATH|S(1|2))|SH(ACCT|ELL)|\ break|c(ase|d|ontinue)|do(ne)?|e(cho|lse|sac|val|x(ec|it|port))|f(i|or)|\
pgpm4uhefpFnp.pgp
Description: PGP signature