vim配置php开发环境
1、ctags-用于代码间的跳转
安装
sudo apt-get install ctags
使用
1)、 在某个目录下, 建立tags.
ctags -R . --执行之后会在当前目录下生成一个tags文件
2)、 将tags文件加入.vimrc
在.vimrc中加入下面一行:
set tags=~/projects/tags --刚刚的生成tags的目录
NOTE: 如果有多个tag, 用逗号将其隔开, 逗号左右两边不要有空格.
至此即可使用。
3)、命令
ctrl+]来执行跳转
ctrl+t来跳转回来,ctrl+t可以带一个命令记数,以此作为往回跳的次数
:tags可以看到所有最近的跳转记录
:stag tagname可以隔开窗口显示
:help tags 可以查看所有的帮助
2、NERDTree-实现目录导航
https://github.com/scrooloose/nerdtree
下载
cd ~/.vim/bundle
配置
git clone https://github.com/scrooloose/nerdtree.git
1)、安装帮助文档
vim 中输入命令
:helptags ~/.vim/bundle/nerdtree/doc/NERD_tree.txt
执行:help NERD_tree.txt即可查看NERDTree的帮助文档
2)、将NERDTree加入到vim的启动目录中去
在$/VIM/vimrc文件或者本地的~/.vimrc中加入
set runtimepath=(..原有的查找文件),~/.vim/bundle/nerdtree
3)、设置打开NERDTree的快捷方式
在 .vimrc 添加如下内容
map <C-n> :NERDTreeToggle<CR> --设置ctrl+n为快捷启动方式
如果要在vim启动是就打开NERDTree
autocmd vimenter * NERDTree
4)、常用快捷键
C -将光标所在目录设置为根目录
u -转到上一级目录
o (enter)-展开(或折叠)光标所在目录的子目录。如果光标所在位置是一个文件,则在编辑窗口中打开该文件
3、代码自动补全
1)、Vim本身就可以自动补全:
<C-n><C-p>
不过默认只会查找当前标签页中所有打开的文件查找存在的函数、变量和方法等。
所以我们可以自己设置查找的文件
PHP 的函数列表文件:http://cvs.php.net/viewvc.cgi/phpdoc/funclist.txt
将funclist.txt放在~/.vim目录下,在.vimrc(~/.vimrc )中
配置:
set dictionary-=~/.vim/funclist.txt dictionary+=~/.vim/funclist.txt
set complete-=k complete +=k
4、TagList - 高效地浏览源码
下载
http://www.vim.org/scripts/script.php?script_id=273
配置
1)、使用taglist plugin,必须满足 一下三个条件:
a.打开vim的文件类型自动检测功能:filetype on
b.系统中装了Exuberant ctags工具,并且taglist plugin能够找到此工具(因为taglist需要调用它来生成tag文件)
c.你的vim支持system()调用 (一般都会支持)
2)、将taglist加到vim的启动目录中
方法一):
直接将taglist_46解压,将里面的doc/taglist.txt和plugin/taglist.vim
分别拷贝到$VIM/vimfiles/doc
和$VIM/vimfiles/plugin
目录里面(同gvim.exe一个目录)
方法二):
在$/VIM/vimrc文件或者本地的~/.vimrc中加入taglist_46目录
set runtimepath=(..原有的查找文件),/usr/share/vim/taglist_46
3)、使用
可以用”:TlistOpen“打开taglist窗口
用”:TlistClose“关闭taglist窗口
或者使用”:TlistToggle“在打开和关闭间切换。
在vimrc中定义快捷键,设置快捷键打开/关闭taglist窗口:
map <silent> <F9> :TlistToggle<cr>
以下在网上收集的常用的taglist的配置
" taglist
let Tlist_Auto_Highlight_Tag = 1
let Tlist_Auto_Open = 1
let Tlist_Auto_Update = 1
let Tlist_Close_On_Select = 0
let Tlist_Compact_Format = 0
let Tlist_Display_Prototype = 0
let Tlist_Display_Tag_Scope = 1
let Tlist_Enable_Fold_Column = 0
let Tlist_Exit_OnlyWindow = 0
let Tlist_File_Fold_Auto_Close = 0
let Tlist_GainFocus_On_ToggleOpen = 1
let Tlist_Hightlight_Tag_On_BufEnter = 1
let Tlist_Inc_Winwidth = 0
let Tlist_Max_Submenu_Items = 1
let Tlist_Max_Tag_Length = 30
let Tlist_Process_File_Always = 0
let Tlist_Show_Menu = 0
let Tlist_Show_One_File = 0
let Tlist_Sort_Type = "order"
let Tlist_Use_Horiz_Window = 0
let Tlist_Use_Right_Window = 1
let Tlist_WinWidth = 40
let tlist_php_settings = 'php;c:class;i:interfaces;d:constant;f:function'
版权声明:本文为博主原创文章,未经博主允许不得转载。
vim配置php开发环境的更多相关文章
- vim配置python开发环境
vim配置python开发环境 一.安装vim sudo apt-get install vim 二.vim基础配置 #Centos6.5 /usr/share/vim/vim72 vi /etc/v ...
- vim配置python开发环境(转)
安装 因为许多Unix衍生系统已经预装了Vim,我们首先要确认编辑器是否成功安装: vim --version 如果已经安装了,你应该看到类似下面的文字: VIM - Vi IMproved 7.3 ...
- Vim配置IDE开发环境
我的vim IDE界面: 1.安装Vim和Vim基本插件首先安装好Vim和Vim的基本插件.这些使用apt-get安装即可:lingd@ubuntu:~/arm$sudo apt-get instal ...
- linux vim 配置 go 开发环境
安装vim-go 插件 vim 暂时对golang 还不支持语法高亮,如果用户希望使用vim 开发golang 程序,还需要给vim 安装对应的插件 首先需要安装一个vim-pathogen vim插 ...
- vim配置clojure开发环境备忘录
1 需要使用的插件 vundle 使用教程 http://www.cnblogs.com/respawn/archive/2012/08/21/2649483.html vim-fireplace h ...
- vim配置C++开发环境 win10
资料一 —— vim插件的安装 https://www.cnblogs.com/tianzhiyi/p/5338032.html 资料二 —— vim多窗口操作: https://blog.csdn. ...
- 配置基于Vim的Python开发环境
配置基于Vim的Python开发环境插件 Vundle YouCompleteMe NERDTree Vim-Jinja2-Syntax set nocompatible " be iMpr ...
- Macbook Pro配置PHP开发环境
Macbook Pro配置PHP开发环境 安装环境如下: Mac OS 10.10.1 Apache 2.4.9 PHP 5.5.14 MySQL 5.6.22 Apache配置 在Mac OS 10 ...
- Mac配置Java开发环境
笔者从Window上转到Mac上做开发,一切配置都要重新开始,开发环境配置介绍如下: 1. 下载JDK 从下面链接选择合适版本的安装包进行下载...笔者下载的是jdk-9.0.1 链接:http:// ...
随机推荐
- 阅读推荐——深入浅出Mesos
深入浅出Mesos(一):为软件定义数据中心而生的操作系统http://www.infoq.com/cn/articles/analyse-mesos-part-01 深入浅出Mesos(二):Mes ...
- 23、jQuery九类选择器/jQuery常用Method-API/jQuery常用Event-API
1)掌握jQuery九类选择器及应用 2)掌握jQuery常用Method-API 3)掌握jQuery常用Event-API 一)jQuery九类选择器[参见jQueryAPI.chm手册] 目 ...
- Nginx使用手册目录
Nginx学习总结[第一篇]: Nginx简介 Nginx第二篇:Nginx部署及使用 Nginx第三篇:Nginx日志处理 Nginx第四篇:Nginx优化 Nginx第五篇:Nginx日常管理
- 【转】java URLConnection从网上下载图片或音乐
try { //根据String形式创建一个URL对象, URL url = new URL("http://www.baidu.com"); //实列一个URLconne ...
- ReactDom.render和React.render的区别
这个是react最新版api,也就是0.14版本做出的改变.主要是为了使React能在更多的不同环境下更快.更容易构建.于是把react分成了react和react-dom两个部分.这样就为web版的 ...
- 杭电1013-Digitai Root(这是一道考研编程题-天大2015)
Digital Roots Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Tot ...
- JAVA基础知识之多线程——控制线程
join线程 在某个线程中调用其他线程的join()方法,就会使当前线程进入阻塞状态,直到被join线程执行完为止.join方法类似于wait, 通常会在主线程中调用别的线程的join方法,这样可以保 ...
- Android图形系统之Surface、SurfaceView、SurfaceHolder及SurfaceHolder.Callback之间的联系
1.Surface Surface extends Objectimplements Parcelable java.lang.Object ↳ android.view.Surface Cla ...
- Android开发之Theme、Style探索及源码浅析
1 背景 前段时间群里有伙伴问到了关于Android开发中Theme与Style的问题,当然,这类东西在网上随便一搜一大把模板,所以关于怎么用的问题我想这里也就不做太多的说明了,我们这里把重点放在理解 ...
- NSIS学习记录の----NSIS多语言安装以及详解
NSIS多语言安装,很多教程提供了详细的代码,但是代码中某些语句的含义我还是不很明白,作为一个吃螃蟹的人,我做一个解释,避免很多小伙伴和我哟U一样的误区,以下结论都是自己根据实践得来,若发现理解错误, ...