我想gs通过shell脚本定义一个简单的(ghostscript)调用缩写.第一个参数给出了应该合并的所有文件,最后一个给出了输出文件的名称.显然,以下内容不起作用(仅用于显示目标):
#!/bin/sh
gs -dBATCH -dNOPAUSE -q -sDEVICE=pdfwrite -sOUTPUTFILE=$last $1 $2 ...
Run Code Online (Sandbox Code Playgroud)
如何才能做到这一点?
通常会通过myscript infile1.pdf infile2.pdf ... outfile.pdf或调用此脚本myscript *.pdf outfile.pdf.
我在Mac OS X 10.7.2上使用GNU Emacs 23.3(9.0).我想使用synctex在.tex和.pdf文件之间跳转.虽然网络上有许多不同的方法,但没有一种方法正常工作(我尝试了8种不同的方法......).我终于得到了这里描述的相当简单的方法:http://sourceforge.net/apps/mediawiki/skim-app/index.php?title = TeX_and_PDF_Synchronization
所以我的.emacs包含:
'(LaTeX-command "latex -synctex=1")
(require 'tex-site)
(add-hook 'TeX-mode-hook
(lambda ()
(add-to-list 'TeX-output-view-style
'("^pdf$" "."
"/Applications/Skim.app/Contents/SharedSupport/displayline -b %n %o %b")))
)
(server-start)
Run Code Online (Sandbox Code Playgroud)
当然,我还设置了Skim(首选项 - >同步 - >选中"检查文件更改"并选择Preset:Emacs with command emacsclient and arguments --no-wait +%line"%file")
如您所见,我包含了-bdisplayline 的选项.我可以从终端调用displayline并打开.pdf并显示带黄色/高亮条的相应行.如果我使用latexmk -pvc -pdfEmacs.app中的shell 编译文档,当前行上仍然没有显示任何内容.
问题1:如何使其工作/如何显示当前行?
问题2:是否可以通过单击.tex并跳转到.pdf文档中的相应行来进行"正确"的前向搜索?如何在emacs中"点击"?标准CMD + shift + click在emacs中不起作用.
我也试过用...
(setq TeX-source-correlate-method 'synctex)
(add-hook 'LaTeX-mode-hook 'TeX-source-correlate-mode)
Run Code Online (Sandbox Code Playgroud)
......但没有任何改变.
我可以在.pdf中进行CMD + shift +点击并跳转到.tex,这样就行了.
我没有考虑过的唯一方向是:
这是一个latexmk问题吗?很可能不是,因为latexmk明确显示,pdflatex -interaction=nonstopmode -synctex=1所以识别synctex
这是一个错误的脱脂偏好设置吗?也许我必须调整emacsclient的参数(?)
解
确实,latexmk就是问题所在.我终于找到了以下设置: …
我尝试将0到255之间的数字转换为十六进制格式.如果我使用sprintf("%X", 1)我得到1,但我需要输出总是宽度为2(前导0)而不是1.如何才能做到这一点?
我想使用doxygen在Emacs中生成代码文档(函数).c或.cc文件.我发现doxymacs,但似乎不再维护(最新版本2007),如果我更改函数的一个参数的名称,我也没有找到更新函数文档的方法("不幸的是",我已经习惯了极大Roxygen的.R脚本,它可以做所有的好东西,一个函数之前的权利,即使插入文档时的点在什么地方功能).
我发现了这个,但似乎不是很有用.然而,有一个例子在这里如何使用yasnippets.有人写过doxygen标题的yasnippet吗?但是,如果函数名称更改,它将不会更新参数.在Emacs中使用doxygen有什么"更好"的方法吗?我认为有很多C/C++程序员可以使用Emacs,我猜想应该有一个很好的代码文档工具/方法.
更新
我也找到了这个.它完全基于yasnippet(尽管还没有尝试过).
我~/.emacs包含以下设置,用于打开某些应用程序的某些文件(Ubuntu 12.10; Emacs 24):
(setq dired-guess-shell-alist-user
'(("\\.pdf\\'" "okular ? &")
("\\.djvu\\'" "okular ? &")
("\\.mp3\\'" "vlc ? &")
("\\.mp4\\'" "vlc ? &")
))
Run Code Online (Sandbox Code Playgroud)
当我导航到.pdf dired-mode并点击时!,它会在Okular中打开.pdf,但是dired-buffer被分成两部分,第二部分现在是一个无用的*Async Shell Command*缓冲区,包含像
okular(25393)/kdecore (KConfigSkeleton) KCoreConfigSkeleton::writeConfig:
okular(25393)/kdecore (KConfigSkeleton) KCoreConfigSkeleton::writeConfig:
okular(25393)/kdecore (KConfigSkeleton) KCoreConfigSkeleton::writeConfig:
okular(25393)/kdecore (KConfigSkeleton) KCoreConfigSkeleton::writeConfig:
Run Code Online (Sandbox Code Playgroud)
如何防止打开此缓冲区?(除非,如果有错误,此信息有用).
我在这里和这里找到了相关的问题,但它们似乎处理异步执行的特定命令,而不是*Async Shell Command*一般的(如果可能的话,我想改变异步进程的一般行为,不仅仅是针对某些文件类型)
我在Mac OS X 10.7.3上使用Emacs 24.0.92(9.0).我下载并安装了EMMS git clone git://git.sv.gnu.org/emms.git,我的〜/ .emacs包含...
(add-to-list 'load-path "~/.emacs.d/emms/lisp")
(require 'emms-setup)
(emms-standard)
(emms-default-players)
Run Code Online (Sandbox Code Playgroud)
......如http://www.gnu.org/software/emms/quickstart.html所示
如果我使用M-x emms-play-directory并选择包含.mp3文件的目录,我会获得:
Don't know how to play track: (*track* (type . file) (name
. "/path/to/music/first song in this directory.mp3") (info-mtime 19612 57269)
(metadata))
Run Code Online (Sandbox Code Playgroud)
我没有安装mplayer,但安装了VLC并且工作得很好.我需要哪些其他设置才能使其正常工作?
请注意,播放器列表包含VLC(和其他 - 只是默认值).我也把它设置为只有 VLC,但这也给出了同样的错误.
另请注意,我在https://superuser.com/questions/179186/emms-emacs-multimedia-system-error-in-emacs-dont-know-how-to-play-track上发现了类似的错误, 但是"解决方案" "没有真正解释问题是什么.
我有以下代码.emacs:(global-set-key (kbd "M-x g") 'gnus)用键绑定启动Gnus M-x g.我获得:error: Key sequence M-x g starts with non-prefix key M-x.如何定义以#开头的键绑定M-x?这是一件坏事,应该避免吗?我觉得它更直观,因为"长版"是M-x gnus.C-c g例如定义它是没有问题的,但是然后你用C-c g和开始Gnus ,例如,R通过M-x R它不是非常直观(与通过两者开始相反)M-x + 1 letter
假设您从本地emacs shell(以...开头M-x shell)处理远程服务器.如果执行一个花费太长时间的进程(例如,ls在一个包含大量文件的目录中),您希望停止该进程(在终端中将使用control-c).我尝试C-c C-c但是杀了整个shell ...我怎么才能杀死远程服务器上的运行进程而不是整个shell?
更新
一步步:
1) M-x shell (execute on local machine)
2) ssh mylogin@myremotemachine.foo.bar (execute on local machine)
3) sleep 60 (execute on remote machine)
4) C-c C-c (execute in the current shell)
Run Code Online (Sandbox Code Playgroud)
=>而不是仍然在远程主机上,只是睡眠命令被杀死,整个远程连接关闭,你再次在本地机器上.
我怎么能够:
将图例文本从"0","1"更改为其他内容?
require(ggplot2)
ggplot(mtcars, aes(factor(cyl), mpg)) +
geom_boxplot(aes(fill=factor(vs), colour=c("grey50", "white")))
Run Code Online (Sandbox Code Playgroud)我想找到与结尾的所有文件.c,.R或.Rd.我试过了
find . -iname "*.[cR]" -print
Run Code Online (Sandbox Code Playgroud)
它给出所有以.c或结尾的文件.R.我怎么能另外获取.Rd文件?我知道[]只匹配一个字符,但我无法调整它以提供.Rd文件(尝试使用|或选项-regex等)