私の .vimrc を私のリポジトリからのものに向けるシンボリックリンクがあります。
Vimは問題なくロードしますが、変更時に自動ソースにすることはできません。
私は典型的なものを持っています:
if has("autocmd")
autocmd! BufWritePost .vimrc source $MYVIMRC
endif
vimrcがシンボリックリンクされていない場合に機能します。
私の .vimrc を私のリポジトリからのものに向けるシンボリックリンクがあります。
Vimは問題なくロードしますが、変更時に自動ソースにすることはできません。
私は典型的なものを持っています:
if has("autocmd")
autocmd! BufWritePost .vimrc source $MYVIMRC
endif
vimrcがシンボリックリンクされていない場合に機能します。
私はすべての設定を dotfiles フォルダー https://github.com/lis2/dotfilesに保持しているという方法でその問題を解決しました
次に、構成で何かを変更するときに実行する小さくてシンプルなルビースクリプトがあります
#!/usr/bin/env ruby
require "fileutils"
config_hash = { "tmux.conf" => ".tmux.conf", "vimrc" => ".vimrc", "vim" => ".vim", "gitconfig" => ".gitconfig", "gitignore" => ".gitignore"}
config_hash.each do |k,v|
FileUtils.rm_rf(File.dirname(__FILE__) + "/../#{v}")
FileUtils.ln_s(File.dirname(__FILE__) + "/#{k}", File.dirname(__FILE__) + "/../#{v}")
end
同じ構成を構築することをお勧めします。すべてのコンピューター (プライベート/仕事用) で、レポを複製し、symlink.rb を実行するだけで、シンプルな環境が準備完了です。
乾杯!
あなたが説明しているように、.vimrcと.gvimrcの両方をgitリポジトリにシンボリックリンクしています。MacVim macOS を実行しています。
私は、 progressive-slower-reloading-time-of-vimrcという質問に対する素晴らしい答えを見つけました。
いずれかが変更されたときに vimrc と gvimrc の両方をリロードするように少し変更しました。何ヶ月も問題なく使用しています。
ここにあります。これと .vimrc だけが必要です。.gvimrc に何も追加する必要はありません。
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" Autoreload vimrc
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
augroup configsGroup
autocmd!
" Make changes effective after saving .vimrc. Beware that autocommands are
" duplicated if .vimrc gets sourced again, unless they are wrapped in an
" augroup and the autocommands are cleared first using 'autocmd!'
autocmd! bufwritepost *\<vimrc\> call OnSavingConfigs()
autocmd! bufwritepost *\<gvimrc\> call OnSavingConfigs()
augroup END
" Avoid infinite loops
if !exists("*OnSavingConfigs")
function! OnSavingConfigs()
" Clear previous mappings, they don't go away automatically when
" sourcing vimrc.
mapclear
source $MYGVIMRC
source $MYVIMRC
redraw
echo "Reloaded " . $MYVIMRC . " and " . $MYGVIMRC . "."
endfunction
endif