mirror of
https://gh-proxy.org/https://github.com/klinsmaya/dashjim.github.com.git
synced 2026-11-09 01:47:00 +08:00
revert last 3 commits to fix the Jekyll build error ~ git revert HEAD~3..HEAD~1
This commit is contained in:
@@ -1,43 +0,0 @@
|
||||
---
|
||||
layout: post
|
||||
title: 为什么要学习VIM
|
||||
categories:
|
||||
- CommonTec
|
||||
tags:
|
||||
- vim
|
||||
---
|
||||
|
||||
|
||||
> Vim很多很多年前就接触过,但是一直就把它当成过时的一塌糊涂的玩意,没把它当回事。直到最近在Linux上的工作越来越多,又在stackoverflow上见到众多其粉丝的高度评价后才将信将疑开始学习,结果重度沉迷其中,不可自拔,上个周末读其帮助文档读到半夜,到底是什么在吸引我呢?
|
||||
|
||||
##一切都由快捷键实现##
|
||||
|
||||
有没有快捷键情节可以决定一个人是否适合学习vim。以我为例,当年学photo shop时几乎学会了其全部快捷键,最近开始用visual studio,也是先花半天学习快捷键。想想看vim的命令模式不就全是快捷键吗?默认的加上自定义的,在数量上可以轻松超过300个,再加上其快捷键可以组合使用,比如y,G,p各自是快捷键,组合起来的yyGp是将当前行复制粘贴到文件尾,这是一个何等强大的快捷键系统!
|
||||
|
||||
##更高效的焦点移动##
|
||||
大多数人都不相信用键盘移动焦点会快过鼠标。这一段时间我各种编辑器混着用,总的感觉是少数情况下鼠标快,综合考虑Vim命令模式快。
|
||||
|
||||
##功能强大##
|
||||
什么叫功能强大?本人用了十年的Eclipse也算的上熟练吧。Eclipse中喜欢用的快捷键有Alt加上下移动选中的行,Ctrl加上下键移动可视区域(View port)但不改变光标位置,在上次编辑位置中来回跳等。最近用的Visual Studio 2010中有个用绿色和黄色指示当前编辑过的行的功能,这一点我比较喜欢。但是上面这些功能在VIM这里全部都有,由此可见VIM功能之全面。个人以为仅以编辑器的功能来说vim是主流IDE的超集。
|
||||
|
||||
当然了这里也要客观得提一下vim在语言相关的功能上并不能全面压倒IDE,比如Java语言的静态语法错误检测,各种重构,搜索方法的调用层级,accesser自动生成等。但是动态语言的IDE并不具有上述功能(python,PHP等),此时vim占据较大优势。对于静态语言来说,当改Bug查代码为主要任务时,Vim也是非常合适的。
|
||||
|
||||
##一次学习终身受用##
|
||||
在Linux中应用广泛,可跨平台到Windows, Mac,提供一致性的使用体验 。
|
||||
Linux发行版中普遍包含,在服务器上调试脚本必不可少。
|
||||
在Linux常用命令中普遍出现,如git,less,man需要移动和翻页时都可以用vi的方式。
|
||||
|
||||
##入门难精通快##
|
||||
vim难学,主要体现在人们无法适应没有鼠标的感觉,也无法相信不用鼠标可以更快,然后采用死记硬背的方式来记快捷键,既没信心又没方法。
|
||||
这里建议大家用分级学习的方法,先明确目标,然后要在用中学,万不可死记硬背。我的分级如下。
|
||||
第一级是基本概念
|
||||
Vim中自带了vim tutor学习教程,会指导你边学边做,学习最基本的移动,复制粘贴等,每遍30分钟左右,两三遍后这一级就过了。
|
||||
|
||||
第二级是高级光标移动和复制粘贴
|
||||
熟练的光标移动非常重要,这一部分学好了编辑效率会直线提升,摆脱心理上对鼠标的依赖。
|
||||
建议直接学习自带的帮助中的motion一章,输入:h motion即可。
|
||||
复制粘贴是与选择相关的,高效的复制粘贴掌握后就可以不再依赖Notepad++之类的编辑器了。
|
||||
|
||||
第三级是持续改进级
|
||||
|
||||
不断使用,不断发掘,不断熟练。
|
||||
Reference in New Issue
Block a user