vim的简单使用

Content

  • 三种模式
  • 光标移动
  • 查找与替换
  • 删除、复制和粘贴
  • 命令行
  • 块选择
  • 多文件编辑
  • 多窗口显示
  • 中文编码问题
  • 语系转换和

三种模式

vim可以分为一般模式、编辑模式和命令行模式,各种模式的转换如下:

一般模式 ---> 编辑模式

i    当前表示符前
o 当前提示符下一行
a 当前提示符下一个
r 向后擦出

一般模式 ---> 命令行模式 :执行命令,/向下搜索,?向上搜索

编辑模式 ---> 一般模式 使用ESC键退出

移动光标

h,j,k,l    分别是左移,下移,上移,下移
0或者Home 移动到本行最前
$或者End 移动到本行最后
1G或gg 移动到第一行
nG 移动到第n行
G 移动到最后一行
n+space 向后移动n个字符
n+Enter 向下移动n行

查找和替换

/word    向下查找word
?word 向上查找word
n 移动到下一个目标
N 移动到上一个目标
:n1,n2s/word1/word2/g 从第n2到n2行将word1替换为word2
:1,$s/word1/word2/g 从第一行到最后将word1替换为word2
:1,$s/word1/word2/gc 从第一行到最后将word1替换为word2

复制和粘贴

X    向前删除
x 向后删除
dd 删除光标所在行
ndd 删除光标向下n行
d0 删除光标处到最前
d$ 删除光标出到最后
d1G 删除光标出到第一行
dG 删除光标处到最后一行 yy 复制光标所在行
nyy 复制光标下n行
y0 复制从光标出到本行最前
y$ 复制从光标处到本行最后
y1G 复制从光标处到第一行
yG 复制从光标处到最后 P 复制到光标上一行
p 复制到光标下一行 u 复原上一个操作
Ctrl+r 重复上一个操作

命令行

:q[!]    退出,加感叹号强制退出
:w[!] 保存,加感叹号强制保存
:wq[!] 保存退出,加感叹号强制
ZZ 若有改动保存退出,若无改动直接退出
:w[filename] 另存为filename
:r[filename] 将filename内容引入光标后边
:n1,n2 w filename 将n1到n2内容保存到filename中
:!command 暂时离开vi执行命令command

块选择

v    字符选择
V 行选择
Ctrl+v 块选择,长方形选择数据
y 复制选中块
d 删除选中块

多文件编辑

vim filename1 filename2
:n 编辑下一个文件
:N 编辑上一个文件
:files 列出目前vim打开的所有文件

多窗口显示

:sp filename    将另一个文件打开在另一个窗口
:sp 将本文件再次打开在另一个窗口
Ctrl+w+k/上 上一个窗口
Ctrl+w+j/下 下一个窗口
Ctrl+w+q 关闭当前窗口

中文编码问题

DOS与linux段行字符

在dos中CR与LF都是段行,在linux中只有LF

dos2unix [-kn] file newfile
unix2dos [-kn] file newfile
-k 保留源文件的日期
-n 保留源文件

语系转换和查看文件编码

    iconv --list:输出iconv支持的编码
  iconv -f 原本编码 -t 新编码 [-o newfile]
file -bi filename
  :set fileending

简单配置

set smarttab
set tabstop=4
set shiftwidth=4
set expandtab
set autoindent
set nu

Referrences

[1] 摘自《鸟哥的私房菜》第三篇,人民邮电出版社

vim的使用与配置的更多相关文章

  1. 为了让vi命令也可以使用vim的配置,需要修改 vi /etc/bashrc 增加一行 alias vi='vim'此时,经过上面配置已经可以显示语法高亮了

    为了让vi命令也可以使用vim的配置,需要修改 vi /etc/bashrc 增加一行 aliasvi='vim'此时,经过上面配置已经可以显示语法高亮了

  2. ubuntu16.04下vim的安装与配置

    一.安装vim 使用命令 $ sudo apt-get install vim  来安装vim,安装后的vim需要进行一些配置,不然使用起来会有些不方便,比如不会自动缩进. 二.配置vim 使用命令  ...

  3. Vim 插键及配置

    如果你觉得这个页面广告太多,欢迎移步博客阅读:Vim 插键及配置 编辑器之神 -- Vim 平日使用vim经常编辑文件,想想使用时的痛点,决定研究一下插件的使用. Vim的扩展通常也被成为bundle ...

  4. 在vim中安装及配置NERDTree插件

    使用Vundle插件安装,在.vimrc中加入以下代码: Plugin 'scrooloose/nerdtree' 打开vim,输入命令如下: :BundleInstall 等待安装完毕 配置NERD ...

  5. Vim:gvim安装配置(windows)

    Vim:gvim安装配置(windows) 一.gvim的特点: vim要求全部键盘操作,而gvim可以使用鼠标进行可视化操作,即gvim是vim的图形化界面: 二.gvim安装: 下载地址:http ...

  6. Vim常用命令及配置方案

    Vim常用命令及配置方案   几句话 很久之前就接触到vim,初学那阵觉得vim很酷炫,但确实对新手不是很友好.我也就简单看了下基本操作就上手了,但又不是长期在vim下工作,这就导致了每一次重新使用v ...

  7. LINUX操作系统VIM的安装和配置

    VIM的安装   在命令行敲入"vi"后按"tab"键,可以看到目前系统中只安装了vi和vim.tiny. vim是从VI发展而来的一个文本编辑器,功能更强大. ...

  8. vim 标准环境的配置

    最近刚刚从IDE转到了vim,很多习惯不一致,特地配置了一下vim环境.在网上找了大神的帖子,怕忘记了,特此纪念. 传送门     http://www.cnblogs.com/ma6174/arch ...

  9. Ubuntu下VIM的安装及其配置——Linux篇

    一.Ubuntu系统默认内置: 实际上ubuntu默认没有安装老版本的vi,只装了vim.vi是vim.tiny(vim的最小化版本,不含 GUI,并且仅含有一小部分功能,并且默认与vi兼容.此软件包 ...

随机推荐

  1. [LeetCode] Reverse Words in a String II 翻转字符串中的单词之二

    Given an input string, reverse the string word by word. A word is defined as a sequence of non-space ...

  2. 深入理解numpy

    一.为啥需要numpy python虽然说注重优雅简洁,但它终究是需要考虑效率的.别说运行速度不是瓶颈,在科学计算中运行速度就是瓶颈. python的列表,跟java一样,其实只是一维列表.一维列表相 ...

  3. .Net Core Logger 实现log写入本地文件系统

    .net core 自带一个基础的logger框架Microsoft.Extensions.Logging. 微软默认实现了Microsoft.Extensions.Logging.Console.d ...

  4. dubbo 配置解析

    1.dubbo 常用配置 <dubbo:service/> 服务配置,用于暴露一个服务,定义服务的元信息,一个服务可以用多个协议暴露,一个服务也可以注册到多个注册中心.eg.<dub ...

  5. 输入流和字符串互转,InputStream2String,String2InputStream

    输入流转字符串 public static String InputStream2String(InputStream in) { InputStreamReader reader = null; t ...

  6. python3 @classmethod 的使用场合

    官方的说法: classmethod(function)中文说明:classmethod是用来指定一个类的方法为类方法,没有此参数指定的类的方法为实例方法,使用方法如下: class C: @clas ...

  7. 格式工厂 v4.0.0 最新去广告绿色纯净版

    最好用的多媒体格式转换利器:格式工厂现已更新至v4.0,此次更新加入最新的HEVC(H265)编码,MP4,MKV的压缩比大幅度提高!格式工厂,轻松转换一切你想要的格式!利器在手,转换不愁! 格式工厂 ...

  8. jsp上传图片实时显示

    jsp代码 <div class="form-group" id="caseIma"> <label class="control- ...

  9. CentOS 6/7安装ffmpeg

    环境 CentOS 6/7 安装 导入GPG key rpm --import http://packages.atrpms.net/RPM-GPG-KEY.atrpms 安装ATRPMS Repo ...

  10. 【原创】自己动手写工具----签到器[Beta 2.0]

    一.前面的话 上一篇中基本实现了简单的签到任务,但是不够灵活.在上一篇自己动手写工具----签到器的结尾中,我设想了几个新增功能来提高工具的灵活程度,下面把新增功能点列出来看看: (1)新增其他的进程 ...