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

テーブルタグの入力を高速でできるようにしたいと思い、アイデアを整理してまとめてみました。
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で検索するときに、ルールに従って絞り込むと効率よく展開ができます。





Path Finderのデュアルブラウザで、別枠へのファイル移動とコピーを使いやすくする
Fantastical 3がサブスクリプションモデルになりUIが刷新!予定の管理がさらに便利になる機能が追加
HyperSwitchをインストールしておくと「隠す(command + M)」で隠したウインドウもすぐ開けるようになる
AlfredのWorkflowで新規ファイルを作成する方法
Keyboard Maestroの「Prompt for User Input」でユーザーの入力に応じて変化するマクロを作成する方法
サイト上のSVG画像を簡単に保存できるChrome拡張機能「svg-grabber」
Visual Studio Codeのテキストを、書式設定無しでコピーする設定
Macでリッチテキストをコピペしたときに、余計なスタイルが入ってしまうのを回避する方法
Keyboard Maestroのこれだけ覚えておけば良さそうなアクション紹介
Macの圧縮・解凍アプリケーションまとめ
MacのKeynoteにハイライトされた状態でコードを貼り付ける方法
AirPodsで片耳を外しても再生が止まらないようにする方法
iTerm2でマウスやトラックパッドの操作を設定できる環境設定の「Pointer」タブ
DeepLで「インターネット接続に問題があります」と表示されて翻訳できないときに確認すること
Ulyssesの「第2のエディタ」表示を使って2つのシートを横並びに表示する
macOSの効率化に関するDiscordコミュニティ「CMD-F」を立ち上げました
1Passwordの開発者向け機能(SSH Agent / Environments / 1Password CLI / Developer Watchtower)
Default Folder Xで保存ダイアログ内のファイルリストにフォーカスする方法
Obsidianで整理した知識をAnkiで定着させる方法
Figma × Keyboard Maestroでどこまで効率化できる?
マウス操作の完成度が高いウインドウリサイズアプリ「Magnet」
Macで複数ディスプレイを使っている場合に便利な設定集
AppCleanerでMacアプリを関連ファイルごと完全に削除する
操作に没頭できる!Firefox版 Arcのようなブラウザ「Zen Browser」
chezmoi(シェモア)で始めるdotfiles管理