vimrcを分割することは可能かつ有用ですか?


21

タイトルに従って、vimrcファイルをいくつかのサブファイルに分割することは可能ですか?1つのことに関係する設定のグループごとに個別のファイルを保持しますか?この事は何でも、設定のユーザー定義のグループのいずれかの種類があります。例えば、

[更新しました]

  • Python(-mode)関連の設定をすべて保持しvimrc.python-modeますか?
  • vimのカレンダーユーティリティの設定を保持しますvimrc.calendarか?
  • 色設定を別のファイルに保存しますか?
  • キープマッピング別のファイルに(ショートカット別名を?)?

3
逆に、ファイルタイプベースではなく場所ベースのグループ化。参照してくださいvi.stackexchange.com/q/77/205
muru

私が探している答えは、vi.stackexchange.com / a / 3152/1963の行の中にあるかもしれませんか?必要な特定のものに必要な設定を含むソースファイル
ニコスアレクサン

filetypeタグを削除しました-今のところは?質問は特定のファイルタイプに関するものであると読者に思わせますが、そうではありません。
ニコスアレクサン

元の質問を考えると、それは適切に思えた。
ムル

@muruはい、心配ありません。後で追加することもあります。ありがとうございました。
ニコスアレクサン

回答:


22

はい、これは可能かつ有用であり、ベストプラクティスと見なされます。Vim音声では、これらはファイルタイププラグインと呼ばれます。さらに、Vimには、いくつかの言語用の多くのファイルタイププラグイン(およびインデントおよび構文ファイル)が付属しています。

次のようにこれを有効にする必要があります.vimrc

filetype plugin on

次に、特定のファイルタイプ設定を、~/.vim/ftplugin/python.vimPython設定用のファイル(存在しないディレクトリの作成)に配置します。これはFAQでも取り上げられています。

更新(13.11.2015) 別の可能性もあります(ファイルタイプ固有のオプションを使用したくない場合):特定のファイルにいくつかのオプションをグループ化する場合、sourceor runtimeコマンドを使用できます。たとえば、myに.vimrcは次の行が含まれます。

" This script contains plugin specific settings
source ~/.vim/plugins.vim
" This script contains mappings
source ~/.vim/mapping.vim
" additional helper functions:
source ~/.vim/functions.vim
" For abbreviations read in the following file:
source ~/.vim/abbrev.vim

いいですね、すでにこれがあります!しかし、実際によく見たことはありませんでした。それで、vimrcを起動しました。ただし、特定のファイルタイプに関係のない設定はどうですか?
ニコスアレクサン

2
あなたが必要な場合が:he autoloadあり:he sourceますか?また、この回答を確認してくださいstackoverflow.com/a/805242/1821490
アレックスクロール

@AlexKrollはファイルタイププラグイン用ではありません。
クリスチャンブラバンド

@ChristianBrabandtあなたが望むすべてのもの。で任意のスクリプトをソースできます.vimrc。ちょうど置くsource my-funy-useful-script.vimあなたに行を.vimrc再起動(または後にそれとVimのロード:so $MYVIMRC命令)。また:he writing-library-scripts、あなたを助けるかもしれません。
アレックスクロール

@AlexKrollこれは私が探している答えに近いと思います。現在の回答を編集して展開しますか?または、別の回答をしますか?特定のファイルタイプだけを探しているわけではありません。私の質問でこれが明確であることを願っています。
ニコスアレクサン

4

あなたが望むことをすることは完全に可能です。他の何人かは、そのためにうまく機能するファイルタイププラグインについて言っています。

ただし、vimrcで.vimファイルをソースして、.vimrcを必要な数のファイルに分割できます。ファイルを入手するだけで機能します。ここでの例は、私の(おそらくあまり有用ではない)ドットファイルです。https://github.com/dspecht/dotfiles/


あなたの答えであなたがしたことの例とそれがなぜ機能するのか教えてください。
エバーグリーン
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.