拡張シフトJISNo.11237
イオ さん 02/02/06 01:34
 
秀丸担当さま、みなさま、初めまして。
イオといいます。よろしくお願いします。
数年来に渡って「秀丸エディタ」を愛用させていただいてます。

早速ですが、本題に入らせていただきます。

私、本年1月より「拡張シフトJISプロジェクト」というのを開始しました。
「拡張シフトJIS」とは何ぞや、といいますと「シフトJIS」の未使用コードを
使ってユニコードの文字を使えるようにしよう、というものです。
文字が足らない、という日本人共通の悩みにお答えできるのではと思っています。

「拡張シフトJIS」の最大の売りは、既存のシフトJIS が変換なしに
そのまま使えるという点です。これがユニコードではそうはいきません。
いったん、シフトJIS 形式をユニコード形式に変換させる必要があります。
しかし、拡張シフトJIS 形式はシフトJIS 形式を内包していますので
変換する必要はありません。ソフトが対応していれば、いきなり拡張文字を
使うことができます。

また、既存のシフトJIS 用のソフトで「拡張シフトJIS」を見ると
拡張された文字だけ文字化けして、既存の文字には影響がありません。
これもユニコードだと、全ての文字が文字化けしてしまいます。

既に「拡張シフトJIS」のテキスト・ビューワと文字コード表を作りまして
私のページにて公開しています。プログラム・ソースも公開しています。
しかし「拡張シフトJIS」を普及させるには、どうしてもテキスト・エディタが
必要になります。私もプログラマーの端くれですので、テキスト・エディタを
作ることが如何に大変なことか知っています。

そこでお願いに参りました。
「秀丸エディタ」にて「拡張シフトJIS」をサポートして頂けないでしょうか?

御高名な「秀丸エディタ」でサポートしていただければ、普及にも
大いに弾みがつきます。

『よしサポートしてやろう』と思われましたら、以下のページを御覧下さい。

  http://www.ksky.ne.jp/~smile4me/charcode/newgen.htm

『「拡張シフトJIS」なんて普及するはずないさ』と思われましたら
無視して下さって構いません。(;_;)


[ ]
RE:11237 拡張シフトJISNo.11245
秀丸担当 さん 02/02/06 16:05
 
>そこでお願いに参りました。
>「秀丸エディタ」にて「拡張シフトJIS」をサポートして頂けないでしょうか?

秀丸エディタ内部でも似たようなことはしていますが、文字コードとして
ひとつの規格にまでもっていくには難しいと思います。
Unicodeのファイルを拡張シフトJISに変換するプログラムがあれば、それ
をマクロで呼び出せますし、他のエディタでも汎用的に使えそうな気がし
ていいのではないでしょうか。

[ ]
RE:11245 拡張シフトJISNo.11272
イオ さん 02/02/09 06:16
 
返事が遅れまして申し訳ありません。
実は風邪をひいてしまい、寝込んでおりました。
今年の風邪は結構凶悪のようです。皆さんもお気をつけ下さい。

>秀丸エディタ内部でも似たようなことはしていますが、文字コードとして
>ひとつの規格にまでもっていくには難しいと思います。

秀丸エディタでの内部コードはどの様になっているのでしょうか?
これまでの会議ログを見た限りでは「シフトJIS」ベースと書かれている
ようですが...

それと、これはまったくの偶然だったのですが、おしょうさんが #11171 で
書かれた「S-JIS と unicode が「混在」するような状況」を具現化するのが
「拡張シフトJIS」(或いは秀丸エディタ内部コード?)と言ってもよいと思います。

折角、ユニコード文字が入力できるのに「シフトJIS」形式で保存したがために、
'?'になってしまって取り返しがつかなくなってしまうよりは、
強引にでも上位互換の「拡張シフトJIS」形式で保存してしまった方が、
皆さんが後悔しなくて済むのではないでしょうか。

規格化ですが、当の「シフトJIS」ですら、当初はマイクロソフト株式会社の
私設文字コードであったものが一般に普及し、デ・ファクト・スタンダードに
なり、最終的に JIS 規格に取り入れられたという経歴だったはずなので、
余り気にしていません。
「拡張シフトJIS」も普及さえすれば規格化されるでしょう。


>Unicodeのファイルを拡張シフトJISに変換するプログラムがあれば、それ
>をマクロで呼び出せますし、他のエディタでも汎用的に使えそうな気がし
>ていいのではないでしょうか。

了解しました。
実は機種依存文字の処理をどうしようか悩んでいたところなのですが、
取りあえず作成してみます。


[ ]
RE:11272 拡張シフトJISNo.11273
える さん 02/02/09 09:26
 
>規格化ですが、当の「シフトJIS」ですら、当初はマイクロソフト株式会社の
>私設文字コードであったものが一般に普及し、デ・ファクト・スタンダードに
>なり、最終的に JIS 規格に取り入れられたという経歴だったはずなので、
>余り気にしていません。

CP932(ShiftJIS) は PC/AT 規格を IBM が制定した時に、国際化規格として
定義したものではなかったでしょうか?

Microsoft はそれに独自拡張を行い MS932 などと通称される別の文字セット
を利用しています。
( なので Windows はデフォルトで ShiftJIS を完全に扱うことはできません )

IBM は IBM で CP932 にさらに文字を足した IBM932 なんてのを作ってたり
その上位文字セットの CP934 なんてのもあったりしますよね。

秀丸は、Windows の標準文字セットである MS932 を利用していると思います。
ShiftJIS の「〜」を貼り付けると unicode 扱いになっちゃいますしね。

[ ]
RE:11273 拡張シフトJISNo.11312
イオ さん 02/02/14 04:27
 
えるさん、はじめまして。ご返答ありがとうございます。
風邪がぶり返して、再度へたばっておりました。

>CP932(ShiftJIS) は PC/AT 規格を IBM が制定した時に、国際化規格として
>定義したものではなかったでしょうか?

この話、本当でしょうか?

以下のページを見ますと...
    http://www.horagai.com/www/moji/code3.htm

要約すれば、1982年に、三菱電機の16ビットパソコン MULTI 16 に MS-BASIC を
移植するため、日本のアスキーマイクロソフト社(当時)がシフトJISを作り出した、
と書いてあります。
こちらの話が本当なら、米IBM 社、米マイクロソフト社、PC/AT や MS-DOS すら
関係ないことになりますが...

それと「コードページ」って国際規格なのでしょうか?
米IBM 社の私製規格にすぎないと思うのですが。

IBM 社の何かの本の 932 頁に「シフトJIS」の文字コード表が載っかっていたため
「シフトJIS」のことを「コードページ932」と呼ぶようになった、という話を
どこかで読んだような記憶があります。


>Microsoft はそれに独自拡張を行い MS932 などと通称される別の文字セット
>を利用しています。
>( なので Windows はデフォルトで ShiftJIS を完全に扱うことはできません )
>
>IBM は IBM で CP932 にさらに文字を足した IBM932 なんてのを作ってたり
>その上位文字セットの CP934 なんてのもあったりしますよね。

これも違うと思います。

単純に以下さえ満たしていれば「シフトJIS」に該当するはずです。

    0x21〜0x7E      JIS X 0201 ローマ字
    0xA1〜0xDF      JIS X 0201 カタカナ
    0x8140〜0x9FFC  JIS X 0208 の一部
    0xE040〜0xEFFC  JIS X 0208 の残り

他の部分や空いている部分は「未定」です。
極端な話、残り全部がハートマークになっていても「シフトJIS」に該当します。

コードページのほうも、おそらくは、

    MS932            Microsoft 版シフトJIS
    CP932 = IBM932   IBM 版シフトJIS
    CP942 = IBM942   IBM932+α
    CP943 = IBM943   IBM942+α

というだけの意味でしょう。
天下の IBM が決めました、という以上の意味は無いと思われます。
(もちろん、機種依存部分が明確になるという利点はありますが)

ですので、好き勝手な文字を追加した

    える932    える版シフトJIS
    イオ932    イオ版シフトJIS

というコードページも有りかもしれません(まったく普及はしないでしょうが)。

それと「シフトJIS」に「デフォルト」は存在しないはずです。
(強いて上げるとすれば、始祖である「MULTI 16 版シフトJIS」が、
そうと言えるかもしれませんが、すでに消滅してしまってます)
ただ単に、各社各様(各機種各様)の「シフトJIS」が存在しているだけです。
全ての種類の「シフトJIS」は等価値です。上も下もありません。


>秀丸は、Windows の標準文字セットである MS932 を利用していると思います。
>ShiftJIS の「〜」を貼り付けると unicode 扱いになっちゃいますしね。

どういう意味でしょうか?
「〜」という具合に、ちゃんとシフトJIS として貼り付いておりますが。


[ ]
RE:11312 拡張シフトJISNo.11314
さん 02/02/14 09:18
 
>こちらの話が本当なら、米IBM 社、米マイクロソフト社、PC/AT や MS-DOS すら
当時の西氏とゲイツ氏はまぶだちですから、おんなじといえばおんなじでは?

>それと「コードページ」って国際規格なのでしょうか?
微妙な線です。GR、GLへの投射とかのことを言うこともあるのでそれであれば、立派
なISO規格の表現ですね。

>それと「シフトJIS」に「デフォルト」は存在しないはずです。
JIS X 0213:2000 Shift-JISX0213があります。
http://www.asahi-net.or.jp/~wq6k-yn/code/enc-x0213.html
正式に規格化されたのは1997年らしいですね。
ちゃんと調べましょう。

[ ]
RE:11314 拡張シフトJISNo.11316
アルビレオ さん 02/02/14 11:04
 
>>こちらの話が本当なら、米IBM 社、米マイクロソフト社、PC/AT や MS-DOS すら
>当時の西氏とゲイツ氏はまぶだちですから、おんなじといえばおんなじでは?

会社が製品として作り出したものに対して、「経営者同士がまぶだちだからおんなじ
では?」というのは乱暴すぎる話だと思いますが。
アスキーマイクロソフトは米マイクロソフトの子会社だったわけでもないですし。

[ ]
RE:11312 拡張シフトJISNo.11322
える さん 02/02/14 13:17
 
>>CP932(ShiftJIS) は PC/AT 規格を IBM が制定した時に、国際化規格として
>>定義したものではなかったでしょうか?
>この話、本当でしょうか?
>以下のページを見ますと...
>    http://www.horagai.com/www/moji/code3.htm
>要約すれば、1982年に、三菱電機の16ビットパソコン MULTI 16 に MS-BASIC を
>移植するため、日本のアスキーマイクロソフト社(当時)がシフトJISを作り出した、
>と書いてあります。

どうなんでしょ、私も fj. で読んだくらいなので詳しいことはしりません。

>それと「コードページ」って国際規格なのでしょうか?

国際化規格の1つではありますが、それが国際規格にまでなって
いるかどうかまでは知りません。

>全ての種類の「シフトJIS」は等価値です。上も下もありません。

ShiftJIS に限った話ではないですが、どれが上とか下とかいう
問題ではないでしょう。

>>秀丸は、Windows の標準文字セットである MS932 を利用していると思います。
>>ShiftJIS の「〜」を貼り付けると unicode 扱いになっちゃいますしね。
>どういう意味でしょうか?
>「〜」という具合に、ちゃんとシフトJIS として貼り付いておりますが。

これは unicode の mapping の問題もあるんですが、「〜」の文字コード
は2つあって、Windows(MS932) の「〜」とそれ以外の「〜」の二種類が
あります。後者を秀丸に貼り付けると unicode 文字として張り付きます。

これの問題は Windows のマルチフォーマットのクリップボードの扱いと
unicode のマッピングの問題に依存するところが大きいので例としては問
題がありましたね。

ShiftJIS の形式の文字といえば、すでに日本国外にも普及しだした
i-mode 絵文字もありますね。
今は 0xF8xx, 0xF9xx, 0xFAxx くらいが埋められているんでしたっけ。
こっちは今後もどんどん増えていきそうですね。

[ ]
RE:11322 拡張シフトJISNo.11341
イオ さん 02/02/15 00:06
 
えるさん、小さん、アルビレオさん、ご返答ありがとうございます。

>>それと「コードページ」って国際規格なのでしょうか?
>微妙な線です。GR、GLへの投射とかのことを言うこともあるのでそれであれば、立
>派なISO規格の表現ですね。

??? それは ISO 2022 そのものの動作では?
それに「コードページ932」の「シフトJIS」は GR, GL は関係ないと思うのですが。

>>それと「シフトJIS」に「デフォルト」は存在しないはずです。
>JIS X 0213:2000 Shift-JISX0213があります。
>http://www.asahi-net.or.jp/~wq6k-yn/code/enc-x0213.html
>正式に規格化されたのは1997年らしいですね。

いつの間に「シフトJISX0213」が「デフォルト」になったのでしょうか?
JIS 規格「7ビット及び8ビットの2バイト情報交換用符号化拡張漢字集合」
http://hp.vector.co.jp/authors/VA018031/i/jisx0213-2000/index.ja.html
見ましたが、「デフォルト」とは一言も書かれていません。

それに「JIS X 0213」が制定されたのは 2000年です。
1997年は「JIS X 0208」が改正されて「シフトJIS」が規格化された年です。


>>それと「コードページ」って国際規格なのでしょうか?
>国際化規格の1つではありますが、それが国際規格にまでなって
>いるかどうかまでは知りません。

おっしゃる意味がわかりません。(;_;)
「国際化規格」と「国際規格」は、どういう違いがあるのでしょうか?
私には同じ意味にしか思えないのですが。


>>「〜」という具合に、ちゃんとシフトJIS として貼り付いておりますが。
>これは unicode の mapping の問題もあるんですが、「〜」の文字コード
>は2つあって、Windows(MS932) の「〜」とそれ以外の「〜」の二種類が
>あります。後者を秀丸に貼り付けると unicode 文字として張り付きます。

あぁ、そういう意味でしたか。
確かに Windows のシフトJIS⇔ユニコード変換は数ヶ所ヘンですよね。

実は昨年、CP_932.NLS を改造して、正しい(というかJIS規格仕様に)変換に
なるように改造してみたのですが、一部のファイルが読めなくなったりしたので
元の変換に戻したことがあります。


※なんか、だんだん本論から離れていっているような気が...


[ ]
RE:11272 拡張シフトJISNo.11527
イオ さん 02/03/07 01:32
 
イオです。

「拡張シフトJIS」と「ユニコード(UTF-16)」の相互変換を実装しました。
加えて、それを使った「拡張シフトJISで開く」「拡張シフトJISで保存」の
マクロも、以下のページにて公開いたしました。

  http://www.ksky.ne.jp/~smile4me/charcode/xsjishm.htm


[ ]
RE:11527 拡張シフトJISNo.11535
秀丸担当 さん 02/03/07 19:26
 
>「拡張シフトJIS」と「ユニコード(UTF-16)」の相互変換を実装しました。
>加えて、それを使った「拡張シフトJISで開く」「拡張シフトJISで保存」の
>マクロも、以下のページにて公開いたしました。

すばやいですね。
ダウンロードして、やってみることができました。
ほぼうまくいっていると思います。

[ ]
RE:11322 「〜」の扱いについてNo.11873
kazkun さん 02/05/16 11:16
 
はじめまして。古い話なのですが、ご容赦ねがいます。

>>>ShiftJIS の「〜」を貼り付けると unicode 扱いになっちゃいますしね。
>>どういう意味でしょうか?
>>「〜」という具合に、ちゃんとシフトJIS として貼り付いておりますが。
>
>これは unicode の mapping の問題もあるんですが、「〜」の文字コード
>は2つあって、Windows(MS932) の「〜」とそれ以外の「〜」の二種類が
>あります。後者を秀丸に貼り付けると unicode 文字として張り付きます。
>
>これの問題は Windows のマルチフォーマットのクリップボードの扱いと
>unicode のマッピングの問題に依存するところが大きいので例としては問
>題がありましたね。

私は詳しくないので、単なるユーザとしての希望なのですが、以下のような
トラブルを抱えており、それを解決してもらえないかなと常に思っており
ました。

Netscape communicator (4.75) にて 「〜」を含む文字列をコピー。
(その際元のHTMLの文字コードは問いません。SJISで再現します)

新規作成された秀丸(3.15)のウィンドウにペースト。
「〜」が左右反転された文字に化けます。多分上で言われている別字でしょう。

Netscape 6やIEなんかでは再現しませんし、秀丸のウィンドウの文字コードが
SJISなどになっていても再現しません。多分NC4の問題なのでしょう。

これ、いつの頃からか出てきて、ずっと困っていました。今回上記
メッセージを見掛けましたので、お願いに一筆啓上しております。

で、もしそれの対応が無理なのであれば、マクロでの対応を考えていますが、
マクロのcode定数ではunicode固有文字の調査は不可能で困っています。
ということで、code定数のunicode版の定数名を教えて頂きたく、
また存在しないのであれば代替え手段を伝授して頂きたく、
あるいはその手段の追加をお願いいたします。

ちなみに上記「〜」の別字のcodeは0000でした。判別できましぇ〜ん。

[ ]
RE:11873 「〜」の扱いについてNo.11874
kazkun さん 02/05/16 11:22
 
環境を書くのを忘れていました。

NT4SP6a日本語です。
Netscape communicator は 4.75 日本語
秀丸は 3.15 日本語

未だcommunicatorが捨てられない理由があるので、他のブラウザを使う
という回答はナシという事でお願いします。

[ ]
RE:11873 「〜」の扱いについてNo.11875
Arimac さん 02/05/16 12:19
 
ファイルタイプ別の設定→その他で
「Unicodeを使用可能にする」のチェックを
外すのではどうでしょうか?
文字通りUnicodeは使えなくなりますが。


[ ]
RE:11873 「〜」の扱いについてNo.11878
秀丸担当 さん 02/05/16 18:20
 
>マクロのcode定数ではunicode固有文字の調査は不可能で困っています。
>ということで、code定数のunicode版の定数名を教えて頂きたく、
>また存在しないのであれば代替え手段を伝授して頂きたく、
>あるいはその手段の追加をお願いいたします。
>
>ちなみに上記「〜」の別字のcodeは0000でした。判別できましぇ〜ん。

現在のところ、マクロでは、Unicode独自文字を処理することができません。
検討しておきます。

[ ]
RE:11875 「〜」の扱いについてNo.11884
kazkun さん 02/05/16 21:23
 
そういえばそうでした。

>ファイルタイプ別の設定→その他で
>「Unicodeを使用可能にする」のチェックを
>外すのではどうでしょうか?
>文字通りUnicodeは使えなくなりますが。

Unicodeを使うことも多少はあるので、
「Unicode、UTF-8〜」を選択した上で、
「新規作成時も編集可」のチェックを外して対応しました。

ありがとうございました。

[ ]