Tôi nghĩ rằng bạn muốn hành vi của con trỏ (điểm) và vùng nhìn thấy phải giống như notepad
, gedit
các trình soạn thảo hiện đại khác: khả năng thay đổi vùng nhìn thấy độc lập với vị trí điểm và ngay lập tức đưa vùng nhìn thấy về vị trí điểm sau khi di chuyển điểm. Nhưng emacs
có một quan niệm khác: khu vực nhìn thấy luôn theo vị trí điểm và ngược lại.
Xem thêm /programming/9616623/ctrl-up-down-style-scrolling-in-emacs
Câu trả lời trước cho thấy thành ngữ đặc biệt: nếu bạn muốn di chuyển vùng nhìn thấy (có cùng điểm) ra xa vị trí hiện tại và sau đó trả lại điểm ở vị trí chính xác trước đó bạn nên có thói quen sử dụng mark-ring
. Có luôn luôn là một cách thức thông qua mark ring
vào vị trí làm việc hiện tại: nhiều lệnh, như isearch-forward
, beginning-of-buffer
, ace-jump-mode
tự động tiết kiệm vị trí trước trong mark ring
và bạn không nên sử dụng C-<SPC> C-<SPC>
trước đó, nhưng chỉ C-u C-<SPC>
để nhảy trở lại. Các lệnh cuộn, như scroll-up
hoặc mwheel-scroll
, không tự động lưu vị trí trước đó theo mặc định vì nó có thể tạo ra quá nhiều dấu hiệu quá mức.
Bạn có thể sử dụng các lệnh clone-indirect-buffer
hoặc view-buffer-other-window
cho công việc độc lập với bộ đệm ở một vài nơi. Và sử dụng lệnh recenter-top-bottom
( C-l
) để liên tục giữ điểm ở giữa vùng nhìn thấy được.
C-u C-<SPC>
dường như không hoạt động. Tôi không biết đó có phải là vấn đềcua-mode
hay không. Tôi đã thử chạy Emacs với-q
tùy chọn, nhưng không có gì thay đổi. Có ý kiến gì không?