我正在为我的python和bash脚本切换到GNU emacs。我真的很喜欢这个,但我不喜欢emacs的X窗口部分。因此,我总是使用emacs -nw <my_file>
来编辑我的文件。但是,当我将.py和.sh文件与emacs关联时,当我从gnome-nautilus(Ubuntu 10.10)双击它们时,我最终以X-window模式打开emacs。
我想知道的是:当我双击我的文件时,为了使用没有X-window的emacs,我应该添加到我的.emacs文件中?注意:我确实希望emacs打开一个终端,可能会根据我的规范调整它(已经有一个.sh脚本),启动自己并打开我的文件。
我应该如何做到这一点?
干杯!
编辑:感谢您的所有答案!我必须给最完整的支票,虽然它当然是建立在前面的支票上。
答案 0 :(得分:3)
Johan解释了如果要为每个文件启动单独的Emacs进程该怎么做。
但通常情况下,您希望运行单个Emacs进程并安排在已经运行的Emacs进程中的新缓冲区中打开文件。
执行此操作的方法是在首次启动Emacs时启动Emacs server(例如,通过运行server-start
命令,或将(server-start)
放入.emacs
{{1}}并安排Gnome运行emacsclient
program。
答案 1 :(得分:3)
以Gareth的回答为基础:
要在现有emacs会话中打开文件(如果正在运行),但在终端中打开一个新文件(如果没有),则可以执行以下操作:
(server-start)
添加到您的.emacs
使用以下内容创建脚本run_emacs
:
#!/bin/bash
gnome-terminal -e "emacs -nw $@"
并使其可执行。
将您的应用程序设置为打开python和bash文件为emacsclient -a /path/to/run_emacs %F
(如果您将run_emacs
放在$PATH
的某个位置,则可以忽略/path/to/
位)。
答案 2 :(得分:1)
如果您使用gnome,则需要从
更改emacs快捷方式的命令行选项/ usr / bin / emacs%F
到
gnome-terminal -e“/ usr / bin / emacs -nw%F”
可以通过右键单击“应用程序”菜单,选择“编辑菜单”来完成此操作。