2012-09-21 79 views
8

假设我是在Emacs(MX项)端子,我列出当前目录下面的文件:在Emacs的缓冲区打开一个文件,而在Emacs终端

text_code.R

现在我在bash -3.2 $(终端),并希望在另一个Emacs缓冲区中打开该.R文件,然后进行编辑。有没有办法做到这一点?这可能是一个微不足道的问题,因为我是Linux和Emacs的新手。提前致谢!

回答

7

请记住,在期限模式下,你可以键入C-C C-F打开文件(就像C-X C-F期限模式外)。提示符将已存在于当前目录中,因此您只需输入文件名并使用TAB自动完成。

+0

非常感谢!这是有效的,并且在bash模式下真的很方便:) – alittleboy

+0

但是,令人惊讶的是这是依赖于外壳的。这在'鱼壳'中不起作用 – nitishch

2

我不知道你想做什么官方的程序,但这里是一个可行的方法:

  1. 要么告诉emacs的作为守护程序(参考文献:EmacsAsDaemon)运行或在Emacs通过M-x server-start启动守护进程。

  2. 在术语中,像emacsclient -n filename这样的命令将开始编辑当前窗口中的指定文件。请注意,emacsclient还有一个-c, --create-frame选项可在新框架中进行编辑。您可能希望使用上述的-n选项,以便在从其他窗格或框架的缓冲区列表中选择它之后,您可以继续使用该术语。

  3. 如果您通过emacs中的M-x server-start启动守护进程,守护进程将在退出emacs时终止。如果通过上述参考进行设置,请使用kill-emacssave-buffers-kill-emacs命令或shell命令emacsclient -e '(kill-emacs)'停止它,如参考文献的第6部分中所述。

+0

谢谢您的意见!这似乎有点复杂..我希望看到的是一些在emacs中的键绑定,将完成这项工作。也许没有。无论如何,再次感谢! – alittleboy