初学linux --- vim

一.vim简介

   说vim,肯定会提到vi,他们都是linux的编辑器,vi适合文本编辑,vim更适写代码,他们都是多模式编辑器,不同的是vim是vi的升级版本,他不仅可以兼容vi的所有指令,还有一些新的特性:多级撤销、易用性、语法加亮、可视化操作、对vi的完全兼容。而且vi只适用于unix,vim则可以跨平台,所以下面只介绍vim的用法。

二.vim的四种模式

1.正常模式

  正常模式主要是浏览文本内容,一般打开vim都是正常模式,在其他三种模式下,按'Esc'键就会返回正常模式。

2.插入模式

插入模式是用来修改文本内容的

i    在光标所在字符前开始输入文字并进入插入模式

a   在光标所在字符后开始输入文字并进入插入模式

o   (字母o) 在光标所在行的下面单独开一新行来输入文字并进入插入模式

s   删除光标所在的字符并进入插入模式

I   在行首开始输入文字并进入插入模式。此行首指第一个非空白字符处。如果行首有空格,则在空格之后输入文字并进入插入模式

A 在行尾开始输入文字并进入插入模式。不管光标在此行的什么地方,只要按A就会在行尾等着输入。

O (大写字母O) 在光标所在行的上面单独开一新行来输入文字并进入插入模式。

S   删除光标所在行并进入插入模式

3.可视模式

可视模式下可以区域选择字符

ctrl + v     以块为单位进行选取的可视化模式
shift + v     以行为单位进行选取的可视化模式

*可视化模式下批量添加字符
(1)ctrl + v 选中要加入字符所在列
(2)按 ‘I’ 进入插入模式,写入要加入的字符
(3)按Esc

4.命令模式

命令含义
/关键字查找关键字,n向下匹配,N向上匹配
:数字移动到指定行
gg光标移至第一行
G光标移至最后一行
:q退出不保存
:q!强制退出不保存
:wq保存退出
:wq!强制保存退出,root及文件所有人
:sp file2同时编辑当前文件和文件 file2
ctrl+w s上下分屏
ctrl+w v左右分屏
ctrl+w c关闭所在屏幕
ctrl+w 上下左右光标移动到指定屏幕

命令模式下字符的管理

命令含义
yl复制一个字母
ynl复制n个字母
yw复制一个单词
ynw复制n个单词
yy复制一行
yny复制n行
p复制完成后按“P”粘贴
dl删除一个字母
dnl删除n个字母
dw删除一个单词
dnw删除n个单词
dd删除一行
dnd删除n行
cl剪切一个字母
cnl剪切n个字母
cw剪切一个单词
cnw剪切n个单词
cc剪切一行
cnc剪切n行
:%s/原有字符/替换后字符只替换每一行中出现的第一个原有字符
:%s/原有字符/替换后字符/g替换所有
:%s/^\ *//g把全文行首的空格去掉,”^\ *”表示行首的空格

注意:执行剪切命令时会转到插入模式,这时候如果要粘贴,则需要按Esc返回正常模式,再执行粘贴,这里需要说的是,一般在正常模式下,不需要用这个命令,因为需要来回切换模式,比较麻烦,这里有一个简单的方法,就是执行删除命令,然后粘贴即可。

三.vim的配置

  vim在默认的情况下,编辑界面是没有显示行号、高亮、鼠标等,作为一个玩linux必备的技能之一,一定要玩的很溜,同时为了方便使用,我们会用一些命令给当前的vim增加行号、鼠标等,但是这只是暂时的,当我们打开另一个文件,则又恢复了原样,于是,为了每次打开vim都是我们设置好的,就需要对vim的配置文件做出修改。
   /etc/vimrc,此文件是vim的配置文件,在文件的最后加入参数才能生效,加到文件中的参数不生效。
参数含义
set nu添加行号
set nonu取消行号
set mouse=a添加鼠标选择
set cursorline显示行线
:set numberwidth=3设置行号列宽
:set hlsearch高亮显示搜索内容
:set incsearch输入关键字的时候高亮显示
:set ignorecase搜索时忽略大小写
:set wrapscan循环搜索(默认值)
:set nowrapscan只搜索一次
:set showmatch在输入右括号时,短暂地跳到对应括号处
:set matchtime=10跳转时间,单位:十分之一秒
:set cursorcolumn高亮光标所在列
:set nocursorcolumn取消高亮光标所在列
:set cursorline高亮光标所在行
:set nocursorline取消高亮光标所在行
:set wrap自动换行
:set nowrap取消自动换行
:set autoindent保持上一行的缩进
:set shiftwidth=4设置缩进单位
:set ruler在右下角显示光标位置
:set noruler不显示光标位置
:set scrolloff=3使光标始终和上下边缘相距3行
:set list设置制表符可见
:set autochdir将当前目录自动切换为文件所在目录
:set scrollbind设置多窗口同步滚动
:set noscrollbind取消多窗口同步滚动
:set autoread如果文件被修改,自动读入,该项可能会不起作用
:set backspace=indent,eol,start在Insert模式可以删除行首的空格、断行、进入Insert模式之前的位置
:set readonly设置只读,该项写在配置文件中可能不起作用,在编辑时有效
:set fileformat?显示当前的文件格式
:set nomodifiable设置不可修改
:syntax on打开语法高亮
:syntax off取消语法高亮
:filetype on自动识别文件类型
:colorscheme desert选择颜色方案

四.其他编辑器

1.gedit

   感觉这个编辑器很简单,没必要学,图形界面,和windos上的word差不多的操作,不会的可以yelp help:gedit 来获取帮助,但是我不建议大家使用这个,毕竟在linux上,还是vim把玩熟比较好,这仅仅是作者个人建议,仅供参考。

2.Emacs

   Emacs不仅仅是一个编辑器,他是一个整合环境,或可称它为集成开发环境,这些功能如让使用者置身于全功能的操作系统中。Emacs不仅可以作为文本编辑器,还可以用来收发电子邮件、通过FTP/TRAMP编辑远程档案、通过Telnet登录主机、上新闻组、登陆IRC和朋友交流、查看日历等功能。
   感觉这个编辑器很高大上,感兴趣的朋友可以下去玩玩,很有逼格,这里就不过多介绍了。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值