14

VIM用のsniptMateプラグインを使い始めたばかりですが、スニペットのコレクションはそれほど多くないので、スニペットファイルを開いて新しいスニペットを作成するのではなく、動的に新しいスニペットを追加できるようにしたいと思います。開発中です。

何かをコーディングしているときに、特定のコードをスニペットとして保存して、膨張コードを再度入力する手間を省くことができることに気付きました。現時点では、その言語のスニペットファイルを開かなくてもスニペットを追加できるようにしたいと考えています。当時使っています。

4

6 に答える 6

10

病原体を使用している場合は、元のスニペットを汚染することなく、独自のスニペットを作成できます。これを行うには、スニペットを に追加します~/.vim/bundle/mysnippets/snippets/*.snippets。参考までに、どんな名前でもかまいmysnippetsません。

_.snippetsさらに、ファイルタイプに関係なくどこでも利用できるスニペットを追加するディレクトリにファイルを追加するのが慣例です。

于 2012-09-24T10:15:31.570 に答える
6

このようにすることを意図しているかどうかはわかりませんが、MakeSnip現在作業中のファイル内から関数を呼び出すことができます。例えば:

:call MakeSnip(&ft, "foo", "<foo>${1}</foo>")

&ftは現在編集中のファイルのファイルタイプを渡します。"foo"はトリガーであり"<foo>${1}</foo>"、 は置換テキストです。

もちろん、このように作成されたスニペットは保持されません。では、別のバッファでスニペット ファイルを開き、必要に応じてそこで新しいスニペットを定義してから、次のようにします。

:call ReloadSnippets(&ft)

新しいスニペットが利用可能になります。ReloadSnippetsスニペット ファイルを作成するときに関数を呼び出すように autocmd を定義することもできます。

于 2011-08-15T15:18:43.160 に答える
5

独自のスニペットを配置する~/.vim/after/snippets/か、Windows で同等のものを配置できます...:h snipMateファイル名の構文については、お読みください。

于 2012-01-26T20:27:22.983 に答える
2

独自のスニペットを配置するだけです (編集するすべてのファイルで使用したい場合)。

~/.vim/after/snippets/_.snippets

例えば:

snippet test
  {"foo": "${1}", "bar": "${2}"}
于 2015-10-08T15:50:38.477 に答える
1

通常、Snipmate のスニペットは、snippets フォルダ内の「.vim」ディレクトリに保存されます。

作業している言語のスニペット ファイルは非常に簡単に編集できます。

于 2011-08-16T07:26:08.500 に答える
0

Windows で vundle を使用してプラグインを管理していて、インストール済みの場合

vim-snipMate & vim-snippets

' html ' ファイルタイプにカスタマイズを追加する場合は、次のフォルダーに移動します。

$HOME/vimfiles/bundle/vim-snippets/snippets/ 

新しいファイルを作成し、次の形式で名前を付けます。

html_bsmith.snippets  

(html の後にアンダースコアを付ける必要があります。:help snipmate を参照してください)

次に、vim はファイルを自動的に読み込みます。

カスタマイズをどこでも使用できる場合は、既存のファイルに入れるだけです。

    _.snippets
于 2016-07-21T16:40:57.360 に答える