按i前插入字符。a在光标后追加字符

ctrl+d将光标下称半个窗体。按Ctrl+u将光标上移半个窗体

在输入模式下:ctrl+h删除字符,ctrl+u删除行。ctrl+w删除字

命令模式下。x删除字符。dw删除字,dd删除行

u表示撤销上一个操作

ctrl+r或输入命令:redo。表示重做

命令dw和i能够用一条命令cw(chang world)来实现。

命令cw能够使用VIM进入输入模式

$ vim -r memo

:w memo2

可将文件另存

dw: delete current word, but first thing for this command is the cursor has to be the first character of the word.

d$: delete to the end of the line

0: move to the end of the line.

d3w: delete the 3 words after the cursor. d4w will delete 4 words

U: To undo all the changes on a line

p: put the line which deleted by command 'dd' under the cursor line

r: Type rx to replace the character at the cursor with x

ce: To change until the end of a word, type ce

c$: Delete the context from cursor to the end of the line, and go the input mode

ctrl+g : To show your location in the file and the file status.

G: Go to the bottom of the file.

gg: To move you to the start of the file.

G: Type the number of the line you want to go and then G, this will go to the line you wann to go.

/: search for the phrase from forward

?

: search for the phrase from backward

n: search the same phrase again, simple type n

N: search the same phrase in the opposite direction, type N

ctrl+o: To go back to where you came from. Repeat to go back further

ctrl+i: To go forward

%: to find a matching ),], or }. This is very useful in debugging a program with unmatched parentheses

:s/old/new/ to substitute 'new' for 'old', only change the first occurrence

:s/old/new/g to substitute 'new' for 'old', will change all the occurrences in the line

:%s/old/new/g to change every occurrence in the whole file

:%s/old/new/gc to find every occurrence in the whole file, with a prompt whether to substitute or not

o: to open a line below the cursor and place you in insert mode.

O: to open a line above the cursor and place you in insert mode.

a: to insert text AFTER the cursor

i: to insert text BEFORE the cursor

A: to insert text at the end of line

R: replace more than one character

r: replace one character of cursor position

copy and paste: 

1. start visual mode with v and move the cursor to select the text you want to copy

2. Type y to yank(copy) the highlighted text.

3. Go to the position which you want to paste your text

4. Type p to put(paste) the text

set option:

:set number(set nu): show up line number

:set ic: set ignores case when searching or substitute

:set hls is: set lisearch and incsearch option

:set noic: disable ignoring case 

if you want to ignore case for just one search command, user \c in the phrase: /youString\c

版权声明:本文博客原创文章。博客,未经同意,不得转载。

VIM 初步的更多相关文章

  1. vi/vim初步接触

    vi和vim一直被人津津乐道,到底是什么使得它们如此受欢迎? vi分为3种模式:一般模式,编辑模式,命令行模式. (1)一般模式: 进入vi后,默认就是一般模式. 用处:方便地移动光标,删除字符/整行 ...

  2. install vim

    常用命令: [0]安装vim: oee@copener:~$ sudo apt-get install vim vim-scripts vim-doc 刚安装完$HOME目录下只有两个文件:.vim/ ...

  3. 20135328信息安全系统设计基础第二周学习总结(vim、gcc、gdb)

    第三周学习笔记 学习计时:共8小时 读书:1 代码:5 作业:1 博客:7 一.学习目标 熟悉Linux系统下的开发环境 熟悉vi的基本操作 熟悉gcc编译器的基本原理 熟练使用gcc编译器的常用选项 ...

  4. Linux 桌面玩家指南:02. 以最简洁的方式打造实用的 Vim 环境

    特别说明:要在我的随笔后写评论的小伙伴们请注意了,我的博客开启了 MathJax 数学公式支持,MathJax 使用$标记数学公式的开始和结束.如果某条评论中出现了两个$,MathJax 会将两个$之 ...

  5. Android开发最佳学习路线图

          为了帮助大家更好的学习Android开发的相关知识,尚观4G智能操作系统研究室(www.up4g.com)为大家制作下面学习路线图:希望能帮助到广大的android爱好者. 在開始之前我们 ...

  6. Android开发最佳学习路线图(转)

    Android开发总体路线图:  基础学习——JavaSE:        很多朋友一上手就开始学习Android,似乎太着急了一些. Android应用程序开发是以Java语言为基础的,所以没有扎实 ...

  7. 尚观Linux最佳入门高清视频教程033/133/253

    [高清]Linux 最佳入门ULE112- RHCE033部分高清视频教程[尚观原创] 视频简介:高清RHCE033部分是RHCE考试中的基础部分,同时也是我们Linux入门的必 备学习资料.想学好L ...

  8. vim插件开发初步

    [vim插件开发初步] 将如下代码存在helloworld.vim, 放在~/.vim/plugin目录下,插件即可生效.:w保存代码后, 用:source命令执行后,也可以使用Helloworld命 ...

  9. vim基础初步

    vim文本编辑器初步 一.跟vi编辑器的关系 可以说vim编辑器是vi编辑器的升级版,它保留了vi编辑器的所有东西,而且加入了自己的新的特性. 比如说:支持跨平台,支持语法高亮,支持多级撤销等. ++ ...

随机推荐

  1. 经典回忆Effective C++ 1

    c++ 联邦语言: typedef { unit C; unit Object-Oriented C++; unit Template C++; unit STL; }; notice: C++高效编 ...

  2. 自定义JSTL函数标签(一)

    jstl标签库的配置 * 将jstl.jar和standard.jar拷贝到WEB-INF/lib下(如果使用el表达式,不用拷贝这两个jar) 注意:jstl必须在能够支持j2ee1.4/servl ...

  3. Android 下拉刷新上拉载入效果功能

    应用场景: 在App开发中,对于信息的获取与演示.不可能所有将其获取与演示,为了在用户使用中,给予用户以友好.方便的用户体验,以滑动.下拉的效果动态载入数据的要求就会出现. 为此.该效果功能就须要应用 ...

  4. 初识google多语言通信框架gRPC系列(二)编译gRPC

    目录 一.概述 二.编译gRPC 三.C#中使用gRPC 四.C++中使用gRPC 无论通过哪种语言调用gRPC,都必须要编译gRPC,因为生成proto访问类时,除了产生标准的数据定义类之外,还需要 ...

  5. 【SICP归纳】2 高阶函数和数据抽象

    上一篇博文相应的是书中的第一章的一二两节,我们已经大致的有了一种构造的感觉不是么. 书中展示了非常多有趣的句法(syntax). 如今我们要让思想进一步的抽象.写这篇博客的时候并未学完整本书.更不敢说 ...

  6. Nutch+Lucene搜索引擎开发实践

    网络拓扑 图 1 网络拓扑图 安装Java JDK 首先查看系统是否已经安装了其它版本号的JDK,假设有,先要把其它版本号的JDK卸载. 用root用户登录系统. # rpm-qa|grep gcj ...

  7. 白学jquery Mobile《构建跨平台APP:jQuery Mobile移动应用实战》串行4(场景变化)

    作为一个真正的利用价格值应用,首先,你应该至少有两页,通过切换页面来实现很多其他互动.比如手机人人网,首先,打开后进入登录页面,将有登录后,新的东西.然后拉左侧面板.你可以看到相册.私人信息.像其他应 ...

  8. C++习题 对象转换

    [Submit][Status][Web Board] Description 定义一个Teacher(教师)类(教师号,姓名,性别,薪金)和一个Student(学生)类(学号,姓名,性别,成绩),二 ...

  9. .NET Core 1.0、ASP.NET Core 1.0和EF Core 1.0简介

    .NET Core 1.0.ASP.NET Core 1.0和EF Core 1.0简介 英文原文:Reintroducing .NET Core 1.0, ASP.NET Core 1.0, and ...

  10. 手动安装英特尔® 凌动™ Android* x86 模拟器映像

    android的模拟器实在是太慢了,慢的让人欲仙欲死,欲罢不能.猛然发现我的电脑是intel的CPU,我勒个去,换x86模拟器.然后悲剧了,伟大的gfw 我要装sdk,我要研究android开发,到底 ...