一些网络上质量较高的Vim资料

从我07年接触Vim以来,已经过去了8个年头,期间看过很多的Vim文章,我自己觉得非常不错,而且创作时间也比较近的文章有如下这些。

Vim入门

目前为阿里巴巴高级技术专家的陈皓写的Vim系列文章

  • 简明 Vim 练级攻略
    文章很有意思,跟打怪练级一样,你会分别经历如下阶段:

    1. 存活
    2. 感觉良好
    3. 觉得更好,更强,更快
    4. 使用VIM的超能力
  • 无插件Vim编程技巧 出来混,经常会在各种服务器上编辑文件,没有了心爱的配置文件和插件,怎么破?记住这些Vim原生态无需插件就可以使用的Vim编程技巧吧!其实不用其他插件也可以满足日常的C++开发需求的。
  • 游戏:VIM大冒险 在玩游戏的过程中熟悉Vim的热键
  • Vim的分屏功能 很多时候需要同时编辑多个文件,那么可以使用Vim的分屏功能

不得不赞叹一下,在陈浩的技术博客酷壳上,他已经花费了10年时间积累了大量的非常有用的技术文章。很多时候,我要的信息都可以通过站内搜索在他的博客上找到。建议大家多关注他的博客。

其实在Vim里面,就已经自带了一个非常不错的30分钟的教程,可以使用命令 :help tutor 来开启。这个教程本身就是一个文本,然后按照教程走,就是在用Vim编辑这个教程本身。我一直觉得这种思路很神奇,而且避免了初学者没有合适的文本拿来练手的尴尬境地。

打造Vim为C++ IDE

对于有想打造Vim为C++ IDE的亲们,可参照下面的文章。

70后程序员,瑞友科技IT应用研究院副院长池建强写的:
谁说Vim不是IDE系列,此系列文章充满了文艺气息,内容清晰易懂,介绍了vim配置文件、Vim中的几个基本概念、介绍了一些码农常用插件。利用这些插件,可以使得Vim具备代码浏览、索引、标签、标记、检索功能。不过遗憾的是这个大坑只填到了第4部,后面的5,6,7呢?后来老池说了,有这本<<Vim实用技巧>>就够了,不需要写后续几篇了,喜欢看纸质版书籍的同学可以买来看看。

E文好的还可以看这篇:
Coming Home to Vim

把浏览器也搞成类似于Vim

Vim用着特别爽了,那么能不能用类似Vim操作一样用键盘操作Firefox呢?
答案是可以的,请戳这个vimperator

Vim乱码问题

新手经常遇到的问题就是自己的文档用Vim打开,会有乱码的问题,可以参考我之前写的这篇文章来解决:Linux环境下shell和vim中乱码原因及消除办法

一些能够提高效率的Vim技巧

以下是我搜刮到的Vim命令,欢迎大家补充

  1. 计算某些字符串出现的次数: :%s/pattern-here//gn. 就是将替换命令中的第二个模式留空,然后加上n这个标记
  2. 搜索字符串的时候忽略大小写: /searchConten\c
  3. 显示不可见的字符,当你需要查看控制字符的时候会非常有用: :set list
  4. 以二进制格式查看文件 :%!xxd ,切换回来: :%!xxd -r 。是利用外部程序 xxd 来处理了vim的buffer
  5. 对于一些不明白的命令或者设置,可以通过帮助来查看,例如 :help filetype 来查看filetype相关的帮助文档,:help set 来查看vim的设置相关的帮助文档,这里支持tab补全

如果您看了本篇博客,觉得对您有所收获,请点击右下角的“推荐”,让更多人看到!

资助Jack47写作,打赏一个鸡蛋灌饼钱吧
微信打赏
支付宝打赏

Vim新手入门资料和一些Vim实用小技巧的更多相关文章

  1. Vim新手节省时间的10多个小技巧

    Vim新手节省时间的10多个小技巧 Vim 是很多开发者的首选编辑器,通过设置正确的命令和快捷方式,它可以帮你更快的完成工作.这篇文章我们为 Vim 新手提供一些快捷键等方面的小技巧,帮你提升工作效率 ...

  2. Vim实用小技巧

    Vim实用小技巧 一些网络上质量较高的Vim资料 从我07年接触Vim以来,已经过去了8个年头,期间看过很多的Vim文章,我自己觉得非常不错,而且创作时间也比较近的文章有如下这些. Vim入门 目前为 ...

  3. 实用小技巧:Notepad++直接连接Linux

    实用小技巧:Notepad++直接连接Linux 前言 号称编辑器之神的Vim对于只会用几个基础操作的本人而言,在编辑一些大型文本有那么些力不从心: 平时都是通过Xftp拖到本地,修改完后再覆盖回去: ...

  4. PHP 常用函数库和一些实用小技巧

    PHP 常用函数库和一些实用小技巧 作者: 字体:[增加 减小] 类型:转载   包括文件读取函式,文件写入函式,静态页面生成函式,目录删除函式等   文件读取函式 //文件读取函式 function ...

  5. svn checkout 实用小技巧

    svn checkout 实用小技巧 by:授客 QQ:1033553122   问题描述: 用svn小乌龟软件,进行update,commit之前,先要把svn工作目录checkout到本地,那么问 ...

  6. 实用小技巧(一):UIScrollView中上下左右滚动方向的判断

    https://www.jianshu.com/p/93e8459b6dae 2017.06.01 01:13* 字数 674 阅读 1201评论 0喜欢 1 2017.06.01 01:13* 字数 ...

  7. VC6.0实用小技巧

    VC6.0的若干实用小技巧 .检测程序中的括号是否匹配 把光标移动到需要检测的括号(如大括号{}.方括号[].圆括号()和尖括号<>)前面,键入快捷键 “Ctrl+]”.如果括号匹配正确, ...

  8. 必看!macOS进阶不得不知的实用小技巧

    不知道大家对使用苹果电脑的体验如何?您充分利用您的mac了吗?其实macOS上存在着许多快捷方式和技巧可以帮助简化我们的工作流程,提高效率,但是在日常生活中经常被人们忽略或者遗忘.以下是macdown ...

  9. Visual Studio实用小技巧

    有一个有关微软Office的笑话,说的是它的特性太多: 当你觉得自己发现了一个Office的新特性时,它已经存在很多年了. 本文将介绍一些在Visual Studio(免费下载)中很实用却被忽略的小技 ...

随机推荐

  1. sublime常用快捷键

    自己觉得比较实用的sublime快捷键: Ctrl + /  ---------------------注释 Ctrl + 滚动 --------------字体变大/缩小 Ctrl + N----- ...

  2. MVVM TextBox的键盘事件

    MVVM下RichTextBox的键盘回车事件设置为发送,不是回车 xmlns:i="http://schemas.microsoft.com/expression/2010/interac ...

  3. nodejs利用http模块实现银行卡所属银行查询和骚扰电话验证

    http模块内部封装了http服务器和客户端,因此Node.js不需要借助Apache.IIS.Nginx.Tomcat等传统HTTP服务器,就可以构建http服务器,亦可以用来做一些爬虫.下面简单介 ...

  4. [C#] 走进 LINQ 的世界

    走进 LINQ 的世界 序 在此之前曾发表过三篇关于 LINQ 的随笔: 进阶:<LINQ 标准查询操作概述>(强烈推荐) 技巧:<Linq To Objects - 如何操作字符串 ...

  5. CRL快速开发框架系列教程七(使用事务)

    本系列目录 CRL快速开发框架系列教程一(Code First数据表不需再关心) CRL快速开发框架系列教程二(基于Lambda表达式查询) CRL快速开发框架系列教程三(更新数据) CRL快速开发框 ...

  6. Flexible 弹性盒子模型之CSS flex-flow

    实例 让弹性盒的元素以相反的顺序显示,且在必要的时候进行拆行: display:flex; flex-flow:row-reverse wrap;   效果预览 浏览器支持 表格中的数字表示支持该属性 ...

  7. jquery-treegrid树状表格的使用(.Net平台)

    上一篇介绍了DataTable,这一篇在DT的基础之上再使用jquery的一款插件:treegrid,官网地址:http://maxazan.github.io/jquery-treegrid/ 一. ...

  8. Android中Activity的四大启动模式实验简述

    作为Android四大组件之一,Activity可以说是最基本也是最常见的组件,它提供了一个显示界面,从而实现与用户的交互,作为初学者,必须熟练掌握.今天我们就来通过实验演示,来帮助大家理解Activ ...

  9. IT雇员及外包商选择:人品第一

    最近,苹果iOS操作系统和智能手机爆出了一个奇葩故障,在播放特定一段五秒钟的视频时能导致手机死机.唯一的解决办法是按住电源键和Home按键进行手机的重启. 第十八届中国国际高新技术成果交易会在深圳举办 ...

  10. 【swift】BlockOperation和GCD实用代码块

    //BlockOperation // // ViewController.swift import UIKit class ViewController: UIViewController { @I ...