我希望 emacs 在启动时能够真正最大化。
有一些解决方案可以解决这个问题,那就是让 emacs 窗口与屏幕宽度一致。但这对我来说还不够。我希望 emacs 窗口停靠在屏幕的右上角,这样当我用鼠标按下那里时,我就会关闭 emacs,而不是 Firefox 或 Krusader 或任何在后台最大化的程序。
我尝试用 Kwin 来做这件事 - 但没有成功。
PS 我正在使用 Kubuntu,并且 emacs 是相当新的 23.2 或类似的版本。
答案1
这是我前段时间从 emacswiki 上某个地方拿来的。请注意,我不再使用它了,因为我已经切换到 dwm 以使所有内容全屏显示,但它以前还可以用。
(defun fullscreen ()
(interactive)
(x-send-client-message nil 0 nil "_NET_WM_STATE" 32
'(2 "_NET_WM_STATE_FULLSCREEN" 0)))
如果你希望它在启动时运行,你应该可以添加
(fullscreen)
你的.emacs
编辑:重读你的问题,我认为这不是你想要的。这将真正全屏显示,而不是最大化:你将没有任何关闭按钮。
这个应该做:
(defun fullscreen (&optional f)
(interactive)
(x-send-client-message nil 0 nil "_NET_WM_STATE" 32
'(2 "_NET_WM_STATE_MAXIMIZED_VERT" 0))
(x-send-client-message nil 0 nil "_NET_WM_STATE" 32
'(2 "_NET_WM_STATE_MAXIMIZED_HORZ" 0)))
答案2
以下是两种非 Lisp 方式来实现相同目的:
将你的
emacs
命令别名为emacs -fs
。将这行代码添加到你的.bashrc
主目录中的文件中:alias emacs='emacs -fs'
就我个人而言,我不喜欢这种方法,因为我不想 Emacs 一直以全屏启动,并且希望获得一些控制。
我的解决方案:在 Ubuntu 中,您可以指定一个键盘快捷键来“全屏”任何窗口。这似乎是最方便和最简单的选择。此外,它的优点是相同的快捷方式也适用于您的所有应用程序。
答案3
放到(w32-send-sys-command ?\xf030)
你的文件上.emacs
。我认为它能解决你的问题。
(仅适用于 Windows)
答案4
我目前在 Windows 上使用 Emacs 版本 28.2,一个最小的解决方案是在 Emacs 配置中添加以下行~/.emacs.d/init.el
(在 unix 下不同)
(set-frame-parameter nil 'fullscreen 'fullboth)