Yazelix v5
Descripción general
Yazelix integra Yazi, Zellij y Helix, de ahí el nombre, ¿entiendes?
- Zellij orquesta todo, con yazi como barra lateral y hélice como editor
- Puede abrir y cerrar la barra lateral cambiando los diseños de zellij (presione
alt ] y alt [ )- O si solo se abre un panel, hazlo con pantalla completa (
ctrl p + f o alt f )
- Cada keybinding de Zellij que entra en conflicto con Helix está reasignada (verlos en la parte inferior)
- Cuando presiona Enter en un archivo/carpeta en la "barra lateral", suceden las siguientes cosas:
- Si Helix ya está abierto, en un panel al lado de la barra lateral, abrirá ese archivo/carpeta en un nuevo búfer en ese panel (magia)
- Si Helix no está abierto, se CD en la carpeta del archivo (o la carpeta en sí), y luego abrirá en Helix
- Nota: se recomienda encarecidamente que deje que el script de shell se ejecute en paz, por lo que durante estos milisegundos no se mueva
- Este proyecto contiene mis archivos de configuración para Zellij y Yazi, casi como un complemento o algo así.
- ¡Pero son solo algunos archivos de configuración con un poco de scripting de shell!
Avance

Mejoras de V5 sobre V4.1
- Ahora, cuando abra un nuevo panel además del panel de la barra lateral, se acumulará de forma predeterminada, centrándose en paneles completos, en lugar de divisiones
- Cambie el nombre de la pestaña Zellij automáticamente al DIR desde el archivo que abre desde Yazi
- ¡Los dos cambios anteriores le permiten concentrarse mucho más en usar una pestaña por proyecto! Para que cada pestaña tenga un directorio propio.
- Esto le ayuda a saber visual y mentalmente qué está haciendo cada pestaña.
- Ahora, si quieres abrir una división, aún puedes hacerlo así:
- Escriba
ctrl p y luego r para una división a la derecha - Escriba
ctrl p y luego d para una división en la dirección "hacia abajo"
- Nueva regla importante: para abrir un archivo de Yazi en un amortiguador Yazelix existente, el avión HX debe ser el más alto de la pila (o un solo panel sin pila), de lo contrario abrirá una nueva instancia de Helix
- Si su panel hélice no es el más alto, simplemente presione
ctrl h y muévalo con k
- FIJA IMPORTANTE: Las teclas de claves reasignadas se perdieron previamente cuando se adjuntaron a una sesión o rescatando
- Solución importante: #17 no pudo verificar si el comando que se ejecuta en el panel actual es helix
- Solución: enlaces de pestaña Move readvidos. Fueron eliminados anteriormente y ahora funcionan en modo de pestaña
- Se agregó una licencia

Instrucciones para configurarlo
Asegúrese de que Yazi, Zellij, Helix y Nushell estén instalados y en su camino
Simplemente clone este repositorio en su directora ~/.config
Configurar WEZTERM:
a. Crear o abrir su archivo ~/.wezterm.lua
b. Agregue el siguiente contenido:
-- Pull in the wezterm API
local wezterm = require ' wezterm '
-- This will hold the configuration.
local config = wezterm . config_builder ()
-- This is where you actually apply your config choices
-- For example, changing the color scheme:
config . color_scheme = ' Abernathy '
-- Spawn a nushell shell in login mode
config . default_prog = { ' nu ' , ' -c ' , " zellij -l welcome --config-dir ~/.config/yazelix/zellij options --layout-dir ~/.config/yazelix/zellij/layouts " }
-- Others
config . hide_tab_bar_if_only_one_tab = true
config . window_decorations = " NONE "
-- and finally, return the configuration to wezterm
return config
Notas:
- Para una configuración adicional, visite: https://wezfurlong.org/wezterm/config/files.html
- Si usa otro shell, debe configurarlo para ejecutar algo como
nu -c "zellij -l welcome --config-dir ~/.config/yazelix/zellij options --layout-dir ~/.config/yazelix/zellij/layouts" al inicio- o
zellij -l welcome --config-dir ~/.config/yazelix/zellij options --layout-dir ~/.config/yazelix/zellij/layout (pero aún necesita nu de todos modos) - Otra opción, si lo desea, ejecute este comando manualmente cada vez que abra Yazelix
- Sin embargo, el caparazón recomendado es WEZMTER. Más sobre eso en la sección de notas a continuación
- Opcional: el uso de zoxide mejora la experiencia de Yazelix diez veces, déjame decirte ... e integra con yazi
Eso es todo, y no dude en abrir problemas y PRS
¿Por qué usar este proyecto?
- Este proyecto es relativamente simple de entender, el funcionamiento interno y todo. Solo un poco de magia de scripting de shell, pero principalmente archivos de configuración
- Fácil de configurar y hacerlo tuyo
- Conduzco esto diariamente, y lo cambiaré de acuerdo con mis necesidades, manteniéndolo actualizado y mejorándolo
- Cero conflicto Keybindings, barra lateral muy poderosa (aprender yazi es un proceso, pero puede hacer cosas muy geniales)
Solución de problemas
- Si no funciona, intente actualizar a Yazi y Zellij a la última versión
Posibles mejoras
- Yazelix solo detectará a Helix si está adyacente a la barra lateral. Algo menor.
- Cuando abres una nueva pestaña, Yazi se abre como un solo panel tomando todo el espacio
- Pero no muestra los padres y las columnas de vista previa, solo muestra la columna Dir actual
- Para abordar esto, tendría que reabrir yazi con una configuración diferente?
Remapaces de keybinding
| NUEVA ZELLIJ KEYBINDING | Controlación de teclas anterior | Acción de hélice que usa esa clave anterior | Acción Zellij reasignada |
|---|
| CTRL E | CTRL O | Jump_backward | SwitchTomode "Sesión" |
| Ctrl y | CTRL S | save_selection | SwitchTomode "desplazarse" |
| Alt W | Alt I | Selección | Movetab "izquierda" |
| Alt Q | Alt O | expandir_selección | Movetab "correcto" |
| Alt M | Alt n | select_next_sibling | Nuevo |
| Alt 2 | CTRL B | Move_Page_UP | SwitchTomode "tmux" |
Si encuentra un conflicto, abra un problema. Sin embargo, tenga en cuenta que esa compatibilidad con el modo TMUX no es un objetivo de este proyecto.
Descubrimiento de keybindings
- Zellij: Zellij es excelente en esto, funciona fuera de la caja, verá visualmente todas las folletos de claves en la barra de estado
- Helix: Helix es la misma honestamente
- Yazi: Solo hay una llave para recordar:
~ Esto muestra todas las muelles y comandos de teclas (presione alt f para hacer el panel yazi con pantalla completa) - Nushell: Puede ejecutar
tutor en Nushell, puede leer https://www.nushell.sh/book/, puede ejecutar help commands | find regex (si quieres aprender sobre regex, por ejemplo, pero podría ser cualquier cosa)- Bueno,
ctrl r mucho en Nushell, abre una búsqueda de historial interactivo
Consejos de Keybindings
- Zellij: escriba
alt f para hacer tu panel con pantalla completa (y de regreso) - Zellij: escriba
ctrl p y luego r para una división a la derecha - Zellij: escriba
ctrl p y luego d para una división en la dirección "hacia abajo" - Yazi: Tipo
z para usar el zaxido (Fuzzy Find to Ruts conocidos) - Yazi: tipo
Z para usar FZF (Fuzzy Find en rutas desconocidas) - Yazi: escriba
SPACE para seleccionar archivos - Yazi: Tipo
y a yank e Y a unyank (cancela la copia) - Yazi: Tipo
x para cut y X para uncut (cancela el corte) - Yazi: escriba
a para add un archivo ( filename.ext ) o una carpeta ( foldername/ )
Consejos
- Puede agregar más diseños de intercambio según sea necesario, utilizando los archivos KDL en
layouts . - Recomiendo usar Wezter como su terminal
- Debido a que se puede configurar para eliminar sus pestañas nativas, muy extensible, incluidas sus keybindings (aún no he encontrado un conflicto)
- muy actuante
- Si prueba esto con NVIM y funciona, avíseme (vea el problema aquí)
- ¡Un agradecimiento especial a los contribuyentes/mantenedores de Yazi, Zellij y Helix!
- El autor de Yazi contribuyó graciosamente a un código Lua para que la barra de estado de Yazi se vea increíble en el pequeño ancho de una barra lateral
- Si accidentalmente cierra la barra lateral, puede recuperarlo con
env YAZI_CONFIG_HOME=~/.config/yazelix/yazi/sidebar yazi
Estoy perdido, es demasiada información
En este caso, aprenda a usar Zellij en sí mismo primero. Y luego opcionalmente yazi. Y luego vuelva a leer el ReadMe.
Contribuyendo a Yazelix
Ver aquí para contribuir
Proyectos similares
- El selector de árbol de archivos en Helix con Zellij
- Yazi se puede usar como un selector de archivos para navegar y abrir archivos en su instancia de Helix actual (ejecutándose en una sesión Zellij)