Vim+Taglist+AutoComplPop之代码目录分栏信息和自动补全提示(Ubuntu环境)
一步:
首先在Ubuntu环境中安装ctags: sudo apt-get install ctags
第二部:
安装Taglist-------------Taglist是vim的一个插件,提供源代码符号的结构化视图。从http://www.vim.org/scripts/script.php?script_id=273下载安装包,也可以从http://vim-taglist.sourceforge.net/index.html下载。
解压:
1.$unzip -d taglist taglist_xx.zip
2.$cd taglist
复制到指定路径下:
1.$cp doc/taglist.txt /usr/share/vim/vim73/doc/
2.$cp plugin/taglist.vim /usr/share/vim/vim73/plugin/
(备注:以上两行指令中的vim73可以依据Ubuntu版本情况更改数字,比如我的是Ubuntu18版本的就改为vim80,Ubuntu12版本的改为vim73)
第三部:输入指令 $sudo nano /etc/vim/vimrc 打开文件后添加如下代码:
imap () ()<Left>
imap [] []<Left>
imap {} {}<Left>
imap "" ""<Left>
imap '' ''<Left>
imap <> <><Left>
inoremap <c-z> <left>
inoremap <c-j> <down>
inoremap <c-k> <up>
inoremap <c-l> <right>
:set tabstop=4
:set softtabstop=4
:set expandtab
:set nu
:set ruler " show the cursor position all the time
:set cino=g0,:0 "switch case对齐风格
syntax on
:set completeopt=preview,menu
:set completeopt=longest,menu
:set wildmenu
:set backspace=2
:set nobackup
autocmd FileType ruby,eruby set omnifunc=rubycomplete#Complete
autocmd FileType python set omnifunc=pythoncomplete#Complete
autocmd FileType javascript set omnifunc=javascriptcomplete#CompleteJS
autocmd FileType html set omnifunc=htmlcomplete#CompleteTags
autocmd FileType css set omnifunc=csscomplete#CompleteCSS
autocmd FileType xml set omnifunc=xmlcomplete#CompleteTags
autocmd FileType java set omnifunc=javacomplete#Complet
"taglist 设置
let Tlist_Auto_Open=1
:set tags=tags
:set autochdir
"只显示当前文件的tags
let Tlist_Enable_Fold_Column = 1
let Tlist_Show_One_File = 1
"设置taglist宽度
let Tlist_WinWidth=30
"taglist 窗口是最后一个窗口,则退出VIM
let Tlist_Exit_OnlyWindow=1
"在VIM窗口右侧显示taglist窗口
let Tlist_Use_Right_Window=1
let g:acp_behaviorKeywordCommand = "\<C-x>\<C-o>"
function HeaderPython()
call setline(1, "#!/usr/bin/env python")
call append(1, "#-*- coding:utf8 -*-")
normal G
normal o
normal o
endf
autocmd bufnewfile *.py call HeaderPython()
第四部:安装AutoComplPop
下载:http://www.vim.org/scripts/script.php?script_id=1879 同其他脚本插件的安装方法一致,将解压后的文件拷贝到~/.vim/ 下的相应目录里:
a)先创建三个文件夹autoload、doc、plugin:
cd ~/.vim
mkdir doc autoload plugin

b)然后进入到解压后的AutoComplPop目录里,进行如下操作:
cp autoload/* ~/.vim/autoload
cp doc/* ~/.vim/doc
cp plugin/* ~/.vim/plugin

c)最后重新打开vim,命令行输入:vim 在打开的界面底部输入:helptags ~/.vim/doc/按下Enter键执行即可。
至此,安装配置结束,随意打开一个.h头文件,效果如下:
自动补全效果如下:

Vim+Taglist+AutoComplPop之代码目录分栏信息和自动补全提示(Ubuntu环境)的更多相关文章
- Linux --- vim 安装、支持python3的配置、插件自动补全YCM的安装配置及全过程错误总结
1.git(用来下载vim和相关插件) sudo apt-get install git 2,cmake(用来编译clang-llvm) sudo apt-get install build-esse ...
- Vimer的福音 新时代的Vim C++自动补全插件 clang_complete
使用vim的各位肯定尝试过各种各样的自动补全插件,比如说大名鼎鼎的 OmniCppComplete .这一类的插件都是对 Ctags 生成的符号表进行字符串匹配来获得可能的补全项.他们在编写 C 代码 ...
- ADT开发中的一些优化设置:代码背景色、代码字体大小、代码自动补全
初学Android开发,在网上找到一些ADT工具的优化,自己设置好了,截图保存下来.免得以后忘了. 1. 设置背景颜色: 色调85.饱和度90.亮度205 RGB:199.237.204 2. 设置代 ...
- 新时代的Vim C++自动补全插件 clang_complete
Vimer的福音 新时代的Vim C++自动补全插件 clang_complete 使用vim的各位肯定尝试过各种各样的自动补全插件,比如说大名鼎鼎的 OmniCppComplete .这一类的插 ...
- Linux下QTCreator代码自动补全(是真的自动补全,不是手动触发)
在使用Windows下的QTCreator的时候,像visual studio一样代码自动补全十分方便,而在Linux下,QTCreator似乎不能做到. 网上有些说是可以设置成手动补全,今天试了一下 ...
- 基于linux vim环境python代码自动补全
(一)简述 在使用vim编写python文件的过程中,默认的vim不会实现代码补全功能,在写程序或者是改程序的时候不是很方面,很容易出错,但是vim提供了各种插件,其中包括这个python文件的自动补 ...
- vim 添加php自动补全 并格式化代码
自动补全,修改/etc/vimrc的配置 vim /etc/vimrc 添加: filetype plugin on autocmd FileType php set omnifunc=phpcomp ...
- VIM自动补全Python代码
pydiction插件 https://codeload.github.com/rkulla/pydiction/zip/master 新建bundle文件夹 mkdir ~/.vim/bundle ...
- linux下vim python代码自动补全
一.vim python自动补全插件:pydiction 可以实现下面python代码的自动补全: 1.简单python关键词补全 2.python 函数补全带括号 3.python 模块补全 4.p ...
随机推荐
- stm32WB55xx 外设资源
1.FLASH(闪存) 2.Radio System(无线系统:兼容BLE5.0与IEEE802.15.4标准,由2.4GHz射频前端.BLE和IEEE802.15.4物理层控制器组成,无线低功耗协议 ...
- 20165303魏煜第一周kali安装
1.根据网址下载kali 这是kali的下载地址https://www.kali.org 找到download选择Kali Linux 64 bit VMware VM,点击后面蓝色部分开始下载选择6 ...
- CNN 分割
测试的是Cifar10数据集,采用VGG模型的网络参数是[32, 'M', 64, 'M', 128, 128, 'M', 256, 256, 'M', 256, 256],准确度大概在90.6左右 ...
- multiThread (一)
并发系列(1)之 Thread 详解 阅读目录 一.线程概述 二.线程状态 三.源码分析 1. native注册 2. 构造方法和成员变量 3. start 方法 4. exit 方法 5. 弃用 ...
- python 近义词库包 synonyms 的使用
最近接触到nlp的一些东西,需要找出中文词语的近义词,也接触到了一个synonyms 的库, 分词,去停用词,word2vector 等 一些列nlp 的操作,还可以输出中文词语的近义词 https ...
- webpack打包vue项目,资源路径如何从绝对路径改为相对路径?css中的图片资源如何修改配置?
资源相对引用路径 问题描述 一般情况下,通过webpack+vuecli默认打包的css.js等资源,路径都是绝对的. 但当部署到带有文件夹的项目中,这种绝对路径就会出现问题,因为把配置的static ...
- 手动脱壳—dump与重建输入表(转)
文章中用到的demo下载地址: http://download.csdn.net/detail/ccnyou/4540254 附件中包含demo以及文章word原稿 用到工具: Ollydbg Lor ...
- 2018项目总结(vue+apicloud)
一.关于字数统计的问题 在使用textarea时常会对textarea中的文字数目进行统计,一般来说,可以使用onkeyup事件来解决问题. <textarea id="descrip ...
- js 获取二级域名
js获取页面完整地址: window.location.href; var s =" https://ejym.baidu.com"; var h = s.s ...
- python面试题总结(1)
1.python常用的数据类型. int.float.str.set.list.dict.tuple.frozenset.bool.None. 2.docstring是什么? Docstring是一种 ...
