Trong chế độ python, có một hàm gọi là py-execute-region gửi một vùng mã được đánh dấu tới bộ đệm Python để đánh giá. Sau khi đánh giá, con trỏ nằm trong bộ đệm Python, nhưng tôi muốn nó nằm trong bộ đệm kịch bản để tôi có thể tiếp tục sản xuất thêm mã. Tôi đã viết một chức năng tư vấn đơn giản:Emacs defadvice trên chức năng python-mode
(defadvice py-execute-region
(after py-execute-region-other-window activate)
""" After execution, return cursor to script buffer """
(other-window 1)
)
Nhưng điều này không làm gì cả. Tôi đã thử các biến thể khác như sử dụng 'xung quanh' thay vì 'sau'; thiết lập một biến cho tên bộ đệm kịch bản và sau đó pop-to-buffer để bộ đệm đó và các công cụ như thế. Không thành công! Tôi tự hỏi nếu cơ chế này rõ ràng với ai đó ... Cảm ơn!
Cảm ơn! ... nhưng vẫn không hiệu quả đối với tôi. Nếu tôi thay thế cơ thể của defadvice bằng (cửa sổ khác 1) (chèn "x"), nó đặt "x" trong bộ đệm tập lệnh nhưng con trỏ vẫn nằm trong bộ đệm Python ... rất khó hiểu. – hatmatrix
Có lời khuyên nào khác được kích hoạt cho cùng một chức năng không? Tại thời điểm này, tôi sẽ bắt đầu một emacs vanilla (emacs -q), tải chế độ python, xác định và kích hoạt lời khuyên của bạn, và xem nếu nó vẫn không hoạt động. Có thể có một số tương tác kỳ lạ đang diễn ra. –