一些网络上质量较高的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. 【造轮子】打造一个简单的万能Excel读写工具

    大家工作或者平时是不是经常遇到要读写一些简单格式的Excel? shit!~很蛋疼,因为之前吹牛,就搞了个这东西,还算是挺实用,和大家分享下. 厌烦了每次搞简单类型的Excel读写?不怕~来,喜欢流式 ...

  2. 04.LoT.UI 前后台通用框架分解系列之——轻巧的弹出框

    LOT.UI分解系列汇总:http://www.cnblogs.com/dunitian/p/4822808.html#lotui LoT.UI开源地址如下:https://github.com/du ...

  3. javascript:逆波兰式表示法计算表达式结果

    逆波兰式表示法,是由栈做基础的表达式,举个例子: 5 1 2 + 4 * + 3 -  等价于   5 + ((1 + 2) * 4) - 3 原理:依次将5 1 2 压入栈中, 这时遇到了运算符 + ...

  4. C#中如何给Excel添加水印

    我们知道Microsoft Excel并没有内置的功能直接给Excel表添加水印,但是其实我们可以用其他变通的方式来解决此问题,如通过添加页眉图片或艺术字的方法来模仿水印的外观.所以在这篇文章中,我将 ...

  5. Kooboo CMS技术文档之一:Kooboo CMS技术背景

    语言平台 依赖注入方案 存储模型 1. 语言平台 Kooboo CMS基于.NET Framework 4.x,.NET Framework 4.x的一些技术特性成为站点开发人员使用Kooboo CM ...

  6. 使用RequireJS并实现一个自己的模块加载器 (一)

    RequireJS & SeaJS 在 模块化开发 开发以前,都是直接在页面上引入 script 标签来引用脚本的,当项目变得比较复杂,就会带来很多问题. JS项目中的依赖只有通过引入JS的顺 ...

  7. 深入理解javascript的getTime方法

    1.理解getTime getTime() 方法返回一个时间的格林威治时间数值. 可以使用这个方法把一个日期时间赋值给另一个Date 对象. 语法: dateObj.getTime() 参数: 无. ...

  8. 灵魂宝石 bzoj 2663

    灵魂宝石(1s 128MB)soulgem [问题描述] "作为你们本体的灵魂,为了能够更好的运用魔法,被赋予了既小巧又安全的外形" 我们知道,魔法少女的生命被存放于一个称为灵魂宝 ...

  9. 著名ERP厂商的SSO单点登录解决方案介绍一

          SSO英文全称Single Sign On,单点登录.SSO是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统.它包括可以将这次主要的登录映射到其他应用中用于同一个用户 ...

  10. Android 死锁和重入锁

    死锁的定义: 1.一般的死锁 一般的死锁是指多个线程的执行必须同时拥有多个资源,由于不同的线程需要的资源被不同的线程占用,最终导致僵持的状态,这就是一般死锁的定义. package com.cxt.t ...