vim入门

配置

vim $HOME/.vimrc

syntax on#语法高亮

set nocompatible#去掉vi一致性模式

set number#显示行号

set history=50#设置命令历史记录条数

set autoindent#自动对齐

set smartindent#智能对齐

set tabstop=4#设置tab键为4空格

set shiftwidth=4#当行之间交错时使用4个空格

使用

常用命令列表

移动光标
hjkl 前下右上
c+f,c+b 向下、向上移动一页
0,$ 移动到一行的最前、最后
G,nG,gg 移动到最后、第n、一行
n 向下移动n行
搜索替换
/word,?word 向下、向上搜
n,N 向下、向上重复
:n1,n2s/w1/w2/g 替换n1-n2行间的w1为w2
:1,$s/w1/w2/g 替换所有
复制、粘贴、删除
x,X 向后、向前删除一个字符
nx 向后删除n个字符
dd,ndd 删除一行、n行
yy,nyy 复制一行、n行
p,P 下、上一行粘贴
u 撤销
c-r 重做
. 重复上一个动作
一般模式进入编辑模式
i,I 插入
a,A 增加
o,O 新行
r,R 取代模式
[esc] 退出编辑模式
一般模式到命令模式
:w,:q,:wq,:q!,:x 保存、退出
:w filename 另存为
:r filename 读入到当前文档
:! command 执行命令
:set nu 显示行号
:set nonu 不显示行号

括号匹配%

常见操作

:cd /p/p1/ 切换目录
:pwd 当前工作目录
:ls 当前打开的所有文件
:bd 关闭当前文件
:o file 打开文件
shift+v 视图,用于选择文本
ggVGyy 全选复制
ctrl+6 两个打开的文件间切换
:bn 下一个文件
:bp 上一个文件
b1~n 切换至第n个打开的文件
分割窗口操作
:sp 水平分割窗口
:vsp 垂直分割窗口
:close 关闭分割窗口
ctrl+w+h/j/k/l 切换至前/下/上/后的窗口
ctrl+ww 一次向后切换
   

windows下设置编码

:set encoding=utf-8 #//设置编码

:language messages zh_CN.utf-8 #//解决console输出乱码

#菜单乱码

:source $VIMRUNTIME/delmenu.vim

:source $VIMRUNTIME/menu.vim

常见操作(2)

ctrl+p, ctrl+n 自动补全(向前、向后)
:set nobackup 不备份
:set autoindent 自动缩进
:set shiftwidth=4 设置缩进宽度为4空格
:set noautoindent 不自动缩进
:set cindent c风格缩进
:set ts=4 设置tab键跳4空格
 ggVG=  排版
:10,20s#^#//#g 用//注释10到20行
:10,20s#^//##g 删除10到20行的注释//
gu, gU   转换成小写、大写
 :set ignorcase(ic) 查找时忽略大小写
:set noignorcase(noic) 不忽略大小写
 =  格式化选中内容
:g/^/m0 倒置文件内容
 J  合并行
   

批量注释

ctrl+v 进入列编辑模式,向下或向上移动光标,把需要注释的行的开头标记起来,然后按大写的I(shift+i),再插入注释符,比如"//",再按Esc,就会全部注释了

ctrl+v,进入列编辑模式,横向选中列的个数(如"//"注释符号,需要选中两列),然后按d, 就会删除注释符号

windows下为ctrl+q

批量缩进:v进入可视模式,选择要缩进的代码块,>缩进、<缩回

查找选中内容

1. v

2. h/j/k/l

3. y

4. /

5. ctrl-r

6. 0

剪贴板使用

将系统剪贴板内容粘贴进当前buffer中:在编辑模式下按shift+insert

:reg//////////查看剪贴板内容

选中文本,"+y复制到系统剪贴板,"+p将系统剪贴板内容粘贴到普通模式下的光标所在处

常见操作(3)

:E 浏览目录
:bn/bp/bl/bf 向后/向前/最后/第一个缓冲区切换
:He(!) 在下(上)面分屏浏览目录
:Ve(!) 在左(右)边分屏浏览目录
:Te tab页浏览文件
gt 下一个tab页
gT 上一个tab页
{i}gt 到第i个tab页
tabs 查看所有tab页编号-名
guu 把一行全部变成小写
gUU 把一行全部变成大写
ga 查看光标处字符的ascii码
g8 查看光标处字符的utf8编码
*/# 查找光标处的单词
ctrl-o 向后回退光标移动
ctrl-l 向前追赶光标移动
 ''  两个单引号,跳转到光标上次停靠
 :cw 在分屏中显示命令结果
 gd 高亮显示光标处的单词
ctrl-w,q 退出当前窗口
:edit ++enc=cp936 buffer设为gb2312查看
 :edit ++enc=utf-8  buffer设为utf-8查看
 cw change word
 c0  改变当前到行首
c$ 改变当前到行尾
z回车 当前行置顶
z. 当前行置中
z- 当前行置底
H/M/L 移动光标到当前屏的上/中/下
回车 移动光标到下一行首字符
- 移动光标到上一行首字符
^ 移动光标到第一个非空字符
:resize +10 调整split窗口大小
:vertical resize -10 调整vertical split窗口大小
 ci"|(  在“”或()中输入
 f字符 向后条到本行下一个字符
   

vim编辑html混合javascript格式化插件

http://www.vim.org/scripts/script.php?script_id=3081

firefox vimperator

gi 上次输入
r 刷新
ctrl-c 停止刷新
ctrl-i 前进
ctrl-o 后退
d 关闭标签页
u 重新打开
f 显示连接
c 显示光标
cv 可视化选择
y 复制
:sav 保存页面
gt/gT 下/上tab页
g0/g$ 第一/最后
A 收藏/删除
:bmarks 列出收藏
:vie 查看源文件
P 新tab页
zi/zo 放大/缩小
   
原文地址:https://www.cnblogs.com/feilv/p/4064238.html