我希望emacs在启动时能真正发挥最大作用。
有一些解决方案,仅使emacs窗口的宽度变为屏幕宽度即可。这对我来说还不够。我希望emacs窗口停靠在屏幕的右上角,以便当我用鼠标按下该窗口时,我将关闭emacs,而不是Firefox或Krusader或在后台最大化的东西。
我试图和Kwin一起做-但是没有运气。
PS我正在使用Kubuntu,而emacs则是23.2或类似版本。
~/.fluxbox/apps
文件为特定应用程序设置最大化的首选项。
我希望emacs在启动时能真正发挥最大作用。
有一些解决方案,仅使emacs窗口的宽度变为屏幕宽度即可。这对我来说还不够。我希望emacs窗口停靠在屏幕的右上角,以便当我用鼠标按下该窗口时,我将关闭emacs,而不是Firefox或Krusader或在后台最大化的东西。
我试图和Kwin一起做-但是没有运气。
PS我正在使用Kubuntu,而emacs则是23.2或类似版本。
~/.fluxbox/apps
文件为特定应用程序设置最大化的首选项。
Answers:
前一段时间,我从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)))
这是两种实现相同目的的非Lisp方法:
将您的emacs
命令别名为emacs -fs
。将以下代码行添加到.bashrc
主目录中的文件中:
alias emacs='emacs -fs'
就我个人而言,我不喜欢这种方法,因为我不希望Emacs一直在全屏模式下启动,并且希望进行一些控制。
我的解决方案:在Ubuntu中,您可以将键盘快捷方式分配给“全屏”任何窗口。这似乎是最方便,最简单的选择。此外,它的优点是相同的快捷方式也适用于所有应用程序。
-mm
(的简称--maximized
),它将“最大化第一帧”。使用此选项的效果比该-fs
选项的“戏剧性”少一些(Emacs标题栏和OS面板保持可见)。
如果您想使用F11键在emacs中切换全屏显示,请在.emacs中添加以下内容:
;; the following should give fullscreen mode when F11 is depressed
(defun fullscreen ()
(interactive)
(set-frame-parameter nil 'fullscreen
(if (frame-parameter nil 'fullscreen) nil 'fullboth))
如果您希望全屏emacs很小(没有工具栏,滚动条或菜单栏,请添加:
(progn
(if (fboundp 'tool-bar-mode) (tool-bar-mode -1)) ;; no toolbar
(menu-bar-mode -1) ;;no menubar
(scroll-bar-mode -1) ;; no scroll bar
)
)
我在Linux上使用以下命令:
(defun my-frame-toggle ()
"Maximize/Restore Emacs frame using 'wmctrl'."
(interactive)
(shell-command "wmctrl -r :ACTIVE: -btoggle,maximized_vert,maximized_horz"))
然后将其绑定到密钥:
(global-set-key [(control f4)] 'my-frame-toggle)
如果要开始最大化,您只需将调用添加到my-frame-toggle
.emacs文件的末尾。