Macユーザーにオススメのスニペットアプリ「Dash」でコードや定型文の管理を行う

HTMLやCSSなどのコードの入力で同じような入力を何度もしていませんか?
そんな方にはスニペットツールがオススメです。
スニペットツールを使えばよく使う定型文を簡単にペーストできるように登録したり、入力後のカーソル位置の指定や、クリップボード内のテキストと合わせてペーストしたりといった細かい指定ができます。
今回は数あるスニペットアプリの中から「Dash」について基本的な機能を紹介します。
ちなみに、自分の場合は日常会話などに使う定型文はAlfredのスニペット機能を使っていて、コードの定型文はDashを使うようにしています。
Alfredのスニペット機能も気になる方は、別で記事も書いているのでご覧ください。
スニペットアプリを使う理由
自分の場合、スニペットアプリを使う理由は下記の3つです。
- 同じような内容を何度も手入力したり、前の内容を探して毎回コピペする手間と時間が減る
- 手入力によるタイプミスが減る
- スニペットアプリでの呼び出し方法さえ覚えていれば、その内容は覚えてなくてもよくなる
数行レベルであればメリットは感じにくいですが、例えば長いコードを即座にペーストして「あとは今回のパターンに合わせて調節するだけ」にしておけばかなりの時間短縮になります。
手入力だとタイプミスで動かなくなってしまうコードも、スニペットアプリからのペーストならその心配もありません。
また、コードの構文は完全に覚えていなくても、スニペットで呼び出せば入力されるので「ど忘れしてGoogleで検索し直す」みたいなムダな時間も短縮できます。
Dashの特徴
有名どころだと、Dash以外にもTextExpanderやAlfredのスニペット機能などスニペットアプリは他にもあります。
Dashの1番の特徴は、「コードリファレンスとしても使える」点です。
正確には本来Dashは、プログラミング言語のリファレンスを検索するアプリで、スニペット機能はおまけの機能です。
そのため自分の場合は、普段はコード系のスニペットアプリとして利用し、分からないことがあればリファレンスから検索する使い方をしています。
Dashのダウンロード

Dashは公式サイトからダウンロードできます。
スニペット(snippet)には「断片」や「切れ端」という意味があるのですが、言葉の断片や切れ端を予め設定しておいて、特定のキーワードを入力して呼び出す事ができます。
言ってしまえば超強力な単語登録ツールです。しかも、Dashの場合は無料でも使用することができます(有料版もありますが、現在無料版で特に問題なく使えています)。
Dashの基本的な使い方
Dashをインストールしたら一度環境設定を開きましょう。メニューバーのDashのアイコンから[Preferences]をクリックすると開きます。

[General]でDashの画面を開くためのショートカットキーを割り当てる事ができます。デフォルトだとcontrol+spaceになっていて、僕はそのまま使っています。
入力ソースの選択をcontrol+spaceに割り当てている場合
デフォルトのMacではcontrol+spaceは入力ソースの切り替えのショートカットとして設定されています。
入力ソースの切り替えのショートカットはMacの[システム環境設定]→[キーボード]→[ショートカット]の[入力ソース]にある「前の入力ソースを選択」のチェックを外すか、別のショートカットキーに変更すればOKです。

もちろん、Dashの方の設定を変えるという方法もありますが、スニペットアプリですしすぐに押せる押しやすいショートカットの方がいいですし、入力ソースの切り替えをcontrol+spaceで行う事も少ないと思いますので。
設定できたらcontrol+spaceを押してDashを表示してみましょう。
スニペットの登録
まずはスニペットを登録してみましょう。
Dashの画面を開いて、サイドバーにある「+」ボタンをクリックして「New Snippet」をクリックするか、command + Nをクリックすると新規でスニペットを追加する事ができます。

上のメニューで「呼び出しキーワード」「プログラミング言語(通常のテキストの場合はnoneを選択)」、そしてその下に「スニペット内容」を書いていきます。

例えば、下記のように呼び出しキーワードに「sample」スニペット内容には「sampleと打ったらこの文字列に変換」と入力します。

すると下記の動画のような入力が可能になります。
一瞬で「sample」という文字が「sampleと打ったらこの文字列に変換 」に変換されました。僕は特にショートカットキーや変換キーは押していません。ただ「sample」と文字入力を行っただけで自動で変換されました。
この機能は物凄く便利ですが、今のように単純な単語を呼び出しのキーワードに設定してしまっていると、単純に「sample」というキーワードを入力したい時に、自動で変換されてしまうので不便です。ですから、何かしら普段の入力には使わないルールを作っておいた方が良いです。
- キーワードの最初に記号を設定しておく。
例としては「;(セミコロン)」等です。「;」の後続けて文字列を入力する事は普段のキー入力ではまずありません。 - キーワードの最後に記号を設定しておく。
「;」だとCSSで入力する事があるので「#(シャープ)」や「@(アットマーク)」が良いですね。 - 文字列の順番を変える。
HTMLで「<h1></h1>」と入力したい時は「<>h1」等で登録しておくと、まず普段のキー入力で困る事はありません。
大切なのは自分でルールをきちんと定義しておく事ですね。ちなみに僕の場合は最初の「;」をキーワードの最初につける方法を使っています。
スニペットにはタグを付ける事ができ、タグで分類しておく事で整理したり、素早くスニペットを探す事ができるようになります。下の画像は僕が使っているHTMLのOGPタグのスニペットですが、「html」というタグを付けています。また、言語をHTMLに設定しているのできちんとコードハイライトされています。

ちなみに、キーワードによる変換だけじゃなく、Dash画面下の「Use」ボタンを押せば前使っていたアプリにスニペットが挿入されるので、キーワード変換にこだわる必要もありません。
オプションの設定
スニペット登録時に右上のI型のマウスカーソルのアイコンをクリックして「Insert…」の中から登録したいオプションを選択すると、スニペット内に色の違うテキストが挿入されます。

| __placeholder__ | __文字列__のようにアンダースコア2つずつで囲むと、その文字列を変数のように扱う事が出来ます。 |
|---|---|
| @clipboard | クリップボードにコピーされているテキストが自動的に挿入されます。リンクの設定などに便利ですね。 |
| @cursor | カーソルを挿入した位置に移動させます。例えばHTMLタグで「<h1>@cursor</h1>」と設定しておくと、挿入後に真ん中にカーソルが合うようになります。 |
| @time | 入力した時間が挿入されます。形式は「時間:分」です。 |
| @date | 入力した日付が挿入されます。形式は「年/月/日」です。 |
このような機能は普通の辞書登録ではできませんからね。うまく使う事でキー入力やカーソル移動がものすごくラクになります。
ドキュメンテーション
実は「Dash」にはドキュメンテーション機能があり、プログラミング言語等のドキュメンテーションを閲覧する事ができます。もちろん検索バーから検索して探す事ができます。英語ですがわざわざブラウザを立ち上げる必要はありませんし、素早く検索できるので地味に重宝します。
ドキュメンテーションのみ見たい場合はサイドバーの検索バーのすぐ下の3つのアイコンのうち、一番左のものをクリックすれば見れます。

こうしたドキュメンテーションは環境設定の[Downloads]から色々選択する事ができます。必要なドキュメントセットの隣にある「Download」ボタンを押せばすぐに使えるようになります。

ちなみに、既にダウンロードしたドキュメントの管理や検索時の特定方法は、環境設定の[Docsets]で見る事ができます。例えばHTMLのドキュメントの中から検索をしたい場合、検索バーに「html:」と入力してその後にキーワードを打つと、絞り込んで検索する事ができるというわけです。

検索時の特定方法はダブルクリックで変更する事もできます。基本的にはそのままでもいいと思いますが、あまりにも長いキーワードの時には短く覚えやすいものに変更した方がいいかもしれません。

まとめ
今回はスニペットアプリのDashを紹介しましたが如何だったでしょうか?初めて使った時は感動して、あれこれ設定してしまうものなのですが、あまり考えなしにどんどん設定していくと後々面倒な事になったり、使いこなせ切れなかったりします。
こういったアプリは使いながら定期的にメンテをして、少しずつ自分なりにルールを明確化していくことが大切ですね。


Workspacesの検索ウインドウで使えるコマンド一覧
Path Finderの「Finderで開く」が機能しないので、Keyboard Maestroで代替用マクロを作成する
Macのちょっとした設定をメニューバーから変更できる「One Switch」
Google Chromeの新規タブページのウェブページへの「ショートカット」を非表示にする方法
Path Finder 8の「パスのコピー」の種類とその違いについて
Macの基本操作をラクにするために使っているユーティリティアプリ
ImageOptimをターミナルから起動する方法
1Passwordでパスワード以外に管理しておくと便利な情報
Alfredのランチャー(メインウインドウ)が邪魔で後ろが隠れてしまうときの対処法
Macのデフォルトシェルをbashからzshへ変更する方法
iTerm2で「Use System Window Restoration Setting」を設定しているとアラートが表示されて機能しない
Google Chromeのサイト内検索(カスタム検索)機能を別のプロファイルに移行する方法
iPadで入力モードを切り替えずに数字や記号をすばやく入力する方法
iPhoneやiPadでYouTubeの再生速度を3倍速や4倍速にする方法
Keynoteで有効にしているはずのフォントが表示されない現象
MacのKeynoteにハイライトされた状態でコードを貼り付ける方法
AirPodsで片耳を外しても再生が止まらないようにする方法
iTerm2でマウスやトラックパッドの操作を設定できる環境設定の「Pointer」タブ
DeepLで「インターネット接続に問題があります」と表示されて翻訳できないときに確認すること
Ulyssesの「第2のエディタ」表示を使って2つのシートを横並びに表示する
Path Finderを使ってキーボードだけでファイル操作する方法(基本操作編)
macOSのコマンドパレット比較!SpotlightとAlfred、Raycastどれを使えばいい?
1つのノートアプリにすべて集約するのをやめた理由|2025年時点のノートアプリの使い分け
Notionログイン時の「マジックリンク」「ログインコード」をやめて普通のパスワードを使う
AlfredでNotion内の検索ができるようになるワークフロー「Notion Search」
Gitで1行しか変更していないはずのに全行変更した判定になってしまう
Macでアプリごとに音量を調節できるアプリ「Background Music」
Macのターミナルでパスワード付きのZIPファイルを作成する方法
MacBook Proでディスプレイのサイズ調整をして作業スペースを広げる
SteerMouseの「自動移動」機能で保存ダイアログが表示されたら自動でデフォルトボタンへカーソルを移動させる