如何检测emacs是否以"-Q"启动?

Rya*_*son 1 emacs startup command-line-arguments

我有一个Emacs软件包,在退出Emacs时需要保存一些状态,但如果运行Emacs,我不想保存该状态-Q.有没有办法区分Emacs运行-Q与否?

sds*_*sds 6

你可以测试command-line-args(参见lisp/startup.el更多信息):

(or (member "-Q" command-line-args)
    (member "-quick" command-line-args))
Run Code Online (Sandbox Code Playgroud)

您可能更喜欢"低级"方法:而不是检查特定的命令行参数,测试其效果.在你的情况下,像

(when init-file-user
  (save-my-state))
Run Code Online (Sandbox Code Playgroud)

(请注意,这也将禁用状态保存-q-no-init-file).