bash - 从 Bash 确定 Vimfiles 目录

标签 bash vim cross-platform dotfiles

我想获取用户的vimfiles目录。鉴于用户可以使用 ~/.vim/ 以外的目录,从 vimvimfiles 变量检索目录将是最佳交叉- 平台方式来做到这一点。但如何呢?

我认为调用像 vim -q -c COMMAND 这样的东西实际上可能是解决方案,但我不确定要使用的 COMMAND

最佳答案

我认为这会达到你想要的效果。

vim -c ':exec ":silent !echo ".&rtp | exec ":q!"'

在我的笔记本电脑上,这是结果(为了可读性而重新格式化)。

/Users/dan/.vim,/Users/dan/.vim/bundle/ack,/Users/dan/.vim/bundle/fugitive,
/Users/dan/.vim/bundle/json,/Users/dan/.vim/bundle/my-ackmore,
/Users/dan/.vim/bundle/my-endwise,/Users/dan/.vim/bundle/pathogen,
/Users/dan/.vim/bundle/perl,/Users/dan/.vim/bundle/pgsql,
/Users/dan/.vim/bundle/quickrun,/Users/dan/.vim/bundle/repeat,
/Users/dan/.vim/bundle/signify,/Users/dan/.vim/bundle/statline,
/Users/dan/.vim/bundle/surround,/Users/dan/.vim/bundle/tcomment,
/usr/share/vim/vimfiles,/usr/share/vim/vim73,
/usr/share/vim/vimfiles/after,/Users/dan/.vim/after

您可以在 :help $VIM 中阅读有关 Vim 启动的更多信息。

更新:根据要求,这里有一个变体,仅显示列表中的第一个条目,我认为应该是vimfiles:

vim -c ':exec ":silent !echo " . split(&rtp,",")[0] | exec ":q!"'

关于bash - 从 Bash 确定 Vimfiles 目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33225511/

相关文章:

mysql - 使用 Bash 脚本进行数据库归档

linux - 如何在linux bash shell中定义$i?

bash - 在 bash 提示符下倒退

vim - 如何在 vim 中映射 <c-leader>?

vim - 使用 macOS Terminal.app 进入插入模式时,如何在 Vim 中更改光标形状?

vim - 如何在Vim中阻止(列?)粘贴

cross-platform - 什么是好的跨平台游戏 API?

c++ - C++读写文件的快速跨平台算法

android - 如果我不关心 App Store,我可以使用 Adob​​e AIR 为 Android 和 iPhone 开发吗?

php - Laravel Forge 使用守护进程长期运行的 Artisan 命令