我正在使用IntelliJ Idea的vim插件。我应该将该插件的.vimrc放在哪里。使用Windows XP
lmyy7pcs1#
最新版本的插件将从主目录中名为.ideavimrc的文件中读取设置。
.ideavimrc
在*nix上,可以通过~访问主目录。
~
在Windows上,您可以使用%HOMEPATH%环境变量。(通常为“C:\USERS<用户名>”或“C:\Documents and Settings<用户名>”,具体取决于您的Windows版本。)
%HOMEPATH%
kokeuurv2#
如果您在~目录(Windows中为/USERS/)中将.vimrc重命名为_ideavimrc
.vimrc
_ideavimrc
显然,VIM的Windows中使用了下划线而不是.
.
IntelliJ将尊重它
我费了好一阵子才让这件事奏效。
qvtsj1bj3#
在我的Mac上,我只需运行ln -s "$HOME/.vimrc" "$HOME/.ideavimrc"来创建一个符号链接,这样IntelliJ就可以使用与我的标准vim相同的.vimrc。
ln -s "$HOME/.vimrc" "$HOME/.ideavimrc"
我的.vimrc非常简单。但是,如果IntelliJ和VIM之间存在不兼容的配置,那么这种方法可能会有问题。
jjjwad0x4#
echo %homepath%
给我在Windows XP上的“主目录”,我需要把我的.vimrc放在哪里。
sg2wtvxw5#
不幸的是,JetBrains的vim插件并不能有效地支持.vimrc的全部功能。插件使用的文件名为.ideavimrc。这是您应该使用的,并且应该放在您的主目录中(有关详细信息,请参阅此other answer,特别是对于Windows)。
我用的是一台功能非常全面的.vimrc。不幸的是,我不得不将其削减相当多,才能作为.ideavimrc工作。你可以看看要点,看看有什么不同。不管它有什么价值,它仍然提供了很好的功能,包括跨标签和拆分的缓冲区切换。
那么为什么不对这两个文件使用相同的文件(即.vimrc)呢?首先,您需要在.ideavimrc中进行一些设置,使与IDE冲突的某些键盘快捷键优先于vim插件。有关我的设置,请参见我的.ideavimrc顶部(例如,sethandler <C-B> a:vim)。另一件事是,当我更复杂的.vimrc无法处理时,其他设置(如只处理set noerrorbells)也不会生效。
sethandler <C-B> a:vim
set noerrorbells
5条答案
按热度按时间lmyy7pcs1#
最新版本的插件将从主目录中名为
.ideavimrc
的文件中读取设置。在*nix上,可以通过
~
访问主目录。在Windows上,您可以使用
%HOMEPATH%
环境变量。(通常为“C:\USERS<用户名>”或“C:\Documents and Settings<用户名>”,具体取决于您的Windows版本。)kokeuurv2#
如果您在~目录(Windows中为/USERS/)中将
.vimrc
重命名为_ideavimrc
显然,VIM的Windows中使用了下划线而不是
.
IntelliJ将尊重它
我费了好一阵子才让这件事奏效。
qvtsj1bj3#
在我的Mac上,我只需运行
ln -s "$HOME/.vimrc" "$HOME/.ideavimrc"
来创建一个符号链接,这样IntelliJ就可以使用与我的标准vim相同的.vimrc
。我的
.vimrc
非常简单。但是,如果IntelliJ和VIM之间存在不兼容的配置,那么这种方法可能会有问题。jjjwad0x4#
给我在Windows XP上的“主目录”,
我需要把我的.vimrc放在哪里。
sg2wtvxw5#
不幸的是,JetBrains的vim插件并不能有效地支持
.vimrc
的全部功能。插件使用的文件名为.ideavimrc
。这是您应该使用的,并且应该放在您的主目录中(有关详细信息,请参阅此other answer,特别是对于Windows)。我用的是一台功能非常全面的
.vimrc
。不幸的是,我不得不将其削减相当多,才能作为.ideavimrc
工作。你可以看看要点,看看有什么不同。不管它有什么价值,它仍然提供了很好的功能,包括跨标签和拆分的缓冲区切换。那么为什么不对这两个文件使用相同的文件(即
.vimrc
)呢?首先,您需要在.ideavimrc
中进行一些设置,使与IDE冲突的某些键盘快捷键优先于vim插件。有关我的设置,请参见我的.ideavimrc顶部(例如,sethandler <C-B> a:vim
)。另一件事是,当我更复杂的.vimrc
无法处理时,其他设置(如只处理set noerrorbells
)也不会生效。