readline activity

This commit is contained in:
Andrea Blankenstijn 2022-07-26 13:10:22 +02:00
parent c3f626642f
commit e93d30f691
2 changed files with 413 additions and 0 deletions

View File

@ -0,0 +1,206 @@
# Readline
GNU Readline is a library commonly used to make prompts for user input. It has
a lot of useful keybinding for line editing and also provides an history of the
line read. You can usually use these bindings with the shell prompt too.
There are two operating modes: Emacs style or VI style. Usually, Emacs is the
default mode.
Take a look, try them and make a cheatsheet of the most useful ones.
## Emacs mode
## Emacs Standard bindings
- "C-@" set-mark
- "C-A" beginning-of-line
- C-B" backward-char
- C-D" delete-char
- C-E" end-of-line
- C-F" forward-char
- C-G" abort
- C-H" backward-delete-char
- C-I" complete
- C-J" accept-line
- C-K" kill-line
- C-L" clear-screen
- C-M" accept-line
- C-N" next-history
- C-P" previous-history
- C-Q" quoted-insert
- C-R" reverse-search-history
- C-S" forward-search-history
- C-T" transpose-chars
- C-U" unix-line-discard
- C-V" quoted-insert
- C-W" unix-word-rubout
- C-Y" yank
- C-]" character-search
- C-_" undo
- " to "/" self-insert
- 0" to "9" self-insert
- :" to "~" self-insert
- C-?" backward-delete-char
### Emacs Meta bindings
- M-C-G" abort
- M-C-H" backward-kill-word
- M-C-I" tab-insert
- M-C-J" vi-editing-mode
- M-C-L" clear-display
- M-C-M" vi-editing-mode
- M-C-R" revert-line
- M-C-Y" yank-nth-arg
- M-C-[" complete
- M-C-]" character-search-backward
- M-space" set-mark
- M-#" insert-comment
- M-&" tilde-expand
- M-*" insert-completions
- M--" digit-argument
- M-." yank-last-arg
- M-0" digit-argument
- M-1" digit-argument
- M-2" digit-argument
- M-3" digit-argument
- M-4" digit-argument
- M-5" digit-argument
- M-6" digit-argument
- M-7" digit-argument
- M-8" digit-argument
- M-9" digit-argument
- M-<" beginning-of-history
- M-=" possible-completions
- M->" end-of-history
- M-?" possible-completions
- M-B" backward-word
- M-C" capitalize-word
- M-D" kill-word
- M-F" forward-word
- M-L" downcase-word
- M-N" non-incremental-forward-search-history
- M-P" non-incremental-reverse-search-history
- M-R" revert-line
- M-T" transpose-words
- M-U" upcase-word
- M-Y" yank-pop
- M-\" delete-horizontal-space
- M-~" tilde-expand
- M-C-?" backward-kill-word
- M-_" yank-last-arg
### Emacs Control-X bindings
- C-XC-G" abort
- C-XC-R" re-read-init-file
- C-XC-U" undo
- C-XC-X" exchange-point-and-mark
- C-X(" start-kbd-macro
- C-X)" end-kbd-macro
- C-XE" call-last-kbd-macro
- C-XC-?" backward-kill-line
## VI mode
### VI Insert Mode functions
- C-D" vi-eof-maybe
- C-H" backward-delete-char
- C-I" complete
- C-J" accept-line
- C-M" accept-line
- C-R" reverse-search-history
- C-S" forward-search-history
- C-T" transpose-chars
- C-U" unix-line-discard
- C-V" quoted-insert
- C-W" unix-word-rubout
- C-Y" yank
- C-[" vi-movement-mode
- C-_" undo
- " to "~" self-insert
- C-?" backward-delete-char
### VI Command Mode functions
- C-D" vi-eof-maybe
- C-E" emacs-editing-mode
- C-G" abort
- C-H" backward-char
- C-J" accept-line
- C-K" kill-line
- C-L" clear-screen
- C-M" accept-line
- C-N" next-history
- C-P" previous-history
- C-Q" quoted-insert
- C-R" reverse-search-history
- C-S" forward-search-history
- C-T" transpose-chars
- C-U" unix-line-discard
- C-V" quoted-insert
- C-W" unix-word-rubout
- C-Y" yank
- C-_" vi-undo
- " forward-char
- #" insert-comment
- $" end-of-line
- %" vi-match
- &" vi-tilde-expand
- *" vi-complete
- +" next-history
- ," vi-char-search
- -" previous-history
- ." vi-redo
- /" vi-search
- 0" beginning-of-line
- 1" to "9" vi-arg-digit
- ;" vi-char-search
- =" vi-complete
- ?" vi-search
- A" vi-append-eol
- B" vi-prev-word
- C" vi-change-to
- D" vi-delete-to
- E" vi-end-word
- F" vi-char-search
- G" vi-fetch-history
- I" vi-insert-beg
- N" vi-search-again
- P" vi-put
- R" vi-replace
- S" vi-subst
- T" vi-char-search
- U" revert-line
- W" vi-next-word
- X" backward-delete-char
- Y" vi-yank-to
- \" vi-complete
- ^" vi-first-print
- _" vi-yank-arg
- `" vi-goto-mark
- a" vi-append-mode
- b" vi-prev-word
- c" vi-change-to
- d" vi-delete-to
- e" vi-end-word
- f" vi-char-search
- h" backward-char
- i" vi-insertion-mode
- j" next-history
- k" prev-history
- l" forward-char
- m" vi-set-mark
- n" vi-search-again
- p" vi-put
- r" vi-change-char
- s" vi-subst
- t" vi-char-search
- u" vi-undo
- w" vi-next-word
- x" vi-delete
- y" vi-yank-to
- |" vi-column
- ~" vi-change-case

View File

@ -0,0 +1,207 @@
# Readline
GNU Readline és una biblioteca comunament utilitzada per a llegir línies de text
teclejades. Té moltes dreceres per a l'edició de la línia d'entrada i proveeix
també un historial de les línies entrades. Podeu generalment fer servir aquestes
dreceres amb l'intèrpret d'ordres.
Té dos modes operatius, l'u amb un estil de dreceres d'Emacs i l'altre de VI.
Mireu una mica que fa cadascuna de les dreceres, proveu-les i prengueu notes
dels més útils.
## Emacs mode
## Emacs Standard bindings
- "C-@" set-mark
- "C-A" beginning-of-line
- C-B" backward-char
- C-D" delete-char
- C-E" end-of-line
- C-F" forward-char
- C-G" abort
- C-H" backward-delete-char
- C-I" complete
- C-J" accept-line
- C-K" kill-line
- C-L" clear-screen
- C-M" accept-line
- C-N" next-history
- C-P" previous-history
- C-Q" quoted-insert
- C-R" reverse-search-history
- C-S" forward-search-history
- C-T" transpose-chars
- C-U" unix-line-discard
- C-V" quoted-insert
- C-W" unix-word-rubout
- C-Y" yank
- C-]" character-search
- C-_" undo
- " to "/" self-insert
- 0" to "9" self-insert
- :" to "~" self-insert
- C-?" backward-delete-char
### Emacs Meta bindings
- M-C-G" abort
- M-C-H" backward-kill-word
- M-C-I" tab-insert
- M-C-J" vi-editing-mode
- M-C-L" clear-display
- M-C-M" vi-editing-mode
- M-C-R" revert-line
- M-C-Y" yank-nth-arg
- M-C-[" complete
- M-C-]" character-search-backward
- M-space" set-mark
- M-#" insert-comment
- M-&" tilde-expand
- M-*" insert-completions
- M--" digit-argument
- M-." yank-last-arg
- M-0" digit-argument
- M-1" digit-argument
- M-2" digit-argument
- M-3" digit-argument
- M-4" digit-argument
- M-5" digit-argument
- M-6" digit-argument
- M-7" digit-argument
- M-8" digit-argument
- M-9" digit-argument
- M-<" beginning-of-history
- M-=" possible-completions
- M->" end-of-history
- M-?" possible-completions
- M-B" backward-word
- M-C" capitalize-word
- M-D" kill-word
- M-F" forward-word
- M-L" downcase-word
- M-N" non-incremental-forward-search-history
- M-P" non-incremental-reverse-search-history
- M-R" revert-line
- M-T" transpose-words
- M-U" upcase-word
- M-Y" yank-pop
- M-\" delete-horizontal-space
- M-~" tilde-expand
- M-C-?" backward-kill-word
- M-_" yank-last-arg
### Emacs Control-X bindings
- C-XC-G" abort
- C-XC-R" re-read-init-file
- C-XC-U" undo
- C-XC-X" exchange-point-and-mark
- C-X(" start-kbd-macro
- C-X)" end-kbd-macro
- C-XE" call-last-kbd-macro
- C-XC-?" backward-kill-line
## VI mode
### VI Insert Mode functions
- C-D" vi-eof-maybe
- C-H" backward-delete-char
- C-I" complete
- C-J" accept-line
- C-M" accept-line
- C-R" reverse-search-history
- C-S" forward-search-history
- C-T" transpose-chars
- C-U" unix-line-discard
- C-V" quoted-insert
- C-W" unix-word-rubout
- C-Y" yank
- C-[" vi-movement-mode
- C-_" undo
- " to "~" self-insert
- C-?" backward-delete-char
### VI Command Mode functions
- C-D" vi-eof-maybe
- C-E" emacs-editing-mode
- C-G" abort
- C-H" backward-char
- C-J" accept-line
- C-K" kill-line
- C-L" clear-screen
- C-M" accept-line
- C-N" next-history
- C-P" previous-history
- C-Q" quoted-insert
- C-R" reverse-search-history
- C-S" forward-search-history
- C-T" transpose-chars
- C-U" unix-line-discard
- C-V" quoted-insert
- C-W" unix-word-rubout
- C-Y" yank
- C-_" vi-undo
- " forward-char
- #" insert-comment
- $" end-of-line
- %" vi-match
- &" vi-tilde-expand
- *" vi-complete
- +" next-history
- ," vi-char-search
- -" previous-history
- ." vi-redo
- /" vi-search
- 0" beginning-of-line
- 1" to "9" vi-arg-digit
- ;" vi-char-search
- =" vi-complete
- ?" vi-search
- A" vi-append-eol
- B" vi-prev-word
- C" vi-change-to
- D" vi-delete-to
- E" vi-end-word
- F" vi-char-search
- G" vi-fetch-history
- I" vi-insert-beg
- N" vi-search-again
- P" vi-put
- R" vi-replace
- S" vi-subst
- T" vi-char-search
- U" revert-line
- W" vi-next-word
- X" backward-delete-char
- Y" vi-yank-to
- \" vi-complete
- ^" vi-first-print
- _" vi-yank-arg
- `" vi-goto-mark
- a" vi-append-mode
- b" vi-prev-word
- c" vi-change-to
- d" vi-delete-to
- e" vi-end-word
- f" vi-char-search
- h" backward-char
- i" vi-insertion-mode
- j" next-history
- k" prev-history
- l" forward-char
- m" vi-set-mark
- n" vi-search-again
- p" vi-put
- r" vi-change-char
- s" vi-subst
- t" vi-char-search
- u" vi-undo
- w" vi-next-word
- x" vi-delete
- y" vi-yank-to
- |" vi-column
- ~" vi-change-case