vim的配置文件及常用的快捷键
一些最简单的配置,即在.vimrc中可以写入的配置:
首先,说明一点,在.vimrc文件中,可以用“ 把一行的配置注销掉。
set nocompatible “关闭 vi 兼容模式;其中 compatilble 英文意思就是兼容
set nobackup “覆盖文件时,不备份;其中 backup 英文意思就是备份的意思
syntax on “ 自动语法高亮; syntax表示语法的意思;
set number “ 显示行号;
set cursorline ” 突显当前的行; 其中cursor 英语就是光标的意思(在打开状态栏的前提下有作用);
set ruler “ 打开状态栏标尺;
set tabstop=8 “ 表示tab键长度为8;
set smartindent “set smartindent :为C程序提供自动缩进
set cindent “ 可以自动缩进; 其中 incent 表示缩进的意思;以上两行都是编程用的c自动缩进
1.设置(软)制表符宽度为4
set tabstop=4
set softtabstop=4
2.设置缩进的空格数为4
set shiftwidth=4
3.设置自动缩进:即每行的缩进值与上一行相等;使用 noautoindent 取消设置:
set autoindent
4.使用 C/C++ 语言的自动缩进方式
set cindent
5.设置C/C++语言的具体缩进方式(以我的windows风格为例):
set cinoptions={0,1s,t0,n-2,p2s,(03s,=.5s,>1s,=1s,:1s
6.显示行号
set nu
7.显示标尺
set ruler
8.将搜索内容反白
set hlsearch
9.可以删除任意值
set backspace=2
一些简单的快捷键
说明:vimtutor 是一个很好的 vim 学习文档,在命令行直接输入 vimtutor 即可。
用 A 在一行的末尾添加;
删除相关的按键:
x删除光标处的一个字母;
一个简短的动作列表:
dw - 从当前光标当前位置直到下一个单词起始处(包括与下一单词间的空格),也可以为d2w,d3w;
de - 与上面相同, 但是(不包括与下一个单词间的空格),也可以d2e,d3w;
d$ - 删除从当前光标当前位置直到当前行末。d0-删除从当前光标当前位置直到当前行首。
dd- 删除光标所在的行; 试试2dd的效果??
另处,
还有,要改变文本直到一个单词的末尾,请输入 ce 或 cw;
还有,c0,c$,可以自己试试 ,与d0,d$相似;
光标移动相关按键:
最基本的移动键:hjkl;
输入$移动到行首;输入0,移动到行尾;
输入w或e,一个个单词的移动;
b:与w相反;
ge:与e相反
输入 :0 (数字零) 或gg 移动光标到文件首。
输入 :$ 或 G 移动光标到文件末。
输入 :+数字 ,光标移动到“数字”行。
输入 2w 使光标向后移动两个单词。
输入 3e 使光标向后移动到第三个单词的末尾。
0,当前行行首;
$,当前行行尾;
H 前屏幕首行行首
M 屏幕显示文件间行行首
L 前屏幕底行行首
显示相关按键:
ctrl + g ,显示文件状态与光标所在行;
撤消相关的按键:
输入 u 来撤消最后执行的命令;
输入 U 来撤消对整行的修改。
输入ctrl-r恢复被撤消的命令;
复制粘贴键:
p为粘贴鍵;
y为复制键;
使用 v 进入可视模式,,移动光标选中,使用操作符 y 复制文本,使用 p 粘贴文本。
按ctrl+v,进入块选择可视模式;
替换相关按键;
s 将当前字符替换为一个或多个字符
S 将当前行替换为一个或多个字符
输入 r 和一个字符替换光标所在位置的字符。
输入大写的 R 可连续替换多个字符。
输入 :s/old/new/g 可以替换 old 为 new, 光标所在的一行;
输入 :s/old/new。请注意该命令只改变光标所在行的第一个匹配串。
输入 :#,#s/old/new/g 其中 #,# 代表的是替换操作的若干行中首尾两行的行号。
输入 :%s/old/new/g 则是替换整个文件中的每个匹配串。
插入:
按i,在光标处插入;
输入 o 将在光标的下方打开新的一行并进入插入模式。
输入 O 将在光标的上方打开新的一行并进入插入模式。
查找:
首先:
:set ic(ignorecase 的缩写) 忽略大小写
:set noic(noignorecase 的缩写) 不忽略大小写输入/ 或?(搜索方向不一样),再输入你要找的内容,就可以啦,输入n或N移动;
输入%,可以查找配对的括号)、]、}等;
多栏窗口
new,新建一栏空白窗口(水平显示);
split,将当前文件分两栏显示(水平显示);
vnew,新建一栏空白窗口(垂直显示);
vsplit,将当前文件分两栏显示(垂直显示);
注:先按下 <ctrl+w> 键,再按下方向键 j 、 k 、 l 、 h ,您可以切换到其它栏;果您希望当前命令在所有栏中生效,您可以在命令的末尾追加 all。
另外:
输入:!+命令,可以执行shell外部命令;
输入:w +文件名,可以把当前打开的文件保存为该名字;
输入: r + 文件名,可以提取文件名的内容放入光标处;
:r + !+命令,把命令的输出放入光标处;
先写到这里,以后再补充。
vim的配置文件及常用的快捷键的更多相关文章
- linux下vim配置以及一些常用的快捷键
一些常用的vim编辑器快捷键: h」.「j」.「k」.「l」,分别控制光标左.下.上.右移一格. 按「ctrl」+「b」:屏幕往“后”移动一页. 按「ctrl」+「f」:屏幕往“前”移动一页. 按「c ...
- Ubuntu vim终端常用的快捷键
Ubuntu中常用的快捷键 Ubuntu中的许多操作在终端(Terminal)中十分的快捷,记住一些快捷键的操作更得心应手.在Ubuntu中打开终端的快捷键是Ctrl+Alt+T.其他的一些常用的快捷 ...
- 【Linux 操作系统】vim编辑器配置及常用命令
最近工作不安分, 没有了刚入行时候的锐气, 不知道什么时候开始懈怠起来, 周末在电脑旁边看新闻, 搞笑图片, 追美剧, 一坐就是一天, 很是空虚. 我需要摆脱这种状态, 正好想学习一下安卓底层, An ...
- 安卓程序代写 网上程序代写[原]vim编辑器配置及常用命令
最近工作不安分, 没有了刚入行时候的锐气, 不知道什么时候开始懈怠起来, 周末在电脑旁边看新闻, 搞笑图片, 追美剧, 一坐就是一天, 很是空虚. 我需要摆脱这种状态, 正好想学习一下安卓底层, An ...
- vim编辑器配置及常用命令
最近工作不安分, 没有了刚入行时候的锐气, 不知道什么时候开始懈怠起来, 周末在电脑旁边看新闻, 搞笑图片, 追美剧, 一坐就是一天, 很是空虚. 我需要摆脱这种状态, 正好想学习一下安卓底层, An ...
- Xcode自定义Eclipse中常用的快捷键
转载自http://joeyio.com/2013/07/22/xcode_key_binding_like_eclipse/ Xcode自定义Eclipse中常用的快捷键 22 July 2013 ...
- xcode 自定义Eclipse里边常用的快捷键
之前在用Eclipse写Java的 时候,有几个常用的快捷键,比如删除当前行,在当前行下面插入空行,向上/下移动当前行等等,到了Xcode里怎么也找不到这些快捷键,一直觉得 Xcode自带的快捷键不够 ...
- Ubuntu终端常用的快捷键(转载)
本文转自:https://www.cnblogs.com/nucdy/p/5251659.html 侵删 Ubuntu中的许多操作在终端(Terminal)中十分的快捷,记住一些快捷键的操作更得心应 ...
- vim实现CTRL+S为保存快捷键
用vim正撸代码撸的飞起,突然Xshell就掉线了,真是太蛋疼了. 于是开始怀念起vs下撸代码时随时随地ctrl+s保存的快捷键,百度了一下,网上的vim实现ctrl+s保存的快捷键设置都有问题,自己 ...
随机推荐
- Oracle Hint 用法
正确的语法是: select /*+ index(x idx_t) */ * from t x where x.object_id=123 /*+ */ 和注释很像,比注释多了一个“+”,这就是 ...
- YTU 2973: C语言习题5.25--文件操作2
2973: C语言习题5.25--文件操作2 时间限制: 1 Sec 内存限制: 128 MB 提交: 242 解决: 105 题目描述 文本文件score.dic 中存储了n名学生的信息(班级编 ...
- java文件写入和读出的序列化
文件的写入入与读出都有它们自己的格式,不便于读入和取出,implement Serializable接口,实现任何个事文件的写入和读取取:
- 2015-09-17 001 存储过程数据操作类 H_data_Helper
using System;using System.Data;using System.Configuration;using System.Linq;using System.Web;using S ...
- asp.net 父窗体获取子窗体的返回值,可用来对父窗体局部更新
今天在项目上遇到了这个问题,其实只是window.returnValue的简单应用,不是asp.net的专属内容.作为积累,记录一个简单的实现模型. 图1 用到的文件 从图1中我们可以看到,只用到了 ...
- Out of Hay
Out of Hay Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 13094 Accepted: 5078 Descripti ...
- Linux下c++中的atoi、atol、atoll、atof函数调用实例
本文中调用的四个函数如下: atoi函数:将字符串转化为int类型变量 atol函数:将字符串转化为long类型变量 atoll函数:将字符串转化为long long类型变量 atof函数:将字符串转 ...
- 邮箱性质--全选单选的操作和传值 用属性的name传值
封装类 using System; using System.Collections.Generic; using System.Web; /// <summary> /// Ha 的摘要 ...
- python学习笔记三 文件操作(基础篇)
文件操作 打开文件 open(name[,mode[,buffering]]) open函数使用一个文件名作为强制参数,然后返回一个文件对象.[python 3.5 把file()删除掉] w ...
- Data
[pdf你真可爱] [题目分析] 上午考试想到用二分答案做,写残了... 设两个数列,a和b,a表示磁头,看作指针,b就是要扫描的那个序列. 假设一个答案mid,就是a中的数字走mid步能否到达b中的 ...