示例:emacsclient --socket-name ~/.emacs.d/server/server -eval "(message "argsFromCommandLine")"
如果我执行上面的命令,emacsclient将打印ok
,然后退出。我想eval一个lisp表达式后,emacsclient启动,但与新的emacsclient窗口打开。
实际上,我想用外部工具从Intellij执行这个命令。emacsclient --socket-name ~/.emacs.d/server/server -eval "(magit-status "/Users/louxiu/projects/magit-test-project")"
,从一个magit-test-project的源文件跳转到它在emacsclient中的magit-status-mode。
谢谢
将-c/--create-frame
传递给emacsclient
应该可以达到目的。
如果我运行emacsclient -c --eval "(magit-status "/path/to/project")"
,我最终会在magit-status
缓冲区中为预期的项目创建一个新的emacs帧。