Nguồn gốc lịch sử của CTRL + P cho tăng và CTRL + N cho xuống là gì?


10

Tôi là một người dùng vim có kinh nghiệm vừa phải, hiện đang bắt đầu sử dụng GNU emacs. Gần như cùng lúc tôi học được rằng Ctrl- pCtrl- nlà mặc định cho lên và xuống trong emacs, tôi cũng biết chúng là các biến thể của k và j trong chế độ bình thường trong vim.

Có ai biết nguồn gốc của những phím tắt này? Tôi cho rằng về mặt logic, chúng đến từ p (revious) và n (ext), hoặc có thể (u) p và (dow) n, nhưng tôi đang hỏi về chương trình, hệ thống hoặc tiêu chuẩn nào chúng là một phần của. Dường như một vài phím tắt emacs ngẫu nhiên đã được mượn vào vim, vì vậy việc đưa chúng vào cả hai khiến tôi nghĩ rằng chúng có thể có trước cả emacs và vim. *

Thật khó để tìm câu trả lời cho các câu hỏi về tổ hợp phím bằng Google, nhưng điều thú vị là chúng không được đề cập là "phím mũi tên" trên bài viết Wikipedia dường như toàn diện .

* Cảm ơn Thomas Dickey và Mark Plotnick, người đã chỉ ra trong các bình luận rằng các phím tắt trong câu hỏi được ghi lại vào năm 1984 vi (sic), và 1978 emacs tham khảo hoạt động, nhưng tôi nghĩ rằng câu hỏi về nguồn gốc chung vẫn còn tồn tại.


Trong emacs (hoặc bash / ksh trong chế độ emacs), tôi sử dụng Trước đó / Tiếp theo như một lời nhắc nhở về cách đi. dọc Tiến / lùi.
Archemar

@Archemar À đúng rồi, điều đó có ý nghĩa hơn. Tôi đã thêm rằng với tư cách là một nguồn gốc hợp lý hơn, nhưng câu hỏi lịch sử của tôi vẫn tồn tại :-)
harlandski

Chúng có trước vim, ví dụ, được ghi lại trong "cẩm nang vi người dùng" năm 1984.
Thomas Dickey

Tài liệu tham khảo sớm nhất tôi có thể tìm thấy "n cho tiếp theo, p cho trước" cho dòng dõi Emacs là AI Memor 447 - Giới thiệu về trình soạn thảo EMACS từ năm 1978. Có thể một trong những người tiền nhiệm của Emacs như RMODE cũng đã sử dụng n cho tiếp theo và p cho trước, nhưng tôi không thể tìm thấy một tài liệu tham khảo.
Đánh dấu Plotnick

Đối với những gì nó có giá trị, nó cũng được đề cập trong Giới thiệu về Chỉnh sửa hiển thị với Vi , gần như cũ. Nó không đến từ TECO hoặc SOS.
Thomas Dickey

Câu trả lời:


3

Tôi không thể cung cấp bằng chứng về bất kỳ loại nào, nhưng Ctrl- PCtrl- Nthuộc về các emacsràng buộc chính, trái ngược với vicác ràng buộc ( bindkey -eso với bindkey -v). Dưới tiền đề này, bạn nên tìm kiếm một lời giải thích trong emacschính nó.

emacs'hướng dẫn nói

Có một số cách bạn có thể làm điều này. Bạn có thể sử dụng các phím mũi tên, nhưng sẽ hiệu quả hơn khi giữ tay bạn ở vị trí chuẩn và sử dụng các lệnh Cp, Cb, Cf và Cn. Các ký tự này tương đương với bốn phím mũi tên, như thế này:

  • Dòng trước, Cp
  • Lạc hậu, Cb
  • Chuyển tiếp, Cf
  • Dòng tiếp theo, Cn

Có vẻ bất tiện cho vingười dùng thông thường , nhưng có ý nghĩa tuyệt đối.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.