我已經開始在30英寸顯示器上編碼,並且想知道是否可以將小緩衝區移動到emacs屏幕的頂部?谷歌搜索沒有顯示任何東西。是否可以將emacs minibuffer移動到屏幕的頂部?
乾杯 Nimai Etheridge的
我已經開始在30英寸顯示器上編碼,並且想知道是否可以將小緩衝區移動到emacs屏幕的頂部?谷歌搜索沒有顯示任何東西。是否可以將emacs minibuffer移動到屏幕的頂部?
乾杯 Nimai Etheridge的
查看default-minibuffer-frame
和initial-frame-alist
變量的文檔。這聽起來像你可能能夠爲你的小型緩衝器(你可以放置在屏幕的頂部)有一個單獨的框架,然後生成利用它的小型無緩衝幀。
注意,在initial-frame-alist
它指出,「如果值呼籲沒有小緩衝區的框架,而你還沒有在自己創建的小緩衝區幀,迷你緩衝區畫面是根據minibuffer-frame-alist
創造」,這聽起來像什麼將需要。
有一些保存和恢復框架配置的方法,所以如果這樣工作,您可以在emacs啓動時自動重新創建佈局。
編輯:
以下使用此框架排列的基本示例/驗證概念。在使用它的幀被刪除之前,微型緩衝幀不能被刪除。當你做最大化編輯器框架等事情時,你會遇到麻煩,當然,因此嘗試使這個系統以更無縫的方式工作肯定會有一些工作要做。
(setq default-minibuffer-frame
(make-frame
'((name . "minibuffer")
(width . 80)
(height . 1)
(minibuffer . only)
(top . 0)
(left . 0)
)))
(setq new-frame
(make-frame
'((name . "editor")
(width . 80)
(height . 30)
(minibuffer . nil)
(top . 50)
(left . 0)
)))
當然,您也可以將此與scottfrazer將模式線移動到頂端的方法結合使用。
這可能可以在window-setup-hook
?
你還應該看看內置的frame.el和dframe.el庫。像dframe-reposition-frame
這樣的函數可以提供一種方便的方式,將小緩衝區框架「附加」到活動編輯框的頂部。
變量minibuffer-auto-raise
也可以配置爲每當激活小型緩衝器時提高小型緩衝器幀,這可以減輕在其餘時間使其可見的需要。
歡呼的隊友,今晚我會研究它,讓我知道如果我找到有用的東西 – nimms 2010-08-10 01:49:15
我敢肯定你不能移動迷你緩衝區本身,而是你可以排序的-ISH-使模線在最前面:
(setq-default header-line-format mode-line-format) ; Copy mode-line
(setq-default mode-line-format nil) ; Remove mode-line
這將覆蓋諸如使用標題行的Info之類的東西,但它可能與在不破壞C源代碼的情況下獲得的近似。
使用獨立的小型緩衝幀。這顯示瞭如何:
http://www.emacswiki.org/emacs/Dedicated_Minibuffer_Frame
http://www.emacswiki.org/emacs/oneonone.el
要不是看在代碼進行了解,或直接使用它。你只需要定製的迷你緩衝區幀位置設置:
1on1-minibuffer-frame-left
- 位置小緩衝區幀的左邊緣,以像素爲單位。
1on1-minibuffer-frame-top/bottom
- 小幀緩衝幀的頂部(或底部)位置,以像素爲單位。
有趣。我不確定我是否會使用它(迷你緩衝器已經在我的窗戶底部超過20年了...),但非常有趣的想法。 – dmckee 2010-06-16 00:35:46