Articles of elisp

如何检查框架或terminal中的emacs?

基于这个问题: 如何将emacsclient背景设置为Emacs背景? 我只需要背景框架,而不是terminal,而不是控制台。 这是我想如何添加控制台的修复程序 (when (display-graphic-p) (tool-bar-mode -1) (scroll-bar-mode t) (require 'nyan-mode) (nyan-mode) (nyan-start-animation) (mouse-wheel-mode t) (setq default-frame-alist '((background-color . "#101416") (foreground-color . "#f6f3e8")) ) ) 但是,我没有得到emacsclient的背景(即使是帧)。 也许检查甚至不运行在emacsclient? 基本上我不想添加背景到emacsclient在terminal和控制台,但在框架中。

如何将emacsclient背景设置为Emacs背景?

我已经(在我的.emacs) (set-background-color "#101416") (set-foreground-color "#f6f3e8") 我有两个绑定: alias ex='emacsclient -nw' alias ec='emacsclient -c -a ""' 工作正常,打开terminal客户端,但是当我想打开它作为一个框架我有白色背景:( 为什么以及如何在那里使用我的黑暗背景?

在emacs中,如何执行外部命令而不是emacs进程?

对于一些外部程序(不是全部),我希望程序在执行完命令之后独立运行在Emacs之外。 换句话说,如果closuresEmacs,外部程序仍然可以运行。 PS:我的操作系统是windows。

process.exit(0):输出消失?

Emacs lisp命令调用node hello.js : (call-process "node" nil t nil "hello.js") hello.js两个变种: hello_1.js : console.log('Hello world!'); 输出: Hello world! 0 hello_2.js : console.log('Hello world!'); process.exit(5); 输出(日志语句不输出): 5 process.exit(5)导致输出被抑制的原因是什么? 笔记: 我遇到了MARVIN的2013-03-17的GNU Emacs 24.3.1(i386-mingw-nt5.1.2600)和在Windows XP / SP3 / 32上运行的Node.js v0.10.18的问题 。 我尝试了EShell执行节点命令行:没有输出 process.exit()调用低级别process.reallyExit() ,这会导致问题:没有输出 process.reallyExit()在C ++中实现: void Exit(const FunctionCallbackInfo<Value>& args) { HandleScope scope(node_isolate); exit(args[0]->IntegerValue()); } […] NODE_SET_METHOD(process, "reallyExit", […]

在emacs中创build别名?

我有一个emacs的副本,我在一个不同的(Windows)电脑从一个拇指驱动器上使用,我想知道是否有可能创build一些类似于emacs中的bash别名或符号链接的东西? 在find文件中我可以使用的东西是我正在寻找的主要东西,例如: Cf <some link>会带我到某个地方。 目前我每次到新电脑都要添加一个新的defun,这真是一种痛苦,我会发誓我已经看到了这个地方,但是几个月的谷歌search没有任何结果。 我现在所拥有的东西是这样的: (defun go-awesome () "Find my way to my work home" (interactive) (find-file "c:/cygwin/home/awesome")) 但是,这种感觉过分而且过分,只是为了访问一个相当古怪的文件而访问我经常访问的文件。 而且它需要很多努力来build立一个新的文件。 尽pipe如此,我认为最大的问题是它不适合我的工作stream程。 当我想访问一个文件,我总是做Cx Cf ,如果我意识到“嘿,我在工作”,那么我必须Cg Mx go-awesome 。 如果我说我想能够做一些相当于ln -s /some/awesome/dir但是内部的emacs,而不是内置在OS中的东西,那么可能会更加清楚,所以Cx Cf ~/awesome/some/sub/dir可以在Windows或其他地方工作。

在emacs中使用默认的Windows应用程序打开文件

我试图在Windows XP上调整emacs中的dired-find-file函数,以便当我从dired打开(说)一个pdf文件时,它启动一个Acrobat Reader的副本,并打开该文件,而不是打开它在emacs内。 但是我无法弄清楚shell-command/call-process使用什么变体。 以下是我到目前为止: (defadvice dired-find-file (around dired-find-file-external (filename &optional wildcards)) "Open non-text files with an appropriate external program." (if (string= ".pdf" (substring filename (- (length filename) 4))) ; obviously I'll replace this with something more general/robust (shell-command filename) ;; what should go here? (ad-do-it))) (ad-activate 'dired-find-file) 我知道我可以硬编码,通过给它的.exe文件的位置来启动Acrobat Reader。 但我宁愿有一些东西需要更less的search,当默认应用程序移动/更改时不会中断。 我应该使用什么?