過去ログ NO.1116136250
□ 相馬 [2005年05月14日17時57分]Hyper_Mailを設置させていただきました メッセージ送信の時に下記の文字を入力すると メッセージが下記のところで切れてしまいます
「"」
例:あいうえお"かきくけこ
届くメール:あいうえお
のようになってしまいます 何か対処方法ないでしょうか?
□ NXer [2005年05月15日14時50分] はじめまして。NXerです。
>例:あいうえお"かきくけこ
という文字列でダブルクオート(wq)以降「かきくけこ」が 無視される現象ですが、日本語ベースなら全角のwqを使い 問題は発生しないと思います。 wqとしての入力前に半角/全角を切り替え、入力後また全角 仮名漢字変換に戻されていますね。(どうして一貫して全角 文字と記号を使わないのか、などの個人的な好みはここでは 問題としません。)
hyper_mail開発の時点で主たるユーザーを日本語使用者と想 定されていると思います。英数文字を主とする半角英数と記号 を使った場合、記号(!wq#$%&'()=など)のうち、wqと\記号などは スクリプト言語perlでは、今回のような厄介な問題を内包してい ます。
以下の目的は、---------------------------- とにかくスクリプトの基本設定を変えないでwqは代替記号|を 使い、内部変換してwqを表示させる、ことだけを実現するスク リプト変更です。
その1)まず入力例です。-------------------- ただし、wqの代わりに半角|(シフト+\キー)を使っています。 perlではwqが文字列の始まりと終わりを示す記号に使われて いるため、面倒ですが、この解決法を考えました。もちろん もっと簡潔で合理的(エレガント)な解法はあるはずです。
その1)日本語入力例。日本語に直接入力の|を使ってみました。 ---------------------- 日本語にもwqを使えるか。 小説|赤い疑惑|は新進作家 |すえの ほん|さんの作品。 |社会派|から|純愛派|に |転向|?謎を秘めた|傑作|。 --------------------------送信確認表示結果 日本語にもwqを使えるか。 小説"赤い疑惑"は新進作家 "すえの ほん"さんの作品。 "社会派"から"純愛派"に "転向"?謎を秘めた"傑作"。 -------------------------
参考までに英語の例。タイトルにも応用しています。
------------------------英数文字入力例 wq→| メールのタイトル |what you can do| ●メッセージ |what you can do|with a double quote and |what you cannot do| with it when you write a title and message in |perl|.
----------------送信確認画面表示例 ■■■ Hyper_Mail ■■■
お名前 NXer メールアドレス zz@zz メールのタイトル "what you can do" 重要度 3 メッセージ形式 TEXT メッセージ "what you can do"with a double quote and "what you cannot do" with it when you write a title and message in "perl". ----------------------------------------
その2)wqの代わりに|を使う場合の変更点 -----------------------------------------行番号はその付近 177 ($a,$name,$value) = split (/\"/,$_); #既存 #★ |を"と交換する $a,$value=~ s/\|/"/g;
296 $in{'mess'} =~ s/<\/body>//ig; #既存 #★ |を"と交換する $mess =~ s/\|/"/g;
377 $mess = $in{'mess'};#既存 # ★ double quote交換 $in{'mess'} =~ s/\|/"/g;
450 $mess =~ s/\n/<br>/g;#既存 # ★ double quote交換 $mess =~ s/\|/"/g; ------------------------------------ 解説:~ s/\|/"/g; 置換関数~sを使い/\|/をwqに変換、文字列中の全て(g) ということです。メッセージ文中では何度も使ってみました。
なお、日本語の正規の表現基準では、発言は「、書名は『など を使うのが本来のところがあるかもしれません。
hyper_mailで記事を集め、雑誌、本やメルマガの本格的な編集 をお考えの場合は、日/英語の編集方針に従ってください。 また、全角半角英数文字記号の混在のために、行揃えではジャ スティフィケーションを使う必要があるかもしれません。 あくまでもNXerがスクリプト改造のために考えた戯れ(汗)です。 お断り、当方はHMを運用していませんから、全ての機能 の検証はできていません。
*****************************愚観五行****** 当方は、キー配列を換える等して指の負担を減らしたいと 考えています。wqの代わりに、hyper_mailに限り、半角の |を使うことは、慣れれば、苦になりません。限定された 理解ある利用者ならば、説明文を挿入すれば、多分、多用 愛用していただけるのでは。
一定時間書込が無かったので過去ログに移りました
|
|