在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
一、首先确认电脑或服务器上已经安装VIM,如果不行没有的话可以去VIM官网(http://www.vim.org/download.php)载相应的版本进行安装。安装过程不再叙述。 二、开始配置vim 配置之前有几点先说明一下: I.为了方便叙述下文中如无特殊说明$VIM均为VIM的安装目录。 II.下文中的配置安装均在Linux(redhat)下完成,如有不同请自行调节或者给我留言,我会尽力解答。 III. 双引号 " 为配置文件注释符号 IV.当加入新doc时,需要执行命令:helptags $VIM/doc ,然后才能 :help ***
1.修改.vimrc后自动生效 在今后使用vim的日子里,你可能会频繁的更改你的.vimrc(VIM配置文件)所以我们先进行一些简单的配置使我们的修改更加方便 打开$VIM目录,可以看到其中有一个.vimrc文件,用vim打开此文件,删除所有内容后,在最后插入三行:
" 配置文件.vimrc更改后自动重新载入使设置生效 autocmd! bufwritepost .vimrc source ~/.vimrc “设置重新载入.vimrc快捷键 map <silent> <leader>ss :source ~/.vimrc<cr> “设置快速编辑.vimrc快捷键 map <silent> <leader>ee :e ~/.vimrc<cr>
上述设置让我们通过vim编辑.vimrc文件并保存时,可以自动载入.vimrc文件,使得我们对vim的定制可以立即生效(无需重启vim)。 2.使vim中文化 在.vimrc顶部增加下列文本:
“禁用VI兼容模式 set nocompatible “Vim 的内部编码 set encoding=utf-8 “Vim 在与屏幕/键盘交互时使用的编码(取决于实际的终端的设定) set termencoding=utf-8 “Vim 当前编辑的文件在存储时的编码 set fileencoding=utf-8 “Vim 打开文件时的尝试使用的编码 set fileencodings=ucs-bom,utf-8,gbk,default,latin1 “设置中文帮助 set helplang=cn
上述代码的作用是禁用vi兼容模式(原始的vi功能太少了,没必要考虑兼容)、按照utf-8、gbk的顺序来检测文件编码,并设置帮助为中文。不过设置set helplang=cn并不能马上看到中文帮助,我们还得下载中文帮助文件。 下载地址:http://vimcdoc.sourceforge.net/ 得到中文帮助文件压缩包后,将压缩包中doc子目录的所有文件复制到$VIM/doc/目录中,在VIM中执行执行:helptags $VIM/doc,如果没有doc目录,可先创建doc目录。此时再输入:help命令就可以看到中文帮助了。 3.设置字体 将该设置写入.vimrc文件。
"设置字体 if has("gui_running") set guifont=Consolas:h9 endif
上述代码中的if … endif是一个条件判断结构。指示只有当我们使用图形界面版的vim时才设置字体。 4.为编辑PHP代码进行基本设置 现在用vim打开.php文件看上去是很难看的,别说代码高亮,连行号都没有显示。所以还要给.vimrc添加以下内容:
“ 格式化高亮 syntax on “ 显示行号 set nu “ 括号匹配 set showmatch “自动检测文件类型 filetype plugin indent on “在缩进和遇到 Tab 键时使用空格替代 set expandtab "根据文件类型设置缩进格式 au FileType html,python,vim,javascript setl shiftwidth=2 au FileType html,python,vim,javascript setl tabstop=2 au FileType java,php setl shiftwidth=4 au FileType java,php setl tabstop=4
" 启动vim时不要自动折叠代码 set foldlevel=100 “自动对齐 set ai "依据上面的对起格式 set si set smarttab set wrap set lbr set tw=0 set foldmethod=syntax
上述设置启用了格式化高亮、行号显示,以及括号匹配、自动缩进等编辑功能,对于大多数情况都可以获得理想的编辑体验。不过此时对.php文件的支持还不完善,需要下载专门的php插件。 下载地址:http://www.vim.org/scripts/script.php?script_id=1571 将其中的php.vim复制到$VIM/syntax/目录中即可。如果没有该目录要先创建该目录。 5.设置喜欢的配色方案 默认的配色方案相信没几个人会喜欢,可以通过下面的网址查看配色方案并下载(有几百个哦)。 下载:http://www.cs.cmu.edu/~maverick/VimColorSchemeTest/index-c.html 这个网址列出了300多个配色方案以及实际的显示效果,点击方案名称即可下载到一个.vim文件。我用的是freya。将该文件放入$VIM/colors目录(如果没有该目录可先创建该目录),然后在vimrc中添加: " set color schema colorscheme freya 这两行代码需要加到if has("gui_running") … endif代码块中,例如: if has("gui_running") set guifont=Consolas:h9 " set color schema colorscheme freya endif 设置后显示效果就漂亮多了:-) 6.更多有用的编辑设置 虽然不是专门针对编辑.php文件的设置,但这些选项可以让vim更好用,所以建议加上(注释不在翻译,基本上大家应该都可以看懂): " Sets how many lines of history VIM har to remember set history=400 " Set to auto read when a file is changed from the outside set autoread " Have the mouse enabled all the time: set mouse=a " Do not redraw, when running macros.. lazyredraw set lz " set 7 lines to the curors - when moving vertical.. set so=7 " The commandbar is 2 high set cmdheight=2 " Change buffer - without saving set hid " Ignore case when searching " set ignorecase set incsearch " Set magic on set magic " No sound on errors. set noerrorbells set novisualbell set t_vb= " How many tenths of a second to blink set mat=4 " Highlight search things set hlsearch " Turn backup off set nobackup set nowb set noswapfile " smart backspace set backspace=start,indent,eol " switch buffers with Tab map <C-Tab> :bn<CR> map <S-Tab> :bp<CR>
经过一番改造,我们的vim已经可以很顺手的编辑.php文件了。不过要打造php开发环境还有很多工作要做呢。 先来个截图吧!
三、打造自己的PHP IDE 1、配置svn 大多时候我们不是一个人在战斗,所以接下来我们要配置一下vim中的SVN。 首先要下载svn插件svn.vim 下载地址:http://www.vim.org/scripts/script.php?script_id=743 将下载后的文件加压后放到相对应的文件夹里就可以了,如果doc中新加的文件不要忘了:helptags $VIM/doc。
如果配置好了,不知道如何使用可以用:help svn来查看。 一般svn插件中会有一些默认的快捷键,比如 <Leader><LocalLeader>c - Calls :Svn commit 还可以自己定义一些其他快捷键,只要在.vimrc中加入下面代码即可
"更新当前目录的代码 "提交SVN(当前文件)前先检查php语法
2、在程序中跳来跳去tags 先简单介绍一下tag Tag文件(标签文件)无疑是开发人员的利器之一,有了tag文件的协助,你可以在vim查看函数调用关系,类、结构、宏等的定义,可以在任意标签中跳 转、返回…… 对于程序来说,Tag文件中保存了诸如函数、类、结构、宏等的名字,它们所处的文件,以及如何通过Ex命令跳转到这些标签。它是一个纯文本文件,因此你可以手工的编辑它,也可以使用脚本对其进行操作。 通常我们使用名为ctags的程序来生成这样的tag文件。vim能直接使用ctags程序所生成的tag文件。在UNIX系统下的ctags功能比较 少,所以一般我们使用Exuberant Ctags(在大多数Linux系统上,它是缺省的ctags程序),它能够支持多达33种程序语言,足以满足我们开发的需要了。 这里是它的中文手册。如果你的系统上未安装此程序,请到http://ctags.sourceforge.net下载。 安装好以后去你的项目源码所在目录,我的是在/opt/Site/mpf/ 在该目录下运行命令: ctags –R 此时在/opt/Site/mpf/目录下会生成一个 tags 文件 用VIM打开你项目源码中的任意一个文件,再在vim中运行命令: :set tags=/opt/Site/mpf/tags 该命令将tags文件加入到vim中来, 你也可以将这句话放到$VIM/.vimrc中去, 如果你经常在这个项目中编程的话. 接下来我们可以试一下效果
3.教你高效地浏览源码 -- 插件: TagList 使用taglist plugin,必须满足 一下三个条件: a.打开vim的文件类型自动检测功能:filetype on b.系统中装了Exuberant ctags工具,并且taglist plugin能够找到此工具(因为taglist需要调用它来生成tag文件) c.你的vim支持system()调用 (一般都会支持)
如果满足以上条件,接下来就可以安装taglist plugin插件了。 下载地址:http://www.vim.org/scripts/script.php?script_id=273 安装完成后可以进行一些简单的配置
if MySys() == "windows" "设定windows系统中ctags程序的位置 let Tlist_Ctags_Cmd = 'ctags' elseif MySys() == "linux" "设定linux系统中ctags程序的位置 let Tlist_Ctags_Cmd = '/usr/bin/ctags‘ endif "只显示当前文件的 let Tlist_Show_One_File = 1 "如果taglist窗口是最后一个窗口,则退出vim let Tlist_Exit_OnlyWindow = 1 "在右侧窗口中显示taglist窗口配置好以后 let Tlist_Use_Right_Window = 1
可以用”:TlistOpen“打开taglist窗口 用”:TlistClose“关闭taglist窗口 或者使用”:TlistToggle“在打开和关闭间切换。 也可以在vimrc中定义快捷键,使用<F9>键就可以打开/关闭taglist窗口: map <silent> <F9> :TlistToggle<cr>
来个截图:
4.文件浏览 netrw 在vim 7.0以前,文件浏览功能由explorer.vim插件提供,在vim 7.0中,这个插件被netrw.vim插件所代替 netrw.vim是vim的标准插件,它已经伴随vim而发行,不需要安装。 我们现在试一下vim文件功能,当你使用vim尝试打开目录时,vim会自动调用netrw.vim插件打开该目录(从操作系统的视角来看,目录其实是一种特殊的文件)。 进入"$VIM "文件夹后运行vim, 然后在vim中运行命令 例如,我们在vim中执行命令”: e~ $VIM“,会显示下面的窗口:
这个窗口类似于文件管理器,你可以创建、删除、改名文件或目录;在目录上按回车时,会进入该目录;在文件上按回车时,会使用vim打开该文件;可以更改排序方式、排序风格;隐藏目录或文件(使之不在上述窗口中显示)等等。
5.缓冲区浏览 BufExplorer 在开发过程中,经常会打开很多缓冲区,尤其是使用tag文件在不同函数间跳转时,会不知不觉打开很多文件。要知道自己当前打开了哪些缓冲区,可以使用vim的”:ls“Ex命令查看。
开发过程中,又经常需要在不同文件间跳转。我习惯于使用”CTRL-^“来切换文件,这就需要知道文件所在的缓冲区编号。每次都使用”:ls“来找缓冲区编号很麻烦,所以我使用BufExplorer插件来显示缓冲区的信息。 下载:http://vim.sourceforge.net/scripts/script.php?script_id=42 下载后,把该文件在$VIM目录中解压缩,这会在你的$VIM/plugin和$VIM/doc目录中各放入一个文件: plugin/ bufexplorer.vim - bufexplorer插件 doc/ bufexplorer.txt - bufexplorer帮助文件 使用下面的命令生成帮助标签(下面的操作在vim中进行): :helptags $VIM/doc 然后,就可以使用”:help bufexplorer“命令查看BufExplorer的帮助文件了。 下面是我的一些配置 let g:bufExplorerDefaultHelp=0 " Do not show default help. let g:bufExplorerShowRelativePath=1 " Show relative paths. let g:bufExplorerSortBy='mru' " Sort by most recently used. let g:bufExplorerSplitRight=0 " Split left. let g:bufExplorerSplitVertical=1 " Split vertically. let g:bufExplorerSplitVertSize = 30 " |
2022-07-18
2022-08-16
2022-11-06
2022-07-29
2022-08-18
请发表评论