VimとNeovim向けのAIコードアシスタントプラグイン。エディタ内でOpenAI互換モデルによる生成・編集・チャットができます。
SirVer/ultisnips
VimとNeovim向けのスニペットエンジン。トリガーを、タブストップやプレースホルダー、Pythonで記述した処理を含むテンプレートに展開します。
- スター
- 7,697
- フォーク
- 675
- 未解決の Issue
- 0
- 最終コミット
- 2 か月前
これは何?
UltiSnipsはVimとNeovim向けのスニペットエンジンです。短いトリガー語を入力してキーを押すと、クラスのひな形やデバッグ用のprint文など、より大きなテキストに展開されます。複数のタブストップを定義して順に移動したり、別のプレースホルダーが変わると値が自動で更新されるプレースホルダーを使ったりできます。
スニペットは専用のファイル形式で記述し、展開時に動的なテキストを生成するPythonコードを埋め込むこともできます。エンジンとスニペット集は別々なので、スニペットライブラリと一緒にインストールするか、自分で作成します。YouCompleteMeやdeopleteなどの補完プラグインと連携でき、トリガーキーはVimの変数で設定できます。
主な機能
- 01VimとNeovimで、トリガー語を複数行のスニペットに展開します。
- 02複数のタブストップと、連動して更新されるプレースホルダーに対応しています。
- 03展開時にスニペット内のPythonコードを実行できます。
- 04YouCompleteMeやdeopleteなどの補完プラグインと連携します。
- 05トリガーキーとジャンプキーを設定できます。
ユースケース
- Vimでコードを編集しながら、クラスや関数のひな形、ライセンスヘッダーなどの定型文を挿入する。
- 繰り返し使うコーディングパターンをまとめた、自分用のスニペット集を作る。
- スニペット内のPython処理を使い、先に入力した内容に応じて変わるコードを生成する。
クイックスタート
- 1
プラグインマネージャーを使って、UltiSnipsのプラグイン行を.vimrcに追加します(READMEではVundleを使用しています)
- 2
必要に応じて、すぐに使えるスニペットを追加するhonza/vim-snippetsプラグインを追加します
- 3
.vimrcで展開とジャンプのトリガーキーを設定します。YouCompleteMeまたはcompletion-nvimを使っている場合は、<tab>を別のキーに変更してください
使う前に知っておきたいこと
- GPL-3.0ライセンスで提供されています。コピーレフトライセンスのため、派生物も同じ条件でオープンソースにする必要があります。
- VimとNeovim内でのみ動作するため、単体のツールとしては使えません。
トピック
よくある質問
- ultisnips とは?
- VimとNeovim向けのスニペットエンジン。トリガーを、タブストップやプレースホルダー、Pythonで記述した処理を含むテンプレートに展開します。 UltiSnipsはVimとNeovim向けのスニペットエンジンです。短いトリガー語を入力してキーを押すと、クラスのひな形やデバッグ用のprint文など、より大きなテキストに展開されます。複数のタブストップを定義して順に移動したり、別のプレースホルダーが変わると値が自動で更新されるプレースホルダーを使ったりできます。
- ultisnips は無料で使えますか?ライセンスは?
- ultisnips は GPL-3.0 ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- ultisnips は今もメンテナンスされていますか?
- 半年以内に更新あり。ultisnips の最終コミットは 2026年9月6日 です。
- ultisnips は何に使えますか?
- Vimでコードを編集しながら、クラスや関数のひな形、ライセンスヘッダーなどの定型文を挿入する。 繰り返し使うコーディングパターンをまとめた、自分用のスニペット集を作る。 スニペット内のPython処理を使い、先に入力した内容に応じて変わるコードを生成する。
- ultisnips のインストール方法は?
- プラグインマネージャーを使って、UltiSnipsのプラグイン行を.vimrcに追加します(READMEではVundleを使用しています) 必要に応じて、すぐに使えるスニペットを追加するhonza/vim-snippetsプラグインを追加します .vimrcで展開とジャンプのトリガーキーを設定します。YouCompleteMeまたはcompletion-nvimを使っている場合は、<tab>を別のキーに変更してください
- ultisnips はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/SirVer/ultisnips
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
Neovimは拡張性を高めるために再設計されたVimベースのテキストエディターで、プラグインや外部UIから操作できるLuaおよびRPC APIを備えています。
Swiftで開発されたNeovim用のmacOSネイティブGUI。ファイル検索やワークスペースなど、Mac向けの機能を備えています。
Neovimをさまざまな言語サーバーに接続するための、すぐに使えるLanguage Server Protocol設定集。
copilot.vimに代わる、GitHub Copilotのインライン候補や候補パネル、連携用APIを提供する純粋なLua製Neovimプラグイン。
Neovimを実際に組み込むことで、VS Code内でVimのキーバインドやモードをフル活用できる拡張機能です。