vim进阶技巧
本篇博文是在之前的《vim基础入门》的基础之上写的,不懂的同学可以先看之前的分享
1. 视觉范围的选择
- 普通模式下,按v键确定范围起点,然后移动光标,光标所在位置为范围的终点,然后按操作键完成其他操作,之后范围消失
- 常见的操作:y复制,d删除,p复制(上一篇博文有分享)
- 长方形范围选择方式:与v操作相似,只不过这里按Ctrl +v,然后移动光标选择。这里给大家介绍一种小的编辑技巧,当我们用长方形选择一块区域的时候,我们可以选中一列,然后在这一列的前面加上上引号“,这个时候,我们可以使用Shift + i,这样进入了插入模式,但是我们看到刚刚选中的一列没有了,此时我们在第一行的前面插入一个上引号,然后按esc进入到普通模式,这个时候我们发现刚刚选中的那一列的前面都有了上引号
2. 单词操作
- 移动 以单词为单位向后移动:w 以单词为单位向前移动b
- 删除一个单词 d + w 删除一行 dd
- 转化大小写 当前单词换成大写:gUw 第二种方法是利用上文的方法选中单词,然后Shift + u 当前单词换成小写:guw 第二种方式是选中当前单词,然后u
3.移动和查找 ##
- 命令模式 :数字 跳到第几行
- 普通模式 数字 | 跳到第几列
- 查找文档中的单词,普通模式下,光标移动到某一个单词上面,然后按*,这个时候每次按n,就会跳转到下一个单词处。每次按N就是往回寻找
- /单词 正向寻找 ?单词 反向寻找
- /\d\d\d\d 搜索四位的数字
- /gi[tf] 搜索git 或者 gif
4.分屏和标签页
- :split 文件名 上下分屏,切换上下屏Shift + w + 方向键
- :vsplit 文件名 左右分屏,切换左右屏Shift + w + 方向键
- 开启新的标签页 :tabnew
- 编辑标签页 :e + 文件名
- 切换标签页 Ctrl + PgUp键 Ctrl + PgDn键
- 跳到首个标签页 :tabfirst
- 跳到尾标签页 :tablast
5. 编码常用技巧
- 粘贴模式,我们经常会粘贴某些代码,但是从外部粘贴进来的时候经常容易代码混乱,没有之前的对齐方式,这个时候我们可以使用下面的技巧,进入粘贴模式:set paste,然后敲击i进入插入模式,这个时候再粘贴,当我们粘贴完毕之后我们应该退出粘贴模式:set nopaste
- 代码缩进 >代码缩进 < 缩进回退
相关文章:

Flex Air程序打包成独立的exe安装文件
2019独角兽企业重金招聘Python工程师标准>>> 开发背景: FlexBuilder3.2开发生成的Air程序需要能够独立安装,事先不需要安装AdobeAir运行环境 实现方法: 1)用winrar打开xx.air文件爱能,并将它解压在D:\airapp目录中。 2…

《C++primer》第一章--开始
之前开始读《Cprimer》,想着读书不动笔不如不读书,于是就想做一个读书笔记的内容,于是就想起了写一个《Cprimer读思录》的一个专栏。一是为了给自己平时读书做笔记,方便自己随时查看。二是为了督促自己每天学习。三是为了知识的分…

对于计算机网络的整体框架的概括(转载) 个人感觉很好
作者: 阮一峰 日期: 2012年5月31日 我们每天使用互联网,你是否想过,它是如何实现的? 全世界几十亿台电脑,连接在一起,两两通信。上海的某一块网卡送出信号,洛杉矶的另一块网卡居然就…

Centos修改系统语言
使用man page帮助时,发现居然是中文的,不过想想即便英语再水,也要逼着自己去适应。于是百度找了一下修改系统语言的方法。 首先使用 locale 命令查看当前的系统语言 然后修改时一般有两种方法,一是临时修改,立即生效&a…

tp3 普通模式url模式_Thinkphp 3.2.3 url 路由访问模式
Thinkphp 3.2.3 url 的4中路由模式:// 0 (普通模式)http://网址/index.php?m模块&c控制器&a方法http://localhost/index.php?mHome&cindex&aindex//1 (PATHINFO 模式) 默认为PATHINFO 模式http://网址/index.php/模块/控制器/方法http://localhos…

Mysql 基于 Amoeba 的 读写分离(2)
<?xml version"1.0" encoding"gbk"?> <!DOCTYPE amoeba:configuration SYSTEM "amoeba.dtd"> <amoeba:configuration xmlns:amoeba"http://amoeba.meidusa.com/"><proxy><!-- service class must implem…

Linux驱动之LCD驱动编写
在Linux驱动之内核自带的S3C2440的LCD驱动分析这篇博客中已经分析了编写LCD驱动的步骤,接下来就按照这个步骤来字尝试字节编写LCD驱动。用的LCD屏幕为tft屏,每个像素点为16bit。对应与红绿蓝分别为565。 1、分配一个fb_info结构 2、设置fb_info结构 3、硬…

《C++primer》第二章--变量和基本内置类型
基本内置类型 如何选择类型的几点建议 当明确知晓数值不能为负数时,选用无符号类型使用int进行整数运算。因为short一般表示的范围比较小,而long一般和int有相同的范围。如果表示的范围超过了int就使用long long算术运算时尽量不要使用char和bool&…

【入门】等差素数组
题目描述 如果两个素数之和的一半仍然是一个素数,则这三个素数可以组成一个等差素数组,如(37)/25,则(3,5,7)为一个等差素数组,编程求100以内的所有等差素数组…

flutter和webapp_Flutter全平台!迁移现有Flutter项目到WEB端
写在前面Flutter 是 Google推出并开源的移动应用开发框架,主打跨平台、高保真、高性能。开发者可以通过 Dart语言开发 App,一套代码同时运行在 iOS 、Android、web和桌面端。Flutter_web是Flutter代码兼容web的实现,可以将使用Dart编写的现有…

使用正则表达式构造定制的HTML5输入框
为什么80%的码农都做不了架构师?>>> 正则表达式(点此在线编辑测试)是一个功能强大的灵活而简洁的匹配文本字符串的工具,比如匹配特定的字符、单词等。正则表达式通过一个语言规则来书写,通过正则表达式处理…

idea dubbo jar error:cvc-complex-type.2.4.c: 通配符的匹配很全面, 但无法找到元素 'dubbo:application' 的声明...
声明: 出现这个错误的情形是,在idea开发环境里面运行是没有问题的,使用哦idea自带的打包工具生成jar之后,运行jar的时候报的这个错误,如果不是这个情况,这篇文章可能不适用。 主要的原因是spring.schemas、…

lwip可以用于发udp_LWIPUDP一对多
最近在STM32F767的开发板上移植了LWIP UDP的代码,开发板的资料里面有介绍LWIP移植的文档,介绍了几种网络通信方式,如TCP server,TCP client,UDP,按照文档里面的介绍也很容易实现。这里我选择的是基于ucos2操…

奇淫怪巧之给Delphi的PrintDialog增加一个页码选定范围打印的Edit
在Delphi中使用PrintDialog打印对话框的时候,这个控件有三个选项,就是PrintRang那个属性的三个选项,其中有一个选项三,让我们自定义选择页码范围来打印。但是比较蛋疼的是,这个地方选中了之后啥子效果都没有。无法制定…
进程管理(图文)
进程的图文形象表示 阮一峰–进程与线程的一个简单解释 多进程实质 现在,多核CPU已经非常普及了,但是,即使过去的单核CPU,也可以执行多任务。由于CPU执行代码都是顺序执行的,那么,单核CPU是怎么执行多任…

拿到WP官方主题Twenty Ten就是一顿nofollow伺候
2019独角兽企业重金招聘Python工程师标准>>> 今天2012-07-03,我的个人cn域名申请下来了,于是网站搬迁,暂时没有选择一个好的WordPress主题,只有用默认的Twenty Ten,不过这个主题对SEO方面还有一些欠缺&…

Qt分析:Qt中的两种定时器
QTimer类的定时器 QTimer类定时器是QObject类定时器的扩展版或者说升级版,因为它可以提供更多的功能。比如说,它支持单次触发和多次触发。 使用QTimer类定时器的步骤: (1)创建一个QTimer定时器实例:QTimer …

uestc 1012 饭卡
饭卡(card) Time Limit: 1000 ms Memory Limit: 65535 kB Solved: 253 Tried: 2169 Submit Status Best Solution Back Description 电子科大本部食堂的饭卡有一种很诡异的设计,即在购买之前判断余额。如果购买一个商品之前,卡上的剩余金额大于或等…

wps临时文件不自动删除_win10系统下wps残留文件无法删除如何解决
一位用户反馈自己在win10系统电脑中卸载金山WPS办公软件时,发现根本无法将wps残留的文件夹删除,在删除的时候提示“操作无法完成,因为其中的文件夹或文件已在另一程序打开 请关闭该文件夹文件重试”,这该怎么办呢?接下…

WEB登录H3C模拟器
思路:先将路由器与本地网卡绑定,然后将本地网卡与路由器接口ip设置在同一网段,在路由器上建立本地用户,最后登录就OK了。 1、查看本机网卡的序列号,在CMD里输入systeminfo,输出的最下…

ArcMap 通过DEM获取高程值
第一种方法:Extract values to Points工具,这个网上的资料比较多,就不介绍了。 第二种方法:Interpolate Shape工具 直接用Arc Toolbox->3D Analyst Tools->功能性表面->Interpolate Shape工具就行,可以将DEM的…

Linux进程描述符task_struct结构体简析
进程是处于执行期的程序以及它所管理的资源(如打开的文件、挂起的信号、进程状态、地址空间等等)的总称 Linux内核通过一个被称为进程描述符的task_struct结构体来管理进程,这个结构体包含了一个进程所需的所有信息。它定义在include/linux/…

hdu 1312 Red and Black 解题报告
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid1312 第二条深搜,题目并不难,但是做了我好久好久,由于一个细节,让我赌上了一个晚上的时间。 题目大意:从图中的标记开始,向四个相邻的方向…

easyexcel怎么设置表头宽度_easyexcel 自动设置列宽
com.alibabaeasyexcel2.1.4导出controller层代码RequestMapping("/download")public void download(HttpServletResponse response) throws IOException {response.setContentType("application/vnd.ms-excel");response.setCharacterEncoding("utf-8…

php ImageMagick扩展
linux下安装php ImageMagick扩展模块下载ImageMagick源码包:#wget ftp://ftp.u-aizu.ac.jp/pub/graphics/p_w_picpath/ImageMagick/p_w_picpathmagick.org/ImageMagick.tar.gz 编译安装:#tar -zxvf ImageMagick.tar.gz #cd ImageMagick-xxxx-0#./confi…

调用浏览器的打印方法打印页面内容
2018-08-30 直接调用浏览器的打印方法 1、打印按钮 <a href"#" target"_self" οnclick"printme()">打印</a> 2、js //打印function printme() {$.messager.confirm(确认, 确认打印?, function (r) {if (r) {document.bo…

jsp中九大内置对象
内置组件 JSP共有以下9种基本内置组件(可与ASP的6种内部组件相对应):1.request对象 客户端的请求信息被封装在request对象中,通过它才能了解到客户的需求,然后做出响应。它是HttpServletRequest类的实例。序号 方 法 说…

python数组越界_python 整数越界问题详解
python 内部自带大整数运算能力,整数运算不会溢出,只要内存足够,就oK下面的例子演示了两个32位整数加法的情况(通过位运算实现),为了模拟溢出的效果,必须人工的进行位运算,~运算符除了求反,还是…
Linux虚拟机连不上网
问题:我们在使用Linux虚拟机的时候经常会出现各种各样的问题,其中的一个问题就是Linux虚拟机连不上网,这是我最近经常遇到的问题,下面提供一种方法解决这个问题 Linux网络设置 打开虚拟机依次单击【System】–>【Preferences】…

企业如何利用新闻类软文营销策划
新闻软文营销对企业的推广有哪些优势呢? 一、首先让客户有机会直接在门户网上相关频道看到关于企业产品的新闻,产生直接的点击或者评论,带来直接客户。 二、当潜在客户运用百度等搜索引擎搜索企业的公司名或者产品的关键词,那么就会在一个页…