2012-03-14 26 views
10

Emacs 23.1.1 Ediff 2.81.2 trên CentOs 6ediff-split-window-function horizontal == vertical?

Trước khi có bất kỳ tùy chỉnh nào, Theo mặc định, chia cửa sổ theo chiều ngang (một trên đầu khác).

tôi muốn chúng cạnh nhau vì vậy tôi cố gắng thêm các dòng sau vào emacs tôi

(setq ediff-split-window-function 'split-window-vertically) 
(setq ediff-merge-split-window-function 'split-window-vertically) 

này không ảnh hưởng - các cửa sổ vẫn còn chia theo chiều ngang. Tôi cũng đã thử sử dụng giao diện Tùy chỉnh Emacs cho Ediff để có được phân chia theo chiều dọc theo mặc định - cùng một câu chuyện.

Lưu ý rằng tôi đã thử điều này khi so sánh với hai bộ đệm được chia theo chiều dọc. Tôi cũng đã thử nó với không có tập tin mở trong bộ đệm và yêu cầu Ediff để so sánh hai tập tin - cùng một kết quả.

Sau đó, tôi đã thử xác định chia cửa sổ theo chiều ngang làm chức năng cửa sổ chia cho cả hai dạng tách-ediff và ediff.

(setq ediff-split-window-function 'split-window-horizontally) 
(setq ediff-merge-split-window-function 'split-window-horizontally) 

Điều này khiến cửa sổ bị phân tách theo chiều dọc (cạnh nhau). Điều này cũng đúng khi tôi nhận xét những dòng này và sử dụng giao diện Tùy chỉnh Emacs để thiết lập các tùy chọn này.

Và có, tôi đã thấy this question nhưng tôi không muốn loại bỏ phân tách ngang trên cơ sở toàn cầu - tôi chỉ muốn Ediff làm theo mặc định.

Tôi đang mất trí hoặc có ai đó chuyển ý nghĩa của "ngang" và "dọc" (và nhân tiện, tôi lấy định nghĩa về phân tách "dọc" và "ngang" từ bản sao O của tôi 'Reilly book "Học Gnu Emacs")?

+0

Chia cửa sổ theo chiều ngang nghĩa là chia cửa sổ thành hai cửa sổ nằm ngang. –

Trả lời

8

Tôi đã sử dụng tùy chỉnh biến emacs, được gọi với C-h v ediff-split-window-function để thay đổi giá trị. Sau khi nhấp Save for future sessions sau đây được viết để .emacs tôi:

(custom-set-variables 
... 
'(ediff-split-window-function (quote split-window-horizontally)) 
...) 

Và nó thực hiện chính xác những gì tôi muốn: đặt hai bộ đệm side-by-side. Và có, emacs sử dụng ngang/dọc trong đối diện của những gì bạn đã có trong tâm trí. Nếu bạn đọc lại this question, bạn sẽ thấy lời giải thích, những người khác cũng bối rối.

7

Nhấn "|" khi bạn đang ở chế độ ediff với 2 tập tin được nạp thiết bị chuyển mạch từ ngang sang dọc.
"?" đưa ra một menu trợ giúp nhỏ. (Tôi đang sử dụng Debian Wheezy với emacs 23.4 + 1-4)

0

Mặc dù nó không hoàn toàn trả lời sự cố của bạn, bạn cũng có thể sử dụng chức năng để phân chia theo chiều dọc hoặc chiều ngang tùy thuộc vào kích thước cửa sổ:

(setq ediff-split-window-function 'split-window-sensibly) 

chia cửa sổ một cách hợp lý là built-in.

+0

Điều này không hiệu quả đối với tôi. 'split-window-sensibly' lấy một cửa sổ làm đối số, trong khi' split-window-horizontal' có kích thước. Điều này gây ra lỗi khi Ediff cố gắng phân chia cửa sổ. – PythonNut

Các vấn đề liên quan