作者: Bruce.
日時: 2004/11/19(19:07)
Bruce. です。

<200411181733.AA00502@...-home.asahi-net.or.jp>

> >>>いいたかったのは、gawkも GNU grep もオリジナルからマルチバイト文字対応に
> >>>なってます。が、GNU sed に関しては y コマンドだけという現状です。
> 
>  以下の internationalization, localization についての説明で長いあいだよ
> く分からなかったことが氷解しました。 なるほど、なるほど。 でも、何で sed
> だけ特殊なんでしょうね…?

どうもよくよく見てみるに、一応オリジナルの状態でマルチバイト文字対応は
できているようです。NEWSファイルやChangelogファイルに yコマンド以外の
記載がないので勘違いしていました。

> > 仕組みです。日本語固有の対応はlocalizationですね。それぞれi18n、l10nという
> > 略され方をします。
> 
>  なるほど、なるほど。φ(.. )メモメモ コードネームまで教えていただいて。

コードネームというか、略称ですね。

> > D:\home>perl -Mencoding=sjis -e "$_= q!あ!;y/あ/a/; print $_;"
> > a
> 
>  例によって(実況中継ができてなかったですが、僕がコマンドラインで試験し
> ていた様子は、Bruce.  さんには見てとるように分かっていたと思いますので、
> 例によって、です)、コマンドラインから「あ」を入れるつもりだったのですね。
> でも、 きっと、$_= q!あ!; の部分で、すでに入力まで指定されてる形だった
> んですよね。 お手数をおかけしまして m(__)m。a  と出力されました。うう、
> perl は読めない…。

$_という変数はデフォルト変数といいまして、いろいろな処理の暗黙の引数と
なります。で、 y/あ/a/; と書いたときの置換対象がそれなわけです。
複数行に分けて書くと

    $_ = q!あ!; # 変数 $_ に文字列 "あ"を設定する。コマンドライン上の指定で
                # ""によるくくりができないので q!!で代用している
                # ''でも可
    y/あ/a/;    # 置換コマンド実行
    print $_;   # 結果を出力

なお、オプション指定の -Mencoding=sjis ですが、見当がつくかもしれませんが
Perlに対して入出力で扱う文字列がShift_JISであることを指示しています。
Perlは寛容なのでsjisとかいてもShift_JIS指定であることを理解してくれます。

>  じつは、ここで滞りました。僕らユーザの場合は、そう易々FSWに文句をた
> れてはいけない、というのが不文律でして、そして、つい先日、その禁を犯した
> ばかりでして、そのことは身内のものにばれてたりしまして、そして、そのうえ、
> あっちの皆様もここを見てたりして。(大々的に宣伝して、誘ったりもしてて
> < mbsed です)

まあ節度とか限度というものをわきまえた上であればリクエストを出したりするのは
いいと思いますよ。もちろん、それが必ずかなえられるわけではないということを
理解してもらわなければなりませんが。「神聖にして犯すべからず」な存在ではない
ことは確かでしょう。

が、ソースコードを公開してくださっている方々には日々感謝しております。おかげで
勉強できます。その点でも特にserowさんには足を向けて寝られません。GNUの各種プロ
グラムやPerl、Ruby、Pythonにも勉強させてもらいました。いや、これは進行形か。

>  Vzで正規表現を可能した人とWzでそれを担当している人は、同じ人だった
> りします。で、確かに、今となっては不足を感じる場面も多いんですよね。でも、
> 少なくともVzの正規表現部分に関しては、不満を言ったりしていけなかったり
> するのです。市販ソフトに同梱されてるとはいえ、FSWなので。祟られちゃう
> んですよ、それこそ。
>  でも、これは Bruce. さんには関係のないことです。どうぞ、頭に来てくださ
> い。よかったら、VWXの(だいぶ変な)仕様、直していただけたら、10人くらい
> 死ぬほど感謝する人たちがおりますが…。アセンブラのはずです。あうあう。ソ
> ースがなかったりします。

VWXって常駐ソフトじゃありませんでしたっけ?
#これでも元Vzユーザー
DOS時代のプログラミングの記憶は大分怪しくなってますんで厳しいですね。アセンブ
ラなのは無問題ですが。ソースがあれば、ね。逆アセンブラ使う?(笑)

ところで私の思い込みかもしれませんが「フリーソフトウェア」というのはソースが
公開されているものではないでしょうか。まあ、Stallmanのいうフリーソフトウェアが
そういうものだから、ということもありますが。となると、実行プログラム自体は
自由にやり取りできるがソースコードは公開していないというものはなんと呼ぶので
しょう? フリーソフト(笑)? (ウェアを略す) オンラインソフトというのもしっくり
こないしこれはシェアウェアも含みますしね。

>  おそらくは興味のない話を長々しまして、失礼いたしました。
雑談もまた楽しいものでして。

-- 
木村浩一
  I thought what I'd do was, I'd pretend I was one of those deaf-mutes.
  mail kbk@...
  web  www.kt.rim.or.jp/~kbk/