前言
出于历史原因,命令行模式又叫 Ex 模式,它具有的功能有:
- 读写文件:比如 :edit, :write 等等
- 创建标签页或者窗口:比如 :tabnew :split
- 操作缓存区,比如: bnext
- 编辑文本
本章主要介绍对编辑文本的相关的 Ex 命令
调出 Ex 模式
总共有三种方法调出 Ex 模式:
- 一般的格式是通过 ":" 输入指令,然后按
<CR>
进行进行执行. - “/”用于调出查找提示符
- = 调出表达式寄存器
编辑文本的 Ex 命令的格式
种类
Ex 命令的影响范围广且距离远,是因为与普通模式相比,它可以对一个命令指定其 [range] 和 {address}
命令有:
- :[range]delete [x]
- :[range]yank [x]
- :[line]put [x]
- :[range]copy {address}
- :[range]move {address}
- :[range]join
- :[range]normal {commands}
- :[range]substitute/{pattern}/{string}/[flags]
- :[range]global/{pattern}/[cmd]
[range]:在多个连续行执行命令
格式:
:[start, end] 命令
其中 start, 和 end 都是地址,其可以用表示地址的行号、符号、查找模式来表示.
Ex 命令中表示地址的语法
- 1 : 文本的第一行
- $ : 文本的最后一行
- 0 :文本的第 0 行
- . : 光标所在行
- ’m :包含位置标记“m"的行
- '< :高亮选区的起始行
- ‘> :高亮选区的结束行
- % : 整个文件
常用技巧
技巧29 :使用’ :t ‘ & ’:m' 复制和移动行
格式:
- :[range]t {address}
- :[range]m {address}
功能是将 [range] 内的行移动到 {address} 处.copy 用于复制, move 用于移动.
技巧30: 在指定范围上执行 normal 命令
格式:
:[range] normal [cmd]
举例:比如在一个 JavaScript 文件中要对选中的行的末尾都添加“;” , 可以执行 :'<'> normal A; 命令
命令行窗口
调出命令行窗口
调出方式有三种:
- 使用 q: 可以调出命令行窗口
- 使用 q/ 打开查找命令历史的命s行窗口
重复上一次的 Ex 命令
方法一:执行过的 Ex 命令会储存在 : 的寄存器中,因此可以通过 @: 命令执行上一次的 Ex 命令
方法二: 按键盘上的 up\ down 键,可以执行上一次的 Ex 命令
方法三: 打开命令行窗口,可以执行上一次的命令行命令.
《Practical Vim》第五章:命令行模式的更多相关文章
-
vim第五章 命令行模式
vim第五章命令行模式 技巧 27 结识vim的命令行模式 在命令行模式中执行的命令有被称作ex命令 在按/调出查找提示符或者<C-r>=访问表示寄存器时 命令行模式也被激活 ...
-
VIM命令行模式下的相关知识
当按下:键时, Vim会切换到命令行模式: 重复上次执行的EX命令,只需按@:就可以: 在一行或多个连续行执行命令 很多的EX全天候可以指定操作范围,如行号,位置标记等: 以:print命令作为演示, ...
-
vim命令行模式
1. 激活命令行模式 : 进入命令行模式 <Esc> 退出命令行模式 2. 常用命令 :p 打印 (:print) :e 读入文件 (:edit) :w 写入文件 (:write) :t ...
-
01_Git的安装和简单使用(命令行模式+图形化模式)
刚开始用git的小白适用,参考链接:http://www.cnblogs.com/qijunjun/p/7137207.html 实际项目开发中,我们经常会用一些版本控制器来托管自己的代码,今天 ...
-
Linux 命令行模式 你需要知道的那些事
注: 安装软件 pip install + 软件名 例如: pip install xadmin 卸载软件 pip uninstall + 软件名 例如 pip uninstall xadmin 安 ...
-
Ubuntu 开机进入命令行模式
1.修改配置 sudo vim /etc/default/grub 把 GRUB_CMDLINE_LINUX_DEFAULT="quiet splash" 改为 GRUB_CMDL ...
-
Vim中常用的命令行
Vim中常用的命令行... ------------------- 一些真正强大的武器总不是那么容易驾驭的,主角总得付出一些努力才能收获到更加强大的力量,对于 Vim 这种上古神器来说更是如此.由于它 ...
-
PHP 的命令行模式
php CLI SAPI 内置Web Server 从版本 4.3.0 开始,PHP 提供了一种新类型的 CLI SAPI(Server Application Programming Interfa ...
-
PHP 命令行模式实战之cli+mysql 模拟队列批量发送邮件(在Linux环境下PHP 异步执行脚本发送事件通知消息实际案例)
源码地址:https://github.com/Tinywan/PHP_Experience 测试环境配置: 环境:Windows 7系统 .PHP7.0.Apache服务器 PHP框架:ThinkP ...
随机推荐
-
JavaScript状态机程序逻辑编辑器
制作背景 之前做Win8 Metro动态加载内容框架的时候,由于采用了XAML+JavaScript的方法,程序复杂的执行逻辑是由JavaScript控制的,而页面一多,流程一复杂,制作起来就非常麻烦 ...
-
SQL Server代理(5/12):理解SQL代理错误日志
SQL Server代理是所有实时数据库的核心.代理有很多不明显的用法,因此系统的知识,对于开发人员还是DBA都是有用的.这系列文章会通俗介绍它的很多用法. 如我们在这个系列的前几篇文章所见,SQL ...
-
14行脚本配置Linux下一个Java环境变量
供Java人们刚开始学习.多半Java它需要花费大量的精力在开发环境的配置,于Linux下一个,构造Java环境变量,很可能加入这一努力. 为此,我做了一个bash脚本来配置自己主动Java环境变量. ...
-
IoC容器Autofac正篇之类型关联(服务暴露)(八)
类型关联 类型关联就是将类挂载到接口(一个或多个)上去,以方便外部以统一的方式进行调用(看下例). 一.As关联 我们在进行手动关联时,基本都是使用As进行关联的. 1 2 3 4 5 6 7 8 ...
-
VB.NET中网络编程所需组件WinHTTP的添加
VB.NET中网络编程所需组件: WinHTTP组件:项目-->添加引用-->COM选项卡-->Microsoft WinHTTP Services,version 5.1--> ...
-
CSS设置一行文字,超出部分自动隐藏
.textone { overflow: hidden; text-overflow: ellipsis; display: -webkit-box; line-height: 25px; max-h ...
-
adb常用命令(转)
1.Android Debug Bridge -adb常用命令 1.1简介 Android Debug Bridge,我们一般简称为adb,主要存放在sdk安装目录下的platform-tools文件 ...
-
关于微信小程序<;radio-group>;布局排列
微信小程序更新以后今天<radio>全部变成垂直排列了,布局乱了. 一开始尝试给外层<view>添加display:flex;flex-direction:row:未果. 后来 ...
-
Android并发编程 原子类与并发容器
在Android开发的漫漫长途上的一点感想和记录,如果能给各位看官带来一丝启发或者帮助,那真是极好的. 前言 上一篇博文中,主要说了些线程以及锁的东西,我们大多数的并发开发需求,基本上可以用synch ...
-
make clean、make mrproper、make distclean的区别【转】
本文转载自:http://blog.csdn.net/liyayao/article/details/6818061 内核编译时, 到底用make clean, make mrproper还是make ...