GNU/Linux >> Tutoriales Linux >  >> Linux

Por qué uso rxvt como mi terminal

Soy fanático de Konsole y GNOME Terminal, y los uso regularmente. Son grandes proyectos y representan terminales modernas que satisfacen las necesidades de los usuarios que pasan el día en un shell, así como de los usuarios que solo se sumergen en un shell de Unix de vez en cuando. Se integran muy bien en un entorno de escritorio, cerrando la brecha entre las tareas comunes de GUI y las tareas comunes de shell. Uso GNOME Terminal en el trabajo y Konsole en casa, y disfruto de ambos. Sin embargo, después de conocer el terminal rxvt-unicode, su simplicidad, portabilidad y extensibilidad me han mantenido como usuario desde que comencé a usarlo con Slackware Linux 12.

He aquí por qué y, lo que es más importante, cómo uso rxvt como mi terminal predeterminado.

Es ligero

Más recursos de Linux

  • Hoja de trucos de los comandos de Linux
  • Hoja de trucos de comandos avanzados de Linux
  • Curso en línea gratuito:Descripción general técnica de RHEL
  • Hoja de trucos de red de Linux
  • Hoja de trucos de SELinux
  • Hoja de trucos de los comandos comunes de Linux
  • ¿Qué son los contenedores de Linux?
  • Nuestros últimos artículos sobre Linux

Uno de mis trucos de presupuesto personal (y contribuciones a la idea ecológica de reparar y reutilizar) es nunca comprar hardware nuevo, sino "rescatar" una computadora perfectamente utilizable para mi computadora portátil personal. (Mi computadora portátil personal era una iBook 2004 "reciclada" que ejecutaba Debian Linux hasta que su pantalla se volvió irreparable en 2017). aplicaciones ligeras. Estas aplicaciones, incluido el escritorio en sí, apenas tocan los preciosos recursos del sistema que normalmente están limitados en las computadoras antiguas. La terminal rxvt es relativamente pequeña; un poco más pesado que xterm pero mucho menos exigente que GNOME Terminal y Konsole.

Es distinto

Un terminal simple ayuda a separar las funciones del escritorio (como arrastrar y soltar, que rxvt no proporcionar) desde funciones de terminal (cosas que puede hacer, por ejemplo, a través de SSH). Los usuarios nuevos en el trabajo en sistemas remotos pueden confundirse acerca de lo que representa el terminal, especialmente cuando está tan bien integrado en el resto de sus computadoras. A veces, es útil mantener una separación clara entre el entorno local y los sistemas remotos. Por supuesto, esto no es en absoluto intencionado; Podría decirse que es una deficiencia de rxvt y emuladores de terminales simples similares que no aceptan acciones de arrastrar y soltar ni proporcionan menús contextuales sofisticados (más sobre esto más adelante), pero puede ser un beneficio sorprendente.

Además, aprender una interfaz de terminal simple lo obliga a expandir lo que considera una interfaz utilizable. Una vez que haya aprendido a usar rxvt de manera efectiva, es posible que Eshell y xterm, e incluso la humilde interfaz TTY, cumplan su propósito. Aprendes a usar terminales de baja especificación porque tu idea de lo que un terminal necesita y lo que es bueno tener se ha desplazado hacia la simplicidad.

Instalando rxvt

La bifurcación de rxvt que recomiendo generalmente se llama rxvt-unicode en los repositorios de software y puede proporcionar un lanzador llamado URxvt o similar. Es una aplicación pequeña y no requiere mucho para compilarse a partir del código fuente, pero la mayoría de las distribuciones de Linux la proporcionan, por lo que puede instalarse con su administrador de paquetes.

En Fedora, CentOS o RHEL:

$ sudo dnf install rxvt-unicode

En Debian y Ubuntu:

$ sudo apt install rxvt-unicode

En otros, como Slackware, es posible que rxvt ya esté incluido.

La interfaz rxvt predeterminada es (engañosamente) simple y bastante sencilla.

Es posible que esté acostumbrado a ajustar sus interfaces usando un panel de Preferencias en GNOME Terminal o Konsole, pero para rxvt, realiza cambios en un archivo de texto.

Personalizar rxvt

Una de las bellezas de rxvt es su archivo de configuración de texto sin formato que contiene propiedades xrdb. El subsistema xrdb es la utilidad de la base de datos de recursos del servidor X, que administra las preferencias del usuario para las aplicaciones X11. Es costumbre colocar sus preferencias en un archivo llamado ~/.Xdefaults y luego fusionar esas preferencias en la base de datos xrdb.

La personalización más sencilla son los colores básicos. Para ver qué colores y otras propiedades puede definir en rxvt, consulte la página del manual:

$ man urxvt

Para personalizar la apariencia de sus ventanas, la página de manual identifica el prefijo URxvt seguido de los colores 0 hasta 15 . Usando códigos hexadecimales de cualquier selector de color de Linux, puede establecer su propio tono para cada color ANSI. Aquí hay un tema solarizado, con comentarios:

! solarized theme
! foreground/background
! black
URxvt.color0  : #000000
URxvt.color8  : #555555
! red
URxvt.color1  : #AA0000
URxvt.color9  : #FF5555
! green
URxvt.color2  : #00AA00
URxvt.color10 : #55FF55
! yellow
URxvt.color3  : #AB4400
URxvt.color11 : #FFFF44
! blue
URxvt.color4  : #0000AA
URxvt.color12 : #5555FF
! magenta
URxvt.color5  : #AA00AA
URxvt.color13 : #FF55FF
! cyan
URxvt.color6  : #00AAAA
URxvt.color14 : #55FFFF
! white
URxvt.color7  : #AAAAAA
URxvt.color15 : #FFFFFF

Con tantos colores para su texto, es posible que prefiera un fondo oscuro. Con rxvt-unicode, incluso puede configurar un fondo parcialmente transparente con algún porcentaje de opacidad (100 es completamente opaco y 0 es invisible).

URxvt*background: [90]#000000
URxvt*depth: 32
URxvt*foreground: #FFFFFF

También puede configurar el texto en cualquier fuente que haya instalado en su sistema. Por ejemplo, para configurar su fuente a Fantasque Sans Mono en 21 puntos:

URxvt*font: xft:FantasqueSansMono-Regular:pixelsize=21:antialias=true
URxvt*boldFont: xft:FantasqueSansMono-Bold:pixelsize=21:antialias=true
URxvt*italicFont: xft:FantasqueSansMono-Italic:pixelsize=21:antialias=true
URxvt*letterSpace: -1

Para implementar cambios en .Xdefaults , ejecuta el xrdb comando:

$ xrdb -merge .Xdefaults

Luego reinicie xrvt. Estos son los resultados (observe que el fondo de pantalla de mi escritorio se ve ligeramente):

También puede personalizar la apariencia de la barra de desplazamiento:

! scrollbar style - rxvt (default), 
! plain (compact), NeXT, or xtermn
URxvt.scrollstyle: plain
URxvt.scrollBar_right: True

Hay muchas más opciones disponibles, enumeradas en el manual de rxvt, así que pruebe las que le atraigan. Para ver todos los URxvt. propiedades, escriba:

urxvt --help

Mientras prueba rxvt, puede notar que no es compatible con ciertas convenciones modernas, como Ctrl +C para copiar, Ctrl +V para pegar, arrastrar y soltar, un menú contextual con el botón derecho del ratón, etc. Sin embargo, las cosas no son necesariamente lo que parecen:rxvt tiene un rico conjunto de características; simplemente están "ocultos" (al menos desde un punto de vista moderno) en un paradigma al que quizás no estés acostumbrado.

Copiar y pegar

Cuando desee copiar y pegar, hay algunas formas diferentes de hacerlo. La forma "obvia" para un usuario experimentado de Linux es con el truco del sistema X Window de hacer clic en el botón central del mouse para pegar el contenido de su portapapeles principal. Sin embargo, rxvt ofrece más que eso:mantenga presionada Ctrl +Botón derecho del ratón sobre una selección en rxvt, y aparece un menú contextual con opciones para copiar y pegar. Una vez que aparezca el menú, puede soltar el Ctrl pero debe mantener presionado el botón derecho del mouse hasta que haga su selección.

Convertir líneas nuevas en espacios

A veces, escribe una función o un bucle en su shell, o copia uno de un sitio web, pero luego decide que necesita editarlo antes de ejecutarlo. El problema es que un comando con saltos de línea se anota con > caracteres:

$ for i in {0..12}; do
> echo $i
> done
$

Cuando lo pegas en tu terminal, nuevo > se insertan caracteres en cada carácter de nueva línea, lo que resulta en esto:

$ for i in {0..12}; do
> > echo $i
> > done
$

Puede editarlos, pero es un poco engorroso trabajar entre líneas en una terminal porque usa las flechas hacia arriba y hacia abajo para recorrer su historial. Puede ejecutar el comando y luego volver al historial, lo que convierte los comandos de varias líneas en una sola línea, pero no siempre desea ejecutar un comando para poder editarlo.

Al pegar algo de un sitio web, puede encontrarse con un problema relacionado:una secuencia de comandos puede no tener > símbolos, pero probablemente tengan caracteres de nueva línea incrustados que, cuando se pegan, solicitan a su terminal que ejecute el comando de inmediato.

Una buena característica adicional en rxvt es la nueva línea a los espacios opción en la Selección menú. Esto edita el contenido de su portapapeles para que los caracteres de nueva línea se conviertan en espacios, lo que significa que un bloque de código se reduce a una línea fácilmente editable cuando lo pega en rxvt. Los comandos que está pegando desde un sitio web pierden los caracteres de nueva línea incrustados, por lo que no se ejecutan automáticamente después de pegarlos. Esto no convertir > caracteres a espacios, por lo que aún tendrá que editarlos si están allí, pero eso es mucho más fácil con todo en una sola línea:

$ for i in {0..12}; do > echo $i > done

Las nuevas líneas a espacios La función es una de esas funciones menores que uso todo el tiempo porque casi siempre me dejo notas en las carpetas sobre qué comando se debe ejecutar para realizar alguna tarea irregular que solo hago ocasionalmente. Inevitablemente, termino queriendo modificar el comando cuando lo vuelvo a ejecutar, por lo que es bueno poder asegurarse de que el comando sea fácil de editar antes de ejecutarlo. Esta característica por sí sola puede ser la verdadera razón por la que me he quedado con rxvt todos estos años.

Menú de configuración

Para acceder rápidamente a las opciones comunes de configuración del terminal, presione Ctrl +Botón central del ratón para alternar las Opciones menú encendido y apagado. Este menú le permite configurar si su cursor parpadea, si el terminal usa una campana visual y muchas otras preferencias que se pueden configurar en su .Xdefaults expediente. A diferencia de la Selección menú, este menú persiste como un menú flotante hasta que presione Ctrl +Botón central del ratón de nuevo.

Lanzamiento de trucos

Otra gran característica de rxvt es que se puede personalizar rápidamente en el momento del lanzamiento con opciones de comando. Uso esto cada vez que sé que voy a pasar mucho tiempo en una sesión SSH con un host remoto, porque quiero que quede muy claro qué terminal contiene qué sesión (no hay nada peor que un apagado de Sudo comando emitido al servidor de producción en lugar del servidor de desarrollo). Independientemente de cómo haya tematizado su rxvt predeterminado, puede iniciar un terminal rxvt con cualquier variedad de colores de primer plano, fondo y cursor (-fg , -bg y -cr , respectivamente). También puede agregar un borde para mayor énfasis:

$ urxvt -fg green -cr green -bd green &

Tiendo a simplificar las cosas:uso el rojo para un servidor de producción, el verde para un servidor de desarrollo y el amarillo para una prueba o algún otro sistema remoto.

Hay muchas opciones que puede usar para anular sus valores predeterminados en el lanzamiento. Para verlos todos, consulte el manual de rxvt.

Pestañas

La terminal rxvt es extensible a través de Perl. Ya sea que conozca Perl o no, es en gran parte irrelevante, porque muchas de las funciones proporcionadas por Perl ya están incluidas con rxvt en /usr/lib64/urxvt/perl/ .

Una de mis extensiones favoritas es la interfaz con pestañas, que es una convención relativamente moderna de emuladores de terminal de la que nadie debería prescindir, incluidos los usuarios de rxvt. Para activar la interfaz con pestañas en rxvt, abra ~/.Xdefaults y agregue estas líneas de configuración:

!TABS
URxvt.perl-ext-common : default,tabbed
URxvt.tabbed.tabbar-fg: 2
URxvt.tabbed.tabbar-bg: 0
URxvt.tabbed.tab-fg:    3
URxvt.tabbed.tab-bg:    0

Combine su configuración con xrdb y luego reinicie rxvt.

Después de reiniciar, tiene un índice de pestañas en la parte superior de su terminal. Las entradas predeterminadas son [NUEVO] y 1 . Se puede hacer clic en estas entradas. Puede hacer clic en [NUEVO] entrada para abrir una nueva pestaña, y puede hacer clic en un número para cambiar a esa pestaña.

También puedes interactuar con tus pestañas usando el teclado:

  • Cambio +flecha hacia abajo abre una nueva pestaña
  • Cambio +Flecha izquierda activa la pestaña anterior
  • Cambio +Flecha derecha activa la siguiente pestaña
  • Ctrl +Flecha izquierda mueve la pestaña actual a la izquierda
  • Ctrl +Flecha derecha mueve la pestaña actual a la derecha
  • Ctrl +D cierra la pestaña actual

Hay muchas más extensiones de Perl que puede y debe probar. Por ejemplo, la extensión Kuake muestra y oculta su terminal rxvt al presionar una tecla de acceso rápido global (Ctrl +F10 por defecto).

Haga clic en navegación

La mayoría de las terminales no actúan como editores de texto, aunque es más o menos lo que parecen. Por ejemplo, si inicia un comando como echo ello y luego decide que querías escribir hola , no puede simplemente hacer clic en la e para enviar el cursor allí para una edición rápida. En su lugar, debe presionar la Flecha izquierda tecla cuatro veces, o tal vez conoces el atajo Alt +B para hacer una copia de seguridad de una cadena. La terminal rxvt cambia eso.

En rxvt, puede presionar Shift +Botón izquierdo del ratón para cambiar la posición del cursor en cualquier lugar de la misma línea de un comando que está escribiendo. La forma en que rxvt logra esto es calculando y luego emitiendo el número de pulsaciones de tecla de cursor izquierdo o cursor derecho requeridas para que el cursor cambie su ubicación. El resultado es una experiencia familiar para cualquiera que haya usado alguna vez un editor de texto, y es una comodidad pequeña y rápida que llegará a apreciar incluso si no la usa todo el tiempo (después de todo, requiere sus dedos para aléjate de tus llaves).

Características, características, características

Hay más funciones en rxvt que las que se enumeran aquí. La forma de encontrarlos es usar rxvt como tu terminal y buscar formas de resolver las cosas que te molestan de trabajar en una terminal o trabajar con una vieja "desactualizada" como rxvt. Te sorprenderá lo que encuentres.


Linux
  1. Por qué uso Linux para administrar mi estudio de yoga

  2. Linux:¿por qué usamos Su y no solo Su?

  3. ¿Por qué no puedo usar Cd en un script Bash?

  4. ¿Por qué no puedo desplazarme en la terminal?

  5. ¿Por qué debería uno usar sudo?

Las 10 razones principales por las que usar Linux

Cómo usar la terminal de Linux en Android

Por qué los nerds usan Linux

Cómo usar Instagram en la terminal

¿Cómo usar Terminal en cPanel?

Linux vs Mac OS:15 razones por las que usar Linux en lugar de Mac OS