greadline/README.md

67 lines
3.4 KiB
Markdown
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# readline
Readline est un prompt Linux qui se veut similaire à C readline mais en ligne de commande.
## Utilisationtypique
readline peut être utilisé de la façon suivante:
```go
package main
import (
"fmt"
"os"
"gitea.zaclys.net/bvaudour/readline"
)
func main() {
prompt := "\033[1;31m> \033[m"
rl := readline.New()
defer readline.Close()
for {
input := rl.Prompt(prompt) // rl.PromptPassword(prompt) pour masquer ce qui est saisi
if result, ok := input.Ok(); ok {
//@TODO Do some stuff with input
if result == "exit" {
return
}
} else if err, ok := input.Err(); ok {
fmt.Printf("\033[1,31mErreur système : %s\033[m\n", err)
os.Exit(1)
}
}
}
```
## Raccourcis clavier <u>disponibles</u>
| Raccourci clavier | Action |
| -------------------------------------- | ------------------------------------------------------------ |
| Ctrl+A, Home | Retour au début de la saisie |
| Ctrl+E, End | Retour à la fin de la saisie |
| Ctrl+B, Left | Déplacement dun caractère vers la gauche |
| Ctrl+F, Right | Déplacement dun caractère vers la droite |
| Alt+B, Ctrl+Left | Déplacement dun mot vers la gauche |
| Alt+F, Ctrl+Right | Déplacement dun mot vers la droite |
| Ctrl+U | Suppression de tous les caractères du début de la ligne au curseur (curseur non compris) |
| Ctrl+K | Suppression de tous les carctères du curseur (compris) à la fin de la ligne |
| Ctrl+D (si saisie commencée), Del | Suppression du caractère sous le curseur |
| Ctrl+D (si ligne vide) | Termine lapplication (EOF) |
| Ctrl+H, Backspace | Suppression du caractère avant le curseur |
| Alt+D, Alt+Del | Suppression du prochain mot |
| Alt+Backspace | Suppression du précédent mot |
| Ctrl+C | Termine lapplication (avec erreur) |
| Ctrl+P, Up (si ligne vide au départ) | Remonte à lhistorique précédent |
| Ctrl+N, Down (si ligne vide au départ) | Descend dans lhistorique |
| Ctrl+R, Up (si ligne non vide) | Recherche dans lhistorique (par préfixe de ligne) à partir de la fin |
| Ctrl+S, Down (si ligne non vide) | Recherche dans lhistorique (par préfixe de ligne) à partir du début |
| Ctrl+Y | Copie le dernier élément supprimé |
| Alt+Y | Remonte dans lhistorique des éléments supprimés et les copie (implique Ctrl+Y précédemment lancé) |
| Ctrl+G, Cancel | Annule les dernières actions temporaires (historique, recherche, copie, historique de copie) |