GNU/Linux 使用Hacking Vim

Vim 是功能完整且强大的文字编辑器 (Text Editor,以下简称 Editor),相信接触过 GNU/Linux 的伙伴都曾接触过。相信不少人对于它的印象就如同 COSCUP 2011 的经典名句「第一次用 vi 时进的去出不来」一样,不过冻仁相信,只要事先做过些功课,便可习得第一成的功力,待大成后,其带来的便利性是其他的 Editor 难以取代的!

write 11.hacking-vim.md with Vim.

▲ 使用 markdown 语法撰写铁人赛文章的截图。视窗切割及 CtrlP 火力展示,其布景主题为 fu

我们除了可以在终端机输入 vimtutor 取得 Vim 使用手册,也可于网际网络上取得不少资源。

2013-09-28-vim-learning-curve.png

▲ Vi 学习曲线图。

Vim 命令图解

▲ vgod 汇整的 Vim 入门图解说明

土法炼钢快速移动加強技巧使用套件 (plugin) 到打造属于自己的 Vim 前后得花了不少的时间及心力,但我们可以在各个平台 (Android, GNU/Linux, iOS, Mac OSX, Windows)、软件 (Bash, Chrome, Firefox, MySQL, Python, vifm, Visual Studio, w3m) 以及网络服务 (Facebook, Gmail) 中发现它的影子,是个习得一招半式便可打遍天下无敌手的 Editor,对冻仁而言它是个很棒的投资!

部份的发行版本只会预载 Vi 而没有 Vim,这时请手动安装它。

# Debian, Ubuntu on Gnome, Unity
$ sudo aptitude install vim-gnome

# Debian, Ubuntu on KDE, Evilwm
$ sudo aptitude install vim-gtk

# CentOS, Fedora
$ sudo yum install vim-X11

冻仁的 Vim

如想取得冻仁完整的 Vim 环境设定 (vimrc),请参考 冻仁的 GitHub

# 下载冻仁的环境设定。  
$ git clone https://github.com/chusiang/vimrc.git  

# 切换目录。  
$ cd vimrc/  

# 备份原设定。  
$ make backup  

# 安装。  
$ make install  

# 开启 Vim。  
$ vim  

# 安装各式的 vim 套件。  
:NeobundleInstall  

以下设定可写入 $HOME/.vimrc,这样下次啟启动 Vim 时设定才会存在。

更换 fu 布景主题

colorscheme fu  

使用 F5, F6 开启当前编辑的网页

" - local.drx.tw (PHP)  
nnoremap <F5> :silent update<Bar>silent !firefox %:p:s?\(.\{-}/\)\{4}?http://local.drx.tw/?<CR>  

" - current file (Ex: html, txt)   
nnoremap <F6> :silent update<Bar>silent !firefox %:p &<CR>  

常用指令

内文取代

  • s: 取代。
  • g: 对该行所有的字元进行处理。
  • c: 检查。

全文取代。

:%s/old_world/new_world/gc

取代第 5 ~ 10 行。

:5,10s/old_world/new_world/gc

启用贴上模式

若有设定自动缩排 (set hls),在贴上程式码时会有走山的情形,这时可以先切换成贴上模式再贴上。

:set paste

比对档案差异

称职的系统管理者是勤于备份的,在更动设定档 (conf) 前一定会先复制一份。在众多版本中的难以使用肉眼查觉出差异,这时可用 diff, Vim 或 Meld 来比对。

# 在 Vim 底下时,请使用 :diffsplit。
$ vi <file1>
...
:diffsplit <file2>

# 在 bash 底下时,请使用 vimdiff。
$ vimdiff <file1> <file2>

将内容转成 HTML

:TOhtml 会产生与 Vim 上一模一样的 html,对于想用网页秀出程式码的人是必备的功能 (范例) 。

$ vi /usr/local/bin/powersave
......
:TOhtml

Vim 是个有门槛的文字编辑器,但冻仁相信只要用对方法,一步一步前进就可以早日驾驭它。建议初学者可以先套前人的 vimrc,并试著修改它,不懂的部份只要 Google 一下相信可以找到不少的解答。

努力学习 Vim,成为一位好的 Vimmer 吧!

资料来源


以上内容是否对您有帮助:
在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号

意见反馈
返回顶部