[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 メーリングリストの案内