Skip to content

show cheat sheet in command-line; with `crib` command.

License

Notifications You must be signed in to change notification settings

seroqn/deno-crib

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

25 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

crib

YAML 形式で記述したチートシートを fzf で一覧するコマンド crib を提供します。

Installation

Deno が必要です。事前に deno コマンドが使えるようにしてください。
このプロダクトの bin ディレクトリにパスを通してください。

export PATH="$HOME/path/to/deno-crib/bin:$PATH"

チートシートを置くディレクトリを CRIB_HOME 環境変数で指定してください。
このディレクトリ以下の crib.yml というファイルがチートシートファイルと見なされます。
CRIB_HOME 環境変数を設定していない場合、非Windows 環境だと "$XDG_CONFIG_HOME/crib" が、Windows 環境だと %AppData%\xdg.config が使われます。

export CRIB_HOME="$HOME/.crib"

crib-file notations

# YAML ファイルのコメントは `#` で始まる文字列です。

# `==foobar==` のように先頭と末尾に `==` があるトピックはシステムが使います。
==INBOX==:
  - 'foo bar baz'

# Topic として辞書のキーを、その下に Article として文字列のリストを指定します。
awk:
  - 'substr(str, first:int[, last:int]) :: str の first から last までを部分文字列として取得'
  - 'index(str, needle:string)          :: str の中の needle の位置, 見つからないときは 0'
  - '//foo bar'   # `//` で始まる Article はコメントアウトされ、`-c` オプション付きで実行されない限り fzf の候補に現れません。

# Topic や Article に使う文字列は YAML の特殊文字を含まなければクォートしなくても有効ですが、 Article はクォートで統一することを推奨します。


# Topic は入れ子にできます。Topic の文字列は fzf の検索対象ではありません。`crib` コマンドに引数として与えた文字列で Topic が絞り込まれます。
git:
  操作:
    # `+` から始まる Topic は fzf の検索対象になります。(`+` のあとに任意の空白文字を入れることができます。)
    # (ただし、fzf は環境によっては日本語を受け付けないのでキーワードをアルファベットで書くなど工夫が必要かもしれません。)
    # `+` から先にある入れ子の Topic は全て fzf での検索対象になります。
    + origin/main (master) を素早く remote に合わせる:
      - '$ git fetch'
      - '$ git branch -f main origin/main'
  基礎知識:
    + HEAD:
      - 'alias = @'
      - '@~ :: 最新の1つ前 (=ORIG_HEAD)'

About

show cheat sheet in command-line; with `crib` command.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published