
キーボードのタブキー (タブレーターキー[1]またはタブラーキーTab ↹の略)[2]は、カーソルを次のタブストップに進めるために使用されます。
歴史

タブという単語は、データを表形式またはテーブル形式で整理することを意味するtabulate という単語に由来しています。タイプライターで表 (数字またはテキスト) を入力したい場合、スペースバーとバックスペースキーを繰り返し使用し、多くの時間を費やしていました。これを簡素化するために、タブレーターラックと呼ばれるメカニズムに水平バーが配置されました。タブキーを押すと、キャリッジが次のタブレーターストップに進みます。元のタブレーターストップは、ユーザーがタブレーターラックに配置できる調整可能なクリップでした。フレドリック・ヒラードは、1900年にそのようなメカニズムの特許を申請しました。[3]
タブ機構は、各段落の最初の行を均一にインデントする迅速かつ一貫した方法として独自に発展しました。このために、5 文字または 6 文字目の最初のタブ ストップが使用されることが多く、これはタイプセットで使用されるインデントよりはるかに大きいものでした。ただし、数値データの場合、タブ ストップの論理的な位置は最下位桁の位置です。この位置までタブ移動してからバックスペースキーを押して最初の桁の位置に戻るのは実用的ですが、時間がかかります。数値タブにはさまざまな方式が提案されました。たとえば、1903 年にハリー デュークスとウィリアム クレイトンは、1、10、100 などの番号が付けられた複数のタブ キーを備えたタブ機構の特許を申請しました。1 を押すと単純なタブになります。10 を押すとタブの前のスペースに進み、100 を押すとタブの 2 つ前のスペースの位置に進みます。[4]
当初、タブストップはタブラックにクリップを追加したり取り外したりすることで設定されていましたが、ロイヤルタイプライター社に勤務していたエドワード・ヘスは、タブストップがタブバーに恒久的に取り付けられているシステムに関する特許を1904年に申請しました。特定の列のタブを設定またはリセットするには、その列のタブストップを回転させて係合させたり、係合を解除したりするだけで済みました。[5] 1940年に、ジェームズ・コカは、各列のタブストップをキーボードから設定およびクリアできるメカニズムの特許を申請しました。これにより、タイピストがマシンの背面に身をかがめてタブラックを直接操作する必要がなくなりました。[6]これらのキーがある場合は、通常、タブセットとタブクリアというラベルが付けられています。
現代の用法
ワードプロセッサやテキスト編集では、Tab キーを押すと、挿入ポイントが表内の次のタブ ストップに移動したり、ASCII タブ文字が挿入されたり、複数のスペース文字が挿入されたりします (使用するプログラムによって異なります)。
コンピュータ化されたフォームに入力するときに、Tab キーを押すとカーソルが次のフィールドに移動することがあります (Shift キーを押しながら Tab キーを押すとカーソルが前のフィールドに移動する)。これにより、マウスを使用して隣接するフィールドをクリックする必要がなくなります。
多くのグラフィカル アプリケーション、特にWindowsでは、Tab キーを押すと、ボタンなどのすべてのコントロールやウィジェットにフォーカスが移動し、マウスをまったく使用せずにユーザー インターフェイスを使用できるようになります (これはIBM Common User Access設計の一部でした) 。macOSでは、これは「フル キーボード アクセス」と呼ばれるオプションです。
タブ補完と呼ばれる機能を使用すると、部分的に入力したテキストを補完できます。たとえば、一部のコマンド ライン インターフェイスでは、コマンドまたはファイル名の最初の数文字を入力してから Tab キーを押します。入力内容があいまいでなければ、残りの文字は自動的に表示されます。一部のシステムでは、入力内容があいまいな場合でも、タブ補完によって選択可能なオプションの一覧が表示されることがあります。タブ補完は、WindowsよりもLinux、Unix、Unix 系システムでよく使用されます。
PC ビデオ ゲームでは、Tab キーはマルチプレイヤー ゲームのスコアを表示するためによく使用されます。シングル プレイヤー ゲームでは、ゲーム内のワールド マップやプレイヤーのインベントリ、その他の便利な情報を表示するためにも使用されます。
ソフトウェア エンジニアリングでは、コンピュータ プログラムを開発したり、ファイルにデータを保存および操作したりするときに、インデント目的でタブ文字がよく使用されます。これにより、コードやデータを読みやすくし、意味構造を追加できます。一部のプログラマーやプログラミング言語では、この目的のために複数の空白文字を使用することを好みます。このため、多くのテキスト エディターには、タブ キーを押すと、タブ文字に相当する空白文字の数 (既定ではほとんどが 4 つ) が挿入されるオプションがあります。
タブ文字
最もよく知られた一般的なタブは、水平タブ(HT) または文字タブで、ASCIIでは10 進文字コード 9 を持ち、+または^Iと呼ばれることがあります。Cや他の多くのプログラミング言語では、エスケープシーケンスを使用してこの文字を文字列リテラルに入れることができます。水平タブは通常、標準キーボードの Tab キーが押されたときに挿入されます。
CtrlI \t
垂直タブ( VT) も存在し、ASCII 10 進文字コード 11 ( +または^K )、エスケープ文字を持ちます。
CtrlK\v
EBCDICでは、 HT のコードは 5 です。VT は 11 です (偶然にも ASCII と同じ)。
元々、プリンタ機構では、タブの位置を示すために機械的なタブ ストップが使用されていました。水平方向には、一列に並んだ可動式の金属突起で、垂直方向には、タブ ストップを示すために穴が開けられたページの長さのマイラー テープまたはその他のテープのループで行われました。これらは、プリンタにロードされた印刷済みフォームに合わせて手動で設定されました。実際には、設定可能なタブ ストップは、水平方向に 8 文字の倍数ごと、垂直方向に 6 行ごとに事実上標準化された固定タブ ストップにすぐに置き換えられました。印刷プログラムは、印刷したい場所の左上にある最も近いタブ ストップに到達するために 0 個以上のタブを送信し、次に最終位置に到達するために改行とスペースを送信できました。タブ文字は、単にデータ圧縮の形式になりました。
当時のタイプライターでは5文字が典型的な段落のインデントであったにもかかわらず、限られたデジタル電子機器で2の累乗として計算するのが簡単だったため、水平タブのサイズは8に進化しました。[要出典]このサイズのタブを使用してコードをインデントすると、左側に多くの空白が生じるため、IDEなどのほとんどのコード用テキストエディタではタブのサイズを変更でき、一部(特にWindows)ではデフォルトで8ではなく4になっています。どのサイズのタブが適切か、タブを使用するかどうかについてプログラマー間で意見の相違があることはよくあります。[7]現代のテキストエディタでは通常、Tabキーでユーザー定義のインデントが挿入され、経験則を使用してこの動作を既存のファイルに適応させる場合があります。
ISO 6429 には、プログラムがタブ ストップを設定およびクリアできるようにするためのコード 136 (水平タブ セット)、137 (両端揃えの水平タブ)、および 138 (垂直タブ セット) が含まれています。[疑わしい–議論]これはほとんど使用されず、サポートもされていません。
タブ区切りの値
タブ区切り値(TSV) は、データベースまたはスプレッドシートのフィールド値をエクスポートおよびインポートするために使用されます。タブで区切られたフィールドに分割されたテキストは、多くの場合、ワード プロセッサに貼り付けて、1 つのコマンドで表にフォーマットできます。たとえば、Microsoft Word 2010 では、[挿入] > [表] > [テキストを表に変換...] が必要なコマンドであり、ユーザーが詳細を選択できるダイアログが表示されます。
データをエクスポートするための TSV 規則は、代替のカンマ区切り値(CSV) 規則 (カンマの代わりにセミコロンを使用する場合があります) と比較することができ、両者は簡単に相互に変換できます。
Gopher メニューでは、タブで区切られた値を使用してセレクターを示します。
TSVは、エラスティックタブストップと呼ばれる、コードの配置にタブとスペースを使用するプログラミングの議論を解決する現代的なアプローチでも引用されています。[8]このアイデアでは、同様のタブ区切り値(TSV)ではなく、タブ区切り列(TSC)と呼ばれるスキームを使用します。
html
HTMLでは水平タブは	または	[9] [10]を使用してコード化されますが、HTMLのすべての空白文字と同様に、,タグ(またはCSS属性がに設定されている他の要素)内を除いて、単一のスペース<pre>として<code>表示されwhite-spaceますpre。
次に例を示します。
- html
この行は 1 つのタブで始まります。 ここに いくつかの その他の タブ 文字 があります! T.......T.......T.......T.......T.......T.......T
- 内部
<pre>この行は 1 つのタブで始まります。 ここにタブ文字がいくつか追加されています。 T.......T.......T.......T.......T.......T.......T
- 外
<pre>この行は 1 つのタブで始まります。ここにさらにタブ文字があります! T.......T.......T.......T.......T.......T.......T.......T
行頭のタブが の外側で削除され<pre>、8 文字のスペースが確保されていること、および最後のタブから 8 文字を超える文字がある場合はタブ ストップがスキップされることに注意してください。
CSS3はtab-size、タブ文字のスペース数をデフォルトの8から調整するプロパティを定義しています。[11] WebKitの最新バージョンは、このtab-sizeプロパティをサポートしています。OperaウェブブラウザはCSSプロパティをサポートしており、Firefoxウェブブラウザは同じ意味のCSSプロパティをサポートしています。 [ 12]-o-tab-size-moz-tab-size
垂直タブはSGMLでは許可されていません[要出典]。これにはXML 1.0 [13]とHTMLが含まれます。
ユニコード
(水平)タブ文字と、あまり使われない垂直タブ文字のUnicodeコードポイントはASCIIからコピーされている:[ 14 ]
- U+0009 <コントロール-0009> (文字タブ、水平タブ(HT)、タブ)
- U+000B <コントロール-000B> (行集計、垂直集計 (VT))
タブ文字は、特殊な記号でグラフィカルに表すことができます。
- U+2409 ␉ 横組み記号
- U+240B ␋ 縦書き用記号
ユニコードには、タブキーに表示されたり、タブキーに印刷される記号を表す文字もあります。[15]
- U+21B9 ↹ 左矢印でバー、右矢印でバー(シフトタブ付きタブ)
- U+21C6 ⇆ 左矢印が右矢印の上に
- U+21E4 ⇤ 左 矢印からバー(左タブ)
- U+21E5 ⇥ 右矢印でバー(右タブ)
Unicodeでは、三角形の矢印が付いたタブ記号に追加の文字が用意されています。[16]
- U+2B70 ⭰ 左向き三角矢印からバーへ(左タブ)
- U+2B71 ⭱ 上向き三角矢印からバーへ(上タブ)
- U+2B72 ⭲ 右向き三角矢印からバーへ(右タブ)
- U+2B73 ⭳ 下向き三角矢印からバーへ(下タブ)
- U+2B7E ⭾ 水平タブキー
- U+2B7F ⭿ 垂直タブキー
参照
参考文献
- ^ 「アンダーウッド ポータブル タイプライター ギャラリー」。2011 年 2 月 22 日時点のオリジナルよりアーカイブ。2011 年 4 月 9 日閲覧。
- ^ 「アンダーウッドタイプライターの使用説明書」(PDF) 。 2011年4月9日閲覧。
- ^ Fredric W. Hillard、タイプライティングマシン、米国特許720,520、1903年2月10日付与。
- ^ Harry S. DukesとWilliam H. Clayton、「タイプライティングマシンの集計機構」、米国特許908,221、1908年12月29日付与。
- ^ Edward B. Hess、Writing Machine、米国特許931,305、1909年8月17日付与。
- ^ James F. Koca、「タイプライターの停止機構」、米国特許 2,358,517、1944年9月19日付与。
- ^ 「タブとスペース」www.jwz.org . 2020年6月2日閲覧。
- ^ Gravgaard, Nick. 「Elastic tabstops - コードのインデントと位置合わせのより良い方法」nickgravgaard.com 。2018年3 月 23 日閲覧。
- ^ HTML の文字エンコーディング#HTML 文字参照を参照してください
- ^ 「文字エンティティ参照表」。dev.w3.org 。2018年3月23日閲覧。
- ^ 「CSS 3 タブ サイズ プロパティ W3 仕様」。
- ^ 「Mozilla Developer Network の CSS tab-size プロパティ」。2023 年 2 月 21 日。
- ^ 「拡張マークアップ言語 (XML) 1.0」(第 5 版) 。W3C。2008年 11 月 26 日。「文字セット」の項。
- ^ 「C0 コントロールと基本ラテン語」(PDF) 。2013 年 12 月 13 日閲覧。
- ^ 「Arrows – Unicode」(PDF) 。 2013年12月13日閲覧。
- ^ 「その他の記号と矢印 – Unicode」(PDF) 。 2023年8月31日閲覧。
