Qual é a origem histórica de CTRL + P para cima e CTRL + N para baixo?

10

Eu sou um usuário moderado do vim, que agora está começando a usar o GNU emacs. Na mesma época em que aprendi que Ctrl- pe Ctrl- nsão o padrão para cima e para baixo no emacs, também aprendi que são variantes de ke em modo normal no vim.

Alguém sabe a origem desses atalhos? Suponho que logicamente eles provêm de p (revious) en (ext), ou talvez (u) pe (dow) n, mas estou perguntando sobre qual programa, sistema ou padrão eles faziam parte. Parece improvável que alguns atalhos aleatórios do emacs tenham sido emprestados para o vim, então sua inclusão nos dois me faz pensar que eles provavelmente são anteriores ao emacs e ao vim. *

É difícil encontrar as respostas para as perguntas digitadas no Google, mas, curiosamente, elas não são mencionadas como "teclas de seta" no artigo aparentemente abrangente da Wikipedia .

* Agradecimentos a Thomas Dickey e Mark Plotnick, que apontaram nos comentários que os atalhos em questão estão documentados em 1984 vi (sic) e em referência ao emacs de 1978 funciona, mas acho que a questão de origem comum ainda permanece.

Harlandski
fonte
No emacs (ou bash / ksh no modo emacs), uso Anterior / Próximo como um lembrete de qual caminho seguir. Avançar / retroceder.
Archemar # 15/16
@ Archemar Ah, sim, isso faz mais sentido. Eu acrescentou que no como uma origem mais lógica, mas a minha questão histórica ainda está de pé :-)
harlandski
Eles são anteriores ao vim, por exemplo, estão documentados no "manual do usuário vi" de 1984.
Thomas Dickey
A referência mais antiga que posso encontrar para "n para o próximo, p para anterior" para a linhagem Emacs é o AI Memo 447 - Uma introdução ao editor do EMACS de 1978. É possível que um dos predecessores do Emacs, como o RMODE, também tenha usado n para o próximo ep para anterior, mas não consegui encontrar uma referência.
precisa saber é o seguinte
Pelo que vale, também é mencionado em Uma introdução à edição de exibição com o Vi , que é tão antiga quanto. Não veio do TECO ou SOS.
Thomas Dickey

Respostas:

3

Eu não posso fornecer a prova de qualquer tipo, mas Ctrl- Pe Ctrl- Npertencem às emacsteclas, em contraste com viligações ( bindkey -evs. bindkey -v). Sob essa premissa, você deve procurar uma explicação em emacssi.

emacs'tutorial diz

Existem várias maneiras de fazer isso. Você pode usar as teclas de seta, mas é mais eficiente manter as mãos na posição padrão e usar os comandos Cp, Cb, Cf e Cn. Esses caracteres são equivalentes às quatro teclas de seta, assim:

  • Linha anterior, Cp
  • Para trás, Cb
  • Frente, Cf
  • Próxima linha, Cn

Parece inconveniente para o viusuário comum , mas faz todo o sentido.

Andreas Wiese
fonte