atom

package
v2.0.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 13, 2022 License: MIT Imports: 13 Imported by: 1

Documentation

Index

Constants

View Source
const (
	Bs = '\u007f' // \?
	Sp = '\u0020'
)
View Source
const (
	C_A rune = iota + 1
	C_B
	C_C
	C_D
	C_E
	C_F
	C_G
	C_H
	C_I // \t
	C_J // \n
	C_K
	C_L
	C_M // \r
	C_N
	C_O
	C_P
	C_Q
	C_R
	C_S
	C_T
	C_U
	C_V
	C_W
	C_X
	C_Y
	C_Z
	Esc // \e
)
View Source
const (
	Tab = C_I
	Lf  = C_J
	Cr  = C_M
)
View Source
const (
	S_Up     = shift | Up            // ^[[1;2A
	S_down   = shift | Down          // ^[[1;2B
	S_Right  = shift | Right         // ^[[1;2C
	S_Left   = shift | Left          // ^[[1;2D
	S_Ins    = shift | Ins           // ^[[2;2~
	S_Del    = shift | Del           // ^[[3;2~
	S_PgUp   = shift | PgUp          // ^[[5;2~
	S_PgDown = shift | PgDown        // ^[[6;2~
	S_End    = shift | End           // ^[[1;2F
	S_Home   = shift | Home          // ^[[1;2H
	S_F1     = shift | F1            // ^[O2P
	S_F2     = shift | F2            // ^[O2Q
	S_F3     = shift | F3            // ^[O2R
	S_F4     = shift | F4            // ^[O2S
	S_F5     = shift | F5            // ^[[15;2~
	S_F6     = shift | F6            // ^[[17;2~
	S_F7     = shift | F7            // ^[[18;2~
	S_F8     = shift | F8            // ^[[19;2~
	S_F9     = shift | F9            // ^[[20;2~
	S_F10    = shift | F10           // ^[[21;2~
	S_F11    = shift | F11           // ^[[23;2~
	S_F12    = shift | F12           // ^[[24;2~
	S_Tab    = shift | Sequence(Tab) // ^[[Z

	A_Up     = alt | Up           // ^[[1;3A
	A_down   = alt | Down         // ^[[1;3B
	A_Right  = alt | Right        // ^[[1;3C
	A_Left   = alt | Left         // ^[[1;3D
	A_Ins    = alt | Ins          // ^[[2;3~
	A_Del    = alt | Del          // ^[[3;3~
	A_PgUp   = alt | PgUp         // ^[[5;3~
	A_PgDown = alt | PgDown       // ^[[6;3~
	A_End    = alt | End          // ^[[1;3F
	A_Home   = alt | Home         // ^[[1;3H
	A_F1     = alt | F1           // ^[O3P
	A_F2     = alt | F2           // ^[O3Q
	A_F3     = alt | F3           // ^[O3R
	A_F4     = alt | F4           // ^[O3S
	A_F5     = alt | F5           // ^[[15;3~
	A_F6     = alt | F6           // ^[[17;3~
	A_F7     = alt | F7           // ^[[18;3~
	A_F8     = alt | F8           // ^[[19;3~
	A_F9     = alt | F9           // ^[[20;3~
	A_F10    = alt | F10          // ^[[21;3~
	A_F11    = alt | F11          // ^[[23;3~
	A_F12    = alt | F12          // ^[[24;3~
	A_Bs     = alt | Sequence(Bs) // ^[<BACK>

	AS_Up     = altShit | Up     // ^[[1;4A
	AS_down   = altShit | Down   // ^[[1;4B
	AS_Right  = altShit | Right  // ^[[1;4C
	AS_Left   = altShit | Left   // ^[[1;4D
	AS_Ins    = altShit | Ins    // ^[[2;4~
	AS_Del    = altShit | Del    // ^[[3;4~
	AS_PgUp   = altShit | PgUp   // ^[[5;4~
	AS_PgDown = altShit | PgDown // ^[[6;4~
	AS_End    = altShit | End    // ^[[1;4F
	AS_Home   = altShit | Home   // ^[[1;4H
	AS_F1     = altShit | F1     // ^[O4P
	AS_F2     = altShit | F2     // ^[O4Q
	AS_F3     = altShit | F3     // ^[O4R
	AS_F4     = altShit | F4     // ^[O4S
	AS_F5     = altShit | F5     // ^[[15;4~
	AS_F6     = altShit | F6     // ^[[17;4~
	AS_F7     = altShit | F7     // ^[[18;4~
	AS_F8     = altShit | F8     // ^[[19;4~
	AS_F9     = altShit | F9     // ^[[20;4~
	AS_F10    = altShit | F10    // ^[[21;4~
	AS_F11    = altShit | F11    // ^[[23;4~
	AS_F12    = altShit | F12    // ^[[24;4~

	C_Up     = ctrl | Up     // ^[[1;5A
	C_down   = ctrl | Down   // ^[[1;5B
	C_Right  = ctrl | Right  // ^[[1;5C
	C_Left   = ctrl | Left   // ^[[1;5D
	C_Ins    = ctrl | Ins    // ^[[2;5~
	C_Del    = ctrl | Del    // ^[[3;5~
	C_PgUp   = ctrl | PgUp   // ^[[5;5~
	C_PgDown = ctrl | PgDown // ^[[6;5~
	C_End    = ctrl | End    // ^[[1;5F
	C_Home   = ctrl | Home   // ^[[1;5H
	C_F1     = ctrl | F1     // ^[O5P
	C_F2     = ctrl | F2     // ^[O5Q
	C_F3     = ctrl | F3     // ^[O5R
	C_F4     = ctrl | F4     // ^[O5S
	C_F5     = ctrl | F5     // ^[[15;5~
	C_F6     = ctrl | F6     // ^[[17;5~
	C_F7     = ctrl | F7     // ^[[18;5~
	C_F8     = ctrl | F8     // ^[[19;5~
	C_F9     = ctrl | F9     // ^[[20;5~
	C_F10    = ctrl | F10    // ^[[21;5~
	C_F11    = ctrl | F11    // ^[[23;5~
	C_F12    = ctrl | F12    // ^[[34;5~

	CS_Up     = ctrlShift | Up     // ^[[1;6A
	CS_down   = ctrlShift | Down   // ^[[1;6B
	CS_Right  = ctrlShift | Right  // ^[[1;6C
	CS_Left   = ctrlShift | Left   // ^[[1;6D
	CS_Ins    = ctrlShift | Ins    // ^[[2;6~
	CS_Del    = ctrlShift | Del    // ^[[3;6~
	CS_PgUp   = ctrlShift | PgUp   // ^[[5;6~
	CS_PgDown = ctrlShift | PgDown // ^[[6;6~
	CS_End    = ctrlShift | End    // ^[[1;6F
	CS_Home   = ctrlShift | Home   // ^[[1;6H
	CS_F1     = ctrlShift | F1     // ^[O6P
	CS_F2     = ctrlShift | F2     // ^[O6Q
	CS_F3     = ctrlShift | F3     // ^[O6R
	CS_F4     = ctrlShift | F4     // ^[O6S
	CS_F5     = ctrlShift | F5     // ^[[15;6~
	CS_F6     = ctrlShift | F6     // ^[[17;6~
	CS_F7     = ctrlShift | F7     // ^[[18;6~
	CS_F8     = ctrlShift | F8     // ^[[19;6~
	CS_F9     = ctrlShift | F9     // ^[[20;6~
	CS_F10    = ctrlShift | F10    // ^[[21;6~
	CS_F11    = ctrlShift | F11    // ^[[23;6~
	CS_F12    = ctrlShift | F12    // ^[[24;6~

	CA_Up     = ctrlAlt | Up     // ^[[1;7A
	CA_down   = ctrlAlt | Down   // ^[[1;7B
	CA_Right  = ctrlAlt | Right  // ^[[1;7C
	CA_Left   = ctrlAlt | Left   // ^[[1;7D
	CA_Ins    = ctrlAlt | Ins    // ^[[2;7~
	CA_Del    = ctrlAlt | Del    // ^[[3;7~
	CA_PgUp   = ctrlAlt | PgUp   // ^[[5;7~
	CA_PgDown = ctrlAlt | PgDown // ^[[6;7~
	CA_End    = ctrlAlt | End    // ^[[1;7F
	CA_Home   = ctrlAlt | Home   // ^[[1;7H
	CA_F1     = ctrlAlt | F1     // ^[O7P
	CA_F2     = ctrlAlt | F2     // ^[O7Q
	CA_F3     = ctrlAlt | F3     // ^[O7R
	CA_F4     = ctrlAlt | F4     // ^[O7S
	CA_F5     = ctrlAlt | F5     // ^[[15;7~
	CA_F6     = ctrlAlt | F6     // ^[[17;7~
	CA_F7     = ctrlAlt | F7     // ^[[18;7~
	CA_F8     = ctrlAlt | F8     // ^[[19;7~
	CA_F9     = ctrlAlt | F9     // ^[[20;7~
	CA_F10    = ctrlAlt | F10    // ^[[21;7~
	CA_F11    = ctrlAlt | F11    // ^[[23;7~
	CA_F12    = ctrlAlt | F12    // ^[[24;7~

	CAS_Up     = ctrlAltShift | Up     // ^[[1;8A
	CAS_down   = ctrlAltShift | Down   // ^[[1;8B
	CAS_Right  = ctrlAltShift | Right  // ^[[1;8C
	CAS_Left   = ctrlAltShift | Left   // ^[[1;8D
	CAS_Ins    = ctrlAltShift | Ins    // ^[[2;8~
	CAS_Del    = ctrlAltShift | Del    // ^[[3;8~
	CAS_PgUp   = ctrlAltShift | PgUp   // ^[[5;8~
	CAS_PgDown = ctrlAltShift | PgDown // ^[[6;8~
	CAS_End    = ctrlAltShift | End    // ^[[1;8F
	CAS_Home   = ctrlAltShift | Home   // ^[[1;8H
	CAS_F1     = ctrlAltShift | F1     // ^[O8P
	CAS_F2     = ctrlAltShift | F2     // ^[O8Q
	CAS_F3     = ctrlAltShift | F3     // ^[O8R
	CAS_F4     = ctrlAltShift | F4     // ^[O8S
	CAS_F5     = ctrlAltShift | F5     // ^[[15;8~
	CAS_F6     = ctrlAltShift | F6     // ^[[17;8~
	CAS_F7     = ctrlAltShift | F7     // ^[[18;8~
	CAS_F8     = ctrlAltShift | F8     // ^[[19;8~
	CAS_F9     = ctrlAltShift | F9     // ^[[20;8~
	CAS_F10    = ctrlAltShift | F10    // ^[[21;8~
	CAS_F11    = ctrlAltShift | F11    // ^[[23;8~
	CAS_F12    = ctrlAltShift | F12    // ^[[24;8~
)

Variables

View Source
var (
	ErrInternal = errors.New("internal error")
	ErrTimeout  = errors.New("timeout")
)
View Source
var (
	ErrInvalidUnicode = errors.New("Not unicode")
)
View Source
var (
	KeyNil = Key{}
)

Functions

func Beep

func Beep()

Beep émet un beep.

func CarriageReturn

func CarriageReturn()

CarriageReturn revient en début de ligne.

func CheckUnicode

func CheckUnicode(str string) error

CheckUnicode vérifie si la chaîne de caractère ne contient que des caractères imprimables.

func ClearAllScreen

func ClearAllScreen()

ClearAllScreen efface tout l’écran.

func ClearAllScreenAndHistory

func ClearAllScreenAndHistory()

ClearAllScreenAndHistory efface tout l’écran, ainsi que l’historique de l’affichage.

func ClearBeginOfLine

func ClearBeginOfLine()

ClearBeginOfLine efface le début de la ligne, curseur compris

func ClearBeginOfScreen

func ClearBeginOfScreen()

ClearBeginOfScreen efface l’écran jusqu’au curseur, curseur compris.

func ClearEndOfLine

func ClearEndOfLine()

ClearEndOfLine efface la fin de la ligne, curseur compris.

func ClearEndOfScreen

func ClearEndOfScreen()

ClearBeginOfScreen efface l’écran à partir du curseur, curseur compris.

func ClearLine

func ClearLine()

ClearLine efface toute la ligne.

func CursorOffset

func CursorOffset(str string, p, w int) (px, py, l int)

CursorOffset calcule la position relative du curseur par rapport au début de la chaîne, ainsi que le le n° de la dernière ligne (en commençant de 0).

func IsPrintable

func IsPrintable(r Char) bool

IsPrintable retourne vrai si le caractère donné est imprimable.

func IsSpace

func IsSpace(r Char) bool

IsSpace retourne vrai si le caractère donné est un caractère blanc.

func MoveDown

func MoveDown(c int)

MoveDown déplace le curseur de c lignes vers le bas.

func MoveLeft

func MoveLeft(c int)

MoveLeft déplace le curseur de c colonnes vers la gauche.

func MoveLineDown

func MoveLineDown(c int)

MoveLineDown se déplace de c lignes vers le bas et revient en début de ligne.

func MoveLineUp

func MoveLineUp(c int)

MoveLineUp se déplace de c lignes vers le haut et revient en début de ligne.

func MoveRight

func MoveRight(c int)

MoveRight déplace le curseur de c colonnes vers la droite.

func MoveToColumn

func MoveToColumn(c int)

MoveToColumn se déplace à la colonne c. La colonne commence à 1.

func MoveToScreen

func MoveToScreen(l, c int)

MoveToScreen se déplace à la ligne l et la colonne c de l’écran. l et c commencent à 1.

func MoveTopLeft

func MoveTopLeft()

MoveTopLeft se déplace au tout début de l’écran

func MoveUp

func MoveUp(c int)

MoveUp déplace le curseur de c lignes vers le haut.

func NewLines

func NewLines(c int)

NewLines rajoute c lignes.

func NextUnescape

func NextUnescape(str string) (string, bool)

NextUnescape enlève le caractère d’échapement en début de chaìne.

func RestoreCursorPosition

func RestoreCursorPosition()

RestoreCursorPosition revient à la position précédemment enregistrée.

func SaveCursorPosition

func SaveCursorPosition()

SaveCursorPosition enregistre la position du curseur pour pouvoir y revenir plus tard.

func VisibleWidth

func VisibleWidth(str string) int

VisibleWith indique le nombre de colonnes nécessaires pour afficher d’une chaîne passée à echo.

Types

type Buffer

type Buffer struct {
	// contains filtered or unexported fields
}

Buffer stocke l’ensemble des caractère saisis et la position du curseur.

func (*Buffer) Back

func (b *Buffer) Back() (string, bool)

Back supprime le caractère avant le curseur.

func (*Buffer) BackWord

func (b *Buffer) BackWord() (shifted string, ok bool)

BackWord supprime le mot avant le caractère.

func (*Buffer) Backn

func (b *Buffer) Backn(n int) (shifted string, ok bool)

Backn supprime n caractères à gauche du curseur. Si la suppression a bien été effectuée, il retourne la chaîne supprimée et vrai.

func (*Buffer) Begin

func (b *Buffer) Begin() (ok bool)

Begin déplace le curseur au début du buffer.

func (*Buffer) Clear

func (b *Buffer) Clear() (shifted string, ok bool)

Clear efface tout le buffer.

func (*Buffer) Clone

func (b *Buffer) Clone() *Buffer

Clone effectue une copie du buffer.

func (*Buffer) Cursor

func (b *Buffer) Cursor() int

Cursor retourne la position du curseur.

func (*Buffer) Del

func (b *Buffer) Del() (string, bool)

Del supprime le caractère sous le curseur.

func (*Buffer) DelWord

func (b *Buffer) DelWord() (shifted string, ok bool)

DelWord supprime le mot après le caractère.

func (*Buffer) Deln

func (b *Buffer) Deln(n int) (shifted string, ok bool)

Deln supprime n caractères à partir du curseur. Si la suppression a bien été effectuée, il retourne la chaîne supprimée et vrai.

func (*Buffer) End

func (b *Buffer) End() (ok bool)

End déplace le curseur à la fin du buffer.

func (*Buffer) Insert

func (b *Buffer) Insert(data ...rune)

Insert ajoute les caractères donnés à la position du curseur.

func (*Buffer) Left

func (b *Buffer) Left() (ok bool)

Left déplace le curseur d’un caractère vers la gauche.

func (*Buffer) Len

func (b *Buffer) Len() int

Len retourne le nombre de caractères du buffer.

func (*Buffer) Move

func (b *Buffer) Move(inc int) (ok bool)

Move déplace le curseur avec l’incrément donné. Si l’incrément est négatif, le déplacement se fait vers la gauche. Sinon, il se fait vers la droite. Si la position du curseur sort du buffer, retourne faux.

func (*Buffer) NextWord

func (b *Buffer) NextWord() (ok bool)

NextWord déplace le curseur au début du prochain mot.

func (*Buffer) PrevWord

func (b *Buffer) PrevWord() (ok bool)

PrevWord déplace le curseur au début du mot, ou au début du précédent mot si le curseur n’est pas positionné sur un mot.

func (*Buffer) RemoveBegin

func (b *Buffer) RemoveBegin() (shifted string, ok bool)

RemoveBegin supprime les caractères avant le curseur.

func (*Buffer) RemoveEnd

func (b *Buffer) RemoveEnd() (shifted string, ok bool)

RemoveEnd supprime les caractères apres le curseur, curseur compris.

func (*Buffer) Replace

func (b *Buffer) Replace(data ...rune)

Replace remplace les caractères du buffer à partir de la position du curseur par les caractères donnés. Si le buffer n’est pas assez grand, le buffer est agrandi.

func (*Buffer) Right

func (b *Buffer) Right() (ok bool)

Right déplace le curseur d’un caractère vers la droite.

func (*Buffer) String

func (b *Buffer) String() string

String retourne le contenu du buffer sous forme de chaîne de caractères.

func (*Buffer) Transpose

func (b *Buffer) Transpose() (ok bool)

Transpose transpose le caractère sous le curseur avec le caractère précédent. Si la transposition n’a pu se faire, il retourne faux.

type Char

type Char = rune

Char représente un caractère UTF-8 saisi via une touche ou une combinaison de touches.

type Cycler

type Cycler struct {
	// contains filtered or unexported fields
}

Cycler stocke les données possibles de l’autocomplétion

func NewCycler

func NewCycler(cycled bool, data ...string) *Cycler

NewCycler crée un nouveau cycler avec les données fournies. Si cycled est vrai, le cycler revient au début s’il a atteint la fin et inversement.

func (*Cycler) Append

func (c *Cycler) Append(data string)

Append ajoute une proposition au cycler.

func (*Cycler) Clear

func (c *Cycler) Clear()

Clear efface le cycler.

func (*Cycler) Cursor

func (c *Cycler) Cursor() int

Cursor retourne la position de l’élément pointé.

func (*Cycler) Index

func (c *Cycler) Index(i int) string

Index retourne l’élément selon son index.

func (*Cycler) Len

func (c *Cycler) Len() int

Len retourne le nombre de propositions du cycler.

func (*Cycler) Next

func (c *Cycler) Next() (ok bool)

Next incrémente le pointeur et retourne vrai si le pointeur pointe sur un élément.

func (*Cycler) Prev

func (c *Cycler) Prev() (ok bool)

Prev décrémente le pointeur et retourne vrai si le pointeur pointe sur un élément.

func (*Cycler) SetCursor

func (c *Cycler) SetCursor(n int) (ok bool)

SetCursor positionne le pointeur à l’index donné.

type History

type History struct {
	Cycler
}

History stocke l’historique des saisies.

func NewHistory

func NewHistory(cycled bool) *History

NewHistory retourne un nouvel historique. Si cycled est faux l’historique ne peut être parcouru en boucle.

func (*History) Append

func (h *History) Append(data string)

Append ajoute une entrée dans l’historique.

func (*History) Clear

func (h *History) Clear()

Clear efface l’historique.

func (*History) Next

func (h *History) Next() (ok bool)

Next incrémente le pointeur de l’historique et retourne vrai si le pointeur pointe vers un élément.

func (*History) Prev

func (h *History) Prev() (ok bool)

Prev décrémente le pointeur de l’historique et retourne vrai si le pointeur pointe vers un élément.

func (*History) Read

func (h *History) Read(r io.Reader) (n int, err error)

Read charge l’historique à partir d’un fichier et retourne le nombre d’entrées ajoutées et une erreur si l’import a échoué.

func (*History) SetCursor

func (h *History) SetCursor(n int) (ok bool)

SetCursor positionne le pointeur de l’historique.

func (*History) Write

func (h *History) Write(w io.Writer) (n int, err error)

Write persiste l’historique dans un fichier et retourne le nombre d’entrées ajoutées et une erreur si l’import a échoué.

type Key

type Key struct {
	// contains filtered or unexported fields
}

Key représente un caractère ou un séquence de caractères.

func (Key) Char

func (k Key) Char() Char

Char retourne un caractère.

func (Key) IsChar

func (k Key) IsChar() bool

IsChar retourne vrai si k représente un caractère.

func (Key) IsNil

func (k Key) IsNil() bool

IsNil retourne vrai si k n’est ni une séquence ni un caractère.

func (Key) IsSequence

func (k Key) IsSequence() bool

IsSequence retourne vrai si k représente une séquence.

func (Key) Sequence

func (k Key) Sequence() Sequence

Sequence retourne une séquence.

type Sequence

type Sequence rune

Sequence représente une séquence de caractères UTF-8 saisis via une touche ou une combinaison de touche.

const (
	Up    Sequence = iota + 'A' // ^[[A
	Down                        // ^[[B
	Right                       // ^[[C
	Left                        // ^[[D
)
const (
	Ins Sequence = iota + 2 // ^[[2~
	Del                     // ^[[3~

	PgUp   Sequence = 5   // ^[[5~
	PgDown          = 6   // ^[[6~
	End    Sequence = 'F' // ^[[F
	Home   Sequence = 'H' // ^[[H
)
const (
	F1 Sequence = iota + 'P' // ^[OP
	F2                       // ^[OQ
	F3                       // ^[OR
	F4                       // ^[OS
)
const (
	F5 Sequence = iota + 15 // ^[[15~

	F6  // ^[[17~
	F7  // ^[[18~
	F8  // ^[[19~
	F9  // ^[[20~
	F10 // ^[[21~

	F11 // ^[[23~
	F12 // ^[[24~
)
const (
	A_A Sequence = ('a' + iota) << 16 // ^[a
	A_B                               // ^[b
	A_C                               // ^[c
	A_D                               // ^[d
	A_E                               // ^[e
	A_F                               // ^[f
	A_G                               // ^[g
	A_H                               // ^[h
	A_I                               // ^[i
	A_J                               // ^[j
	A_K                               // ^[k
	A_L                               // ^[l
	A_M                               // ^[m
	A_N                               // ^[n
	A_O                               // ^[o
	A_P                               // ^[p
	A_Q                               // ^[q
	A_R                               // ^[r
	A_S                               // ^[s
	A_T                               // ^[t
	A_U                               // ^[u
	A_V                               // ^[v
	A_W                               // ^[w
	A_X                               // ^[x
	A_Y                               // ^[y
	A_Z                               // ^[z
)
const (
	AS_A Sequence = ('A' + iota) << 16 // ^[A
	AS_B                               // ^[B
	AS_C                               // ^[C
	AS_D                               // ^[D
	AS_E                               // ^[E
	AS_F                               // ^[F
	AS_G                               // ^[G
	AS_H                               // ^[H
	AS_I                               // ^[I
	AS_J                               // ^[J
	AS_K                               // ^[K
	AS_L                               // ^[L
	AS_M                               // ^[M
	AS_N                               // ^[N
	AS_O                               // ^[O
	AS_P                               // ^[P
	AS_Q                               // ^[Q
	AS_R                               // ^[R
	AS_S                               // ^[S
	AS_T                               // ^[T
	AS_U                               // ^[U
	AS_V                               // ^[V
	AS_W                               // ^[W
	AS_X                               // ^[X
	AS_Y                               // ^[Y
	AS_Z                               // ^[Z
)
const (
	MaskKey Sequence = 127 // Permet, en appliquant &, de récupérer la séquence sans les touches modificatrices
)

type State

type State struct {
	// contains filtered or unexported fields
}

State représente l’état d’un terminal.

func NewState

func NewState(hist ...console.History) *State

NewState retourne un nouvel état de terminal.

func (*State) AppendHistory

func (st *State) AppendHistory(line string)

AppendHistory ajoute une entrée dans l’historique.

func (*State) AppendYank

func (st *State) AppendYank(yank string)

AppendYank ajoute une entrée dans la liste des éléments copiables.

func (*State) Back

func (st *State) Back() bool

Back supprime le caractère situé avant le curseur.

func (*State) BackWord

func (st *State) BackWord() bool

BackWord supprime le mot avant le curseur.

func (*State) Beep

func (st *State) Beep()

Beep émet un bip.

func (*State) Begin

func (st *State) Begin() bool

Begin déplace le curseur au début du buffer.

func (*State) Buffer

func (st *State) Buffer() (string, int)

Buffer retourne la représentation du buffer et la position du curseur dans le buffer.

func (*State) BufferLen

func (st *State) BufferLen() int

BufferLen retourne le nombre de caractères du buffer.

func (*State) Cancel

func (st *State) Cancel() (ok bool)

Cancel annule l’historique, la recherche ou la copie en cours.

func (*State) Clear

func (st *State) Clear() bool

Clear efface le buffer.

func (*State) ClearHistory

func (st *State) ClearHistory()

ClearHistory efface l’historique.

func (*State) Close

func (st *State) Close() error

Close retourne à l’état originel du terminal.

func (*State) Del

func (st *State) Del() bool

Del supprime le caractère sous le curseur.

func (*State) DelWord

func (st *State) DelWord() bool

DelWord supprime le mot après le curseur.

func (*State) End

func (st *State) End() bool

End déplace le curseur à la fin du buffer.

func (*State) FixState

func (st *State) FixState() (ok bool)

FixState s’assure que le buffer est désormais fixé.

func (*State) HistoryNext

func (st *State) HistoryNext() (ok bool)

HistoryNext redescend dans l’historique.

func (*State) HistoryPrev

func (st *State) HistoryPrev() (ok bool)

HistoryPrev remonte dans l’historique.

func (*State) InputWaiting

func (st *State) InputWaiting() bool

InputWaiting retourne vrai si une saisie est en attente de traitement.

func (*State) Insert

func (st *State) Insert(data ...Char) (ok bool)

Insert insert (ou remplace, suivant le mode actuel) les caractères donnés dans le buffer.

func (*State) IsHistoryMode

func (st *State) IsHistoryMode() (ok bool)

IsHistoryMode retourne vrai si on est en mode parcours de l’historique.

func (*State) IsHistorySearchMode

func (st *State) IsHistorySearchMode() (ok bool)

IsHistorySearchMode retourne vrai si on est en mode recherche dans l’historique.

func (*State) IsReplaceMode

func (st *State) IsReplaceMode() (ok bool)

IsReplaceMode retourne vrai si on est en mode remplacement.

func (*State) IsTmpMode

func (st *State) IsTmpMode() (ok bool)

IsTmpMode retourne vrai si le buffer peut être restauré à un état précédent.

func (*State) IsYankMode

func (st *State) IsYankMode() (ok bool)

IsYankMode retourne vrai si on est en mode collage.

func (*State) Left

func (st *State) Left() bool

Left déplace le curseur vers la gauche.

func (*State) LoadHistory

func (st *State) LoadHistory(r io.Reader) (int, error)

LoadHistory charge l’historique à partir d’un fichier.n

func (*State) Next

func (st *State) Next() (key Key, err error)

Next retourne la prochaine saisie de touche ou de combinaison de touches.

func (*State) NextWord

func (st *State) NextWord() bool

NextWord déplace le curseur au début du mot suivant.

func (*State) PrevWord

func (st *State) PrevWord() bool

PrevWord déplace le curseur au début du mot précédent.

func (*State) Print

func (st *State) Print(str string, cursor int) error

Print imprime le prompt suivie de la chaîne spécifié et place le curseur à la position indiquée (commence à 0 à partir du début de la chaîne).

func (*State) RemoveBegin

func (st *State) RemoveBegin() bool

RemoveBegin supprime les caractères avant le curseur.

func (*State) RemoveEnd

func (st *State) RemoveEnd() bool

RemoveEnd supprime les caractères après le curseur, curseur compris.

func (*State) RemoveHistorySearch

func (st *State) RemoveHistorySearch() (ok bool)

RemoveHistorySearch supprime la recherche d’historique.

func (*State) RemoveSavedBuffer

func (st *State) RemoveSavedBuffer() (ok bool)

RemoveSavedBuffer supprime le buffer de sauvegarde.

func (*State) Restart

func (st *State) Restart()

Restart redémarre la possibilité de saisir des caractères.

func (*State) RestoreBuffer

func (st *State) RestoreBuffer() (ok bool)

RestoreBuffer restaure le buffer à partir de sa sauvegarde précédente.

func (*State) Return

func (st *State) Return()

Return ajoute une nouvelle ligne.

func (*State) Right

func (st *State) Right() bool

Right déplace le curseur vers la droite.

func (*State) SaveBuffer

func (st *State) SaveBuffer(force ...bool) (ok bool)

SaveBuffer enregistre le buffer actuel. Si force, force l’enregistrement du buffer même s’il y a une sauvegarde existante.

func (*State) SaveHistory

func (st *State) SaveHistory(w io.Writer) (int, error)

SaveHistory persiste l’historique dans un fichier.

func (*State) SearchHistoryNext

func (st *State) SearchHistoryNext(insensitive ...bool) (ok bool)

SearchHistoryNext remonte dans l’historique de recherche. L’historique de recherche est initialisée avec le préfixe du buffer.

func (*State) SearchHistoryPrev

func (st *State) SearchHistoryPrev(insensitive ...bool) (ok bool)

SearchHistoryPrev redescend dans l’historique de recherche. L’historique de recherche est initialisée avec le préfixe du buffer.

func (*State) SetBuffer

func (st *State) SetBuffer(value string) bool

SetBuffer réinitialise le buffer avec la chaîne donnée.

func (*State) SetPrompt

func (st *State) SetPrompt(p string) error

SetPrompt enregistre le prompt à utiiser. Si le prompt contient des caractères non imprimables, retourne une erreur.

func (*State) Start

func (st *State) Start()

Start lance l’initialisation du terminal.

func (*State) Stop

func (st *State) Stop()

Stop retourne à l’état originel du terminal.

func (*State) ToggleReplace

func (st *State) ToggleReplace()

ToggleReplace se place en mode remplacement si on était on mode insertion et vice-versa.

func (*State) Transpose

func (st *State) Transpose() bool

Transpose transpose le caractère sous le curseur avec le caractère précédent.

func (*State) UnfocusHistory

func (st *State) UnfocusHistory() (ok bool)

UnfocusHistory supprime le pointage vers un élément de l’historique.

func (*State) UnfocusYank

func (st *State) UnfocusYank() (ok bool)

UnfocusYank supprime le pointage vers un élément copiable.

func (*State) Width

func (st *State) Width() int

Width retourne la largeur du terminal.

func (*State) Yank

func (st *State) Yank() (ok bool)

Yank colle le dernier élément copié.

func (*State) YankPrev

func (st *State) YankPrev() (ok bool)

YankPrev colle dans le buffer le précédent élément copié.

type TerminalSize

type TerminalSize struct {
	// contains filtered or unexported fields
}

func GetTerminalSize

func GetTerminalSize() (ts TerminalSize, ok bool)

GetTerminalSize retourne les dimensions actuelles du terminal.

func (TerminalSize) Height

func (ts TerminalSize) Height() int

func (TerminalSize) Width

func (ts TerminalSize) Width() int

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL