vim与sublime
vim与sublime
对程序员来说,写代码是再熟悉不过的事情了,windows系统自带有记事本软件,能写写小规模的代码,可是代码量大了,它的局限性就暴露得很明显了:没有语法高亮,没有自动提示,不支持项目管理,界面难看……
初学者写代码常常依赖于IDE里面的编辑器,但是IDE是比较重量级的软件,有些时候只是需要编辑编辑代码,轻量级的编辑器显然是更好的选择。
适合编辑程序的编辑器有很多,如:notepad++,ultraedit,editplus等,后两个我没用过,第一个我曾用过,但是因为反感此软件作者利用此软件散播政治观点,遂将其弃用。
武林至尊,宝刀屠龙
vim是一款跨平台字符界面软件,学会它好处很多,首先是思想会给使用者带来改变——原来编辑器还可以有多种模式,其次是再管理Linux主机的时候,出于性能上的考虑,是通过字符界面来与主机打交道的,此时如果会vim,无论是编写脚本,还是修改配置文件,都会游刃有余。
记得第一次用vim的时候,对其充满好奇,但是在它的欢迎界面上浪费了许多时间。vim是一款开源免费的软件,它也是一款慈善软件,所以在欢迎界面上才 会有“帮助乌干达的可怜儿童”这样的话语,当时觉得碍眼,所以费了些时间找去掉欢迎界面的办法,好像是找到了方法,但是这个过程让我感到有些烦躁,也就没坚持下来学vim。

后来,因为要管理linux主机,所以重新开始学习它,此时觉得这真是一款伟大的软件,无论是从其功能上看,还是从其所代表的扶危济困的善意看,顺便说说,乌干达是非洲东部的一个国家,我们国家对非洲援助不少,所以我们用它也不必有什么歉疚,而且,我们国家处于贫困中的人们、可怜的儿童也不少,有能力的情况下还是多关心关心自己人吧。
下面放送干货,告诉大家学习vim的方法,授人以鱼不如授人以渔。
无论学习什么东西,都要看第一手的资料,vim本身就有一套完善的帮助系统,要善用。仔细看的话,vim的欢迎界面已经提示了该进入帮助系统,虽然说是联机,但其实帮助文件是存储在本地的,没网也可以查看。

输入 :help 会进入vim的帮助系统,注意前面的半角冒号不能省略,其实也不用打全,只输入 :h 也能进入帮助系统。为什么要输入冒号呢?冒号是进入vim的命令模式的方法,之后就可以用命令与vim进行交互了,h就是告诉vim进入帮助系统。

进入帮助页面之后怎么读呢?就从上往下读呗。
有些朋友可能对大段的英文有恐惧心理,代码都是用英文写的,需要时常查看的文档大多也都是英文的,没什么可怕的。
vim的文档写得还是不错的,接下来对vim的学习,就由帮助系统来帮助有心学习它的人吧。
倚天不出,谁与争锋
有了vim,其实还不够,为什么?
- vim有多种模式,模式切换会浪费一些时间,特别是输入中文的时候,还得先切换到英文模式才能输入命令
- vim的界面难看,其实在字符界面的世界,它已经是不错的了,但是在桌面环境,有些寒碜,顺便说一句,windows下的卓面版vim叫做gvim

sublime观感上就要好很多了

与vim相比,sublime是用快捷键组合的方式来完成任务(sublime有仿造vim的插件,叫vintage,但笔者以为,把sublime当作vim用其实是不伦不类的做法,两者的优势都发挥不出来)。

需要注意的是sublime有种很特别的按键方式,比如上面的ctrl+k,ctrl+v,意思是说,先按ctrl+k,之后再按ctrl+v,这里的ctrl+k有些像vim里面的g键,本身只是一个命令前导,有点转义字符的味道在里面,这类方法是一种常用的扩展命令的手段。
sublime可以说是免费的,也可以说不是免费的,它可以无限期试用,只是没注册的话每隔一段时间会弹出一个提示框,影响也不大。

sublime上手难度几乎为0,图形界面嘛,几乎不需要学习成本,我的建议是在编辑过程中有什么需要,就去菜单栏里找,然后记下快捷键,以后就用快捷键,否则,每次都用菜单栏,不是编程人员应采用的使用方法。
总结
没有最好的,只有最适合的,vim和sublime只是笔者认为最好的两款编辑器,不同的人可能有不同的喜好,只要用得顺手,用什么其实无所谓。
不过如果发觉现在手上的编辑器不能满足效率或体验上的需求,或者就是想尝试一下新东西,那么可以使用一下本文介绍的两款编辑器,也许会有不一样的收获。
vim与sublime的更多相关文章
- VIm变成sublime (转)
sublime在ubuntu下始终支持不是很好, 特别是对中文输入的支持,还有一些插件在ubuntu下也不能用. 在ubuntu下还是用vim吧. 我们一起把vim变成sublime. 只需要三步 ...
- vim与sublime,程序员的屠龙刀和倚天剑
对程序员来说,写代码是再熟悉不过的事情了,windows系统自带有记事本软件,能写写小规模的代码,可是代码量大了,它的局限性就暴露得很明显了:没有语法高亮,没有自动提示,不支持项目管理,界面难看-- ...
- Sublime Text编辑器 + vim插件
Sublime安装 Sublime Text 是一个代码编辑器.Sublime Text是由程序员Jon Skinner于2008年1月份所开发出来,它最初被设计为一个具有丰富扩展功能的Vim. Su ...
- 环境与工具3:从打字开始 | vim | sublime
作为程序员,最不爽的一件事是被亲戚叫去修电脑. "喂,怎么跟你们讲,我是写代码的,不是修电脑的!什么?代码是什么?!" 小白:为什么程序员就不能修电脑了? 小程:会不会修都有可能, ...
- 学会了 Vim 还有必要用 GitHub Atom 或者 Sublime Text 么?
亦俊 ,90后,Vim 专栏作者 563 人赞同 Vim 知乎专栏:http://zhuanlan.zhihu.com/hack-vim 用过 [ Visual Studio 2015 ] [ Sub ...
- Sublime Text 全程指引 by Lucida
作者:Lucida 微博:@peng_gong 豆瓣:@figure9 博客园:@figure9 原文链接:http://zh.lucida.me/blog/sublime-text-complete ...
- Sublime Text 3 杂记
Sublime Text 是一个功能强大的代码编辑器(收费,但可无限期试用).由程序员Jon Skinner于2008年1月份所开发出来,它最初被设计为一个具有丰富扩展功能的Vim.Sublime T ...
- Sublime Text3快捷键以及常用插件
工若善其事,必先利其器.做为一个web前端开发人员,必须有一个得心应手的编码工具,本人推荐Sublime Text3和WebStorm,但WebStorm太过智能和耗性能了对初学者来说弊大于利,所以我 ...
- Sublime Text 3 Install Markdown Preview Plugins
Sublime Text 3 Install Markdown Preview Plugins. [TOC] 前言 什么是Markdown Markdown是一种可以使用普通文本编辑器编写的标记语言, ...
随机推荐
- case when then else 详解
原文发布时间为:2008-10-15 -- 来源于本人的百度文章 [由搬家工具导入] sql语句判断方法之一 Case具有两种格式。简单Case函数和Case搜索函数。 --简单Case函数 CASE ...
- springBoot 类注释和方法注释
File->Settings->Live Templates 新建组 类: /** * @Auther: test * @Date: $date$ * @Description: */ 编 ...
- 大型网站优化-memcache技术
大型网站优化-memcache技术 memory+cache 内存缓存 memcache简介 memcache是一套分布式的高速缓存系统,由LiveJournal的Brad Fitzpatrick开发 ...
- POJ 3368 Frequent values 线段树与RMQ解法
题意:给出n个数的非递减序列,进行q次查询.每次查询给出两个数a,b,求出第a个数到第b个数之间数字的最大频数. 如序列:-1 -1 1 1 1 1 2 2 3 第2个数到第5个数之间出现次数最多的是 ...
- 【转】又一次线上 OOM 排查经过
又一次线上OOM排查经过 最近线上一个服务又出现了频繁Full GC的情况,导致提供的业务经常超时.问题出现非常不稳定,经过两周的时候,终于又捕捉到了一次Full GC,于是联系运维做Heap Dum ...
- servlet源码查看
1,下载源码,点击此处可下载 2,创建web项目 我这里以jdbc这个web项目为例讲解 在javaee libraries中有个javaee.jar包,选中它-->右击-->Proper ...
- git常用命令,制作缩写命令
目录 基础命令 常用命令列表 查看状态 添加到本地仓库 推送到远程仓库 创建分支 更新分支, 合并分支 查看分支的差异 回滚 其它 缩写命令 基础命令 # 生成SSH key ssh-keygen - ...
- mysql二进制安装,升级,多实例部署
目标 理解线上部署考虑的因素 学会编译安装以及二进制安装mysql 学会升级mysql 学会多实例部署mysql数据库 学会合理部署mysql线上库 考虑因素: 版本选择,5.1,5.5还是5.6 ...
- iOS 在Xcode中使用OpenSSL库
最近要做一个密码键盘,想内置一些加密算法,所以就想到了添加OpenSSL库,现在mac也自带了OpenSSL库,但是每次都从终端是生成是很麻烦的.网上找了很多文档.博客去介绍如何编译可以在Xcode中 ...
- ThinkPHP创建应用的一般开发流程及实例
Thinkphp是免费开源的php框架,提供了建站所需要的各种组件,方便用户快速建设部署网站. Thinkphp简介:http://thinkphp.cn/Manual/16 官方完全开发手册:htt ...