存档

文章标签 ‘LaTeX’

LaTeX论文合作修改的简单解决方案

2011年10月20日 没有评论

LaTeX文档,还没有像Office类软件一样的修改功能,可以自动跟踪不同作者所做的修改。在有多个作者共同修改和合作过程中,还是存在不少障碍的。最近需要和以前的同事合作修改文章,由于都不在一个地点,只能互相电邮来修改文稿。于是搞出了一个“土法”解决类似的问题。

解决方案很简单,就是利用两个包裹,color和ulem。在文档前做如下定义(用户定义的命令 \newcommand):

\usepackage[usenames,dvipsnames]{color}
\usepackage{ulem}

%This is the line added by Marc for his comments
%Additions made by YG
\newcommand{\YG}[1]{{\bf{\color{blue}{#1}}}}
%Cancellations made by YG
\newcommand{\YGc}[1]{{\bf{\color{blue}{\sout{#1}}}}}
%Comments made by YG
\newcommand{\YGCom}[1]{{\texttt{\itshape \color{blue}{(Comment: #1)}}}}

不同作者,可以定义不同的文字样式。在修改时,可以使用

加入文字:\YG{text}
删除文字:\YGc{text}
加入评论:\YGCom{text}

实际效果如下图:

虽然尚没有Office的功能,可以用鼠标做简单的动作,例如接受所有的修改之类。但是这个方案基本解决了现有的需求,所谓够用就行。

----------------------

分类: LaTeX/论文 标签: , ,

Mendeley 文献管理

2011年6月29日 3 条评论

Mendeley这个桌面文献系统,不算是很新的东西。但是我从开始用到现在,才一个月时间,越用越顺手。反正个人感觉对于研究人员而言,是“居家旅行、杀人灭口必备良药”。

这个桌面应用,对于LaTeX /Word /OpenOffice 都没有问题,兼容多种操作系统,包括iOS/Andriod系统,还有网络同步和社区功能。同步可以和Dropbox衔接,有多种文献导入方式和文件夹监测更新。这里从个人角度谈谈几个优点。

PDF信息提取
这是第一个让我惊讶的功能,也就是从开始用就再也不想别的软件的原因。做一个简单的拖拽功能,把PDF文档导入Mendeley的桌面应用,软件就可以在文档中抓取索引信息,例如题目,作者,期刊名称,页码等等。据我所知,类似EndNote之类收费软件并没有这个功能。对于新的文档,准确率还是不低的。另外,Mendeley还会自动在背景更新更正信息,比对搜索在Google Scholar以及在Mendeley已有的数据库的信息。

当然很多时候,对于比较老的文档,或者不是特别标准的论文格式,可能会有不少错误。在这种情况下,Mendeley会做一个“need reviewing”的标记,就需要手动更新,或者输入正确的文档题目,可以选择自动进行Google Scholar的搜索。

多种文献录入方式
上面提到的PDF录入,不仅可以在数据库中添加文档信息,还自动加入里对于源文件的链接,方便查询和阅读。个人感觉PDF录入是最有效的方式,而且可以批量录入。虽然经常需要手动补全和修改信息,但只是做一次就可以了。其它的文献录入方式有:1)到Mendeley网站,寻找文档,添加到自己的帐号里。通过同步就可以在本地的数据库中找到;2)通过修改BibTeX的文件,同步数据库。我用的是JabRef,非常方便;3)还有就是石器时代的方法,手动录入。

文献阅读和标记
在Linux下,找不到特别合适的PDF标注软件。Mendeley自带一个阅读器,整合在桌面软件内,有简单的标注功能。主要的好处还在于可以通过同步在不同的计算机之间看到标注和笔记。另外添加自定义的分类和Tags,可以方便文献索引。

文件夹监测和同步
这个功能太强大了。一般我都把文件放在特定文件夹内,然后随时更新。之前用JabRef,录入信息以后,还需要手动定位PDF文档。Mendeley检测文件夹,每次添加新的文档都会进行新文档的识别,自动添加文档信息和链接。也就是说,每次阅读新文献,都只需要复制到这个文件到文件夹内部,就可以在Mendeley数据库里找到,进行阅读、标记、分类,而不用担心还需要手动做文献信息处理的工作了。

Mendeley自带网络云存储的功能,通过不同地点的桌面应用或者直接网络访问,就可以获取自己数据库中的文献。另外还具有和Dropbox协同工作的能力。Dropbox整合同步的一个好处就是:文档地址往往是绝对路径,换到另外一台计算机,可能就无法直接带开文档了。用Dropbox以后,就可以不再关注文档路径的问题了。

LaTeX/OpenOffice 兼容性
用LaTeX的话,实在是太方便了。复制索引的Key(软件自动生成,作者+年份),放到文档里就可以。原始数据库可以通过Tool-Options-BibTeX设置,完成以后就有自动同步更新的效果。另外那个同步出来的是个bib文档,可以直接用JabRef管理。对于OpenOffice也是有支持的插件的。其实,就算是使用Office也是可以通过Mendeley管理的,因为复制文献信息,就可以生成相应的索引条目。远比手动管理有效率多了,只不过我没有用过而已。

社区功能
Mendeley的网站上,可以做以下的几件事情:1)生成自己的Profile,添加论文列表。当然Mendeley会由于版权问题确认你是这篇文章的作者。2)可以看到你在看的文献,读者群的基本信息。例如地理位置,专业背景等。3)还可以在研究小组里共享和讨论文献。

缺点
1)PDF文献识别的问题。
2)免费空间1G(包括500M个人存储),似乎有些小,而升级到7G的费用又有些高(5US$每月)。当然如果是研究经费出钱,就没有什么问题了。

===============

分类: LaTeX/论文 标签: , , ,

LaTeX 文档的实时编译,以及Dropbox同步

2011年1月17日 1 条评论

无论是用什么LaTeX文档编辑器,WinEdt,Kile,Vim等等,都是需要一个简单的编译动作,或者鼠标,或者快捷键。最后才可以在阅读器中看到最新的版本。

设想一下,现在如果可以在编辑和修改并且保存以后,直接看到输出文档的变化,其实也是一种所见即所得(WYSIWYG)的方式。另外一个扩展的应用,就是借用云存储的方式,可以在任何地方修改文档,例如用iPad,iPhone等移动设备。

假设现在的情况是,有一台安装Ubuntu和LaTeX的机器,例如办公室的计算机A。工作的LaTeX文档目录通过Dropbox在若干机器之间共享,包括一台移动设备M。具体的实现方式如下:

(一)在计算机A上,需要安装一个latexmk的包,在Ubuntu源里就有

sudo apt-get install latexmk

(二)在计算机A上,开一个终端,输入如下命令:

latexmk -pdf -pvc paper

paper.tex 就是那个需要修改的文件。可以看见终端里显示:

=== Watching for updated files. Use ctrl/C to stop ...

这个latexmk脚本在监视文件的更改,一旦有新的版本,就会自动编译出新的PDF文档。现在,用Vim等编辑器直接修改paper.tex文档,就可以实时得到新的编译输出结果。如果有两个显示器,效果就更好了。

(三)和Dropbox整合,其实这已经自动完成了。效果就是,在任何地方(例如移动设备M)修改 paper.tex,都可以同步到计算机A的目录,然后在计算机A上的latexmk脚本编译文档,产生新的PDF文档,通过Dropbox同步到移动设备M。在设备M上,用阅读器打开这个PDF文档,就是编辑好的文档。

另外一个方法就是,打开Dropbox网页上的文档,修改传回Dropbox,最后计算机A就可以完成远程的同步和编译过程。这个方式适用于在外地出差,而没有安装好合适软件(例如LaTeX)的计算机。

PS,之前,曾经有个关于在线LaTeX文档编译的想法,看来实现起来也是很容易的。就是把计算机A的那个工作目录,作为服务器的一部分就可以了。

分类: LaTeX/论文 标签: , ,

LaTeX/Beamer里的动画

2010年8月31日 2 条评论

今天算是弄通了Beamer里面的动画。之前,动画是我唯一让我留在MS PPT的理由,做模拟做实验,都是动画演示比较直观。Office的公式很差,而且换台计算机,可能还无法显示。还好有TeXPoint插件,利用LaTeX编译出来的公式图形来替代原生的Office公式输出。而Beamer输出的PDF文档,对于动画的支持一直不是那么好。于是还是暂时忍受PowerPoint做讲稿了。

最近,由于国际大搬家,换了一个地方以后,单位购买的Office版本从2003换到了2007,结果问题来了,以前一些讲稿,现在拿新版的Office一开,有不少地方需要调节。有一些由于版本的问题,不能在Wine里面的Office打开,还要到Windows原生的Office里转换格式,才能在Linux里面用。

想想以后不想如此折腾了,毕竟已经完全转到Linux,而且这个系统对于工作又不可或缺。于是查了几种方法来在PDF里加动画,找到了一个很满意解决方案。实际就是用一个animate包(英文说明,作者Alexander Grahn),然后用下面代码就可以实现:

\usepackage{animate}
...
\animategraphics[<options>]{<frame rate>}{<file basename>}{<first>}{<last>}

这个动画是由一个系列的图形文件构成的,自己定义动画的帧速<frame rate>,图形文件的目录和名称<file basename>,以及开始和结束的文件名称<first>、<last>。对于系列的图形文件,很多软件都有直接输出文件的命令。例如,下面的Mathematica输出命令就可以自动输出一系列的图片(文件名A1.jpg到A100.jpg):

Table[{image = "A" <> ToString[i] <> ".jpg";
Export[image, Show[G[i][[1]]]];}, {i, 1, 100}];

这里“G[i]”是一个带函数的图形输出命令。如果文件存在Figures目录下面,那么Beamer里调用下面命令就可以了。

\animategraphics[controls, buttonsize=3mm, height=0.3\textheight]{5}{Figures/A}{1}{100}

实际的例子可以看这里:slides.pdf

如果动画是GIF、AVI格式之类的,也是有很多方法转换成系列图形的,例如ImageMagick,直接在命令行就可以完成转换。输出的带有动画的PDF文档,不再需要保存动画和图形文件,每次拷贝只需要一个文件就足够了。另外PDF的好处就是跨平台,在什么地方都可以看到一样的结果。

现在,用LaTeX/Beamer做讲稿的唯一问题已经解决。虽然做出来比较复杂的讲稿需要很多的时间,但是简单的东西,够用就可以了。另外,讲稿的目的,其实就是为了演讲者自己讲得清除,讲稿过于华丽倒是有反作用的。

PS,想到以后如果用PDF文档投文章,是不是可以直接插入动画了。如果从网上下载PDF,那么本地就可以直接看动画了。

转换LaTeX文档

2009年8月26日 14 条评论

9月份日本会议的文章。之前看见会议网页上只有接受WORD格式的论文说明,于是写信问组委会能否提交LaTeX格式的。提到我们实在无法接受M$的公式显示,太难看,看见了就恶心得写不了下文。组委会回信说,可以提交LaTeX 源文件和编译好的PDF文件。按照要求提交完毕以后,以为就此结束了。结果发现最近连被编辑发信催着改格式,说不用M$ WORD主编就不能操作,跟打兴奋剂似的。原先对日本人就没有什么好印象,不过感觉至少不会这样出尔反尔。

既然被强烈要求换成M$ WORD格式,那就硬着头皮用GrindEQ转换一次吧。转换以后发现,还要手动修改参考文献列表和编号,重新安排图片格式。这些都算了,花点时间折腾折腾就好。最受不了的是,M$ WORD排出来的公式真难看,无法接受这样的丑陋。已经用了不那么难看的MathType了,WORD原生的公式编辑器,简直就是噩梦。算了,以后投文章,找用LaTeX排版的杂志吧。不然自己都不会看第二遍。

下面是两个版本的区别,猜猜哪个是M$出的吧。

WORD

 LaTeX

差别在于细节:看那个积分号,看那些希腊字母,那些间距的处理……M$ WORD的公式编辑器更难看,借用MathType以后还是如此“豪迈”,堪比毛博士的书法。唉~~

PS:其实之前也遇到一次类似的情况,都在亚洲。

PPS:厌恶WORD还有一点,就是版本之间的兼容问题,和别人合作,虽然WORD可以比较好的修改。但几个人版本不一样就完了。我笔记本上装的WORD 2003,一个合作者用WORD 2007,发个我的版本(.docx),我只能用我的OpenOffice打开。这个世界变化快,不如WORD升级快。简直就是笑话。

分类: LaTeX/论文 标签: , , ,