過去の桐井戸端BBS (桐ver.8)
5820 〜について せやみー 2000/05/01-23:08
〜を1列全部半角から全角に変換するには?置換で半角になってしまったらちいさくなっちゃったので
〜だけ全角にしたいのです。
5821 Re:〜について Ogo 2000/05/01-23:17
記事番号5820へのコメント

>〜を1列全部半角から全角に変換するには?

半角文字に 〜 はないです。
何のカン違いでしょう?
5822 Re:〜について 悲しげ 2000/05/02-00:22
記事番号5821へのコメント
どもっ、せやみぃさん、Ogoさん、
「〜」は一応半角に変換されます。「~」チルドでしたっけ?(違ったかな)
対応は簡単で
   #文字置換([某項目],"~","〜")
でいいと思うのだが、如何?

今日は訳あって、殆ど繋ぎっぱなしに近い状態。(^^;)

5824 Re:〜について Ogo 2000/05/02-01:08
記事番号5822へのコメント

>「〜」は一応半角に変換されます。「~」チルドでしたっけ?(違ったかな)

意味が全く違うのにぃ〜(←チルダではありません)

【~】(チルダ)を全角で表記すると【 ̄】になる筈ですね。正しくは。

ちなみに、文字をどんなフォントで表示しているかによって見えかたが
変わって来るはずですが、

日本では【¥】(半角の円マーク)のものが英語フォントでは【\】
(半角のバックスラッシュ)になるのは良く知られていますが、

これ以外にも【|】(パイプ)が上下繋がった縦1本表示になっていたり、
【~】(チルダ)が【 ̄】(アッパースコア)になっていたり、 ASCII 文字
と JIS 文字で同じコードに違う文字形を定義してあって、困ったもんだ。

で、【〜】を半角にすると【~】になるというのは異常な仕様です
(キーボード上で全角と半角で似た形の文字が入力されているのとは全く意味が異なります)。

まともなソフトは全て【~】<-->【 ̄】の相互変換になる筈だが……

仕方ないから今確認した。
桐は【~】<-->【〜】の相互変換なんですね。驚いた。何考えてんだか。

P.S.私の知り合いで、印刷屋に名刺を作らせた時、ホームページの URL
  を刷り込ませたら、【~】の活字がないとかで、小さく【N】を斜めに
  しかも上付きで印刷してきた――あゝ悲惨――と泣いてた人がいます。 
  (^^; こっちも何考えてんだか。

5825 Re:〜について hidetake 2000/05/02-07:55
記事番号5824へのコメント
「~」って良くわからないけど、どうしてこんなになったのでしょう?

「~」って、NEC PC-98x1 や PC/AT互換機の本来の US モードや
Windows では「チルダ」ですよね! それに対し DOS/V (PC-DOS)の
日本語モードでは「オーバーライン」です。

JIS規格を見てみると、「7単位符号」に「オーバーライン」として
決められています。(名称も含めてニョーロでは無い真っ直ぐ線として)

そして、この「~」を Windows上の欧文 True Type フォントで表示させると、
多くの場合、上側についているのでは無く真ん中に表示されるようになっているようです。
まさしく「〜」を小さくした(半角)にしたような形になっています。
それに対し、日本語フォントは全くそれぞれですね

文字コード 7E「~」を「チルダ」としてとらえるか?
「オーバーライン」としてとらえるかの違いなのでしょうか?
そして、JISコードを優先させるか?
欧文本来の表記を優先させるかの違い?

更には、「~」を表示上(形)の問題とすれば、上にニョーロな全角文字は無いの?

良くわからない問題ですね、私も詳しい方に解説して頂きたい (^_^ゞ

5826 Re:〜について hidetake 2000/05/02-08:09
記事番号5825へのコメント
あれ?

>JIS規格を見てみると、「7単位符号」に「オーバーライン」として
>決められています。(名称も含めてニョーロでは無い真っ直ぐ線として)

手持ちの X0201 (1976) では、こうなっているけど、MS の資料を見ると
ISO Latin-1 キャラクタセットでは「~」(チルダ)して決められている
ようだ... 何を優先させるか???

5827 Re:〜について hidetake 2000/05/02-08:24
記事番号5826へのコメント
>>JIS規格を見てみると、「7単位符号」に「オーバーライン」として
>>決められています。(名称も含めてニョーロでは無い真っ直ぐ線として)
>
>手持ちの X0201 (1976) では、こうなっているけど、MS の資料を見ると
>ISO Latin-1 キャラクタセットでは「~」(チルダ)して決められている
>ようだ... 何を優先させるか???

JIS と ISO をゴッチャにしている。規格もいろいろあって混乱しますね _o_

5828 Re:〜について hidetake 2000/05/02-09:19
記事番号5827へのコメント
「チルダ記号の表示位置について」については下記にもあります。
http://www.justsystem.co.jp/support/faq/atoks1/f1sla008.html
5844 Re:〜について せやみー 2000/05/02-17:37
記事番号5828へのコメント
みなさんありがとうございます。出来た瞬間うれしくてはまってます。これからもよろしく。
5894 Re:文字コードセット Ogo 2000/05/05-18:39
記事番号5828へのコメント
別に私が詳しいわけではありませんが、文字コードのルールは以下のようになっています
(全て全角文字で記載しますが、本来は全て半角文字ですので念の為)。

我々がコンピューターで使う文字集合は ASCII, JIS, ISO の3つの規格を基にしています。

ASCII 文字集合(基本中の基本)では以下の文字が使われています。
【\】($5c) バックスラッシュ
【 ̄】($7e) 正しくは「上付きニョロ」のチルダ
【|】($7c) 正しくは上下2分割のパイプ

JIS 文字集合 (JIS X 0201-1997)では以下の文字が使われています。
【¥】($5c) 円マーク
【 ̄】($7e) アッパースコア(オーバーライン)
【|】($7c) パイプ(上下連結か否かは知らない)

何でこうなのかと言えば、ISO 646 BCT 規格が発端なのでしょう。
ISO では ASCII 文字集合を世界共通の基本としながら、各国の実情に合わせた変更を許しているからです。
具体的には ASCII 文字集合のうち、以下の12文字は各国で任意の文字に置き換えてよいということになったのです
(置換不能の82文字を部分を BCT ―― Basic Code Table と言い、置換可能な12文字を
IRV ―― International Reference Version と言います)。

【#】($23) 【$】($24) 【@】($40) 【[】($5b) 【\】($5c)
【]】($5d) 【^】($5e) 【
5895 Re:文字コードセット Ogo 2000/05/05-19:19
記事番号5894へのコメント
>手持ちの X0201 (1976) では、こうなっているけど、MS の資料を見ると
>ISO Latin-1 キャラクタセットでは「~」(チルダ)して決められている
>ようだ... 何を優先させるか???

もうお判りだと思いますが、「 Latin-1 キャラクタセット」とは
ISO 8859-1 という8ビット符号化コードで、 7bit 分に関しては
全く ASCII を踏襲しています。
従って、「~」(チルダ)で正しいのです。

ASCII, ISO 8859 ( -1 〜 -10 ) に関しては「~」(チルダ)で
JIS X 0201 のみが「 ̄」(オーバースコア)です。

- - -

で、最初に戻って、桐で「〜」の半角文字が「~」(チルダ)の件ですが、
これは DOS 桐 からの踏襲だと思っているのですが……

ところが、 NEC-98 シリーズで DOS 桐 を扱うと、桐 は通常の ASCII 文字を表示せずに、
NEC-98 特有の 2byte 半角文字を使って画面表示をします
(これは全角/半角文字のマッチングが改善されているフォント)。
この NEC-98 特有の 2byte 半角文字では、「~」(チルダ)なんて画面
表示されず、「 ̄」(半角のオーバースコア)が表示されています。
つまり、NEC-98 の 2byte 半角文字は JIS X 0201 に準拠しているので、
「~」(チルダ)が画面上で使われることはないのです(本来の ASCII
表示では「~」(チルダ)が画面表示される)。
もちろん、プリンターだって JIS X 0201 で印刷して来るので、「 ̄」
(半角のオーバースコア)が出力されているはずです。

あゝそれなのに、何故「~」(チルダ)の全角が「〜」なのでしょう?
ハードウェア的には「~」(チルダ)ではなく「 ̄」(半角のオーバースコア)が
出力されているというのに。

5909 Re:文字コードセット hidetake 2000/05/06-06:33
記事番号5895へのコメント
Ogo さん、解説をありがとうございます。
何となくわかったようで、良くわからない...

>以前、桐が「日本語フォント」と「英文フォント」の2種類を独立して
>設定させることに対する疑問が出ていましたが、これらの理由により、
>7 bit 符号化文字をどんな字形にするかは極めて重要なことなのです。

ハイ、そうですね。でも、桐には敢えて「英文フォントを使用する」と
言う設定があるのに、設定しても英文フォントが用いられないのが気に
いりません。

>ところが、 NEC-98 シリーズで DOS 桐 を扱うと、桐 は通常の ASCII
>文字を表示せずに、NEC-98 特有の 2byte 半角文字を使って画面表示を
>します(これは全角/半角文字のマッチングが改善されているフォント)。

なるほど、そう言えば 98桐では「オーバーライン」で表示されていましたね。
すっかり忘却の彼方でした。

>あゝそれなのに、何故「~」(チルダ)の全角が「〜」なのでしょう?

Ogo さんの論理では、JIS を使っている状態(昔の桐環境とかも含めて)、
桐の中では ASCII のチルダが「半角オーバーライン」で表示されている
から、全角化する場合は「全角オーバーライン」が正当と言われているのですか?
「半角オーバーライン」の全角化であれば当然「全角オーバーラインで」
であるべきだと思いますが、「チルダ」の全角化だったら「〜」であって
もおかしくないような気もしますが...

因みに Unicode の FF5E 前後と、FFE3 あたりのコード並びをご覧下さい。
ATOK の文字パレットで見ると「〜」(Unicode FF5E) の JIS コードは
2141 と表示されます。
あと、一太郎で面白いのは「〜」の半角化は「~」で、「~」の全角化は
「 ̄」だったりするところです。

>もちろん、プリンターだって JIS X 0201 で印刷して来るので、「 ̄」
>(半角のオーバースコア)が出力されているはずです。

「~」を印刷すると、「チルダ」では無く、「オーバーライン」で印刷
されると言うこと?
うちの EPSON のプリンタでは「松」も「桐」も(何れもDOS版)「チルダ」として印刷されるようです。

備考:
>JIS 文字集合 (JIS X 0201-1997)では以下の文字が使われています。
>【¥】($5c) 円マーク
>【 ̄】($7e) アッパースコア(オーバーライン)
>【|】($7c) パイプ(上下連結か否かは知らない)
上記表記名はJIS 規格で言えば、円記号、オーバーライン、縦線です。
一応ご参考のため。

「^」(アクサンシルコンフレックス)と「_」(アンダーライン)にも
JIS での表記名です。


5921 Re:文字コードセット Ogo 2000/05/06-20:03
記事番号5909へのコメント

>ハイ、そうですね。でも、桐には敢えて「英文フォントを使用する」と
>言う設定があるのに、設定しても英文フォントが用いられないのが気に
>いりません。

あ〜、なるほど。
それは「気にいりません」でなく、「何やってんのか」の世界ですねぇ。

>「半角オーバーライン」の全角化であれば当然「全角オーバーライン」
>であるべきだと思いますが、「チルダ」の全角化だったら「〜」であって
>もおかしくないような気もしますが...

tilde
 ―[名][C]
 1 ティルデ 《スペイン語で n の上につける記号》
 2 ティルド 《ポルトガル語で母音の上につける鼻母音化記号》
 『新英和中辞典』

これの全角が「〜」でよろしいとは思えませんが……
あ〜、そう言えば、URLを全角で表記する人がいて、チルダの変わりに
「〜」を使っていることが多く、大変な違和感を覚えるものです。

>Ogo さんの論理では、JIS を使っている状態(昔の桐環境とかも含めて)、
>桐の中では ASCII のチルダが「半角オーバーライン」で表示されている
>から、全角化する場合は「全角オーバーライン」が正当と言われているの
>ですか?

そう、一貫性の問題です。
また、チルダと「〜」は意味が違う――というのも根拠です。

>>もちろん、プリンターだって JIS X 0201 で印刷して来るので、「 ̄」
>>(半角のオーバースコア)が出力されているはずです。
>
>「~」を印刷すると、「チルダ」では無く、「オーバーライン」で印刷
>されると言うこと?
>うちの EPSON のプリンタでは「松」も「桐」も(何れもDOS版)「チルダ」
>として印刷されるようです。

確認せずに、いい加減を言ってすみません。
プリンタのリファレンスを見たところ、チルダと「〜」とオーバーライン
を混同しているような記載になっている。

私も試してみましたが、「チルダ」ではなく、「〜」が半角で(即ち縦位
置が中央)印刷されました。 (?_?)
でも、どう見ても書体がおかしい(妙に潰れている)。
で、桐を使わずに、半角チルダ「~」をプリンタフォントで印刷すると、
半角チルダ「~」のところには、ちゃんと「半角オーバーライン」が印刷
されています。
DOS 桐はプリンタの直接制御を行なっていたので、全角の「〜」を半角化
(横1/2縮小)してコード変換してプリンタ出力しているのではないか?
プリンタの直接制御を行なわない Windows 版 桐では、プリンタフォントを使った場合は
「半角オーバーライン」に、Truetype フォントを使った場合(MSゴシック)は
「半角チルダ」になっていますしねぇ。

そうだとしたら、コンピューターハードからもプリンターからも、「このコードは JIS オーバーラインですよ」と
明示されているにも拘わらず、
桐は無理やり「〜」の半角として(チルダでさえもない)使わそうとしていたようで、何だかなぁ……です。
これでは、桐のデータを他のソフト用に流用しようとしたら、「~」の運用は「〜」の半角と
意識しなければならないのでしょうか?
DOS 桐 の全盛期は「~」を使う機会は殆ど無かった筈だから、ローカルな
ルールでも問題が出なかったでしょうが(実際、私もこんなことを考えたことはなかった)、
これだけインターネットが普及して、「~」が「〜」とは違う意味で使われていると、問題ではないか?

文字コードが一緒だから、チルダとオーバーラインがコンピューター上で同一視されるのは理解できる。
でも「〜」は違うでしょう――という意見です。

>>【|】($7c) パイプ(上下連結か否かは知らない)
>上記表記名はJIS 規格で言えば、円記号、オーバーライン、縦線です。

やっぱり、JIS ではパイプではなく、縦線なんですね。
こっちも、よく使う記号なのに……(まぁ、字形は似ているが)

5922 Re:文字コードセット hidetake 2000/05/06-20:50
記事番号5921へのコメント
>tilde
> ―[名][C]
> 1 ティルデ 《スペイン語で n の上につける記号》
> 2 ティルド 《ポルトガル語で母音の上につける鼻母音化記号》
> 『新英和中辞典』

元々の表現はこれでしたか... ようやく出所はわかりました。 _o_
ところで「〜」は英語ではなんと発音するのでしょう?
(JISでは波ダッシュ)

まぁ〜、文字符号の場合、単純に1文字で一つの字形を表すだけで
なく、重ねな文字とかあって、重ね合わせて使う場合もあるし、
あるいはタイプライターでも、上下位置をずらしてタイプする場合
もあったように思いますが、どうだったかなぁ? タイプライター
なんて遠い昔のうっすらとした記憶しかないものなぁ〜

>で、桐を使わずに、半角チルダ「~」をプリンタフォントで印刷すると、
>半角チルダ「~」のところには、ちゃんと「半角オーバーライン」が印刷
>されています。

Windows98 の DOSプロンプトで echo ~hidetake > PRN すると、
(PRINT.SYS が入れてないので日本語は印刷できませんが)オーバー
ラインでは無くチルダで印刷されるようです、LP-1700S では...


>文字コードが一緒だから、チルダとオーバーラインがコンピューター上で
>同一視されるのは理解できる。でも「〜」は違うでしょう――という意見
>です。

欧文フォントのほとんどの場合の表示位置や、Unicode の対を見ても
英文圏でもほとんど同一視されているような気もしますが、実際は
どうなのでしょうかね?

5926 Re:文字コードセット hidetake 2000/05/07-07:27
記事番号5922へのコメント
Unicode の並びがわからない方のために書いておくと、
半角形・全角形のところの並びは次のようになっています。

   0 1 2 3 4 5 6 7 8 9 A B C D E F
FF20 @ A B C D E F G H I J K L M N O
FF30 P Q R S T U V W X Y Z N \ ] ^ _
FF40 ` a b c d e f g h i j k l m n o
FF50 p q r s t u v w x y z { | } 〜
:  (省略)
FFE0 ¢£¬ ̄U¥

半角の「~」(チルダ)が配置されているところに「〜」が
配置されており。Unicode は FF5E で有り、これに対する
JIS では 2141、SJIS では 8160 と関連づけられています。

5958 Re:「〜」=「~」らしい…… Ogo 2000/05/09-02:05
記事番号5926へのコメント
今日、ちょっと大きな本屋さんに行く便があって、「〜」を大きな
英和辞典で(立ち読みで)調べてみました。

かなり大きな重たい辞書の第3項目・第4項目に次のような主旨が
載ってました(文言はうろ覚え)。

tilde
 ―[名][C]
 1 ティルデ 《スペイン語で n の上につける記号》
2 ティルド 《ポルトガル語で母音の上につける鼻母音化記号》
 3 (数学・論理学の分野で)否定・排他を示す。
 4 省略を示す。波ダッシュ(〜)

ヲイヲイ、ホントカイ〜

「~」が「省略を示す」は納得できます。実際にそいう意味で使われているわけですから。
しかし、辞書の同じ項目で「波ダッシュ(〜)に同じ」と断言されると違和感が残るなぁ。

どうもスッキリとしないけど、「〜」=「~」らしい……

5962 Re:「〜」=「~」らしい…… hidetake 2000/05/09-22:06
記事番号5958へのコメント
>どうもスッキリとしないけど、「〜」=「~」らしい……

なるほど...

しかし、「波ダッシュ」で調べるといろいろあるのですね〜
http://www.y-adagio.com/public/standards/tr_xml_jpf/kaisetsu.htm
http://indy.opengroup.or.jp/jvc/cde/ucs-conv.html
http://member.nifty.ne.jp/hobbit/html/utf8.html

WAVE DASH とか FULLWIDTH TILDE とか...
同じ字形の変換もいろいろあるし... 奥深き世界だ!

戻る