consola

package
v0.3.0 Latest Latest
Warning

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

Go to latest
Published: Jan 19, 2025 License: CC-BY-SA-4.0 Imports: 12 Imported by: 0

Documentation

Overview

Utilidades de formateo de cadenas para escribir a terminales.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func ImprimirCadena

func ImprimirCadena(c Cadena, s *Salida) error

func Limpiar

func Limpiar()

func NuevaConsola

func NuevaConsola(fe *os.File, fs *os.File) *consola

func Separador

func Separador(f *os.File) string

Types

type Cadena

type Cadena = cadena.Cadena

type Consola

type Consola interface {
	io.ReadWriter
	Leer(Cadena) (Cadena, error)
	LeerContraseña(Cadena) (Cadena, error)
	LeerTecla(*[]byte) (int, error)

	Imprimir() error
	ImprimirLinea(Cadena) error
	ImprimirCadena(Cadena) error
	BorrarLinea() error
	//ImprimirString(string) error
	ImprimirBytes([]byte) error
	EscribirLinea(Cadena) error
	EscribirCadena(Cadena) error
	//EscribirString(string) error
	ImprimirSeparador()
	EscribirBytes([]byte) error
	EsTerminal() bool

	ImprimirError(Cadena, error) error
	ImprimirFatal(Cadena, error) error
	ImprimirAdvertencia(Cadena, error) error

	FSalida() *os.File
	FEntrada() *os.File
}

type Entrada

type Entrada struct {
	*bufio.Reader
	// contains filtered or unexported fields
}

Entrada es un *bufio.Reader que guarda una referencia al *os.File subyacente utilzado para constuir el Reader, junto con una bandera que determina si ese File es una terminal. Implementa una serie de métodos como comodidades para leer desde ese Reader:

func NuevaEntrada

func NuevaEntrada(f *os.File) *Entrada

func (Entrada) DevolverTamaño

func (e Entrada) DevolverTamaño() (int, int, error)

Devuelve el tamaño de la terminal asociada a e.f Si e.f no es una terminal, devulve 0,0 para el tamaño, y err.

func (Entrada) EsTerminal

func (e Entrada) EsTerminal() bool

func (Entrada) Fd

func (e Entrada) Fd() uintptr

type EntradaSalida

type EntradaSalida struct {
	Entrada
	Salida
	// contains filtered or unexported fields
}

func NuevaEntradaMultiSalida

func NuevaEntradaMultiSalida(
	fe *os.File,
	w *bufio.Writer,
	fs *os.File,
) *EntradaSalida

func NuevaEntradaSalida

func NuevaEntradaSalida(
	fe *os.File,
	fs *os.File,
) *EntradaSalida

type Opciones

type Opciones = []string

type Parametros

type Parametros = map[string]any

type Progreso

type Progreso = progressbar.ProgressBar

type Salida

type Salida struct {
	*bufio.Writer
	// contains filtered or unexported fields
}

func NuevaMultiSalida

func NuevaMultiSalida(w *bufio.Writer, f *os.File) *Salida

Crea una *Salida a partir de un *bufio.Writer y un *os.File (pensado para utilizar con io.MultiWriter declarando el File autoritativo)

Ejemplo:

var buf bytes.Buffer
lector := bufio.NewWriter(io.MultiWriter(&buf, os.Stdout))
multiSalida := NuevaMultiSalida(lector, os.Stdout)

Todas las operaciones de escritura se duplicaran entre buf y os.Stdout, pero se considerará os.Stdout como la salida subyacente autoritativa para todos los procedimientos que dependen de Salida.f

func NuevaSalida

func NuevaSalida(f *os.File) *Salida

Crea una *Salida a partir de un *os.File

func (Salida) BorrarLinea

func (s Salida) BorrarLinea() error

func (Salida) DevolverTamaño

func (s Salida) DevolverTamaño() (int, int, error)

Devuelve el tamaño de la terminal asociada a s.f Si s.f no es una terminal, devulve 0,0 para el tamaño, y err.

func (Salida) EsTerminal

func (s Salida) EsTerminal() bool

func (*Salida) EscribirCadena

func (s *Salida) EscribirCadena(c Cadena) error

func (Salida) Fd

func (s Salida) Fd() uintptr

func (*Salida) ImprimirCadena

func (s *Salida) ImprimirCadena(c Cadena) error

func (Salida) ImprimirSeparador

func (s Salida) ImprimirSeparador()

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL
JackTT - Gopher 🇻🇳