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