2011-05-12 26 views
23

Tôi đã được Googling xung quanh và nhìn vào Emacs được xây dựng trong trợ giúp nhưng tôi vẫn chưa xác định làm thế nào để di chuyển lên (hoặc xuống) trong Emacs ansi hạn.Cách cuộn lên trong Emacs ansi-term

Tôi đang sử dụng Emacs 23.3.1, OS X, trong iTerm2. Cảm ơn!

Chỉnh sửa: Tôi đã nhận thấy hầu hết những lời khuyên mà mọi người cho tôi không hoạt động trong lĩnh vực ansi nhưng hoạt động trong eshell. Tôi đã chuyển đến eshell.

Trả lời

41

Nói chung, nếu bạn không cần mô phỏng thiết bị đầu cuối toàn màn hình, shell hoặc eshell là lựa chọn tốt hơn.

Tuy nhiên, nếu bạn quyết định gắn bó với ansi-term, hãy nhấn C-c C-j để chuyển sang chế độ dòng. Sau đó, bạn có thể di chuyển bình thường với các phím di chuyển con trỏ thông thường. Nhấn C-c C-k để quay lại chế độ char để tương tác với thiết bị đầu cuối.

Hoặc, bạn có thể cuộn lùi lại một màn hình tại một thời điểm với C-c C-v và chỉ cần nhập văn bản để cuộn trở lại điểm đầu cuối của thiết bị đầu cuối.

Hãy xem Emacs documentation on term-mode (hầu hết trong số đó áp dụng như nhau cho ansi-term) để biết thêm thông tin.

+0

Tôi thích ansi-hạn vì nhiều thứ có màu (giống như làm một git diff) sau đó so với giả lập thiết bị đầu cuối emacs khác. Làm một C-c C-j cho phép tôi sau đó nhảy xung quanh lên và xuống một trang thông qua các phím thông thường. Cảm ơn! –

+2

Tôi sử dụng vỏ có màu ansi được bật, tốt nhất cho cả hai thế giới. Bạn có thể bật giải thích màu ansi cho chế độ shell với đoạn mã này trong .emacs của bạn: '(yêu cầu 'ansi-color) (add-hook' shell-mode-hook 'ansi-color-for-comint-mode-on)' – ataylor

-1

Lên và xuống là Ctrl-P và Ctrl-V. Có một danh sách toàn bộ dài here

+0

Ctrl-P và Ctrl-V đi qua lịch sử bash. Tôi đã cập nhật câu hỏi của mình với hệ điều hành và các chi tiết khác. Cảm ơn. –

+0

Chỉ cần một lưu ý rằng điều này làm việc trong eshell. Cảm ơn. –

+0

Cũng là Ctrl-p và Ctrl-n. Ctrl-v sẽ lật trang. –

1

Bạn đã thử: Page up, mũi tên lên, Ctrl-V, Alt-V

+0

Những người không làm việc. Tôi đã cập nhật câu hỏi của mình với hệ điều hành và các chi tiết khác. Cảm ơn. –

+0

Chỉ cần một lưu ý rằng điều này làm việc trong eshell. Bây giờ tôi đã chuyển đổi biểu mẫu bằng cách sử dụng ansi-term thành eshell. –

+0

Tôi đang sử dụng spacemacs với cái ác, vì vậy tôi cần phải thoát ra sau đó nhấn shift + page up và page down. – CMCDragonkai

3

Shift-trang lên/xuống (trong Emacs-nói, S-prior/S-next) sẽ làm việc sử dụng các ràng buộc mặc định.

(Trong khi bình thường C-h m/C-h b không làm việc để xem thông tin chế độ và bindings trong chế độ này, bạn vẫn có thể sử dụng C-c M-x describe-mode/describe-bindings, hoặc tùy thuộc vào thiết lập của bạn, sử dụng F1 hay giúp đỡ chìa khóa thay vì của C-h.)

+0

S-trước/S-tiếp theo không hoạt động trong ansi-term hoặc eshell nhưng cảm ơn cho lời khuyên mô tả/ràng buộc mô tả! –

+0

Đó là trong các ràng buộc; chắc chắn đã làm việc cho tôi. Có lẽ nó có cái gì đó để làm với thiết lập thiết bị đầu cuối của bạn. –

+0

Vâng, có vẻ như hầu hết các ứng dụng đầu cuối tôi đã thấy bản đồ dịch chuyển trang lên/xuống để di chuyển qua cuộn. Nó chắc chắn hoạt động nếu bạn chạy một Emacs GUI, mà tôi ngạc nhiên bạn không nếu bạn đang trên Mac ... nó tích hợp tốt hơn rất nhiều. –

0

Đối ansi hạn, tôi có điều này trong .emacs tôi:

(add-hook 'term-mode-hook 
      (function 
      (lambda() 
      (define-key term-raw-map [?\C-c prior] 'scroll-down) 
      (define-key term-raw-map [?\C-c next] 'scroll-up)))) 

Sau đó, tôi có thể sử dụng C-c pgupC-c pgdn để di chuyển.

1

cài đặt chế độ ác trước tiên, nhấn C-z để chuyển sang ràng buộc khóa vim.

  • Bạn có thể sử dụng C-f, C-b để cuộn lên và xuống
  • bạn có thể sử dụng 20% để chuyển đến đến 20% hàng đầu của bộ đệm
  • bạn có thể sử dụng /, ?, #, * để tìm kiếm văn bản trong bộ đệm.
  • tất cả các lệnh grep/filter hiện có thể sử dụng (xảy ra, swiper, helm-swoop, ....chỉ một vài tên)
  • bạn có thể thu hẹp/mở rộng bộ đệm
  • bạn có thể yank văn bản
Các vấn đề liên quan