Package: dash
Version: 0.5.4-4
Severity: normal
Tags: patch

Shell quotes ' and ` are displayed wrong in dash.1 man page in Unicode
environment. Explanation:

In the groff syntax a non-escaped Ascii apostrophe (') is always logical
(English) right single quotation mark or apostrophe. In Unicode
environment (e.g. UTF-8 terminal or Postscript) it is displayed as
U+2019 RIGHT SINGLE QUOTATION MARK. In non-Unicode environment it is
displayed as U+0027 APOSTROPHE.

Similarly, in the groff syntax a non-escaped grave accent (`) is always
logical (English) left single quotation mark. In Unicode environment it
is displayed as U+2018 LEFT SINGLE QUOTATION MARK and in non-Unicode
environment as U+0060 GRAVE ACCENT.

When referreing to shell's single quote (') the groff character code
\(aq should always be used. It displays correctly in all environments.
Shell's command substitution mark (`) aka. "backtick" or "backquote"
must be written as \(ga in groff code.

Patch is attached to fix this in dash.1 man page. Patch file is meant to
be added to debian/diff directory and should apply nicely to Debian dash
package version 0.5.4-4.

-- System Information:
Debian Release: 4.0
  APT prefers stable
  APT policy: (900, 'stable')
Architecture: i386 (i686)
Shell:  /bin/sh linked to /bin/dash
Kernel: Linux 2.6.18-5-k7
Locale: LANG=fi_FI.UTF-8, LC_CTYPE=fi_FI.UTF-8 (charmap=UTF-8)

Versions of packages dash depends on:
ii  libc6                  2.3.6.ds1-13etch2 GNU C Library: Shared libraries

dash recommends no packages.

-- debconf information:
* dash/sh: true
--- a/src/dash.1        2007-12-25 14:47:26.568071142 +0200
+++ b/src/dash.1        2007-12-25 14:35:42.000000000 +0200
@@ -294,12 +294,12 @@
 meaning of all characters except dollarsign
 .Pq $ ,
 backquote
-.Pq ` ,
+.Pq \(ga ,
 and backslash
 .Pq \e .
 The backslash inside double quotes is historically weird, and serves to
 quote only the following characters:
-.Dl $  `  \*q  \e  \*[Lt]newline\*[Gt] .
+.Dl $  \(ga  \*q  \e  \*[Lt]newline\*[Gt] .
 Otherwise it remains literal.
 .Ss Reserved Words
 Reserved words are words that have special meaning to the
@@ -979,7 +979,7 @@
 version
 .Pc :
 .Pp
-.Dl `command`
+.Dl \(gacommand\(ga
 .Pp
 The shell expands the command substitution by executing command in a
 subshell environment and replacing the command substitution with the
@@ -1430,7 +1430,7 @@
        \\?)    echo $USAGE; exit 1;;
        esac
 done
-shift `expr $OPTIND - 1`
+shift \(gaexpr $OPTIND - 1\(ga
 .Ed
 .Pp
 This code will accept any of the following as equivalent:
@@ -2090,7 +2090,7 @@
 .Pp
 List trapped signals and their corresponding action
 .Pp
-.Dl trap '' INT QUIT tstp 30
+.Dl trap \(aq\(aq INT QUIT tstp 30
 .Pp
 Ignore signals INT QUIT TSTP USR1
 .Pp

Reply via email to