Làm thế nào để thay đổi kích thước của cửa sổ chia màn hình emacs?


12

Nếu tôi có Emacs chia theo chiều ngang và trên đầu tôi đang chỉnh sửa mã elisp và ở phía dưới tôi đang ở trong vỏ. Theo mặc định, Emacs làm cho hai cửa sổ có kích thước bằng nhau, nhưng tôi muốn bộ đệm vỏ nhỏ hơn. Tôi đã tự hỏi làm thế nào tôi có thể làm điều đó.

Câu hỏi ban đầu của Steve trên SO: Làm thế nào để thay đổi kích thước của các cửa sổ chia màn hình?


4
Có phải chúng ta cố tình sao chép các câu hỏi từ SO? stackoverflow.com/questions/4987760/ từ
phils

@phils, Không, tôi không có. Nhưng tôi sẽ tạo một liên kết đến bài viết. Cảm ơn sự sáng suốt của bạn.
Luke Shimkus

ngoài ra, điều đó hơi quá dễ dàng :)
Nsukami _

1
Gee, chỉnh sửa tuyệt vời @King. Bây giờ câu hỏi này đã trở nên thực sự khác biệt so với câu hỏi mà bạn đã sao chép ...
rsenna

2
nó làm tôi nghĩ rằng, các câu hỏi liên quan đến emacs về SO nên được di chuyển. Nó sẽ tránh được tiếng ồn ào (nhỏ xíu)
Nsukami _

Câu trả lời:


18

C-x-( shrink-window-if-larger-than-buffer) để thu nhỏ một cửa sổ để phù hợp với nội dung của nó.

C-x+( balance-windows) để làm cho các cửa sổ có cùng chiều cao và chiều rộng.

C-x^( enlarge-window) để tăng chiều cao thêm 1 dòng hoặc giá trị arg tiền tố. Một đối số tiêu cực thu nhỏ cửa sổ. Thí dụ:C-u - 3 C-x ^

C-x{( shrink-window-horizontally)

C-x}( enlarge-window-horizontally)


+1 cho lệnh thu hẹp. Tôi đang tìm cách thu nhỏ lại bằng một dòng duy nhất. Là C-u
Vass

3
@Vass C-ubắt đầu một đối số số cho lệnh sau. Nếu bạn muốn tăng 5 lần, thay vì gõ, 5 lần, cùng một lệnh, bạn nhậpC-u 5 C-x ^
Nsukami _

1
Cũng đáng lưu ý rằng C-ugiá trị mặc định là 4, có nghĩa là C-u C-x ^sẽ làm tương tự như C-u 4 C-x ^.
ramnes

7

Tôi cũng khuyên bạn nên kiểm tra windresizegói từ ELPA hoặc windsizegói từ MELPA .

Với windresize, bạn có thể làm M-x windresizevà sau đó sử dụng các phím mũi tên để di chuyển viền cửa sổ một cách dễ dàng, nhấn ENTER khi bạn hoàn thành.


3

Bạn có thể sử dụng C-x^( enlarge-window) trong cửa sổ phía trên để làm cho nó lớn hơn (và do đó làm cho cửa sổ bên dưới nhỏ hơn).

Sử dụng chuột, bạn cũng có thể kéo modeline của cửa sổ phía trên để thay đổi kích thước của nó.


ý tưởng tuyệt vời để làm cho một cửa sổ khác nhỏ hơn bằng cách mở rộng cửa sổ phía trên nó!
Vass

0

Cũng lưu ý rằng giống như trong hệ thống cửa sổ, bạn có thể sử dụng chuột với chế độ xterm-mouse để kéo bộ chia cửa sổ.

Lưu ý rằng điều này đôi khi phụ thuộc một chút vào chương trình xterm hoặc xterm thực tế và iirc trong Emacsen cũ hơn, nó không đáng tin cậy về cột thứ 100 trừ khi bạn chơi với biến môi trường TERM một chút, nhưng trong Emacs 24.2 của tôi .1 nó hoạt động tốt với emacs -nw -q (nghĩa là hoàn toàn bỏ qua .emacs của tôi và bật thủ công xterm-mouse-mode với M-x xterm-mouse-mode)

Cập nhật: FYI cho sự hoàn chỉnh Tôi sẽ chỉ ra điều này cũng hoạt động cho các dải phân cách dọc (nghĩa là khi bạn đã chia tách với C-x 3)


0

Tôi đã từng viết một chế độ nhỏ đơn giản (cho việc sử dụng cá nhân của tôi) để tương tác resize-frame. Tôi nghĩ rằng điều này nên được thuận tiện.

https://gist.github.com/kuanyui/65a408d393871048771c

M-x resize-frameđể bật resize-framechế độ phụ:

  1. Nhấn arrow keysđể điều chỉnh kích thước theo chiều ngang / chiều dọc.
  2. Nhấn bất kỳ phím nào khác để tắt.
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.