ですが、 apt-get や docker-compose を打っていると少し利点を感じました。
- 「Shift Key を押さなくて良い」
怠惰な私にとって採用理由として十分。なので zsh で使う function は kebab-case で記述しています。
さて、ここで小さな問題が発生しました。
neovim で利用している補完プラグインの deoplete が、default の設定では kebab-case を補完してくれない。
と、いうことで kebab-case も補完対象にするように設定したログです。
さて、ここで小さな問題が発生しました。
neovim で利用している補完プラグインの deoplete が、default の設定では kebab-case を補完してくれない。
と、いうことで kebab-case も補完対象にするように設定したログです。
環境
- OS: macOS Mojave 10.14.6
- zsh: 5.7.1 (x86_64-apple-darwin18.2.0)
- neovim: v0.4.3
- deoplete: master(記事執筆時 6e01000280)
- Python: 3.7.6
- pynvim: 0.4.1
補完の設定
まず、補完の対象を設定する変数などが無いか、:help deoplete で探します。
ありました。keyword_patterns で filetype 別に正規表現を指定すれば良さそうです。
というか ruby の補完サンプルもありますね。末尾の ! や ? に対応している。便利そう。
話が逸れました。まず、kebab-case にマッチしそうな正規表現として
というか ruby の補完サンプルもありますね。末尾の ! や ? に対応している。便利そう。
話が逸れました。まず、kebab-case にマッチしそうな正規表現として
- 最初の文字は alphabet と '_'
- それ以降は alpabet と '_' と '-' が0回以上繰り返される
とします。これを具体的な正規表現にすると
これで deoplete の補完対象の設定ができるようになりました。
zsh 以外の普段良く使う filetype の補完設定もしておきます。
zsh 以外の普段良く使う filetype の補完設定もしておきます。
- ruby: 先程発見した ruby の補完設定で、先頭に '@' を加えたもの
- text: 英数字も含めて補完対象を広めにしたもの
- _: help にあった定義をそのまま利用。なお、この設定は全 filetype に適用されます
これらを鑑みて設定した、私用の具体的な keyword_patterns の設定はこんな感じ。以下抜粋。