[Tokyo.pm] Unicode combining character sequence
utashiro @ iij.ad.jp
utashiro @ iij.ad.jp
2000年 10月 17日 (火) 11:54:40 CDT
Perl 5 Pocket Reference 3rd edition の翻訳の仕上げをやっています。
判断が付かない部分が何点かあるので、相談させてください。
----------------------------------------------------------------------
付録の関連リンク情報に追加するのは、tokyo.pm.org だけでいいですか。
----------------------------------------------------------------------
入出力に『discipline』という概念が導入されているのですが、これを『作法』
と訳そうかと思ってます。どうでしょう?
----------------------------------------------------------------------
Pocket Reference では、"v-string" という表現が使用されています。これは、
v1.2.3.4 のような文字列表記のことなんですが、なんと訳そうか悩んでます。
ちなみに、Perl のドキュメントにはこの用語は出て来ません。
今のところ、そのまま v-string にしてあります。
----------------------------------------------------------------------
perldoc perlunicode には
o The special pattern \X match matches any extended
Unicode sequence (a "combining character sequence" in
Standardese), where the first character is a base
と書いてあるのですが、Unicode 3.0 にも JISX0221-1995 にも combining
character sequence という言葉は出て来ません。
JISX0221-1995 によれば combining character は「結合文字」で、base
character (基底文字) に combining character を連結することで composite
sequence (合成列) を構成することになっています。
perlunicode の combining character sequence は、この composite
sequence と同じだと考えていいのでしょうか。
ただ、Unicode 3.0 の英文規格には、どうも composite sequence という記述
が見付からないのが不思議です。combination というのが近いのかもしれない。
具体的には、リファレンス34ページの
\X
Match extended Unicode ``combining character sequence.''
をどう訳そうか悩んでいて、今のところ
Unicode の拡張結合文字列にマッチする。
となっています。で、どうもこの「結合文字列」というのが、Unicode 的に正
しい用語かわからないし、その前の「拡張」というのも、なんか意味不明だな
あ、と思っているところです。
だいたい、結合文字だけをつなげても意味無いので、結合文字列って変ですよ
ねえ。でも、合成列というのも、どうも気に入らないのです。
----------------------------------------------------------------------
もう一点 Unicode に関することで、"unicode property names" というのがあり
ます (リファレンス 35ページ)。perlre には、
If the utf8 pragma is used, the following equivalences to
Unicode \p{} constructs hold:
alpha IsAlpha
alnum IsAlnum
ascii IsASCII
cntrl IsCntrl
digit IsDigit
graph IsGraph
lower IsLower
print IsPrint
punct IsPunct
space IsSpace
upper IsUpper
word IsWord
xdigit IsXDigit
のような記述があります。さらに、perlunicode では、IsMirrored,
InTibetan などが例として挙げられています。
"property" については、Unicode の仕様で定義されています。しかし、
"property name" は見付かりません。つまり、上の IsAlpha, IsAlnum などの
名前はどこで定義されているのかが不明なのです。property name に Is が付
いているとは思えないので、それは外してもいいです。
Unicode の仕様を読んでも、プログラミングインタフェースに関する記述は見
当たりません。何か別の仕様で定義されているのでしょうか?
具体的には、35ページの
POSIX classes are used inside character classes, like [[:alpha:]].
These are the POSIX classes and their Unicode property names:
をどう訳すかなのですが、現在は
以下に、POSIX クラスとその Unicode 属性名を示す。
となっています。
----------------------------------------------------------------------
これは、多分僕が不勉強なせいで、質問するのがはばかられるのですが、変数
が "fully qualified" という表現があります。これは、一体どのような状態
を表すもので、日本語では一般にどう言われているのでしょうか?
たとえば perldoc strict に、
strict vars
This generates a compile-time error if you access a
variable that wasn't declared via "our" or use vars,
localized via my(), or wasn't fully qualified.
という記述があります。
----------------------------------------------------------------------
--utashiro
p.s. 考えすぎでしょうか。
Tokyo-pm メーリングリストの案内