Hacer que la terminal de Linux sea hermosa y conveniente

Todas las distribuciones de Linux vienen con un emulador de terminal funcional y personalizable. En Internet, y a veces incluso en el propio terminal, hay un montón de temas ya preparados para que éste luzca bonito. Sin embargo, para convertir un terminal estándar (en cualquier DE, cualquier distribución) en algo hermoso y al mismo tiempo conveniente y fácil de usar, dediqué mucho tiempo. Entonces, ¿cómo se puede hacer que el terminal predeterminado sea cómodo y agradable de usar?

Agregar funcionalidad

shell de comando

La mayoría de las distribuciones vienen con Bash integrado. Usando complementos puedes hacer lo que quieras con ellos, pero es mucho más fácil lograrlo con Zsh. Por que

  • Mecánica avanzada para completar automáticamente los comandos cuando se presionan o . A diferencia de Bash, no es necesario configurar esto, todo funciona al más alto nivel desde el primer momento.
  • Muchos temas, módulos, complementos y más listos para usar. Personalización mediante frameworks (oh-my-zsh, prezto, etc.), que amplían notablemente las posibilidades de personalización y mejora del terminal. Nuevamente, todo esto se puede lograr en Bash, pero hay un montón de material listo para usar para Zsh. Para Bash hay muchos menos y algunos no están disponibles en absoluto.

Estas son las razones principales por las que cambié de Bash a Zsh. Además de esto, Zsh tiene muchas otras ventajas.

Configurando Zsh

Primero, instalemos Zsh (si ya está instalado, por ejemplo, como en Manjaro, puedes omitir este paso):

sudo apt install zsh

Cuando se le solicite instalar Zsh como shell predeterminado, haga clic en Ypara confirmar.

Oh-my-zsh es un marco Zsh popular y en desarrollo activo que le permite personalizar de manera flexible el shell del terminal. Instalémoslo:

sh -c "$(curl -fsSL https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"

zsh: comando no encontrado: curl
Establecer curl:

sudo apt install curl

Resaltado de sintaxis. Es mucho más fácil navegar por el contenido de la terminal cuando diferentes partes de los comandos están resaltadas en diferentes colores. Por ejemplo, los directorios estarán subrayados y los comandos se resaltarán en un color diferente al del texto normal. Instalemos el complemento zsh-syntax-highlighting:

git clone https://github.com/zsh-users/zsh-syntax-highlighting.git $ZSH_CUSTOM/plugins/zsh-syntax-highlighting

zsh: comando no encontrado: git
Instalar git:

sudo apt install git

Para que el complemento funcione, debe estar conectado.

En archivo ~/.zshrc cambiar la línea de plugins=:

plugins=(git zsh-syntax-highlighting)

Si no existe tal línea, agréguela.

¡Listo! Obtenemos un terminal cómodo y funcional. Ahora hagámoslo visualmente agradable.

Personalizando la apariencia

Instalando el tema Nivel de potencia 10K:

git clone https://github.com/romkatv/powerlevel10k.git $ZSH_CUSTOM/themes/powerlevel10k

Descargue y agregue la fuente al sistema. JetBrains Mono Nerd (con iconos):
Seleccione uno de la lista, en carpeta шрифт/complete seleccionar fuente sin "Compatible con Windows", con la terminación "Mono".

Conectamos la fuente y el tema.

Edición ~/.zshrc.

Si el archivo ya contiene estas líneas, reemplácelas.

  • ZSH_THEME="powerlevel10k/powerlevel10k"
  • POWERLEVEL9K_MODE="nerdfont-complete"

Colores. Una parte importante del diseño del terminal es la combinación de colores. Revisé muchos esquemas diferentes, los edité y me decidí por Monokai Dark. No daña los ojos, pero es agradable y brillante. Lista de colores:

[colors]

# special
foreground      = #e6e6e6
foreground_bold = #e6e6e6
cursor          = #fff
background      = #000

# black
color0  = #75715e
color8  = #272822

# red
color1  = #f92672
color9  = #f92672

# green
color2  = #a6e22e
color10 = #a6e22e

# yellow
color3  = #434648
color11 = #7ea35f

# blue
color4  = #66d9ef
color12 = #66d9ef

# magenta
color5  = #ae81ff
color13 = #ae81ff

# cyan
color6  = #adb3b9
color14 = #62ab9d

# white
color7  = #2AA198
color15 = #2AA198

La combinación de colores cambia de manera diferente en diferentes terminales (generalmente esto se hace a través de la configuración del terminal), pero el orden de los colores es el mismo en todas partes. Puede importar esta plantilla en formato Termite y exportarla para su terminal a través de terminal.sexy

Inicie la configuración del tema: p10k configure.
Personaliza el tema eligiendo las opciones de visualización que más te gusten.

El toque final es cambiar la configuración del tema y reemplazar los colores integrados.

Editando el archivo ~/.p10k.zsh.

Si el archivo ya contiene estas líneas, reemplácelas. Los códigos de color se pueden obtener con el comando.

for i in {0..255}; do print -Pn "%K{$i}  %k%F{$i}${(l:3::0:)i}%f " ${${(M)$((i%6)):#3}:+$'n'}; done

  • Mostrar solo el directorio actual:
    typeset -g POWERLEVEL9K_SHORTEN_STRATEGY=truncate_to_last
  • Fondo del bloque de directorio:
    typeset -g POWERLEVEL9K_DIR_BACKGROUND=33
  • Colores de flecha:
    typeset -g POWERLEVEL9K_PROMPT_CHAR_OK_{VIINS,VICMD,VIVIS,VIOWR}_FOREGROUND=2

    и

    typeset -g POWERLEVEL9K_PROMPT_CHAR_ERROR_{VIINS,VICMD,VIVIS,VIOWR}_FOREGROUND=1

  • Fondo de la rama Git:
    typeset -g POWERLEVEL9K_VCS_CLEAN_BACKGROUND=15

resultado

Hacer que la terminal de Linux sea hermosa y conveniente
Error
Hacer que la terminal de Linux sea hermosa y conveniente
GIT:
Hacer que la terminal de Linux sea hermosa y conveniente

fuentes

Documentación de PowerLevel10K
Diseñador de esquemas de color de terminal en línea
Diferencias entre Bash y Zsh

Fuente: habr.com

Añadir un comentario