[Chinese-commits] [manpages-zh] 11/131: some files in src/man1/ changed!

Boyuan Yang hosiet-guest at moszumanska.debian.org
Tue Dec 13 19:59:33 UTC 2016


This is an automated email from the git hooks/post-receive script.

hosiet-guest pushed a commit to branch master
in repository manpages-zh.

commit d7ce896aadf806825293ee92a5ef0b7221beed34
Author: JiZhengYu <zhengyuji at gmail.com>
Date:   Sun Feb 17 22:00:34 2008 +0800

    some files in src/man1/ changed!
---
 src/man1/a2p.1            |  22 +--
 src/man1/ali.1            |  21 ++-
 src/man1/bash.1           |   3 -
 src/man1/cal.1            |  20 ++-
 src/man1/col.1            |  39 +++--
 src/man1/cp.1             |  12 +-
 src/man1/grep.1           |   2 +-
 src/man1/host.1           |  72 +++++----
 src/man1/install-info.1   |   2 +-
 src/man1/install.1        |   2 +-
 src/man1/killall.1        |   3 +-
 src/man1/ln.1             |   5 +-
 src/man1/lockfile.1       |   4 +-
 src/man1/ls.1             |   2 +-
 src/man1/mail.1           |   2 +-
 src/man1/mailto.1         |   2 +-
 src/man1/man.1            |   1 -
 src/man1/minicom.1        |  22 +--
 src/man1/mirror.1l        |  50 +++----
 src/man1/mkdir.1          |   8 +-
 src/man1/mktemp.1         |   4 +-
 src/man1/more.1           |   2 +-
 src/man1/octave-bug.1     |   1 -
 src/man1/octave.1         |   1 -
 src/man1/perldata.1       | 198 +++++++++++++------------
 src/man1/pg_config.1      |   2 +-
 src/man1/pg_controldata.1 |   2 +-
 src/man1/pg_ctl.1         |   2 +-
 src/man1/pg_dump.1        |   2 +-
 src/man1/pg_dumpall.1     |   2 +-
 src/man1/pg_resetxlog.1   |   2 +-
 src/man1/pg_restore.1     |   2 +-
 src/man1/pgtclsh.1        |   2 +-
 src/man1/pgtksh.1         |   2 +-
 src/man1/postgres.1       |   2 +-
 src/man1/postmaster.1     |   2 +-
 src/man1/psql.1           | 362 +++++++++++++++++++++++-----------------------
 src/man1/rlogin.1         |   3 +-
 src/man1/rm.1             |   2 +-
 src/man1/sort.1           |   2 +-
 src/man1/subst.1          |  12 +-
 src/man1/tex.1            |  38 ++---
 src/man1/uuencode.1       |  73 +++++-----
 src/man1/vacuumdb.1       |   2 +-
 src/man1/whatis.1         |   1 -
 45 files changed, 503 insertions(+), 514 deletions(-)

diff --git a/src/man1/a2p.1 b/src/man1/a2p.1
index 51a1a40..0d7d63f 100644
--- a/src/man1/a2p.1
+++ b/src/man1/a2p.1
@@ -99,26 +99,27 @@ a2p \- Awk 到 Perl 翻译器
 .SH "描述 (DESCRIPTION)"
 \fIA2p\fR 从命令行或标准输入取得一个awk脚本文件,
 并且向标准输出产生一个相同功能的 \fIperl\fR 脚本文件。
-.Sh "选项 (OPTIONS)"
+.SH "选项 (OPTIONS)"
 可选选项有:
-.Ip "\fB\-D<number>\fR" 5
+.IP "\fB\-D<number>\fR" 5
 设置调试标记。
-.Ip "\fB\-F<character>\fR" 5
+.IP "\fB\-F<character>\fR" 5
 告诉a2p,awk脚本总是带 \fB\-F\fR 选项执行。
-.Ip "\fB\-n<fieldlist>\fR" 5
+.IP "\fB\-n<fieldlist>\fR" 5
 如果输入不分解为一个数组,你需要指定输入的各字段的名称。
 假如要翻译一个用于处理密码文件的awk脚本,你应当这样:
-.Sp
+.PP
 .Vb 1
 \&        a2p -7 -nlogin.password.uid.gid.gcos.shell.home
 .Ve
+.Sp
 任何定界符都可以用来分隔字段名。
-.Ip "\fB\-<number>\fR" 5
+.IP "\fB\-<number>\fR" 5
 使得a2p总是假设输入包含那么多字段。
-.Ip "\fB\-o\fR" 5
+.IP "\fB\-o\fR" 5
 告诉a2p使用旧的awk行为。当前,唯一的区别是旧的awk总是有一个
 每行的循环,即使没有对每行的操作;新的awk不是这样。
-.Sh "\*(M"Considerations\*(S""
+.IX Subsection "Considerations"
 a2p 不能翻译得像人一样好,但是通常都做得很好。
 在生成的perl脚本中,你应当检查和修改一些东西。这里是
 其中的一些,没有顺序。
@@ -190,11 +191,11 @@ Larry Wall <\fIlarry at wall.org\fR>
 .SH "文件 (FILE)"
 .SH "另见 (SEE ALSO)"
 .PP
-.Vb 3
+.VB 3
 \& perl   perl 编译器和解释器
 \& 
 \& s2p    sed 到 perl的翻译工具
-.Ve
+.VE
 .SH "诊断 (DIAGNOSTICS)"
 .SH "BUGS"
 可以在运行时根据操作数来选择字符还是数字操作,从而模拟awk。
@@ -207,7 +208,6 @@ Larry Wall <\fIlarry at wall.org\fR>
 .BR 2003/10/25
 .SH "《中国Linux论坛man手册页翻译计划》" 
 http://cmpp.linuxforum.net
-
 .rn }` ''
 .IX Title "A2P 1"
 .IX Name "a2p - Awk to Perl translator"
diff --git a/src/man1/ali.1 b/src/man1/ali.1
index afc96b4..41c728e 100644
--- a/src/man1/ali.1
+++ b/src/man1/ali.1
@@ -42,28 +42,25 @@ ali
 ^$HOME/\&.mh\(ruprofile~^用户配置
 ^/etc/passwd~^用户列表
 ^/etc/group~^组列表
-.Pr
+.PP
 ^Path:~^用来决定用户的nmh目录
-.Ps
+.PP
 ^Aliasfile:~^一个缺省别名文件
-.Sa
+.PP
 mh\-alias(5)
-.De
+.PP
 `\-alias /etc/nmh/MailAliases'
-.Ds
+.PP
 `\-nolist'
-.Ds
+.PP
 `\-nonormalize'
-.Ds
+.PP
 `\-nouser'
-.Co
+.PP
 None
-.Bu
-
+.PP
 带有`\-nonormalize'的`\-user'选项并不是完全准确的,因为它
 无法用站点的正式名称来替换那些本地昵称。
-.En
-
 .SH "[中文版维护人]"
 .B meaculpa <meaculpa at 21cn.com>
 .SH "[中文版最新更新]"
diff --git a/src/man1/bash.1 b/src/man1/bash.1
index c73f977..8ac5cee 100644
--- a/src/man1/bash.1
+++ b/src/man1/bash.1
@@ -6765,7 +6765,6 @@ shell 可用的虚拟内存总量的最大值
 .if \n(zZ=1 .ig zZ
 .SH "受限的shell(RESTRICTED SHELL)"
 .\" rbash.1
-.zY
 .PP
 如果
 .B bash
@@ -6950,8 +6949,6 @@ Shell 内建命令和函数不可终止/重新开始。
 这将延迟报错,直到命令开始执行之后的一段时间。
 .PP
 数组变量还不能导出 (export)。
-.zZ
-.zY
 .SH "[中文版维护人]"
 .B 袁乙钧 <bbbush at 163.com>
 .SH "[中文版最新更新]"
diff --git a/src/man1/cal.1 b/src/man1/cal.1
index e75fa06..2f9f89d 100644
--- a/src/man1/cal.1
+++ b/src/man1/cal.1
@@ -35,17 +35,15 @@
 .\"
 .\"     @(#)cal.1	8.1 (Berkeley) 6/6/93
 .\"
-.Dd June 6, 1993
-.Dt CAL 1
-.Os
-.Sh NAME
+.TH CAL 1 "June 6, 1993"
+.SH NAME
 .Nm cal
-.Nd 显示一个日历
-.Sh 总览
+显示一个日历
+.SH 总览
 .Nm cal
 .Op Fl mjy
 .Op Ar 月份 Op Ar 年份
-.Sh 描述
+.SH 描述
 .Nm Cal
 显示一个简单的日历.. 
 如果没有指定参数, 则显示当前月份.
@@ -59,7 +57,7 @@
 .It Fl y
 显示当前年份的日历.. 
 .El
-.Pp
+.PP
 一个单一的参数指定要显示的年份 (1 \- 9999) ;
 注意年份必须被完全地指定: 
 .Dq Li cal 89
@@ -67,13 +65,13 @@
 显示1989年的日历. 
 两个参数表示月份 (1 \- 12) 和年份. 
 如果没有指定参数, 则显示当前月份的日历. 
-.Pp
+.PP
 一年从Jan 1 (1 月 1 日) 开始.
-.Pp
+.PP
 格里高利历法改革(Gregorian Reformation)被认为发生于 1752 年 9 月 3 日.
 在此之前, 多数国家已经认可这项改革(尽管有一些直到 20 世纪初才认可它).
 那天之后的 10 天在这项改革被略去了, 所以那个月的日历有点不太寻常. 
-.Sh 历史
+.SH 历史
 一个
 .Nm
 命令出现于第6版 AT&T UNIX. 
diff --git a/src/man1/col.1 b/src/man1/col.1
index 2c4119d..a9c0f1c 100644
--- a/src/man1/col.1
+++ b/src/man1/col.1
@@ -34,18 +34,15 @@
 .\"
 .\"     @(#)col.1	6.8 (Berkeley) 6/17/91
 .\"
-.TH col 1
-.Dd 1991年6月17日
-.Dt COL 1
-.Os
-.Sh NAME(名称)
+.TH col 1 1991年6月17日 "COL 1"
+.SH NAME(名称)
 .Nm col
-.Nd 过滤掉输入中的反向换行符
-.Sh SYNOPSIS(总览)
+过滤掉输入中的反向换行符
+.SH SYNOPSIS(总览)
 .Nm col
 .Op Fl bfx
-.OP Fl l Ar num
-.Sh DESCRIPTION(描述)
+.Op Fl l Ar num
+.SH DESCRIPTION(描述)
 .Nm Col
 过滤掉反向(以及半反向)换行符(LF: line feed or NL: new line),
 这样输出按正常顺序,即只包括正向和半正向换行符,
@@ -54,10 +51,10 @@
 和
 .Xr tbl  1
 的输出处理很有用处.
-.Pp
+.PP
 .Nm col
 从标准输出读入,并写出到标准输出上.
-.Pp
+.PP
 选项如下:
 .Bl -tag -width "-lnum"
 .It Fl b
@@ -73,10 +70,10 @@
 行.
 默认情况下,缓冲128行.
 .El
-.Pp
+.PP
 .Nm col
 所能理解的用于回车操作的控制序列以及它们的十进制值都列在下面的表中:
-.Pp
+.PP
 .Bl -tag -width "carriage return" -compact
 .It ESC\-7
 反向换行符(escape后接7)
@@ -101,26 +98,26 @@
 .It vertical tab
 反向换行符(11)
 .El
-.Pp
+.PP
 丢弃所有不被承认的控制字符和escape序列.
-.Pp
+.PP
 当读取字符时,
 .Nm Col
 保持着与字符集的联系,而且在输出时确保字符集是正确的.
-.Pp
+.PP
 如果输入设备试图回复到最近被刷新的行,
 .Nm col
 会显示一条警告消息.
-.Sh SEE ALSO(另见)
+.SH SEE ALSO(另见)
 .Xr expand 1 ,
 .Xr nroff 1 ,
 .Xr tbl 1
-.Sh HISTORY(历史)
+.SH HISTORY(历史)
 .Nm col
 命令出现于AT&T UNIX版本6.
-.Sh "[中文版维护人]"
+.SH "[中文版维护人]"
 .B riser <boomer at ccidnet.com>
-.Sh "[中文版最新更新]" 
+.SH "[中文版最新更新]" 
 2000/12/6
-.Sh 《中国Linux论坛man手册页翻译计划》:
+.SH 《中国Linux论坛man手册页翻译计划》:
 .B http://cmpp.linuxforum.net
diff --git a/src/man1/cp.1 b/src/man1/cp.1
index ddad59b..be003c1 100644
--- a/src/man1/cp.1
+++ b/src/man1/cp.1
@@ -37,17 +37,17 @@ GNU 参数(最短形式):
 如果最后一个参数不是文件名,目录名,和给出多于两个非选项参数,是
 错误的.
 
-.Pp
+.PP
 (因而:如果/b已经存在,那么'cp -r /a /b'会复制/a到/b而成为/b/a.
 而复制/a/x到/b而成为/b/a/x.但如果/b事先不存在,它会把/a复制为/b
 而复制/a/x到/b而成为/b/a/x.但如果/b事先不存在,它会把/a复制为/b
 而把/a/x复制为/b/x.)
-.Pp
+.PP
 所创建的文件和/或目录的模式和原始的文件的模式是一样的,
 然后用用户umask值修改(除非使用了\-p选项),(但在递归方式
 复制目录时,新建目录会临时地获得他们的最终模式Ored,连同
 S_IRWXU(0700),以便进程能够读、写、查找这些新建的目录.
-.Pp
+.PP
 复制文件到其自身时它什么事情都不做(除了可能会生成一条错误信息以外).
 当复制到一个现存的不同文件时,系统调用函数
 `open(path,O_WRONLY|O_TRUNC)'打开目的文件.当复制到一个新文件时,系
@@ -85,15 +85,15 @@ POSIX 识别四个半选项:
 出
 现的(见下文)也可以用.)
 .SH "GNU 细节"
-.Pp
+.PP
 通常,读写文件的方式都是一样的.例外情况见下面的
 .B "\-\-sparse"
 选项.
-.Pp
+.PP
 缺省情况下,`cp'并不复制目录(参见下文
 .B "\-r"
 选项说明).
-.Pp
+.PP
 .B cp
 通常不会复制文件到自身,但有以下例外:
 如果参数
diff --git a/src/man1/grep.1 b/src/man1/grep.1
index 6599f41..d4312da 100644
--- a/src/man1/grep.1
+++ b/src/man1/grep.1
@@ -12,7 +12,7 @@
 .de Id
 .ds Dt \\$4
 ..
-.TH GREP 1 \*(Dt "GNU Project"
+.TH GREP 1  "GNU Project"
 .SH NAME
 grep, egrep, fgrep \- 打印匹配给定模式的行
 .SH 总览 SYNOPSIS
diff --git a/src/man1/host.1 b/src/man1/host.1
index b0cdb3e..e2c9b8b 100644
--- a/src/man1/host.1
+++ b/src/man1/host.1
@@ -50,13 +50,11 @@
 .\" SOFTWARE.
 .\" -
 .\" --Copyright--
-.Dd December 15, 1994
-.Dt HOST 1
-.Os BSD 4
-.Sh NAME (名字)
+.TH HOST 1 "1994年12月15日" BSD 4
+.SH NAME (名字)
 .Nm host 
-.Nd 使用域名服务器查询主机名字
-.Sh SYNOPSIS (总览)
+使用域名服务器查询主机名字
+.SH SYNOPSIS (总览)
 .Nm host 
 .Op Fl l
 .Op Fl v
@@ -67,7 +65,7 @@
 .Op Fl a 
 .Ar host 
 .Op Ar server 
-.Sh DESCRIPTION (描述)
+.SH DESCRIPTION (描述)
 .Ic Host
 查询 Internet 主机 的 信息. 它 通过 一组 分布在 国家间的 互连服务器 获取
 这些 信息. 缺省情况下, host 只是 简单的 做 主机名字 和 Internet 地址 的 转换. 
@@ -76,15 +74,15 @@
 或
 .Dq Fl a 
 选项, 它 可以 用来 查找 由 域名服务器 维护的 某个主机 的 全部信息.
-.Pp
+.PP
 参数 可以是 主机名称, 也可以是 数字地址. 此程序 首先 把它 当做 主机的 
 数字地址, 如果 尝试 失败, 再把它 当做 主机名称. 主机的 数字地址 由 句点隔开的
 四个 十进位制数 组成, 例如 128.6.4.194. 主机名称 由 句点隔开的 名字 组成, 
 例如 topaz.rutgers.edu. 除非 名字 以句点 结尾, 否则 本地域名 将 自动 添加在
 后面. 因此, Rutgers 的 用户 可以 输入
-.Pp
+.PP
 .D1 Ic host topaz 
-.Pp
+.PP
 它 实际上 查找  "topaz.rutgers.edu". 
 如果 尝试 失败, 就用 原来输入的 名字 再试一次 (这里就是 "topaz").
 邮件 和 其他 网络工具 用了 同样的 策略.
@@ -94,23 +92,23 @@
 (另见 下面
 .Sx 定制查询主机名字 
 的 描述. )
-.Pp
+.PP
 第一个参数 是 你 打算查询的 主机名称.
 如果 是 数字地址, 就 执行
 .Dq 反向查询 (inverse query)
 也就是说, 域名系统 查看 一系列 独立的 数据库, 把 数字地址 转换成 名字.
-.Pp
+.PP
 第二个 参数 是 可选的. 它 允许你 指定查询 某个 特定的 服务器. 如果 没有 使用
 这个参数, 就用 缺省 服务器 (一般是本地机).
-.Pp
+.PP
 如果 指定了 名字, 你 可以见到 三个 不同种类的 输出. 这里是 它们的 例子:
-.Pp
+.PP
 .D1 Ic % host sun4
 .Dl sun4.rutgers.edu is a nickname for ATHOS.RUTGERS.EDU
 .Dl ATHOS.RUTGERS.EDU has address 128.6.5.46
 .Dl ATHOS.RUTGERS.EDU has address 128.6.4.4
 .Dl ATHOS.RUTGERS.EDU mail is handled by ARAMIS.RUTGERS.EDU
-.Pp
+.PP
 用户 键入的命令 是
 .Dq Ic host sun4 .  
 第一行 表明
@@ -125,14 +123,14 @@
 处理. 由于 某些系统 拥有 多个 处理邮件的 系统, 可能 会有 多行 这样的显示.
 从 技术角度 看, 我们 认为 每个 能够 接收邮件 的 系统 应该有 这样的项. 如果 
 系统 接收 它自己的 邮件, 应该 有一项 提及 该系统 自身; 例如:
-.Pp
+.PP
 .D1 Li XXX mail is handled by XXX 
-.Pp
+.PP
 然而, 很多 能够 接收 自己邮件 的 系统 不愿意 提及 这个事实. 如果 系统 有一项
 .Dq Li mail is handled by ,
 但是 没有 地址, 这 表明 它 不是 Internet 的 一部分, 而是 在 网络上 转发
 邮件 的 系统. Usenet, Bitnet 和 许多 其他网络 都有 类似项.
-.Sh 选项
+.SH 选项
 在 主机名字 前面 能够 使用 很多 选项. 大多数 选项 只对 维护 域名数据库 有意义.
 .Bl -tag -width Fl
 .It Fl w 
@@ -200,24 +198,24 @@
 .Dq Fl v Fl t Cm any .
 .It Fl l
 列出 全部域项; 例如:
-.Pp
+.PP
 .D1 Ic host -l rutgers.edu
-.Pp
+.PP
 将 列出  rutgers.edu 域 中 所有的 主机.
 .Dq Fl t
 选项 可以 按需 过滤 收到的信息. 缺省值 是 地址信息, 包括 PTR 和 NS
 记录. 
-.Pp
+.PP
 .D1 Ic host -l -v -t any rutgers.edu
-.Pp
+.PP
 命令 以 正式主域文件格式 下载 rutgers.edu 的 全部 区域(zone) 数据.
 (然而 由于 某些 复杂原因, SOA 记录 显示了 两次.)
-.Pp
+.PP
 .Sy 注意: 
 .Dq Fl l 
 执行 全部的 区域 传输, 然后 过滤出 要求的 信息. 所以 万不得已
 才用 这个 命令.
-.Sh 定制查询主机名字
+.SH 定制查询主机名字
 一般说来, 如果 用户 给出的 名字 中 不含 任何 句点, host 就把 缺省域名
 添加在 它的末尾. 缺省域名 能够 定义 在
 .Pa /etc/resolv.conf 
@@ -230,42 +228,42 @@
 这个 名字文件 必须 用
 .Ev HOSTALIASES 
 环境变量 指出.
-.Sh 环境变量
-.Bl -tag -width "/etc/resolv.conf  " -compress
+.SH 环境变量
+.Bl \-tag \-width "/etc/resolv.conf  " \-compress
 .It Ev HOSTALIASES
 名字文件, 含有
 .Pq Ar 主机别名 , 主机全名
 对.
 .El
-.Sh 文件
+.SH 文件
 .Bl -tag -width "/etc/resolv.conf  " -compress
 .It Pa /etc/resolv.conf 
 另见
 .Xr resolver 5 .
-.Sh 另见
+.SH 另见
 .Xr named  8 , 
 .Xr resolver 5 .
-.Sh BUGS
+.SH BUGS
 当你 输入的 名字 不属于 本地域 时, 将会 出现 不希望 的 现象. 
 请记住 除非 输入的名字 以 点 结尾, 否则 本地域名 总会 附加在 它 后面,
 失败后 才使用 原来的 名字.
-.Pp
+.PP
 .Dq Fl l 
 选项 只 联系 指定域 中 的 第一个 名字服务器. 如果 这个 服务器 宕机,
 你 应该 手工 指定 一个 服务器. 例如, 要 获取 foo.edu 的清单, 可以 用
-.Pp
+.PP
 .D1 Ic host -t ns foo.edu 
-.Pp
+.PP
 获得 foo.edu 的 全部 名字服务器, 然后 用
-.Pp
+.PP
 .D1 Ic host -l foo.edu xxx
-.Pp
+.PP
 试验 每一个
 .Dq Ic xxx 
 名字服务器, 直到 碰上 能用的.
-.Sh "[中文版维护人]"
+.SH "[中文版维护人]"
 徐明 <xuming at users.sourceforge.net>
-.Sh "[中文版最新更新]"
+.SH "[中文版最新更新]"
 2003/05/13
-.Sh "《中国Linux论坛man手册页翻译计划》"
+.SH "《中国Linux论坛man手册页翻译计划》"
 http://cmpp.linuxforum.net
diff --git a/src/man1/install-info.1 b/src/man1/install-info.1
index 5969b29..a058cc1 100644
--- a/src/man1/install-info.1
+++ b/src/man1/install-info.1
@@ -57,6 +57,6 @@ For more information about these matters, see the files named COPYING.
 .B install-info
 程序,命令
 .IP
-.B info install-info
+.B info install\-info
 .PP
 将使你可以读取完整的手册。
diff --git a/src/man1/install.1 b/src/man1/install.1
index 9bdd125..0eede5c 100644
--- a/src/man1/install.1
+++ b/src/man1/install.1
@@ -170,7 +170,7 @@ GNU版本的程序如
 变量LANG, LC_ALL, LC_CTYPE和LC_MESSAGES取其常用义.对于GNU的版本,如上所述,变量
 SIMPLE_BACKUP_SUFFIX和VERSION_CONTROL控制着备份文件的命名.
 .SH "CONFORMING TO(遵循规则)"
-BSD 4.2 (它带有\-c, \-m, \-o, \-g\和\-s选项).
+BSD 4.2 (它带有\-c, \-m, \-o, \-g 和 \-s 选项).
 .SH NOTES(备注)
 本页介绍了包含在fileutils-4.0包中的
 .B install ;
diff --git a/src/man1/killall.1 b/src/man1/killall.1
index 9bf3344..7f58117 100644
--- a/src/man1/killall.1
+++ b/src/man1/killall.1
@@ -80,8 +80,7 @@ kill 信号给每个组只发送一次, 即使同一进程组中包含多个进
 Werner Almesberger <Werner.Almesberger at epfl.ch>
 .SH  SEE ALSO (又见)
 kill(1), fuser(1), pidof(1), ps(1), kill(2)
-.\ {{{}}}
-
+.\" {{{}}}
 .SH "[中文版维护人]"
 .B riser <boomer at ccidnet.com>
 .SH "[中文版最新更新]"
diff --git a/src/man1/ln.1 b/src/man1/ln.1
index fc75bcc..be3903b 100644
--- a/src/man1/ln.1
+++ b/src/man1/ln.1
@@ -103,10 +103,9 @@ SIM_PLE_BACHUP_SUFFIX,如果该环境变量没有设置,则缺省地使用'
 .B "\-V METHOD,\-version\-control=METHOD"
 指定备份文件如何命名。
 参数"METHOD"可以是'numbered'(或't'),
-'existing'(或'nil'),或'never'(或'simple')。
+\'existing\'(或\'nil\'),或\'never\'(或\'simple\')。
 如果不使用该参数,则使用环境变量VERSION_CONTROL,
-如果该环境变量没有设置,则缺省地使用
-'existing'。
+如果该环境变量没有设置,则缺省地使用 'existing'。
 
 正确有效的METHOD参数对应于Emacs变量'version\-control'。(唯一被承认的缩写):
 
diff --git a/src/man1/lockfile.1 b/src/man1/lockfile.1
index 47d59ca..96b3939 100644
--- a/src/man1/lockfile.1
+++ b/src/man1/lockfile.1
@@ -158,14 +158,14 @@ Lockfile不兼容NFS,而且八位还原.
 于每个文件之后来重新设置.
 .PP
 尽管任何名字的文件都可用作lockfiles,通常习惯还是使用扩展名为'.lock'的文件来lock邮件文件夹(它添加于邮件夹名之后).如果不想担心文件名太长了,也不必遵从任何其它的lockfilename的习惯,那么一个最好的方法就是通过添加前缀`lock.'来生成一个与已经存在的文件相应的lockfilename,并且在其后添加锁定文件的i-node数.
-.Sh SOURCE(源自)
+.SH SOURCE(源自)
 该程序为 http://www.procmail.org/或者
 ftp.procmail.org的
 .BR pub/procmail/
 中
 .I procmail mail-processing-package
 (v3.14)的一部分.
-.Sh MAILINGLIST(邮件列表)
+.SH MAILINGLIST(邮件列表)
 有一个针对procmail包中任何程序相关问题的邮件列表:
 .RS
 <procmail-users at procmail.org>
diff --git a/src/man1/ls.1 b/src/man1/ls.1
index 2ace03e..119830d 100644
--- a/src/man1/ls.1
+++ b/src/man1/ls.1
@@ -55,7 +55,7 @@ POSIX 标准选项:
 单列输出或多列输出是不确定的。可以分别用选项“ -1 ”
 .br
 或“ -C ”来强制按单列或多列输出。
-.sp POSIX 选项
+.PP POSIX 选项
 .TP
 .B "\-C"
 多列输出,纵向排序。
diff --git a/src/man1/mail.1 b/src/man1/mail.1
index e0a782c..15eea3a 100644
--- a/src/man1/mail.1
+++ b/src/man1/mail.1
@@ -267,7 +267,7 @@ list应为以逗号分隔的名字列表.
 如果当前消息之后没有任何消息,那么搜索继续向前进行.如果根本没有合适的消息,
 .Nm mail
 输出
-.Dq Li No applicable messages
+.Dq No applicable messages
 并且
 终止该命令.
 .Bl -tag -width delete
diff --git a/src/man1/mailto.1 b/src/man1/mailto.1
index a33d13b..4af914a 100644
--- a/src/man1/mailto.1
+++ b/src/man1/mailto.1
@@ -500,7 +500,7 @@ Nathaniel S. Borenstein
 
 .SH "[中文版维护人]"
 .B mapping <mapping at 263.net>
-./" 中文版维护请mailto: mapping at 263.net
+.B 中文版维护请mailto: mapping at 263.net
 .SH "[中文版最新更新]"
 .B 2003/11/22
 .SH "《中国linux论坛man手册页翻译计划》:"
diff --git a/src/man1/man.1 b/src/man1/man.1
index 82411f7..19b874b 100644
--- a/src/man1/man.1
+++ b/src/man1/man.1
@@ -19,7 +19,6 @@
 .\" Many changes - aeb
 .\"
 .TH man 1 "September 2, 1995"
-.LO 1
 .SH NAME
 man \- 格式化并显示在线帮助手册页
 .br
diff --git a/src/man1/minicom.1 b/src/man1/minicom.1
index 7dcd9a2..f729351 100644
--- a/src/man1/minicom.1
+++ b/src/man1/minicom.1
@@ -432,21 +432,25 @@ F1到F10的宏在此定义。窗口底部以图例显示有特殊意义的字符
 .B "Character conversion"
 此处可编辑字符转换表。如果你不是美国人,你该知道,许多语言中的字符并不包括在ASCII字符集中,过去也许是用它们替换了ASCII表中不太重要的字符,现在则常常用大于127的字符代码表示。其实有许多表示这些字符的方法。这儿正是为那些使用不同于你的计算机字符集的系统编辑转换表的地方,
 .TP 0.5i
-.B A - Load table
-你可能已经猜出来了。此命令从磁盘中装入转换表。将询问你表的文件名。预定义的表.mciso,.mcpc8及.mcsf7应包含在程序中。表.mciso 并不进行转换, .mcpc8用于连接使用8位pc字符集的系统,.mcsf7 则用于兼容很老式的7位编码的系统, 这种7位码用芬兰语和瑞典语的区分字符置换了字符{|}[]\。
-.TP 0.5i
-.B B - Save table
+.B A \- Load table
+你可能已经猜出来了。此命令从磁盘中装入转换表。将询问你表的文件名。
+预定义的表.mciso,.mcpc8及.mcsf7应包含在程序中。表.mciso 并不进行
+转换,.mcpc8用于连接使用8位pc字符集的系统,.mcsf7 则用于兼容很老式
+的7位编码的系统, 这种7位码用芬兰语和瑞典语的区分字符置换了字
+符\{\|\}\[\]\。
+.TP 0.5i
+.B B \- Save table
 以指定文件名保存活动的转换表。
 .TP 0.5i
-.B C - edit char
+.B C \- edit char
 这里可对现存的表自行修改。首先将询问你要修改的转换的字符值(十进制);接着你要指出从外部接收的字符在屏幕上显示为何者。然后询问你当按下键盘上的那个键时,你要发送什么。
 .TP 0.5i
-.B D - 下一屏
+.B D \- 下一屏
 .TP 0.5i
-.B E - 前一屏
+.B E \- 前一屏
 不错,可能你注意到了这一屏显示了活动转换的种类。屏幕(通常)太小了,没法用一种简单易懂的格式来一次显示整个表。你可以用此来做右卷动转换表。
 .TP 0.5i
-.B F - convert capture
+.B F \- convert capture
 切换当写入捕获文件时是否使用转换表。
 .RE
 .RE
@@ -462,7 +466,7 @@ F1到F10的宏在此定义。窗口底部以图例显示有特殊意义的字符
 不保存退出此菜单。也可按ESC键。
 .TP 0.25i
 .B "Exit from minicom"
-只有root才会看到这个菜单项 ---- 如果启动 minicom 时用了选项‘-s’的话。这样,就可以在实际上并未运行minicom的情况下,修改其配置。
+只有root才会看到这个菜单项 \-\-\-\- 如果启动 minicom 时用了选项‘-s’的话。这样,就可以在实际上并未运行minicom的情况下,修改其配置。
 .PD 1
 .SH "状态行 STATUS LINE"
 状态行上有好几个指示器,其意义不言自明。可能需要解释一下奇怪的APP和NOR指示器。VT100的光标键可有两种模式:应用模式和光标模式。这由一个转义序列来控制。当你用minicom登录后,如果发现光标键不能工作,比如在vi中,这时你就可以用此指示器来查看光标键是在应用模式中,还是在光标模式中。可以用Ctrl-A、I来切换。如果那这时光标键能工作,可能是远程系统的termcap初始化串发生了错误。
diff --git a/src/man1/mirror.1l b/src/man1/mirror.1l
index 5cf1643..18c9293 100644
--- a/src/man1/mirror.1l
+++ b/src/man1/mirror.1l
@@ -89,73 +89,72 @@ Mirror 本来是为映射远端 Un*x 系统的档案而写,但是它已逐渐
 取得给定节点上的所有档案。如果路径符合 .*/.+ 那麽
 它是目录的名称而後面的部份则是所要取得之档案名称的
 样板(pattern)。 如果路径符合 .*/ 则它是目录的名称
-而且其所有的内容都将会被撷取。另一方面路径还是用在
-'/' 的样板。如果你使用 host:/fred 的话,那麽将作出
+而且其所有的内容都将会被撷取。另一方面路径还是用
+在 '/' 的样板。如果你使用 host:/fred 的话,那麽将作出
 一份远端主机上之 / 的完整目录列表。如果所有你想要
 的是目录 /fred 的内容,则指定 host:/fred/ 才是。
 .TP
--r 
+\-r 
 等於 -krecursive=false
 .TP
--v 
+\-v 
 印出 mirror 版本资讯细节并结束。
 .TP
--T 
+\-T 
 强制将任何本地档案的时间重置成与远端档案相同。一般
 仅用於以已存在档案内容之处初始一个映射区域的时候。
 .TP
--U [档案名称]
+\-U [档案名称]
 把所有上传的档案记录到所给的档案名称。记得 mirror
 切换到 local_dir 以执行其作业,所以它应该得是完整
 (full)的路径名称。如果没有给任何参数,其预设值为
 `pwd`/upload_log.day.month.year.
 .TP
--kkey=value
+\-kkey=value
 盖过任何预设关键字的值(key/value) 。
 .TP
--m 
-等於 -kmode_copy=true
+\-m 
+等於 \-kmode_copy=true
 .TP
 -t 
-等於 -ktext_mode=true
+等於 \-ktext_mode=true
 .TP
--f 
-等於 -kforce=true
+\-f 
+等於 \-kforce=true
 .TP
--ssite 
-等於 -ksite=site
+\-ssite 
+等於 \-ksite=site
 .TP
--uuser 
-等於 -kremote_user=user 接著会提示你要求密码,并且
+\-uuser 
+等於 \-kremote_user=user 接著会提示你要求密码,并且
 还会关闭本地回应(echo)以兹配合。这个密码是用来设定
 remote_password 用的。
 .TP
--L 
+\-L 
 只是产生一份输入的美观列表版本。
 .TP
--G 
+\-G 
 从远端机器取得档案。本地以及远端目录必须在命令列上
 给定。(这个选项已经不再支援。)
 .TP
--P 
+\-P 
 把档案放上远端机器。本地以及远端目录必须在命令列上
 给定。(这个选项已经不再支援。)
 .TP
--C filename
-指定配置文件。配合 -P 以及 -G 选项之配置文件之需。
+\-C filename
+指定配置文件。配合 \-P 以及 \-G 选项之配置文件之需。
 (这个选项已经不再支援。)
 
 .SH "文件 Package Files"
 .PP
 配置档会被剖析成一系列的叙述。空白行及以杂凑(hash)符号起始
 的行会被忽略。每个叙述的形式都是
-.CS
+.PP
 关键字=值
-.CE
+.PP
 或是
-.CS
+.PP
 关键字+值
-.CE
 .PP
 你可以在关键字以及等号/加号的前面加上空白字元。所有紧跟在
 等号/加号之後的每样事物都是一个值,这包含任何开头或结尾的
@@ -482,7 +481,6 @@ get_missing
 确实取回档案。当设为 false 的时候,只执行
 删除以及建立符号链结。用来删除比 max_days
 更旧的过时档案而不必撷取这些旧档案。[true]
-.SE
 .PP
 每一组关键字定义如何映射一份特定的档案包裹而且应该要以一行
 唯一的 package 开始。档案包裹的名称用在产生报告及 -p 参数
diff --git a/src/man1/mkdir.1 b/src/man1/mkdir.1
index 17e499c..20b358e 100644
--- a/src/man1/mkdir.1
+++ b/src/man1/mkdir.1
@@ -9,12 +9,12 @@
 mkdir \-建立目录
 .SH 总览
 .BI "mkdir [" 选项 "] " 目录...
-.sp
+.PP
 POSIX 选项:
 .B "[-p] [-m mode]"
 .SH GNU 选项(缩写):
 .B "[-p] [-m mode] [--verbose] [--help] [--version] [--]"
-.sh 描述
+.SH 描述
 mkdir 用指定的名字建立目录。
 缺省时,新建立的目录模式为0777,即不加保护地对所有人
 都可读、可写、可执行。
@@ -27,8 +27,8 @@ mkdir 用指定的名字建立目录。
 .BI "-p, --parents"
 为所给出的目录建立丢失了的父目录。所建立的父目录的模式
 相当于用命令 umask 进行了 'u+wx' 的设置。忽略参数对已存
-在的目录的覆盖。(例如:已存在目录/a,当用到命令
-'mkdir /a'时报错,而'mkdir -p /a'则不会。)
+在的目录的覆盖。(例如:已存在目录/a,当用到命令'mkdir /a'
+时报错,而'mkdir -p /a'则不会。)
 .TP
 .BI "--verbose"
 打印出新建立的每一个目录名。与--parents联合使用最有效。
diff --git a/src/man1/mktemp.1 b/src/man1/mktemp.1
index 56d89c8..02d89ee 100644
--- a/src/man1/mktemp.1
+++ b/src/man1/mktemp.1
@@ -110,10 +110,8 @@ fi
 .Xr mkstemp 3 ,
 .Xr mktemp 3
 .Sh "历史 (HISTORY)"
-.Nm
 源于
-.Bx Open .
-
+.Bx Open 
 .SH "[中文版维护人]"
 .B 徐明 <xuming at users.sourceforge.net>
 .SH "[中文版最新更新]"
diff --git a/src/man1/more.1 b/src/man1/more.1
index 1dc30c4..e3b3370 100644
--- a/src/man1/more.1
+++ b/src/man1/more.1
@@ -98,6 +98,7 @@
 从行号
 .Ic num 
 开始显示.
+.El
 .Sh "命令 (COMMAND)"
 .Nm more
 的交互命令基于
@@ -190,4 +191,3 @@ version 5.19 (Berkeley 6/29/88), 目前 它 用在 Linux 社团.
 2003/05/13
 .Sh "《中国Linux论坛man手册页翻译计划》"
 http://cmpp.linuxforum.net
-.br
diff --git a/src/man1/octave-bug.1 b/src/man1/octave-bug.1
index 2dac892..711a2aa 100644
--- a/src/man1/octave-bug.1
+++ b/src/man1/octave-bug.1
@@ -22,7 +22,6 @@
 .\" This page was contributed by Dirk Eddelbuettel <edd at debian.org>
 .\" 
 .TH octave-bug 1 "6 March 2000" GNU
-.LO 1
 .SH NAME
 octave-bug \- 报告 GNU Octave 中的 bug
 .SH "SYNOPSIS 总览"
diff --git a/src/man1/octave.1 b/src/man1/octave.1
index 3b09b02..c401ae7 100644
--- a/src/man1/octave.1
+++ b/src/man1/octave.1
@@ -20,7 +20,6 @@
 .\" 02111-1307, USA. 
 .\"
 .TH Octave 1 "Jan 8 1996"
-.LO 1
 .SH NAME
 octave \- 用于数值计算的高级交互式语言
 .SH "SYNOPSIS 总览"
diff --git a/src/man1/perldata.1 b/src/man1/perldata.1
index 5b06849..bdc1d46 100644
--- a/src/man1/perldata.1
+++ b/src/man1/perldata.1
@@ -2,7 +2,7 @@
 .\"
 .\" Standard preamble:
 .\" ========================================================================
-.de Sh \" Subsection heading
+.de Sh\" Subsection heading
 .br
 .if t .Sp
 .ne 5
@@ -10,40 +10,40 @@
 \fB\\$1\fR
 .PP
 ..
-.de Sp \" Vertical space (when we can't use .PP)
+.de Sp\" Vertical space (when we can't use .PP)
 .if t .sp .5v
 .if n .sp
 ..
-.de Vb \" Begin verbatim text
+.de Vb\" Begin verbatim text
 .ft CW
 .nf
-.ne \\$1
+.ne\\$1
 ..
-.de Ve \" End verbatim text
+.de Ve\" End verbatim text
 .ft R
 .fi
 ..
-.\" Set up some character translations and predefined strings.  \*(-- will
-.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
-.\" double quote, and \*(R" will give a right double quote.  | will give a
-.\" real vertical bar.  \*(C+ will give a nicer C++.  Capital omega is used to
-.\" do unbreakable dashes and therefore won't be available.  \*(C` and \*(C'
+.\" Set up some character translations and predefined strings. \*(-- will
+.\" give an unbreakable dash,\*(PI will give pi,\*(L" will give a left
+.\" double quote, and\*(R" will give a right double quote.  | will give a
+.\" real vertical bar. \*(C+ will give a nicer C++.  Capital omega is used to
+.\" do unbreakable dashes and therefore won't be available. \*(C` and\*(C'
 .\" expand to `' in nroff, nothing in troff, for use with C<>.
 .tr \(*W-|\(bv\*(Tr
 .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
-.ie n \{\
-.    ds -- \(*W-
+.ie n\{\
+.    ds --\(*W-
 .    ds PI pi
-.    if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
-.    if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\"  diablo 12 pitch
+.    if (\n(.H=4u)&(1m=24u) .ds --\(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
+.    if (\n(.H=4u)&(1m=20u) .ds --\(*W\h'-12u'\(*W\h'-8u'-\"  diablo 12 pitch
 .    ds L" ""
 .    ds R" ""
 .    ds C` ""
 .    ds C' ""
 'br\}
 .el\{\
-.    ds -- \|\(em\|
-.    ds PI \(*p
+.    ds --\|\(em\|
+.    ds PI\(*p
 .    ds L" ``
 .    ds R" ''
 'br\}
@@ -52,7 +52,7 @@
 .\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index
 .\" entries marked with X<> in POD.  Of course, you'll have to process the
 .\" output yourself in some meaningful fashion.
-.if \nF \{\
+.if\nF\{\
 .    de IX
 .    tm Index:\\$1\t\\n%\t"\\$2"
 ..
@@ -67,61 +67,61 @@
 .\"
 .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
 .\" Fear.  Run.  Save yourself.  No user-serviceable parts.
-.    \" fudge factors for nroff and troff
-.if n \{\
+.   \" fudge factors for nroff and troff
+.if n\{\
 .    ds #H 0
 .    ds #V .8m
 .    ds #F .3m
-.    ds #[ \f1
-.    ds #] \fP
+.    ds #[\f1
+.    ds #]\fP
 .\}
-.if t \{\
+.if t\{\
 .    ds #H ((1u-(\\\\n(.fu%2u))*.13m)
 .    ds #V .6m
 .    ds #F 0
-.    ds #[ \&
-.    ds #] \&
+.    ds #[\&
+.    ds #]\&
 .\}
-.    \" simple accents for nroff and troff
-.if n \{\
-.    ds ' \&
-.    ds ` \&
-.    ds ^ \&
-.    ds , \&
+.   \" simple accents for nroff and troff
+.if n\{\
+.    ds '\&
+.    ds `\&
+.    ds ^\&
+.    ds ,\&
 .    ds ~ ~
 .    ds /
 .\}
-.if t \{\
-.    ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
-.    ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
-.    ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
-.    ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
-.    ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
-.    ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
+.if t\{\
+.    ds '\\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
+.    ds `\\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
+.    ds ^\\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
+.    ds ,\\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
+.    ds ~\\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
+.    ds /\\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
 .\}
-.    \" troff and (daisy-wheel) nroff accents
-.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
-.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
-.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
-.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
+.   \" troff and (daisy-wheel) nroff accents
+.ds :\\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
+.ds 8\h'\*(#H'\(*b\h'-\*(#H'
+.ds o\\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
+.ds d-\h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
 .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
-.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
-.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
+.ds th\*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
+.ds Th\*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
 .ds ae a\h'-(\w'a'u*4/10)'e
 .ds Ae A\h'-(\w'A'u*4/10)'E
-.    \" corrections for vroff
-.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
-.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
-.    \" for low resolution devices (crt and lpr)
-.if \n(.H>23 .if \n(.V>19 \
+.   \" corrections for vroff
+.if v .ds ~\\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
+.if v .ds ^\\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
+.   \" for low resolution devices (crt and lpr)
+.if\n(.H>23 .if\n(.V>19\
 \{\
 .    ds : e
 .    ds 8 ss
 .    ds o a
 .    ds d- d\h'-1'\(ga
 .    ds D- D\h'-1'\(hy
-.    ds th \o'bp'
-.    ds Th \o'LP'
+.    ds th\o'bp'
+.    ds Th\o'LP'
 .    ds ae ae
 .    ds Ae AE
 .\}
@@ -131,16 +131,16 @@
 .IX Title "PERLDATA 1"
 .TH PERLDATA 1 "2003-11-25" "perl v5.8.3" "Perl Programmers Reference Guide"
 .SH "NAME"
-perldata \- Perl 数据类型
+perldata\- Perl 数据类型
 .SH "DESCRIPTION 描述"
 .IX Header "DESCRIPTION"
 .Sh "Variable names 变量名"
 .IX Subsection "Variable names"
-Perl 有三种内建的数据类型:标量,数组和关联数组(即 \*(L"哈希表,hash\*(R")。数组以数字为索引,通常以0开始,升序排列。哈希表以与值相关联的字符串为索引,内部排列是无序的。
+Perl 有三种内建的数据类型:标量,数组和关联数组(即\*(L"哈希表,hash\*(R")。数组以数字为索引,通常以0开始,升序排列。哈希表以与值相关联的字符串为索引,内部排列是无序的。
 .PP
-值通常通过一个变量名(或变量名的引用)来引用。变量名的前缀字符显示了值的数据类型。其余部分指明了引用的是哪一个特定的值。通常变量名是一个唯一的标识符,以字母或下划线开始,包括字母、下划线和数字。某些情况下,也可以是以 \f(CW\*(C`::\*(C'\fR 分隔的一串标识符(或者是过时的 \f(CW\*(C`'\*(C'\fR);除了最后一个,其它都是包名,用来定位最后一个标识符所在的位置(详情参见 perlmod 中的 Packages)。可以用一个简单的标识符来替代它,利用引用就可以。下文有详述,也可参见 perlref .
+值通常通过一个变量名(或变量名的引用)来引用。变量名的前缀字符显示了值的数据类型。其余部分指明了引用的是哪一个特定的值。通常变量名是一个唯一的标识符,以字母或下划线开始,包括字母、下划线和数字。某些情况下,也可以是以\f(CW\*(C`::\*(C'\fR 分隔的一串标识符(或者是过时的\f(CW\*(C`'\*(C'\fR);除了最后一个,其它都是包名,用来定位最后一个标识符所在的位置(详情参见 perlmod 中的 Packages)。可以用一个简单的标识符来替代它,利用引用就可以。下文有详述,也可参见 perlref .
 .PP
-Perl 也有内建的变量,其名称不遵循这一规则。它们名称古怪,这样可以避免与你的变量名冲突。模式匹配中被匹配到的字符串是以 \f(CW\*(C`$\*(C'\fR 加一个数字的变量名来存放的(参见 the perlop manpage 和 the perlre manpage)。 另外,还有几个使你可以介入perl 内部工作的特殊变量,其名称中包含标点和控制字符(参见 perlvar )
+Perl 也有内建的变量,其名称不遵循这一规则。它们名称古怪,这样可以避免与你的变量名冲突。模式匹配中被匹配到的字符串是以\f(CW\*(C`$\*(C'\fR 加一个数字的变量名来存放的(参见 the perlop manpage 和 the perlre manpage)。 另外,还有几个使你可以介入perl 内部工作的特殊变量,其名称中包含标点和控制字符(参见 perlvar )
 .PP
 标量以 '$'开始, 即使它是数组或哈希的元素也是如此。可以把 '$' 理解为‘s' ,表示scalar(标量)。(译者注:此处根据有关文档,做了改动,下面的@处也是这样)
 .PP
@@ -151,7 +151,7 @@ Perl 也有内建的变量,其名称不遵循这一规则。它们名称古怪
 \&    $#days              # 数组 @days的最后一个元素的索引值
 .Ve
 .PP
-整个数组(或数组和哈希的局部)以 '@'开始, 它类似英文中的 \*(L"these\*(R" 或 \*(L"those\*(R" (这些……那些……),表示期望有多个值。
+整个数组(或数组和哈希的局部)以 '@'开始, 它类似英文中的\*(L"these\*(R" 或\*(L"those\*(R" (这些……那些……),表示期望有多个值。
 .PP
 .Vb 3
 \&    @days               # ($days[0], $days[1],... $days[n])
@@ -165,15 +165,27 @@ Perl 也有内建的变量,其名称不遵循这一规则。它们名称古怪
 \&    %days               # (key1, val1, key2, val2 ...)
 .Ve
 .PP
-另外,子程序以'&'来表示, 但有时在不引起误解的情况下也可以不用, 就象 \*(L"do\*(R" 在英语中常常省略一样。 符号表项以 '*' 作为开始字符, 不过你现在还不用关心这个 (if ever ;-)
+另外,子程序以'&'来表示, 但有时在不引起误解的情况下也可以不用, 就象\*(L"do\*(R" 在英语中常常省略一样。 符号表项以 '*' 作为开始字符, 不过你现在还不用关心这个 (if ever ;-)
 .PP
-每一种数据类型都有它自己的名字空间,常量标识符也一样。这意味着你可以使用同一个名字来命名标量、数组、哈希、文件句柄、目录句柄、子程序、格式或标签。即 \f(CW$foo\fR 和 \f(CW at foo\fR 是不同的变量。也即意味着 \f(CW$foo[1]\fR 是 \f(CW at foo\fR 的一部分, 而不是 \f(CW$foo\f 的一部分. 这看来有些怪异,不过很正常,因为它本来就怪异。
+每一种数据类型都有它自己的名字空间,常量标识符也一样。这意味着你可以使用
+同一个名字来命名标量、数组、哈希、文件句柄、目录句柄、子程序、格式或标签。
+即\f(CW$foo\fR 和\f(CW at foo\fR 是不同的变量。也即意味着\f(CW$foo[1]\fR 是
+\f(CW at foo\fR 的一部分, 而不是\f(CW$foo\f 的一部分. 这看来有些怪异,不过很
+正常,因为它本来就怪异。
 .PP
-因为变量名以 '$', '@', 或 '%'开始, 保留词对变量没有什麽影响。保留词影响的是标签和文件句柄,因为它们不是以特殊字符前缀开始的。你不能用 \*(L"log\*(R" 来命名文件句柄,因为它是保留词(提示:你可以用 \f(CW\*(C`open(LOG,'logfile')\*(C'\fR 而不是 \f(CW\*(C`open(log,'logfile')\*(C'\fR). 使用大写的文件句柄既增加了可读性,又减少了冲突的发生。大小写是有意义的\-\-\*(L"\s-1FOO\s0\*(R", \*(L"Foo\*(R", 和 \*(L"foo\*(R" 是不同的名称。以字母或下划线开始的名称可以包含数字和下划线。
+因为变量名以 '$', '@', 或 '%'开始, 保留词对变量没有什麽影响。保留词影响
+的是标签和文件句柄,因为它们不是以特殊字符前缀开始的。你不能用\*(L"log\*(R"
+来命名文件句柄,因为它是保留词(提示:你可以用
+\f(CW\*(C`open(LOG,'logfile')\*(C'\fR 而不是
+\f(CW\*(C`open(log,'logfile')\*(C'\fR). 使用大写的文件句柄既增加了可读性,
+又减少了冲突的发生。大小写是有意义的\-\-\*(L"\s-1FOO\s0\*(R",\*(L"Foo\*(R",
+和\*(L"foo\*(R" 是不同的名称。以字母或下划线开始的名称可以包含数字和下划线。
 .PP
 可以用一个返回相关引用的表达式来替换这样的变量名。参见 perlref
 .PP
-以数字开始的变量名只能包含数字。不是以字母、下划线或数字开始的变量名只能含有一个字符,如: \f(CW$%\fR 或 \f(CW$$\fR. (大部分这样的变量都有特殊的意义。例如,\f(CW$$\fR 是当前进程的id。)
+以数字开始的变量名只能包含数字。不是以字母、下划线或数字开始的变量名只能
+含有一个字符,如:\f(CW$%\fR 或\f(CW$$\fR. (大部分这样的变量都有特殊的意
+义。例如,\f(CW$$\fR 是当前进程的id。)
 .Sh "Context 上下文"
 .IX Subsection "Context"
 在 Perl 中有时操作或值的意义取决于该操作或值所处的上下文。有两个主要的上下文:列表和标量上下文。相当一部分操作在需要列表的上下文中返回列表,在需要标量的上下文中返回标量。这在有关该操作的文档中会提到。换句话讲,Perl会重载这些操作符。英语中的某些词,如‘fish’和‘sheep’与此类似。
@@ -194,9 +206,15 @@ sort操作提供列表上下文给<>, <>会读入STDIN中的每一行直到结
 .PP
 赋值比较特殊,左侧的参数决定了右侧的参数的上下文。赋值给标量,则右侧参数的上下文是标量上下文;赋值给数组或哈希,则右侧参数的上下文是列表上下文。赋值给列表(或片段,其实也是列表),右侧的上下文也是列表上下文。
 .PP
-当你使用 \f(CW\*(C`use warnings\*(C'\fR 编译指示或 Perl 的 \fB\-w\fR 参数时,你可能会看到这样的警告:在 \*(L"无效的上下文,void context\*(R" 中使用了常量或函数。无效上下文的意思是值被丢弃不用,比如只包含有 \f(CW\*(C`"fred";\*(C'\fR 的语句; 或是 \f(CW\*(C`getpwuid(0);\*(C'\fR;. 在要求列表上下文的函数被标量上下文环境调用时,也会出现这个警告.
+当你使用\f(CW\*(C`use warnings\*(C'\fR 编译指示或 Perl 的\fB\-w\fR 参数时,
+你可能会看到这样的警告:在\*(L"无效的上下文,void context\*(R" 中使用了常量
+或函数。无效上下文的意思是值被丢弃不用,比如只包含有\f(CW\*(C`"fred";
+\*(C'\fR 的语句; 或是\f(CW\*(C`getpwuid(0);\*(C'\fR;. 在要求列表上下文的函数
+被标量上下文环境调用时,也会出现这个警告.
 .PP
-用户定义的子程序可能会需要查看上下文是无效,标量,还是列表。不过,大多数并不需要这么做。因为标量和列表会自动插入到一个列表中。参见 perlfunc 中的 \*(L"wantarray\*(R" 以了解如何辨明你的函数调用时的上下文。
+用户定义的子程序可能会需要查看上下文是无效,标量,还是列表。不过,大多数并
+不需要这么做。因为标量和列表会自动插入到一个列表中。参见 perlfunc 中的
+\*(L"wantarray\*(R" 以了解如何辨明你的函数调用时的上下文。
 .Sh "Scalar values 标量"
 .IX Subsection "Scalar values"
 Perl 中的所有数据都是标量, 标量的数组,标量的哈希. 标量可以是三种不同的值: 数字, 字符(串), 引用. 通常, 不同值之间的转换是透明的. 虽然一个标量不可能有多个值, 但是它可以是一个包含多个值的数组或哈希的引用.
@@ -207,7 +225,7 @@ Perl 中的所有数据都是标量, 标量的数组,标量的哈希. 标量可
 .PP
 有两种空字符串(有时以"empty"表示), 定义了的和未定义的. 定义了的空字符串就是长度为零的字符串,如"". 未定义的空字符串是一个值,这个值表示某事物并没有真实值与它对应, 比如出错, 或到达文件尾, 或者你引用一个未定义的数组或哈希的元素时,都会返回一个未定义的空字符串. 虽然在早期Perl 中,在要求已定义变量的上下文中使用未定义的变量可以使得该变量得到定义, 现在却只有在特殊的情况下才会出现这种结果,参见the perlref manpage. 可以用defined() 函数来检测标量是否已经定义(对数组和哈希无效),也可以用undef() 去除对变量的定义.
 .PP
-要弄清楚一个字符串是否是有效的非0数字,只要看它是不是数字0和字母 \*(L"0\*(R" 就足够了(不过这在使用-w参数时,会显示警告). 因为非数字的字符串被看作0, 与awk中相似:
+要弄清楚一个字符串是否是有效的非0数字,只要看它是不是数字0和字母\*(L"0\*(R" 就足够了(不过这在使用-w参数时,会显示警告). 因为非数字的字符串被看作0, 与awk中相似:
 .PP
 .Vb 3
 \&    if ($str == 0 && $str ne "0")  {
@@ -215,7 +233,7 @@ Perl 中的所有数据都是标量, 标量的数组,标量的哈希. 标量可
 \&    }
 .Ve
 .PP
-这种方法可能是最好的,因为如若不然你不会正确对待 \s-1IEEE\s0 的注释,比如 \f(CW\*(C`NaN\*(C'\fR 和无穷大. 别的时候, 你可能更愿意用 \fIPOSIX::strtod()\fR 函数或是正则表达式来检测字符串是否能用做数字(参见perlre).
+这种方法可能是最好的,因为如若不然你不会正确对待\s-1IEEE\s0 的注释,比如\f(CW\*(C`NaN\*(C'\fR 和无穷大. 别的时候, 你可能更愿意用\fIPOSIX::strtod()\fR 函数或是正则表达式来检测字符串是否能用做数字(参见perlre).
 .PP
 .Vb 8
 \&    warn "has nondigits"        if     /\eD/;
@@ -243,7 +261,7 @@ Perl 中的所有数据都是标量, 标量的数组,标量的哈希. 标量可
 \&    scalar(@whatever) == $#whatever - $[ + 1;
 .Ve
 .PP
-Perl 5 改变了 \f(CW$[\fR 的意义: 不必担心别的程序改变了 \f(CW$[\fR 的值. (换言之,不推荐使用 \f(CW$[\fR ) 所以,可以写成这样:
+Perl 5 改变了\f(CW$[\fR 的意义: 不必担心别的程序改变了\f(CW$[\fR 的值. (换言之,不推荐使用\f(CW$[\fR ) 所以,可以写成这样:
 .PP
 .Vb 1
 \&    scalar(@whatever) == $#whatever + 1;
@@ -255,9 +273,9 @@ Perl 5 改变了 \f(CW$[\fR 的意义: 不必担心别的程序改变了 \f(CW$[
 \&    $element_count = scalar(@whatever);
 .Ve
 .PP
-当哈希处于标量上下文中时, 如果哈希为空, 返回值为假, 如果非空, 返回值为真; 说得更精确些, 返回值是个字符串, 由已经使用的存储段和分配的全部存储段组成,二者之间以斜杠分隔. 这可以用来反映Perl的哈希算法的好坏. 例如, 你的哈希中有10,000个元素,但是 \f(CW%HASH\fR 的标量值为 \f(CW"1/16"\fR, 则说明仅用到了16个存储段中的一个, 也许10,000个元素都在这一个存储段中. 最好不要发生这种情况.
+当哈希处于标量上下文中时, 如果哈希为空, 返回值为假, 如果非空, 返回值为真; 说得更精确些, 返回值是个字符串, 由已经使用的存储段和分配的全部存储段组成,二者之间以斜杠分隔. 这可以用来反映Perl的哈希算法的好坏. 例如, 你的哈希中有10,000个元素,但是\f(CW%HASH\fR 的标量值为\f(CW"1/16"\fR, 则说明仅用到了16个存储段中的一个, 也许10,000个元素都在这一个存储段中. 最好不要发生这种情况.
 .PP
-你可以预先为哈希分配空间, 这要使用给 \fIkeys()\fR 函数赋值的方法来实现. 实际分配的空间是大于所给值的二的幂:
+你可以预先为哈希分配空间, 这要使用给\fIkeys()\fR 函数赋值的方法来实现. 实际分配的空间是大于所给值的二的幂:
 .PP
 .Vb 1
 \&    keys(%users) = 1000;                # 分配 1024 空间
@@ -280,7 +298,7 @@ Perl 5 改变了 \f(CW$[\fR 的意义: 不必担心别的程序改变了 \f(CW$[
 .PP
 在数字常量中可以在数字间插入下划线来增加可读性。例如,可以三位一组 (Unix 样式的分组,例如 0b110_110_100),或者四位一组 (来表示 nibbles,例如 0b1010_0110),或者其他分组。
 .PP
-字符串通常以单引号或双引号括起. 与标准Unix shells中的引号相似: 双引号可以接收转义和变量; 单引号不可以 (除了 \f(CW\*(C`\e'\*(C'\fR 和 \f(CW\*(C`\e\e\*(C'\fR)). C 样式的转义字符可以用来输入新行,跳格等字符,转义字符的列表可以参见 perlop 中的 \*(L"Quote and Quote-like Operators\*(R"
+字符串通常以单引号或双引号括起. 与标准Unix shells中的引号相似: 双引号可以接收转义和变量; 单引号不可以 (除了\f(CW\*(C`\e'\*(C'\fR 和\f(CW\*(C`\e\e\*(C'\fR)). C 样式的转义字符可以用来输入新行,跳格等字符,转义字符的列表可以参见 perlop 中的\*(L"Quote and Quote-like Operators\*(R"
 .PP
 十六进制,八进制,或二进制以字符串形式表示(如:'0xff'),不能自动转换为十进制形式. hex() 和 oct() 函数可以实现转换. 参见 perlfunc 中的 hex 和 oct 了解详情.
 .PP
@@ -292,7 +310,7 @@ Perl 5 改变了 \f(CW$[\fR 的意义: 不必担心别的程序改变了 \f(CW$[
 \&    print "The price is $Price.\en";     # interpolated
 .Ve
 .PP
-perl 中没有 double interpolation,因此 \f(CW$100\fR 保持不变。
+perl 中没有 double interpolation,因此\f(CW$100\fR 保持不变。
 .PP
 正如在有些shell中一样, 你可以用花括号括起变量名, 以便区分变量名和其后的字母及下划线. 如果要将一个变量改写为字符串时,必须这样做,以避免与后面的双冒号或单引号连接起来,否则会被当作包名:
 .PP
@@ -313,7 +331,7 @@ perl 中没有 double interpolation,因此 \f(CW$100\fR 保持不变。
 not be available after Perl 5.8.  The marginal benefits of v\-strings
 were greatly outweighed by the potential for Surprise and Confusion.
 .PP
-类似 \f(CW\*(C`v1.20.300.4000\*(C'\fR 这样的形式被解释为一个字符串. 这种形式称为 v\-strings,提供了更易读的方法来构造字符串,比起 \f(CW"\ex{1}\ex{14}\ex{12c}\ex{fa0}"\fR 更加易读. 这在表示 Unicode 字符串时很有用, 在使用字符串比较命令(\f(CW\*(C`cmp\*(C'\fR, \f(CW\*(C`gt\*(C'\fR, \f(CW\*(C`lt\*(C'\fR 等)比较版本号时也非常有用. 如果其中的点号多于两个, 则开始的 \f(CW\*(C`v\*(C'\fR 可以省略.
+类似\f(CW\*(C`v1.20.300.4000\*(C'\fR 这样的形式被解释为一个字符串. 这种形式称为 v\-strings,提供了更易读的方法来构造字符串,比起\f(CW"\ex{1}\ex{14}\ex{12c}\ex{fa0}"\fR 更加易读. 这在表示 Unicode 字符串时很有用, 在使用字符串比较命令(\f(CW\*(C`cmp\*(C'\fR,\f(CW\*(C`gt\*(C'\fR,\f(CW\*(C`lt\*(C'\fR 等)比较版本号时也非常有用. 如果其中的点号多于两个, 则开始的\f(CW\*(C`v\*(C'\fR 可以省略.
 .PP
 .Vb 3
 \&    print v9786;              # prints UTF-8 encoded SMILEY, "\ex{263a}"
@@ -321,26 +339,26 @@ were greatly outweighed by the potential for Surprise and Confusion.
 \&    print 102.111.111;        # same
 .Ve
 .PP
-这种形式可以用于require 和 use 中作版本检查.\*(L"$^V\*(R" 特殊变量中的Perl版本号就是以这种形式保存的. 参见 perlvar 中的 \*(L"$^V\*(R"
-注意使用 v\-strings 来保存 IPv4 地址是不可移植的,除非同时使用 Socket 包的 \fIinet_aton()\fR/\fIinet_ntoa()\fR 函数。
+这种形式可以用于require 和 use 中作版本检查.\*(L"$^V\*(R" 特殊变量中的Perl版本号就是以这种形式保存的. 参见 perlvar 中的\*(L"$^V\*(R"
+注意使用 v\-strings 来保存 IPv4 地址是不可移植的,除非同时使用 Socket 包的\fIinet_aton()\fR/\fIinet_ntoa()\fR 函数。
 .PP
-注意从 Perl 5.8.1 开始单个数字的 v\-strings (类似 \f(CW\*(C`v65\*(C'\fR) 如果在 \f(CW\*(C`=>\*(C'\fR 操作符(通常用来从 hash 值中区分开 hash 键) 之前,不是一个 v\-strings,而是解释为字符串 ('v65')。在 Perl 5.6.0 到 Perl 5.8.0 它一直是 v\-strings,但是这样带来了更多混淆和错误而不是优点。多个数字的 v\-strings,类似 \f(CW\*(C`v65.66\*(C'\fR 和 \f(CW65.66.67\fR,继续总是被当作 v\-strings
+注意从 Perl 5.8.1 开始单个数字的 v\-strings (类似\f(CW\*(C`v65\*(C'\fR) 如果在\f(CW\*(C`=>\*(C'\fR 操作符(通常用来从 hash 值中区分开 hash 键) 之前,不是一个 v\-strings,而是解释为字符串 ('v65')。在 Perl 5.6.0 到 Perl 5.8.0 它一直是 v\-strings,但是这样带来了更多混淆和错误而不是优点。多个数字的 v\-strings,类似\f(CW\*(C`v65.66\*(C'\fR 和\f(CW65.66.67\fR,继续总是被当作 v\-strings
 .PP
 \fI特殊常量\fR
 .IX Subsection "Special Literals"
 .PP
-特殊变量 _\|_FILE_\|_, _\|_LINE_\|_, 和 _\|_PACKAGE_\|_ 代表当前文件名,行号,和包名. 它们只能作为单独的符号来使用; 不能用于字符串中内插. 如果没有当前包(用 \f(CW\*(C`package;\*(C'\fR 指令来实现), 则_\|_PACKAGE_\|_ 是一个未定义的值.
+特殊变量 _\|_FILE_\|_, _\|_LINE_\|_, 和 _\|_PACKAGE_\|_ 代表当前文件名,行号,和包名. 它们只能作为单独的符号来使用; 不能用于字符串中内插. 如果没有当前包(用\f(CW\*(C`package;\*(C'\fR 指令来实现), 则_\|_PACKAGE_\|_ 是一个未定义的值.
 .PP
 控制字符 ^D 和 ^Z, 以及 _\|_END_\|_ 和 _\|_DATA_\|_ 变量可以表示文件的逻辑结束. 其后的文本被忽略.
 .PP
-_\|_DATA_\|_ 之后的文本可以通过文件句柄 \f(CW\*(C`PACKNAME::DATA\*(C'\fR 读取, \f(CW\*(C`PACKNAME\*(C'\fR 是 _\|_DATA_\|_ 所在的包的名称. 句柄指向_\|_DATA_\|_ 后面的文本. 读取结束程序会自动关闭该句柄 \f(CW\*(C`close DATA\*(C'\fR. 为了与 _\|_DATA_\|_ 还没有出现以前已经存在的程序兼容, _\|_END_\|_ 在顶级脚本中与 _\|_DATA_\|_ 性质相同(在用 \f(CW\*(C`require\*(C'\fR 或 \f(CW\*(C`do\*(C'\fR 调用时是不同的) 不过可以通过 \f(CW\*(C`main::DATA\*(C'\fR 来调用其中的内容.
+_\|_DATA_\|_ 之后的文本可以通过文件句柄\f(CW\*(C`PACKNAME::DATA\*(C'\fR 读取,\f(CW\*(C`PACKNAME\*(C'\fR 是 _\|_DATA_\|_ 所在的包的名称. 句柄指向_\|_DATA_\|_ 后面的文本. 读取结束程序会自动关闭该句柄\f(CW\*(C`close DATA\*(C'\fR. 为了与 _\|_DATA_\|_ 还没有出现以前已经存在的程序兼容, _\|_END_\|_ 在顶级脚本中与 _\|_DATA_\|_ 性质相同(在用\f(CW\*(C`require\*(C'\fR 或\f(CW\*(C`do\*(C'\fR 调用时是不同的) 不过可以通过\f(CW\*(C`main::DATA\*(C'\fR 来调用其中的内容.
 .PP
 参见 SelfLoader 详细了解 _\|_DATA_\|_, 其中还有例子. 要注意在BEGIN 块中无法读取DATA句柄: 因为BEGIN 块在编译时即被执行, 而此时 _\|_DATA_\|_ (或 _\|_END_\|_) 还未被程序看到.
 .PP
 \fI裸词\fR
 .IX Subsection "Barewords"
 .PP
-在文法上没有特殊意义的词语都被看作字符串. 称之为 "裸词". 和文件句柄以及标签一样, 仅包含小写字母的裸词有可能在将来与程序中的保留词发生冲突, 实际上,当你使用 \f(CW\*(C`use warnings\*(C'\fR 语句,或是 \fB\-w\fR 选项时, Perl会对此提出警告. 一些人可能希望完全禁止这样的词. 如果有如下语句:
+在文法上没有特殊意义的词语都被看作字符串. 称之为 "裸词". 和文件句柄以及标签一样, 仅包含小写字母的裸词有可能在将来与程序中的保留词发生冲突, 实际上,当你使用\f(CW\*(C`use warnings\*(C'\fR 语句,或是\fB\-w\fR 选项时, Perl会对此提出警告. 一些人可能希望完全禁止这样的词. 如果有如下语句:
 .PP
 .Vb 1
 \&    use strict 'subs';
@@ -351,7 +369,7 @@ _\|_DATA_\|_ 之后的文本可以通过文件句柄 \f(CW\*(C`PACKNAME::DATA\*(
 \fI数组合并分隔符\fR
 .IX Subsection "Array Joining Delimiter"
 .PP
-数组和序列被合并为双引号引用的字符串时,以变量 \f(CW$"\fR 指定的值 (如果指定了 \*(L"use English;\*(R" 那么是 \f(CW$LIST_SEPARATOR\fR 的值) 作为分隔符,默认是空格。下列语句等价:
+数组和序列被合并为双引号引用的字符串时,以变量\f(CW$"\fR 指定的值 (如果指定了\*(L"use English;\*(R" 那么是\f(CW$LIST_SEPARATOR\fR 的值) 作为分隔符,默认是空格。下列语句等价:
 .PP
 .Vb 2
 \&    $temp = join($", @ARGV);
@@ -362,9 +380,9 @@ _\|_DATA_\|_ 之后的文本可以通过文件句柄 \f(CW\*(C`PACKNAME::DATA\*(
 \&    system "echo @ARGV";
 .Ve
 .PP
-在搜索模式中(在双引号字符串中也是)有一个易混淆之处: \f(CW\*(C`/$foo[bar]/\*(C'\fR 应该是 \f(CW\*(C`/${foo}[bar]/\*(C'\fR (\f(CW\*(C`[bar]\*(C'\fR 是正则表达式的字符类) 还是 \f(CW\*(C`/${foo[bar]}/\*(C'\fR/ (\f(CW\*(C`[bar]\*(C'\fR 是数组 \f(CW at foo\fR 的下标) 呢? 如果 \f(CW at foo\fR 不存在, 那很明显它应该是字符类. 如果 \f(CW at foo\fR 存在, Perl 会尽力猜测 \f(CW\*(C`[bar]\*(C'\fR 的含义, 且它几乎总是对的. 如果它猜错了, 或者你比较偏执, 你可以使用花括号.
+在搜索模式中(在双引号字符串中也是)有一个易混淆之处:\f(CW\*(C`/$foo[bar]/\*(C'\fR 应该是\f(CW\*(C`/${foo}[bar]/\*(C'\fR (\f(CW\*(C`[bar]\*(C'\fR 是正则表达式的字符类) 还是\f(CW\*(C`/${foo[bar]}/\*(C'\fR/ (\f(CW\*(C`[bar]\*(C'\fR 是数组\f(CW at foo\fR 的下标) 呢? 如果\f(CW at foo\fR 不存在, 那很明显它应该是字符类. 如果\f(CW at foo\fR 存在, Perl 会尽力猜测\f(CW\*(C`[bar]\*(C'\fR 的含义, 且它几乎总是对的. 如果它猜错了, 或者你比较偏执, 你可以使用花括号.
 .PP
-here\-document 的语法已经被移动到 perlop 中的 \*(L"Quote and Quote-like Operators\*(R"
+here\-document 的语法已经被移动到 perlop 中的\*(L"Quote and Quote-like Operators\*(R"
 .Sh "List value constructors 列表值构造"
 .IX Subsection "List value constructors"
 列表是用逗号分开的各个值组成的(如果优先级需要的话,外面还要用圆括号包围):
@@ -424,7 +442,7 @@ here\-document 的语法已经被移动到 perlop 中的 \*(L"Quote and Quote-li
 .PP
 空列表可以表示为(). 在列表中插入空列表没有意义. ((),(),()) 与()相同. 同样, 内插一个空数组也没有意义.
 .PP
-合并的语法表示开和闭括号都是可选的 (除非为表示优先级需要);而列表可以以可选的逗号结束表示列表中的多个逗号是合法的语法。列表 \f(CW\*(C`1,,3\*(C'\fR 是两个列表的并置,\f(CW\*(C`1,\*(C'\fR 还有 \f(CW3\fR, 第一个以可选的逗号结束。\f(CW\*(C`1,,3\*(C'\fR 是 \f(CW\*(C`(1,),(3)\*(C'\fR 也是 \f(CW\*(C`1,3\*(C'\fR (类似的,\f(CW\*(C`1,,,3\*(C'\fR 是 \f(CW\*(C`(1,),(,),3\*(C'\fR 也是 \f(CW\*(C`1,3\*(C'\fR 等等) 不过我们不建议你使用这么混乱的写法
+合并的语法表示开和闭括号都是可选的 (除非为表示优先级需要);而列表可以以可选的逗号结束表示列表中的多个逗号是合法的语法。列表\f(CW\*(C`1,,3\*(C'\fR 是两个列表的并置,\f(CW\*(C`1,\*(C'\fR 还有\f(CW3\fR, 第一个以可选的逗号结束。\f(CW\*(C`1,,3\*(C'\fR 是\f(CW\*(C`(1,),(3)\*(C'\fR 也是\f(CW\*(C`1,3\*(C'\fR (类似的,\f(CW\*(C`1,,,3\*(C'\fR 是\f(CW\*(C`(1,),(,),3\*(C'\fR 也是\f(CW\*(C`1,3\*(C'\fR 等等) 不过我们不建议你使用这么混乱的写法
 .PP
 列表也可以象数组一样使用下标. 为了避免歧义需要在列表外使用括号. 例如:
 .PP
@@ -458,7 +476,7 @@ here\-document 的语法已经被移动到 perlop 中的 \*(L"Quote and Quote-li
 \&    ($map{'red'}, $map{'blue'}, $map{'green'}) = (0x00f, 0x0f0, 0xf00);
 .Ve
 .PP
-特例是可以赋值为 \f(CW\*(C`undef\*(C'\fR。当忽略程序的某些返回值时这很有用:
+特例是可以赋值为\f(CW\*(C`undef\*(C'\fR。当忽略程序的某些返回值时这很有用:
 .PP
 .Vb 1
 \&    ($dev, $ino, undef, undef, $uid, $gid) = stat($file);
@@ -479,7 +497,7 @@ here\-document 的语法已经被移动到 perlop 中的 \*(L"Quote and Quote-li
 \&    $count = () = $string =~ /\ed+/g;
 .Ve
 .PP
-将置 \f(CW$count\fR 为 \f(CW$string\fR 中找到的数字组数量。这样能行的原因是模式匹配是列表上下文 (因为它被赋予一个空列表),因此返回所有匹配部分的列表。在标量上下文中的列表赋值将它转换为元素的个数 (这里是模式被匹配的数量),然后赋值给 \f(CW$count\fR。注意简单地使用
+将置\f(CW$count\fR 为\f(CW$string\fR 中找到的数字组数量。这样能行的原因是模式匹配是列表上下文 (因为它被赋予一个空列表),因此返回所有匹配部分的列表。在标量上下文中的列表赋值将它转换为元素的个数 (这里是模式被匹配的数量),然后赋值给\f(CW$count\fR。注意简单地使用
 .PP
 .Vb 1
 \&    $count = $string =~ /\ed+/g;
@@ -505,7 +523,7 @@ here\-document 的语法已经被移动到 perlop 中的 \*(L"Quote and Quote-li
 .PP
 列表和数组交互性很强, 哈希则不然. 你可以象使用数组时一样对列表使用下标并不意味着可以象使用哈希一样使用列表. 同样,处于列表中的哈希总是以字值对的形式展开. 因此有时使用引用要更好一些.
 .PP
-通常在字值对中使用 \f(CW\*(C`=>\*(C'\fR 操作符会更易读. \f(CW\*(C`=>\*(C'\fR 与逗号作用相同, 不过它还有一个作用, 那就是可以使它左侧的对象被解释为字符串 \*(-- 如果该对象是裸字的话,将是合法的标识符 (\f(CW\*(C`=>\*(C'\fR 不引用包含双冒号的复合标识符). 这在初始化哈希时棒极了:
+通常在字值对中使用\f(CW\*(C`=>\*(C'\fR 操作符会更易读.\f(CW\*(C`=>\*(C'\fR 与逗号作用相同, 不过它还有一个作用, 那就是可以使它左侧的对象被解释为字符串\*(-- 如果该对象是裸字的话,将是合法的标识符 (\f(CW\*(C`=>\*(C'\fR 不引用包含双冒号的复合标识符). 这在初始化哈希时棒极了:
 .PP
 .Vb 5
 \&    %map = (
@@ -533,11 +551,11 @@ or for using call-by-named-parameter to complicated functions:
 \&               values    => ['eenie','meenie','minie'],
 \&               default   => 'meenie',
 \&               linebreak => 'true',
-\&               labels    => \e%labels
+\&               labels    =>\e%labels
 \&   );
 .Ve
 .PP
-注意哈希初始化时的顺序和输出时的顺序并不一定相同. 要得到顺序的输出可以参见 perlfunc 中的 \*(L"sort\*(R"
+注意哈希初始化时的顺序和输出时的顺序并不一定相同. 要得到顺序的输出可以参见 perlfunc 中的\*(L"sort\*(R"
 .Sh "Subscripts 下标"
 .IX Subsection "Subscripts"
 数组可以用一个美元符号,加上它的名字(不包括前导的\f(CW\*(C`@\*(C'\fR),加上方括号和其中包含的下标来取得值。例如:
@@ -547,7 +565,7 @@ or for using call-by-named-parameter to complicated functions:
 \&    print "Element Number 2 is", $myarray[2], "\en";
 .Ve
 .PP
-数组下标从 0 开始。负值下标返回从尾部开始数的值。在我们的例子中,\f(CW$myarray[\-1]\fR 将是 5000, \f(CW$myarray[\-2]\fR 是 500。
+数组下标从 0 开始。负值下标返回从尾部开始数的值。在我们的例子中,\f(CW$myarray[\-1]\fR 将是 5000,\f(CW$myarray[\-2]\fR 是 500。
 .PP
 Hash 下标与此类似,但是不使用方括号而是花括号。例如:
 .PP
@@ -601,7 +619,7 @@ Hash 下标与此类似,但是不使用方括号而是花括号。例如:
 \&    ($folks[0], $folks[-1]) = ($folks[-1], $folks[0]);
 .Ve
 .PP
-既然改变片段就会改变数组或哈希的原始值, 那么 \f(CW\*(C`foreach\*(C'\fR 结构可以部分或全部地改变数组或哈希的值.
+既然改变片段就会改变数组或哈希的原始值, 那么\f(CW\*(C`foreach\*(C'\fR 结构可以部分或全部地改变数组或哈希的值.
 .PP
 .Vb 1
 \&    foreach (@array[ 4 .. 10 ]) { s/peter/paul/ }
@@ -654,7 +672,7 @@ Perl 使用叫做 全局类型 的类型来支持整个符号表项. 全局类
 使得$this 成为 $that的别名, @this 成为 @that的别名,%this 成为 %that的别名, &this 成为 &that的别名, 等等. 使用引用会更安全. 这样:
 .PP
 .Vb 1
-\&    local *Here::blue = \e$There::green;
+\&    local *Here::blue =\e$There::green;
 .Ve
 .PP
 暂时使 $Here::blue 成为 $There::green的别名, 但不会使 @Here::blue 成为 @There::green的别名, 也不会使 %Here::blue 成为 %There::green的别名, 等等. 参见 perlmod 中的 Symbol Tables 有多个例子. 看起来可能有些怪异, 不过这却是整个import/export系统的基础.
@@ -668,7 +686,7 @@ Perl 使用叫做 全局类型 的类型来支持整个符号表项. 全局类
 或者使用真正的引用, 象这样:
 .PP
 .Vb 1
-\&    $fh = \e*STDOUT;
+\&    $fh =\e*STDOUT;
 .Ve
 .PP
 参见 perlsub 有关于间接句柄的多个例子.
@@ -705,7 +723,7 @@ Perl 使用叫做 全局类型 的类型来支持整个符号表项. 全局类
 \&    }
 .Ve
 .PP
-注意如果使用了初始化的标量,那么结果会有不同:\f(CW\*(C`my $fh='zzz'; open($fh, ...)\*(C'\fR 与 \f(CW\*(C`open( *{'zzz'}, ...)\*(C'\fR 等价。\f(CW\*(C`use strict 'refs'\*(C'\fR 禁止了这样做。
+注意如果使用了初始化的标量,那么结果会有不同:\f(CW\*(C`my $fh='zzz'; open($fh, ...)\*(C'\fR 与\f(CW\*(C`open( *{'zzz'}, ...)\*(C'\fR 等价。\f(CW\*(C`use strict 'refs'\*(C'\fR 禁止了这样做。
 .PP
 另一个创建匿名句柄的方法是用Symbol 模块或IO::Handle 模块或诸如此类的东西. These modules have the advantage of not hiding different types of the same name during the local(). 在 open() in the perlfunc manpage 的文末有个例子.(译者注:说实话,对匿名句柄我现在也是一头雾水,翻译的不当之处,请高手指出.)
 .SH "SEE ALSO 参见"
diff --git a/src/man1/pg_config.1 b/src/man1/pg_config.1
index 6d39c7a..70b978d 100644
--- a/src/man1/pg_config.1
+++ b/src/man1/pg_config.1
@@ -1,4 +1,4 @@
-.\\" auto-generated by docbook2man-spec $Revision: 1.1 $
+.\" auto-generated by docbook2man-spec $Revision: 1.1 $
 .TH "PG_CONFIG" "1" "2003-11-02" "Application" "PostgreSQL Server Applications"
 .SH NAME
 pg_config \- 检索已安装版本的 PostgreSQL 的信息
diff --git a/src/man1/pg_controldata.1 b/src/man1/pg_controldata.1
index 3d34e4e..bc39544 100644
--- a/src/man1/pg_controldata.1
+++ b/src/man1/pg_controldata.1
@@ -1,4 +1,4 @@
-.\\" auto-generated by docbook2man-spec $Revision: 1.1 $
+.\" auto-generated by docbook2man-spec $Revision: 1.1 $
 .TH "PG_CONTROLDATA" "1" "2003-11-02" "Application" "PostgreSQL Server Applications"
 .SH NAME
 pg_controldata \- 显示一个 PostgreSQL 集群的控制信息
diff --git a/src/man1/pg_ctl.1 b/src/man1/pg_ctl.1
index 35fc6ba..a50c214 100644
--- a/src/man1/pg_ctl.1
+++ b/src/man1/pg_ctl.1
@@ -1,4 +1,4 @@
-.\\" auto-generated by docbook2man-spec $Revision: 1.1 $
+.\" auto-generated by docbook2man-spec $Revision: 1.1 $
 .TH "PG_CTL" "1" "2003-11-02" "Application" "PostgreSQL Server Applications"
 .SH NAME
 pg_ctl \- 启动,停止和重启 PostgreSQL 服务器
diff --git a/src/man1/pg_dump.1 b/src/man1/pg_dump.1
index 787124b..47b55a2 100644
--- a/src/man1/pg_dump.1
+++ b/src/man1/pg_dump.1
@@ -1,4 +1,4 @@
-.\\" auto-generated by docbook2man-spec $Revision: 1.1 $
+.\" auto-generated by docbook2man-spec $Revision: 1.1 $
 .TH "PG_DUMP" "1" "2003-11-02" "Application" "PostgreSQL Client Applications"
 .SH NAME
 pg_dump \- 将一个PostgreSQL数据库抽出到一个脚本文件或者其它归档文件中
diff --git a/src/man1/pg_dumpall.1 b/src/man1/pg_dumpall.1
index e2326ca..8b8c700 100644
--- a/src/man1/pg_dumpall.1
+++ b/src/man1/pg_dumpall.1
@@ -1,4 +1,4 @@
-.\\" auto-generated by docbook2man-spec $Revision: 1.1 $
+.\" auto-generated by docbook2man-spec $Revision: 1.1 $
 .TH "PG_DUMPALL" "1" "2003-11-02" "Application" "PostgreSQL Client Applications"
 .SH NAME
 pg_dumpall \- 抽出一个 PostgreSQL 数据库集群到脚本文件中
diff --git a/src/man1/pg_resetxlog.1 b/src/man1/pg_resetxlog.1
index 44c02eb..9b4e028 100644
--- a/src/man1/pg_resetxlog.1
+++ b/src/man1/pg_resetxlog.1
@@ -1,4 +1,4 @@
-.\\" auto-generated by docbook2man-spec $Revision: 1.1 $
+.\" auto-generated by docbook2man-spec $Revision: 1.1 $
 .TH "PG_RESETXLOG" "1" "2003-11-02" "Application" "PostgreSQL Server Applications"
 .SH NAME
 pg_resetxlog \- 重置一个 PostgreSQL 数据库集群的预写日志以及其它控制内容
diff --git a/src/man1/pg_restore.1 b/src/man1/pg_restore.1
index 7ea07ec..9e64f5a 100644
--- a/src/man1/pg_restore.1
+++ b/src/man1/pg_restore.1
@@ -1,4 +1,4 @@
-.\\" auto-generated by docbook2man-spec $Revision: 1.1 $
+.\" auto-generated by docbook2man-spec $Revision: 1.1 $
 .TH "PG_RESTORE" "1" "2003-11-02" "Application" "PostgreSQL Client Applications"
 .SH NAME
 pg_restore \- 从一个由 pg_dump 创建的备份文件中恢复 PostgreSQL 数据库。
diff --git a/src/man1/pgtclsh.1 b/src/man1/pgtclsh.1
index 148c105..1d81dbd 100644
--- a/src/man1/pgtclsh.1
+++ b/src/man1/pgtclsh.1
@@ -1,4 +1,4 @@
-.\\" auto-generated by docbook2man-spec $Revision: 1.1 $
+.\" auto-generated by docbook2man-spec $Revision: 1.1 $
 .TH "PGTCLSH" "1" "2003-11-02" "Application" "PostgreSQL Client Applications"
 .SH NAME
 pgtclsh \-\- PostgreSQL TCLshell 客户端
diff --git a/src/man1/pgtksh.1 b/src/man1/pgtksh.1
index 66e888a..617e157 100644
--- a/src/man1/pgtksh.1
+++ b/src/man1/pgtksh.1
@@ -1,4 +1,4 @@
-.\\" auto-generated by docbook2man-spec $Revision: 1.1 $
+.\" auto-generated by docbook2man-spec $Revision: 1.1 $
 .TH "PGTKSH" "1" "2003-11-02" "Application" "PostgreSQL Client Applications"
 .SH NAME
 pgtksh \-\- PostgreSQL Tcl/Tk shell 客户端
diff --git a/src/man1/postgres.1 b/src/man1/postgres.1
index 1822d1a..b9c6634 100644
--- a/src/man1/postgres.1
+++ b/src/man1/postgres.1
@@ -1,4 +1,4 @@
-.\\" auto-generated by docbook2man-spec $Revision: 1.1 $
+.\" auto-generated by docbook2man-spec $Revision: 1.1 $
 .TH "POSTGRES" "1" "2003-11-02" "Application" "PostgreSQL Server Applications"
 .SH NAME
 postgres \- 以单用户模式运行一个 PostgreSQL服务器
diff --git a/src/man1/postmaster.1 b/src/man1/postmaster.1
index 2dbfb3b..2ed4c82 100644
--- a/src/man1/postmaster.1
+++ b/src/man1/postmaster.1
@@ -1,4 +1,4 @@
-.\\" auto-generated by docbook2man-spec $Revision: 1.1 $
+.\" auto-generated by docbook2man-spec $Revision: 1.1 $
 .TH "POSTMASTER" "1" "2003-11-02" "Application" "PostgreSQL Server Applications"
 .SH NAME
 postmaster \- PostgreSQL多用户数据库服务器
diff --git a/src/man1/psql.1 b/src/man1/psql.1
index 0c0591b..d106422 100644
--- a/src/man1/psql.1
+++ b/src/man1/psql.1
@@ -1,11 +1,11 @@
-.\\" auto-generated by docbook2man-spec $Revision: 1.2 $
+.\" auto-generated by docbook2man-spec $Revision: 1.2 $
 .TH "PSQL" "1" "2003-11-02" "Application" "PostgreSQL Client Applications"
 .SH NAME
-psql \- PostgreSQL 交互终端
+psql\- PostgreSQL 交互终端
 
 .SH SYNOPSIS
 .sp
-\fBpsql\fR\fR [ \fR\fB\fIoption\fB\fR...\fB \fR\fR]\fR\fR [ \fR\fB\fIdbname\fB\fR [ \fB\fIusername\fB \fR]\fB \fR\fR]\fR
+\fBpsql\fR\fR [\fR\fB\fIoption\fB\fR...\fB\fR\fR]\fR\fR [\fR\fB\fIdbname\fB\fR [\fB\fIusername\fB\fR]\fB\fR\fR]\fR
 .SH "DESCRIPTION 描述"
 .PP
 \fBpsql\fR 是一个以终端为基础的 PostgreSQL  前端。它允许你交互地键入查询,把它们发出给 PostgreSQL, 然后看看查询的结果。另外,输入可以来自一个文件。还有, 它提供了一些元命令和多种类 shell 地特性来实现书写脚本以及对大量任务的自动化。
@@ -21,18 +21,20 @@ psql \- PostgreSQL 交互终端
 \fB--no-align\fR
  切换为非对齐输出模式。(缺省输出模式是对齐的。)
 .TP
-\fB-c \fIcommand\fB\fR
+\fB-c\fIcommand\fB\fR
 .TP
-\fB--command \fIcommand\fB\fR
- 声明 psql 将执行一条查询字串, command,然后退出。这一点在 shell 脚本里很有用。
-
-\fIcommand\fR 必须是一条完全可以被服务器分析的查询字串(也就是说,它不包含 psql特有的特性), 或者是一个反斜杠命令。这样你就不会混合 SQL 和 psql  元命令。要想混合使用,你可以把字串定向到 \fBpsql\fR 里,象这样: echo "\x \\ select * from foo;" | psql。
+\fB--command\fIcommand\fB\fR
+声明 psql 将执行一条查询字串, command,然后退出。这一点在 shell 脚本里很有用。
+\fIcommand\fR 必须是一条完全可以被服务器分析的查询字串(也就是说,它不包含
+psql特有的特性), 或者是一个反斜杠命令。这样你就不会混合 SQL 和 psql 
+元命令。要想混合使用,你可以把字串定向到\fBpsql\fR 里,象这样:
+echo "\\x\\ select * from foo;" | psql。
 
  如果命令字串包含多个 SQL 命令,那么他们在一个事务里处理, 除非在字串里包含了明确的 BEGIN/COMMIT 命令把他们分成多个事务。 这个和从 psql 的标准输入里给它填充相同字串不同。
 .TP
-\fB-d \fIdbname\fB\fR
+\fB-d\fIdbname\fB\fR
 .TP
-\fB--dbname \fIdbname\fB\fR
+\fB--dbname\fIdbname\fB\fR
  声明想要联接的数据库名称。等效于在命令行行上把 dbname  声明为第一个非选项参数。
 .TP
 \fB-e\fR
@@ -43,34 +45,34 @@ psql \- PostgreSQL 交互终端
 \fB-E\fR
 .TP
 \fB--echo-hidden\fR
- 回显由 \fB\\d\fR 和其他反斜杠命令生成的实际查询。 如果你希望在你自己的程序里包含类似的功能, 你就可以使用这个选项。这等效于在psql里设置变量ECHO_HIDDEN。
+ 回显由\fB\\d\fR 和其他反斜杠命令生成的实际查询。 如果你希望在你自己的程序里包含类似的功能, 你就可以使用这个选项。这等效于在psql里设置变量ECHO_HIDDEN。
 .TP
-\fB-f \fIfilename\fB\fR
+\fB-f\fIfilename\fB\fR
 .TP
-\fB--file \fIfilename\fB\fR
- 使用 filename作为命令的语句源而不是交互式读入查询。 在处理完文件后,psql 结束。这个选项在很多方面等效于内部命令 \fB\\i\fR。
+\fB--file\fIfilename\fB\fR
+ 使用 filename作为命令的语句源而不是交互式读入查询。 在处理完文件后,psql 结束。这个选项在很多方面等效于内部命令\fB\\i\fR。
 
-如果 \fIfilename\fR 是 \-
+如果\fIfilename\fR 是\-
 (连字符),则从标准输入读取。
 
  使用这个选项与用 psql < filename  有微小的区别。通常,两者都回按照你预期那样运行,但是使用 -f打开了一些很好的特性, 比如带行号的错误信息。而且,使用这个选项还有可能有减小启动负荷的机会。 另一方面,如果你把所有内容手工输入, 使用 shell 输入定向的方式(理论上)能保证生成和你已经得到的完全一样的输出(译注:重复运行命令)。
 .TP
-\fB-F \fIseparator\fB\fR
+\fB-F\fIseparator\fB\fR
 .TP
-\fB--field-separator \fIseparator\fB\fR
+\fB--field-separator\fIseparator\fB\fR
  使用 separator 作为域分隔符。等效于
 \fB\\pset
-fieldsep\fR 或 \fB\\f\fR。
+fieldsep\fR 或\fB\\f\fR。
 .TP
-\fB-h \fIhostname\fB\fR
+\fB-h\fIhostname\fB\fR
 .TP
-\fB--host \fIhostname\fB\fR
+\fB--host\fIhostname\fB\fR
  声明正在运行服务器的主机名。 如果主机名以斜扛开头,则它被用做到 Unix 域套接字的路径。
 .TP
 \fB-H\fR
 .TP
 \fB--html\fR
- 打开HTML格式输出。等效于 \\pset format html 或 \fB\\H\fR 命令。
+ 打开HTML格式输出。等效于\\pset format html 或\fB\\H\fR 命令。
 .TP
 \fB-l\fR
 .TP
@@ -78,30 +80,30 @@ fieldsep\fR 或 \fB\\f\fR。
  列出所有可用的数据库,然后退出。其他非联接选项将被忽略。类似于内部命令
 \fB\\list\fR。
 .TP
-\fB-o \fIfilename\fB\fR
+\fB-o\fIfilename\fB\fR
 .TP
-\fB--output \fIfilename\fB\fR
- 将所有查询输出定向到文件 filename。这个选项等效于命令 \fB\\o\fR。
+\fB--output\fIfilename\fB\fR
+ 将所有查询输出定向到文件 filename。这个选项等效于命令\fB\\o\fR。
 .TP
-\fB-p \fIport\fB\fR
+\fB-p\fIport\fB\fR
 .TP
-\fB--port \fIport\fB\fR
+\fB--port\fIport\fB\fR
  声明被服务器侦听的 TCP 端口或使用的缺省本地 Unix 主控套接字文件句柄。 缺省的是环境变量PGPORT的值,如果没有设置的话是编译是声明的端口,通常是 5432。
 .TP
-\fB-P \fIassignment\fB\fR
+\fB-P\fIassignment\fB\fR
 .TP
-\fB--pset \fIassignment\fB\fR
- 允许你在命令行上以 \fB\\pset\fR 的风格设置打印选项。 要注意的是你在这里用等号分割名称和值,而不能用空格。 因此要把输出格式设置为 LaTeX,你可以敲入 -P format=latex。
+\fB--pset\fIassignment\fB\fR
+ 允许你在命令行上以\fB\\pset\fR 的风格设置打印选项。 要注意的是你在这里用等号分割名称和值,而不能用空格。 因此要把输出格式设置为 LaTeX,你可以敲入 -P format=latex。
 .TP
 \fB-q\fR
 .TP
 \fB--quiet\fR
  声明 psql 将安静地执行处理任务。 缺省时psql将打印欢迎和许多其他输出信息。 如果使用了此选项,这些都不出现。这在和 -c 选项一起使用时很有效。在 psql 里,你可以通过设置 QUIET 变量实现同样效果。
 .TP
-\fB-R \fIseparator\fB\fR
+\fB-R\fIseparator\fB\fR
 .TP
-\fB--record-separator \fIseparator\fB\fR
- 使用 separator 做为记录分隔符。 等效于 \fB\\pset recordsep\fR 命令。
+\fB--record-separator\fIseparator\fB\fR
+ 使用 separator 做为记录分隔符。 等效于\fB\\pset recordsep\fR 命令。
 .TP
 \fB-s\fR
 .TP
@@ -122,29 +124,29 @@ fieldsep\fR 或 \fB\\f\fR。
 \fB-t\fR
 .TP
 \fB--tuples-only\fR
- 关闭打印列名称和结果行计数脚注等信息。完全等效于元命令 \fB\\t\fR。
+ 关闭打印列名称和结果行计数脚注等信息。完全等效于元命令\fB\\t\fR。
 .TP
-\fB-T \fItable_options\fB\fR
+\fB-T\fItable_options\fB\fR
 .TP
-\fB--table-attr \fItable_options\fB\fR
- 允许你声明放在 HTML table 标记里的选项。 参阅 \fB\\pset\fR 获取细节。
+\fB--table-attr\fItable_options\fB\fR
+ 允许你声明放在 HTML table 标记里的选项。 参阅\fB\\pset\fR 获取细节。
 .TP
 \fB-u\fR
  让 psql 在和数据库联接之提示输入用户的用户名和口令。
 
  这个选项已经废弃了,因为它在概念上有漏洞。 (提示输入非缺省用户名和提示输入服务器要求的口令是完全两码事。)我们鼓励你用 -U 和 -W 选项取代。
 .TP
-\fB-U \fIusername\fB\fR
+\fB-U\fIusername\fB\fR
 .TP
-\fB--username \fIusername\fB\fR
+\fB--username\fIusername\fB\fR
  以用户 username  代替缺省用户与数据库联接。(当然,你必须有这么做的权限。)
 .TP
-\fB-v \fIassignment\fB\fR
+\fB-v\fIassignment\fB\fR
 .TP
-\fB--set \fIassignment\fB\fR
+\fB--set\fIassignment\fB\fR
 .TP
-\fB--variable \fIassignment\fB\fR
- 进行一次变量分配,象内部命令 \fB\\set\fR 那样。 注意,如果有变量名和值的话,你必须在命令行上用等号分隔它们。要重置一个变量, 去掉等号。这个分配是在启动的很早的阶段进行的,所以为内部使用保留的变量可能被再次覆盖。
+\fB--variable\fIassignment\fB\fR
+ 进行一次变量分配,象内部命令\fB\\set\fR 那样。 注意,如果有变量名和值的话,你必须在命令行上用等号分隔它们。要重置一个变量, 去掉等号。这个分配是在启动的很早的阶段进行的,所以为内部使用保留的变量可能被再次覆盖。
 .TP
 \fB-V\fR
 .TP
@@ -154,19 +156,19 @@ fieldsep\fR 或 \fB\\f\fR。
 \fB-W\fR
 .TP
 \fB--password\fR
- 要求 psql 在与一个数据库联接前提示输入口令。 这个选项将在整个会话过程中有效,即使你用元命令  \fB\\connect\fR 改变了所联接的数据库。
+ 要求 psql 在与一个数据库联接前提示输入口令。 这个选项将在整个会话过程中有效,即使你用元命令 \fB\\connect\fR 改变了所联接的数据库。
 
  在当前版本里,如果服务器要求口令认证,psql  自动提出一个口令提示符。因为目前这个特性是以一个“hack”为基础, 自动识别有可能奇怪地失效,因此用这个选项强制一个提示符。 如果没有声明口令提示符而服务器要求口令认证,那么联接企图将失败。
 .TP
 \fB-x\fR
 .TP
 \fB--expanded\fR
- 打开扩展表格式模式。等效于 \fB\\x\fR。 
+ 打开扩展表格式模式。等效于\fB\\x\fR。 
 .TP
 \fB-X,\fR
 .TP
 \fB--no-psqlrc\fR
- 不读取启动文件  \fI~/.psqlrc\fR。
+ 不读取启动文件 \fI~/.psqlrc\fR。
 .TP
 \fB-?\fR
 .TP
@@ -174,7 +176,7 @@ fieldsep\fR 或 \fB\\f\fR。
  显示关于psql命令行参数的帮助。
 .SH "EXIT STATUS 退出状态"
 .PP
-如果正常结束,那么 \fBpsql\fR  向 shell 返回 0,如果自身发生致命错误,则返回 1(内存用尽,未找到文件等), 如果和数据库的连接失效而且会话不再活跃则返回 2,如果脚本中发生错误并且设置了 ON_ERROR_STOP 则返回 3。
+如果正常结束,那么\fBpsql\fR  向 shell 返回 0,如果自身发生致命错误,则返回 1(内存用尽,未找到文件等), 如果和数据库的连接失效而且会话不再活跃则返回 2,如果脚本中发生错误并且设置了 ON_ERROR_STOP 则返回 3。
 .SH "USAGE 用法"
 .SS "CONNECTING TO A DATABASE 与一个数据库联接"
 .PP
@@ -186,14 +188,14 @@ fieldsep\fR 或 \fB\\f\fR。
  通常状况下,psql 提供一个带有 psql 正在与之联接的接数据库名的,后缀 =>的提示符。例如,
 .sp
 .nf
-$ \fBpsql testdb\fR
+$\fBpsql testdb\fR
 Welcome to psql 7.4beta5, the PostgreSQL interactive terminal.
 
-Type:  \\copyright for distribution terms
-       \\h for help with SQL commands
-       \\? for help on internal slash commands
-       \\g or terminate with semicolon to execute query
-       \\q to quit
+Type: \\copyright for distribution terms
+      \\h for help with SQL commands
+      \\? for help on internal slash commands
+      \\g or terminate with semicolon to execute query
+      \\q to quit
 
 testdb=>
 .sp
@@ -209,7 +211,7 @@ testdb=>
  一个 psql 命令的格式是反斜杠后面紧跟一个命令动词,然后是任意参数。 参数与命令动词和其他参数以任意个空白字符间隔。
 .PP
  要在参数里面包含空白,你必须用单引号把它包围起来。 要在这样的参数里包含单引号,前面加一个反斜杠。 任何包含在单引号里的东西会被进一步进行类 C 的替换,把
-\\n (new line), \\t (tab),
+\\n (new line),\\t (tab),
 \\\fIdigits\fR,
 \\0\fIdigits\fR, 和
 \\0x\fIdigits\fR 
@@ -222,39 +224,39 @@ testdb=>
  有些命令以一个 SQL 标识的名称(如,一个表名)为参数。 这些参数遵循 SQL 语法关于双引号的规则: 不带双引号的标识强制成小写, 而双引号保护字母不受大小写转换,并且允许在标识符中使用空白。 在双引号中,成对的双引号在结果名字中分析成一个双引号。比如, FOO"BAR"BAZ 解析成 fooBARbaz,而 "A weird"" name" 变成 A weird" name。
 name.
 .PP
- 对参数的分析在碰到另一个不带引号的反斜杠时停止。 这里会认为是一个新的元命令的开始。特殊序列  \\\\ (双反斜杠)标识参数的结尾并将继续分析后面的 SQL 命令(如果存在的话)。这样 SQL 和 psql命令可以自由的在一行里面混合。 但是在任何情况下,一条元命令的参数不能延续超过行尾。
+ 对参数的分析在碰到另一个不带引号的反斜杠时停止。 这里会认为是一个新的元命令的开始。特殊序列 \\\\ (双反斜杠)标识参数的结尾并将继续分析后面的 SQL 命令(如果存在的话)。这样 SQL 和 psql命令可以自由的在一行里面混合。 但是在任何情况下,一条元命令的参数不能延续超过行尾。
 .PP
  下列元命令是已定义的:
 .TP
 \fB\\a\fR
- 如果目前的表输出格式是不对齐的,切换成对齐的。 如果是对齐的,切换成不对齐。这条命令是为了向后兼容。参阅 \fB\\pset\fR 获取一个通用的解决方法。
+ 如果目前的表输出格式是不对齐的,切换成对齐的。 如果是对齐的,切换成不对齐。这条命令是为了向后兼容。参阅\fB\\pset\fR 获取一个通用的解决方法。
 .TP
 \fB\\cd [\fIdirectory\fB]\fR
  把当前工作目录改变到 directory。 没有参数是则改变到当前用户的家目录。
 .sp
 .RS
 .B "Tip:"
-提示:  要打印出你的当前工作目录,使用 \\!pwd.
+提示:  要打印出你的当前工作目录,使用\\!pwd.
 .RE
 .sp
 .TP
-\fB\\C [ \fItitle\fB ]\fR
+\fB\\C [\fItitle\fB ]\fR
  把正在打印的表的标题设置为一个查询的结果或者取消这样的设置。 这条命令等效于
-\\pset title \fItitle\fR. (这条命令的名称源于 "caption",因为以前只是用于在一个 HTML 表里面设置标题。)
+\\pset title\fItitle\fR. (这条命令的名称源于 "caption",因为以前只是用于在一个 HTML 表里面设置标题。)
 .TP
-\fB\\connect (or \\c) [ \fIdbname\fB [ \fIusername\fB ] ]\fR
+\fB\\connect (or\\c) [\fIdbname\fB [\fIusername\fB ] ]\fR
  与一个新的数据库建立一个联接,使用/不用一个用户名。 前面的联接将关闭。如果 dbname 是 -,那么就假设是当前数据库名称。
 
  如果省略 username,则假设是当前用户名。
 
- 作为一条特殊规则,不带任何参数运行 \fB\\connect\fR  将以缺省用户身份与缺省数据库连接(正如你不带任何参数运行 psql 一样。)
+ 作为一条特殊规则,不带任何参数运行\fB\\connect\fR  将以缺省用户身份与缺省数据库连接(正如你不带任何参数运行 psql 一样。)
 
  如果联接失败(用户名错,访问拒绝等),那么将保留前面的联接--当且仅当在 psql 处于交互模式下如此。 如果运行的是非交互的脚本,处理会马上停止,并返回一个错误。 选择这样的区别是一方面为用户使用方便考虑,另一方面为保证脚本不会碰巧操作了错误的数据库的安全机制考虑的。
 .TP
-\fB\\copy \fItable\fB\fR
+\fB\\copy\fItable\fB\fR
  执行前端(客户端)拷贝。这是一个运行 SQL  COPY 命令的操作, 不同的是 SQL COPY 是服务器在读写指明的文件,而 psql 读写文件并作为本地的文件系统和服务器之间的路由取出或写入数据。 这意味着文件访问性和权限都是本地用户的,而不是服务器的,因此不需要 SQL 超级用户权限。
 
- 这条命令的语法是模拟 SQL COPY 命令的。(参考它的描述获取细节。) 要注意的是由此而来,有一些特殊的分析规则应用于 \fB\\copy\fR 命令。 尤其是变量替换规则和反斜杠代换规则不起作用。
+ 这条命令的语法是模拟 SQL COPY 命令的。(参考它的描述获取细节。) 要注意的是由此而来,有一些特殊的分析规则应用于\fB\\copy\fR 命令。 尤其是变量替换规则和反斜杠代换规则不起作用。
 .sp
 .RS
 .B "Tip:"
@@ -264,38 +266,38 @@ name.
 .sp
 .RS
 .B "Note:"
-注意:  注意在客户端和服务器拷贝时对 stdin 和 stdout  的解释的区别:在前端拷贝时,这些总是指 psql的输入和输出流。在服务器拷贝时 stdin 来自 COPY 本身的标准输入(比如,一个带有 -f 选项的脚本), 而 stdout 指的是查询输出流(参阅下面的 \fB\\o\fR 元命令)。
+注意:  注意在客户端和服务器拷贝时对 stdin 和 stdout  的解释的区别:在前端拷贝时,这些总是指 psql的输入和输出流。在服务器拷贝时 stdin 来自 COPY 本身的标准输入(比如,一个带有 -f 选项的脚本), 而 stdout 指的是查询输出流(参阅下面的\fB\\o\fR 元命令)。
 .RE
 .sp
 .TP
 \fB\\copyright\fR
  显示 PostgreSQL 的版权和版本信息。
 .TP
-\fB\\d [ \fIpattern\fB ]\fR
+\fB\\d [\fIpattern\fB ]\fR
  对于每个匹配pattern的关系(表,视图,索引或者序列), 显示所有列,它们的类型,和任何特殊属性,象NOT NULL或缺省等--只要存在。 如果实际上这个关系是一个表,任何已定义的索引,主键,唯一约束相关的索引,规则,约束,和触发器也同样显示出来, 如果关系是一个视图,还显示视图的定义。 ("匹配模式"在下面定义。)
 
-从 \\d+ 来的命令也是一样的,只不过还显示与表的列关联的注解。
+从\\d+ 来的命令也是一样的,只不过还显示与表的列关联的注解。
 .sp
 .RS
 .B "Note:"
-注意:  如果如果不带任何pattern调用 \fB\\d\fR , 等效于 \fB\\dtvs\fR,将显示一个所有表,视图和序列的列表。 这完全是出于方便的考虑。
+注意:  如果如果不带任何pattern调用\fB\\d\fR , 等效于\fB\\dtvs\fR,将显示一个所有表,视图和序列的列表。 这完全是出于方便的考虑。
 .RE
 .sp
 .TP
-\fB\\da [ \fIpattern\fB ]\fR
+\fB\\da [\fIpattern\fB ]\fR
  列出所有可用聚集函数,以及它们操作的数据类型。如果声明了 pattern,那么只显示匹配(正则表达式)的聚集函数。
 .TP
-\fB\\dc [ \fIpattern\fB ]\fR
+\fB\\dc [\fIpattern\fB ]\fR
  列出所有字符集之间的可用转换。如果声明了 pattern, 则只列出那些匹配模式的转换。
 .TP
 \fB\\dC\fR
  列出所有类型转换。
 .TP
-\fB\\dd [ \fIpattern\fB ]\fR
+\fB\\dd [\fIpattern\fB ]\fR
  显示所有匹配 pattern  的描述,如果没有给出参数,显示所有可视对象。 但是不管怎样,只有那些有描述内容的对象才显示出来。 ("对象"包括聚集,函数,操作符,类型, 关系(表,视图,索引,序列,大对象),规则和触发器。)例如:
 .sp
 .nf
-=> \fB\\dd version\fR
+=>\fB\\dd version\fR
                      Object descriptions
    Schema   |  Name   |  Object  |        Description
 ------------+---------+----------+---------------------------
@@ -304,13 +306,13 @@ name.
 .sp
 .fi
 
- 可以用 \fBCOMMENT  SQL\fR 命令生成对对象的描述。
+ 可以用\fBCOMMENT  SQL\fR 命令生成对对象的描述。
 .TP
-\fB\\dD [ \fIpattern\fB ]\fR
+\fB\\dD [\fIpattern\fB ]\fR
  列出所有可用域。如果声明了 pattern,那么只显示匹配的域。
 .TP
-\fB\\df [ \fIpattern\fB ]\fR
- 列出所有可用函数,以及它们的参数和返回的数据类型。如果声明了 pattern,那么只显示匹配(正则表达式)的函数。如果使用了 \\df+ 的形式,每个函数的附加信息,包括语言和描述也会显示出来。
+\fB\\df [\fIpattern\fB ]\fR
+ 列出所有可用函数,以及它们的参数和返回的数据类型。如果声明了 pattern,那么只显示匹配(正则表达式)的函数。如果使用了\\df+ 的形式,每个函数的附加信息,包括语言和描述也会显示出来。
 .sp
 .RS
 .B "Note:"
@@ -318,47 +320,47 @@ name.
 .RE
 .sp
 .TP
-\fB\\distvS [ \fIpattern\fB ]\fR
+\fB\\distvS [\fIpattern\fB ]\fR
  这不是一个实际上的命令名称:字母 i,s,t,v,S 分别代表索引(index), 序列(sequence),表(table),视图(view)和系统表(system table)。 你可以以任意顺序声明任意或者所有这些字母获得这些对象的一个列表。 字幕 S 把列表限制于系统对象;如果没有 S,则只显示非系统对象。 如果在命令名上附加了 +,那么还会列出和每个对象相关联的描述,如果有的话。
 
  如果声明了 pattern,那么只列出匹配模式的对象。
 .TP
 \fB\\dl\fR
-这是 \fB\\lo_list\fR 的别名,显示一个大对象的列表。
+这是\fB\\lo_list\fR 的别名,显示一个大对象的列表。
 .TP
-\fB\\dn [ \fIpattern\fB ]\fR
+\fB\\dn [\fIpattern\fB ]\fR
  列出所有可用模式(名字空间)。如果声明了 pattern  (一个正则表达式),那么只列出匹配模式的模式名。
 .TP
-\fB\\do [ \fIpattern\fB ]\fR
+\fB\\do [\fIpattern\fB ]\fR
  列出所有可用操作符,以及它们的操作数和返回的数据类型。 如果声明了 pattern,那么只显示匹配模式的操作符。
 .TP
-\fB\\dp [ \fIpattern\fB ]\fR
+\fB\\dp [\fIpattern\fB ]\fR
  生成一列可用的表和它们相关的权限。 如果声明了 pattern, 那么只列出名字可以匹配模式的表。
 
- 命令 \fBgrant\fR(7) 和 \fBrevoke\fR(7) 用于设置访问权限。参阅 \fBgrant\fR(7) 获取更多信息。
+ 命令\fBgrant\fR(7) 和\fBrevoke\fR(7) 用于设置访问权限。参阅\fBgrant\fR(7) 获取更多信息。
 .TP
-\fB\\dT [ \fIpattern\fB ]\fR
- 列出所有数据类型或只显示那些匹配 pattern的。这条命令的 \\dT+ 形式显示更多信息。
+\fB\\dT [\fIpattern\fB ]\fR
+ 列出所有数据类型或只显示那些匹配 pattern的。这条命令的\\dT+ 形式显示更多信息。
 .TP
-\fB\\du [ \fIpattern\fB ]\fR
+\fB\\du [\fIpattern\fB ]\fR
  列出所有已配置用户或者只列出那些匹配 pattern 的用户。
 .TP
-\fB\\edit (or \\e) [ \fIfilename\fB ]\fR
+\fB\\edit (or\\e) [\fIfilename\fB ]\fR
  如果声明了 filename, 则编辑此文件并且在编辑器退出后将其内容拷贝回查询缓冲区。 如果没有给出参数,则把当前查询缓冲区内容拷贝到一个临时文件然后以相同方式编辑。
 
- 然后根据一般的psql规则重新分析查询缓冲区, 这时整个缓冲区当作一个单行。(因此你无法用这个方法制作“脚本”,用 \fB\\i\fR 做脚本。) 这还意味着如果该查询以分号结尾(或者包含分号),它就会马上被执行。否则它只是在查询缓冲区里等待。
+ 然后根据一般的psql规则重新分析查询缓冲区, 这时整个缓冲区当作一个单行。(因此你无法用这个方法制作“脚本”,用\fB\\i\fR 做脚本。) 这还意味着如果该查询以分号结尾(或者包含分号),它就会马上被执行。否则它只是在查询缓冲区里等待。
 .sp
 .RS
 .B "Tip:"
-提示:  psql 搜索环境变量 PSQL_EDITOR,EDITOR  和 VISUAL(以此顺序)查找要用到哪个编辑器。如果上面的都没有设置,使用 \fI/bin/vi\fR。
+提示:  psql 搜索环境变量 PSQL_EDITOR,EDITOR  和 VISUAL(以此顺序)查找要用到哪个编辑器。如果上面的都没有设置,使用\fI/bin/vi\fR。
 .RE
 .sp
 .TP
-\fB\\echo \fItext\fB [ ... ]\fR
+\fB\\echo\fItext\fB [ ... ]\fR
  向标准输出打印参数,用一个空格分隔并且最后跟着一个新行。 这个特性在显示脚本的输出时会有用。例如:
 .sp
 .nf
-=> \fB\\echo `date`\fR
+=>\fB\\echo `date`\fR
 Tue Oct 26 21:40:57 CEST 1999
 .sp
 .fi
@@ -366,32 +368,32 @@ Tue Oct 26 21:40:57 CEST 1999
 .sp
 .RS
 .B "Tip:"
-提示:  如果你使用 \fB\\o\fR 命令重定向你的查询的输出,你可能会用 \fB\\qecho\fR 取代这条命令。
+提示:  如果你使用\fB\\o\fR 命令重定向你的查询的输出,你可能会用\fB\\qecho\fR 取代这条命令。
 .RE
 .sp
 .TP
-\fB\\encoding [ \fIencoding\fB ]\fR
+\fB\\encoding [\fIencoding\fB ]\fR
  设置客户端字符编码方式。不带参数时,这条命令显示当前的编码方式。
 .TP
-\fB\\f [ \fIstring\fB ]\fR
- 为不对齐的查询输出设置域分隔符。缺省时是竖条(|)。 参阅 \fB\\pset\fR 获取设置输出选项的通用方法。
+\fB\\f [\fIstring\fB ]\fR
+ 为不对齐的查询输出设置域分隔符。缺省时是竖条(|)。 参阅\fB\\pset\fR 获取设置输出选项的通用方法。
 .TP
-\fB\\g [ { \fIfilename\fB | |\fIcommand\fB } ]\fR
- 把当前的查询输入缓冲区的内容发送给服务器并且把输出输出到可选的 filename  或者把输出定向到一个独立的 Unix shell 执行 command。 单独一个 \\g 实际上等效于一个分号。一个带有参数的 \\g 是"一次性"的 \\o 命令的代用品。
+\fB\\g [ {\fIfilename\fB | |\fIcommand\fB } ]\fR
+ 把当前的查询输入缓冲区的内容发送给服务器并且把输出输出到可选的 filename  或者把输出定向到一个独立的 Unix shell 执行 command。 单独一个\\g 实际上等效于一个分号。一个带有参数的\\g 是"一次性"的\\o 命令的代用品。
 .TP
-\fB\\help (or \\h) [ \fIcommand\fB ]\fR
+\fB\\help (or\\h) [\fIcommand\fB ]\fR
  给出指定 SQL 命令的语法帮助。如果没有给出 command ,那么 psql 将列出可获得语法帮助的所有命令。如果 command  是一个星号("*"),则显示所有 SQL 命令的语法帮助。
 .sp
 .RS
 .B "Note:"
-注意:  为简化敲击,包含多个单字的命令不需要引用。因此键入 \fI\\help alter table\fP 是正确的。
+注意:  为简化敲击,包含多个单字的命令不需要引用。因此键入\fI\\help alter table\fP 是正确的。
 .RE
 .sp
 .TP
 \fB\\H\fR
- 打开 HTML 查询输出格式。如果 HTML  格式已经打开,则切换回缺省的对齐的文本格式。 这个命令是为了兼容和方便,参阅 \fB\\pset\fR 获取设置其他输出选项的内容。
+ 打开 HTML 查询输出格式。如果 HTML  格式已经打开,则切换回缺省的对齐的文本格式。 这个命令是为了兼容和方便,参阅\fB\\pset\fR 获取设置其他输出选项的内容。
 .TP
-\fB\\i \fIfilename\fB\fR
+\fB\\i\fIfilename\fB\fR
  从文件filename中读取并把其内容当作从键盘输入的那样执行查询。
 .sp
 .RS
@@ -400,40 +402,40 @@ Tue Oct 26 21:40:57 CEST 1999
 .RE
 .sp
 .TP
-\fB\\l (or \\list)\fR
+\fB\\l (or\\list)\fR
  列出服务器上所有数据库的名字和它们的所有者以及字符集编码。在命令名称后面加一个 "+" 还可以看到对数据库的描述。
 .TP
-\fB\\lo_export \fIloid\fB \fIfilename\fB\fR
+\fB\\lo_export\fIloid\fB\fIfilename\fB\fR
  从数据库里读取 OID 为 loid  的大对象并把她写到 filename里。 注意这个功能与服务器函数 lo_export 有些微小的区别, lo_export 运行时带着运行数据库服务器的用户权限, 而且是在服务器的文件系统上。
 .sp
 .RS
 .B "Tip:"
-提示:  使用 \fB\\lo_list\fR 查看大对象的 OID。
+提示:  使用\fB\\lo_list\fR 查看大对象的 OID。
 OID.
 .RE
 .sp
 .TP
-\fB\\lo_import \fIfilename\fB [ \fIcomment\fB ]\fR
+\fB\\lo_import\fIfilename\fB [\fIcomment\fB ]\fR
  把文件存储为一个 PostgreSQL 大对象。可以带着一个该对象的注解选项。例如:
 .sp
 .nf
-foo=> \fB\\lo_import '/home/peter/pictures/photo.xcf' 'a picture of me'\fR
+foo=>\fB\\lo_import '/home/peter/pictures/photo.xcf' 'a picture of me'\fR
 lo_import 152801
 .sp
 .fi
- 响应表明此大对象得到一个对象标识 152801,如果你还想访问该对象,就应该把这个对象标识记住。 因此,我们建议总是给每个对象关联一个人类可读的注解。那样就可以用 \fB\\lo_list\fR 命令看到这些注解。
+ 响应表明此大对象得到一个对象标识 152801,如果你还想访问该对象,就应该把这个对象标识记住。 因此,我们建议总是给每个对象关联一个人类可读的注解。那样就可以用\fB\\lo_list\fR 命令看到这些注解。
 
  注意这条命令与服务器端的 lo_import 有一些区别,因为这条命令是本地用户在本地文件系统上操作, 而不是以服务器用户在服务器文件系统上操作。
 .TP
 \fB\\lo_list\fR
  显示一个目前存储在该数据库里的所有 PostgreSQL 大对象和它们的所有者的列表。
 .TP
-\fB\\lo_unlink \fIloid\fB\fR
- 从数据库里删除OID为 \fIloid\fR 的大对象。
+\fB\\lo_unlink\fIloid\fB\fR
+ 从数据库里删除OID为\fIloid\fR 的大对象。
 .sp
 .RS
 .B "Tip:"
-提示:  使用 \fB\\lo_list\fR  查找大对象的 OID。
+提示:  使用\fB\\lo_list\fR  查找大对象的 OID。
 OID.
 .RE
 .sp
@@ -441,18 +443,18 @@ OID.
 \fB\\o [ {\fIfilename\fB | |\fIcommand\fB} ]\fR
  把后面的查询结果保存到文件 filename  里或者把后面的查询结果定向到一个独立的 Unix shell 执行 command。 如果没有声明参数,查询输出重置为标准输出。
 
-"查询结果"包括所有表,命令响应和从数据库服务器来的提示, 同样还有各种各样查询数据库的反斜杠命令的输出(如 \fB\\d\fR),但是没有错误信息。
+"查询结果"包括所有表,命令响应和从数据库服务器来的提示, 同样还有各种各样查询数据库的反斜杠命令的输出(如\fB\\d\fR),但是没有错误信息。
 .sp
 .RS
 .B "Tip:"
-提示:  要用文本分散查询结果之间的输出,用 \fB\\qecho\fR。
+提示:  要用文本分散查询结果之间的输出,用\fB\\qecho\fR。
 .RE
 .sp
 .TP
 \fB\\p\fR
  打印当前查询缓冲区到标准输出。
 .TP
-\fB\\pset \fIparameter\fB [ \fIvalue\fB ]\fR
+\fB\\pset\fIparameter\fB [\fIvalue\fB ]\fR
  这条命令设置影响查询结果表输出的选项。parameter  描述要设置的选项是哪一个。value 的语意也取决于它。
 
  可调节的打印选项有:
@@ -472,10 +474,10 @@ OID.
  所有四种输出模式都支持扩展格式。
 .TP
 \fBnull\fR
- 第二个参数是一个字串,用以代表字段的值为 null 时的打印输出。 缺省是什么都不打,这样很容易和类似一个空字串混淆。 因此,我们可能选择 \\pset null '(null)'。
+ 第二个参数是一个字串,用以代表字段的值为 null 时的打印输出。 缺省是什么都不打,这样很容易和类似一个空字串混淆。 因此,我们可能选择\\pset null '(null)'。
 .TP
 \fBfieldsep\fR
- 声明在非对齐模式时的域分隔符。 这样我们就可以创建其他程序希望的tab或逗号分隔的输出。要设置 tab 域分隔符, 键入 \\pset fieldsep '\t'。缺省域分隔符是 '|' (一个竖条符号)。
+ 声明在非对齐模式时的域分隔符。 这样我们就可以创建其他程序希望的tab或逗号分隔的输出。要设置 tab 域分隔符, 键入\\pset fieldsep '\t'。缺省域分隔符是 '|' (一个竖条符号)。
 .TP
 \fBfooter\fR
  切换默认足标的显示 (x rows)。
@@ -486,16 +488,16 @@ OID.
 \fBtuples_only (或 t)\fR
  在完全显示和只显示记录之间切换。 完全显示将显示象列头,标题和各种脚注等信息。 只显示记录模式将只显示实际的表数据。
 .TP
-\fBtitle [ \fItext\fB ]\fR
+\fBtitle [\fItext\fB ]\fR
  为任何随后打印的表设置标题。 这个参数可以用于给你的输出一个描述性标记。 如果不带参数,重置标题。
 .TP
-\fBtableattr (or T) [ \fItext\fB ]\fR
- 允许你声明放在 HTML table 标记里的任何属性。例如,可以是 cellpadding 或 bgcolor。注意你可能不需要在这里声明 border ,因为已经在 \\pset border 里用过了。
+\fBtableattr (or T) [\fItext\fB ]\fR
+ 允许你声明放在 HTML table 标记里的任何属性。例如,可以是 cellpadding 或 bgcolor。注意你可能不需要在这里声明 border ,因为已经在\\pset border 里用过了。
 .TP
 \fBpager\fR
  控制查询和psql帮助输出的分页器。如果设置了环境变量 PAGER, 输出被定向到指定程序,否则使用系统缺省(比如 more)。
 
- 如果关闭了分页器,则不使用它,如果打开了,程序只在需要的时候使用分页器,也就是说, 输出是到终端,而且那个表很可能无法与屏幕匹配。 (psql 在决定何时分页时不是很完美。) \\pset pager 开关分页器。我们也可以把分页器设置为 always,导致我们在任何情况下都使用分页器。
+ 如果关闭了分页器,则不使用它,如果打开了,程序只在需要的时候使用分页器,也就是说, 输出是到终端,而且那个表很可能无法与屏幕匹配。 (psql 在决定何时分页时不是很完美。)\\pset pager 开关分页器。我们也可以把分页器设置为 always,导致我们在任何情况下都使用分页器。
 .RE
 .PP
 
@@ -503,28 +505,28 @@ OID.
 .sp
 .RS
 .B "Tip:"
-提示:  有很多用于 \fB\\pset\fR 的快速命令。参阅
-\fB\\a\fR, \fB\\C\fR, \fB\\H\fR,
-\fB\\t\fR, \fB\\T\fR, 和 \fB\\x\fR。
+提示:  有很多用于\fB\\pset\fR 的快速命令。参阅
+\fB\\a\fR,\fB\\C\fR,\fB\\H\fR,
+\fB\\t\fR,\fB\\T\fR, 和\fB\\x\fR。
 .RE
 .sp
 .sp
 .RS
 .B "Note:"
-注意:  无参数运行 \fB\\pset\fR 是错误的。 以后这样调用将显示当前打印选项状态。
+注意:  无参数运行\fB\\pset\fR 是错误的。 以后这样调用将显示当前打印选项状态。
 .RE
 .sp
 .TP
 \fB\\q\fR
  退出 psql 程序。
 .TP
-\fB\\qecho \fItext\fB [ ... ]\fR
- 这条命令等效于 \fB\\echo\fR ,区别是所有输出将写入由 \fB\\o\fR 设置的输出通道。
+\fB\\qecho\fItext\fB [ ... ]\fR
+ 这条命令等效于\fB\\echo\fR ,区别是所有输出将写入由\fB\\o\fR 设置的输出通道。
 .TP
 \fB\\r\fR
  重置(清空)查询缓冲区。
 .TP
-\fB\\s [ \fIfilename\fB ]\fR
+\fB\\s [\fIfilename\fB ]\fR
  将命令行历史打印出或是存放到 filename。 如果省略 filename, 历史将输出到标准输出。这个选项只有在 psql 配置成使用 GNU 历史库后才生效。
 .sp
 .RS
@@ -533,8 +535,8 @@ OID.
 .RE
 .sp
 .TP
-\fB\\set [ \fIname\fB [ \fIvalue\fB [ ... ]]]\fR
- 设置内部变量 name  为 value 或着如果给出了多于一个值, 设置为所有这些值的联接结果。如果没有给出第二个参数,只设变量不设值。要重置一个变量,使用 \fB\\unset\fR 命令。
+\fB\\set [\fIname\fB [\fIvalue\fB [ ... ]]]\fR
+ 设置内部变量 name  为 value 或着如果给出了多于一个值, 设置为所有这些值的联接结果。如果没有给出第二个参数,只设变量不设值。要重置一个变量,使用\fB\\unset\fR 命令。
 
  有效的变量名可以包含字符,数字和下划线。 参阅下面的 "Variables 变量" 获取细节。
 
@@ -547,39 +549,39 @@ OID.
 .sp
 .TP
 \fB\\t\fR
- 切换输出的列/字段名的信息头和行记数脚注。 这条命令等效于 \\pset tuples_only,提供主要为了方便。
+ 切换输出的列/字段名的信息头和行记数脚注。 这条命令等效于\\pset tuples_only,提供主要为了方便。
 .TP
-\fB\\T \fItable_options\fB\fR
- 允许你在使用HTML输出模式时声明放在 table 标记里的属性。 这条命令等效于 \\pset tableattr table_options。
+\fB\\T\fItable_options\fB\fR
+ 允许你在使用HTML输出模式时声明放在 table 标记里的属性。 这条命令等效于\\pset tableattr table_options。
 .TP
 \fB\\timing\fR
 切换每个 SQL 语句使用的时间,单位是毫秒。
 .TP
-\fB\\w {\fIfilename\fB | \fI|command\fB}\fR
+\fB\\w {\fIfilename\fB |\fI|command\fB}\fR
  将当前查询缓冲区输出到文件 filename  或者定向到 Unix 命令 command。
 .TP
 \fB\\x\fR
- 切换扩展行格式。等效于 \\pset expanded。
+ 切换扩展行格式。等效于\\pset expanded。
 .TP
-\fB\\z [ \fIpattern\fB ]\fR
+\fB\\z [\fIpattern\fB ]\fR
  生成一个带有访问权限列表的数据库中所有表的列表。 如果给出任何pattern,则被当成一个规则表达式, 只显示匹配的表。
 
- 命令 \fBgrant\fR(7) 和 \fBrevoke\fR(7) 用于设置访问权限。 参阅 \fBgrant\fR(7) 获取更多信息。
+ 命令\fBgrant\fR(7) 和\fBrevoke\fR(7) 用于设置访问权限。 参阅\fBgrant\fR(7) 获取更多信息。
 
- 这是 \fB\\dp\fR("显示权限")的别名。
+ 这是\fB\\dp\fR("显示权限")的别名。
 .TP
-\fB\\! [ \fIcommand\fB ]\fR
+\fB\\! [\fIcommand\fB ]\fR
  返回到一个独立的 Unix shell 或者执行 Unix 命令 command。 参数不会被进一步解释,shell 将看到全部参数。
 .TP
 \fB\\?\fR
  获得关于反斜杠命令的帮助信息。
 .PP
 .PP
- 各种 \\d 命令都接受一个 pattern  参数,声明要显示的对象名字。* 表示"任何字符序列", 而 ? 表示"任何单个字符"。(这个表示法和 Unix 的 shell 文件名模式兼容。) 高级用户也可以使用正则表达式表示法,比如字符表,[0-9] 这样的东西来匹配"任意数字"。 要让任何这些模式匹配字符可以安字面方式解析,那就应该用双引号包围它们。
+ 各种\\d 命令都接受一个 pattern  参数,声明要显示的对象名字。* 表示"任何字符序列", 而 ? 表示"任何单个字符"。(这个表示法和 Unix 的 shell 文件名模式兼容。) 高级用户也可以使用正则表达式表示法,比如字符表,[0-9] 这样的东西来匹配"任意数字"。 要让任何这些模式匹配字符可以安字面方式解析,那就应该用双引号包围它们。
 .PP
- 一个包含(无引号的)句点的模式会被解析承一个模式名的模式后面跟着一个对象名的模式。 比如, \\dt foo*.bar* 显示所有以foo 开头的模式里的以 bar 开头的表名字。 如果没有出现句点,那么这个模式只匹配在当前模式搜索路径中可见的对象。
+ 一个包含(无引号的)句点的模式会被解析承一个模式名的模式后面跟着一个对象名的模式。 比如,\\dt foo*.bar* 显示所有以foo 开头的模式里的以 bar 开头的表名字。 如果没有出现句点,那么这个模式只匹配在当前模式搜索路径中可见的对象。
 .PP
- 如果完全省略 pattern 参数, 那么 \\d 命令显示所有在当前模式搜索路径中可见的对象。 要查阅在数据库中的所有对象,使用模式 *.*。
+ 如果完全省略 pattern 参数, 那么\\d 命令显示所有在当前模式搜索路径中可见的对象。 要查阅在数据库中的所有对象,使用模式 *.*。
 .SS "ADVANCED FEATURES 高级特性"
 .SS "VARIABLES 变量"
 .PP
@@ -587,24 +589,24 @@ OID.
 \fB\\set\fR:
 .sp
 .nf
-testdb=> \fB\\set foo bar\fR
+testdb=>\fB\\set foo bar\fR
 .sp
 .fi
  把变量"foo" 设置为值 "bar"。 要检索变量的内容,在变量名前面放上冒号然后把它用在任意斜杠命令里:
 .sp
 .nf
-testdb=> \fB\\echo :foo\fR
+testdb=>\fB\\echo :foo\fR
 bar
 .sp
 .fi
 .sp
 .RS
 .B "Note:"
-注意:  \fB\\set\fR 的参数服从和其他命令一样的替换规则。 因此你可以构造有趣的引用,象 \\set :foo 'something' 这样, 获得分别象Perl或 PHP那样有名的"软连接(soft links)"或"变量 变量"。 不幸的是(或者 万幸的?),用这些构造不能做任何有用的事情。另一方面, \\set bar :foo 是一个非常有效的拷贝变量的方法。
+注意: \fB\\set\fR 的参数服从和其他命令一样的替换规则。 因此你可以构造有趣的引用,象\\set :foo 'something' 这样, 获得分别象Perl或 PHP那样有名的"软连接(soft links)"或"变量 变量"。 不幸的是(或者 万幸的?),用这些构造不能做任何有用的事情。另一方面,\\set bar :foo 是一个非常有效的拷贝变量的方法。
 .RE
 .sp
 .PP
- 如果你不带第二个参数调用 \fB\\set\fR, 那么只是设置这个变量而没有值。 要重置(或删除)一个变量,使用命令 \fB\\unset\fR。
+ 如果你不带第二个参数调用\fB\\set\fR, 那么只是设置这个变量而没有值。 要重置(或删除)一个变量,使用命令\fB\\unset\fR。
 .PP
 \fBpsql\fR 的内部变量可以包括任意顺序, 任意数量的字母,数字和下划线。 有一些常用变量被 psql 另眼相待。它们是一些选项设置, 这些选项在运行时可以通过改变变量的值或者改变一些应用的表现状态而改变。 尽管你可以把这些变量用于其他用途,但是我们不鼓励这么做,因为程序的特性可能会很快变得非常奇怪。 通常,所有特殊对待的变量都是由大写字母组成(可能还有数字和下划线)。 为了保证和未来的最大限度的兼容性,请避免使用这样的变量。 下面是一个所有特殊对待的变量列表。
 .TP
@@ -619,7 +621,7 @@ bar
 .sp
 .RS
 .B "Note:"
-注意:  自动提交打开方式是 PostgreSQL 传统的行为, 但是关闭自动提交更接近 SQL 规范。如果你喜欢关闭自动提交,你应该在你的 \fI.psqlrc\fR 文件里设置它。
+注意:  自动提交打开方式是 PostgreSQL 传统的行为, 但是关闭自动提交更接近 SQL 规范。如果你喜欢关闭自动提交,你应该在你的\fI.psqlrc\fR 文件里设置它。
 .RE
 .sp
 .TP
@@ -640,7 +642,7 @@ bar
 .sp
 .RS
 .B "Note:"
-注意:  这个特性是无耻地从 \fBbash\fR 里剽窃来的。
+注意:  这个特性是无耻地从\fBbash\fR 里剽窃来的。
 .RE
 .sp
 .TP
@@ -649,7 +651,7 @@ bar
 .sp
 .RS
 .B "Note:"
-注意:  这个特性是无耻地从 \fBbash\fR 里剽窃来的。
+注意:  这个特性是无耻地从\fBbash\fR 里剽窃来的。
 .RE
 .sp
 .TP
@@ -657,11 +659,11 @@ bar
  当前你正联接的数据库服务器主机。 这是在每次你与数据库联接时(包括程序启动)设置的,但是可以删除。
 .TP
 \fBIGNOREEOF\fR
- 如果删除此变量,向一个交互的 psql会话发送一个 EOF (通常是 \fBControl\fR+\fBD\fR)将终止应用。如果设置为一个数字值,那么在应用终止前该数值的 EOF 字符将被忽略。 如果设置了此变量但是没有数字值,缺省是 10。
+ 如果删除此变量,向一个交互的 psql会话发送一个 EOF (通常是\fBControl\fR+\fBD\fR)将终止应用。如果设置为一个数字值,那么在应用终止前该数值的 EOF 字符将被忽略。 如果设置了此变量但是没有数字值,缺省是 10。
 .sp
 .RS
 .B "Note:"
-注意:  这个特性是无耻地从 \fBbash\fR 里剽窃来的。
+注意:  这个特性是无耻地从\fBbash\fR 里剽窃来的。
 .RE
 .sp
 .TP
@@ -688,7 +690,7 @@ bar
  这个变量等效于设置命令行选项 -S。你可以在运行时删除或设置它。
 .TP
 \fBSINGLESTEP\fR
- 这个变量等效于命令行选项 \fB-s\fR。
+ 这个变量等效于命令行选项\fB-s\fR。
 .TP
 \fBUSER\fR
  当前你正用于联接的数据库用户。 这是在每次你与数据库联接时(包括程序启动)设置的,但是可以删除/重置。
@@ -700,8 +702,8 @@ bar
  一个附加的 psql 变量的有用特性是你可以把它们替换("代换")成正规的 SQL 语句。这样做的语法同样还是变量名前面加一个冒号(:)。
 .sp
 .nf
-testdb=> \fB\\set foo 'my_table'\fR
-testdb=> \fBSELECT * FROM :foo;\fR
+testdb=>\fB\\set foo 'my_table'\fR
+testdb=>\fBSELECT * FROM :foo;\fR
 .sp
 .fi
  将会查询表my_table。变量的值是逐字拷贝的, 所以它甚至可以包含不对称的引号或反斜杠命令。你必须保证你输入的东西是有意义的。 变量替换将不会在引号引起来的 SQL 语句里面发生。
@@ -709,14 +711,14 @@ testdb=> \fBSELECT * FROM :foo;\fR
  利用这个功能的一个时髦的应用是通过使用一个随后的语句中最后插入的 OID 建立一个外键仿真场景。 另一个可能用到这个机制的地方是把一个文件的内容拷贝到一个字段里面去。 首先把文件装载到一个变量然后象上面那样处理。
 .sp
 .nf
-testdb=> \fB\\set content '\\'' `cat my_file.txt` '\\''\fR
-testdb=> \fBINSERT INTO my_table VALUES (:content);\fR
+testdb=>\fB\\set content '\\'' `cat my_file.txt` '\\''\fR
+testdb=>\fBINSERT INTO my_table VALUES (:content);\fR
 .sp
 .fi
  这样处理的一个可能问题是 my_file.txt  可能包含单引号。这些需要被逃逸以免在处理第三行时不会导致语法错误。 可以使用程序 sed 来做这个处理:
 .sp
 .nf
-testdb=> \fB\\set content '\\'' `sed -e "s/'/\\\\\\\\\\\\'/g" < my_file.txt` '\\''\fR
+testdb=>\fB\\set content '\\'' `sed -e "s/'/\\\\\\\\\\\\'/g" < my_file.txt` '\\''\fR
 .sp
 .fi
  观察正确数量的反斜杠(6)!你可以这样解释它:在 psql 分析完这行后,它把 sed -e "s/'/\\\\\\'/g" < my_file.txt 传递给shell。 shell 将对双引号里的东西做其处理然后用参数 -e 和
@@ -739,7 +741,7 @@ testdb=> \fB\\set content '\\'' `sed -e "s/'/\\\\\\\\\\\\'/g" < my_file.txt` '\\
  数据库服务器正在侦听的端口号。
 .TP
 \fB%n\fR
- 数据库会话的用户名。 (这个值的扩展可能在一个数据库会话过程中因为 \fBSET SESSION AUTHORIZATION\fR 命令而改变。)
+ 数据库会话的用户名。 (这个值的扩展可能在一个数据库会话过程中因为\fBSET SESSION AUTHORIZATION\fR 命令而改变。)
 .TP
 \fB%/\fR
 当前数据库名称。
@@ -748,10 +750,10 @@ testdb=> \fB\\set content '\\'' `sed -e "s/'/\\\\\\\\\\\\'/g" < my_file.txt` '\\
 类似 %/, 但如果数据库是你的缺省数据库输出是"~"  (波浪线(tilde))。
 .TP
 \fB%#\fR
- 如果会话用户是数据库超级用户,使用 "#",否则用">"。 (这个值的扩展可能在一个数据库会话过程中因为 \fBSET SESSION AUTHORIZATION\fR 命令而改变。)
+ 如果会话用户是数据库超级用户,使用 "#",否则用">"。 (这个值的扩展可能在一个数据库会话过程中因为\fBSET SESSION AUTHORIZATION\fR 命令而改变。)
 .TP
 \fB%R\fR
- 对于 prompt 1 通常是 =,但是如果是单行模式则是 ^,而如果会话与数据库断开(如果 \connect 失败可能发生)是 !。对于 prompt 2 该序列被 -,*,一个单引号或者一个双引号代替, 这取决于 psql是否等待更多的输入(因为查询没有终止,或着正在一个 /* ... */注释里面,或者因为你在引号里面)。对于 prompt 3 该序列不解释成任何东西。
+ 对于 prompt 1 通常是 =,但是如果是单行模式则是 ^,而如果会话与数据库断开(如果\connect 失败可能发生)是 !。对于 prompt 2 该序列被 -,*,一个单引号或者一个双引号代替, 这取决于 psql是否等待更多的输入(因为查询没有终止,或着正在一个 /* ... */注释里面,或者因为你在引号里面)。对于 prompt 3 该序列不解释成任何东西。
 .TP
 \fB%x\fR
  事务状态:如果不在事务块里,是一个空字串,如果在事务块里,是 *, 如果在一个失败的事务块里是 !,或者无法判断事务状态时为 ?  (比如,因为没有连接)。
@@ -774,7 +776,7 @@ command的输出, 类似于通常的反引号(back-tick)替换。
 .sp
 .SS "COMMAND-LINE EDITING 命令行编辑"
 .PP
-\fBpsql\fR 为了编辑和检索命令行的方便支持 readline 和历史库。 命令历史存放在你的家目录的一个叫 .psql_history 的文件里, 并且当 psql 启动的时候会装载进来。 还支持 Tab 补齐,尽管该补齐逻辑并不是一个 SQL 分析器必备的。 如果因某些原因你不喜欢 tab 补齐,你可以把下面几行放在你的家目录的一个叫 \fI.inputrc\fR 的文件里关闭这个特性:
+\fBpsql\fR 为了编辑和检索命令行的方便支持 readline 和历史库。 命令历史存放在你的家目录的一个叫 .psql_history 的文件里, 并且当 psql 启动的时候会装载进来。 还支持 Tab 补齐,尽管该补齐逻辑并不是一个 SQL 分析器必备的。 如果因某些原因你不喜欢 tab 补齐,你可以把下面几行放在你的家目录的一个叫\fI.inputrc\fR 的文件里关闭这个特性:
 .sp
 .nf
 $if psql
@@ -782,14 +784,14 @@ set disable-completion on
 $endif
 .sp
 .fi
-(这不是 psql 的特性, 是 \fBReadline\fR 的。参考它的文档获取更多细节。)
+(这不是 psql 的特性, 是\fBReadline\fR 的。参考它的文档获取更多细节。)
 .SH "ENVIRONMENT 环境"
 .TP
 \fBHOME\fR
  初始化文件(.psqlrc)和命令历史文件(\fI.psql_history\fR)的目录。
 .TP
 \fBPAGER\fR
- 如果查询结果在一页里放不下,那么它们被定向到这个命令。 典型的值是 more 或者 less。 缺省的是平台相关的。我们可以用 \fB\\pset\fR 命令关闭分页器。
+ 如果查询结果在一页里放不下,那么它们被定向到这个命令。 典型的值是 more 或者 less。 缺省的是平台相关的。我们可以用\fB\\pset\fR 命令关闭分页器。
 .TP
 \fBPGDATABASE\fR
  缺省连接的数据库
@@ -812,21 +814,21 @@ $endif
 \fB\\!\fR 命令执行的命令。
 .TP
 \fBTMPDIR\fR
- 存储临时文件的目录。缺省是 \fI/tmp\fR。
+ 存储临时文件的目录。缺省是\fI/tmp\fR。
 .SH "FILES"
 .TP 0.2i
 \(bu
- 在启动之前,psql 视图读取并 执行来自文件 \fI$HOME/.psqlrc\fR 的命令。 它将用于设置客户端或者服务器的风格(使用 \fB\\set\fR 和 \fBSET\fR 命令)。
+ 在启动之前,psql 视图读取并 执行来自文件\fI$HOME/.psqlrc\fR 的命令。 它将用于设置客户端或者服务器的风格(使用\fB\\set\fR 和\fBSET\fR 命令)。
 .TP 0.2i
 \(bu
- 命令行历史存储在 \fI$HOME/.psql_history\fR。
+ 命令行历史存储在\fI$HOME/.psql_history\fR。
 .SH "NOTES 注意"
 .TP 0.2i
 \(bu
  一些 psql的早期版本允许一个单字母的反斜杠命令(元命令)的第一个参数直接跟在命令后面, 而不用空白间隔。出于兼容性原因,这个特性仍然在某些程度上被支持,但是我不准备在这里详细解释,因为我不鼓励这样使用。 不过如果你收到莫名其妙的信息,想想这个用法。例如
 .sp
 .nf
-testdb=> \fB\\foo\fR
+testdb=>\fB\\foo\fR
 Field separator is "oo".
 .sp
 .fi
@@ -839,17 +841,17 @@ Field separator is "oo".
  第一个例子演示了如何把一个查询分成多个行进行输入。注意提示符的变化:
 .sp
 .nf
-testdb=> \fBCREATE TABLE my_table (\fR
-testdb(> \fB first integer not null default 0,\fR
-testdb(> \fB second text\fR
-testdb-> \fB);\fR
+testdb=>\fBCREATE TABLE my_table (\fR
+testdb(>\fB first integer not null default 0,\fR
+testdb(>\fB second text\fR
+testdb->\fB);\fR
 CREATE TABLE
 .sp
 .fi
  现在再看看表定义:
 .sp
 .nf
-testdb=> \fB\\d my_table\fR
+testdb=>\fB\\d my_table\fR
              Table "my_table"
  Attribute |  Type   |      Modifier
 -----------+---------+--------------------
@@ -860,7 +862,7 @@ testdb=> \fB\\d my_table\fR
  把提示符变成更有趣的东西:
 .sp
 .nf
-testdb=> \fB\\set PROMPT1 '%n@%m %~%R%# '\fR
+testdb=>\fB\\set PROMPT1 '%n@%m %~%R%# '\fR
 peter at localhost testdb=>
 .sp
 .fi
@@ -877,12 +879,12 @@ peter at localhost testdb=> SELECT * FROM my_table;
 (4 rows)
 .sp
 .fi
- 你可以用 \fB\\pset\fR 命令让这个查询看起来不一样:
+ 你可以用\fB\\pset\fR 命令让这个查询看起来不一样:
 .sp
 .nf
-peter at localhost testdb=> \fB\\pset border 2\fR
+peter at localhost testdb=>\fB\\pset border 2\fR
 Border style is 2.
-peter at localhost testdb=> \fBSELECT * FROM my_table;\fR
+peter at localhost testdb=>\fBSELECT * FROM my_table;\fR
 +-------+--------+
 | first | second |
 +-------+--------+
@@ -893,9 +895,9 @@ peter at localhost testdb=> \fBSELECT * FROM my_table;\fR
 +-------+--------+
 (4 rows)
 
-peter at localhost testdb=> \fB\\pset border 0\fR
+peter at localhost testdb=>\fB\\pset border 0\fR
 Border style is 0.
-peter at localhost testdb=> \fBSELECT * FROM my_table;\fR
+peter at localhost testdb=>\fBSELECT * FROM my_table;\fR
 first second
 ----- ------
     1 one
@@ -904,15 +906,15 @@ first second
     4 four
 (4 rows)
 
-peter at localhost testdb=> \fB\\pset border 1\fR
+peter at localhost testdb=>\fB\\pset border 1\fR
 Border style is 1.
-peter at localhost testdb=> \fB\\pset format unaligned\fR
+peter at localhost testdb=>\fB\\pset format unaligned\fR
 Output format is unaligned.
-peter at localhost testdb=> \fB\\pset fieldsep ","\fR
+peter at localhost testdb=>\fB\\pset fieldsep ","\fR
 Field separator is ",".
-peter at localhost testdb=> \fB\\pset tuples_only\fR
+peter at localhost testdb=>\fB\\pset tuples_only\fR
 Showing only tuples.
-peter at localhost testdb=> \fBSELECT second, first FROM my_table;\fR
+peter at localhost testdb=>\fBSELECT second, first FROM my_table;\fR
 one,1
 two,2
 three,3
@@ -922,11 +924,11 @@ four,4
  还可以用短(缩写)命令:
 .sp
 .nf
-peter at localhost testdb=> \fB\\a \\t \\x\fR
+peter at localhost testdb=>\fB\\a\\t\\x\fR
 Output format is aligned.
 Tuples only is off.
 Expanded display is on.
-peter at localhost testdb=> \fBSELECT * FROM my_table;\fR
+peter at localhost testdb=>\fBSELECT * FROM my_table;\fR
 -[ RECORD 1 ]-
 first  | 1
 second | one
diff --git a/src/man1/rlogin.1 b/src/man1/rlogin.1
index d12c972..788d92e 100644
--- a/src/man1/rlogin.1
+++ b/src/man1/rlogin.1
@@ -84,7 +84,7 @@
 可以 直接 使用 字符, 也可以 使用 八进制值 进行 指定, 八进制 格式为:
 \ennn.
 .It Fl k
-.FL k
+.Fl k
 选项 要求 rlogin 在从 远程 接受 许可证时, 使用
 .Ar realm
 中定义的 realm, 而不是 
@@ -159,4 +159,3 @@
 .Xr telnet  1
 代替, 这样 可以 使用 更多的 环境控制.
 .Pp
-
diff --git a/src/man1/rm.1 b/src/man1/rm.1
index 8c6da86..7b3883d 100644
--- a/src/man1/rm.1
+++ b/src/man1/rm.1
@@ -45,7 +45,7 @@ rm移除每个给定的文件。默认情况下,它不能移除目录。
 .SH SVID(System V Interface Definition)细节
 System V接口定义(SVID)禁止移除正在执行的可执行二进制文件的最后一个链接。
 
-.SHGNU细节
+.SH GNU细节
 GNU的实现(在fileutils-3.16中)会因为可移除的层次深度的上限而招致损坏。
 (如果确实必要,可使用‘deltree’工具来移除非常深的目录树。)
 
diff --git a/src/man1/sort.1 b/src/man1/sort.1
index 24bc668..269559d 100644
--- a/src/man1/sort.1
+++ b/src/man1/sort.1
@@ -5,7 +5,7 @@ sort \- 对文本文件的行排序
 .B ../src/sort
 [\fIOPTION\fR]... [\fIFILE\fR]...
 .SH DESCRIPTION(描述)
-.\在这儿添加任何附加的描述信息
+在这儿添加任何附加的描述信息
 .PP
 将排序好的所有文件串写到标准输出上.
 .TP
diff --git a/src/man1/subst.1 b/src/man1/subst.1
index fc520ae..f5671d6 100644
--- a/src/man1/subst.1
+++ b/src/man1/subst.1
@@ -1,8 +1,6 @@
-.TH SUBST 1 local
-.DA 25 Feb 1990
+.TH SUBST 1 local  "25 Feb 1990"
 .SH NAME
 subst \- 替换文件中的定义
-
 .SH "总览 (SYNOPSIS)"
 .B subst
 [
@@ -12,7 +10,6 @@ editor
 .B \-f
 substitutions
 victim ...
-
 .SH "描述 (DESCRIPTION)"
 .I Subst
 能够 替换 文件 的 内容, 适用于 针对 本地情况 定制 软件. 它 根据
@@ -38,7 +35,6 @@ victim ...
 将 分析 这个原形, 寻找 替换说明 中 名字域 的 所有 实例, 名字实例 是用 
 ``@\&<'' 和 ``>\&@'' 括起来的, 把 它们 改变成 对应的值, 然后 用这个 结果 替换
 目标行.
-
 .SH "选项 (OPTIONS)"
 .TP
 .B \-e
@@ -49,7 +45,6 @@ victim ...
 或
 .I /usr/bin
 目录 下面. 用 ``\-e'' 开关 可以 指定 一个 不同位置 的 执行程序.
-
 .SH "示例 (EXAMPLE)"
 .PP
 如果 \fIsubstitutions\fP 文件内容 是
@@ -88,23 +83,18 @@ z = 5;
 \fIvictimdir\fP/substtmp.new	建立出来的新版本文件
 .br
 \fIvictimdir\fP/substtmp.old	经过改名的老版本文件
-
 .SH "另见 (SEE ALSO)"
 sed(1)
-
 .SH "诊断 (DIAGNOSTICS)"
 如果 subst 无法 创建 临时文件, 或者 临时文件 已经 存在, 程序 中止 并 报错.
-
 .SH "历史 (HISTORY)"
 Henry Spencer 写于 U of Toronto.
 .PP
 Rich $alz 在 1991 年 7 月 增加了 ``\-e'' 选项.
-
 .SH BUGS
 当 创建 准备 用 \fIsubst\fP 处理的 文件 时, 很容易 忘记 在 原形行 后面 插入
 一个 要命的 目标行; 如果 你 忘了 目标行, \fIsubst\fP 最终 会 删掉 原形行 
 下面一行, 不管 那行 是 什么.
-
 .SH "[中文版维护人]"
 .B 徐明 <xuming at users.sourceforge.net>
 .SH "[中文版最新更新]"
diff --git a/src/man1/tex.1 b/src/man1/tex.1
index 0490daf..270321e 100644
--- a/src/man1/tex.1
+++ b/src/man1/tex.1
@@ -143,13 +143,13 @@ tex, virtex, initex \- 文本格式化和排版
 这个版本的 \*(TX 可以解释下列命令行选项。
 .TP
 .B --file-line-error-style
-.rb
+.br
 打印错误消息,以
 .I file:line:error
 的形式,与大多数编译器格式化消息的方式相似。
 .TP
 .BI --fmt \ format
-.rb
+.br
 使用
 .I format
 作为要使用的格式名,而不是调用
@@ -158,11 +158,11 @@ tex, virtex, initex \- 文本格式化和排版
 一行指定的内容。
 .TP
 .B --help
-.rb
+.br
 打印帮助信息,然后退出。
 .TP
 .B --ini
-.rb
+.br
 成为
 .BR initex
 ,用于转储格式 (dump formats);如果调用的程序名是
@@ -170,7 +170,7 @@ tex, virtex, initex \- 文本格式化和排版
 ,那么隐含这个选项。
 .TP
 .BI --interaction \ mode
-.rb
+.br
 设置交互模式。mode 可以是
 .IR batchmode ,
 .IR nonstopmode ,
@@ -182,29 +182,29 @@ tex, virtex, initex \- 文本格式化和排版
 相同。
 .TP
 .B --ipc
-.rb
+.br
 将 DVI 输出发送到一个 socket,同时像通常那样输出到文件。这个选项是否可用取决于安装程序的选择。
 .TP
 .B --ipc-start
-.rb
+.br
 与
 .BR --ipc
 类似,并且同时也在另一段启动服务器。这个选项是否可用取决于安装程序的选择。
 .TP
 .BI --jobname \ name
-.rb
+.br
 使用
 .I name
 作为作业名,而不是从输入文件名获得。
 .TP
 .BI --kpathsea-debug \ bitmask
-.rb
+.br
 根据位掩码,设置路径搜索调试标志。细节请参见
 .I Kpathsea
 手册页。
 .TP
 .BI --maketex \ fmt
-.rb
+.br
 启用
 .RI mktex fmt
 ,这里
@@ -216,11 +216,11 @@ tex, virtex, initex \- 文本格式化和排版
 之一。
 .TP
 .B --mltex
-.rb
+.br
 启用 ML\*(TX 扩展。
 .TP
 .BI --no-maketex \ fmt
-.rb
+.br
 禁用
 .RI mktex fmt
 这里
@@ -232,13 +232,13 @@ tex, virtex, initex \- 文本格式化和排版
 之一。
 .TP
 .BI --output-comment \ string
-.rb
+.br
 使用
 .I string
 作为 DVI 文件的注释,而不是时间。
 .TP
 .B --parse-first-line
-.rb
+.br
 如果主输入文件的第一行以
 .I %&
 开始,就解释它,从中查找一个转储名称或者一个
@@ -246,19 +246,19 @@ tex, virtex, initex \- 文本格式化和排版
 选项。
 .TP
 .BI --progname \ name
-.rb
+.br
 伪装是程序
 .IR name
 。这对所用格式和搜索路径都有影响。
 .TP
 .B --recorder
-.rb
+.br
 启用文件名记录。这将在一个扩展名为
 .IR .fls
 的文件中记录输入和输出中打开的所有文件。
 .TP
 .B --shell-escape
-.rb
+.br
 启用
 .BI \ewrite18{ command }
 结构。
@@ -266,13 +266,13 @@ tex, virtex, initex \- 文本格式化和排版
 可以是任何 Bourne shell 命令。出于安全原因,这个结构通常被禁止。
 .TP
 .BI --translate-file \ tcxname
-.rb
+.br
 使用
 .I tcxname
 转换表。
 .TP
 .B --version
-.rb
+.br
 显示版本信息,然后退出。
 .\"=====================================================================
 .SH "ENVIRONMENT 环境"
diff --git a/src/man1/uuencode.1 b/src/man1/uuencode.1
index 61aa81d..bb9c4b6 100644
--- a/src/man1/uuencode.1
+++ b/src/man1/uuencode.1
@@ -1,37 +1,37 @@
-'.\" Copyright (c) 1980, 1990 The Regents of the University of California.
-'.\" All rights reserved.
-'.\"
-'.\" Redistribution and use in source and binary forms, with or without
-'.\" modification, are permitted provided that the following conditions
-'.\" are met:
-'.\" 1. Redistributions of source code must retain the above copyright
-'.\"    notice, this list of conditions and the following disclaimer.
-'.\" 2. Redistributions in binary form must reproduce the above copyright
-'.\"    notice, this list of conditions and the following disclaimer in the
-'.\"    documentation and/or other materials provided with the distribution.
-'.\" 3. All advertising materials mentioning features or use of this software
-'.\"    must display the following acknowledgement:
-'.\"	This product includes software developed by the University of
-'.\"	California, Berkeley and its contributors.
-'.\" 4. Neither the name of the University nor the names of its contributors
-'.\"    may be used to endorse or promote products derived from this software
-'.\"    without specific prior written permission.
-'.\"
-'.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
-'.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-'.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-'.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
-'.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-'.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
-'.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-'.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-'.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
-'.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-'.\" SUCH DAMAGE.
-'.\"
-'.\" Modified from
-'.\"     @(#)uuencode.1	6.9 (Berkeley) 4/23/91
-'.\"
+.\" Copyright (c) 1980, 1990 The Regents of the University of California.
+.\" All rights reserved.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\"    notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\"    notice, this list of conditions and the following disclaimer in the
+.\"    documentation and/or other materials provided with the distribution.
+.\" 3. All advertising materials mentioning features or use of this software
+.\"    must display the following acknowledgement:
+.\"	This product includes software developed by the University of
+.\"	California, Berkeley and its contributors.
+.\" 4. Neither the name of the University nor the names of its contributors
+.\"    may be used to endorse or promote products derived from this software
+.\"    without specific prior written permission.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+.\" SUCH DAMAGE.
+.\"
+.\" Modified from
+.\"     @(#)uuencode.1	6.9 (Berkeley) 4/23/91
+.\"
 .TH uuencode 1
 .SH NAME
 uuencode \- 对二进制文件编码
@@ -96,12 +96,11 @@ Uuencode 将把 生成结果 送往 标准输出. 缺省标准 使用 UU 编码
 原来的 文件树.
 .PP
 .IP
-.NF
+.nf
 tar cf \- src_tree \&| compress \&|
 uuencode src_tree.tar.Z \&| mail sys1!sys2!user
-.FI
+.fi
 .LP
-
 .SH "另见 (SEE ALSO)"
 compress(1), mail(1), uucp(1), uuencode(5)
 .SH "标准 (STANDARDS)"
diff --git a/src/man1/vacuumdb.1 b/src/man1/vacuumdb.1
index f772c71..0abfcd7 100644
--- a/src/man1/vacuumdb.1
+++ b/src/man1/vacuumdb.1
@@ -1,4 +1,4 @@
-.\\" auto-generated by docbook2man-spec $Revision: 1.1 $
+.\" auto-generated by docbook2man-spec $Revision: 1.1 $
 .TH "VACUUMDB" "1" "2003-11-02" "Application" "PostgreSQL Client Applications"
 .SH NAME
 vacuumdb \- 收集垃圾并且分析一个PostgreSQL 数据库
diff --git a/src/man1/whatis.1 b/src/man1/whatis.1
index 1ea515a..0fc4688 100644
--- a/src/man1/whatis.1
+++ b/src/man1/whatis.1
@@ -17,7 +17,6 @@
 .\" Austin, Texas  78712
 .\"
 .TH whatis 1 "Jan 5, 1991"
-.LO 1
 .SH NAME
 whatis \- 在 whatis 数据库里查找完整的单词
 .SH "总览 (SYNOPSIS)"

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/chinese/manpages-zh.git



More information about the Chinese-commits mailing list