我有emacs水平分割 - 顶部我正在编辑Perl代码,底部是shell。默认情况下,emacs使这两个窗口的大小相等,但我希望shell缓冲区更小(可能是其大小的一半)。我想知道我该怎么做。如何更改拆分屏幕emacs窗口的大小?
回答
使用鼠标,您可以拖动窗口大小。
单击模式行上任何不是“活动”的位置(缓冲区名称是安全的,或者右侧有任何未使用的区域),然后向上或向下拖动。
左右拖动需要非常精确地点击两条模式线加入的地点。
C-X -(shrink-window-if-larger-than-buffer
)将收缩一个窗口,以适应其内容。
C-X +(balance-windows
)将使窗口相同的高度和宽度。
C-X ^(enlarge-window
)由1条线,或前缀ARG值增加的高度。负面的arg缩小了窗口。例如C-- C-1 C-6 CX ^收缩了16行,如同铜 - CX ^。
(没有缺省为shrink-window
结合。)
C-X }(enlarge-window-horizontally
)做同样的,水平。
C-x {(shrink-window-horizontally
)也被默认绑定。
在与repeat
这些命令之一(C-X ž启动,只是ž为持续重复)使得它非常容易得到你想要的确切大小。
如果您经常想用一个特定的值要做到这一点,你可以记录键盘宏来做到这一点,或使用类似
(global-set-key (kbd "C-c v") (kbd "C-u - 1 6 C-x ^"))
或者这样:
(global-set-key (kbd "C-c v") (kbd "C-x o C-x 2 C-x 0 C-u - 1 C-x o"))
这是一个点点哈克,所以这将是更好的:
(defun halve-other-window-height()
"Expand current window to use half of the other window's lines."
(interactive)
(enlarge-window (/ (window-height (next-window)) 2)))
(global-set-key (kbd "C-c v") 'halve-other-window-height)
切圆,我也很喜欢winner-mode
,它允许你重复“撤消”对窗口配置的任何改变。C-c left(无论改变是窗口的尺寸/数量/排列还是只显示哪个缓冲区)。 C-c right返回到最近的配置。与(winner-mode 1)
C-x o
添加到您想扩展的窗口。从那里,C-x ^
扩大它。
如果绑定不同(我的),命令是“放大窗口”。另一个提示是使用前缀arg来控制扩展的数量。 – 2011-02-14 01:17:46
太棒了!非常感谢你! – Steve 2011-02-17 06:05:17
我把这些在我.emacs
全局设置:
(global-set-key (kbd "<C-up>") 'shrink-window)
(global-set-key (kbd "<C-down>") 'enlarge-window)
(global-set-key (kbd "<C-left>") 'shrink-window-horizontally)
(global-set-key (kbd "<C-right>") 'enlarge-window-horizontally)
在Mac OSX 10.9的Emacs 24.3.1中,前两个不适用于我。1 – 2014-01-14 15:55:09
C-x ^
采取积极和负的数字参数。特别是,如果您想缩小当前光标所在的窗口四行,可以按C-u -4 C-x ^
。
我得到了同样的问题。这是我的解决方案。
首先我定义了一个新功能:
(defun buffer-resize()
(delete-other-windows)
(split-window-vertically (floor (* 0.68 (window-height))))
(other-window 1)
(switch-to-buffer buf)
(other-window 1))
例如,我想运行的方案在缓冲区中,所以我把它改写。
这里的定义是,与前面定义的函数:
(defun run-scheme-here()
"Run a new scheme process at the directory of the current buffer.
If a process is already running, switch to its buffer."
(interactive)
(let* ((proc (format "scheme: %s" default-directory))
(buf (format "*%s*" proc)))
(unless (comint-check-proc buf)
(let ((cmd (split-string scheme-program-name)))
(set-buffer
(apply 'make-comint-in-buffer proc buf (car cmd) nil (cdr cmd)))
(inferior-scheme-mode)
(buffer-resize)))
(pop-to-buffer buf)))
所以,现在当我输入:M-X上运行的方案,在这里,缓冲区大小!
这里是我的配置文件,希望这会有所帮助。 https://github.com/judevc/dotfiles/blob/master/.emacs.d/scheme-conf.el
让我们尝试使用emacs帮助文档。
C-H 一个
然后输入 “放大” 或 “窗口”
你会找到你想要的东西。
享受!
- 1. 如何调整屏幕窗口大小?
- 2. 如何拆分屏幕Emacs和终端
- 3. 根据浏览器窗口大小更改Youtube播放器的屏幕大小
- 4. 更改屏幕大小
- 5. Netbean:如何调整UI窗口大小屏幕大小
- 6. 如何更改窗口的大小DepthBasics
- 7. 如何根据屏幕大小更改字体大小
- 8. 根据屏幕大小调整WPF窗口的大小
- 9. 如何限制弹出窗口的大小到屏幕
- 10. emacs以编程方式更改窗口大小
- 11. 如何android弹出窗口匹配屏幕大小宽度
- 12. 如何根据窗口大小更改图像大小
- 13. 使用网格几何和屏幕大小根据窗口大小调整窗口大小
- 14. 更改屏幕分辨率,无需调整窗口大小或使用全屏(LWJGL 2)
- 15. 如何根据屏幕大小更改角度js中的弹窗布局?
- 16. 更改MahApps地铁拆分ButtoniIcon大小
- 17. Emacs的:初始窗口大小
- 18. WPF最大化窗口比屏幕大
- 19. 更改glui窗口的大小
- 20. 如何根据iPhone的屏幕大小更改UIWebView?
- 21. 拆分屏幕并调整ffmpeg流的大小
- 22. 更改Emacs欢迎启动/屏幕
- 23. 根据屏幕分辨率/密度更改文字大小?
- 24. VB.NET - 通过屏幕分辨率更改表单大小:
- 25. Android根据屏幕大小更改图像大小?
- 26. 不同的屏幕尺寸和wpf窗口大小的值
- 27. 根据窗口大小更改img
- 28. 在窗口调整大小更改类
- 29. XNA更改窗口大小不工作
- 30. Greybox叠加层更改窗口大小
真棒,正是我想要的!非常感谢! – Steve 2011-02-17 06:04:40
+1:感谢'撤消'赢家模式提示。顺便说一句,在我的情况下点击缓冲区名称打开下一个缓冲区。但很容易看出您何时可以调整鼠标光标形状的大小。 – jfs 2012-03-20 05:28:35