vim相关
保存和传递宏
1 先建立一个宏。如上
2 在任意一个文件的空白位置normal状态下,命令"ap 即可以把宏的内容显示出来。比如说我的宏是:
"ohello th
id<80>kb<80>kb<80>kbis is a a<80>kba<80>kbmaco of
vim.^["
3 这段内容保存或传递。
4 使用命令:let @a="ohello th
id<80>kb<80>kb<80>kbis is a a<80>kba<80>kbmaco of
vim.^["
或者参考修改宏的第三步。
5 其他人用@a命令就可以使用你制作的宏了。
2018年3月28日17:25:10 —— CentOS 安装vim
8.0
yum install
ncurses-devel
wget
https://github.com/vim/vim/archive/master.zip
unzip master.zip (如果没有unzip就 yum install unzip -y)
cd vim-master
cd src/
./configure
make
sudo make install
vim –version
2018年6月4日15:11:21 —— vim设置
1、vim ~/.vimrc并添加如下内容
set autoindent
set tabstop=4
set softtabstop=4
set expandtab
set number
set shiftwidth=4
set hls
set cindent
map <F2> :w<CR>
" --------------cscope 配置--------------
"if has("cscope")
"
set csprg=/usr/bin/cscope
"
set csto=0
"
set cst
"
set nocsverb
"
" add any database in current directory
"
if filereadable("cscope.out")
" cs add cscope.out
"
" else add database pointed to by environment
"
elseif $CSCOPE_DB != ""
" cs add $CSCOPE_DB
"
endif
"
set csverb
"endif
if has("cscope")
set csprg=/usr/bin/cscope
set csto=0
set cst
"set csverb
set cspc=3
"add any database in current dir
if filereadable("cscope.out")
cs add cscope.out
"else search cscope.out elsewhere
else
let cscope_file=findfile("cscope.out", ".;")
let cscope_pre=matchstr(cscope_file, ".*/")
if !empty(cscope_file) && filereadable(cscope_file)
exe "cs add" cscope_file cscope_pre
endif
endif
map
g<C-]> :cs find 3 <C-R>=expand(“<cword>”)<CR><CR>
map
g<C-/> :cs find 0 <C-R>=expand(“<cword>”)<CR><CR>
nmap
<C-_>s :cs find s
<C-R>=expand("<cword>")<CR><CR>
nmap
<C-_>g :cs find g <C-R>=expand("<cword>")<CR><CR>
nmap
<C-_>c :cs find c
<C-R>=expand("<cword>")<CR><CR>
nmap
<C-_>t :cs find t
<C-R>=expand("<cword>")<CR><CR>
nmap
<C-_>e :cs find e
<C-R>=expand("<cword>")<CR><CR>
nmap
<C-_>f :cs find f
<C-R>=expand("<cfile>")<CR><CR>
nmap
<C-_>i :cs find i
<C-R>=expand("<cfile>")<CR><CR>
nmap
<C-_>d :cs find d
<C-R>=expand("<cword>")<CR><CR>
endif
" --------------cscope 配置 结束--------------
2018年10月16日15:57:43 —— bundle设置
首先执行命令: git clone https://github.com/VundleVim/Vundle.vim.git ~/.vim/bundle/Vundle.vim
再将下面的配置粘贴到~/.vimrc中
" --------------vundle 配置开始--------------
set nocompatible " 去除VI一致性,必须要添加
filetype off " 必须要添加
" 设置包括vundle和初始化相关的runtime path
set rtp+=~/.vim/bundle/Vundle.vim
call vundle#begin()
" 另一种选择, 指定一个vundle安装插件的路径
"call vundle#begin('~/some/path/here')
" 让vundle管理插件版本,必须
Plugin 'VundleVim/Vundle.vim'
Plugin 'derekwyatt/vim-scala' "显示scala语法
"" 以下范例用来支持不同格式的插件安装.
"" 请将安装插件的命令放在vundle#begin和vundle#end之间.
"" Github上的插件
"" 格式为 Plugin '用户名/插件仓库名'
"Plugin 'tpope/vim-fugitive'
"" 来自 http://vim-scripts.org/vim/scripts.html 的插件
"" Plugin '插件名称' 实际上是 Plugin 'vim-scripts/插件仓库名' 只是此处的用户名可以省略
"Plugin 'L9'
"" 由Git支持但不再github上的插件仓库 Plugin 'git clone 后面的地址'
"Plugin 'git://git.wincent.com/command-t.git'
"" 本地的Git仓库(例如自己的插件) Plugin 'file:///+本地插件仓库绝对路径'
"Plugin 'file:///home/gmarik/path/to/plugin'
"" 插件在仓库的子目录中.
"" 正确指定路径用以设置runtimepath. 以下范例插件在sparkup/vim目录下
"Plugin 'rstacruz/sparkup', {'rtp': 'vim/'}
"" 安装L9,如果已经安装过这个插件,可利用以下格式避免命名冲突
"Plugin 'ascenator/L9', {'name': 'newL9'}
" 自己的插件
" Plugin 'autoload_cscope.vim'
" 你的所有插件需要在下面这行之前
call vundle#end() " 必须
filetype plugin indent on " 必须 加载vim自带和插件相应的语法和文件类型相关脚本
" 忽视插件改变缩进,可以使用以下替代:
"filetype plugin on
"
" 常用的命令
" :PluginList - 列出所有已配置的插件
" :PluginInstall - 安装插件,追加 `!` 用以更新或使用 :PluginUpdate
" :PluginSearch foo - 搜索 foo ; 追加 `!` 清除本地缓存
" :PluginClean - 清除未使用插件,需要确认; 追加 `!` 自动批准移除未使用插件
"
" 查阅 :h vundle 获取更多细节和wiki以及FAQ
" 将你自己对非插件片段放在这行之后
" --------------vundle 配置结束--------------
2018年7月27日21:28:52 —— ubuntu 安装 cscope
sudo apt-get install cscope
1、建立数据库
在代码根目录下执行 cscope –bR
其中-R是递归建立
2、常用命令
1》查找定义
光标移到符号或函数上,按 ctrl+]
2》查找符号
:cs find s xxx
3》查找函数foo()在什么地方被调用
光标移动到函数名上,按ctrl+shift+减号+c
4》上面的vim配置可以保证,进入到项目的任何一个目录下都可以使用cscope
2018年7月30日9:52:44 —— 查找windows下vimrc的位置
打开一个vim然后输入 :echo $VIM
windows下不要产生 .un~ undofile
在_vimrc 里面添加:set noundofile
2018年8月1日22:22:28 —— vim粘贴外部文本保持格式
打开vim输入如下命令:
:set paste
如果在ubuntu中就按shift + insert进行粘贴,这时候是原格式粘贴,粘贴完之后再执行
:set nopaste
不关闭vim 重新加载配置文件 .vimrc(使配置文件生效)
打开vim之后,输入 :so $MYVIMRC
更新到vim8.1之后按backspace无法连续删除多行
:set backspace=indent,eol,start
更新vim到8.1
如果是utunbu 16.04 LTS 下安装,需要先更新基础库
sudo aptitude install libncurses5-dev libgnome2-dev libgnomeui-dev \
libgtk2.-dev libatk1.-dev libbonoboui2-dev \
libcairo2-dev libx11-dev libxpm-dev libxt-dev python-dev \
python3-dev ruby-dev liblua5. lua5.-dev libperl-dev git
sudo apt-get install build-essential
1.下载vim
官网:https://www.vim.org/
最新版本为vim 8.1,历史版本可以从这里下载:ftp://ftp.vim.org/pub/vim/unix
我这里安装的是vim8.1。
下载 vim-8.1.tar.bz2
2.解压
tar -jxvf vim-8.1.tar.bz2
3.执行
./configure
在安装插件的时候如果提示:
requires Vim compiled with Python (2.7.1+ or 3.4+) support,则需要在此步骤增加对Python的支持,如果支持Python2,则增加:
–enable-pythoninterp=yes
如果支持Python3,则增加–enable-python3interp=yes
4. make
5.修改prefix
在解压后的路径下,vim src/auto/config.mk
找到prefix变量,默认是/usr/local。修改成目标路径
6. 执行make install完成安装
7.安装完成后,此时执行vim发现还是原来的版本,需要为vim定义别名。
执行 vim ~/.bashrc
添加上下列语句
alias vim=”/home/cuixianpeng/vim81/bin/vim”
重新查看版本
vim相关的更多相关文章
- 20145234黄斐《信息安全系统设计基础》第八周(Linux下vim相关命令)
Linux下vim相关命令 在编辑程序时经常使用vim,所以记住一些常用的指令还是很有必要的 文件命令 vim file 打开单个文件vim file vim file1 file2 file3 .. ...
- Linux系列笔记 - vim相关记录
一.常用到的vim命令 这里只简单记录常用到的命令,后面会有自己记录的命令,但有些可能不常用. 常规模式: gg 跳到文件头 shift+g 跳到文件尾 行数+gg 跳到指定行 如:123gg 跳到1 ...
- vim相关命令单独记载
1. 无敌的可扩展性 1.1 可扩展性给了软件强大的生命 曾几何时,Windows用户对软件的可扩展性没有概念,他们只能对他们使用的软件进行非常有限的定制.扩展软件的权利保留在软件开发者手中.软件的使 ...
- 架构师养成记--26.vi/vim相关操作
vi/vim命令模式插入模式 aio编辑模式 : aio就是vi/vim的插入模式命令 作用a 在光标后附加文本A 在本行末附加文本i 在光标钱插 ...
- bundle中vim相关快捷键的使用
http://www.cnblogs.com/respawn/archive/2012/08/21/2649483.html http://blog.163.com/liao_ya/blog/stat ...
- Vim相关优化和配置
升级pythonwget https://www.python.org/ftp/python/3.6.5/Python-3.6.5.tgztar -xvf Python-3.6.5.tgzcd Pyt ...
- Vim相关问题
1.vim格式修改 进入配置文件: $ sudo vim /etc/vim/vimrc 在文件末尾添加: #默认查找忽略大小写 set ignorecase #如果有一个大写字母,则切换到大小姐敏感查 ...
- vim相关资料
http://www.360doc.cn/article/15064667_402846667.html http://blog.jobbole.com/86809/ http://blog.csdn ...
- vim 学习相关记录
VIM 相关内容****************** vim 的三个模式: 编辑模式 --> 输入模式 --> 末行模式 编辑模式: 通常键入键盘值被理解成一个操作; 如: dd(删除行) ...
随机推荐
- hadoop 设置回收站
我的问题是:hadoop回收站为什么会保留多个过期时间的数据 我们知道hadoop的回收站是在我们删除数据后能恢复的目录,但是我们并不希望在回收站保存太久的数据,我们可以使用如下参数进行配置. ...
- Android开发 ---基本UI组件5:监听下拉选项,动态绑定下拉选项、全选/反选,取多选按钮的值,长按事件,长按删除,适配器的使用,提示查询数据,activity控制多按钮
效果图: 效果描述: 1.当点击 1 按钮后,进入选择城市的页面,会监听到你选中的城市名称:动态为Spinner绑定数据 2.当点击 2 按钮后,进入自动查询数据页面,只要输入首字母,就会动态查找以该 ...
- ubuntu 16.04 安装brackets
1 github 上下载deb包 2 双击deb包但是安装不了(无任何提示,是因为缺少lib文件) 网上给出的解决方案 使用debtool 接压 deb包 把缺少的lib复制进去 配置文件中去掉该 l ...
- Java语法基础学习DaySeventeen(多线程续)
一.线程的特点 1.线程的分类 java中的线程分为两类:守护线程和用户线程.唯一的区别是判断JVM何时离开. 守护线程是用来服务用户线程的,通过在start()方法前调用Thread.setDaem ...
- ionic3 自定义组件 滑动选择器 ion-multi-picker
1.ionic3中有一个 ion-datatime 给大家选择时间提供了一个很方便的组件 效果如图 链接 https://ionicframework.com/docs/api/component ...
- 学习Hibenate随笔
1.Hibenate是一个开放源代码的对象关系映射框架,它对JDBC进行了轻量级的对象封装,将pojo类与数据库表建立映射关系,是一个全自动orm框架,Hibenate可以自动生成sql语句,自动执行 ...
- 剑指Offer 18. 二叉树的镜像 (二叉树)
题目描述 操作给定的二叉树,将其变换为源二叉树的镜像. 输入描述: 二叉树的镜像定义:源二叉树 8 / \ 6 10 / \ / \ 5 7 9 11 镜像二叉树 8 / \ 10 6 / \ / \ ...
- 05_解决mac百度网盘下载速度慢问题
第一步:下载软件 下载工具包:aria2GUI和chrom插件 链接:https://pan.baidu.com/s/104t6aZXx9zfxBV9rS_eLfg 密码:yg96 ①下载Aria2 ...
- RPi 3B Aduio 3.5mm output
/********************************************************************** * RPi 3B Aduio 3.5mm output ...
- 类Shiro权限校验框架的设计和实现
前言: 之前简单集成了springmvc和shiro用于后台管理平台的权限控制, 设计思路非常的优美, 而且编程确实非常的方便和简洁. 唯一的不足, 我觉得配置稍有些繁琐. 当时我有个小想法, 觉得可 ...