テーブルタグ一式をすばやく・ラクに入力するためのスニペットサンプル

テーブルタグの入力を高速でできるようにしたいと思い、アイデアを整理してまとめてみました。
Visual Studio CodeなどのコードエディタであればEmmetが使えますが、Emmet非対応のテキストエディタやブラウザ上でのことを考えると、やはりスニペットになります。
スニペットに関する考え方は過去に記事にしているのでそちらをご覧ください。
今回の記事では、スニペットアプリはDashを使うことを想定しています。
前提の考え方
ルールを決めて、全てのパターンを片っ端からスニペットに登録していくのは面倒ですし、1度も使わないスニペットが量産されてしまいます。
そこで、ルールはかなりしっかり決めますが、すべて登録はせずに使うタイミングになって「あ、まだこれ登録してないんだ」となったら登録します。
これを繰り返していくことで徐々によく使うテーブルタグの入力がラクになっていきます。
テーブルタグのルール
まず最初にテーブルタグであると分かるためにt(tableの頭文字)を接頭辞として入力するようにします。
そのあと、列数 → 行数の順に数字をx(エックス)区切りで入力します。これは乗算記号に見えるのと、キーボードの位置的にも押しやすいからです。
そして最後に接尾辞(自分の場合はセミコロン2つ;;)を入力します。
例として「t3x2;;」とすると下記のテーブルタグが入力されます。
<table>
<tr>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td></td>
<td></td>
<td></td>
</tr>
</table>ExcelやGoogle Spreadsheetが、列(横の数)を選んでから行(縦の数)を選ぶので、同じように「列数×行数」に揃えました。
thに対応させる
このままだと<td>タグだけになってしまうので、<th>にも対応させたくなってきます。
数字を<th>の数と<td>の数でハイフン区切りにします。
例として「t1-2×2;;」の場合は列の方が最初の1つが<th>で2つ<td>となります。
<table>
<tr>
<th></th>
<td></td>
<td></td>
</tr>
<tr>
<th></th>
<td></td>
<td></td>
</tr>
</table>全部<th>にしたい場合は「3-0」のようにします。
theadとtbodyとtfootに対応させる
今度はtheadとtbodyにも対応させたくなりました。
括弧内にそれぞれ頭文字の「h(thead)」「b(tbody)」「f(tfoot)」を入力して区別できるようにします。
例として「t(h3-0x1)(b1-2×2)(f3x1)」とした場合は下記のようになります。
<table>
<thead>
<tr>
<th></th>
<th></th>
<th></th>
</tr>
</thead>
<tbody>
<tr>
<th></th>
<td></td>
<td></td>
</tr>
<tr>
<th></th>
<td></td>
<td></td>
</tr>
</tbody>
<tfoot>
<tr>
<td></td>
<td></td>
<td></td>
</tr>
</tfoot>
</table>少し複雑になってきましたが、文字列を見てどんなテーブルが展開されるかはある程度分かります。
最初にも説明した通り、あらゆるパターンを作るというよりも、ルールだけきちんと整理しておいて、あとはそれに従ってよく使うものを登録して使います。
また、このレベルのテーブルであれば、入力して展開するよりもDashで検索して展開する方がラクです。
Dashで検索するときに、ルールに従って絞り込むと効率よく展開ができます。



ATOKで目的の単語にすぐ変換するための「辞書・学習」タブの設定項目
Backlogをショートカットキーで操作する方法
AlfredのWorkflowをコードを書いて作成する方法
macOSのシステム環境設定「ユーザとグループ」の設定見直し
Stationのサイドバーで、Slackのチームアイコンをメインに表示させる
Evernoteで特定のタグを除外して検索する方法
1PasswordとAlfredを連携してログイン情報の検索を行う方法
IllustratorとPhotoshopとXDのツール系のショートカットキーを統一させる
Path Finderでのカラム表示とリスト表示の切り替え
キーボードショートカット以外の新しい選択肢、左手用インプットデバイス「Orbital 2」
AirPodsで片耳を外しても再生が止まらないようにする方法
MacのKeynoteにハイライトされた状態でコードを貼り付ける方法
iTerm2でマウスやトラックパッドの操作を設定できる環境設定の「Pointer」タブ
DeepLで「インターネット接続に問題があります」と表示されて翻訳できないときに確認すること
Ulyssesの「第2のエディタ」表示を使って2つのシートを横並びに表示する
一般的によく使われているテキストエディタでのEmmetの設定方法まとめ
ファビコンや各種アイコンの作成と設定方法
Macで英語の発音記号を入力する方法
Obsidianで整理した知識をAnkiで定着させる方法
BetterTouchToolのウインドウスナップ機能とBetterSnapToolの細かい違い
Visual Studio CodeでSVGをプレビューする拡張機能「SVG Preview」
Google Chromeに「タブを検索」機能が追加!開いているタブや最近閉じたタブから検索が可能に!
テキストエディタをAtomからVisual Studio Codeに移行しました
Bartender 4の「Show for Updates」機能で、特定条件でメニューアイコンが表示されるようにする
Stationの「My custom apps」機能を使って好きなウェブサイトをStationに追加する