|
rosegardenykです。
秀丸マクロヘルプでいうUnicodeとはどのUnicodeを指しているのかわからず頭が混乱
してます。
やろうとしていること
Hidemarnet Explorerで
@http://www.nankodo.co.jp/yosyo/xforeign/nejm/365/365sep/xf365-09-0787.htm
(日本語医学論文 抄録 shift-JISで変換可)
Ahttp://www.nejm.org/doi/full/10.1056/NEJMoa1010076 (英語医学論文 shift-
JIS にない特殊記号を含む)
表示内容をそれぞれ selectall し、通常の秀丸「無題」にcopy&paste してから、名
前をつけ、色々なマクロ処理をしようとしています。
openfile の Help の説明では次のようにあります。
エンコード(文字コード/ファイル形式)の指定は以下の通りです。
sjis Shift-JIS(通常のファイル形式)
unicode Unicode(UTF-16)
utf7 Unicode(UTF-7)
utf8 Unicode(UTF-8)
(以下はV8.00以降)
unicode_be Unicode(UTF-16,Big-Endian)
utf32 Unicode(UTF-32)
utf32_be Unicode(UTF-32,Big-Endian)
ケース1:そもそも、webにあるAのHTMLに使われているのはUTF-16 なのでしょう
かUTF-8なのでしょうか?
UTF-7やUTF-16,Big-Endian は 特別な原語(ウイグル語とか)にのみに使うのでしょ
うか? 言い換えると、英語の医学論文の世界では気にしなくてもよいでしょうか?
エンコードのの知識がないものですから、頭が混乱しています。
ケース2:上記で保存しようとするとAに 「shift-JIS」に無い文字(例、Ͱ
4;)が含まれているため変更MSGが表示されます。このMSGの「エンコードの種類を変
更して保存する」のデフォルト値が「Unicode(UTF-16)」になっています。
ちなみに、秀丸エディターの「文字コード」で調べると 「≤」はUnicode:0x
2264, Unicode(UTF-8):0xE289A4, shift-JIS, EUC, JISはコードなしです。
普通、 Help で断りなしで Unicode というと UTF-16 を指すのでしょうか?
ケース3:unichar() の Help では
char関数のUnicode版です。(V5.10以降)
n1のUnicodeの値を文字列にして返します。
返す値は文字列型です。
例
unichar( 0x3042 ) … "あ"が返ってきます。
とありますが、
//Test Macro
message "1 unichar(0xE38182) = " + unichar(0xE38182); → "・"のような記号
が返ってきました。
message "2 unichar(0x0342) = " + unichar(0x3042); →"あ"が返ってきました。
endmacro;
これを見ると、unichar は UTF8 は扱ってないようですが、ここでいうUnicodeの値
とはUTF-16 を指すのでしょうか?
ケース3:マクロからのdllfunc呼び出しの「ユニコード文字を扱う時の注意、およ
び、SetUnicodeIndexAutoConvert関数 」
これを」読んで桁ずれの問題を
#n = dllfunc("SetUnicodeIndexAutoConvert", 1);
で解決できましたが、これはどの Unicode に対しても有効なのでしょうか?
ケース4:「やろうとしていること」のファイルをUnicodeで保存し、日英のっ用語
集を適用して、日→英、英→日 用語置き換えを考えています。
Hidemarnet Explorer以外からも、直接 HTML source からタグ取り除いた文を扱うこ
とも考えています。Unicodeの UTF-16,UTF-8 のどちらで変換するのが安全でしょう
か?
用語集は同じエンコードで統一することを考えていますが、仮に特殊文字を一切含ま
ない場合は、shift-JISでエンコードしておいても問題は起きないでしょうか?
また、ケース3以外の場合も何か考慮しておく点があるでしょうか?
|
|