Componentes de Consolas y Terminales

 Componentes de Consolas y Terminales

  • Shell: Interpreta y ejecuta los comandos ingresados (ej., Bash, Zsh).
  • Prompt: Indica que la terminal está lista para recibir comandos.
  • Comandos: Instrucciones que el usuario escribe para realizar una acción.
  • Argumentos: Parámetros que se pasan a los comandos para especificar opciones o detalles adicionales.
  • Salida Estándar (stdout): Donde se muestran los resultados de los comandos.
  • Error Estándar (stderr): Donde se muestran los mensajes de error.
  • Entrada Estándar (stdin): Donde se reciben las entradas del usuario.

 

Librerías Utilizadas en el Desarrollo de Consolas y Terminales

  1. readline (Node.js): Interfaz para leer datos de una secuencia de entrada (stdin).
  2. xterm.js: Terminal embebida para aplicaciones web.
  3. blessed: Biblioteca para crear interfaces de usuario en la terminal.
  4.  commander: Para construir interfaces de línea de comandos.
  5. inquirer: Librería para crear interfaces de usuario interactivas en la línea de comandos.
  6. chalk: Estiliza la salida en la terminal con colores y otros atributos.
  7. shelljs: Para ejecutar comandos de shell en Node.js.

 

Lista de Consolas con sus Repositorios GitHub, URL, y CDN

  1. Windows Terminal

  2. ConEmu

  3. Hyper

  4. Terminator

  5. Alacritty

  6. iTerm2 (macOS)

 

Estructura Según Códigos de Programación

Ejemplo Básico de una Terminal Personalizada en JavaScript con Node.js:


// terminal.js
const readline = require('readline');

const rl = readline.createInterface({
  input: process.stdin,
  output: process.stdout,
  prompt: '> '
});

console.log('Custom Terminal');
rl.prompt();

rl.on('line', (line) => {
  switch(line.trim()) {
    case 'hello':
      console.log('Hello, World!');
      break;
    case 'exit':
      rl.close();
      break;
    default:
      console.log(`Unknown command: ${line.trim()}`);
      break;
  }
  rl.prompt();
}).on('close', () => {
  console.log('Exiting terminal');
  process.exit(0);
});

 

Ejemplo Básico de una Terminal en Node.js usando el módulo readline:


const readline = require('readline');

const rl = readline.createInterface({
  input: process.stdin,
  output: process.stdout
});

rl.question('Enter a command: ', (answer) => {
  console.log(`You entered: ${answer}`);
  rl.close();
});

....

...