2012-03-03 27 views
5

Làm cách nào để ngăn chặn bộ đệm * tex-shell * mở khi tôi biên dịch Latex từ Emacs? Nó chia cửa sổ làm đôi, và tôi luôn sử dụng C-x 1 để loại bỏ nó ngay lập tức.Dừng tex-shell khi mở khi biên dịch Latex từ Emacs

Giải pháp này có thể liên quan đến

(setq special-display-buffer-names ("*tex-shell*")) 

mà làm bộ đệm mới mất toàn bộ khung thay vì chỉ một nửa (không phải những gì tôi muốn).

tôi đã cố gắng điều sau đây, nhưng nó không có hiệu lực đối với latex bao gồm:

(defadvice compilation-start 
    (around inhidbit-display (command &optional mode name-function highlight-regexp)) 
    (flet (display-buffer) (fset 'display-buffer 'ignore) ad-do-it)) 
(ad-activate 'compilation-start) 
(ad-deactivate 'compilation-start) 
+0

Bạn đang sử dụng AUCTeX? –

+0

Tôi không nghĩ vậy. Chế độ là "LaTeX". Trên thực tế, tôi chỉ có vấn đề này trên OS X. Trên Ubuntu, chế độ là "LaTeX/P", và tex-shell không mở. – zoo

+0

Chế độ chính nào 'C-h m' cho biết bạn đang ở? –

Trả lời

1

Vâng, bạn thực sự nên sử dụng AUCTeX vì nó tốt hơn nhiều. Tuy nhiên, nếu bạn nhập C-hC-k và sau đó một chuỗi khóa Emacs sẽ cho bạn biết những gì sẽ được chạy. Trong trường hợp này, đối với C-cC-f, đó là tex-file, do đó bạn sẽ phải tư vấn tex-file hoặc có thể (tìm hiểu mã nguồn một chút) tex-start-shell.

0

tôi sử dụng defun sau:

(defun tex-without-changing-windows() 
    (interactive) 
    (save-buffer) 
    (save-window-excursion (tex-file))) 

tôi ràng buộc nó vào C-c C-f để thay thế tex-file.

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