У меня есть несколько сценариев, которые будут запускать все приложения и файлы, связанные с конкретным проектом. Но он запускает несколько экземпляров Emacs, а не просто заставляет текущие Emacs открывать запрошенные файлы. Я бы предпочел, чтобы текущие emacs просто открывали текстовые файлы проекта в новом буфере.
Есть идеи, как я могу это сделать?
Ответы:
M-x server-start
внутри сеанса Emacs, затем используйтеemacsclient -n file1 file2 ...
для добавления файлов в существующий Emacs. Есть дополнительные опции, которые вы можете использовать, например,-c
чтобы открыть файлы в новом окне (фрейме).источник
(server-start)
в файл .emacs, а не запускать сервер вручную. Я использую,(and window-system (server-start))
чтобы избежать запуска сервера, если я запускаю emacs в терминале.-t
вариант.Положите
(server-start)
в свой.emacs
файл.Добавьте это к
~/.bashrc
затем используйте в
myedit
качестве редактора. Вам нужно будет использовать-c
опцию, чтобы открыть окно.Так что вы можете сделать это:
или
источник
alias foo='echo bar $*'
расширяется вset quux; foo baz
. Если вы хотите использовать позиционные параметры, попробуйте это как функцию оболочки:myedit() { emacsclient … "$@"; }