emacs启动之后自动执行某个命令


#1

具体问题是这样的,我想在emacs启动之后自动旋转屏幕,使用 xrandr -o right 这个命令,请问各位该如何实现?


#2

c-h f shell-comnand


#3

您的意思是说emacs启动完成之后再手动执行这个函数吗?我没理解,我的意思是在emacs启动过程中就自动旋转屏幕,不需要人为输入,就是能不能用一个elisp来实现这个功能,感谢您的答复


#4

使用 elisp 执行某个命令

(shell-command "xrandr -o right")

;;; 启动 emacs 时执行
(add-hook 'after-init-hook #'(lambda ()
			       (shell-command "xrandr -o right")))

;;; 关闭 emacs 时执行
(add-hook 'kill-emacs-hook #'(lambda ()
			       (shell-command "xrandr -o normal")))

#5

执行 Shell 命令可用 2、4 楼提到的 shell-command。这是个 Emacs 命令,既可以手动执行,也可以从 Lisp 中自动执行,4 楼有个例子。

「emacs启动之后」直接放自己 Emacs 配置的结尾行不行?还可以试试 4 楼提到的 after-init-hook


#6

谢谢各位,已经解决了,感谢