vim 配置文件加载顺序笔记
来源:互联网 发布:echart 数据加载不合并 编辑:程序博客网 时间:2024/06/03 21:15
最新代码:git clone https://github.com/vim/vim.git
1. VIM执行入口 src/main.c,source_startup_scripts()执行初始化。
/*
* Try to read initialization commands from the following places:
* - environment variable VIMINIT
* - user vimrc file (s:.vimrc for Amiga, ~/.vimrc otherwise)
* - second user vimrc file ($VIM/.vimrc for Dos)
* - environment variable EXINIT
* - user exrc file (s:.exrc for Amiga, ~/.exrc otherwise)
* - second user exrc file ($VIM/.exrc for Dos)
* The first that exists is used, the rest is ignored.
*/
if (process_env((char_u *)"VIMINIT", TRUE) != OK)
{
if (do_source((char_u *)USR_VIMRC_FILE, TRUE, DOSO_VIMRC) == FAIL
#ifdef USR_VIMRC_FILE2
&& do_source((char_u *)USR_VIMRC_FILE2, TRUE,
DOSO_VIMRC) == FAIL
#endif
#ifdef USR_VIMRC_FILE3
&& do_source((char_u *)USR_VIMRC_FILE3, TRUE,
DOSO_VIMRC) == FAIL
#endif
#ifdef USR_VIMRC_FILE4
&& do_source((char_u *)USR_VIMRC_FILE4, TRUE,
DOSO_VIMRC) == FAIL
#endif
&& process_env((char_u *)"EXINIT", FALSE) == FAIL
&& do_source((char_u *)USR_EXRC_FILE, FALSE, DOSO_NONE) == FAIL
#ifdef USR_EXRC_FILE2
&& do_source((char_u *)USR_EXRC_FILE2, FALSE, DOSO_NONE) == FAIL
#endif
&& !has_dash_c_arg)
{
/* When no .vimrc file was found: source defaults.vim. */
do_source((char_u *)VIM_DEFAULTS_FILE, FALSE, DOSO_NONE);
}
}
2. Autoload
/*
* Return the autoload script name for a function or variable name.
* Returns NULL when out of memory.
*/
char_u *
autoload_name(char_u *name)
{
char_u *p;
char_u *scriptname;
/* Get the script file name: replace '#' with '/', append ".vim". */
scriptname = alloc((unsigned)(STRLEN(name) + 14));
if (scriptname == NULL)
return FALSE;
STRCPY(scriptname, "autoload/");
STRCAT(scriptname, name);
*vim_strrchr(scriptname, AUTOLOAD_CHAR) = NUL;
STRCAT(scriptname, ".vim");
while ((p = vim_strchr(scriptname, AUTOLOAD_CHAR)) != NULL)
*p = '/';
return scriptname;
}
3. 参考starting.txt文档,help initialization 或者 help startup。
- vim 配置文件加载顺序笔记
- Vim配置文件种类,加载顺序,基本配置
- Struts2配置文件加载顺序
- Struts 配置文件加载顺序
- bash配置文件加载顺序
- struts2 配置文件加载顺序
- struts2配置文件加载顺序
- Struts2配置文件加载顺序
- struts2配置文件加载顺序
- bash配置文件加载顺序
- Struts配置文件加载顺序
- MySQL配置文件加载顺序
- hadoop配置文件加载顺序
- hadoop配置文件加载顺序
- Struts2配置文件加载顺序
- Struts2常量配置文件加载顺序
- Struts2常量配置文件加载顺序
- tomcat加载应用程序配置文件顺序
- U盘重装系统win7_U盘安装win7教程
- 有序二维数组中查找指定元素
- 递归之斐波那契数列
- python爬虫入门--Requests库介绍及实例
- 399. Evaluate Division
- vim 配置文件加载顺序笔记
- Vs2017基于linux的C++开发
- jsp常见错误及解决方法
- POJ 2686 (状态转移dp)
- 去掉Bosch 物联网开发平台 XDK类eclipse 的控制台数据最大行数限制
- java基本树型结构实现
- Vue 2.0初学后个人总结及分享
- 剑指offer-数字在排序数组中出现的次数
- Android Activity学习笔记(一)