@@ -0,0 +1,362 @@
1+<?xml version="1.0" encoding="utf-8"?>
2+<resources>
3+ <string name="app_name">opencode</string>
4+ <!-- Non-numeric fallback so a PackageManager failure can\'t show a stale version number. -->
5+ <string name="unknown_version">—</string>
6+
7+ <!-- Common -->
8+ <string name="back">Atrás</string>
9+ <string name="cancel">Cancelar</string>
10+ <string name="save">Guardar</string>
11+ <string name="delete">Eliminar</string>
12+ <string name="edit">Editar</string>
13+ <string name="remove">Quitar</string>
14+ <string name="copy">Copiar</string>
15+ <string name="copied">Copiado</string>
16+ <string name="no_share_app">No hay ninguna app disponible para compartir</string>
17+ <string name="retry">Reintentar</string>
18+ <string name="refresh">Actualizar</string>
19+ <string name="settings">Ajustes</string>
20+ <string name="files">Archivos</string>
21+ <string name="share">Compartir</string>
22+ <string name="share_subject">Sesión de opencode</string>
23+ <string name="send">Enviar</string>
24+ <string name="stop">Detener</string>
25+ <string name="rename">Renombrar</string>
26+ <string name="disconnect">Desconectar</string>
27+ <string name="loading">Cargando…</string>
28+
29+ <!-- Theme modes -->
30+ <string name="theme_system">Sistema</string>
31+ <string name="theme_light">Claro</string>
32+ <string name="theme_dark">Oscuro</string>
33+
34+ <!-- Connection banner -->
35+ <string name="connecting">Conectando…</string>
36+ <string name="reconnecting">Reconectando…</string>
37+ <string name="connection_failed">Error de conexión — comprueba las credenciales</string>
38+ <string name="reconnect">Reconectar</string>
39+ <string name="not_connected">Sin conexión.</string>
40+ <string name="no_servers_to_reconnect">No hay ningún servidor guardado al que reconectar.</string>
41+ <string name="retry_now">Reintentar ahora</string>
42+
43+ <!-- Server list -->
44+ <string name="servers_title">Servidores de opencode</string>
45+ <string name="add_server">Añadir servidor</string>
46+ <string name="edit_server">Editar servidor</string>
47+ <string name="connected">Conectado</string>
48+ <string name="no_servers_yet">Aún no hay servidores</string>
49+ <string name="no_servers_hint">Añade un endpoint de opencode serve para conectar.</string>
50+ <string name="remove_server_title">¿Quitar servidor?</string>
51+ <string name="remove_server_text">Se quitará «%1$s» de tus servidores guardados.</string>
52+ <string name="remove_server_active_text">«%1$s» es tu servidor actual. Al quitarlo también te desconectarás.</string>
53+ <string name="server_auth_short"> • autenticación</string>
54+ <string name="server_auth_basic"> • autenticación básica</string>
55+ <string name="server_removed">Servidor eliminado</string>
56+
57+ <!-- Server edit -->
58+ <string name="label_optional">Etiqueta (opcional)</string>
59+ <string name="base_url">URL base</string>
60+ <string name="base_url_hint">http://192.168.1.10:4096</string>
61+ <string name="invalid_url">Introduce una URL http:// o https:// válida.</string>
62+ <string name="check_connectivity">Comprobar conectividad</string>
63+ <string name="checking">Comprobando…</string>
64+ <string name="auth_required">Este servidor requiere autenticación.</string>
65+ <string name="auth_help">Toca "Comprobar conectividad" para probar el servidor. Los campos de autenticación aparecen automáticamente solo si el servidor los requiere.</string>
66+ <string name="username_optional">Usuario (opcional)</string>
67+ <string name="password_optional">Contraseña (opcional)</string>
68+ <string name="save_and_connect">Guardar y conectar</string>
69+ <string name="discard_title">¿Descartar cambios?</string>
70+ <string name="discard_text">Se perderán tus cambios.</string>
71+ <string name="discard">Descartar</string>
72+ <string name="keep_editing">Seguir editando</string>
73+ <string name="show_password">Mostrar contraseña</string>
74+ <string name="hide_password">Ocultar contraseña</string>
75+ <string name="test_credentials">Probar credenciales</string>
76+ <string name="discover_on_network">Descubrir en la red</string>
77+ <string name="searching_network">Buscando en la red local…</string>
78+ <string name="testing_credentials">Probando…</string>
79+ <string name="credentials_ok">Credenciales aceptadas.</string>
80+ <string name="credentials_rejected">Credenciales rechazadas.</string>
81+
82+ <!-- Session list -->
83+ <string name="new_session">Nueva sesión</string>
84+ <string name="create">Crear</string>
85+ <string name="directory_label">Directorio</string>
86+ <string name="directory_server_default">Predeterminado del servidor</string>
87+ <string name="directory_custom">Introduce una ruta…</string>
88+ <string name="directory_custom_hint">/ruta/al/proyecto</string>
89+ <string name="directory_loading">Cargando directorios…</string>
90+ <string name="session_directory_desc">Directorio: %1$s</string>
91+ <string name="unread">Sin leer</string>
92+ <string name="unread_count">%1$d sin leer</string>
93+ <string name="no_sessions_yet">Aún no hay sesiones</string>
94+ <string name="no_sessions_hint">Inicia una conversación con opencode.</string>
95+ <string name="search_sessions">Buscar sesiones…</string>
96+ <string name="no_sessions_match">Ninguna sesión coincide con «%1$s».</string>
97+ <string name="switch_server">Cambiar de servidor</string>
98+ <string name="delete_session_title">¿Eliminar sesión?</string>
99+ <string name="delete_session_text">«%1$s» se eliminará permanentemente. Esta acción no se puede deshacer.</string>
100+ <string name="rename_session">Renombrar sesión</string>
101+ <string name="session_title_hint">Título de la sesión</string>
102+ <string name="undo">Deshacer</string>
103+ <string name="session_deleted">Sesión eliminada</string>
104+ <string name="disconnect_active_title">¿Desconectar?</string>
105+ <string name="disconnect_active_text">Todavía hay una ejecución del agente activa. Al desconectar se detendrá.</string>
106+
107+ <!-- Chat -->
108+ <string name="session">Sesión</string>
109+ <string name="default_model">modelo predeterminado</string>
110+ <string name="message_placeholder">Escribe a opencode…</string>
111+ <string name="empty_chat_title">Inicia una conversación</string>
112+ <string name="empty_chat_hint">Escribe un mensaje abajo para empezar.</string>
113+ <string name="empty_chat_suggest_1">Explica qué hace este código</string>
114+ <string name="empty_chat_suggest_2">Encuentra y corrige un error</string>
115+ <string name="empty_chat_suggest_3">Añade una función</string>
116+ <string name="draft_chars_remaining">%1$d / %2$d</string>
117+ <string name="load_messages_failed">No se pudieron cargar los mensajes.</string>
118+ <string name="empty_detail_pane">Selecciona una sesión para ver la conversación.</string>
119+ <string name="working">trabajando…</string>
120+ <string name="latest">Más reciente</string>
121+ <string name="stop_and_exit_title">¿Detener y salir?</string>
122+ <string name="stop_and_exit_text">El agente sigue trabajando. ¿Salir de todos modos?</string>
123+ <string name="stop_and_exit">Detener y salir</string>
124+ <string name="stay">Quedarse</string>
125+ <string name="commands">Comandos</string>
126+ <string name="choose_agent">Elegir agente</string>
127+ <string name="choose_model">Elegir modelo</string>
128+ <string name="change_model_agent">Cambiar modelo y agente</string>
129+ <string name="share_conversation">Compartir conversación</string>
130+ <string name="stop_run_title">¿Detener la ejecución?</string>
131+ <string name="stop_run_text">El agente sigue trabajando. ¿Detenerlo ahora?</string>
132+ <string name="session_deleted_msg">Esta sesión se eliminó en otro dispositivo.</string>
133+ <string name="queued">En cola — se enviará cuando termine la ejecución</string>
134+
135+ <!-- Errors (view models) -->
136+ <string name="error_generic">Algo salió mal.</string>
137+ <string name="error_client_status">La solicitud falló (%1$d).</string>
138+ <string name="error_agent_reported">El agente informó de un error.</string>
139+ <string name="error_not_reachable">No se pudo contactar con %1$s</string>
140+ <string name="error_timeout">La solicitud agotó el tiempo de espera. Comprueba la conexión e inténtalo de nuevo.</string>
141+ <string name="error_server">El servidor informó de un error. Inténtalo más tarde.</string>
142+ <string name="error_load_timeout">La carga tardó demasiado. Inténtalo de nuevo.</string>
143+ <string name="error_switch_and_restore_failed">No se pudo conectar con el nuevo servidor (%1$s), y tampoco se pudo restaurar el servidor anterior (%2$s).</string>
144+
145+ <!-- Part renderer -->
146+ <string name="thinking">Pensando…</string>
147+ <string name="thoughts">Pensamientos</string>
148+ <string name="show_more">Mostrar más</string>
149+ <string name="show_less">Mostrar menos</string>
150+ <string name="show_more_lines">Mostrar %1$d líneas más</string>
151+ <string name="tool_completed">Completado</string>
152+ <string name="tool_error">Error</string>
153+ <string name="tool_running">En ejecución</string>
154+ <string name="tool_unknown">Estado de herramienta desconocido</string>
155+ <string name="state_expanded">Expandido</string>
156+ <string name="state_collapsed">Contraído</string>
157+
158+ <!-- Permission dialog -->
159+ <string name="permission_title">Permiso solicitado</string>
160+ <string name="permission_text">¿Permitir que esta herramienta se ejecute?</string>
161+ <string name="allow_once">Permitir una vez</string>
162+ <string name="always_allow">Permitir siempre</string>
163+ <string name="reject">Rechazar</string>
164+
165+ <!-- Pickers -->
166+ <string name="model">Modelo</string>
167+ <string name="no_models">El servidor no informó de ningún modelo.</string>
168+ <string name="agent">Agente</string>
169+ <string name="no_agents">El servidor no informó de ningún agente.</string>
170+ <string name="default_agent">Predeterminado</string>
171+ <string name="default_agent_desc">Agente predeterminado del servidor</string>
172+ <string name="no_commands">El servidor no informó de ningún comando.</string>
173+ <string name="no_commands_match">Ningún comando coincide con "%1$s".</string>
174+ <string name="load_failed">Error al cargar. Toca reintentar.</string>
175+ <string name="saving">Guardando…</string>
176+ <string name="image_failed">Error al cargar la imagen</string>
177+ <string name="search_models">Buscar modelos…</string>
178+ <string name="search_agents">Buscar agentes…</string>
179+ <string name="search_commands">Buscar comandos…</string>
180+ <string name="no_models_match">Ningún modelo coincide con "%1$s".</string>
181+ <string name="no_agents_match">Ningún agente coincide con "%1$s".</string>
182+
183+ <!-- File browser -->
184+ <string name="search_files">Buscar archivos…</string>
185+ <string name="root">Raíz</string>
186+ <string name="no_matches">Sin coincidencias.</string>
187+ <string name="git_added">Añadido</string>
188+ <string name="git_modified">Modificado</string>
189+ <string name="git_deleted">Eliminado</string>
190+ <string name="binary_file">Archivo binario — vista previa no compatible.</string>
191+ <string name="empty_folder">Esta carpeta está vacía</string>
192+ <string name="empty_file">Este archivo está vacío</string>
193+ <string name="parent_dir">Directorio superior</string>
194+ <string name="folder">Carpeta: %1$s</string>
195+ <string name="file_label">Archivo: %1$s</string>
196+ <string name="file">Archivo</string>
197+ <string name="show_diff">Mostrar diff</string>
198+ <string name="show_raw">Mostrar sin formato</string>
199+
200+ <!-- Message metadata -->
201+ <string name="image">imagen</string>
202+ <string name="tokens_in_out">%1$s entrada · %2$s salida</string>
203+ <string name="cost_format_short">$%1$.2f</string>
204+ <string name="cost_format_long">$%1$.4f</string>
205+
206+ <!-- Settings -->
207+ <string name="appearance">Apariencia</string>
208+ <string name="dynamic_color">Color dinámico</string>
209+ <string name="dynamic_color_desc">Usa los colores del fondo de pantalla de Material You (Android 12+)</string>
210+ <string name="connection">Conexión</string>
211+ <string name="manage_servers">Gestionar servidores</string>
212+ <string name="about">Acerca de</string>
213+ <string name="about_version">opencode-android %1$s</string>
214+ <string name="about_desc">Un cliente nativo de Android para la API HTTP de opencode serve.</string>
215+
216+ <!-- Diagnostics -->
217+ <string name="diagnostics">Diagnósticos</string>
218+ <string name="diagnostics_desc">Los informes de fallos se guardan localmente en este dispositivo.</string>
219+ <string name="crash_reports">Informes de fallos</string>
220+ <string name="no_crash_reports">No hay fallos registrados.</string>
221+ <string name="clear_all">Borrar todo</string>
222+ <string name="clear_all_confirm">¿Eliminar todos los informes de fallos guardados? Esta acción no se puede deshacer.</string>
223+ <string name="crash_report">Informe de fallos</string>
224+ <string name="close">Cerrar</string>
225+ <string name="delete_report_title">¿Eliminar informe de fallos?</string>
226+ <string name="delete_report_text">Este informe se eliminará permanentemente.</string>
227+ <string name="report_load_failed">Error al cargar el informe de fallos.</string>
228+ <string name="crash_count_format">%1$d</string>
229+ <string name="crash_count_overflow">99+</string>
230+ <string name="report_deleted">Informe de fallos eliminado</string>
231+ <string name="crash_report_share_subject">Informe de fallos de opencode</string>
232+
233+ <!-- Notifications -->
234+ <string name="notif_channel_status">Actividad del agente</string>
235+ <string name="notif_channel_status_desc">Se muestra mientras un agente de opencode está en ejecución.</string>
236+ <string name="notif_channel_completed">Sesión completada</string>
237+ <string name="notif_channel_completed_desc">Se muestra cuando una sesión en segundo plano termina una ejecución.</string>
238+ <string name="notif_running_title">opencode</string>
239+ <string name="notif_running_text">El agente está trabajando…</string>
240+ <string name="notif_completed_title">Sesión lista</string>
241+ <string name="notif_completed_text">opencode respondió en «%1$s».</string>
242+ <string name="notif_channel_permission">Solicitudes de permiso</string>
243+ <string name="notif_channel_permission_desc">Se muestra cuando un agente en ejecución necesita tu aprobación para continuar.</string>
244+ <string name="notif_channel_error">Errores de sesión</string>
245+ <string name="notif_channel_error_desc">Se muestra cuando falla la ejecución de una sesión en segundo plano.</string>
246+ <string name="notif_permission_title">Se necesita aprobación en «%1$s»</string>
247+ <string name="notif_permission_fallback">Una herramienta quiere ejecutarse.</string>
248+ <string name="notif_error_title">La ejecución falló</string>
249+ <string name="notif_error_text">opencode encontró un error en «%1$s».</string>
250+ <string name="notif_action_allow_once">Permitir una vez</string>
251+ <string name="notif_action_always">Siempre</string>
252+ <string name="notif_action_reject">Rechazar</string>
253+ <string name="notif_action_reply">Responder</string>
254+ <string name="notif_reply_hint">Envía un seguimiento…</string>
255+ <string name="notif_reply_sent">Enviado</string>
256+
257+ <!-- UX additions -->
258+ <string name="tool_input">Entrada</string>
259+ <string name="copy_path">Copiar ruta</string>
260+ <string name="path_copied">Ruta copiada</string>
261+ <string name="open_file">Abrir archivo</string>
262+ <string name="unknown_message">Tipo de mensaje desconocido</string>
263+ <string name="unknown_part">Contenido no compatible</string>
264+ <string name="tool_preview">🔧 %1$s</string>
265+ <string name="server_reachable">Servidor accesible ✓</string>
266+ <string name="suggest_scheme">Añadir prefijo http://</string>
267+ <string name="sort">Ordenar</string>
268+ <string name="sort_recent">Actividad reciente</string>
269+ <string name="sort_title">Título</string>
270+ <string name="last_used_never">Sin usar aún</string>
271+ <string name="last_used">Usado por última vez %1$s</string>
272+ <string name="duplicate_server">Duplicar</string>
273+ <string name="find_in_file">Buscar en el archivo</string>
274+ <string name="find_previous">Buscar anterior</string>
275+ <string name="find_next">Buscar siguiente</string>
276+ <string name="find_hint">Buscar…</string>
277+ <string name="no_matches_in_file">Sin coincidencias</string>
278+ <string name="match_count">%1$d / %2$d</string>
279+ <string name="wrap_lines">Ajustar líneas</string>
280+ <string name="send_on_enter">Enviar con Intro</string>
281+ <string name="send_on_enter_desc">Cuando está desactivado, Intro inserta un salto de línea; pulsa Ctrl+Intro para enviar.</string>
282+ <string name="offline">Estás sin conexión</string>
283+ <string name="run_command_title">¿Ejecutar /%1$s?</string>
284+ <string name="run_command_text">¿Ejecutar el comando «%1$s»?</string>
285+ <string name="run">Ejecutar</string>
286+ <string name="command_busy">Espera a que termine la respuesta actual antes de ejecutar un comando.</string>
287+
288+ <!-- UX additions: chat overflow, date separators, settings retry -->
289+ <string name="more">Más</string>
290+ <string name="delete_session_chat">Eliminar sesión</string>
291+ <string name="delete_session_chat_title">¿Eliminar esta sesión?</string>
292+ <string name="delete_session_chat_text">«%1$s» se eliminará permanentemente. Esta acción no se puede deshacer.</string>
293+ <string name="rename_session_chat">Renombrar sesión</string>
294+ <string name="session_deleted_chat">Sesión eliminada</string>
295+ <string name="today">Hoy</string>
296+ <string name="yesterday">Ayer</string>
297+
298+ <!-- Search -->
299+ <string name="clear_search">Borrar búsqueda</string>
300+ <string name="search_in_files">Buscar en el contenido de archivos…</string>
301+ <string name="search_symbols_label">Buscar símbolos…</string>
302+ <string name="search_mode_files">Archivos</string>
303+ <string name="search_mode_text">Contenido</string>
304+ <string name="search_mode_symbols">Símbolos</string>
305+
306+ <!-- Attachments -->
307+ <string name="add_attachment">Añadir adjunto</string>
308+ <string name="attach_photo">Foto</string>
309+ <string name="attach_camera">Cámara</string>
310+ <string name="attach_file">Archivo</string>
311+ <string name="attachment_too_large">El archivo es demasiado grande para adjuntarlo.</string>
312+ <string name="attachment_failed">No se pudo adjuntar ese archivo.</string>
313+ <string name="attachment_limit">Se alcanzó el límite de adjuntos.</string>
314+ <string name="no_camera_app">No hay cámara disponible.</string>
315+
316+ <!-- Voice input -->
317+ <string name="voice_input">Entrada de voz</string>
318+ <string name="voice_prompt">Di tu mensaje</string>
319+ <string name="no_voice_app">La entrada de voz no está disponible en este dispositivo.</string>
320+
321+ <!-- Revert -->
322+ <string name="revert_to_here">Revertir hasta aquí</string>
323+ <string name="reverted_banner">Revertido — los mensajes posteriores están ocultos.</string>
324+
325+ <!-- Sharing / summarize / init / shell -->
326+ <string name="create_share_link">Crear enlace para compartir</string>
327+ <string name="copy_share_link">Copiar enlace para compartir</string>
328+ <string name="stop_sharing">Dejar de compartir</string>
329+ <string name="link_copied">Enlace copiado</string>
330+ <string name="summarize_conversation">Resumir conversación</string>
331+ <string name="generate_agents_md">Generar AGENTS.md</string>
332+ <string name="run_shell_command">Ejecutar comando de shell</string>
333+ <string name="shell_command_label">Comando</string>
334+ <string name="shell_command_hint">ls -la</string>
335+ <string name="needs_model">Selecciona primero un modelo.</string>
336+
337+ <!-- App lock (biometric) -->
338+ <string name="app_lock">Bloqueo de la app</string>
339+ <string name="app_lock_desc">Requiere datos biométricos o credencial del dispositivo para abrir la app.</string>
340+ <string name="app_lock_unavailable">No hay datos biométricos ni credencial del dispositivo configurados.</string>
341+ <string name="app_lock_prompt_title">Desbloquear opencode</string>
342+ <string name="app_lock_prompt_subtitle">Autentícate para acceder a tus servidores.</string>
343+ <string name="app_locked">opencode está bloqueado</string>
344+ <string name="app_unlock">Desbloquear</string>
345+
346+ <!-- Nuevas funciones -->
347+ <string name="edit_message">Editar</string>
348+ <string name="read_aloud">Leer en voz alta</string>
349+ <string name="stop_reading">Dejar de leer</string>
350+ <string name="session_pin">Fijar</string>
351+ <string name="session_unpin">Desfijar</string>
352+ <string name="session_archive">Archivar</string>
353+ <string name="session_unarchive">Desarchivar</string>
354+ <string name="session_pinned">Fijada</string>
355+ <string name="show_archived">Mostrar archivadas</string>
356+ <string name="hide_archived">Ocultar archivadas</string>
357+ <string name="search_all">Buscar en todas las sesiones</string>
358+ <string name="search_all_title">Buscar sesiones</string>
359+ <string name="search_all_hint">Buscar en todas las conversaciones…</string>
360+ <string name="search_no_matches">No hay mensajes coincidentes</string>
361+ <string name="search_truncated">Mostrando resultados solo de las sesiones más recientes.</string>
362+</resources>