Línea de comandos y git difftool¶
OctoEdit tiene una superficie de línea de comandos pequeña y amigable para
scripts: abrir archivos (con una posición de cursor opcional), ajustar una
ejecución con unas pocas opciones y —lo más destacado— actuar como visor rápido
de comparación de dos archivos para git difftool.
Las rutas pueden ser relativas o absolutas. Cuando se inicia desde una consola,
--help/--version imprimen ahí; iniciado de cualquier otra forma, aparecen en
un pequeño diálogo.
Abrir archivos¶
- Cada archivo se abre en su propia pestaña. Una ruta que todavía no existe se abre como un búfer nuevo sin guardar ligado a ese nombre (al guardar se crea el archivo).
- Un
:líneao:línea:columnaal final del primer archivo mueve el cursor (empezando en 1, acotado al documento) — práctico desde compiladores y salidas de grep:
- Con la instancia única activada (lo predeterminado), un segundo arranque reenvía sus archivos a la ventana en marcha y termina.
Opciones¶
| Opción | Significado |
|---|---|
-h, --help |
Imprime el uso y termina. |
-v, --version |
Imprime la versión de la aplicación y termina. |
--log <level> |
Nivel mínimo de registro para esta ejecución: trace, debug, info, warning o error. |
--rendering <mode> |
Cómo compone esta ejecución sus ventanas: gpu (el valor predeterminado) o cpu. Solo vale para esa ejecución (véase más abajo). |
--list-debug-flags |
Lista las opciones de depuración reconocidas con sus valores actuales y termina. |
--diff <left> <right> |
Compara dos archivos en un visor pasajero de solo lectura (implica --viewer). |
--viewer |
Instancia de visor pasajera y de solo lectura (ver más abajo). |
--readonly |
Abre los archivos indicados en modo de solo lectura (ver más abajo). |
--rendering: composición de la ventana para una sola ejecución¶
Elige cómo compone esta ejecución sus ventanas —gpu (el valor predeterminado) o cpu— y
nada más. Qué significan los dos modos se explica en
Preferencias ▸ General ▸ Renderizado de la ventana.
- Vale solo para esa ejecución y nunca se guarda: el siguiente arranque normal vuelve a lo que digan las Preferencias.
- El modo se decide antes de que exista la primera ventana y no puede cambiar mientras el
editor se ejecuta, así que cubre igual la ventana del editor y una ventana
--viewer/--diff. Un modo desconocido se informa y se ignora. - Con la instancia única activada (lo predeterminado), un arranque reenviado a un
editor en marcha solo le entrega sus archivos: la ventana en marcha conserva el modo con
el que arrancó, y ahí
--renderingno cambia nada.
Si la ventana del editor no se puede usar tras el arranque
Si la ventana aparece mal dibujada, o no aparece en absoluto, arranca el editor una vez
con --rendering=cpu y luego pon tú mismo Preferencias ▸ General ▸ Renderizado de la
ventana en CPU: la opción de la línea de comandos no se recuerda, así que solo te
deja entrar, y es el ajuste el que lo hace permanente.
Si tampoco puedes llegar ahí, el ajuste se puede escribir a mano con el editor cerrado.
Añade a la sección [app] del archivo de configuración:
El archivo está en:
- Windows:
%APPDATA%\7-bits\OctoEdit.ini - macOS:
~/.config/7-bits.eu/OctoEdit.ini - Linux:
~/.config/7-bits/OctoEdit.conf
--readonly: abrir archivos concretos bloqueados¶
Abre los archivos indicados con la edición desactivada: los comandos que
modifican (Cortar, Pegar, Deshacer…) se atenúan para esas pestañas, mientras que
Copiar sigue funcionando. A diferencia de --viewer, esta es una instancia
normal del editor: tu sesión se restaura, puedes abrir y editar cualquier
otro documento, y un segundo arranque con --readonly reenvía sus archivos a la
ventana en marcha, también bloqueados. Dos salvaguardas: un archivo indicado que
ya esté abierto con cambios sin guardar sigue siendo editable (la opción
nunca atrapa cambios que ya no podrías guardar), y una ruta indicada que todavía
no exista se abre como un búfer vacío bloqueado.
--diff: una ventana de comparación de dos archivos¶
Abre una ventana separada y desechable cuya única pestaña es la comparación en paralelo de los dos archivos: con coloreado de sintaxis, de solo lectura y con todas las herramientas de comparación —navegación por diferencias, la regla de resumen, los conmutadores de ignorar espacios en blanco y mayúsculas y de Alineado, y la fusión por copia de cambios con guardado por lado (ambos operandos son archivos reales, así que funcionan las dos direcciones).
- Se requieren exactamente dos archivos existentes. Un archivo que falta o un
directorio se informan y el proceso termina con el código
2sin abrir ninguna ventana del editor (la comparación de directorios vive en el plugin Comparación de carpetas). - El proceso sigue vivo hasta que cierras la ventana y entonces termina con
0, que es exactamente lo quegit difftoolespera. - La ventana es independiente de tu OctoEdit normal: nunca se une al mecanismo de
instancia única, no carga ningún plugin y no guarda nada (ni sesión, ni diseño,
ni entradas de archivos recientes). Tu editor y su sesión quedan intactos, y
puede coexistir con él cualquier número de ventanas
--diff. - El asistente de IA sigue disponible: forma parte del núcleo. Hacer una pregunta ahí le indica automáticamente al agente qué dos archivos están en pantalla (y le concede acceso de lectura a ambos), así que «¿qué ha cambiado entre estos archivos?» funciona sin más.
Configurarlo como tu git difftool¶
# .gitconfig
[diff]
tool = octoedit
[difftool]
prompt = false
[difftool "octoedit"]
cmd = OctoEdit --diff "$LOCAL" "$REMOTE"
Y entonces, por ejemplo:
Tip
Asegúrate de que OctoEdit.exe está en tu PATH o escribe su ruta completa
en la línea cmd =.
--viewer: un visor desechable de solo lectura¶
Una instancia pasajera para echar un vistazo rápido a un archivo, sin molestar a
tu sesión de edición real (implícita en --diff):
- Los archivos indicados en la línea de comandos se abren con normalidad; luego la instancia queda bloqueada: los búferes son de solo lectura, Archivo ▸ Nuevo/Abrir/Guardar y todos los comandos de Comparar están desactivados, y nada puede abrir otra pestaña.
- Cerrar la última pestaña cierra la ventana.
- No se conserva nada: ni guardado ni restauración de sesión, ni escrituras del diseño de ventana, ni entradas de archivos recientes.
- No se carga ningún plugin, así que arranca rápido; las funciones del núcleo —coloreado de sintaxis, temas, el asistente de IA— siguen disponibles.
Códigos de salida¶
| Código | Significado |
|---|---|
0 |
Salida normal, incluida una ventana --diff/--viewer cerrada. |
2 |
Petición --diff no válida (número de operandos incorrecto, archivo inexistente, operando que es un directorio). |