牵着老婆满街逛

严以律己,宽以待人. 三思而后行.
GMail/GTalk: yanglinbo#google.com;
MSN/Email: tx7do#yahoo.com.cn;
QQ: 3 0 3 3 9 6 9 2 0 .

Ubuntu下的C/C++环境搭建

我用的是Ubuntu的Server版本,安装是很容易的,非常之简单,不过安装之后的操作系统几乎是一个空白的操作系统,几乎什么都没有,所以都得安装好。

因为是Dapper (6.06) 版本,所以我用以下方法更换软件源:

vim /etc/apt/sources.list

用以下内容替换文件中的所有内容

deb http://archive.ubuntu.com/ubuntu/ dapper main restricted universe multiverse
deb http://archive.ubuntu.com/ubuntu/ dapper-security main restricted universe multiverse
deb http://archive.ubuntu.com/ubuntu/ dapper-updates main restricted universe multiverse
deb http://archive.ubuntu.com/ubuntu/ dapper-backports main restricted universe multiverse
deb http://ubuntu.cn99.com/ubuntu-cn/ dapper main restricted universe multiverse

这里你也可以直接使用更快速的ubuntu.cn99.com的源(推荐):
deb http://ubuntu.cn99.com/ubuntu/ dapper main restricted universe multiverse
deb http://ubuntu.cn99.com/ubuntu/ dapper-updates main restricted universe multiverse
deb http://ubuntu.cn99.com/ubuntu/ dapper-security main restricted universe multiverse
deb http://ubuntu.cn99.com/ubuntu/ dapper-backports main restricted universe multiverse
deb http://ubuntu.cn99.com/ubuntu-cn/ dapper main restricted universe multiverse

这里你还可以使用速度也非常快的的mirror.lupaworld.com的源:
deb http://mirror.lupaworld.com/ubuntu/archive/ dapper main restricted universe multiverse
deb http://mirror.lupaworld.com/ubuntu/archive/ dapper-security main restricted universe multiverse
deb http://mirror.lupaworld.com/ubuntu/archive/ dapper-updates main restricted universe multiverse
deb http://mirror.lupaworld.com/ubuntu/archive/ dapper-backports main restricted universe multiverse
deb http://mirror.lupaworld.com/ubuntu/ubuntu-cn/ dapper main restricted universe multiverse

如果是教育网用户推荐使用上海交通大学的源:
deb http://ftp.sjtu.edu.cn/ubuntu/ dapper main multiverse restricted universe
deb http://ftp.sjtu.edu.cn/ubuntu/ dapper-backports main multiverse restricted universe
deb http://ftp.sjtu.edu.cn/ubuntu/ dapper-proposed main multiverse restricted universe
deb http://ftp.sjtu.edu.cn/ubuntu/ dapper-security main multiverse restricted universe
deb http://ftp.sjtu.edu.cn/ubuntu/ dapper-updates main multiverse restricted universe
deb http://ftp.sjtu.edu.cn/ubuntu-cn/ dapper bleeding main multiverse restricted universe

教育网用户也推荐使用清华大学计算机系学生科协的源:
deb http://mirror.net9.org/ubuntu/ dapper main multiverse restricted universe
deb http://mirror.net9.org/ubuntu/ dapper-backports main multiverse restricted universe
deb http://mirror.net9.org/ubuntu/ dapper-proposed main multiverse restricted universe
deb http://mirror.net9.org/ubuntu/ dapper-security main multiverse restricted universe
deb http://mirror.net9.org/ubuntu/ dapper-updates main multiverse restricted universe
deb http://mirror.net9.org/ubuntu-cn/ dapper main multiverse restricted universe

保存编辑好的文件
sudo apt-get update


刚装好的系统的root是进不去的,需要更改密码:
sudo passwd root

反正是内网用,所以就直接用root了,sudo太麻烦!

接下来安装SSH用以远程登陆:
apt-get install ssh

OK,接着装编译器:

apt-get install gcc
apt-get install make
apt-get install autoconf
apt-get install automake
apt-get install libtool
apt-get install gdb
apt-get install g++

编辑器,我偏好使用vim,就装上了它
apt-get install vim
默认下,vim是没有语法染色的,
修改/etc/vim/vimrc
只要把syntax on的注释去掉就可以了。

想要让vim好用,还需要安装一些必须的插件,这里我引用两篇文章:

第一部分介绍了一些基本的 Vim 使用技巧。掌握这些技巧可以很大地提高编辑效率,但是 Vim 的强大功能并不仅限于此。Vim 还可以通过“插件”来进行功能扩展。精确地说,是通过脚本来进行扩展,脚本类型有插件、语法加亮、配色方案、文件类型检测等多种。大部分的脚本都是由 Vim 的用户写的,解决了用户身边的问题,使 Vim 变得更加有用。本章将介绍最常用的一些脚本,其中除了一个属于“语法加亮”脚本外,其它都属于“插件”类型。关于如何写脚本的一些基础知识将在下一部分进行一些介绍。

2.1. gzip(压缩文件支持)

作者:Bram Moolenar

网站脚本编号:无(包含在 Vim 的标准发布之中)

安装说明:

功能说明:

该脚本使得 Vim 可以直接打开使用 gzip [1]、bzip2 [2] 和 compress [3] 压缩的文件(要求存在相应的命令行工具)。后缀为“.gz”、“.bz2”和“.Z”的文件会在打开时被动态解压缩,并在写操作时被自动重新压缩。

打开压缩文件时,屏幕上出现一个(不正确的)“[noeol]”的提示是正常的,不必进行理睬。

2.2. netrw(网络文件支持)

作者:Charles E. Campbell, Jr.(绰号 Dr. Chip)

网站脚本编号:1075(Vim 的标准发布之中可能包含一个较老的版本)

安装说明:

Vim 6.4 的标准发布带的版本是 42,较老、功能不齐全,但无须安装。建议:

1. 在 Vim 网站上下载版本 62(更新的版本只能用于 Vim 7);
2. 使用“tar xvfj netrw.tar.bz2 -C ~/.vim”解开;
3. 在Vim中运行“:helptags ~/.vim/doc”安装文档。

功能说明:

支持直接读写网络上的文件,支持的协议有 ftp、http、rsync、scp 等。比如,使用 FTP 协议以用户名 adah 打开服务器 server 上 ~/temp 目录下的 test.cpp 文件,可以直接在命令行上使用:

												
														vim ftp://adah@server/temp/test.cpp

												
										

Vim会自动提示用户输入口令,然后打开文件。

更多的帮助内容请参考“:help netrw”。

2.3. engspchk(英文拼写检查)

作者:Charles E. Campbell, Jr.(绰号Dr. Chip)

网站脚本编号:195

安装说明:
在 Vim 网站上下载最新版本(engspchk.tar.gz);
使用“tar xvfz engspchk.tar.gz -C ~/.vim”解开;
在Vim中运行“:helptags ~/.vim/doc”安装文档。
提示替换拼写功能需要 agrep [4],可能需要另外下载安装。

功能说明:
一个Vim专用的拼写检查器,其最主要的特点是:

  • 可以通过变量 spchkdialect 选择英语变体(英国、美国、加拿大),对于找不到的词、不常见的词、不在当前英语变体中的词以不同的方式加亮显示;
  • 支持用户词典(保存在 .vim/CVIMSYN 目录中)和项目词典(保存在被检查文件所在的目录中);
  • 对于源代码文件,只对注释进行拼写检查,而不会对你的变量名称胡乱提抗议;
  • 通过词典文件可支持除英语以外的其它语言。

图 5 中的窗口里 engspchk 正在运行中。其中可以看到,红色部分是插件所不能识别的单词,黄色部分是当前英文变体(缺省是美国英语)中不正确的拼法,而青色部分是很少见的单词。图中运行的是包含图形界面支持的 Vim,因而还可以看到一个名为 DrChip 的菜单项(参见图6),在其中可通过菜单选择拼写检查相关的各项功能;同时还能看到快捷键:“\ec”开始拼写检查,“\ee”结束拼写检查,“\ea”选择替换拼写,等等。在文本模式的 Vim 中,我们一般就只使用这些快捷键了。


图 5
图 5

图 6
图 6

更多的帮助内容请参考“:help engspchk”。

2.4. calendar(日历显示)

作者:Yasuhiro Matsumoto

网站脚本编号:52

安装说明:

在 Vim 网站上下载文件 calendar.vim,存到 ~/.vim/plugin 目录中。

功能说明:

图 6 的下半部分就是 calendar 的运行示例,是直接在正常模式下键入“\caL”显示出来的。光标在该窗口中时,可使用左箭头或上箭头显示前一个月,右箭头或下箭头显示后一个月,“t”回到“今天”,“q”关闭日历窗口。在有鼠标支持时,也可以使用鼠标在黄色字样的“Prev”、“Today”、“Next”上双击达到类似的效果。

除使用“\caL”外,“\cal”也可以打开一个日历窗口,但显示位置是在 Vim 的左侧而不是下方。另外,命令“:Calendar”效果和“\cal”相同,但其后可以跟参数:一个参数的话表示月份,两个参数的话则分别表示年份和月份。“:CalendarH”与“:Calendar”类似,但日历窗口的打开位置和“\caL”(而不是“\cal”)一样,是在下方而不是左侧。

2.5. project(文件的“项目”管理)

作者:Aric Blumer

网站脚本编号:69

安装说明:

1. 在 Vim 网站上下载最新版本(project-1.3.tar.gz);
2. 使用“tar xvfz project-1.3.tar.gz -C ~/.vim”解开;
3. 在 Vim 中运行“:helptags ~/.vim/doc”安装文档。

功能说明:

该插件可以把文件组织成一棵树的形式,以便于查找和管理。使用命令“:Project”即可打开一个用户的“项目文件”(~/.vimprojects)。项目文件采用普通的文本文件的形式,非常易于浏览和修改。图 7 是一个示例。其中左边窗口部分的就是一棵项目树,完整内容如下:


图 7
图7

												
														CvsMenu="~/.vim" CD=. {
 plugin/cvsmenu.vim
 doc/cvsmenu.txt
}
Nvwa="~/nvwa_local" CD=. {
 doc=doc {
  ChangeLog
  README
  webupdate.sh
 }
 nvwa=nvwa {
  bool_array.cpp
  debug_new.cpp
  mem_pool_base.cpp
  static_mem_pool.cpp
  bool_array.h
  class_level_lock.h
  cont_ptr_utils.h
  debug_new.h
  fast_mutex.h
  fixed_mem_pool.h
  mem_pool_base.h
  object_level_lock.h
  pctimer.h
  set_assign.h
  static_assert.h
  static_mem_pool.h
 }
}

												
										

在这个项目文件中存在两个项目:CvsMenu 和 Nvwa。引号中的内容表示路径,“CD=.”则表示打开该项目中的文件时,当前目录会更改到项目所在的目录。项目下面可以再分子项目,如 Nvwa 项目下有 doc 和 nvwa 两个子项目,没有“CD=.”表示打开子项目里的文件时不再更改当前目录。

图中并没有显示出完整的内容,因为其中的内容可以折叠(缺省打开项目文件时是完全折叠起来的,即在上面的例子中,只能看到两个项目的名字“CvsMenu”和“Nvwa”)。在非文件名行上使用鼠标双击或回车键可以进行展开或折叠,在文件名行上使用鼠标双击或回车键则可以打开对应的文件。

更多的帮助内容请参考“:help project”。

2.6. taglist(源代码结构浏览)

作者:Yegappan Lakshmanan

网站脚本编号:273

安装说明:

1. 确保机器上有一个可用的 Exuberant Ctags 的版本(可以执行命令“ctags”)

2. 在 Vim 网站上下载 taglist(假设为 taglist.zip);

3. 使用“unzip taglist.zip -d ~/.vim”解开;

4. 在 Vim 中运行“:helptags ~/.vim/doc”安装文档。

虽然 taglist 使用 ctags,但并不要求 tags 文件的存在。

功能说明:

使用命令“:Tlist”启用/关闭 taglist,效果请先看一下图 8。Taglist 的主要特性有:


图 8
图8

  • 可以显示宏(macro)、函数(function)、变量(variable)、类型定义(typedef)、类(class)、结构(struct)等多种内容信息;
  • 打开多个文件时,可以同时看到多个文件的结构信息;
  • 在左边的 taglist 窗口显示的名称上双击鼠标或按回车键,右边主窗口中会跳转到相应的定义位置;
  • 右边窗口中光标的位置改变,左边的窗口也会在 4 秒内(缺省值,参见“:help 'updatetime'”)黄色加亮显示相应的名称;
  • 在启用/关闭 taglist 时,插件能够自动改变当前 Vim 窗口的大小(不管是文本模式的 Vim 还是图形界面的 Vim),除非使用“:let Tlist_Inc_Winwidth=0”关闭这一功能(当使用这一功能导致兼容性问题时)。

更多的帮助内容请参考“:help taglist”。

2.7. cvsmenu(CVS集成)

作者:Thorsten Maerz/吴咏炜

网站脚本编号:1245

安装说明:

1. 在 Vim 网站上下载文件 cvsmenu.vim,存到 ~/.vim/plugin 目录中;
2. 启动 gvim,在菜单中选择“CVS-Settings-Install-Install updates”(文本模式的 Vim 可以使用快捷键“,cgii”),从网上(SourceForge)的 CVS 中安装最新版本和帮助文档(此步骤可选)。

功能说明:

在 Vim 中集成 CVS [24]版本管理功能。该插件最初由 Thorsten Maerz 编写,在 2002 年以来没有再得到维护。我在 2005 年初开始使用这个插件后,非常喜欢它,修正了其中存在的错误,并一直维护该插件。如果大家发现有 bug,报告给我就可以了。

主要功能可在图 9 的菜单中看到:


图 9
图9

  • 了解 CVS 环境的基本信息和 cvsmenu 中的变量设定(参见图 10);
    图 10
    图10
  • 调整设定,安装更新版本;
  • 插入 CVS 的可扩展关键字,如“$Date$”、“$Id$”;
  • 对目录进行基本操作(cvs update 等);
  • 接受附加参数的基本操作(文件比较等);
  • 管理功能,如登录;
  • 删除类操作;
  • 打标签;
  • 观察(跟踪)和编辑功能;
  • 将本地文件和 CVS 中的文件进行比较(以 Vim 的分左右两列使用颜色加亮显示修改、增加、删除部分的比较方式;效果参见图 11);
    图 11
    图11
  • 显示文件每一行的更改人和更改时间(cvs annotate,参见图 12);
    图 12
    图12
  • 显示库的访问历史(cvs history);
  • 显示文件修订日志(cvs log;参见图 13);
    图 13
    图13
  • 显示文件状态;
  • 显示较短的文件状态;
  • 根据本地信息显示文件状态(不访问库);
  • 签出模块(cvs checkout);
  • 查询更新;
  • 更新,如有冲突会高亮显示(cvs update);
  • 取消修改;
  • 添加当前文件到 CVS 中(cvs add);
  • 签入当前文件(cvs commit);
  • 导入文件(cvs import);
  • 添加并签入当前文件。

根据实际使用的需要,除了修订错误之外,我加入了一些编码相关的支持。拿一个最实际的情况,如果使用“set encoding=utf-8”,但源代码中仍使用了 GBK 编码的中文字符,那么,必须在 .vimrc 中加入一行“let g:CVScvsoutputencoding='gbk'”才能保证“cvs annotate”操作的结果是正确的。

Thorsten 把该插件的易用性设计得相当好。举例来说,在作文件比较时,按 Tab 可跳转到下一个不同处,左侧的比较窗口中按一下“q”即可关闭该窗口。更多的帮助内容请参考“:help cvsmenu”。

2.8. doxygen(文档注释语法加亮)

作者:Michael Geddes

网站脚本编号:5

安装说明:

1. 在 Vim 网站上下载最新版本(doxygen.zip);
2. 使用“unzip doxygen.zip”解开;
3. 执行“cp -p doxygen.vim ~/.vim/syntax”和“cp -p doxygen.txt ~/.vim/doc”复制文件到 Vim 目录下;
4. 在 Vim 中运行“:helptags ~/.vim/doc”安装文档。
5. 如果 ~/.vim/after/syntax 目录不存在,使用“mkdir -p ~/.vim/after/syntax”创建该目录;
6. 进入 ~/.vim/after/syntax 目录,使用下面三行创建语法文件之间的关联,使得在 C、C++ 和Java 文件中可以识别文档注释:


												
														ln -s ../../syntax/doxygen.vim c.vim
ln -s ../../syntax/doxygen.vim cpp.vim
ln -s ../../syntax/doxygen.vim java.vim"

												
										

6. 可选地,看一下我的个人编程网页 [6] 下有没有对 doxygen.vim 的更新(里面包含有作者尚未并入到标准发布中去的我的更改——好奇的话,你可以在 doxygen.vim 文件中数一下,看一看 Wu Yongwei 的名字出现了几次:-))。

功能说明:

如果你用过文档注释,相信我不需要多说,看一下图 14你就知道这个脚本的功能了。如果你没有用过文档注释,强烈建议你到 Doxygen [7] 的网站上看一下,了解一下这个非常有用的工具。作为示例,可在 http://nvwa.sourceforge.net/doc/debug__new_8cpp.html#a17 看一下图中的代码使用 Doxygen 自动生成的 HTML 网页。


图 14
图14

2.9. matrix(!)

作者:Don Yang

网站脚本编号:1189

安装说明:

在 Vim 网站上下载文件 matrix.vim,存到 ~/.vim/plugin 目录中即可。

功能说明:

是的,说的就是电影 Matrix!Vim 的脚本并不是都干“正经事”的。想看一下电影里那些酷酷的字符在 Vim 的窗口里翻滚吗?发一个命令“:Matrix”即可(按任意键退出)。效果见图 15。


图 15
图15




回页首


参考资料

[1] The gzip home page: http://www.gzip.org/

[2] bzip2: http://www.bzip.org/

[3] Compress for UNIX: http://www.answers.com/compress#Wikipedia

[4] agrep: http://www.answers.com/agrep

[5] CVS-Concurrent Versions System: http://www.nongnu.org/cvs/

[6] Wu Yongwei's Programming Page: http://wyw.dcweb.cn/

[7] Doxygen: http://www.stack.nl/~dimitri/doxygen/



另外一片:

以下是滇狐收集和整理的一些有用的 VIM 插件, 大部分插件都有自己详细的说明书,因此这里就不详细介绍每个插件的安装和使用方法了。 通过这些插件, VIM 能够变成一个非常强大的平台, Happy VIMming! 如果想详细了解默认的插件插件安装路径,请看这里

1 程序设计

1.1 Tag List

下载地址: 官方站点

官方描述: The “Tag List” plugin is a source code browser plugin for Vim and provides an overview of the structure of source code files and allows you to efficiently browse through source code files for different programming languages.

滇狐评价: 这是一个非常非常非常非常重要的插件, 有了它, 我们才能够在 VIM 中查看一个文件中包含的函数列表, 或是一个类包含的方法列表, 为编程人员提供了极大方便。推荐大家一定要安装!

安装注意事项: 有的系统内置的 ctags 功能太弱, 推荐大家安装 EXUBERANT CTAGS, 这个东西功能比较强大, 居然连 HTML 里面内嵌的 Java Script 都能够支持, 实在是匪疑所思!

滇狐个人习惯: 滇狐习惯把方法列表放在屏幕的右侧, 于是在 .vimrc 中设置了

								
										let
								 Tlist_Use_Right_Window=1

另外, 滇狐习惯让当前不被编辑的文件的方法列表自动折叠起来, 这样可以节约一些屏幕空间,于是在 .vimrc 中设置了

								
										let
								 Tlist_File_Fold_Auto_Close=1

1.2 A

下载地址: 官方站点

官方描述:

A few of quick commands to swtich between source files and header files quickly.

:A switches to the header file corresponding to the current file being edited (or vise versa)

:AS splits and switches

:AV vertical splits and switches

E.g. if you are editing foo.c and need to edit foo.h simply execute :A and you will be editting foo.h, to switch back to foo.c execute :A again.

滇狐评价: 第一眼看到这个东西时, 总觉得它功能太简单, 似乎没有什么用处。用过之后, 才发现这项功能对于一个程序员来说是如何重要!

1.3 Win Manager

下载地址: 官方站点

官方描述: winmanager is a plugin which implements a classical windows type IDE in Vim-6.0. Basically, you have the directory tree and the buffer list as 2 windows which stay on the left and the editing is done in a seperate area on the left. People have already made excellent File and Buffer explorers seperately and I thought that it might be a cool idea to combine them both. winmanager.vim combines the standard File Explorer which ships with Vim 6.0 and a Buffer Explorer written by Jeff Lanzarotta into one package.

滇狐评价: 非常好用的东西, 在屏幕上打开一个文件浏览器, 这样就可以方便地选择要编辑的文件了。

默认情况下, winmanager 依赖于 bufexplorer,到这里下载。如果你不喜欢 bufexplorer 插件的话 可以在你的 .vimrc 中添加这条命令禁用它:

								
										let
								 g:winManagerWindowLayout ="FileExplorer"

这样就不需要下载该插件了。

滇狐为 winfileexplorer.vim 加了一个补丁, 提供了使用系统默认打开方式打开选中文件的功能,只要把光标放在想要打开的文件上, 然后按“S”就可以了 (注意是大写)。这样以后就可以直接在 gvim 里打开 xmms, 不用再切换出来找 konqueror 了。

1.4 gdbvim

下载地址: 官方站点

官方描述: You have one window with (g)vim open, other window with gdb running. When you reach source line in your code, it appears in the vim window. In the opposite direction, you can send commands from vim to gdb (e.g., set breakpoints on given line).

滇狐评价: 该插件意义很重大, 为我们在 VIM 中调试程序提供了可能。 虽然功能还非常少,但已经足以解决平常的大部分需求了。 原始版本问题比较多, 例如只能添加断点,不能删除断点, 滇狐为该插件添加了删除已加断点的功能。 另外快捷键的设置也比较不快捷,滇狐又顺便把相应的快捷键修改了一下, 现在用起来已经比较顺畅了, 放出来给大家参观一下,以便继续改进。 目前只在 Linux 下调试通过, 其它平台未经测试, 感兴趣的朋友可以在其它平台下测试,并汇报测试结果。

需要继续增加的功能: 下一步滇狐准备再给这个插件加上保存所有断点的功能,这样下次调试的时候就不用重新设置断点了。 另外, 目前查看变量的值时,只能把结果打印到 console 窗口中, 滇狐希望在下一个版本中能够把查看结果抓取到 VIM 中显示。 VIM 网站上给出了把所有结果抓取到 VIM 中的实现, 但那不是滇狐希望的结果。滇狐最希望得到的结果是使用 tooltip 显示变量结果, 另外能够再提供一个 watch 窗口, 时刻监视变量的值, 以后慢慢实现吧。

安装注意事项: gdbvim 脚本是使用 Perl 语言编写的, 因此需要安装 Perl。为了方便你的使用, 建议在 $PATH 路径下添加一个指向 plugin/gdbvim 脚本的符号链接, 或者直接将该文件复制到 $PATH 路径下,滇狐推荐前者。 还有, 最好在你的 .vimrc 中 set noshowcmd,否则大量的“请按 ENTER 继续”会把你活活烦死。 另外, 滇狐 patch 过的脚本依赖 multvars.vim,如果你使用滇狐版的话, 需要再安装这个插件。

使用方法: 编译你的程序时加上 -g 参数生成调试信息, 然后使用“gdbvim <你的程序名>”启动 gdbvim, gdbvim 会自动启动一个 gvim。 将 gvim 最大化, 然后就可以使用 Gdb 菜单或快捷键添加断点、 单步调试程序、 查看变量值了。

1.5 jad

下载地址: 无。 自己将代码复制粘贴回去, 保存为 $HOME/.vim/plugins/jad.vim:

								
										augr
								 class
au!
aubufreadpost,filereadpost *.class %!jad -noctor -ff -i -p %aubufreadpost,filereadpost *.class setreadonlyaubufreadpost,filereadpost *.class setft=java
aubufreadpost,filereadpost *.class normal gg=G
aubufreadpost,filereadpost *.class setnomodifiedaubufreadpost,filereadpost *.class setnomodifiableaugr END

官方描述: (无)

滇狐评价: 挺好玩的插件, 不过似乎也只是好玩而已。 安装了之后可以直接双击打开 .class 文件, VIM 会自动调用 jad 把文件反编译了。

安装注意事项:需要先安装一份 jad

1.6 cscope_maps

下载地址: 官方站点

官方描述: Cscope is a very handy tool, but it’s even better when you don’t ever have to leave the comfort of your favorite editor (i.e. Vim) to use it. Fortunately, Cscope support has been built into Vim.

滇狐评价: 滇狐目前 cscope 用得不如 ctags 多, 许多功能都不大熟。 不过既然大家都说好,那还是装着玩玩吧。

安装注意事项: 需要安装 cscope

1.7 project

下载地址: 官方站点

官方描述: You can use this plugin’s basic functionality to set up a list of frequently-accessed files for easy navigation. The list of files will be displayed in a window on the left side of the Vim window, and you can press <Return> or double-click on filenames in the list to open the files. This is similar to how some IDEs I’ve used work. I find this easier to use than having to navigate a directory hierarchy with the file-explorer. It also obviates the need for a buffer explorer because you have your list of files on the left of the Vim Window.

滇狐评价: 食之无肉,弃之有味。

安装注意事项: 几乎没怎么用过, 所以暂时没有发现需要注意的地方。

2 文档编写

2.1 VIM LaTeX Suite

下载地址: 官方站点

官方描述:

Vim is undoubtedly one of the best editors ever made. LaTeX is an extremely powerful, intelligent typesetter. Vim-LaTeX aims at bringing together the best of both these worlds.

We attempt to provide a comprehensive set of tools to view, edit and compile LaTeX documents without needing to ever quit Vim. Together, they provide tools starting from macros to speed up editing LaTeX documents to compiling tex files to forward searching .dvi documents.

See the features page for a brief tour of the various features in LaTeX-suite. All these features can be tuned extensively using the included texrc file. The screenshots page shows you how a typical working session with LaTeX-suite might progress.

LaTeX-suite is made for Vim versions 6.0 and above. Installation instructions are given in the download page.

滇狐评价: 实在是非常非常非常非常好的一个插件! 用 VIM 写 LaTeX 的朋友无论如何都要试一试,不用 VIM 写 LaTeX 的朋友也要试一试, 说不定你会改变你的主意, 改用 VIM 写 LaTeX。

安装注意事项: 如果使用 gvim 的话, 需要注意 scim 可能会和 LaTeX Suite 有冲突。 解决方法是要么把 scim 的 on the spot 功能去掉, 或者把 gtk_im_module 设为 scim。 (较新版本 scim 建议第二种方案)。

另外, 为了提高工作效率, 强烈建议配置 VIM 的LaTeX 正向、反向搜索功能。

2.2 sketch

下载地址: 官方站点

官方描述: Sketch.vim – Line drawing/painting using the mouse. Based on an idea by Morris.

滇狐评价: 很好玩, 虽然用到的时候不多, 但真一旦用到了, 还是会觉得这个东西很有用的。

安装注意事项: 建议在 .vimrc 中把 call ToggleSketch() 映射为命令,方便一些:

								
										command
								
								
										-
								
								nargs
								
										=
								
								
										0
								 ToggleSketch call ToggleSketch()

3 日常生活

3.1 Calendar

下载地址: 官方站点

官方描述: This script create calender window. This don’t use the external program (cal).

滇狐评价: 安装完毕后使用 :Calendar 命令打开一个垂直的日历窗口, 使用 :CalendarH 命令打开水平的日历窗口。 应该还是比较有用的。

安装注意事项: 滇狐个人喜欢把日记的扩展名改成 .txt, 默认的是 .cal。在 calendar.vim 里面查找替换一下就可以了。 另外, 可以在 .vimrc 里面修改日记所在的路径,默认是 ~/diary。

								
										let
								 g:calendar_diary=<PATH>

3.2 vimtips

下载地址: 官方站点

官方描述:

Whenever you start Vim (but no more than daily) the script will open a help window with a Vim tip. You must download the tips separately, from 官方站点

After installation, you can get the next tip with

:TipOfTheDay

滇狐评价: 每天看一条,慢慢就变成 VIM 牛了。

安装注意事项: 暂时没发现。

3.3 ViKi

你现在看到的这张网页就是使用 ViKi 制作的。 也许它不漂亮, 但是很清秀, 而且添加信息非常方便。 是 ViKi 将滇狐从繁重的 Html 编辑工作中解放出来, 使滇狐有足够的勇气重新开始制作个人主页。 为了更好地说明 ViKi,滇狐将该插件的使用单独放到另一张网页中。

posted on 2006-08-10 18:05 杨粼波 阅读(17021) 评论(4)  编辑 收藏 引用 所属分类: 学习笔记

评论

# re: Ubuntu下的C/C++环境搭建 2006-08-10 20:33 Stone Jiang

非常不错
  回复  更多评论   

# re: Ubuntu下的C/C++环境搭建 2008-04-28 16:08 schumi

好文,
学习了。  回复  更多评论   

# re: Ubuntu下的C/C++环境搭建 2011-12-16 22:23 JOJO

初学者,还得慢慢看,谢谢!  回复  更多评论   

# re: Ubuntu下的C/C++环境搭建 2011-12-18 17:16 杨粼波

配置一个合适自己的编辑环境,这个是最麻烦的。别的倒还好。不过,顺手的编辑环境靠的是自己慢慢的摸索,如果摸索出来了,之后再配置的话就仅仅是体力活了。

事实上,我一直都摆脱不了VS,都是在Windows下面编辑好,然后再到非Windows平台下编译调试的。
对于我这等抛弃不了鼠标的货来说,全键盘还是颇为不习惯的。  回复  更多评论   


只有注册用户登录后才能发表评论。
【推荐】超50万行VC++源码: 大型组态工控、电力仿真CAD与GIS源码库
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理