Cómo grabar y compartir sesiones de la terminal con Terminalizer en Ubuntu

Introducción

Terminalizer es una aplicación de grabadora de la terminal que te permite grabar tu sesión de la terminal en tiempo real. La grabación puedes reproducirla en una fecha posterior. Funciona de la misma manera que una grabadora de pantalla de escritorio, pero en su lugar se ejecuta en tu terminal.

Grabar tu sesión de la terminal es útil si deseas revisar una actividad particular nuevamente, o para ayudar a depurar un error particularmente complicado. Las grabaciones realizadas con Terminalizer también se pueden exportar como GIF animados. Estas grabaciones son excelentes para compartir en línea o agregar material de marketing para tu software.

En este tutorial, instalarás Terminalizer, lo usarás para grabar y reproducir sesiones de la terminal, personalizarás tus grabaciones y luego las exportarás para compartirlas en línea.

Prerrequisitos

Para completar este tutorial, necesitarás:

Si deseas compartir tus grabaciones en línea, también necesitarás:

Una vez que tengas estos listos, debes iniciar sesión en tu servidor como usuario no root para comenzar.

Paso 1 – Instalar Terminalizer

En este paso, descargarás e instalarás Terminalizer en tu sistema. Terminalizer está escrito en Node.js, y está disponible para instalar usando el administrador de paquetes npm.

Para instalar Terminalizer globalmente en tu sistema, debes ejecutar el siguiente comando:

Terminalizer utiliza el framework de aplicación Electron para exportar sesiones de la terminal grabadas en formato GIF. El argumento –unsafe-perms=true del comando es necesario para instalar Electron globalmente en tu sistema.

Una vez que se haya instalado Terminalizer, verás una salida similar a la siguiente:

Luego, debes verificar tu instalación de Terminalizer ejecutando:

Esto mostrará algo similar a lo siguiente:

Finalmente, generarás un archivo de configuración de Terminalizer predeterminado, que puede usar para la personalización avanzada de Terminalizer (detallado más adelante en el Paso 4):

Esto producirá una salida similar a la siguiente:

Ahora que haz instalado Terminalizer, puedes hacer tu primera grabación de la terminal.

Paso 2 – Grabar y reproducir una sesión de la terminal

En este paso, grabarás y reproducirás una sesión de la terminal.

Para comenzar, debes configurar una nueva grabación de Terminalizer con el nombre que elijas:

Esto generará lo siguiente para indicar que la grabación ha comenzado:

Ahora puedes proceder a hacer lo que quieras dentro de tu terminal. Cada pulsación de tecla y comando se registrará en tiempo real por Terminalizer.

Por ejemplo:

Cuando desees detener la grabación, debes presionar CTRL+D. Terminalizer entonces guardar la grabación en el archivo especificado en formato YAML, por ejemplo, your-recording.yml.

Puede que Terminalizer te solicite que compartas tu grabación en línea. Simplemente presiona CTRL+C para cancelar esto por ahora, ya que puedes reproducir la grabación de la terminal localmente primero.

A continuación, reproduce tu sesión de terminal grabada con el comando siguiente:

Esto reproducirá la sesión grabada en tiempo real en tu terminal:

También puedes ajustar la velocidad de reproducción de tu grabación usando la opción –speed-factor.

Por ejemplo, lo siguiente reproducirá tu grabación el doble de lento (media velocidad):

Alternativamente, puedes reproducir tu grabación dos veces más rápido (doble velocidad):

Has grabado y reproducido una sesión de la terminal. A continuación, podrás compartir una sesión de la terminal grabada en línea.

Paso 3 – Compartir una sesión de terminal grabada

En este paso, compartirás tu sesión de la terminal grabada en línea en la página Explorador de Terminalizer.

Debes comenzar seleccionando una sesión grabada para compartir:

Luego se te pedirá que proporciones algunos metadatos básicos sobre tu grabación, como el título y la descripción:

Advertencia: las grabaciones de Terminalizer se comparten públicamente de manera predeterminada. Asegúrate de que no haya detalles de identificación personal o confidenciales presentes en la grabación de tu terminal que no desees compartir.

Si es la primera vez que compartes una sesión grabada con Terminalizer, deberás vincular tu cuenta de Terminalizer. Terminalizer mostrará un enlace de verificación si es necesario:

Advertencia: Asegúrate de mantener tu token de Terminalizer privado, ya que permitirá que cualquier persona que lo posea accederá a tu cuenta de Terminalizer.

Una vez que hayas visitado el enlace en tu navegador web e iniciado sesión en tu cuenta de Terminalizer, debes presionar cualquier tecla para continuar.

Terminalizer ahora cargará tu grabación y te proporcionará el enlace para verla:

Visitar el enlace en un navegador web de escritorio te permitirá ver tu grabación compartida:

Has compartido una sesión de la terminal grabada en el sitio web de Terminalizer y la has visto en tu navegador web.

Paso 4 – Ajustes de la configuración avanzada de Terminalizer

Ahora que te has familiarizado con Terminalizer, puedes comenzar a revisar algunas de las opciones de personalización más avanzadas. Por ejemplo, la capacidad de ajustar los colores y el estilo de la pantalla.

Cada grabación hereda la configuración predeterminada del archivo de configuración de Terminalizer global, que se encuentra en ~/.terminalizer/config.yml.

Esto significa que puedes editar la configuración para grabaciones individuales directamente editando el archivo de grabación (por ejemplo your-recording.yml). Alternativamente, puedes editar la configuración global, lo que tendrá un impacto en todas las grabaciones nuevas.

En este ejemplo, editarás el archivo de configuración global, pero la misma guía se aplica también a los archivos de configuración de grabación individuales.

Debes comenzar abriendo el archivo de configuración global de Terminalizer en tu editor de texto, como nano:

Cada una de las opciones de configuración disponibles dentro del archivo se comentan para explicar lo que hacen.

Opciones

Hay varias opciones de configuración comunes que quizás desees ajustar a tu gusto:

  • cols: Establecer explícitamente el número de columnas de la terminal utilizadas para tu grabación.
  • rows: Establecer explícitamente el número de filas de terminales utilizadas para tu grabación.
  • frameDelay: Anula el retraso entre cada pulsación de tecla durante la reproducción.
  • maxIdleTime: Especifica un tiempo máximo entre pulsaciones de teclas durante la reproducción.
  • cursorStyle: Especifica el valor por defecto de bornes de estilo del cursor block, bar y underline.
  • fontFamily: Especifica una lista de fuentes de reproducción preferidas, en orden de preferencia.
  • theme: Ajusta la combinación de colores de la reproducción, por ejemplo, para crear una terminal negra sobre blanco, etc.

Como ejemplo, puedes lograr una pantalla de terminal blanca sobre negro configurando las siguientes opciones:

Esto producirá un resultado similar al siguiente:

Puedes ajustar el estilo del cursor para que la grabación sea más fácil de entender. Por ejemplo, cambiando el cursor de estilo de bloque predeterminado por uno subrayado:

Esto produce un resultado similar al siguiente:

Una vez que hayas realizado los cambios deseados, debes guardar el archivo y regresar a tu terminal.

Si editaste la configuración global del Terminalizer, esta configuración se aplicará a todas las grabaciones nuevas en el futuro. Si estás editando una configuración de grabación específica, Terminalizer aplicará inmediatamente los cambios a esa grabación en particular.

Tenga en cuenta que el estilo de reproducción personalizada solo se aplica a las sesiones de grabación compartidas. Reproducirlos directamente en tu terminal siempre usará su estilo de terminal y esquema de color predeterminados.

En este paso final, revisaste algunas de las opciones de configuración avanzada para Terminalizer.

Conclusión

En este artículo usaste Terminalizer para grabar y compartir una sesión de terminal. Ahora tienes los conocimientos necesarios para crear demostraciones grabadas de tu software para su uso en material de marketing. Asimismo, para compartir trucos de línea de comandos con amigos.

Si deseas renderizar y exportar grabaciones de Terminalizer a formato GIF, puedes instalar Terminalizer en una máquina con una interfaz gráfica de usuario/escritorio y utilizar las funciones de representación integradas:

También es posible que desees navegar por el sitio web de Terminalizer para ver sesiones de terminal grabadas compartidas por otros usuarios: