OSDN Git Service

LDP: Address fuzzy changes (regexp)
authorAkihiro Motoki <amotoki@gmail.com>
Fri, 2 Apr 2021 08:28:33 +0000 (17:28 +0900)
committerAkihiro Motoki <amotoki@gmail.com>
Fri, 2 Apr 2021 08:28:33 +0000 (17:28 +0900)
manual/LDP_man-pages/draft/man3/fnmatch.3 [new file with mode: 0644]
manual/LDP_man-pages/draft/man3/glob.3
manual/LDP_man-pages/draft/man3/regex.3
manual/LDP_man-pages/draft/man3/wordexp.3
manual/LDP_man-pages/draft/man7/glob.7
manual/LDP_man-pages/draft/man7/regex.7
manual/LDP_man-pages/po4a/regexp/po/ja.po
manual/LDP_man-pages/stats/regexp
manual/LDP_man-pages/untrans.html

diff --git a/manual/LDP_man-pages/draft/man3/fnmatch.3 b/manual/LDP_man-pages/draft/man3/fnmatch.3
new file mode 100644 (file)
index 0000000..f80fb2e
--- /dev/null
@@ -0,0 +1,122 @@
+.\" Copyright (c) 1993 by Thomas Koenig (ig25@rz.uni-karlsruhe.de)
+.\"
+.\" %%%LICENSE_START(VERBATIM)
+.\" Permission is granted to make and distribute verbatim copies of this
+.\" manual provided the copyright notice and this permission notice are
+.\" preserved on all copies.
+.\"
+.\" Permission is granted to copy and distribute modified versions of this
+.\" manual under the conditions for verbatim copying, provided that the
+.\" entire resulting derived work is distributed under the terms of a
+.\" permission notice identical to this one.
+.\"
+.\" Since the Linux kernel and libraries are constantly changing, this
+.\" manual page may be incorrect or out-of-date.  The author(s) assume no
+.\" responsibility for errors or omissions, or for damages resulting from
+.\" the use of the information contained herein.  The author(s) may not
+.\" have taken the same level of care in the production of this manual,
+.\" which is licensed free of charge, as they might when working
+.\" professionally.
+.\"
+.\" Formatted or processed versions of this manual, if unaccompanied by
+.\" the source, must acknowledge the copyright and authors of this work.
+.\" %%%LICENSE_END
+.\"
+.\" Modified Sat Jul 24 19:35:54 1993 by Rik Faith (faith@cs.unc.edu)
+.\" Modified Mon Oct 16 00:16:29 2000 following Joseph S. Myers
+.\"
+.\"*******************************************************************
+.\"
+.\" This file was generated with po4a. Translate the source file.
+.\"
+.\"*******************************************************************
+.\"
+.\" Japanese Version Copyright (c) 1998 NAKANO Takeo all rights reserved.
+.\" Translated 1998-03-18, NAKANO Takeo <nakano@apm.seikei.ac.jp>
+.\" Modified 1998-12-18, NAKANO Takeo <nakano@apm.seikei.ac.jp>
+.\" Updated 2006-03-05, Akihiro MOTOKI, catch up to LDP v2.25
+.\"
+.TH FNMATCH 3 2019\-03\-06 GNU "Linux Programmer's Manual"
+.SH 名前
+fnmatch \- ファイル名またはパス名へのマッチを行う
+.SH 書式
+.nf
+\fB#include <fnmatch.h>\fP
+.PP
+\fBint fnmatch(const char *\fP\fIpattern\fP\fB, const char *\fP\fIstring\fP\fB, int \fP\fIflags\fP\fB);\fP
+.fi
+.SH 説明
+\fBfnmatch\fP()  関数は \fIstrings\fP 引き数が \fIpattern\fP 引き数にマッチするかをチェックする。 \fIpattern\fP
+にはシェルのワイルドカードパターンを与える (\fBglob\fP(7) 参照)。
+.PP
+\fIflags\fP 引き数により動作を変更できる。 \fIflags\fP は以下のフラグのビット毎の OR で指定する。
+.TP 
+\fBFNM_NOESCAPE\fP
+このフラグがセットされていると、バックスラッシュ (\e) をエスケープ文字 ではなく通常の文字として扱う。
+.TP 
+\fBFNM_PATHNAME\fP
+このフラグがセットされていると、 \fIstring\fP 中のスラッシュ (/) を \fIpattern\fP にあるスラッシュそのものにだけマッチさせ、
+アスタリスク (*) や疑問符 (?) のメタキャラクターや、 スラッシュを含むブラケット表現 ([]) にはマッチさせない。
+.TP 
+\fBFNM_PERIOD\fP
+このフラグがセットされていると、 \fIstring\fP の先頭ピリオド (leading period) は \fIpattern\fP
+中のピリオドそのものにしかマッチしない。先頭ピリオドとは、 \fIstring\fP の最初の文字位置にあるピリオドのことである。ただし
+\fBFNM_PATHNAME\fP フラグが同時にセットされている場合には、スラッシュの直後に続くピリオド も先頭ピリオドとみなされる。
+.TP 
+\fBFNM_FILE_NAME\fP
+これは \fBFNM_PATHNAME\fP に対する GNU での同義語である.
+.TP 
+\fBFNM_LEADING_DIR\fP
+このフラグは GNU での拡張である。これがセットされている場合には、 パターンが \fIstring\fP の最初の部分 (にスラッシュを付けたもの)
+にマッチすれば、 マッチしたものとみなされる。 このフラグは主として glibc で内部的に使用するもので、そのためにのみ実装されている。
+.TP 
+\fBFNM_CASEFOLD\fP
+このフラグは GNU での拡張である。これがセットされている場合には、 パターンのマッチに大文字小文字が区別されない。
+.TP 
+\fBFNM_EXTMATCH\fP
+If this flag (a GNU extension) is set, extended patterns are supported, as
+introduced by \&'ksh' and now supported by other shells.  The extended
+format is as follows, with \fIpattern\-list\fP being a \&'|' separated list of
+patterns.
+.TP 
+\&'?(\fIpattern\-list\fP)'
+The pattern matches if zero or one occurrences of any of the patterns in the
+\fIpattern\-list\fP match the input \fIstring\fP.
+.TP 
+\&'*(\fIpattern\-list\fP)'
+The pattern matches if zero or more occurrences of any of the patterns in
+the \fIpattern\-list\fP match the input \fIstring\fP.
+.TP 
+\&'+(\fIpattern\-list\fP)'
+The pattern matches if one or more occurrences of any of the patterns in the
+\fIpattern\-list\fP match the input \fIstring\fP.
+.TP 
+\&'@(\fIpattern\-list\fP)'
+The pattern matches if exactly one occurrence of any of the patterns in the
+\fIpattern\-list\fP match the input \fIstring\fP.
+.TP 
+\&'!(\fIpattern\-list\fP)'
+The pattern matches if the input \fIstring\fP cannot be matched with any of the
+patterns in the \fIpattern\-list\fP.
+.SH 返り値
+\fIstring\fP が \fIpattern\fP にマッチすれば 0 を返す。マッチしなかった場合には \fBFNM_NOMATCH\fP
+を返す。エラーの場合にはそれ以外の非ゼロ値を返す。
+.SH 属性
+この節で使用されている用語の説明については、 \fBattributes\fP(7) を参照。
+.TS
+allbox;
+lb lb lb
+l l l.
+インターフェース       属性  値
+T{
+\fBfnmatch\fP()
+T}     Thread safety   MT\-Safe env locale
+.TE
+.SH 準拠
+POSIX.1\-2001, POSIX.1\-2008, POSIX.2.  \fBFNM_FILE_NAME\fP, \fBFNM_LEADING_DIR\fP,
+\fBFNM_CASEFOLD\fP フラグは GNU の拡張である。
+.SH 関連項目
+\fBsh\fP(1), \fBglob\fP(3), \fBscandir\fP(3), \fBwordexp\fP(3), \fBglob\fP(7)
+.SH この文書について
+この man ページは Linux \fIman\-pages\fP プロジェクトのリリース 5.10 の一部である。プロジェクトの説明とバグ報告に関する情報は
+\%https://www.kernel.org/doc/man\-pages/ に書かれている。
index 5b0e383..9b2cd36 100644 (file)
@@ -126,13 +126,10 @@ typedef struct {
 パターンで指定された名前のファイルが存在しない場合であっても、 そのパターンが返される。
 .TP 
 \fBGLOB_TILDE\fP
-Carry out tilde expansion.  If a tilde (\(aq\(ti\(aq) is the only character
-in the pattern, or an initial tilde is followed immediately by a slash
-(\(aq/\(aq), then the home directory of the caller is substituted for the
-tilde.  If an initial tilde is followed by a username (e.g.,
-"\(tiandrea/bin"), then the tilde and username are substituted by the home
-directory of that user.  If the username is invalid, or the home directory
-cannot be determined, then no substitution is performed.
+チルダの展開を行う。 チルダ (\(aq\(ti\(aq) がパターン内の唯一の文字の場合か、先頭のチルダの直後の文字が スラッシュ
+(\(aq/\(aq) の場合、チルダを呼び出し者のホームディレクトリで置換する。 先頭のチルダにユーザー名が続く場合 (例えば
+"\(tiandrea/bin")、 チルダとユーザー名をそのユーザーのホームディレクトリで置換する。
+ユーザー名が無効な場合やホームディレクトリが決定できない場合は、 置換は実行されない。
 .TP 
 \fBGLOB_TILDE_CHECK\fP
 このフラグを指定すると \fBGLOB_TILDE\fP と同様の振舞いをする。 \fBGLOB_TILDE\fP との違いは、ユーザー名が無効だった場合や
@@ -200,7 +197,7 @@ glibc 2.1 では、 \fIgl_pathc\fP と \fIgl_offs\fP は POSIX.2 で指定され
 .SH バグ
 \fBglob\fP()  関数はその中で呼び出している \fBmalloc\fP(3)  や \fBopendir\fP(3)
 などの関数の呼び出しで失敗が起こると失敗する。 これにより \fIerrno\fP にそのエラーコードが入る。
-.SH EXAMPLES
+.SH 
 使用法の一例を以下に示す。以下はシェルで
 .PP
 .in +4n
index 24abdbb..49bc197 100644 (file)
@@ -68,7 +68,7 @@ regcomp, regexec, regerror, regfree \- POSIX regex 関数
 全ての正規表現検索は、コンパイルされたパターンによって行わなければならない。 よって、 \fBregexec\fP()  に指定するのは、必ず
 (\fBregcomp\fP()  によってコンパイルされた) パターンバッファーへのアドレスでなければならない。
 .PP
-\fIcflags\fP is the bitwise\-\fBor\fP of zero or more of the following:
+\fIcflags\fP には、以下に示す定数のうち 0 個以上をビットごとの OR (bitwise\-or) で指定する。
 .TP 
 \fBREG_EXTENDED\fP
 \fIregex\fP に \fBPOSIX\fP 拡張正規表現を使用する。もしこのフラグが設定されない場合、 \fBPOSIX\fP 標準正規表現が使われる。
@@ -84,20 +84,17 @@ regcomp, regexec, regerror, regfree \- POSIX regex 関数
 \fBREG_NEWLINE\fP
 全ての文字にマッチするオペレータに改行をマッチさせない。
 .IP
-A nonmatching list (\fB[\(ha...]\fP)  not containing a newline does not match a
-newline.
+改行を含まない非マッチング文字リスト (\fB[\(ha...]\fP)  に改行をマッチさせない。
 .IP
-Match\-beginning\-of\-line operator (\fB\(ha\fP)  matches the empty string
-immediately after a newline, regardless of whether \fIeflags\fP, the execution
-flags of \fBregexec\fP(), contains \fBREG_NOTBOL\fP.
+\fBregexec\fP()  の実行時に指定するフラグ \fIeflags\fP に \fBREG_NOTBOL\fP
+を含むかどうかにかかわらず、行頭にマッチするオペレータ (\fB\(ha\fP)  を改行直後の空文字列にマッチさせる。
 .IP
 \fIeflags\fP に \fBREG_NOTEOL\fP を含むかどうかにかかわらず、行末にマッチするオペレータ (\fB$\fP)
 を改行直前の空文字列にマッチさせる。
 .SS "POSIX regex マッチング"
-\fBregexec\fP()  is used to match a null\-terminated string against the
-precompiled pattern buffer, \fIpreg\fP.  \fInmatch\fP and \fIpmatch\fP are used to
-provide information regarding the location of any matches.  \fIeflags\fP is the
-bitwise\-\fBor\fP of zero or more of the following flags:
+\fBregexec\fP()  は、 プリコンパイルされたパターンバッファー \fIpreg\fP をヌル文字で終端された文字列にマッチさせる。
+\fInmatch\fP と \fIpmatch\fP はマッチングの位置に関する情報を取得するのに用いられる。 \fIeflags\fP には、以下のフラグのうち 0
+個以上をビットごとの \fBOR\fP (bitwise\-\fBor\fP) で指定する。
 .TP 
 \fBREG_NOTBOL\fP
 行頭にマッチするオペレータは、必ずマッチに失敗する (コンパイル時のフラグ \fBREG_NEWLINE\fP の項目も参照)。
@@ -185,8 +182,7 @@ typedef struct {
 無効な範囲オペレータの使用。 例えば、範囲の終了位置が開始位置よりも前にあるような場合。
 .TP 
 \fBREG_ESIZE\fP
-Compiled regular expression requires a pattern buffer larger than 64\ kB.
-This is not defined by POSIX.2.
+正規表現のコンパイルに、64\ Kb 以上のパターンバッファーが必要。 これは POSIX.2 には定義されていない。
 .TP 
 \fBREG_ESPACE\fP
 regex ルーチンがメモリーを使いはたしている。
@@ -213,7 +209,7 @@ T}  Thread safety   MT\-Safe
 .TE
 .SH 準拠
 POSIX.1\-2001, POSIX.1\-2008.
-.SH EXAMPLES
+.SH 
 .EX
 #include <stdint.h>
 #include <stdio.h>
@@ -259,7 +255,7 @@ int main(void)
 .SH 関連項目
 \fBgrep\fP(1), \fBregex\fP(7)
 .PP
-The glibc manual section, \fIRegular Expressions\fP
+glibc マニュアルのセクション \fIRegular Expressions\fP
 .SH この文書について
 この man ページは Linux \fIman\-pages\fP プロジェクトのリリース 5.10 の一部である。プロジェクトの説明とバグ報告に関する情報は
 \%https://www.kernel.org/doc/man\-pages/ に書かれている。
index 88b4ea4..0e6c2d1 100644 (file)
@@ -65,11 +65,9 @@ glibc 向けの機能検査マクロの要件 (\fBfeature_test_macros\fP(7)  参
 引き数 \fIs\fP にクォートしていないコメント文字 # で始まる単語が含まれている場合には、 その単語とそれ以降の単語が無視されるか、 それとも #
 がコメント文字として扱わないかは、規定されていない。
 .SS 展開
-The expansion done consists of the following stages: tilde expansion
-(replacing \(tiuser by user's home directory), variable substitution
-(replacing $FOO by the value of the environment variable FOO), command
-substitution (replacing $(command) or \`command\` by the output of command),
-arithmetic expansion, field splitting, wildcard expansion, quote removal.
+実行される展開は、以下の段階で構成される: チルダ展開 (\(tiuser を user のホームディレクトリに置き換える)、 変数展開 ($FOO
+を環境変数 FOO の値に置き換える)、 コマンド展開 ($(command) または \`command\` を command
+の出力で置き換える)、 算術展開、フィールド分割、ワイルドカード展開、クォートの除去。
 .PP
 特殊なパラメーター ($@, $*, $#, $?, $\-, $$, $!, $0) の 展開結果は規定されていない。
 .PP
@@ -143,7 +141,7 @@ parallel in different threads of a program, then data races could occur.
 \fBwordexp\fP()  calls those functions, so we use race:utent to remind users.
 .SH 準拠
 POSIX.1\-2001, POSIX.1\-2008.
-.SH EXAMPLES
+.SH 
 以下のサンプルプログラムの出力はだいたい "ls [a\-c]*.c" と同じになる。
 .PP
 .EX
index 2f78c2e..fc9f164 100644 (file)
@@ -77,11 +77,9 @@ glob の規則を以下に述べる (POSIX.2 3.13)。
 これらの文字はその文字自身だけを意味する。 すなわち "\fI[[?*\e]\fP" は \(aq[\(aq, \(aq?\(aq, \(aq*\(aq,
 \(aq\e\(aq のどれか一文字にマッチする。
 .SS "パス名 (pathname)"
-Globbing is applied on each of the components of a pathname separately.  A
-\(aq/\(aq in a pathname cannot be matched by a \(aq?\(aq or \(aq*\(aq
-wildcard, or by a range like "\fI[.\-0]\fP".  A range containing an explicit
-\(aq/\(aq character is syntactically incorrect.  (POSIX requires that
-syntactically incorrect patterns are left unchanged.)
+glob 動作は、パス名のそれぞれの部分に独立に適用される。 パス名に存在する \(aq/\(aq は \(aq?\(aq や \(aq*\(aq
+ワイルドカードにはマッチしない。 また "\fI[.\-0]\fP" のような領域指定にもマッチしない。陽に \(aq/\(aq
+文字を含む領域指定は文法的に正しくない。 (POSIX の要件では、文法的に正しくないパターンは変更せずにそのままにすることになっている。)
 .PP
 \(aq.\(aq で始まるパス名では、この文字は陽にマッチさせなければならない。 (つまり \fIrm\ *\fP は .profile を削除しない。また
 \fItar\ c\ *\fP ではすべてのファイルはアーカイブされない。 \fItar\ c\ .\fP の方が良い。)
@@ -119,9 +117,8 @@ syntactically incorrect patterns are left unchanged.)
 後者はテキストにマッチする。第二に、ルールも同じではない。 例えば正規表現における \(aq*\(aq は、 前置された文字の 0
 以上の繰り返しを表す。
 .PP
-Now that regular expressions have bracket expressions where the negation is
-indicated by a \(aq\(ha\(aq, POSIX has declared the effect of a wildcard
-pattern "\fI[\(ha...]\fP" to be undefined.
+正規表現にもブラケット表現はあるが、否定は \(aq\(ha\(aq でなされる。 POSIX ではワイルドカードパターンにおける
+"\fI[\(ha...]\fP" を未定義であるとしている。
 .SS 文字クラスと国際化
 領域指定は、もともとはもちろん ASCII における順序並びを意味していた。 したがって "\fI[\ \-%]\fP" は "\fI[\ !"#$%]\fP"
 の意味であり、 "\fI[a\-z]\fP" は「すべての小文字」の意味であった。 UNIX の実装の中には、これを拡張したものが存在し、 そこでは X\-Y
@@ -151,11 +148,11 @@ locale) の \fBLC_COLLATE\fP カテゴリーで定義されている照合順序
 (v) 照合順序におけるシンボル: "\fI[.ch.]\fP" や "\fI[.a\-acute.]\fP" のように "\fI[.\fP" と "\fI.]\fP"
 で挟まれた文字列は、カレントロケールで定義された照合順序の要素となる。 ある一つの要素が複数の文字からなる場合もありうることに注意。
 .PP
-(vi) Equivalence class expressions, like "\fI[=a=]\fP", where the string
-between "\fI[=\fP" and "\fI=]\fP" is any collating element from its equivalence
-class, as defined for the current locale.  For example, "\fI[[=a=]]\fP" might
-be equivalent to "\fI[a\('a\(\`a\(:a\(^a]\fP", that is, to
-"\fI[a[.a\-acute.][.a\-grave.][.a\-umlaut.][.a\-circumflex.]]\fP".
+(vi) 等価クラス表現 (equivalence class expressions):
+"\fI[=a=]\fP" のように "\fI[=\fP" と "\fI=]\fP" とで挟まれた文字列であり、
+カレントロケールで定義された等価クラスのメンバーである照合要素のいずれかを表す。
+例えば、"\fI[[=a=]]\fP" は "\fI[a\('a\(\`a\(:a\(^a]\fP"、つまり
+"\fI[a[.a\-acute.][.a\-grave.][.a\-umlaut.][.a\-circumflex.]]\fP" と等価になる。
 .SH 関連項目
 \fBsh\fP(1), \fBfnmatch\fP(3), \fBglob\fP(3), \fBlocale\fP(7), \fBregex\fP(7)
 .SH この文書について
index 22055df..c3e154c 100644 (file)
@@ -72,38 +72,32 @@ RE) と古い正規表現 (obsolete RE)  である。新しい正規表現はだ
 \fIi\fP個以上並べたものにマッチする。 整数 \fIi\fP と \fIj\fP が指定された繰り返し指定を後置されたアトムは、 アトムを \fIi\fP個以上 \fIj\fP
 個以下だけ並べたものにマッチする。
 .PP
-An atom is a regular expression enclosed in "\fI()\fP" (matching a match for
-the regular expression), an empty set of "\fI()\fP" (matching the null
-string)\*(dg, a \fIbracket expression\fP (see below), \(aq.\(aq (matching any
-single character), \(aq\(ha\(aq (matching the null string at the beginning
-of a line), \(aq$\(aq (matching the null string at the end of a line), a
-\(aq\e\(aq followed by one of the characters "\fI\(ha.[$()|*+?{\e\fP" (matching
-that character taken as an ordinary character), a \(aq\e\(aq followed by any
-other character\*(dg (matching that character taken as an ordinary
-character, as if the \(aq\e\(aq had not been present\*(dg), or a single
-character with no other significance (matching that character).  A \(aq{\(aq
-followed by a character other than a digit is an ordinary character, not the
-beginning of a bound\*(dg.  It is illegal to end an RE with \(aq\e\(aq.
-.PP
-A \fIbracket expression\fP is a list of characters enclosed in "\fI[]\fP".  It
-normally matches any single character from the list (but see below).  If the
-list begins with \(aq\(ha\(aq, it matches any single character (but see
-below) \fInot\fP from the rest of the list.  If two characters in the list are
-separated by \(aq\-\(aq, this is shorthand for the full \fIrange\fP of
-characters between those two (inclusive) in the collating sequence, for
-example, "\fI[0\-9]\fP" in ASCII matches any decimal digit.  It is illegal\*(dg
-for two ranges to share an endpoint, for example, "\fIa\-c\-e\fP".  Ranges are
-very collating\-sequence\-dependent, and portable programs should avoid
-relying on them.
-.PP
-To include a literal \(aq]\(aq in the list, make it the first character
-(following a possible \(aq\(ha\(aq).  To include a literal \(aq\-\(aq, make
-it the first or last character, or the second endpoint of a range.  To use a
-literal \(aq\-\(aq as the first endpoint of a range, enclose it in "\fI[.\fP"
-and "\fI.]\fP" to make it a collating element (see below).  With the exception
-of these and some combinations using \(aq[\(aq (see next paragraphs), all
-other special characters, including \(aq\e\(aq, lose their special
-significance within a bracket expression.
+アトムの種類は以下の通り。"\fI()\fP" に囲まれた正規表現 (その正規表現がマッチする文字列にマッチする)、 中身が空の "\fI()\fP" (null
+文字列にマッチする)\*(dg、 \fIブラケット表現 (bracket expression\fP :後述)、 \(aq.\(aq (任意の 1
+文字にマッチする)、 \(aq\(ha\(aq (行頭の空白文字にマッチする)、 \(aq$\(aq (行末の空白文字にマッチする)、
+\(aq\e\(aq に "\fI\(ha.[$()|*+?{\e\fP" のいずれか一文字を後置したもの (通常の文字として扱われ、その文字にマッチする)、
+\(aq\e\(aq にそれ以外の文字を後置したもの\*(dg (\(aq\e\(aq がない場合と同じように、その文字にマッチする\*(dg)、
+特に意味を持たない文字一つ (その文字にマッチする)。 \(aq{\(aq は数字以外の文字が後置されると通常の文字として扱われ、
+繰り返し指定の始まりとはされない\*(dg。\(aq\e\(aq で終わる正規表現は不正なものとみなされる。
+.PP
+\fIブラケット表現\fPは "\fI[]\fP" によって閉じられた文字のリストである。 これは通常リスト中に存在している文字にマッチする。 (例外あり、後述。)
+リストが \(aq\(ha\(aq で始まると、 \fIブラケット表現\fPはリストに存在して\fIいない\fP文字一つにマッチする (例外あり、後述)。
+リスト中の二つの文字が \(aq\-\(aq で区切られている場合は、 これは照合順序 (collating sequence)
+でその二つの文字に挟まれる、 すべての文字の並びを短縮したものとみなされる (両端含む)。 例えば "\fI[0\-9]\fP" は ASCII では 10
+進の数字 (digit) のいずれかにマッチする。 二つの領域指定が端点を共有してはならない\*(dg。 つまり "\fIa\-c\-e\fP"
+のようなものは不正である。領域指定は照合順序に強く依存する。 したがって移植性の高いプログラムを作る場合は、 領域指定には頼らないほうが良いだろう。
+【\fB訳注\fP: 照合順序 (collating sequence) というのは、国際化 (Internationalization)
+に関連した用語です。アルファベット順に単語を並 べる際には、言語によって並べる基準が異なります。照合順序は、その差異を 吸収するための仕組みです。
+例えば、スペイン語では ch という文字並びを特別扱いするため、アルファベッ ト順が a, b, c, ch, d, e,
+\&... の順になるそうです。このようなシーケンス のことを collating sequence と言います。このとき `ch' という文字並びは、
+単語整列の際にあたかも「一文字」のように扱われます。ここで、 順序付けを行う際に最小の単位となる、`a'、`b' の文字や `ch'
+のような特別な文字並びなど、照合順序の要素のことを collating element と言います。collating sequence
+は、文字単位ではなく collating element を単位として定義されます。】
+.PP
+文字 \(aq]\(aq そのものをリストに入れたい場合は、 最初の文字として指定すれば良い (\(aq\(ha\(aq) の後に続けるのでも良い)。
+文字 \(aq\-\(aq そのものをリストに入れたい場合は、 最初か最後の文字とすれば良い。 あるいは領域指定の終端文字として指定しても良い。
+\(aq\-\(aq を領域指定の先頭文字に指定するには、"\fI[.\fP" と "\fI.]\fP" で囲って、 照合順序の要素 (collating
+element: 後述) にすれば良い。 他の特殊文字 ( も含む) は、 ブラケット表現の内部ではすべて通常の文字として扱われる。
 .PP
 ブラケット表現の内部では、"\fI[.\fP" と "\fI.]\fP" に囲われた照合順序の要素は、 その要素に対応する文字並びを表す。 「照合順序の要素」とは、
 [1] 文字、 [2] 単一文字のように扱われる複数文字のシーケンス、 [3] 1, 2 いずれかに対応する照合順序上の名前、のいずれかである。
@@ -111,14 +105,11 @@ significance within a bracket expression.
 したがって一文字以上にマッチすることがある。 例えば、もし照合順序が "ch" という要素を含んでいる場合には、 正規表現
 "\fI[[.ch.]]*c\fP" は "chchcc" の最初の 5 文字にマッチする。
 .PP
-Within a bracket expression, a collating element enclosed in "\fI[=\fP" and
-"\fI=]\fP" is an equivalence class, standing for the sequences of characters of
-all collating elements equivalent to that one, including itself.  (If there
-are no other equivalent collating elements, the treatment is as if the
-enclosing delimiters were "\fI[.\fP" and "\fI.]\fP".)  For example, if o and
-\o'o\(ha' are the members of an equivalence class, then "\fI[[=o=]]\fP",
-"\fI[[=\o'o\(ha'=]]\fP", and "\fI[o\o'o\(ha']\fP" are all synonymous.  An
-equivalence class may not\*(dg be an endpoint of a range.
+ブラケット表現の内部では、"\fI[=\fP" と "\fI=]\fP" に囲まれた照合順序の要素は、 等価クラス (equivalence class) となる。
+これは、その要素と等価な要素すべてからなる文字シーケンス (自身も含む) を表す。 他に等価な要素がなければ、 取り扱いは "\fI[.\fP" と
+"\fI.]\fP" で囲まれている場合と同じである。 例えば o と \o'o\(ha' が等価クラスのメンバーであれば、 "\fI[[=o=]]\fP",
+"\fI[[=\o'o\(ha'=]]\fP", "\fI[o\o'o\(ha']\fP" はすべて同じ意味になる。
+等価クラスは領域指定の端点にはなれない\*(dg。
 .PP
 ブラケット表現の内部では、"\fI[:\fP" と "\fI:]\fP" で囲われた\fI文字クラス (character class)\fP
 はそのクラスに属するすべての文字のリストを表す。 標準で用意されている文字クラスの名前は以下の通り:
@@ -167,30 +158,22 @@ cntrl     print   xdigit
 文字すべてにマッチする。 "\fI(a*)*\fP" を "bc" にマッチさせると、正規表現全体も、 括弧で括られた部分正規表現も null
 文字列にマッチする。
 .PP
-If case\-independent matching is specified, the effect is much as if all case
-distinctions had vanished from the alphabet.  When an alphabetic that exists
-in multiple cases appears as an ordinary character outside a bracket
-expression, it is effectively transformed into a bracket expression
-containing both cases, for example, \(aqx\(aq becomes "\fI[xX]\fP".  When it
-appears inside a bracket expression, all case counterparts of it are added
-to the bracket expression, so that, for example, "\fI[x]\fP" becomes "\fI[xX]\fP"
-and "\fI[\(hax]\fP" becomes "\fI[\(haxX]\fP".
+マッチが大文字・小文字を無視するように指定されると、 アルファベット全体から大小文字の区別が無くなったかのような効果となる。
+大文字・小文字を持つアルファベットがブラケット表現の外部で 通常の文字として現れると、 これは実効的に大小両方の文字のブラケット表現のように変換される。
+すなわち \(aqx\(aq は "\fI[xX]\fP" となる。ブラケット表現の内部に現れると、
+大文字なら小文字が、小文字なら大文字がそのブラケット表現に加えられる。 すなわち "\fI[x]\fP" は "\fI[xX]\fP" に、"\fI[\(hax]\fP"
+は "\fI[\(haxX]\fP" になる。
 .PP
 正規表現の長さには特に制限はない\*(dg。 ただし移植性を高くしたいプログラムでは、 256 バイトより長い正規表現は実行しないようにするほうが良い。
 なぜなら、そのような正規表現を拒否し、 しかも POSIX 互換を保つような実装が可能だからである。
 .PP
-Obsolete ("basic") regular expressions differ in several respects.
-\(aq|\(aq, \(aq+\(aq, and \(aq?\(aq are ordinary characters and there is no
-equivalent for their functionality.  The delimiters for bounds are "\fI\e{\fP"
-and "\fI\e}\fP", with \(aq{\(aq and \(aq}\(aq by themselves ordinary
-characters.  The parentheses for nested subexpressions are "\fI\e(\fP" and
-"\fI\e)\fP", with \(aq(\(aq and \(aq)\(aq by themselves ordinary characters.
-\(aq\(ha\(aq is an ordinary character except at the beginning of the RE
-or\*(dg the beginning of a parenthesized subexpression, \(aq$\(aq is an
-ordinary character except at the end of the RE or\*(dg the end of a
-parenthesized subexpression, and \(aq*\(aq is an ordinary character if it
-appears at the beginning of the RE or the beginning of a parenthesized
-subexpression (after a possible leading \(aq\(ha\(aq).
+古い ("基本") 正規表現は、いくつかの点において異なる。 \(aq|\(aq, \(aq+\(aq, and \(aq?\(aq
+は通常の文字となる。 対応する機能は存在しない。繰り返し指定の区切りは "\fI\e{\fP" および "\fI\e}\fP" となる。\(aq{\(aq と
+\(aq}\(aq は、 単独では通常の文字として扱われる。 部分正規表現をネストする括弧は "\fI\e(\fP" および "\fI\e)\fP" となり、
+\(aq(\(aq と \(aq)\(aq は単独では通常の文字となる。 \(aq\(ha\(aq は正規表現の先頭か、
+括弧でくくられた部分表現の先頭\*(dgを除いて通常の文字となる。 \(aq$\(aq は正規表現の末尾か、
+括弧でくくられた部分正規表現の末尾\*(dgを除いて通常の文字となる。 \(aq*\(aq は、正規表現の先頭か、
+括弧でくくられた部分文字列の先頭に置かれた場合は通常の文字となる (\(aq\(ha\(aq) が前置されていてもよい)。
 .PP
 最後に、アトムとして別のタイプが存在する。 \fI後方参照 (back reference)\fP である。 \(aq\e\(aq の後に 0 でない 10
 進数値文字 \fId\fP が続くと、 括弧でくくられた部分正規表現の \fId\fP 番目にマッチした文字並びと同じものにマッチする。
index d41cc92..4468f0c 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
 "POT-Creation-Date: 2021-03-12 14:01+0900\n"
-"PO-Revision-Date: 2021-03-26 13:47+0900\n"
+"PO-Revision-Date: 2021-04-02 17:27+0900\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
 "Language: \n"
@@ -25,7 +25,7 @@ msgstr "FNMATCH"
 #: build/C/man3/fnmatch.3:28
 #, no-wrap
 msgid "2019-03-06"
-msgstr ""
+msgstr "2019-03-06"
 
 #. type: TH
 #: build/C/man3/fnmatch.3:28 build/C/man3/glob.3:34 build/C/man3/re_comp.3:27
@@ -84,16 +84,10 @@ msgstr "説明"
 
 #. type: Plain text
 #: build/C/man3/fnmatch.3:46
-#, fuzzy
-#| msgid ""
-#| "The B<fnmatch>()  function checks whether the I<string> argument matches "
-#| "the I<pattern> argument, which is a shell wildcard pattern."
 msgid ""
 "The B<fnmatch>()  function checks whether the I<string> argument matches the "
 "I<pattern> argument, which is a shell wildcard pattern (see B<glob>(7))."
-msgstr ""
-"B<fnmatch>()  関数は I<strings> 引き数が I<pattern> 引き数にマッチするかを"
-"チェックする。 I<pattern> にはシェルのワイルドカードパターンを与える。"
+msgstr "B<fnmatch>()  関数は I<strings> 引き数が I<pattern> 引き数にマッチするかをチェックする。 I<pattern> にはシェルのワイルドカードパターンを与える (B<glob>(7) 参照)。"
 
 #. type: Plain text
 #: build/C/man3/fnmatch.3:51
@@ -203,10 +197,9 @@ msgstr ""
 
 #. type: TP
 #: build/C/man3/fnmatch.3:90
-#, fuzzy, no-wrap
-#| msgid "B<FNM_PATHNAME>"
+#, no-wrap
 msgid "B<FNM_EXTMATCH>"
-msgstr "B<FNM_PATHNAME>"
+msgstr "B<FNM_EXTMATCH>"
 
 #. type: Plain text
 #: build/C/man3/fnmatch.3:96
@@ -221,7 +214,7 @@ msgstr ""
 #: build/C/man3/fnmatch.3:96
 #, no-wrap
 msgid "\\&'?(I<pattern-list>)'"
-msgstr ""
+msgstr "\\&'?(I<pattern-list>)'"
 
 #. type: Plain text
 #: build/C/man3/fnmatch.3:100
@@ -234,7 +227,7 @@ msgstr ""
 #: build/C/man3/fnmatch.3:100
 #, no-wrap
 msgid "\\&'*(I<pattern-list>)'"
-msgstr ""
+msgstr "\\&'*(I<pattern-list>)'"
 
 #. type: Plain text
 #: build/C/man3/fnmatch.3:104
@@ -247,7 +240,7 @@ msgstr ""
 #: build/C/man3/fnmatch.3:104
 #, no-wrap
 msgid "\\&'+(I<pattern-list>)'"
-msgstr ""
+msgstr "\\&'+(I<pattern-list>)'"
 
 #. type: Plain text
 #: build/C/man3/fnmatch.3:108
@@ -260,7 +253,7 @@ msgstr ""
 #: build/C/man3/fnmatch.3:108
 #, no-wrap
 msgid "\\&'@(I<pattern-list>)'"
-msgstr ""
+msgstr "\\&'@(I<pattern-list>)'"
 
 #. type: Plain text
 #: build/C/man3/fnmatch.3:112
@@ -273,7 +266,7 @@ msgstr ""
 #: build/C/man3/fnmatch.3:112
 #, no-wrap
 msgid "\\&'!(I<pattern-list>)'"
-msgstr ""
+msgstr "\\&'!(I<pattern-list>)'"
 
 #. type: Plain text
 #: build/C/man3/fnmatch.3:116
@@ -363,16 +356,10 @@ msgstr "準拠"
 
 #. type: Plain text
 #: build/C/man3/fnmatch.3:140
-#, fuzzy
-#| msgid ""
-#| "POSIX.2.  The B<FNM_FILE_NAME>, B<FNM_LEADING_DIR>, and B<FNM_CASEFOLD> "
-#| "flags are GNU extensions."
 msgid ""
 "POSIX.1-2001, POSIX.1-2008, POSIX.2.  The B<FNM_FILE_NAME>, "
 "B<FNM_LEADING_DIR>, and B<FNM_CASEFOLD> flags are GNU extensions."
-msgstr ""
-"POSIX.2.  B<FNM_FILE_NAME>, B<FNM_LEADING_DIR>, B<FNM_CASEFOLD> フラグは GNU "
-"の拡張である。"
+msgstr "POSIX.1-2001, POSIX.1-2008, POSIX.2.  B<FNM_FILE_NAME>, B<FNM_LEADING_DIR>, B<FNM_CASEFOLD> フラグは GNU の拡張である。"
 
 #. type: SH
 #: build/C/man3/fnmatch.3:140 build/C/man3/glob.3:351 build/C/man7/glob.7:208
@@ -416,7 +403,7 @@ msgstr "GLOB"
 #: build/C/man3/glob.3:34
 #, no-wrap
 msgid "2020-06-09"
-msgstr ""
+msgstr "2020-06-09"
 
 #. type: Plain text
 #: build/C/man3/glob.3:37
@@ -441,6 +428,10 @@ msgid ""
 "B<         glob_t *>I<pglob>B<);>\n"
 "B<void globfree(glob_t *>I<pglob>B<);>\n"
 msgstr ""
+"B<int glob(const char *>I<pattern>B<, int >I<flags>B<,>\n"
+"B<         int (*>I<errfunc>B<) (const char *>I<epath>B<, int >I<eerrno>B<),>\n"
+"B<         glob_t *>I<pglob>B<);>\n"
+"B<void globfree(glob_t *>I<pglob>B<);>\n"
 
 #. type: Plain text
 #: build/C/man3/glob.3:56
@@ -702,15 +693,6 @@ msgstr "B<GLOB_TILDE>"
 
 #. type: Plain text
 #: build/C/man3/glob.3:187
-#, fuzzy
-#| msgid ""
-#| "Carry out tilde expansion.  If a tilde (\\(aq~\\(aq) is the only "
-#| "character in the pattern, or an initial tilde is followed immediately by "
-#| "a slash (\\(aq/\\(aq), then the home directory of the caller is "
-#| "substituted for the tilde.  If an initial tilde is followed by a username "
-#| "(e.g., \"~andrea/bin\"), then the tilde and username are substituted by "
-#| "the home directory of that user.  If the username is invalid, or the home "
-#| "directory cannot be determined, then no substitution is performed."
 msgid ""
 "Carry out tilde expansion.  If a tilde (\\(aq\\(ti\\(aq) is the only "
 "character in the pattern, or an initial tilde is followed immediately by a "
@@ -719,13 +701,7 @@ msgid ""
 "\"\\(tiandrea/bin\"), then the tilde and username are substituted by the "
 "home directory of that user.  If the username is invalid, or the home "
 "directory cannot be determined, then no substitution is performed."
-msgstr ""
-"チルダの展開を行う。 チルダ (\\(aq~\\(aq) がパターン内の唯一の文字の場合か、"
-"先頭のチルダの直後の文字が スラッシュ (\\(aq/\\(aq) の場合、チルダを呼び出し"
-"者のホームディレクトリで置換する。 先頭のチルダにユーザー名が続く場合 (例え"
-"ば \"~andrea/bin\")、 チルダとユーザー名をそのユーザーのホームディレクトリで"
-"置換する。 ユーザー名が無効な場合やホームディレクトリが決定できない場合は、 "
-"置換は実行されない。"
+msgstr "チルダの展開を行う。 チルダ (\\(aq\\(ti\\(aq) がパターン内の唯一の文字の場合か、先頭のチルダの直後の文字が スラッシュ (\\(aq/\\(aq) の場合、チルダを呼び出し者のホームディレクトリで置換する。 先頭のチルダにユーザー名が続く場合 (例えば \"\\(tiandrea/bin\")、 チルダとユーザー名をそのユーザーのホームディレクトリで置換する。 ユーザー名が無効な場合やホームディレクトリが決定できない場合は、 置換は実行されない。"
 
 #. type: TP
 #: build/C/man3/glob.3:187
@@ -944,8 +920,7 @@ msgstr ""
 
 #. type: SH
 #: build/C/man3/glob.3:328 build/C/man3/regex.3:340 build/C/man3/wordexp.3:223
-#, fuzzy, no-wrap
-#| msgid "EXAMPLE"
+#, no-wrap
 msgid "EXAMPLES"
 msgstr "例"
 
@@ -956,10 +931,9 @@ msgstr "使用法の一例を以下に示す。以下はシェルで"
 
 #. type: Plain text
 #: build/C/man3/glob.3:334
-#, fuzzy, no-wrap
-#| msgid "ls -l *.c ../*.c"
+#, no-wrap
 msgid "ls -l *.c ../*.c\n"
-msgstr "ls -l *.c ../*.c"
+msgstr "ls -l *.c ../*.c\n"
 
 #. type: Plain text
 #: build/C/man3/glob.3:338
@@ -1001,10 +975,9 @@ msgstr ""
 
 #. type: TH
 #: build/C/man7/glob.7:26 build/C/man3/regex.3:30 build/C/man7/regex.7:37
-#, fuzzy, no-wrap
-#| msgid "2014-08-19"
+#, no-wrap
 msgid "2020-08-13"
-msgstr "2014-08-19"
+msgstr "2020-08-13"
 
 #. type: TH
 #: build/C/man7/glob.7:26
@@ -1160,23 +1133,13 @@ msgstr "パス名 (pathname)"
 
 #. type: Plain text
 #: build/C/man7/glob.7:98
-#, fuzzy
-#| msgid ""
-#| "Globbing is applied on each of the components of a pathname separately.  "
-#| "A \\(aq/\\(aq in a pathname cannot be matched by a \\(aq?\\(aq or \\(aq*"
-#| "\\(aq wildcard, or by a range like \"I<[.-0]>\".  A range cannot contain "
-#| "an explicit \\(aq/\\(aq character; this would lead to a syntax error."
 msgid ""
 "Globbing is applied on each of the components of a pathname separately.  A "
 "\\(aq/\\(aq in a pathname cannot be matched by a \\(aq?\\(aq or \\(aq*\\(aq "
 "wildcard, or by a range like \"I<[.-0]>\".  A range containing an explicit "
 "\\(aq/\\(aq character is syntactically incorrect.  (POSIX requires that "
 "syntactically incorrect patterns are left unchanged.)"
-msgstr ""
-"glob 動作は、パス名のそれぞれの部分に独立に適用される。 パス名に存在する "
-"\\(aq/\\(aq は \\(aq?\\(aq や \\(aq*\\(aq ワイルドカードにはマッチしない。 ま"
-"た \"I<[.-0]>\" のような領域指定にもマッチしない。 領域指定は陽に \\(aq/"
-"\\(aq 文字を含むことはできない。これは文法エラーとなる。"
+msgstr "glob 動作は、パス名のそれぞれの部分に独立に適用される。 パス名に存在する \\(aq/\\(aq は \\(aq?\\(aq や \\(aq*\\(aq ワイルドカードにはマッチしない。 また \"I<[.-0]>\" のような領域指定にもマッチしない。陽に \\(aq/\\(aq 文字を含む領域指定は文法的に正しくない。 (POSIX の要件では、文法的に正しくないパターンは変更せずにそのままにすることになっている。)"
 
 #. type: Plain text
 #: build/C/man7/glob.7:103
@@ -1240,10 +1203,9 @@ msgstr ""
 
 #. type: Plain text
 #: build/C/man7/glob.7:131
-#, fuzzy, no-wrap
-#| msgid "    rm \\`find . -name \"*~\"\\`\n"
+#, no-wrap
 msgid "    rm \\`find . -name \"*\\(ti\"\\`\n"
-msgstr "    rm \\`find . -name \"*~\"\\`\n"
+msgstr "    rm \\`find . -name \"*\\(ti\"\\`\n"
 
 #. type: Plain text
 #: build/C/man7/glob.7:134
@@ -1252,10 +1214,9 @@ msgstr "のような記述は、新しいスクリプトでは"
 
 #. type: Plain text
 #: build/C/man7/glob.7:137
-#, fuzzy, no-wrap
-#| msgid "    rm -f nosuchfile \\`find . -name \"*~\"\\`\n"
+#, no-wrap
 msgid "    rm -f nosuchfile \\`find . -name \"*\\(ti\"\\`\n"
-msgstr "    rm -f nosuchfile \\`find . -name \"*~\"\\`\n"
+msgstr "    rm -f nosuchfile \\`find . -name \"*\\(ti\"\\`\n"
 
 #. type: Plain text
 #: build/C/man7/glob.7:142
@@ -1285,18 +1246,11 @@ msgstr ""
 
 #. type: Plain text
 #: build/C/man7/glob.7:154
-#, fuzzy
-#| msgid ""
-#| "Now that regular expressions have bracket expressions where the negation "
-#| "is indicated by a \\(aq^\\(aq, POSIX has declared the effect of a "
-#| "wildcard pattern \"I<[^...]>\" to be undefined."
 msgid ""
 "Now that regular expressions have bracket expressions where the negation is "
 "indicated by a \\(aq\\(ha\\(aq, POSIX has declared the effect of a wildcard "
 "pattern \"I<[\\(ha...]>\" to be undefined."
-msgstr ""
-"正規表現にもブラケット表現はあるが、否定は \\(aq^\\(aq でなされる。 POSIX で"
-"はワイルドカードパターンにおける \"I<[^...]>\" を未定義であるとしている。"
+msgstr "正規表現にもブラケット表現はあるが、否定は \\(aq\\(ha\\(aq でなされる。 POSIX ではワイルドカードパターンにおける \"I<[\\(ha...]>\" を未定義であるとしている。"
 
 #. type: SS
 #: build/C/man7/glob.7:154
@@ -1390,13 +1344,6 @@ msgstr ""
 
 #. type: Plain text
 #: build/C/man7/glob.7:208
-#, fuzzy
-#| msgid ""
-#| "(vi) Equivalence class expressions, like \"I<[=a=]>\", where the string "
-#| "between \"I<[=>\" and \"I<=]>\" is any collating element from its "
-#| "equivalence class, as defined for the current locale.  For example, "
-#| "\"I<[[=a=]]>\" might be equivalent to \"I<[a\\('a\\(`a\\(:a\\(^a]>\", "
-#| "that is, to \"I<[a[.a-acute.][.a-grave.][.a-umlaut.][.a-circumflex.]]>\"."
 msgid ""
 "(vi) Equivalence class expressions, like \"I<[=a=]>\", where the string "
 "between \"I<[=>\" and \"I<=]>\" is any collating element from its "
@@ -1406,9 +1353,8 @@ msgid ""
 msgstr ""
 "(vi) 等価クラス表現 (equivalence class expressions):\n"
 "\"I<[=a=]>\" のように \"I<[=>\" と \"I<=]>\" とで挟まれた文字列であり、\n"
-"カレントロケールで定義された等価クラスのメンバーである照合要素のいずれかを表"
-"す。\n"
-"例えば、\"I<[[=a=]]>\" は \"I<[a\\('a\\(`a\\(:a\\(^a]>\"、つまり\n"
+"カレントロケールで定義された等価クラスのメンバーである照合要素のいずれかを表す。\n"
+"例えば、\"I<[[=a=]]>\" は \"I<[a\\('a\\(\\`a\\(:a\\(^a]>\"、つまり\n"
 "\"I<[a[.a-acute.][.a-grave.][.a-umlaut.][.a-circumflex.]]>\" と等価になる。"
 
 #. type: Plain text
@@ -1426,7 +1372,7 @@ msgstr "RE_COMP"
 #: build/C/man3/re_comp.3:27
 #, no-wrap
 msgid "2017-09-15"
-msgstr ""
+msgstr "2017-09-15"
 
 #. type: Plain text
 #: build/C/man3/re_comp.3:30
@@ -1544,10 +1490,9 @@ msgstr "regcomp, regexec, regerror, regfree - POSIX regex 関数"
 
 #. type: Plain text
 #: build/C/man3/regex.3:36
-#, fuzzy, no-wrap
-#| msgid "B<#include E<lt>regex.hE<gt>>"
+#, no-wrap
 msgid "B<#include E<lt>regex.hE<gt>>\n"
-msgstr "B<#include E<lt>regex.hE<gt>>"
+msgstr "B<#include E<lt>regex.hE<gt>>\n"
 
 #. type: Plain text
 #: build/C/man3/regex.3:38
@@ -1620,12 +1565,8 @@ msgstr ""
 
 #. type: Plain text
 #: build/C/man3/regex.3:76
-#, fuzzy
-#| msgid "I<cflags> may be the bitwise-B<or> of one or more of the following:"
 msgid "I<cflags> is the bitwise-B<or> of zero or more of the following:"
-msgstr ""
-"I<cflags> には以下に示す定数一つ以上のビットごとの OR (bitwise-or) を指定す"
-"る。"
+msgstr "I<cflags> には、以下に示す定数のうち 0 個以上をビットごとの OR (bitwise-or) で指定する。"
 
 #. type: TP
 #: build/C/man3/regex.3:76
@@ -1688,31 +1629,18 @@ msgstr "全ての文字にマッチするオペレータに改行をマッチさ
 
 #. type: Plain text
 #: build/C/man3/regex.3:108
-#, fuzzy
-#| msgid ""
-#| "A nonmatching list (B<[^...]>)  not containing a newline does not match a "
-#| "newline."
 msgid ""
 "A nonmatching list (B<[\\(ha...]>)  not containing a newline does not match "
 "a newline."
-msgstr ""
-"改行を含まない非マッチング文字リスト (B<[^...]>)  に改行をマッチさせない。"
+msgstr "改行を含まない非マッチング文字リスト (B<[\\(ha...]>)  に改行をマッチさせない。"
 
 #. type: Plain text
 #: build/C/man3/regex.3:118
-#, fuzzy
-#| msgid ""
-#| "Match-beginning-of-line operator (B<^>)  matches the empty string "
-#| "immediately after a newline, regardless of whether I<eflags>, the "
-#| "execution flags of B<regexec>(), contains B<REG_NOTBOL>."
 msgid ""
 "Match-beginning-of-line operator (B<\\(ha>)  matches the empty string "
 "immediately after a newline, regardless of whether I<eflags>, the execution "
 "flags of B<regexec>(), contains B<REG_NOTBOL>."
-msgstr ""
-"B<regexec>()  の実行時に指定するフラグ I<eflags> に B<REG_NOTBOL> を含むかど"
-"うかにかかわらず、行頭にマッチするオペレータ (B<^>)  を改行直後の空文字列に"
-"マッチさせる。"
+msgstr "B<regexec>()  の実行時に指定するフラグ I<eflags> に B<REG_NOTBOL> を含むかどうかにかかわらず、行頭にマッチするオペレータ (B<\\(ha>)  を改行直後の空文字列にマッチさせる。"
 
 #. type: Plain text
 #: build/C/man3/regex.3:126
@@ -1731,24 +1659,12 @@ msgstr "POSIX regex マッチング"
 
 #. type: Plain text
 #: build/C/man3/regex.3:139
-#, fuzzy
-#| msgid ""
-#| "B<regexec>()  is used to match a null-terminated string against the "
-#| "precompiled pattern buffer, I<preg>.  I<nmatch> and I<pmatch> are used to "
-#| "provide information regarding the location of any matches.  I<eflags> may "
-#| "be the bitwise-B<or> of one or both of B<REG_NOTBOL> and B<REG_NOTEOL> "
-#| "which cause changes in matching behavior described below."
 msgid ""
 "B<regexec>()  is used to match a null-terminated string against the "
 "precompiled pattern buffer, I<preg>.  I<nmatch> and I<pmatch> are used to "
 "provide information regarding the location of any matches.  I<eflags> is the "
 "bitwise-B<or> of zero or more of the following flags:"
-msgstr ""
-"B<regexec>()  は、 プリコンパイルされたパターンバッファー I<preg> をヌル文字"
-"で終端された文字列にマッチさせる。 I<nmatch> と I<pmatch> はマッチングの位置"
-"に関する情報を取得するのに用いられる。 I<eflags> には B<REG_NOTBOL> と "
-"B<REG_NOTEOL> のどちらか、もしくは両方のビットごとの B<OR> (bitwise-B<or>)  "
-"を指定し、以下で説明するようにマッチング動作を変化させる。"
+msgstr "B<regexec>()  は、 プリコンパイルされたパターンバッファー I<preg> をヌル文字で終端された文字列にマッチさせる。 I<nmatch> と I<pmatch> はマッチングの位置に関する情報を取得するのに用いられる。 I<eflags> には、以下のフラグのうち 0 個以上をビットごとの B<OR> (bitwise-B<or>) で指定する。"
 
 #. type: TP
 #: build/C/man3/regex.3:139
@@ -1786,10 +1702,9 @@ msgstr ""
 
 #. type: TP
 #: build/C/man3/regex.3:155
-#, fuzzy, no-wrap
-#| msgid "B<REG_EPAREN>"
+#, no-wrap
 msgid "B<REG_STARTEND>"
-msgstr "B<REG_EPAREN>"
+msgstr "B<REG_STARTEND>"
 
 #. type: Plain text
 #: build/C/man3/regex.3:175
@@ -2085,16 +2000,10 @@ msgstr "B<REG_ESIZE>"
 
 #. type: Plain text
 #: build/C/man3/regex.3:313
-#, fuzzy
-#| msgid ""
-#| "Compiled regular expression requires a pattern buffer larger than 64Kb.  "
-#| "This is not defined by POSIX.2."
 msgid ""
 "Compiled regular expression requires a pattern buffer larger than 64\\ kB.  "
 "This is not defined by POSIX.2."
-msgstr ""
-"正規表現のコンパイルに、64Kb 以上のパターンバッファーが必要。 これは POSIX.2 "
-"には定義されていない。"
+msgstr "正規表現のコンパイルに、64\\ Kb 以上のパターンバッファーが必要。 これは POSIX.2 には定義されていない。"
 
 #. type: TP
 #: build/C/man3/regex.3:313
@@ -2285,10 +2194,8 @@ msgstr "B<grep>(1), B<regex>(7)"
 
 #. type: Plain text
 #: build/C/man3/regex.3:389
-#, fuzzy
-#| msgid "The glibc manual section, I<Regular Expression Matching>"
 msgid "The glibc manual section, I<Regular Expressions>"
-msgstr "glibc マニュアルのセクション I<Regular Expression Matching>"
+msgstr "glibc マニュアルのセクション I<Regular Expressions>"
 
 #. type: Plain text
 #: build/C/man7/regex.7:40
@@ -2378,21 +2285,6 @@ msgstr ""
 
 #. type: Plain text
 #: build/C/man7/regex.7:106
-#, fuzzy
-#| msgid ""
-#| "An atom is a regular expression enclosed in \"I<()>\" (matching a match "
-#| "for the regular expression), an empty set of \"I<()>\" (matching the null "
-#| "string)\\*(dg, a I<bracket expression> (see below), \\(aq.\\(aq (matching "
-#| "any single character), \\(aq^\\(aq (matching the null string at the "
-#| "beginning of a line), \\(aq$\\(aq (matching the null string at the end of "
-#| "a line), a \\(aq\\e\\(aq followed by one of the characters \"I<^.[$()|*+?"
-#| "{\\e>\" (matching that character taken as an ordinary character), a \\(aq"
-#| "\\e\\(aq followed by any other character\\*(dg (matching that character "
-#| "taken as an ordinary character, as if the \\(aq\\e\\(aq had not been "
-#| "present\\*(dg), or a single character with no other significance "
-#| "(matching that character).  A \\(aq{\\(aq followed by a character other "
-#| "than a digit is an ordinary character, not the beginning of a bound"
-#| "\\*(dg.  It is illegal to end an RE with \\(aq\\e\\(aq."
 msgid ""
 "An atom is a regular expression enclosed in \"I<()>\" (matching a match for "
 "the regular expression), an empty set of \"I<()>\" (matching the null "
@@ -2407,33 +2299,10 @@ msgid ""
 "character).  A \\(aq{\\(aq followed by a character other than a digit is an "
 "ordinary character, not the beginning of a bound\\*(dg.  It is illegal to "
 "end an RE with \\(aq\\e\\(aq."
-msgstr ""
-"アトムの種類は以下の通り。\"I<()>\" に囲まれた正規表現 (その正規表現がマッチ"
-"する文字列にマッチする)、 中身が空の \"I<()>\" (null 文字列にマッチす"
-"る)\\*(dg、 I<ブラケット表現 (bracket expression> :後述)、 \\(aq.\\(aq (任意"
-"の 1 文字にマッチする)、 \\(aq^\\(aq (行頭の空白文字にマッチする)、 \\(aq$"
-"\\(aq (行末の空白文字にマッチする)、 \\(aq\\e\\(aq に \"I<^.[$()|*+?{\\e>\" "
-"のいずれか一文字を後置したもの (通常の文字として扱われ、その文字にマッチす"
-"る)、 \\(aq\\e\\(aq にそれ以外の文字を後置したもの\\*(dg (\\(aq\\e\\(aq がな"
-"い場合と同じように、その文字にマッチする\\*(dg)、 特に意味を持たない文字一つ "
-"(その文字にマッチする)。 \\(aq{\\(aq は数字以外の文字が後置されると通常の文字"
-"として扱われ、 繰り返し指定の始まりとはされない\\*(dg。\\(aq\\e\\(aq で終わる"
-"正規表現は不正なものとみなされる。"
+msgstr "アトムの種類は以下の通り。\"I<()>\" に囲まれた正規表現 (その正規表現がマッチする文字列にマッチする)、 中身が空の \"I<()>\" (null 文字列にマッチする)\\*(dg、 I<ブラケット表現 (bracket expression> :後述)、 \\(aq.\\(aq (任意の 1 文字にマッチする)、 \\(aq\\(ha\\(aq (行頭の空白文字にマッチする)、 \\(aq$\\(aq (行末の空白文字にマッチする)、 \\(aq\\e\\(aq に \"I<\\(ha.[$()|*+?{\\e>\" のいずれか一文字を後置したもの (通常の文字として扱われ、その文字にマッチする)、 \\(aq\\e\\(aq にそれ以外の文字を後置したもの\\*(dg (\\(aq\\e\\(aq がない場合と同じように、その文字にマッチする\\*(dg)、 特に意味を持たない文字一つ (その文字にマッチする)。 \\(aq{\\(aq は数字以外の文字が後置されると通常の文字として扱われ、 繰り返し指定の始まりとはされない\\*(dg。\\(aq\\e\\(aq で終わる正規表現は不正なものとみなされる。"
 
 #. type: Plain text
 #: build/C/man7/regex.7:120
-#, fuzzy
-#| msgid ""
-#| "A I<bracket expression> is a list of characters enclosed in \"I<[]>\".  "
-#| "It normally matches any single character from the list (but see below).  "
-#| "If the list begins with \\(aq^\\(aq, it matches any single character (but "
-#| "see below) I<not> from the rest of the list.  If two characters in the "
-#| "list are separated by \\(aq-\\(aq, this is shorthand for the full "
-#| "I<range> of characters between those two (inclusive) in the collating "
-#| "sequence, for example, \"I<[0-9]>\" in ASCII matches any decimal digit.  "
-#| "It is illegal\\*(dg for two ranges to share an endpoint, for example, "
-#| "\"I<a-c-e>\".  Ranges are very collating-sequence-dependent, and portable "
-#| "programs should avoid relying on them."
 msgid ""
 "A I<bracket expression> is a list of characters enclosed in \"I<[]>\".  It "
 "normally matches any single character from the list (but see below).  If the "
@@ -2445,40 +2314,10 @@ msgid ""
 "\\*(dg for two ranges to share an endpoint, for example, \"I<a-c-e>\".  "
 "Ranges are very collating-sequence-dependent, and portable programs should "
 "avoid relying on them."
-msgstr ""
-"I<ブラケット表現>は \"I<[]>\" によって閉じられた文字のリストである。 これは通"
-"常リスト中に存在している文字にマッチする。 (例外あり、後述。) リストが \\(aq^"
-"\\(aq で始まると、 I<ブラケット表現>はリストに存在してI<いない>文字一つにマッ"
-"チする (例外あり、後述)。 リスト中の二つの文字が \\(aq-\\(aq で区切られている"
-"場合は、 これは照合順序 (collating sequence) でその二つの文字に挟まれる、 す"
-"べての文字の並びを短縮したものとみなされる (両端含む)。 例えば \"I<[0-9]>\" "
-"は ASCII では 10 進の数字 (digit) のいずれかにマッチする。 二つの領域指定が端"
-"点を共有してはならない\\*(dg。 つまり \"I<a-c-e>\" のようなものは不正である。"
-"領域指定は照合順序に強く依存する。 したがって移植性の高いプログラムを作る場合"
-"は、 領域指定には頼らないほうが良いだろう。 【B<訳注>: 照合順序 (collating "
-"sequence) というのは、国際化 (Internationalization) に関連した用語です。アル"
-"ファベット順に単語を並 べる際には、言語によって並べる基準が異なります。照合順"
-"序は、その差異を 吸収するための仕組みです。 例えば、スペイン語では ch という"
-"文字並びを特別扱いするため、アルファベッ ト順が a, b, c, ch, d, e, ... の順に"
-"なるそうです。このようなシーケンス のことを collating sequence と言います。こ"
-"のとき `ch' という文字並びは、 単語整列の際にあたかも「一文字」のように扱われ"
-"ます。ここで、 順序付けを行う際に最小の単位となる、`a'、`b' の文字や `ch' の"
-"ような特別な文字並びなど、照合順序の要素のことを collating element と言いま"
-"す。collating sequence は、文字単位ではなく collating element を単位として定"
-"義されます。】"
+msgstr "I<ブラケット表現>は \"I<[]>\" によって閉じられた文字のリストである。 これは通常リスト中に存在している文字にマッチする。 (例外あり、後述。) リストが \\(aq\\(ha\\(aq で始まると、 I<ブラケット表現>はリストに存在してI<いない>文字一つにマッチする (例外あり、後述)。 リスト中の二つの文字が \\(aq-\\(aq で区切られている場合は、 これは照合順序 (collating sequence) でその二つの文字に挟まれる、 すべての文字の並びを短縮したものとみなされる (両端含む)。 例えば \"I<[0-9]>\" は ASCII では 10 進の数字 (digit) のいずれかにマッチする。 二つの領域指定が端点を共有してはならない\\*(dg。 つまり \"I<a-c-e>\" のようなものは不正である。領域指定は照合順序に強く依存する。 したがって移植性の高いプログラムを作る場合は、 領域指定には頼らないほうが良いだろう。 【B<訳注>: 照合順序 (collating sequence) というのは、国際化 (Internationalization) に関連した用語です。アルファベット順に単語を並 べる際には、言語によって並べる基準が異なります。照合順序は、その差異を 吸収するための仕組みです。 例えば、スペイン語では ch という文字並びを特別扱いするため、アルファベッ ト順が a, b, c, ch, d, e, ... の順になるそうです。このようなシーケンス のことを collating sequence と言います。このとき `ch' という文字並びは、 単語整列の際にあたかも「一文字」のように扱われます。ここで、 順序付けを行う際に最小の単位となる、`a'、`b' の文字や `ch' のような特別な文字並びなど、照合順序の要素のことを collating element と言います。collating sequence は、文字単位ではなく collating element を単位として定義されます。】"
 
 #. type: Plain text
 #: build/C/man7/regex.7:131
-#, fuzzy
-#| msgid ""
-#| "To include a literal \\(aq]\\(aq in the list, make it the first character "
-#| "(following a possible \\(aq^\\(aq).  To include a literal \\(aq-\\(aq, "
-#| "make it the first or last character, or the second endpoint of a range.  "
-#| "To use a literal \\(aq-\\(aq as the first endpoint of a range, enclose it "
-#| "in \"I<[.>\" and \"I<.]>\" to make it a collating element (see below).  "
-#| "With the exception of these and some combinations using \\(aq[\\(aq (see "
-#| "next paragraphs), all other special characters, including \\(aq\\e\\(aq, "
-#| "lose their special significance within a bracket expression."
 msgid ""
 "To include a literal \\(aq]\\(aq in the list, make it the first character "
 "(following a possible \\(aq\\(ha\\(aq).  To include a literal \\(aq-\\(aq, "
@@ -2488,14 +2327,7 @@ msgid ""
 "the exception of these and some combinations using \\(aq[\\(aq (see next "
 "paragraphs), all other special characters, including \\(aq\\e\\(aq, lose "
 "their special significance within a bracket expression."
-msgstr ""
-"文字 \\(aq]\\(aq そのものをリストに入れたい場合は、 最初の文字として指定すれ"
-"ば良い (\\(aq^\\(aq) の後に続けるのでも良い)。 文字 \\(aq-\\(aq そのものをリ"
-"ストに入れたい場合は、 最初か最後の文字とすれば良い。 あるいは領域指定の終端"
-"文字として指定しても良い。 \\(aq-\\(aq を領域指定の先頭文字に指定するに"
-"は、\"I<[.>\" と \"I<.]>\" で囲って、 照合順序の要素 (collating element: 後"
-"述) にすれば良い。 他の特殊文字 ( も含む) は、 ブラケット表現の内部ではすべて"
-"通常の文字として扱われる。"
+msgstr "文字 \\(aq]\\(aq そのものをリストに入れたい場合は、 最初の文字として指定すれば良い (\\(aq\\(ha\\(aq) の後に続けるのでも良い)。 文字 \\(aq-\\(aq そのものをリストに入れたい場合は、 最初か最後の文字とすれば良い。 あるいは領域指定の終端文字として指定しても良い。 \\(aq-\\(aq を領域指定の先頭文字に指定するには、\"I<[.>\" と \"I<.]>\" で囲って、 照合順序の要素 (collating element: 後述) にすれば良い。 他の特殊文字 ( も含む) は、 ブラケット表現の内部ではすべて通常の文字として扱われる。"
 
 #. type: Plain text
 #: build/C/man7/regex.7:143
@@ -2521,17 +2353,6 @@ msgstr ""
 
 #. type: Plain text
 #: build/C/man7/regex.7:155
-#, fuzzy
-#| msgid ""
-#| "Within a bracket expression, a collating element enclosed in \"I<[=>\" "
-#| "and \"I<=]>\" is an equivalence class, standing for the sequences of "
-#| "characters of all collating elements equivalent to that one, including "
-#| "itself.  (If there are no other equivalent collating elements, the "
-#| "treatment is as if the enclosing delimiters were \"I<[.>\" and \"I<.]>"
-#| "\".)  For example, if o and \\o'o^' are the members of an equivalence "
-#| "class, then \"I<[[=o=]]>\", \"I<[[=\\o'o^'=]]>\", and \"I<[o\\o'o^']>\" "
-#| "are all synonymous.  An equivalence class may not\\*(dg be an endpoint of "
-#| "a range."
 msgid ""
 "Within a bracket expression, a collating element enclosed in \"I<[=>\" and "
 "\"I<=]>\" is an equivalence class, standing for the sequences of characters "
@@ -2541,14 +2362,7 @@ msgid ""
 "\\o'o\\(ha' are the members of an equivalence class, then \"I<[[=o=]]>\", "
 "\"I<[[=\\o'o\\(ha'=]]>\", and \"I<[o\\o'o\\(ha']>\" are all synonymous.  An "
 "equivalence class may not\\*(dg be an endpoint of a range."
-msgstr ""
-"ブラケット表現の内部では、\"I<[=>\" と \"I<=]>\" に囲まれた照合順序の要素"
-"は、 等価クラス (equivalence class) となる。 これは、その要素と等価な要素すべ"
-"てからなる文字シーケンス (自身も含む) を表す。 他に等価な要素がなければ、 取"
-"り扱いは \"I<[.>\" と \"I<.]>\" で囲まれている場合と同じである。 例えば o と "
-"ou が等価クラスのメンバーであれば、 \"I<[[=o=]]>\", \"I<[[=\\o'o^'=]]>\", "
-"\"I<[o\\o'o^']>\" はすべて同じ意味になる。 等価クラスは領域指定の端点にはなれ"
-"ない\\*(dg。"
+msgstr "ブラケット表現の内部では、\"I<[=>\" と \"I<=]>\" に囲まれた照合順序の要素は、 等価クラス (equivalence class) となる。 これは、その要素と等価な要素すべてからなる文字シーケンス (自身も含む) を表す。 他に等価な要素がなければ、 取り扱いは \"I<[.>\" と \"I<.]>\" で囲まれている場合と同じである。 例えば o と \\o'o\\(ha' が等価クラスのメンバーであれば、 \"I<[[=o=]]>\", \"I<[[=\\o'o\\(ha'=]]>\", \"I<[o\\o'o\\(ha']>\" はすべて同じ意味になる。 等価クラスは領域指定の端点にはなれない\\*(dg。"
 
 #. type: Plain text
 #: build/C/man7/regex.7:161
@@ -2703,17 +2517,6 @@ msgstr ""
 
 #. type: Plain text
 #: build/C/man7/regex.7:230
-#, fuzzy
-#| msgid ""
-#| "If case-independent matching is specified, the effect is much as if all "
-#| "case distinctions had vanished from the alphabet.  When an alphabetic "
-#| "that exists in multiple cases appears as an ordinary character outside a "
-#| "bracket expression, it is effectively transformed into a bracket "
-#| "expression containing both cases, for example, \\(aqx\\(aq becomes "
-#| "\"I<[xX]>\".  When it appears inside a bracket expression, all case "
-#| "counterparts of it are added to the bracket expression, so that, for "
-#| "example, \"I<[x]>\" becomes \"I<[xX]>\" and \"I<[^x]>\" becomes \"I<[^xX]>"
-#| "\"."
 msgid ""
 "If case-independent matching is specified, the effect is much as if all case "
 "distinctions had vanished from the alphabet.  When an alphabetic that exists "
@@ -2723,14 +2526,7 @@ msgid ""
 "it appears inside a bracket expression, all case counterparts of it are "
 "added to the bracket expression, so that, for example, \"I<[x]>\" becomes "
 "\"I<[xX]>\" and \"I<[\\(hax]>\" becomes \"I<[\\(haxX]>\"."
-msgstr ""
-"マッチが大文字・小文字を無視するように指定されると、 アルファベット全体から大"
-"小文字の区別が無くなったかのような効果となる。 大文字・小文字を持つアルファ"
-"ベットがブラケット表現の外部で 通常の文字として現れると、 これは実効的に大小"
-"両方の文字のブラケット表現のように変換される。 すなわち \\(aqx\\(aq は "
-"\"I<[xX]>\" となる。ブラケット表現の内部に現れると、 大文字なら小文字が、小文"
-"字なら大文字がそのブラケット表現に加えられる。 すなわち \"I<[x]>\" は "
-"\"I<[xX]>\" に、\"I<[^x]>\" は \"I<[^xX]>\" になる。"
+msgstr "マッチが大文字・小文字を無視するように指定されると、 アルファベット全体から大小文字の区別が無くなったかのような効果となる。 大文字・小文字を持つアルファベットがブラケット表現の外部で 通常の文字として現れると、 これは実効的に大小両方の文字のブラケット表現のように変換される。 すなわち \\(aqx\\(aq は \"I<[xX]>\" となる。ブラケット表現の内部に現れると、 大文字なら小文字が、小文字なら大文字がそのブラケット表現に加えられる。 すなわち \"I<[x]>\" は \"I<[xX]>\" に、\"I<[\\(hax]>\" は \"I<[\\(haxX]>\" になる。"
 
 #. type: Plain text
 #: build/C/man7/regex.7:236
@@ -2746,21 +2542,6 @@ msgstr ""
 
 #. type: Plain text
 #: build/C/man7/regex.7:252
-#, fuzzy
-#| msgid ""
-#| "Obsolete (\"basic\") regular expressions differ in several respects.  "
-#| "\\(aq|\\(aq, \\(aq+\\(aq, and \\(aq?\\(aq are ordinary characters and "
-#| "there is no equivalent for their functionality.  The delimiters for "
-#| "bounds are \"I<\\e{>\" and \"I<\\e}>\", with \\(aq{\\(aq and \\(aq}\\(aq "
-#| "by themselves ordinary characters.  The parentheses for nested "
-#| "subexpressions are \"I<\\e(>\" and \"I<\\e)>\", with \\(aq(\\(aq and "
-#| "\\(aq)\\(aq by themselves ordinary characters.  \\(aq^\\(aq is an "
-#| "ordinary character except at the beginning of the RE or\\*(dg the "
-#| "beginning of a parenthesized subexpression, \\(aq$\\(aq is an ordinary "
-#| "character except at the end of the RE or\\*(dg the end of a parenthesized "
-#| "subexpression, and \\(aq*\\(aq is an ordinary character if it appears at "
-#| "the beginning of the RE or the beginning of a parenthesized subexpression "
-#| "(after a possible leading \\(aq^\\(aq)."
 msgid ""
 "Obsolete (\"basic\") regular expressions differ in several respects.  \\(aq|"
 "\\(aq, \\(aq+\\(aq, and \\(aq?\\(aq are ordinary characters and there is no "
@@ -2774,17 +2555,7 @@ msgid ""
 "the end of a parenthesized subexpression, and \\(aq*\\(aq is an ordinary "
 "character if it appears at the beginning of the RE or the beginning of a "
 "parenthesized subexpression (after a possible leading \\(aq\\(ha\\(aq)."
-msgstr ""
-"古い (\"基本\") 正規表現は、いくつかの点において異なる。 \\(aq|\\(aq, \\(aq+"
-"\\(aq, and \\(aq?\\(aq は通常の文字となる。 対応する機能は存在しない。繰り返"
-"し指定の区切りは \"I<\\e{>\" および \"I<\\e}>\" となる。\\(aq{\\(aq と "
-"\\(aq}\\(aq は、 単独では通常の文字として扱われる。 部分正規表現をネストする"
-"括弧は \"I<\\e(>\" および \"I<\\e)>\" となり、 \\(aq(\\(aq と \\(aq)\\(aq は"
-"単独では通常の文字となる。 \\(aq^\\(aq は正規表現の先頭か、 括弧でくくられた"
-"部分表現の先頭\\*(dgを除いて通常の文字となる。 \\(aq$\\(aq は正規表現の末尾"
-"か、 括弧でくくられた部分正規表現の末尾\\*(dgを除いて通常の文字となる。 "
-"\\(aq*\\(aq は、正規表現の先頭か、 括弧でくくられた部分文字列の先頭に置かれた"
-"場合は通常の文字となる (\\(aq^\\(aq) が前置されていてもよい)。"
+msgstr "古い (\"基本\") 正規表現は、いくつかの点において異なる。 \\(aq|\\(aq, \\(aq+\\(aq, and \\(aq?\\(aq は通常の文字となる。 対応する機能は存在しない。繰り返し指定の区切りは \"I<\\e{>\" および \"I<\\e}>\" となる。\\(aq{\\(aq と \\(aq}\\(aq は、 単独では通常の文字として扱われる。 部分正規表現をネストする括弧は \"I<\\e(>\" および \"I<\\e)>\" となり、 \\(aq(\\(aq と \\(aq)\\(aq は単独では通常の文字となる。 \\(aq\\(ha\\(aq は正規表現の先頭か、 括弧でくくられた部分表現の先頭\\*(dgを除いて通常の文字となる。 \\(aq$\\(aq は正規表現の末尾か、 括弧でくくられた部分正規表現の末尾\\*(dgを除いて通常の文字となる。 \\(aq*\\(aq は、正規表現の先頭か、 括弧でくくられた部分文字列の先頭に置かれた場合は通常の文字となる (\\(aq\\(ha\\(aq) が前置されていてもよい)。"
 
 #. type: Plain text
 #: build/C/man7/regex.7:260
@@ -2879,7 +2650,7 @@ msgstr "WORDEXP"
 #: build/C/man3/wordexp.3:24
 #, no-wrap
 msgid "2020-11-01"
-msgstr ""
+msgstr "2020-11-01"
 
 #. type: Plain text
 #: build/C/man3/wordexp.3:27
@@ -2987,14 +2758,6 @@ msgstr "展開"
 
 #. type: Plain text
 #: build/C/man3/wordexp.3:107
-#, fuzzy
-#| msgid ""
-#| "The expansion done consists of the following stages: tilde expansion "
-#| "(replacing ~user by user's home directory), variable substitution "
-#| "(replacing $FOO by the value of the environment variable FOO), command "
-#| "substitution (replacing $(command) or \\`command\\` by the output of "
-#| "command), arithmetic expansion, field splitting, wildcard expansion, "
-#| "quote removal."
 msgid ""
 "The expansion done consists of the following stages: tilde expansion "
 "(replacing \\(tiuser by user's home directory), variable substitution "
@@ -3002,11 +2765,7 @@ msgid ""
 "substitution (replacing $(command) or \\`command\\` by the output of "
 "command), arithmetic expansion, field splitting, wildcard expansion, quote "
 "removal."
-msgstr ""
-"実行される展開は、以下の段階で構成される: チルダ展開 (~user を user のホーム"
-"ディレクトリに置き換える)、 変数展開 ($FOO を環境変数 FOO の値に置き換え"
-"る)、 コマンド展開 ($(command) または \\`command\\` を command の出力で置き換"
-"える)、 算術展開、フィールド分割、ワイルドカード展開、クォートの除去。"
+msgstr "実行される展開は、以下の段階で構成される: チルダ展開 (\\(tiuser を user のホームディレクトリに置き換える)、 変数展開 ($FOO を環境変数 FOO の値に置き換える)、 コマンド展開 ($(command) または \\`command\\` を command の出力で置き換える)、 算術展開、フィールド分割、ワイルドカード展開、クォートの除去。"
 
 #. type: Plain text
 #: build/C/man3/wordexp.3:110
@@ -3270,14 +3029,7 @@ msgstr ""
 
 #. type: Plain text
 #: build/C/man3/wordexp.3:237
-#, fuzzy, no-wrap
-#| msgid ""
-#| "int\n"
-#| "main(int argc, char **argv)\n"
-#| "{\n"
-#| "    wordexp_t p;\n"
-#| "    char **w;\n"
-#| "    int i;\n"
+#, no-wrap
 msgid ""
 "int\n"
 "main(int argc, char **argv)\n"
@@ -3290,19 +3042,10 @@ msgstr ""
 "{\n"
 "    wordexp_t p;\n"
 "    char **w;\n"
-"    int i;\n"
 
 #. type: Plain text
 #: build/C/man3/wordexp.3:245
-#, fuzzy, no-wrap
-#| msgid ""
-#| "    wordexp(\"[a-c]*.c\", &p, 0);\n"
-#| "    w = p.we_wordv;\n"
-#| "    for (i = 0; i E<lt> p.we_wordc; i++)\n"
-#| "        printf(\"%s\\en\", w[i]);\n"
-#| "    wordfree(&p);\n"
-#| "    exit(EXIT_SUCCESS);\n"
-#| "}\n"
+#, no-wrap
 msgid ""
 "    wordexp(\"[a-c]*.c\", &p, 0);\n"
 "    w = p.we_wordv;\n"
@@ -3314,7 +3057,7 @@ msgid ""
 msgstr ""
 "    wordexp(\"[a-c]*.c\", &p, 0);\n"
 "    w = p.we_wordv;\n"
-"    for (i = 0; i E<lt> p.we_wordc; i++)\n"
+"    for (int i = 0; i E<lt> p.we_wordc; i++)\n"
 "        printf(\"%s\\en\", w[i]);\n"
 "    wordfree(&p);\n"
 "    exit(EXIT_SUCCESS);\n"
@@ -3324,49 +3067,3 @@ msgstr ""
 #: build/C/man3/wordexp.3:249
 msgid "B<fnmatch>(3), B<glob>(3)"
 msgstr "B<fnmatch>(3), B<glob>(3)"
-
-#~ msgid "2000-10-15"
-#~ msgstr "2000-10-15"
-
-#~ msgid "B<int glob(const char *>I<pattern>B<, int >I<flags>B<,>\n"
-#~ msgstr "B<int glob(const char *>I<pattern>B<, int >I<flags>B<,>\n"
-
-#~ msgid "B<         int (*>I<errfunc>B<) (const char *>I<epath>B<, int >I<eerrno>B<),>\n"
-#~ msgstr "B<         int (*>I<errfunc>B<) (const char *>I<epath>B<, int >I<eerrno>B<),>\n"
-
-#~ msgid "B<         glob_t *>I<pglob>B<);>\n"
-#~ msgstr "B<         glob_t *>I<pglob>B<);>\n"
-
-#~ msgid "B<void globfree(glob_t *>I<pglob>B<);>\n"
-#~ msgstr "B<void globfree(glob_t *>I<pglob>B<);>\n"
-
-#~ msgid "2012-07-28"
-#~ msgstr "2012-07-28"
-
-#~ msgid "2014-05-28"
-#~ msgstr "2014-05-28"
-
-#~ msgid "Multithreading (see pthreads(7))"
-#~ msgstr "マルチスレッディング (pthreads(7) 参照)"
-
-#~ msgid "The B<re_comp>()  and B<re_exec>()  functions are not thread-safe."
-#~ msgstr "関数 B<re_comp>() と B<re_exec>() はスレッドセーフではない。"
-
-#~ msgid "2013-02-11"
-#~ msgstr "2013-02-11"
-
-#~ msgid ""
-#~ "B<#include E<lt>sys/types.hE<gt>>\n"
-#~ "B<#include E<lt>regex.hE<gt>>\n"
-#~ msgstr ""
-#~ "B<#include E<lt>sys/types.hE<gt>>\n"
-#~ "B<#include E<lt>regex.hE<gt>>\n"
-
-#~ msgid "POSIX.1-2001."
-#~ msgstr "POSIX.1-2001."
-
-#~ msgid "2009-01-12"
-#~ msgstr "2009-01-12"
-
-#~ msgid "2014-12-31"
-#~ msgstr "2014-12-31"
index 2e44474..f89c186 100644 (file)
@@ -1,8 +1,5 @@
 # pagename,#complete,#remaining,#all
-fnmatch.3,37,15,52
-glob.3,81,6,87
-glob.7,44,6,50
-re_comp.3,33,1,34
-regex.3,101,11,112
-regex.7,41,7,48
-wordexp.3,70,6,76
+fnmatch.3,46,6,52
+glob.3,86,1,87
+regex.3,111,1,112
+wordexp.3,75,1,76
index 969620a..344c0e3 100644 (file)
 <TR><TD>tailq.3</TD><TD>60/73</TD><TD>17.81</TD></TR>
 <TR><TD>queue.7</TD><TD>39/88</TD><TD>55.68</TD></TR>
 <TR><TD ALIGN="center" COLSPAN=3 BGCOLOR="Yellow"><B>regexp</B></TD></TR>
-<TR class="over70"><TD>fnmatch.3</TD><TD>15/52</TD><TD>71.15</TD></TR>
-<TR class="over80"><TD>glob.3</TD><TD>6/87</TD><TD>93.10</TD></TR>
-<TR class="over80"><TD>glob.7</TD><TD>6/50</TD><TD>88.00</TD></TR>
-<TR class="over80"><TD>re_comp.3</TD><TD>1/34</TD><TD>97.06</TD></TR>
-<TR class="over80"><TD>regex.3</TD><TD>11/112</TD><TD>90.18</TD></TR>
-<TR class="over80"><TD>regex.7</TD><TD>7/48</TD><TD>85.42</TD></TR>
-<TR class="over80"><TD>wordexp.3</TD><TD>6/76</TD><TD>92.11</TD></TR>
+<TR class="over80"><TD>fnmatch.3</TD><TD>6/52</TD><TD>88.46</TD></TR>
+<TR class="over80"><TD>glob.3</TD><TD>1/87</TD><TD>98.85</TD></TR>
+<TR class="over80"><TD>regex.3</TD><TD>1/112</TD><TD>99.11</TD></TR>
+<TR class="over80"><TD>wordexp.3</TD><TD>1/76</TD><TD>98.68</TD></TR>
 <TR><TD ALIGN="center" COLSPAN=3 BGCOLOR="Yellow"><B>rpc</B></TD></TR>
 <TR class="over80"><TD>getrpcent.3</TD><TD>2/52</TD><TD>96.15</TD></TR>
 <TR class="over80"><TD>getrpcent_r.3</TD><TD>3/40</TD><TD>92.50</TD></TR>
 <TR class="over80"><TD>login.3</TD><TD>1/46</TD><TD>97.83</TD></TR>
 <TR><TD ALIGN="center" COLSPAN=3 BGCOLOR="Yellow"><B>wchar</B></TD></TR>
 <TR class="over80"><TD>mbsnrtowcs.3</TD><TD>1/47</TD><TD>97.87</TD></TR>
-<TR><TD COLSPAN=3>Total 684 pages</TD></TR>
+<TR><TD COLSPAN=3>Total 681 pages</TD></TR>
 </TABLE>
 </BODY></HTML>