diff --git a/src/App.axaml b/src/App.axaml
index b1fe303b..fc55776e 100644
--- a/src/App.axaml
+++ b/src/App.axaml
@@ -18,6 +18,7 @@
+
diff --git a/src/Models/Locales.cs b/src/Models/Locales.cs
index 0d9e5f69..3fa9ab7c 100644
--- a/src/Models/Locales.cs
+++ b/src/Models/Locales.cs
@@ -15,6 +15,7 @@ namespace SourceGit.Models
new Locale("Русский", "ru_RU"),
new Locale("简体中文", "zh_CN"),
new Locale("繁體中文", "zh_TW"),
+ new Locale("Español", "es_ES"),
};
public Locale(string name, string key)
diff --git a/src/Resources/Locales/es_ES.axaml b/src/Resources/Locales/es_ES.axaml
new file mode 100644
index 00000000..e9c7733d
--- /dev/null
+++ b/src/Resources/Locales/es_ES.axaml
@@ -0,0 +1,667 @@
+
+ Acerca de
+ Acerca de SourceGit
+ • Construido con
+ • El gráfico es renderizado por
+ © 2024 sourcegit-scm
+ • Editor de texto de
+ • Las fuentes monoespaciadas provienen de
+ • El código fuente se puede encontrar en
+ Cliente Git GUI de código abierto y gratuito
+ Agregar Worktree
+ Qué Checkout:
+ Rama Existente
+ Crear Nueva Rama
+ Ubicación:
+ Ruta para este worktree. Se admite ruta relativa.
+ Nombre de la Rama:
+ Opcional. Por defecto es el nombre de la carpeta de destino.
+ Rama de Seguimiento:
+ Seguimiento de rama remota
+ Asistente OpenAI
+ Usar OpenAI para generar mensaje de commit
+ Aplicar Patch
+ Error
+ Genera errores y se niega a aplicar el patch
+ Error Todo
+ Similar a 'error', pero muestra más
+ Archivo Patch:
+ Seleccionar archivo .patch para aplicar
+ Ignorar cambios de espacios en blanco
+ Sin Advertencia
+ Desactiva la advertencia de espacios en blanco al final
+ Aplicar Patch
+ Advertencia
+ Genera advertencias para algunos de estos errores, pero aplica
+ Espacios en Blanco:
+ Archivar...
+ Guardar Archivo en:
+ Seleccionar ruta del archivo
+ Revisión:
+ Archivar
+ SourceGit Askpass
+ ARCHIVOS ASUMIDOS COMO SIN CAMBIOS
+ NO HAY ARCHIVOS ASUMIDOS COMO SIN CAMBIOS
+ REMOVER
+ ¡ARCHIVO BINARIO NO SOPORTADO!
+ Blame
+ ¡BLAME EN ESTE ARCHIVO NO SOPORTADO!
+ Checkout ${0}$...
+ Comparar con Rama
+ Comparar con HEAD
+ Comparar con Worktree
+ Copiar Nombre de Rama
+ Eliminar ${0}$...
+ Eliminar {0} ramas seleccionadas
+ Descartar todos los cambios
+ Fast-Forward a ${0}$
+ Fetch ${0}$ en ${1}$...
+ Git Flow - Finalizar ${0}$
+ Merge ${0}$ en ${1}$...
+ Pull ${0}$
+ Pull ${0}$ en ${1}$...
+ Push ${0}$
+ Rebase ${0}$ en ${1}$...
+ Renombrar ${0}$...
+ Establecer Rama de Seguimiento
+ Desestablecer Upstream
+ Comparar Ramas
+ Bytes
+ CANCELAR
+ Resetear a Esta Revisión
+ Resetear a Revisión Padre
+ CAMBIAR MODO DE VISUALIZACIÓN
+ Mostrar como Lista de Archivos y Directorios
+ Mostrar como Lista de Rutas
+ Mostrar como Árbol de Sistema de Archivos
+ Checkout Rama
+ Checkout Commit
+ Advertencia: Al hacer un checkout de commit, tu Head se separará
+ Commit:
+ Rama:
+ Cambios Locales:
+ Descartar
+ No Hacer Nada
+ Stash & Reaplicar
+ Cherry Pick
+ Añadir fuente al mensaje de commit
+ Commit(s):
+ Commit todos los cambios
+ Mainline:
+ Normalmente no puedes cherry-pick un merge porque no sabes qué lado del merge debe considerarse la línea principal. Esta opción permite que cherry-pick reproduzca el cambio en relación con el padre especificado.
+ Limpiar Stashes
+ Estás intentando limpiar todos los stashes. ¿Estás seguro de continuar?
+ Clonar Repositorio Remoto
+ Parámetros Adicionales:
+ Argumentos adicionales para clonar el repositorio. Opcional.
+ Nombre Local:
+ Nombre del repositorio. Opcional.
+ Carpeta Padre:
+ URL del Repositorio:
+ CERRAR
+ Editor
+ Cherry-Pick Este Commit
+ Cherry-Pick ...
+ Checkout Commit
+ Comparar con HEAD
+ Comparar con Worktree
+ Copiar Información
+ Copiar SHA
+ Rebase Interactivo ${0}$ hasta Aquí
+ Rebase ${0}$ hasta Aquí
+ Reset ${0}$ hasta Aquí
+ Revertir Commit
+ Reescribir
+ Guardar como Patch...
+ Squash en Parent
+ Squash Commits Hijos hasta Aquí
+ CAMBIOS
+ Buscar Cambios...
+ ARCHIVOS
+ Archivo LFS
+ Submódulo
+ INFORMACIÓN
+ AUTOR
+ CAMBIADO
+ COMMITTER
+ Ver refs que contienen este commit
+ COMMIT ESTÁ CONTENIDO EN
+ Muestra solo los primeros 100 cambios. Ver todos los cambios en la pestaña CAMBIOS.
+ MENSAJE
+ PADRES
+ REFS
+ SHA
+ Abrir en Navegador
+ Introducir asunto del commit
+ Descripción
+ Configurar Repositorio
+ PLANTILLA DE COMMIT
+ Nombre de la Plantilla:
+ Contenido de la Plantilla:
+ Dirección de Email
+ Dirección de email
+ GIT
+ Fetch remotos automáticamente
+ Minuto(s)
+ Remoto por Defecto
+ Habilitar --signoff para commit
+ SEGUIMIENTO DE INCIDENCIAS
+ Añadir Regla de Ejemplo para Github
+ Añadir Regla de Ejemplo para Jira
+ Añadir Regla de Ejemplo para Incidencias de GitLab
+ Añadir Regla de Ejemplo para Merge Requests de GitLab
+ Nueva Regla
+ Expresión Regex para Incidencias:
+ Nombre de la Regla:
+ URL Resultante:
+ Por favor, use $1, $2 para acceder a los valores de los grupos regex.
+ Proxy HTTP
+ Proxy HTTP utilizado por este repositorio
+ Nombre de Usuario
+ Nombre de usuario para este repositorio
+ Espacios de Trabajo
+ Color
+ Restaurar pestañas al iniciar
+ Asistente de Commit Convencional
+ Cambio Importante:
+ Incidencia Cerrada:
+ Detalles del Cambio:
+ Alcance:
+ Descripción Corta:
+ Tipo de Cambio:
+ Copiar
+ Copiar Todo el Texto
+ COPIAR MENSAJE
+ Copiar Ruta
+ Copiar Nombre del Archivo
+ Crear Rama...
+ Basado En:
+ Checkout de la rama creada
+ Cambios Locales:
+ Descartar
+ No Hacer Nada
+ Stash & Reaplicar
+ Nombre de la Nueva Rama:
+ Introduzca el nombre de la rama.
+ Crear Rama Local
+ Crear Etiqueta...
+ Nueva Etiqueta En:
+ Firma GPG
+ Mensaje de la Etiqueta:
+ Opcional.
+ Nombre de la Etiqueta:
+ Formato recomendado: v1.0.0-alpha
+ Push a todos los remotos después de crear
+ Crear Nueva Etiqueta
+ Tipo:
+ anotada
+ ligera
+ Mantenga Ctrl para iniciar directamente
+ Cortar
+ Eliminar Rama
+ Rama:
+ ¡Estás a punto de eliminar una rama remota!
+ También eliminar la rama remota ${0}$
+ Eliminar Múltiples Ramas
+ Estás intentando eliminar múltiples ramas a la vez. ¡Asegúrate de revisar antes de tomar acción!
+ Eliminar Remoto
+ Remoto:
+ Destino:
+ Confirmar Eliminación de Grupo
+ Confirmar Eliminación de Repositorio
+ Eliminar Submódulo
+ Ruta del Submódulo:
+ Eliminar Etiqueta
+ Etiqueta:
+ Eliminar de los repositorios remotos
+ DIFERENCIA BINARIA
+ NUEVO
+ ANTIGUO
+ Copiar
+ Modo de Archivo Cambiado
+ Ignorar Cambio de Espacios en Blanco
+ CAMBIO DE OBJETO LFS
+ Siguiente Diferencia
+ SIN CAMBIOS O SOLO CAMBIOS DE EOL
+ Diferencia Anterior
+ Mostrar símbolos ocultos
+ Diferencia Lado a Lado
+ SUBMÓDULO
+ NUEVO
+ Intercambiar
+ Resaltado de Sintaxis
+ Ajuste de Línea
+ Abrir en Herramienta de Merge
+ Disminuir Número de Líneas Visibles
+ Aumentar Número de Líneas Visibles
+ SELECCIONA ARCHIVO PARA VER CAMBIOS
+ Abrir en Herramienta de Merge
+ Descartar Cambios
+ Todos los cambios locales en la copia de trabajo.
+ Cambios:
+ Incluir archivos ignorados
+ Total {0} cambios serán descartados
+ ¡No puedes deshacer esta acción!
+ Marcador:
+ Nuevo Nombre:
+ Destino:
+ Editar Grupo Seleccionado
+ Editar Repositorio Seleccionado
+ Fast-Forward (sin checkout)
+ Fetch
+ Fetch todos los remotos
+ Fetch sin etiquetas
+ Remoto:
+ Fetch Cambios Remotos
+ Asumir sin cambios
+ Descartar...
+ Descartar {0} archivos...
+ Descartar Cambios en Línea(s) Seleccionada(s)
+ Abrir Herramienta de Merge Externa
+ Guardar Como Patch...
+ Stage
+ Stage {0} archivos
+ Stage Cambios en Línea(s) Seleccionada(s)
+ Stash...
+ Stash {0} archivos...
+ Unstage
+ Unstage {0} archivos
+ Unstage Cambios en Línea(s) Seleccionada(s)
+ Usar Suyos (checkout --theirs)
+ Usar Míos (checkout --ours)
+ Historial de Archivos
+ CONTENIDO
+ CAMBIO
+ FILTRO
+ Git-Flow
+ Rama de Desarrollo:
+ Feature:
+ Prefijo de Feature:
+ FLOW - Finalizar Feature
+ FLOW - Finalizar Hotfix
+ FLOW - Finalizar Release
+ Destino:
+ Hotfix:
+ Prefijo de Hotfix:
+ Inicializar Git-Flow
+ Mantener rama
+ Rama de Producción:
+ Release:
+ Prefijo de Release:
+ Iniciar Feature...
+ FLOW - Iniciar Feature
+ Iniciar Hotfix...
+ FLOW - Iniciar Hotfix
+ Introducir nombre
+ Iniciar Release...
+ FLOW - Iniciar Release
+ Prefijo de Etiqueta de Versión:
+ Git LFS
+ Añadir Patrón de Seguimiento...
+ El patrón es el nombre del archivo
+ Patrón Personalizado:
+ Añadir Patrón de Seguimiento a Git LFS
+ Fetch
+ Fetch Objetos LFS
+ Ejecuta `git lfs fetch` para descargar objetos Git LFS. Esto no actualiza la copia de trabajo.
+ Instalar hooks de Git LFS
+ Mostrar Bloqueos
+ No hay archivos bloqueados
+ Bloquear
+ Mostrar solo mis bloqueos
+ Bloqueos LFS
+ Desbloquear
+ Forzar Desbloqueo
+ Prune
+ Ejecuta `git lfs prune` para eliminar archivos LFS antiguos del almacenamiento local
+ Pull
+ Pull Objetos LFS
+ Ejecuta `git lfs pull` para descargar todos los archivos Git LFS para la referencia actual y hacer checkout
+ Push
+ Push Objetos LFS
+ Push archivos grandes en cola al endpoint de Git LFS
+ Remoto:
+ Seguir archivos llamados '{0}'
+ Seguir todos los archivos *{0}
+ Historias
+ Cambiar a Disposición Horizontal/Vertical
+ AUTOR
+ HORA DEL AUTOR
+ GRÁFICO & ASUNTO
+ SHA
+ FECHA DE COMMIT
+ {0} COMMITS SELECCIONADOS
+ Mantén 'Ctrl' o 'Shift' para seleccionar múltiples commits.
+ Mantén ⌘ o ⇧ para seleccionar múltiples commits.
+ CONSEJOS:
+ Referencia de Atajos de Teclado
+ GLOBAL
+ Cancelar popup actual
+ Cerrar página actual
+ Ir a la página anterior
+ Ir a la siguiente página
+ Crear nueva página
+ Abrir diálogo de preferencias
+ REPOSITORIO
+ Commit cambios staged
+ Commit y push cambios staged
+ Stage todos los cambios y commit
+ Descartar cambios seleccionados
+ Modo Dashboard (Por Defecto)
+ Forzar a recargar este repositorio
+ Stage/Unstage cambios seleccionados
+ Modo de búsqueda de commits
+ Cambiar a 'Cambios'
+ Cambiar a 'Historias'
+ Cambiar a 'Stashes'
+ EDITOR DE TEXTO
+ Cerrar panel de búsqueda
+ Buscar siguiente coincidencia
+ Buscar coincidencia anterior
+ Abrir panel de búsqueda
+ Stage
+ Unstage
+ Descartar
+ Inicializar Repositorio
+ Ruta:
+ Cherry-Pick en progreso. Presiona 'Abort' para restaurar el HEAD original.
+ Merge en progreso. Presiona 'Abort' para restaurar el HEAD original.
+ Rebase en progreso. Presiona 'Abort' para restaurar el HEAD original.
+ Revert en progreso. Presiona 'Abort' para restaurar el HEAD original.
+ Rebase Interactivo
+ Rama Objetivo:
+ En:
+ ERROR
+ AVISO
+ Merge Rama
+ En:
+ Opción de Merge:
+ Rama Fuente:
+ Mover Nodo del Repositorio
+ Seleccionar nodo padre para:
+ Nombre:
+ Git NO ha sido configurado. Por favor, ve a [Preferencias] y configúralo primero.
+ Abrir Directorio de Datos de la App
+ Abrir Con...
+ Opcional.
+ Crear Nueva Página
+ Marcador
+ Cerrar Pestaña
+ Cerrar Otras Pestañas
+ Cerrar Pestañas a la Derecha
+ Copiar Ruta del Repositorio
+ Repositorios
+ Pegar
+ Justo ahora
+ Hace {0} minutos
+ Hace {0} horas
+ Ayer
+ Hace {0} días
+ Último mes
+ Hace {0} meses
+ Último año
+ Hace {0} años
+ Preferencias
+ Opciones Avanzadas
+ OPEN AI
+ Analizar Diff Prompt
+ Clave API
+ Generar Subject Prompt
+ Modelo
+ Servidor
+ APARIENCIA
+ Fuente por defecto
+ Tamaño de fuente por defecto
+ Fuente Monospace
+ Usar solo fuente monospace en el editor de texto
+ Tema
+ Sobreescritura de temas
+ Usar ancho de pestaña fijo en la barra de título
+ Usar marco de ventana nativo
+ HERRAMIENTA DIFF/MERGE
+ Ruta de instalación
+ Introducir ruta para la herramienta diff/merge
+ Herramienta
+ GENERAL
+ Buscar actualizaciones al iniciar
+ Idioma
+ Commits en el historial
+ Mostrar hora del autor en lugar de la hora del commit en el gráfico
+ Longitud de la guía del asunto
+ GIT
+ Habilitar Auto CRLF
+ Directorio de clonado por defecto
+ Email de usuario
+ Email global del usuario git
+ Ruta de instalación
+ Nombre de usuario
+ Nombre global del usuario git
+ Versión de Git
+ Se requiere Git (>= 2.23.0) para esta aplicación
+ FIRMA GPG
+ Firma GPG en commit
+ Firma GPG en etiqueta
+ Formato GPG
+ Ruta de instalación del programa
+ Introducir ruta para el programa gpg instalado
+ Clave de firma del usuario
+ Clave de firma gpg del usuario
+ INTEGRACIÓN
+ SHELL/TERMINAL
+ Shell/Terminal
+ Ruta
+ Podar Remoto
+ Destino:
+ Podar Worktrees
+ Podar información de worktree en `$GIT_DIR/worktrees`
+ Pull
+ Rama:
+ Fetch todas las ramas
+ En:
+ Cambios Locales:
+ Descartar
+ No Hacer Nada
+ Stash & Reaplicar
+ Fetch sin etiquetas
+ Remoto:
+ Pull (Fetch & Merge)
+ Usar rebase en lugar de merge
+ Push
+ Asegurarse de que los submódulos se hayan hecho push
+ Forzar push
+ Rama Local:
+ Remoto:
+ Push Cambios al Remoto
+ Rama Remota:
+ Establecer como rama de seguimiento
+ Push todas las etiquetas
+ Push Etiqueta al Remoto
+ Push a todos los remotos
+ Remoto:
+ Etiqueta:
+ Salir
+ Rebase Rama Actual
+ Stash & reaplicar cambios locales
+ En:
+ Rebase:
+ Refrescar
+ Añadir Remoto
+ Editar Remoto
+ Nombre:
+ Nombre remoto
+ URL del Repositorio:
+ URL del repositorio git remoto
+ Copiar URL
+ Borrar...
+ Editar...
+ Fetch
+ Abrir En Navegador
+ Podar (Prune)
+ Confirmar para Eliminar Worktree
+ Utilizar Opción `--force`
+ Destino:
+ Renombrar Rama
+ Nuevo Nombre:
+ Nombre único para esta rama
+ Rama:
+ ABORTAR
+ Auto fetching cambios desde remotos...
+ Limpiar (GC & Prune)
+ Ejecutar comando `git gc` para este repositorio.
+ Limpiar todo
+ Configurar este repositorio
+ CONTINUAR
+ Habilitar Opción '--reflog'
+ Abrir en el Explorador
+ Buscar Ramas/Etiquetas/Submódulos
+ FILTRAR POR:
+ RAMAS LOCALES
+ Navegar a HEAD
+ Habilitar Opción '--first-parent'
+ Crear Rama
+ Abrir en {0}
+ Abrir en Herramientas Externas
+ Refrescar
+ REMOTOS
+ AÑADIR REMOTO
+ RESOLVER
+ Buscar Commit
+ Archivo
+ Mensaje
+ SHA
+ Autor & Committer
+ Rama Actual
+ Mostrar Etiquetas como Árbol
+ Estadísticas
+ SUBMÓDULOS
+ AÑADIR SUBMÓDULO
+ ACTUALIZAR SUBMÓDULO
+ ETIQUETAS
+ NUEVA ETIQUETA
+ Abrir en Terminal
+ WORKTREES
+ AÑADIR WORKTREE
+ PRUNE
+ URL del Repositorio Git
+ Resetear Rama Actual a Revisión
+ Modo de Reset:
+ Mover a:
+ Rama Actual:
+ Revelar en el Explorador de Archivos
+ Revertir Commit
+ Commit:
+ Commit revertir cambios
+ Reescribir Mensaje de Commit
+ Usa 'Shift+Enter' para introducir una nueva línea. 'Enter' es el atajo del botón OK
+ Ejecutando. Por favor espera...
+ GUARDAR
+ Guardar Como...
+ ¡El patch se ha guardado exitosamente!
+ Escanear Repositorios
+ Directorio Raíz:
+ Buscar Actualizaciones...
+ Nueva versión de este software disponible:
+ ¡Error al buscar actualizaciones!
+ Descargar
+ Omitir Esta Versión
+ Actualización de Software
+ Actualmente no hay actualizaciones disponibles.
+ Squash Commits
+ En:
+ Clave Privada SSH:
+ Ruta de almacenamiento de la clave privada SSH
+ INICIAR
+ Stash
+ Incluir archivos no rastreados
+ Mensaje:
+ Opcional. Nombre de este stash
+ Solo cambios staged
+ ¡Tanto los cambios staged como los no staged de los archivos seleccionados serán stashed!
+ Stash Cambios Locales
+ Aplicar
+ Eliminar
+ Pop
+ Eliminar Stash
+ Eliminar:
+ Stashes
+ CAMBIOS
+ STASHES
+ Estadísticas
+ COMMITS
+ COMMITTER
+ MES
+ SEMANA
+ COMMITS:
+ AUTORES:
+ GENERAL
+ SUBMÓDULOS
+ Añadir Submódulo
+ Copiar Ruta Relativa
+ Fetch submódulos anidados
+ Abrir Repositorio del Submódulo
+ Ruta Relativa:
+ Carpeta relativa para almacenar este módulo.
+ Eliminar Submódulo
+ OK
+ Copiar Nombre de la Etiqueta
+ Copiar Mensaje de la Etiqueta
+ Eliminar ${0}$...
+ Push ${0}$...
+ URL:
+ Actualizar Submódulos
+ Todos los submódulos
+ Inicializar según sea necesario
+ Recursivamente
+ Submódulo:
+ Usar opción --remote
+ Advertencia
+ Página de Bienvenida
+ Crear Grupo
+ Crear Sub-Grupo
+ Clonar Repositorio
+ Eliminar
+ SOPORTA ARRASTRAR Y SOLTAR CARPETAS. SOPORTA AGRUPACIÓN PERSONALIZADA.
+ Editar
+ Mover a Otro Grupo
+ Abrir Todos Los Repositorios
+ Abrir Repositorio
+ Abrir Terminal
+ Reescanear Repositorios en el Directorio de Clonado por Defecto
+ Buscar Repositorios...
+ Ordenar
+ Cambios
+ Git Ignore
+ Ignorar todos los archivos *{0}
+ Ignorar archivos *{0} en la misma carpeta
+ Ignorar archivos en la misma carpeta
+ Ignorar solo este archivo
+ Enmendar (Amend)
+ Puedes stagear este archivo ahora.
+ COMMIT
+ COMMIT & PUSH
+ Plantilla/Historias
+ Activar evento de clic
+ Stagear todos los cambios y commit
+ ¡Commit vacío detectado! ¿Quieres continuar (--allow-empty)?
+ CONFLICTOS DETECTADOS
+ LOS CONFLICTOS DE ARCHIVOS ESTÁN RESUELTOS
+ INCLUIR ARCHIVOS NO RASTREADOS
+ NO HAY MENSAJES DE ENTRADA RECIENTES
+ NO HAY PLANTILLAS DE COMMIT
+ STAGED
+ UNSTAGE
+ UNSTAGE TODO
+ UNSTAGED
+ STAGE
+ STAGE TODO
+ VER ASSUME UNCHANGED
+ Plantilla: ${0}$
+ Haz clic derecho en el(los) archivo(s) seleccionado(s) y elige tu opción para resolver conflictos.
+ ESPACIO DE TRABAJO:
+ Configura Espacios de Trabajo...
+ WORKTREE
+ Copiar Ruta
+ Bloquear
+ Eliminar
+ Desbloquear
+