- 常日頃から捜索に身を捧げる技術者生活を、効率化かつ負担軽減かつ幸福化するために奮闘する記事第二弾。
- 「検索」より「捜索」という言葉を使うことで、純粋に自己の浸りだけを向上する生活。
- 今回は、コマンド一発で膨大なチートシートを呼び出すことができる「cheat.sh」を試用していくことにしよう。
概要
特徴
多くの言語やコマンドに対応
- 下記のような様々な情報のチートシートに対応している。
- 50個以上のプログラミング言語
- MySQLやRedis等のデータベースシステム
- 1000個以上のLinuxやUnixのコマンド
速度の速さ
- チートシートへのアクセスや応答の速度が速い。
- 公式によると、原則100ms以内で応答するらしい。
統一的な情報
- 世界標準のコミュニティ作成のリポジトリ等をチートシートとして、利用しているため、安全かつ実用性のある情報にアクセスすることができる。
ブラウザでの利用
- コマンドのみならず、ブラウザから直接利用することができるため、様々な場面で利用できる。
専用のコマンドクライアント
- curlコマンド(データ通信系コマンド)での利用も可能だが、専用のコマンドクライアントをインストールして、利用することができる。
- クライアントをインストールするメリットは下記。
- より簡潔な記述でのアクセス
- zshやfish等にも対応したタブ補完モード
- 履歴やクリップボードの管理
- より対話的に利用できるシェルモード
各種エディタとの連携
- 拡張機能やプラグインを利用することで、ターミナルやブラウザを開かずに、エディタのみでの完結が可能。
- 主な対応エディタは下記。
- Visual Studio Code
- Vim
- Emacs
- IntelliJ IDEA
結果
- 下記、実際の画面
- 専用のコマンドクライアントで、より完結な記述
- コマンドクライアントのシェルモードの利用で、更に便利な記述
- エディタと統合して、拡張機能で利用することも可能。
作業環境
- Mac OS X 10.13.4
- Homebrew 2.1.4
- Visual Studio Code
インストール
- コマンドクライアントを利用せず、curlコマンドを利用する場合は、インストール不要。
Mac
- ターミナルを開き、下記のコマンドをうち、cheat.shのコマンドクライアントを導入する。
# cht.sh導入
$ curl https://cht.sh/:cht.sh | sudo tee /usr/local/bin/cht.sh
# 実行権限の設定
$ sudo chmod +x /usr/local/bin/cht.sh
- 必須ではないが、コマンドクライアントをより対話的に利用できるシェルモードがある。
- シェルモードを利用するには、下記のコマンドをうち、「rlwrap」というシェル設定ツールをインストールする必要がある。
- Homebrew未導入の場合、こちらを参考にする。
$ brew install rlwrap
Windows
- Windowsから、cheat.shを利用する場合、cht.exeというコマンドクライアントをインストールする必要がある。
- 下記のコマンドをうち、実行環境を構築する。
- ※インストールの際には、scoopというWindowsのパッケージ管理ツールを先に導入して置く必要がある。
- ※未導入の場合は、こちらを参考にscoopをインストール
$ scoop install cht
- ※cht.exeは、下記以降での記述と異なるため、詳細な操作方法はこちら
基本操作
- 各基本操作は下記。
内容 | curlコマンド | コマンドクライアント |
---|---|---|
ファーストページ確認 | curl cheat.sh/ |
cht.sh / |
対応言語やコマンド確認 | curl cheat.sh/:list | grep 言語 | cht.sh /:list | grep 言語 |
言語別の全チートシート確認 | curl cheat.sh/言語/:list |
cht.sh 言語 :list |
言語別のHelloページ確認 | curl cheat.sh/言語/:hello |
cht.sh 言語 hello |
言語別の基礎文法ページ確認 | curl cheat.sh/言語/:learn |
cht.sh 言語 :learn |
言語やコマンド別のキーワード検索 |
curl cheat.sh/言語/キーワード+キーワード2 例 : curl cheat.sh/言語/parse+json ※curlでの複数キーワード指定は、「+」をつける必要がある。 |
cht.sh 言語 キーワード キーワード2 例 : cht.sh js parse json
|
強調(ハイライト)表示の無効化 | curl cheat.sh/言語/キーワード?T |
cht.sh 言語 キーワード ?T |
コメントを除いた表示 | curl cheat.sh/言語/キーワード?Q |
cht.sh 言語 キーワード ?Q |
テーマの確認 | curl cht.sh/:styles-demo |
cht.sh :styles-demo |
テーマの設定 | curl cht.sh/言語/キーワード?style=テーマ |
cht.sh :style=テーマ |
シェルモードの起動 | 不可 |
cht.sh --shell 表示 : cht.sh>
|
言語別のシェルモード起動 | 不可 |
cht.sh --shell go 表示 : cht.sh/go>
|
シェルモードでの操作 | 不可 |
cht.sh>cd js cht.sh/js>parse json
|
エイリアス設定
- 適宜エイリアスを任意に設定しておくことで、短い記述で簡単にチートを呼び出せる。
- 基礎的なエイリアス設定は、下記。
- 記述場所として、
~/.bashrc
を利用。
- 記述場所として、
~/.bashrc
# 「cht 言語 キーワード」とかで呼び出すため。
alias cht='cht.sh /'
# 「chsh 言語」とかでシェルモードを起動するため
alias chsh='cht.sh --shell '
# 「hello 言語」とかで各言語のHelloページを表示するため
hello() {
cht.sh $1 hello
}
# 「learn 言語」とかで各言語の学習ページを表示するため
learn() {
cht.sh $1 hello
}
エディタとの連携
Visual Studio Code
- エディタからcheat.shのチートシートにアクセスするため、下記の拡張機能を導入する。
- Snippet
- 拡張機能の導入は、ショートカットで
Ctrl(cmd) + Shift + X
をクリックして、「Snippet」と検索して導入する。
- 導入後、各ファイル上で、
Ctrl(cmd) + Shift + P
をクリック。 - 表示される入力欄に「Snippet: Find Inplace」と入力して、Enterキーをクリック
- 表示される入力欄にキーワード(例 : hello)を入力して、Enterキーをクリック
- 内容がファイル上に挿入される。
その他エディタ
- VimやEmacs、Sublime等のエディタでの導入はこちらを参考にする。
まとめ
- 今回は、チートシートの呼び出しということで、「カンニングをしてしまった」という、なかなか除去できない経験による、こびりつき思考と戦いながら、記事を書く。
- 「簡単な記述での呼び出し」に魅力を感じて、基礎的なコマンドチートも連続で呼び出してしまう。
- 次回は、利用機会の増えたデータベース関連の捜索術を探していくことにしよう。
参考
-
https://www.softantenna.com/wp/review/cheat-sh/
→こちらの記事を参考にしました。大変お世話になりました。 -
https://github.com/chubin/cheat.sh/blob/master/README.md
→公式GitHubです。大変お世話になりました。 -
https://githubja.com/chubin/cheat-sh
→ドキュメントの日本語訳です。大変お世話になりました。