私はこれらのスニペットでvim-snipmateアドオンを使用しています。
現在、Arduinoのスニペットファイルを作成中です。私は、c言語のすべてのスニペットがArduinoにも適していることに気づきました。
それらをコピーして貼り付けるのではなく、cファイル全体を含めてから、Arduino固有の部分を追加することを考えています。
だから私の質問は、他のファイルからのスニペットをあなたのスニペットファイルに含めることは可能ですか?
私はこれらのスニペットでvim-snipmateアドオンを使用しています。
現在、Arduinoのスニペットファイルを作成中です。私は、c言語のすべてのスニペットがArduinoにも適していることに気づきました。
それらをコピーして貼り付けるのではなく、cファイル全体を含めてから、Arduino固有の部分を追加することを考えています。
だから私の質問は、他のファイルからのスニペットをあなたのスニペットファイルに含めることは可能ですか?
(snipmateプラグインのドキュメントを検索した後、この質問に対する答えを見つけました)
スニペットファイルを別のスニペットファイルに含めることはできませんが、特定のファイルタイプに対して複数のスニペットを含めることはできます。.vimrcで次のように宣言しましたが、機能します。
" Add c snippets to Arduino
let g:snipMate = {}
let g:snipMate.scope_aliases = {}
let g:snipMate.scope_aliases['arduino'] = 'arduino,c'
私が作成したarduinoスニペットでこれを使用しています。
@Sudar:あなたのアプローチは良いですが、後で別の設定や言語がある場合は必要ありません。vimrcは肥大化します。
arduino.snippets
snipmateで作成してから:set ft=c.arduino
。Snipmateは、ファイルタイプに基づいてスニペットを識別します
あなたは特にsnipmateについて質問したので、これはやや外れたかもしれませんが、とにかく:snipmateに非常に似ている(いくつかの追加機能を備えた)UltiSnipsと呼ばれるプラグインもあります。UltiSnipsのスニペットファイルでは、要求したとおりに実行するextendsステートメントを使用できます。
いいえ。これらのスニペットをarduino.snippetsファイルにヤンク/貼り付ける必要があります。
$VIMRUNTIME/after/plugin/snipMate.vim
ファイルに以下を追加します。
call ExtractSnipsFile(g:snippets_dir.'arduino.snippets', 'c')
これにより、ファイルが解析さarduino.snippets
れ、ファイルタイプが初期化されます.c
。
基本的には、そのファイルからスニペットをロードし、それらを指定されたファイルタイプ(ケースc
ファイル)に追加するだけです。
使用に関するヘルプについては、GitHubのDocファイルExtractSnipsFile
を参照または参照してください:help ExtractSnipsFile
2018.03.14を編集
を使用して、同じファイルタイプの複数のスニペットファイルをロードすることができますUltiSnipsAddFiletypes
。たとえば、ファイルの.c
編集時にスニペットをロードする場合.arduino
は、次の行を次の行に追加するだけですftplugins/arduino.vim
。
UltiSnipsAddFiletypes arduino.c