バックスラッシュ

から転送)
\

バックスラッシュ: backslash)、逆斜線(ぎゃくしゃせん)、あるいはリバースソリダス (: reverse solidus) は、約物の一つで、「 \ 」と書き表される。バックスラッシュとはスラッシュ ( / ) の逆という意味である。「 / 」とは異なり、自然言語では使われることのない記号で、2021年11月現在知られている最も古い用例は1937年である。

バックスラッシュと円記号 (¥) の問題については、円記号も参照のこと。

歴史 編集

 
ホイートストン式鍵盤鑽孔機。3列目の最後にバックスラッシュがある。
 
1966年6月14日以前のASCII文字セットからなる ASR-33キーボード配列。shift+L でバックスラッシュを入力する。

2021年11月現在、起源は特定されておらず、判明している最も古い文献は、ホイートストン式英語版 (Wheatstone system) のクラインシュミット鍵盤鑽孔機英語版 WPE-3のキーボードの写真を伴うテレタイプ1937年の整備規程である[1][2]。この記号は"diagonal key"(対角線キー)と呼ばれ[3]、「・-・・-」の(非標準)モールス符号が与えられた[4][注釈 1]

1960年6月、IBMは「拡張文字セット規格」("Extended character set standard") を発表し、バックスラッシュを 0x19 に割り当てた[2]1961年9月、IBMのボブ・ベーマー英語版X3.2規格委員会に、バックスラッシュを "reverse division operator"(逆除算演算子)と表現し、電気通信におけるテレタイプによる先行利用を引用して[, ]\ の3記号を標準化への提唱に含めるよう提案した。特に、ALGOLブール演算子である論理積)と論理和)を、それぞれ/\で合成できるようにするために、\ を必要だとした。委員会は1961年11月の会合で、これらの変更をASCIIの草稿に採用した[2]

これらの演算子は、Unix V6とV7に付属するC言語の初期バージョンで min と max の代わりに使用された[5][6]

1963年のテレタイプモデルASR-33は、一部の市場で販売される標準的なキートップとしてこの文字を持つ最初の市販機であるとされる。このモデルは完全なASCII文字セットを持つ。

コンピュータにおけるバックスラッシュ 編集

コンピュータでは、バックスラッシュ (U+005C) はさまざまな局面で使われている。

  • MS-DOSでは、ディレクトリフォルダと類似の概念)名の後に置く、パス区切り記号として起用され、Windowsにも受け継がれた。詳細はCP/Mを参照。
    • Windowsにおいては、ファイル・フォルダのパスの区切りだけでなく、レジストリのパスの区切りや、内部的なデバイス名のパスの区切りとしても用いる。
  • ある種の除算演算子
    • BASICでは、整数除算演算子。たとえば「PRINT 10 / 3」は「3.3333…」を出力するが、「PRINT 10 \ 3」は「3」となる。
    • MATLABでは、右辺を左辺で割る除算演算子。たとえば「A \ B」は「B / A」と同じ結果をもたらす。
  • TeXLaTeXコマンドはバックスラッシュから始まる。

エスケープ 編集

UNIXおよびその影響を受けたさまざまな環境において、通常記述できない文字を記述する方法として広く用いられる。

代用 編集

文字集合にない文字の代用に使われる。

  • 日本では、円記号のないASCIIなどで円記号「¥」の代わりに使われる。円記号のある文字集合でも、バックスラッシュを円記号に文字化けして表示する環境で、円記号のつもりでバックスラッシュを入力するケースも多い。
  • 韓国でも同様に、ウォン記号の代わりに、あるいはウォン記号のつもりで誤って使われる。
  • 罫線素片「╲」の代わりに使われる。ただし、日本や韓国では文字化けにより字形の類似が成り立たないことが多いので、使用はまれである(全角バックスラッシュが使われることはある)。
  • 差集合「∖」の代わりに使われる。

バックスラッシュと円記号 編集

ASCIIのバックスラッシュ (0x5C, 5/12) はJIS X 0201では円記号であるため、日本のコンピュータや日本語のフォント・OS環境ではバックスラッシュが円記号として表示されるものが多い。Unicode#日本語環境でのUnicodeの諸問題も参照。

JIS配列キーボードでも通常はバックスラッシュがなく円記号が刻印されている。しかし今日一般に用いられるPC/AT互換機のJIS配列(OADG 109/109A配列)キーボードでは、バックスラッシュと円記号が両方とも(別々のキーに)刻印されている。しかしMicrosoft Windowsをはじめとする多くのOSどちらを押しても入力される文字は全く同一であり、0x5C、すなわち欧文フォント下ではバックスラッシュ、日本語フォント下では円記号が入力される。これは日本IBMのキーボードの刻印に由来するもので、メインフレーム端末として設計された時代の名残であり、今日の一般的なPC環境で円記号とバックスラッシュが共存できることを意味しているわけではない。

Mac OS では、バージョン 7.1〜9.x で主流だった日本語文字コード MacJapanese において、0x5C に円記号が、0x80 にバックスラッシュ記号がそれぞれ別々のコードポイントに存在している。

プログラムなどでバックスラッシュを入力する箇所において、日本語環境ではスクリーン上に円記号が表示されるが、多くの場合は円記号をバックスラッシュと同じ処理が可能な文字とする認識が行われる。

共存方法 編集

円記号 編集

文字コードがISO-8859-1やUnicode等欧文フォントが用いられる環境で確実に円記号を表示するためには0x5Cでなく0xA5の文字を使えばよい。この文字はHTML文書においては文字参照「¥」(¥)や ¥ (¥)で表示させることができるほか、Mac OS XではOption+Yで入力可能である。

バックスラッシュ 編集

確実にバックスラッシュを表示させるには全角のバックスラッシュ (U+FF3C) を指定する以外にはない。日本語韓国語以外のフォントの指定であれば0x5Cの文字はバックスラッシュとして表示される可能性が高い。フォントの指定をしたくない場合、次善の策としてHTMLのlang属性英語 (en) などにすると、多くの環境ではバックスラッシュで表示される。ただしブラウザの設定によっては英語の表示フォントが日本語フォントになっている場合もありうるため、確実な方法ではない。

ブラウザでの表示 HTMLソース
\ \ ¥ \
<html>
<head>
</head>
<body>
<span lang="en">\</span> <span lang="ja">\</span> ¥ \
</body>
</html>

符号位置 編集

記号 Unicode JIS X 0213 文字参照 名称
\ U+005C 1-1-32 &#x5C;
&#92;
逆斜線
REVERSE SOLIDUS
U+20E5 - &#x20E5;
&#8421;
COMBINING REVERSE SOLIDUS OVERLAY
U+2216 - &#x2216;
&#8726;
SET MINUS
U+2572 - &#x2572;
&#9586;
BOX DRAWINGS LIGHT DIAGONAL UPPER LEFT TO LOWER RIGHT
U+29F5 - &#x29F5;
&#10741;
REVERSE SOLIDUS OPERATOR
U+FE68 - &#xFE68;
&#65128;
SMALL REVERSE SOLIDUS
U+FF3C 1-1-32 包摂 &#xFF3C;
&#65340;
逆斜線
FULLWIDTH REVERSE SOLIDUS

脚注 編集

注釈 編集

  1. ^ これはスラッシュ(/)のモールス符号を逆から入力したものである

出典 編集

  1. ^ Bulletin 125, issue 2: Description and Adjustments of the Teletype Wheatstone Perforator, Teletype Corporation, (May 1938), p. ii, http://www.navy-radio.com/manuals/tty/tty125.pdf 
  2. ^ a b c Fischer, Eric (2000-06-20), The Evolution of Character Codes, 1874–1968, pp. 14-15, doi:10.1.1.96.678 
  3. ^ Bulletin 188: Teletype automatic perforator set, Teletype Corporation, (August 1945), https://www.navy-radio.com/manuals/tty/188B-4508.pdf 
  4. ^ Bulletin 1025, issue 3: Parts for Teletype Wheatstone Perforator, Teletype Corporation, (July 1945), https://www.navy-radio.com/manuals/tty/tty1025.pdf 
  5. ^ C compiler source”. bitsavers.org (1975年). 2022年9月20日閲覧。
  6. ^ C compiler source”. mit.edu (1979年). 2022年9月20日閲覧。

関連項目 編集