星期一, 八月 31, 2009

VIM学习笔记 编辑多个文件(Edit Multiple Files)

如果需要同时打开并编辑多个文件,可以使用以下几种方法:

  • 在启动vim时,可以指定多个文件做为参数(Argument)以同时打开多个文件;
  • 在Vim中,新建窗口(Window)用于打开文件;
  • 在Vim中,在任一窗口(Window)内,都可以新建多个缓冲区(Buffer)用于编辑不同的文件。

以下表格,简单列举了参数、窗口和缓冲区命令的对照关系:

参数和缓冲区命令对照
:next切换到下一文件:bnext
:previous切换到上一文件:bprevious
:Next:bNext
:first切换到第一个文件:bfirst
:last切换到最后一个文件:blast
:args显示正在编辑的文件名              :buffers
:argument [N] 切换至第N号文件:buffer [N]

参数、缓冲区和窗口命令对照
:snext分割窗口并切换到下一文件:sbnext
:sprevious分割窗口并切换到上一文件:sbprevious
:sNext:sbNext
:sfirst分割窗口并切换到第一个文件:sbfirst
:slast分割窗口并切换到最后一个文件:sblast
:sall分割窗口并显示所有文件:sball
:sargument [N]分割窗口并切换至第N号文件:sbuffer [N]

在不同文件之间拷贝文本

使用标记,在不同文件之间拷贝文本:

  1. 编辑第一文件
  2. 执行命令:split second_file打开另一个窗口并开始编辑第二个文件
  3. 使用命令ctrl+Wp回到含有原始文件的前一个窗口
  4. 将光标移动到要拷贝文本的第一行
  5. 用命令ma标记这一行
  6. 移动到要拷贝文本的最后一行
  7. 执行命令y'a来复制当前光标位置到所做标记之间的文本
  8. 使用命令ctrl+Wp回到将要放置文本的文件
  9. 将光标移到将要插入文本的地方
  10. 使用命令P将复制的文本粘贴到文件中

使用可视化模式,在不同文件之间拷贝文本:

  1. 编辑第一文件
  2. 执行命令:split second_file打开另一个窗口并开始编辑第二个文件
  3. 使用命令ctrl+Wp回到含有原始文件的前一个窗口
  4. 将光标移动到要拷贝文本的第一行
  5. 执行命令V进入可视化模式
  6. 移动到将要复制文本的最后一行,被选中的文本将会被高亮显示
  7. 执行命令y复制选中的文本
  8. 使用命令ctrl+Wp回到将要放置文本的文件
  9. 使用命令P将复制的文本粘贴到文件中

使用寄存器,在不同文件之间拷贝文本:

  1. 编辑第一文件
  2. 执行命令:split second_file打开另一个窗口并开始编辑第二个文件
  3. 使用命令ctrl+Wp回到含有原始文件的前一个窗口
  4. 将光标移动到要拷贝文本的第一行
  5. 执行命令"a3yy将需要复制的行放入寄存器
  6. 使用命令ctrl+Wp回到将要放置文本的文件
  7. 使用命令"ap将复制的文本粘贴到文件中

读入文件

使用:read filename(可简写为:r)命令,可读进一个文件并将内容插在当前行的后面。我们也可以在命令中,指明读取内容放置在文件中的特定位置。例如:0r filename命令,将读取内容放置在文件开头;而:$r filename命令,则会将读取内容放置在文件末尾。

写入文件

命令:write(可简写为:w)用来写入文件(也就是保存当前文件)。

使用以下命令将保存文本到文件collect.txt中:

:write collect.txt

如果这个文件已经存在,那么就会显示错误信息。如果要强行保存,那么需要使用!选项:

:write! collect.txt

我们也可以向已有文件中追加内容。使用以下命令将正编辑的文件内容追加到collect.txt中:

:write >> collect.txt

使用以下命令,将正编辑的文件的部分内容(第100行到文件末尾)追加到collect.txt中:

:100,$write >> collect.txt

如果这个文件不存在,那么就会显示错误信息。可以使用!选项,强行创建并保存新文件:

:write! >> collect.txt

我们还可以导出文件中的部分内容到其它文件中,以达到分拆文件的目的。以下命令将第10行到文件末尾的内容保存到collect.txt中:

:10,$write collect.txt

以下命令则会将当前行到第100行的内容保存到collect.txt中:

:.,100write collect.txt

在可视化模式下,选择内容,然后使用以下命令也可以写入其它文件:

:'<,'> write collect.txt

使用写入命令不仅可以保存文件,而且还可以将文件重定向到其他程序。在Linux系统中,我们可以使用以下命令将文件发送到打印机:

:write !lpr

注意:命令:write! lpr:write !lpr是不同的,前者是强行保存文件,而后者则是将文件发送到打印机。

命令:wall可以保存所有已经修改过的文件(包括隐藏缓冲区中的文件)。

退出文件

:quit可以退出当前文件。而:qall命令,则可以退出所有打开的文件。

如果文件已修改但没有保存,则会在窗口底部显示警告信息并禁止退出。可以使用以下命令,配置Vinm在此类情况下显示确认对话框:

:set confirm

set_confirm

如果想要放弃所做的修改并强行退出,可以使用:qall!命令。

使用命令:wqall组合,可以保存所有文件并退出。

Ver: 2.0 | YYQ<上一篇 | 目录 下一篇>

星期一, 八月 24, 2009

VIM学习笔记 参数(Arguments)

启动参数

在启动vim时,可以指定多个文件做为参数,例如以下操作系统命令将打开多个文件,并显示第一个文件:

vim file1.txt file2.txt file3.txt

参数(Arguments)和缓冲区(Buffer)是不同的概念。早在Vi之中,就存在参数概念;而缓冲区则是在Vim之中新引进的。参数列表中的所有文件名,都会同时存在于缓冲区列表之中;但并不是所有缓冲区列表中的文件名,也都会出现在参数列表之中。

例如在启动vim之后,我们使用以下命令打开并编辑文件4:

:e file4.txt

此时显示以下3个参数:

args_3

而缓冲区则为4个:

args_4

参数列表

命令:args可以列示打开的多个文件,并用中括号“[]”标识出正在编辑的文件名。

args

切换多个文件

可以使用:argument命令,直接切换到指定的文件。例如以下命令,将切换至列表中的第三个文件:

:argument 3

需要切换到下一个文件时,可以输入:next命令,如果你没有保存当前文件的修改,vim将给出提示信息,不允许切换到下一文件。输入:write:next命令,则可以保存并切换到第二个文件(此命令也可简写为:wnext)。

使用:next!命令,可以强制切换到第二个文件,但所做改动也将会丢失。使用:set autowrite命令打开自动保存功能,可以避免数据丢失的意外情况;而命令:set noautowrite则可以关闭自动保存功能。

如果想要回到上一个文件,可以使用:previous或是:Next命令。如果要保存当前文件并切换到前一文件,可以使用:wprevious或是:wNext命令。

使用快捷键ctrl+^可以快速切换到上一个文件,以实现在#(current filename)和 %(alternate filename)文件之间快速切换的目的。

使用:first:rewind命令,可以快速切换到第一个文件;而:last命令,则可以快速切换到最后一个文件。

命令小结
:next切换到下一文件
:wnext保存后切换到下一文件
:previous切换到上一文件
:Next
:wprevious保存后切换到上一文件
:wNext
:first切换到第一个文件
:last切换到最后一个文件
:set autowrite打开自动保存功能
:set noautowrite关闭自动保存功能
:args显示正在编辑的文件名
:argument [N]切换至第N号文件

Ver: 2.0 | YYQ<上一篇 | 目录 下一篇>

星期六, 八月 22, 2009

金融是艺术

金融就是将钱从一人传到另一人,直到钱不见了的艺术。

Finance is the art of passing currency from hand to hand until finally disappears.

--

沙诺夫

星期四, 八月 20, 2009

在Mac下压缩PDF

Preview

有些PDF文件会因为包含大量图片或随着不断编辑而变得越来越庞大,我们可以用Mac内置的预览(Preview)程序来帮这些臃肿的文件做个瘦身。

  1. 用Preview打开PDF文件;
  2. 选择“文件”菜单下的“存储为...”;
  3. 在“存储为...”对话框中的“Quartz滤镜”选项中,选择“Reduce File Size”;
  4. 保存文档。

Shrink_Using_Preview

Print

我们在初始生成PDF时,就可以缩减它的尺寸。

注意:在10.4 (Tiger)的打印对话框中默认存在“Compress PDF”选项,而在10.5 (Leopard)中却没有直接显示出来。因此,我们需要安装Compress PDF Workflow,以重新激活此功能。

  1. 在任意程序中,选择"Print"菜单;
  2. 在打印对话框中,点击"PDF"按钮,选择"Compress PDF";
  3. 保存文档。

Print_Compress

在10.4 (Tiger)下,还可以利用滤镜选项来压缩PDF文档:

  1. 在任意程序中,选择"Print"菜单;
  2. 在打印对话框中,点击"Copies & Pages"下拉列表,选择"ColorSync";
  3. 点击"Quartz Filter"下拉列表,选择"Reduce File Size";
  4. 保存文档。

Print_to_PDF_ReduceFileSize

警告:缩减文件尺寸,可能降低显示和打印质量,并可能丢失书签。

Tags: , , , ,

星期五, 八月 14, 2009

人类都在太空做了什么?

具体点说,我们花了近40年时间在近地轨道上“研究”失重下的不良反应和那深不见底的宇宙黑洞。我们用有史以来最美丽、最精密、不切实际得让人绝望的航天飞机完成了这些“研究”,再把这个唯美的庞然大物改造成“人货两用运输机”,往返于地面及“巨型玩具”--国际空间站,后者实际上乃冷战后国际主义者们心血来潮的产物,供不同国家的人体验在失重状态下合唱《世界多美妙》之用。

--查尔斯·克拉塔莫 Charles Krauthammer

星期三, 八月 12, 2009

VIM学习笔记 窗口(Window)

窗口(Window)用来查看缓冲区(Buffer)的内容。你可以用多个窗口查看同一个缓冲区,也可以用多个窗口查看不同的缓冲区。利用多窗口,我们就能够很方便地对比多个文件,在不同文件之间复制粘贴或者查看同一文件的不同部分。

Vim主窗口可以容纳多个分割的窗口。也可以创建多个标签页(tab-page),每个标签页也能容纳多个窗口。

在默认情况下,与Vi类似,Vim启动后只打开一个窗口。参数 "-o" 和 "-O" 可以让Vim为参数列表里的每一个文件打开一个窗口。参数 "-o" 水平分割窗口;参数 "-O" 垂直分割窗口。如果 "-o" 和 "-O" 都用了,那么最后一个参数决定分割的方向。例如,下面的例子打开三个水平分割的窗口。

vim -o file1 file2 file3

分割窗口

:split命令,会将当前窗口水平分为两个,并且在这两个窗口中同时显示当前文件。如果你在其中一个窗口进行编辑,那么另一个窗口也会同步显示出你所做的更改。

默认情况下,每一个窗口都是独立滚动的。所以在编辑很长文档的时候,我们可以在不同窗口显示同一文档的不同部分。例如:一个窗口显示目录,另一个窗口显示正文。我们也可以使用:set scrollbind命令,绑定不同的窗口同步滚动。

如果想要在两个窗口中编辑不同的两个文件。使用:split file命令,就可以在另一个窗口中打开文件file了。

相对应的:vsplit命令,用于垂直分割窗口。

命令:new可以直接水平打开一个新窗口,并对新文件进行编辑。

相对应的:vnew命令,用于垂直分割窗口并编辑新文件。

:sview是:split和:view两个命令的组合,它可以分隔出一个新窗口,并以只读方式打开指定的文件。

与窗口操作相关的命令,通常也有相对应的ctrl+W快捷键:

新建窗口命令
:new新建水平窗口并开始编辑新文件ctrl+Wn
:vnew新建垂直窗口并开始编辑新文件
:split新建水平窗口并显示当前文件ctrl+Ws
:vsplit新建垂直窗口并显示当前文件ctrl+Wv
:sview新建窗口并只读打开文件

Windows_Split

切换窗口

在gvim和vim中,使用命令:set mouse=a启用鼠标支持,就可以通过点击鼠标来进入不同的窗口。

你也可以使用以下ctrl+W快捷键在多个窗口中进行切换:

切换窗口命令
ctrl+Ww切换窗口
ctrl+Wj切换至下一窗口
ctrl+Wk切换至上一窗口
ctrl+Wh切换至左侧窗口
ctrl+Wl切换至右侧窗口
ctrl+Wt切换至顶部的窗口
ctrl+Wb切换至底部的窗口
ctrl+Wp切换至刚才所在的窗口

移动窗口

命令ctrl+Wx,可以将当前窗口与下一窗口进行位置对换。如果当前窗口在底部,则没有下一个窗口,这时命令将当前窗口与上一个窗口进行位置对换。

Wx

命令ctrl+Wr命令可以使得窗口向右或向下进行循环移动。这个命令可以带一个数字作为参数,指明向下循环移动所执行的次数。与其相类似的ctrl+WR命令,可以使得窗口向左或向上循环移动。

以上命令在调换窗口位置时,会维持现有的窗口尺寸和布局;而以下命令,则会同时改变窗口的位置、尺寸和布局:

移动窗口命令
维持
布局
ctrl+Wr向右或向下循环移动窗口
ctrl+WR向左或向上循环移动窗口
ctrl+Wx将当前窗口与下一窗口位置对换
改变
布局
ctrl+WK将当前窗口放到最顶端,并使用最大屏幕宽度
ctrl+WJ将当前窗口放到最底部,并使用最大屏幕宽度
ctrl+WH将当前窗口放到最左侧,并使用最大屏幕高度
ctrl+WL将当前窗口放到最右侧,并使用最大屏幕高度
ctrl+WT将当前窗口放到新的标签页

控制窗口尺寸

在输入:split命令时,可以加入参数来指定打开窗口的大小。例如命令:3 split file,将在一个大小为三行的新窗口中打开文件file。我们也可以将这个命令中的空格去掉,写成:3split file

使用ctrl+W+命令增大窗口高度,默认增量为1行;ctrl+W-命令减小窗口高度,默认值为1行。命令countCtrl+W_可以使得当前窗口变为count指定的高度;如果没有指定count,则将当前窗口变得尽可能最大。

使用:resize命令,可以精确控制窗口高度。例如::resize +3将增大窗口高度3行;:resize -3将减少窗口高度3行;:resize 3则将精确指定窗口高度为3行。

命令ctrl+W=可以将几个窗口的大小变为相等。

使用ctrl+W>命令增大窗口宽带,默认增量为1列;ctrl+W<命令减小窗口宽度,默认值为1列。命令countCtrl+W|可以使得当前窗口变为count指定的宽度;如果没有指定count,则将当前窗口变得尽可能最大。

使用:vertical resize命令,可以精确控制窗口宽度。例如::vertical resize +3将增大窗口宽度3列;:vertical resize -3将减少窗口宽度3列;:vertical resize 3则将精确指定窗口宽度为3列。

当然,你也可以用鼠标上下拖动状态行来改变窗口的高度。

控制窗口尺寸命令
:resize +n增大窗口高度ctrl+W+
:resize -n减小窗口高度ctrl+W-
:resize n最大化窗口高度Ctrl+W_
:vertical resize +n增大窗口宽度ctrl+W>
:vertical resize -n减小窗口宽度ctrl+W<
:vertical resize n最大化窗口宽度Ctrl+W|
ctrl+W=等分窗口

关闭窗口

可以使用以下命令来关闭窗口:

关闭窗口命令
:quit退出当前窗口ctrl+Wq
:close关闭当前窗口ctrl+Wc
:only关闭其它所有窗口Ctrl+Wo

帮助信息

使用:help CTRL-W命令,可以查看关于窗口操作的帮助信息。

Ver: 1.0<上一篇 | 目录 下一篇>

星期一, 八月 10, 2009

没什么大不了

一部高性能赛车能让你在5秒钟内从0加速到100公里/小时。你会感到在后背有巨大的推力。这么想,如果你的赛车这么持续加速8分钟,你就到太空了。

--查尔斯·西蒙尼 (第5位自费太空游客)

星期五, 八月 07, 2009

在Mac下拆分PDF

如果你需要将一个PDF文档拆分成几个文件,那么最简单的方法就是使用Mac内置的Preview程序。

首先,选择“编辑”菜单下的“删除选定的页面”,或者使用快捷键Command+Delete,删除页面;然后,将修改后的文件另存,就可以从原始文档中拆分出自己需要的部分。

Preview_Delete_Page

以上方法适用于抽取文档中的绝大多数页面。如果你只需要文档中的极个别页面,那么可以选择“显示”菜单下的“工具条”菜单项;在Preview的侧边工具条中,选择你想要导出页面的缩略图;然后用Command+C快捷键复制它们;再选择“文件”菜单下的“从夹纸板创建新文稿”菜单项,就可以获得一个仅包含你选中页面的新文件。

Split_Preview_Paste-2

利用免费软件PDFLab,可以选定文件中的某些页,然后生成一个新的文件。也就是说,可以将一个文件拆分成几个文件,每个文件中只包含奇数页、偶数页或指定的页面。

  1. 将PDF文件拖拽到PDFLab的主界面中;
  2. 取消选择指定页面;
  3. 点击“Create PDF”按钮,重建文件;

delete_page

利用Mac内置的Automator功能,你只需要依照下图鼠标拖拽,就可以制作自己的工作流--提取PDF文件中的奇数页、偶数页或全部页面。

Split_Automator

Tags: , , , ,

星期日, 八月 02, 2009

删除Mac的多语言资源

如果你不是一个语言学者的话,那么你的电脑上应该只需要两种语言:你的母语和英语。

免费软件iCleanLanguage,可以删除不需要的语言资源。只需要在“Clearning”页中,选择特定的应用程序或所有程序;然后在“Language List”页中,选择哪些语言将被移除;你还可以在“Exclude List”页中,选择某些程序不需要删除语言资源。最后回到Clearning页面,点击“Run”按钮,iCleanLanguage就将为你删除多语言文件,清理出可观的磁盘空间。

ICleanLanguage

iCleanLanguage运行之后,还会显示日志文件,告诉你有哪些文件被删除。如果你在Clearning页面中选择了“Dry run - no deletions”,那么将只是模拟运行,而不会真正删除文件。通过查看日志文件,你可以了解哪些文件将被删除?有多少空间将被释放?当你确认一切正常后,再让iCleanLanguage去做清理工作。这对于谨慎的用户来说,可以是一种更周全的考虑。

Monolingual是一个开源软件, 她可以删除Mac中不需要的多语言资源。你首先需要在列表中选择不需要的语言,然后点击“Remove”按钮,接着将弹出警告信息––“删除过程将无法恢复,除非你重新安装系统”,随后还要求你输入管理员的密码,最终你就会看到Monolingual在应用程序和系统资源中删除你选中的多余语言。这个过程是谨慎和安全的。

'Monolingual' von yyq123

可不要小瞧了这些多语言文件,它们可能已经占用了不少的磁盘空间。比如开源的媒体播放器Miro,就提供了多达63种语言,占用了22MB空间。即使对于Mac OS X标准安装进行整理,也可以释放超过100MB的磁盘。而我运行Monolingual后,竟然重获了1.3GB的空间,真是个不小的惊喜呀!

'Monolingual_Surprise' von yyq123

如果你不希望另外使用一个软件,那么Mac内置的Finder也可以轻松配置程序的多语言环境。在Finder里选中应用程序,然后从“文件”菜单中选择“显示简介”,在弹出窗口中的“语言”部分,可以取消选择不需要的语言或者干脆将那些语言文件“移去”。

比如,我蛮喜欢的开源浏览器Sunrise提供很多种语言支持,有中文,但是繁体的。我还是更愿意使用英文版。所以在简介窗口中取消选择除English外的所有语言,这样程序就只出现英文界面了。如果还希望省出点硬盘空间,那么选中不需要的语言,然后点击“移去...”按钮,就可以删除那些多余的文件了。

'GetInfo_RemoveLanguage' von yyq123

Youpi Optimizer是一个免费软件,她可以删除不需要的语言资源并释放其占用的磁盘空间。

好消息是,利用Youpi Optimizer下载)删除多语言资源是很安全的,并不会影响系统和程序的使用;坏消息是,Youpi Optimizer最近一次更新也是远在2006年3月。只能希望这个软件能够更活跃点了。

YoupiOptimizer

Tags: , , , , ,

星期日, 七月 26, 2009

在Mac下组合PDF

Automator

利用Mac内置的“Automator”功能,可以制作自己的工作流--将多个PDF文件组合成为一个新的PDF文件。这个看似复杂和困难的任务,只消几下鼠标拖拽就能轻松完成--这也是Apple化繁为简的神奇魅力所在。

CombinePDF_Automator_1

需用时,只要在Finder中选中几个文件,然后用鼠标右键调出弹出菜单,并选择Automator子菜单中你已经创建的“Combine PDFs”工作流。

CombinePDF_Automator_2

Preview

利用Mac内置的预览程序(Preview),也可以很方便地组合多个文件。首先,打开一个文件;然后,然后,将其它文件从Finder拖拽到Preview的工具条中(Sideba),并根据需要调整其次序;最后,选择“文件”菜单下的“存储为...”菜单项,将其保存为单独的一个文件。

Combine_Preview

Freeware

利用免费软件PDFLab,可以将多个图片、空白页和PDF文件,重新组合成一个新的PDF文件。还可以选择新生成的文件中,只包含奇数页、偶数页,或者指定范围的页面。

CombinePDF_PDFLab

Dashboard

如果你喜欢使用Dashboard(我不太喜欢),那么PDF+PDF可以将多个PDF文档合并生成一个PDF文档。

Web Service

免费网络服务loopApps,无需注册就可以帮助你,将多个来自本地或网络的图片或PDF文件,组合成一个新的PDF文档,以供你下载到本机或发布于网络。你可以调整页面的次序,如果你免费注册为用户,还可以为生成的文件,设置打开和编辑密码,选择是否允许选择和打印文档。

Combine_LOOPApps1

Tags: , , , , , , ,

星期五, 七月 24, 2009

VIM学习笔记 缓冲区 (Buffer)

缓冲区(Buffer)是一块内存区域,用于存储着正在编辑的文件。在保存缓冲区并退出时,内容也随之被写回原始文件。

增加缓冲区

在启动vi时,可以指定多个文件做为参数,例如vi file1 file2 file3,参数中的所有文件都会被载入缓冲区,但vi只会在窗口中显示第一个文件。你可以使用以下命令,为每一个缓冲区打开一个窗口。

:ball

使用:badd filename命令将新增一个缓冲区。指定的文件会被加载到缓冲区列表中,但是对这个文件的编辑过程只有切换到那个缓冲区时才会开始。在命令中,还可以指明为这个缓冲区打开窗口时,光标所处的位置:

:badd +linenum filename

列示缓冲区

:buffers:files:ls命令将会列出当前编辑中的(除“u”类型之外)缓冲区信息。在列表中,第一个数字是缓冲区的标号;第二个标记是缓冲区当前的状态;紧接着是与缓冲区所关联的文件名。

Buffers

缓冲区状态包含以下几种:

-Readonly buffer,禁用了modifiable选项,只读缓冲区
=Readonly buffer,只读缓冲区
aActive buffer,活动缓冲区,当前显示在屏幕上
hHidden buffer,隐藏缓冲区,已载入但没有显示在屏幕上
+Modified buffer,已经更改的缓冲区
xError buffer,读入时报错的缓冲区
%Current buffer,当前缓冲区
#Alternate buffeer,交换缓冲区
uUnlisted buffer,只有在列示命令中使用!修饰符才能显示的缓冲区

使用“!”修饰符的:buffers!:files!:ls!命令将会列出包括“u”类型在内的所有缓冲区信息。如下图所示,窗口中使用:help buffers命令查询帮助信息,而:buffers!命令则列示了其打开windows.txt文件的“u”类型缓冲区。

Buffers_u

选择缓冲区

可以使用number参数,选择指定标号的缓冲区:

:buffer number

也可以使用文件名来选择缓冲区:

:buffer filename

我们可以用:sbuffer number命令,来分割当前窗口开始编辑一个缓冲区。如果指明了数字,那么当前窗口就会显示数字所标记的缓冲区中的内容;如果没有指明数字,那么就会显示当前缓冲区的内容。当然,这个命令也可以用文件名来做为参数:

sbuffer filename

切换缓冲区

:bnext到下一个缓冲区;:bprevious:bNext到前一个缓冲区;:blast到最后一个缓冲区;:bfirst到第一个缓冲区。

根据默认设置,在切换到另一缓冲区之前,Vim将提示你保存当前缓冲区。你也可以使用:set hidden命令,允许在未保存的情况下切换缓冲区。

删除缓冲区

可以使用:bdelete filename:bdelete 3:3 bdelete命令来删除一个缓冲区。也可以使用:1,3 bdelete命令来删除指定范围的缓冲区。所删除缓冲区引用的文件名,也将会随之从缓冲区列表中删除。

如果缓冲区被改动过,那么该命令将失败。如果使用了!选项的:bdelete! filename命令,强制删除缓冲区,那么在缓冲区中的所有改动都会被放弃。

卸载缓冲区

命令:bunload会从内存中卸载一个缓冲区,所有为这个缓冲区打开的窗口也会关闭。但是这个文件名仍然会存在于缓冲区列表中。如果缓冲区被改动过,那么该命令将失败。你也可以使用!选项的:bunload!命令,强制卸载缓冲区,但所有的改动也将会丢失。

帮助信息

可以使用:help buffers命令,查看关于缓冲区的帮助信息。

命令小结
:badd增加缓冲区
:ls列示缓冲区状态
:files
:buffers
:buffer编辑指定缓冲区
:ball编辑所有缓冲区
:bnext到下一缓冲区
:bprevious到前一缓冲区
:blast到最后一个缓冲区
:bfirst到第一个缓冲区
:bmodified到修改过的缓冲区
:bdelete删除缓冲区
:bunload卸载缓冲区

Ver: 2.0 | YYQ<上一篇 | 目录 下一篇>

星期日, 七月 19, 2009

在Mac下创建PDF

在Mac下可以很方便快速地创建PDF文档,简单地说──只要能打印的内容,都能生成为PDF文档。

从打印创建

在打印对话框中,点击“Print”按钮,在下拉菜单中选择“Save as PDF”,就可以生成PDF文件。

Print_to_PDF

除了打印生成PDF之外,在这个对话框中你还可以压缩、加密或电邮PDF;甚至还可以将生成PDF直到保存到其它应用程序中(比如iPhoto);如果你不需要这些额外功能,也可以(选择“Edit Menu...”)将它们从菜单中移除。这种对功能和细节的追求,着实让人叹服。

Print_to_PDF_EditMenu

打印输出PDF时,在随后出现的保存对话中,可以为最终生成的PDF文档设置标题、作者和主题等属性;还可以针对打开文档、复制内容和打印文档等操作设定不同的密码,以保护信息安全。

Create_Print_to_PDF_SecurityOptions

从文档创建

在Mac下,利用NeoOfficeOpenOffice.org编辑文档,可以生成包括颜色、链接、表格、索引等完整信息PDF文件。

NeoOffice_ExportPDF

在General选项页中,可以选择导出整个文档,还是只导出文档的制定页面;选择是否导出书签。

NeoOffice_PDF_General_Opt

在Initial View选项页中,可以设置初始打开文档时显示的内容、放大比率,和页面布局。

NeoOffice_PDF_InitialView_Opt

在User Interface选项页中,可以设置初始打开文档时窗口的显示、工具栏的显示,和书签的显示。

NeoOffice_PDF_UseInterface_Opt

在Security选项页中,可以为PDF文档设置密码,设置打印效果,设置是否允许增删页面、选取内容等安全属性。

NeoOffice_PDF_Security_Opt

从以上选项可以确信––开源软件提供了丰富的PDF设置。这使我们不但可以发便地创建PDF文档,而且也可以创建强壮的PDF;而这些在专有的M$ Windows平台和专有的M$ Office软件下,都是需要购买额外软件才能够实现的。如果做为一个普通消费者,论述自由开放的哲学是乏味无聊的话,那么当你感受到实际好处时,是不是也会有所触动,有所改变呢?

从图片创建

先在Finder中选中一个或多个图片;然后用Preview打开这些文件;最后在打印对话框中将它们保存为PDF文档。

Preview_Image_to_PDF

如果你需要将某个目录中的所有图片生成一个PDF文档,那么你可以在按住Command+Option键的同时,将目录图标拖拽到Preview图标上,然后在工具条中选中所有图片,最后在“文件”菜单中选择“打印选定的图像...”,将其保存为PDF文件。

从网络创建

如果你使用Zoho WriterGoogle Docs等基于网络的文字处理工具,那么它们本身就提供生成PDF的功能。

如果你已经拥有现成文档,那么也可以利用PDF OnlinepdfMachine liveExpressPDFYou convert ItZamzar等网络服务,把MS Office、HTML、TXT和图片文件在线转换成PDF。

Create_GoogleDocs

从网页创建

如果你希望将网页保存为PDF文档,那么最快速的方法非开源浏览器Sunrise莫属。她有一个“Save Entire Page as PDF”功能,可以将整个网页保存为PDF文档,这个过程不会出现任何对话框,而是直接将文件存储在默认的(桌面)下载文件夹中。

Sunrise_ExportPDF

通过安装PDF Download扩展,可以在Firefox中,将当前网页转化为PDF文档保存到电脑,或者做为邮件附件发送到指定邮箱。该扩展需要利用pdf download网站的转换服务,所以必须联网使用,而Sunrise则是利用本地程序实现这一功能。

Create_Firefox_PdfDownload_SaveWebPage

网络服务HTML-PDF-ConverterPrimoOnline也可以将指定网页转化为PDF文档。

从帮助创建

Mac是以UNIX为核心的,所以她也内置完善的在线帮助系统––man。例如你可以通过man curl命令,显示下载工具curl的详细使用说明。而利用man -t curl | open -f -a Preview.app命令,可以将这些使用说明转换成PDF格式并在Preview程序中打开阅读。

免费软件man2PDF,将列出所有的manual page,你只要选择其中之一,然后点击“Make PDF...”按钮,就可以将指定的帮助信息转换为PDF格式

Create_man2PDF

总结

  • 用什么也别用M$ Windows。如果用户广泛需求的功能,其它软件内建支持的功能,而那个丑陋昂贵的操作系统都不能提供,为什么你还要继续使用它呢?
  • 用什么也别用M$ Office。如果免费的网络服务,自由的开源软件,都可以帮你免费实现,为什么你还要花钱购买一个不健全的软件呢?

Tags: , , , , , , , ,

星期六, 七月 11, 2009

在Mac下查看PDF

在Mac下阅读PDF的首选,当然是内置的预览(Preview)程序,它拥有足够的功能而且反应敏捷。

显示“抽屉”,可查看页面缩略图和书签,方便你浏览文档;隐藏“抽屉”,可使文档占据最大空间,让你集中精力于内容。Mac总是用最简单的方式为你提供最人性化的选择。

Preview

Skim是一个开源的PDF阅读软件,它提供了多种阅读模式。普通模式下,可以同时查看文档内容、书签和批注;全屏幕模式下,将隐去包括系统菜单和Dock在内的所有元素,而只显示文档内容,使你聚焦于当前文件;演示模式下,很适于做演讲和演示,还可以自动转换页面。

Skim_MainWindow

Skim的迷人之处,在于她对纸质阅读的精心模仿。“reading bar”可以显著标识某些区域,便于你专注于正在阅读的段落;“snapshot”可以在单独的窗口中显示某些区域,便于你同时兼顾文章中的不同段落。

Skim_ReadingBar_SnapShot

当然,最被广泛使用的Adobe Reader也有相应Mac版本可供选择。

如果在浏览网页时,点击了PDF文件的链接,那么除了傻呼呼地等着文件加载之外,几乎别无选择。幸亏有了PDF Download这个Firefox扩展。在点击PDF链接后,将显示一个弹出对话框,给你以下选择:

FirefoxExtesion_PDFDownload

  1. Download it:下载PDF文件
  2. Open PDF:用默认程序打开PDF文件
  3. View as HTML:转化为HTML阅读
  4. Bypass PDF Download:按照Firefox的默认方式处理PDF文件

这里所说的,Firefox的默认处理方式也是可以设置的。打开Firxfox的选项对话框,选择“应用”页,就可以设置如何处理PDF文件。当然这个设置是全局的,而不可能像PDF Download那样针对每个链接做出不同的反映。

Firefox3_Option_Applications

如果你希望直接在Firefox中查看PDF文档,那么可以安装firefox-mac-pdf扩展。在点击PDF链接后,将在当前窗口载入并显示PDF文件;鼠标移动到窗口底部,将自动显示工具栏,点击其中按钮可以缩放文档、用预览程序打开文档,或者保存文档。

FireFox_Extension_firefox-mac-pdf

你甚至还可以直接利用一些免费的网络服务查看PDF文档:

  1. Google docs
  2. Zoho Viewer
  3. PdfMeNot
  4. PDFescape
  5. Online viewer for PDF

GoogleDocs_ViewPDF

星期一, 七月 06, 2009

WHOLE & PARTS

The whole is more than the sum of the parts.
整体比部分相加之和的内容要多。

--Aristotle 亚里斯多德

星期六, 七月 04, 2009

人,一半是天使,一半是野兽

人,一半是天使,一半是野兽

--费尔巴哈

星期五, 七月 03, 2009

剪贴板管理 之 恍如昨日

如果说每一个体只能有一个伴侣是野蛮的限条,那么每一电脑只能有一个剪贴板就是遗憾的缺失。

PTHPasteboard是一个记录多重剪贴板的免费软件(拥有更强功能的PRO版本需要付费)。

PTHPasteboard会自动记录所有剪贴的内容,她不但可以记录纯文本,还可以记录带有格式的文本和文件。

你可以从菜单中选择复制过的条目,将其粘帖到当前位置;还可以查看条目的详细信息,比如复制来源、时间和字数,并且能够删除条目,或者将其加入其它剪贴板(Pasteboard)。

PTHPasteboard Menu

除了在菜单选择剪贴板内容,你还可以用窗口形式查看所有条目。在窗口列表中,可以查找和预览复制的内容,使用键盘上下移动,按回车键粘贴选中的条目。

PTHPasteboard window

如果你觉得鼠标选择不够快速,那么还可自定义快捷键来显示菜单或窗口。甚至指定快捷键直接粘贴某个条目。

PTHPasteboard HotKey

PTHPasteboard的强大之处,在于她可以保存多个剪贴板。

打开“系统偏好设置”,进入“PTHPasteboard”面板;点击左下角的“+”按钮新增剪贴板;在右侧定义如何显示该剪贴板条的目,是否在菜单中显示图标等选项。如果你选择显示图标,那么在屏幕顶端的菜单栏中就会增加你指定的图标,通过点击不同的图标,就可以选择不同剪贴板中的条目。

PTHPasteboard Pasteboards

现在你就可以将复制的内容移动到自定义的剪贴板中。比如将住宅地址、电话号码等联系信息保存其中,今后填写表格时就可以用选择粘贴来代替重复输入;如果你是一名程序员,也可以用她来存储常用的代码片段,在编写程序时以成段复制来减少键盘录入。

在剪贴板窗口中,点击左上角的编辑按钮,可以编辑条目内容;利用左下角的“+”,“-”按钮,可以增加或删除条目。也就是说,PTHPasteboard能够提供完全自定义的信息库––我们可以将任意常用的信息存储其中,当需要时即可以方便地选择粘贴––这绝对是个非常体贴的好帮手!

PTHPasteboard PasteboardEdit

将PTHPasteboard设置成“启动时运行”,她就会在后台自动记录所有复制操作,当我们需要重用某些内容时,点击菜单或按下快捷键就可以方便地取回。这不但提高了操作速度,而且也提供了额外的安全保障,即使你误删了某些文字,也可以从剪贴板历史中找回它们。

免费的PTHPasteboard已经提供了丰富的功能,而收费的PTHPasteboard PRO,还可以在电脑间同步剪贴板,可以利用Filter功能自动进行大小写转换等操作(更复杂的Filter功能,请查看演示录像)。不管是免费的PTHPasteboard,还是收费的PTHPasteboard Pro,都提供了实用、易用的剪贴板管理功能,值得您亲自尝试一番。

注:本文名称取自,乔志高先生的《恍如昨日

Tags: , , ,