export default { translation: { // NOTE: Untranslated strings fall back to English. 'Welcome! 🥳': '¡Bienvenido! 🥳', About: 'Acerca de', 'New Note': 'Nueva nota', Post: 'Publicar', Home: 'Inicio', Feed: 'Feed', 'Favorite Relays': 'Relés favoritos', 'See the newest notes from your follows': 'See the newest notes from your follows', 'All favorite relays': 'Todos los relés favoritos', 'Pinned note': 'Pinned note', 'Relay settings': 'Configuración de relés', 'Relay auth accepted (NIP-42)': 'The relay accepted authentication (NIP-42): {{relay}}{{detailSuffix}}', 'Relay auth rejected (NIP-42)': 'The relay rejected authentication (NIP-42): {{relay}} — {{message}}', 'Relay auth error unknown': 'Unknown error', Settings: 'Ajustes', 'Account menu': 'Account menu', SidebarRelays: 'Relés', Refresh: 'Actualizar', 'refresh.longPressHardReload': 'Long-press: reload app and restore feed cache', 'link.expandNostrEmbed': 'Show Nostr preview', Profile: 'Perfil', Logout: 'Cerrar sesión', Following: 'Siguiendo', followings: 'siguiendo', boosted: 'boosteado', 'Boosted by:': 'Boosted by:', 'Zapped by:': 'Zapped by:', 'Liked by:': 'Liked by:', 'Disliked by:': 'Disliked by:', 'n more interactors': '{{count}} more', 'noteStats.longPressForDetails': 'Long-press for details', 'Thumbs up': 'Thumbs up', 'Thumbs down': 'Thumbs down', 'Arrow up': 'Arrow up', Dislikes: 'Dislikes', 'Original post': 'Original post', 'just now': 'justo ahora', 'n minutes ago': 'hace {{n}} minutos', 'n m': '{{n}}m', 'n hours ago': 'hace {{n}} horas', 'n h': '{{n}}h', 'n days ago': 'hace {{n}} días', 'n d': '{{n}}d', date: '{{timestamp, date}}', Follow: 'Seguir', Unfollow: 'Dejar de seguir', 'Follow failed': 'Error al seguir', 'Unfollow failed': 'Error al dejar de seguir', 'show new notes': 'mostrar nuevas notas', 'loading...': 'cargando...', 'Loading...': 'Cargando...', 'no more notes': 'no hay más notas', 'calendar entries': 'calendar entries', 'Loading calendar events...': 'Loading calendar events...', 'No calendar events found': 'No calendar events found', 'Calendar events in the next {{count}} months': 'Calendar events in the next {{count}} months', 'The nostr.band relay appears to be temporarily out of service. Please try again later.': 'The nostr.band relay appears to be temporarily out of service. Please try again later.', 'reply to': 'responder a', reply: 'responder', Reply: 'Responder', 'load more older replies': 'cargar más respuestas antiguas', 'Write something...': 'Escribe algo...', Cancel: 'Cancelar', Mentions: 'Menciones', 'Search for event or address…': 'Search for event or address…', 'Search notes…': 'Search notes…', 'No notes found': 'No notes found', 'Failed to post': 'Error al publicar', 'Post successful': 'Publicación exitosa', 'Your post has been published': 'Tu publicación ha sido publicada', Boost: 'Boost', 'Boost published': 'Boost publicado', Quote: 'Citar', 'Copy event ID': 'Copiar ID del evento', 'Copy user ID': 'Copiar ID del usuario', 'Send public message': 'Send public message', 'View raw event': 'Ver evento sin procesar', 'View attestation': 'View attestation', 'Payment attestation': 'Payment attestation', 'Raw Event': 'Raw Event', 'Edit this event': 'Edit this event', 'Clone or fork this event': 'Clone or fork this event', 'Event kind': 'Event kind', 'Note content': 'Note content', Publish: 'Publish', 'Post published': 'Post published', 'Edit content and tags, then publish a new signed event.': 'Edit content and tags, then publish a new signed event.', 'Log in to publish': 'Log in to publish', 'Set when you publish': 'set when you publish', 'id and sig are assigned when you publish': 'id and sig are assigned when you publish', 'Published to some relays only': 'Published to some relays only', 'Add field': 'Add field', 'View full profile': 'View full profile', Like: 'Me gusta', 'switch to light theme': 'cambiar a tema claro', 'switch to dark theme': 'cambiar a tema oscuro', 'switch to system theme': 'cambiar al tema del sistema', Note: 'Nota', note: 'nota', "username's following": 'Siguiendo de {{username}}', "username's used relays": 'Relés usados por {{username}}', "username's muted": 'Silenciados de {{username}}', Login: 'Iniciar sesión', downloadDesktopApp: 'Download app', 'Please log in to view notifications.': 'Please log in to view notifications.', 'Follows you': 'Te sigue', 'Relay Settings': 'Configuración de relés', 'Relays and Storage Settings': 'Relays and Storage Settings', 'Only my relay lists': 'Only my relay lists', 'When on, the app only opens read connections to relays on your Read & Write, Favorite, Cache, and HTTP relay lists. Publishing is unchanged. Relay explore and Search pages are exempt.': 'When on, read connections stay on your relay lists plus the built-in profile index relays (profiles.nostr1.com, relay.damus.io, etc.). Other relays used for feeds, threads, or search are not contacted unless listed. Publishing is unchanged. Relay explore and Search pages are exempt.', 'Relay set name': 'Nombre del conjunto de relés', 'Add a new relay set': 'Agregar un nuevo conjunto de relés', Add: 'Agregar', 'n relays': '{{n}} relés', Rename: 'Renombrar', 'Copy share link': 'Copy share link', 'Copy address': 'Copy address', 'Copy payto URI': 'Copy payto URI', 'Copied payto address': 'Copied payto address', 'Copied to clipboard': 'Copied to clipboard', 'Copied {{label}} address': 'Copied {{label}} address', 'Lightning payment address – copy to pay via your wallet': 'Lightning payment address – copy to pay via your wallet', 'Payment address': 'Payment address', 'Payment address – copy to use in your wallet or app': 'Payment address – copy to use in your wallet or app', 'Open in your wallet app or copy the address below.': 'Open in your wallet app or copy the address below.', 'Click to open payment options': 'Click to open payment options', 'Click to copy address': 'Click to copy address', 'Open on website': 'Open on website', 'Open in wallet': 'Open in wallet', 'Create invoice': 'Create invoice', 'Copy invoice': 'Copy invoice', 'Failed to create invoice': 'Failed to create invoice', 'Amount (sats)': 'Amount (sats)', 'Approximate equivalent:': 'Approximate equivalent:', 'Pay with connected wallet': 'Pay with connected wallet', 'Payment sent': 'Payment sent', 'Pay via a BOLT11 invoice or copy the Lightning address': 'Pay via a BOLT11 invoice or copy the Lightning address', 'Create a BOLT11 invoice from this Lightning address, then pay in your connected wallet or another app.': 'Create a BOLT11 invoice from this Lightning address, then pay in your connected wallet or another app.', 'Description (optional)': 'Description (optional)', 'Payment description': 'Payment description', 'This address does not support payment descriptions.': 'This address does not support payment descriptions.', 'Could not read this Lightning address (network or browser block). Descriptions need LNURL-pay support on the recipient side.': 'Could not read this Lightning address (network or browser block). Descriptions need LNURL-pay support on the recipient side.', 'Lightning payment': 'Lightning payment', 'Invoice ready': 'Invoice ready', 'BOLT11 invoice': 'BOLT11 invoice', 'Scan to pay with a Lightning wallet': 'Scan to pay with a Lightning wallet', 'Scan to pay with your wallet': 'Scan to pay with your wallet', 'Regenerate invoice': 'Regenerate invoice', 'Open in {{name}}': 'Open in {{name}}', 'Open with': 'Open with', 'See reports': 'See reports', 'Profile reports dialog description': 'Reports received by and submitted from this profile.', 'Raw profile event': 'Raw profile event', 'Full profile event': 'Full profile event', 'Event (JSON)': 'Event (JSON)', 'Save full profile': 'Save full profile', 'Add tag': 'Add tag', 'Remove tag': 'Remove tag', 'Tag name': 'Tag name', Value: 'Value', 'Add value to tag': 'Add value to tag', 'Remove value': 'Remove value', 'No tags. Click "Add tag" to add one.': 'No tags. Click "Add tag" to add one.', 'Profile updated': 'Profile updated', 'Failed to publish profile': 'Failed to publish profile', 'Invalid profile JSON': 'Invalid profile JSON', 'Refresh cache': 'Refresh cache', 'Force-refresh profile and payment info from relays': 'Force-refresh profile and payment info from relays', 'Profile and payment cache refreshed': 'Profile and payment cache refreshed', 'Failed to refresh cache': 'Failed to refresh cache', 'Raw payment info event': 'Raw payment info event', 'Payment info': 'Payment info', 'Edit payment info': 'Edit payment info', 'Add payment info': 'Add payment info', 'No payment info event yet. Click "Add payment info" to create one.': 'No payment info event yet. Click "Add payment info" to create one.', 'Content (JSON)': 'Content (JSON)', Tags: 'Tags', 'Tags (JSON array of arrays, e.g. [["payto","lightning","user@domain.com"]])': 'Tags (JSON array of arrays, e.g. [["payto","lightning","user@domain.com"]])', 'Payment info updated': 'Payment info updated', 'Failed to publish payment info': 'Failed to publish payment info', 'Invalid tags JSON': 'Invalid tags JSON', 'Payment methods': 'Payment methods', 'Send a payment to this user': 'Send a payment to this user', 'No payment methods available for this profile': 'No payment methods available for this profile', 'Other payment methods': 'Other payment methods', 'Lightning address for zap': 'Lightning address for zap', 'Select lightning address': 'Select lightning address', 'Tips above 10k sats can use Bitcoin on-chain.': 'Tips above 10k sats can use Bitcoin on-chain.', 'Zap dialog other payment hint': 'Tap a link to open PayPal or copy an address. Lightning tips use the button below.', 'Tip notice prompt title': 'Let them know?', 'Send them a message': 'Send them a message', 'Send a message': 'Send a message', 'Post payment prompt label': 'If you have successfully completed a payment, you can:', 'Send them a public message': 'Send them a public message', 'Post payment public message hint': 'This is not encrypted, but it goes to their notifications, instead of the feeds.', 'Request a superchat': 'Request a superchat', 'Post payment superchat hint': 'This sends an unencrypted payment notification to them, which can appear as a superchat in the related thread or wall, if they attest to receiving the payment.', 'Superchat request prompt description': 'Publish a payment notification (kind 9740). The recipient can attest to receiving your payment so this message may appear as a superchat.', 'Superchat message': 'Superchat message', 'Superchat message placeholder': 'Thank you for this post!', 'Superchat estimated amount (sats)': 'Estimated payment amount (sats)', 'Superchat estimated amount hint': 'Optional. Stored on the event as millisats (sats × 1000).', 'Send superchat request': 'Send superchat request', 'Superchat request sent': 'Superchat request sent', 'Failed to send superchat request': 'Failed to send superchat request: {{error}}', Superchat: 'Superchat', Superchats: 'Superchats', 'Profile wall superchats': 'Profile wall superchats', 'Invalid superchat': 'Invalid superchat', 'Invalid Monero tip': 'Invalid Monero tip', 'Monero tip': 'Monero tip', 'Monero tip note': 'Tipped note', 'Monero tip profile': 'Tipped profile', tipped: 'tipped', '(No message included.)': '(No message included.)', 'Turn this into a superchat!': 'Turn this into a superchat!', 'Superchat attested': 'Superchat attested', 'Confirmed by recipient': 'Confirmed by recipient', 'Failed to attest superchat': 'Failed to attest superchat: {{error}}', 'Superchat thread': 'View thread', 'Superchat profile': 'View profile', 'View thread': 'View thread', 'View profile': 'View profile', to: 'to', 'Payment target': 'Payment target', 'Zap lnurl comment label': 'Wallet comment (optional)', 'Zap lnurl comment hint': 'Shown on the Lightning invoice only. To appear in a thread, request a superchat after paying.', 'Zap superchat flow hint': 'After you pay, you can send a kind 24 public message or request a superchat. Superchats use kind 9740; the recipient attests receipt before they appear in threads.', 'Zap superchat wallet hint': 'After paying, you can send a public message or request a superchat so the recipient can attest your payment.', 'Tip notice success only note': 'Only if you already sent a tip successfully (Lightning or another payment method).', 'Tip notice prompt description': 'Send a public message (kind 24) so they know you tipped.', 'I just sent you a tip!': 'I just sent you a tip!', 'Tip notice sent': 'Message sent', 'Failed to send tip notice': 'Failed to send message: {{error}}', Send: 'Send', 'Payment type': 'Payment type', 'paytoEditor.intro': 'Choose a payment type, then enter the address or username shown in the hint below each field.', 'paytoEditor.other': 'Other', 'paytoEditor.customTypeLabel': 'Custom payment type', 'paytoEditor.customTypePlaceholder': 'Custom type (e.g. mycoin)', 'paytoEditor.customTypeHint': 'This is for custom options not in the list. Use lowercase letters, numbers, and hyphens in the type name.', 'paytoEditor.choosePresetType': 'Choose from list', 'NIP-A3 payto tags: type (e.g. lightning) and authority (e.g. user@domain.com).': 'NIP-A3 payto tags: type (e.g. lightning) and authority (e.g. user@domain.com).', 'Type (e.g. lightning)': 'Type (e.g. lightning)', 'Authority (e.g. user@domain.com)': 'Authority (e.g. user@domain.com)', 'Add payment method': 'Add payment method', Remove: 'Remove', 'Additional content (JSON)': 'Additional content (JSON)', 'Show full event JSON': 'Show full event JSON', 'Tag list': 'Tag list', 'Profile event tags (e.g. lud16, nip05, website). Saved with kind 0.': 'Profile event tags (e.g. lud16, nip05, website). Saved with kind 0.', 'Tag value': 'Tag value', 'Saving…': 'Saving…', 'Share with Imwald': 'Compartir con Imwald', 'Share with Alexandria': 'Compartir con Alexandria', 'Start video call': 'Start video call', 'Copy call invite link': 'Copy call invite link', 'Start call about this': 'Start call about this', 'Send call invite': 'Send call invite', 'Read this note aloud': 'Read this note aloud', 'Read-aloud is not supported in this browser': 'Read-aloud is not supported in this browser', 'Nothing to read aloud': 'Nothing to read aloud', 'Read aloud quoted from': 'Quoted from {{name}}.', 'Read aloud unknown author': 'Unknown author', 'Read aloud embedded note unavailable': 'Quoted note not loaded.', 'Read aloud nostr profile unavailable': 'Nostr profile reference.', 'Read aloud relay reference': 'Nostr relay reference.', 'Read aloud nostr reference unavailable': 'Nostr reference.', 'Read-aloud failed': 'Read-aloud failed', 'Read aloud': 'Read aloud', 'Read-aloud idle': 'Idle', 'Preparing read-aloud…': 'Preparing read-aloud…', 'Requesting audio…': 'Requesting audio…', 'Loading audio…': 'Loading audio…', 'Preparing player…': 'Preparing player…', 'Starting stream…': 'Starting stream…', 'Loading media…': 'Loading media…', 'Buffering…': 'Buffering…', Playing: 'Playing', Paused: 'Paused', 'Read-aloud finished': 'Finished', 'Read-aloud error': 'Error', 'TTS endpoint': 'TTS endpoint', 'Using browser speech synthesis': 'Using browser speech synthesis', 'Read-aloud section progress': 'Section {{current}} of {{total}}', 'Request sent': 'Request sent', 'Response received': 'Response received', 'Playback started': 'Playback started', Characters: 'Characters', Pause: 'Pause', Play: 'Play', Stop: 'Stop', 'Read-aloud sections': 'Read-aloud sections', 'Read-aloud overall progress': 'Overall progress', 'Read-aloud section done': 'Section {{index}}: finished', 'Read-aloud section pending': 'Section {{index}}: not started yet', 'Read-aloud section fetching': 'Section {{index}}: requesting audio', 'Read-aloud section preparing audio': 'Section {{index}}: loading audio', 'Read-aloud section playing': 'Section {{index}}: playing', 'Read-aloud section paused': 'Section {{index}}: paused', 'Read-aloud legend fetching': 'Requesting audio for this section from the server…', 'Read-aloud legend buffering': 'Decoding audio for this section…', 'Read-aloud legend playing': 'Playing this section.', 'Read-aloud legend paused': 'Playback paused.', 'Read-aloud Piper fallback notice': 'Server voice (Piper) could not be used. Playing with your browser voice instead.', 'Read-aloud Piper fallback detail label': 'Piper error', 'Read-aloud Piper status region': 'Piper text-to-speech status', 'Read-aloud Piper status heading': 'Piper (server voice)', 'Read-aloud Piper skipped notice': 'No Piper URL is configured for this app (see VITE_READ_ALOUD_TTS_URL). Only the browser voice is used — the server was not contacted.', 'Read-aloud Piper attempt started': 'Piper was started at {{time}} (this read-aloud used the server first).', 'Read-aloud Piper endpoint tried': 'URL used: {{url}}', 'Join the video call': 'Join the video call', 'Schedule video call': 'Schedule video call', "You're invited to a scheduled video call.": "You're invited to a scheduled video call.", 'Create a calendar event and send an invite. The recipient will see the event with a join link.': 'Create a calendar event and send an invite. The recipient will see the event with a join link.', 'Schedule a video call': 'Schedule a video call', 'Create a calendar event and send kind 24 invites to each listed invitee.': 'Create a calendar event and send kind 24 invites to each listed invitee.', Invitees: 'Invitees', 'Paste nostr:npub1... or nostr:nprofile1... (one or more)': 'Paste nostr:npub1... or nostr:nprofile1... (one or more)', 'Schedule and send invites': 'Schedule and send invites', 'Add at least one invitee (paste nostr:npub or nostr:nprofile links)': 'Add at least one invitee (paste nostr:npub or nostr:nprofile links)', 'Scheduled call created and {{count}} invite(s) sent': 'Scheduled call created and {{count}} invite(s) sent', 'Join video call': 'Join video call', 'Open link': 'Open link', 'All tags': 'All tags', 'Start time-zone id': 'Start time-zone id', 'End time-zone id': 'End time-zone id', calendarNip52Location: 'Location', calendarNip52Locations: 'Locations', calendarNip52Summary: 'Summary', calendarNip52Geohash: 'Geohash', calendarNip52ViewGeohash: 'Mapa Geohash', calendarNip52GoogleMaps: 'Google Maps', calendarNip52DayIndices: 'Días indexados (UTC)', calendarNip52DayIndicesHint: 'Las etiquetas D de NIP-52 marcan días civiles UTC enteros (índice de día Unix) para consultar eventos con hora; varios valores cubren un rango de varios días.', calendarNip52CalendarInclusion: 'Calendar inclusion', calendarNip52CalendarInclusionHint: 'This event requests inclusion in the referenced collaborative calendar (kind 31924).', calendarNip52References: 'References & links', calendarNip52Identifier: 'Event identifier', calendarNip52OtherTags: 'Other tags', 'Scheduled video call': 'Scheduled video call', 'Video call': 'Video call', 'Schedule and send invite': 'Schedule and send invite', 'Scheduling…': 'Scheduling…', 'Please set a start time': 'Please set a start time', 'End time must be after start time': 'End time must be after start time', 'Failed to schedule call': 'Failed to schedule call', 'Scheduled call created and invite sent': 'Scheduled call created and invite sent', RSVP: 'RSVP', 'RSVP: {{status}}': 'RSVP: {{status}}', Accepted: 'Accepted', Tentative: 'Tentative', Declined: 'Declined', 'You need to log in to RSVP': 'You need to log in to RSVP', 'RSVP updated': 'RSVP updated', 'Failed to update RSVP': 'Failed to update RSVP', Organizer: 'Organizer', Attendees: 'Attendees', 'No response': 'No response', 'Calendar Events': 'Calendar Events', 'Calendar Event': 'Calendar Event', 'Schedule in-person meeting': 'Schedule in-person meeting', 'Create a calendar event and send an invite. No video link — for real-life meetups, conferences, etc.': 'Create a calendar event and send an invite. No video link — for real-life meetups, conferences, etc.', "You're invited to an in-person meeting.": "You're invited to an in-person meeting.", 'Meeting created and invite sent': 'Meeting created and invite sent', 'Failed to create meeting': 'Failed to create meeting', 'Create and send invite': 'Create and send invite', 'Creating…': 'Creating…', 'In-person meeting': 'In-person meeting', Location: 'Location', 'Address, venue, or place': 'Address, venue, or place', Description: 'Description', 'Optional notes': 'Optional notes', 'Create a calendar event for a real-life meetup and send kind 24 invites to each invitee.': 'Create a calendar event for a real-life meetup and send kind 24 invites to each invitee.', 'Meeting created and {{count}} invite(s) sent': 'Meeting created and {{count}} invite(s) sent', 'Create and send invites': 'Create and send invites', Title: 'Title', Start: 'Start', End: 'End', Delete: 'Eliminar', 'Relay already exists': 'El relé ya existe', 'invalid relay URL': 'URL del relé inválida', 'Relay URL…': 'wss://… or relay host', 'Open relay': 'Open relay', 'Add a new relay': 'Agregar un nuevo relé', back: 'atrás', 'Lost in the void': 'Perdido en el vacío', 'Carry me home': 'Llévame a casa', 'no replies': 'sin respuestas', 'Reply to': 'Responder a', Search: 'Buscar', 'The relays you are connected to do not support search': 'Los relés a los que estás conectado no soportan la búsqueda', 'Show more...': 'Mostrar más...', 'Search dropdown profile search': 'PROFILES', 'Profile search no results': 'No matching profiles were found for this search.', 'Profile search failed': 'Profile search could not complete. Check your connection or try again.', 'All users': 'Todos los usuarios', 'Display replies': 'Mostrar respuestas', Notes: 'Notas', Replies: 'Respuestas', Gallery: 'Galería', Notifications: 'Notificaciones', 'no more notifications': 'no hay más notificaciones', 'Using private key login is insecure. It is recommended to use a browser extension for login, such as alby, nostr-keyx or nos2x. If you must use a private key, please set a password for encryption at minimum.': 'Usar el inicio de sesión con clave privada es inseguro. Se recomienda usar una extensión de navegador para iniciar sesión, como alby, nostr-keyx o nos2x. Si debes usar una clave privada, establece al menos una contraseña para cifrarla.', 'Login with Browser Extension': 'Iniciar sesión con extensión de navegador', 'Login with Bunker': 'Iniciar sesión con Bunker', 'Login with Private Key': 'Iniciar sesión con clave privada', 'Login with npub (read-only)': 'Iniciar sesión con npub (solo lectura)', readOnlySession: { label: 'Read-only', labelShort: 'R/O', hint: 'Browsing without a signing key. Sign in with an extension, nsec, or another method to post, react, and edit.' }, 'reload notes': 'recargar notas', 'Logged in Accounts': 'Cuentas conectadas', 'Add an Account': 'Agregar una cuenta', 'More options': 'Más opciones', 'Add client tag': 'Agregar etiqueta de cliente', 'Show others this was sent via Imwald': 'Mostrar a otros que esto se envió vía Imwald', 'Are you sure you want to logout?': '¿Estás seguro de que deseas cerrar sesión?', 'relay sets': 'conjuntos de relés', edit: 'editar', Languages: 'Idiomas', Theme: 'Tema', System: 'Sistema', Light: 'Claro', Dark: 'Oscuro', Temporary: 'Temporal', 'Choose a relay set': 'Selecciona un conjunto de relés', 'Switch account': 'Cambiar de cuenta', Pictures: 'Imágenes', 'Picture note': 'Nota con imagen', 'A special note for picture-first clients like Olas': 'Una nota especial para clientes que priorizan imagen, como Olas', 'Picture note requires images': 'La nota con imagen requiere imágenes', Relays: 'Relés', Image: 'imagen', 'This image could not be loaded.': 'This image could not be loaded.', 'Invalid or unsupported image address.': 'Invalid or unsupported image address.', 'Open image link': 'Open image link', 'Upload Image': 'Upload Image', 'Insert emoji': 'Insert emoji', 'Insert GIF': 'Insert GIF', 'Insert meme': 'Insert meme', 'Search GIFs': 'Search GIFs', 'Search memes': 'Search memes', 'Choose a GIF': 'Choose a GIF', 'Choose a meme': 'Choose a meme', 'Search GifBuddy for more GIFs': 'Search GifBuddy for more GIFs', 'Add your own GIFs': 'Add your own GIFs', 'Add your own meme templates': 'Add your own meme templates', 'Description (optional, for search)': 'Description (optional, for search)', 'e.g. happy birthday, thumbs up': 'e.g. happy birthday, thumbs up', 'e.g. drake, distracted boyfriend': 'e.g. drake, distracted boyfriend', 'Uploading...': 'Uploading...', 'No GIFs found. Try searching or add your own. GIFs come from Nostr kind 1063 (NIP-94) events on GIF relays.': 'No GIFs found. Try searching or add your own. GIFs come from Nostr kind 1063 (NIP-94) events on GIF relays.', 'No meme templates found. Try searching or open Meme Amigo. The grid only lists kind 1063 (NIP-94) files tagged memeamigo (not random photos from notes).': 'No meme templates found. Try searching or open Meme Amigo. The grid only lists kind 1063 (NIP-94) files tagged memeamigo (not random photos from notes).', 'Failed to publish meme template for the picker': 'Failed to publish meme template for the picker', '{{name}} is not a GIF file': '{{name}} is not a GIF file', '{{name}} is not a JPEG, PNG, or WebP file': '{{name}} is not a JPEG, PNG, or WebP file', 'R & W': 'L y E', Read: 'Leer', Write: 'Escribir', 'Pull relay sets': 'Recibir conjuntos de relés', 'Select the relay sets you want to pull': 'Selecciona los conjuntos de relés que deseas recibir', 'No relay sets found': 'No se encontraron conjuntos de relés', 'Pull n relay sets': 'Recibir {{n}} conjuntos de relés', Pull: 'Recibir', 'Select all': 'Seleccionar todo', 'Relay Sets': 'Conjuntos de relés', 'Read & Write Relays': 'Relés de lectura y escritura', 'read relays description': 'Los relés de lectura se usan para consultar eventos sobre ti. Otros usuarios publican eventos que deseas ver en tus relés de lectura.', 'write relays description': 'Los relés de escritura se usan para publicar tus eventos. Otros usuarios consultan tus eventos desde tus relés de escritura.', 'read & write relays notice': 'El número de servidores de lectura y escritura debería mantenerse idealmente entre 2 y 4.', "Don't have an account yet?": '¿Aún no tienes una cuenta?', 'or simply generate a private key': 'o simplemente genera una clave privada', 'This is a private key. Do not share it with anyone. Keep it safe and secure. You will not be able to recover it if you lose it.': 'Esta es una clave privada. No la compartas con nadie. Guárdala de forma segura, ya que no podrás recuperarla si la pierdes.', Edit: 'Editar', Save: 'Guardar', 'Display Name': 'Nombre para mostrar', Bio: 'Biografía', 'Nostr Address (NIP-05)': 'Dirección Nostr (NIP-05)', 'Invalid NIP-05 address': 'Dirección NIP-05 inválida', 'Copy private key': 'Copiar clave privada', 'Enter the password to decrypt your ncryptsec': 'Introduce la contraseña para descifrar tu ncryptsec', Back: 'Volver', 'optional: encrypt nsec': 'opcional: cifrar nsec', password: 'contraseña', 'Sign up': 'Regístrate', 'Save to': 'Guardar en', 'Enter a name for the new relay set': 'Introduce un nombre para el nuevo conjunto de relés', 'Save to a new relay set': 'Guardar en un nuevo conjunto de relés', Mute: 'Silenciar', Muted: 'Silenciado', Unmute: 'Activar sonido', 'Unmute user': 'Activar sonido del usuario', Block: 'Block', Unblock: 'Unblock', blocked: 'blocked', 'Append n relays': 'Agregar {{n}} relés', Append: 'Agregar', 'Select relays to append': 'Selecciona relés para agregar', 'calculating...': 'calculando...', 'Calculate optimal read relays': 'Calcular relés de lectura óptimos', 'Login to set': 'Inicia sesión para ajustar', 'Please login to view following feed': 'Por favor inicia sesión para ver el feed de seguidos', 'Follow set': 'Follow set', 'Follow set feed empty': 'This NIP-51 list is empty, was not found, or relays could not load it yet.', 'Send only to r': 'Enviar únicamente a {{r}}', 'Send only to these relays': 'Enviar únicamente a estos relés', Explore: 'Explorar', 'Relay reviews': 'Reseñas de relays', 'Search relays': 'Buscar relés', relayInfoBadgeAuth: 'Autenticación', relayInfoBadgeSearch: 'Búsqueda', relayInfoBadgePayment: 'Pago', Operator: 'Operador', Contact: 'Contacto', Software: 'Software', Version: 'Versión', 'Random Relays': 'Relés aleatorios', randomRelaysRefresh: 'Actualizar', 'Explore more': 'Explorar más', 'Payment page': 'Página de pago', 'Supported NIPs': 'NIPs soportados', 'Relay liveliness (NIP-66)': 'Relay liveliness (NIP-66)', 'Relay monitor (NIP-66)': 'Relay monitor (NIP-66)', 'Auth required': 'Auth required', 'Public (no auth)': 'Public (no auth)', 'Payment required': 'Payment required', 'No payment': 'No payment', 'Writes required': 'Writes required', 'Writes open': 'Writes open', 'PoW required': 'PoW required', 'No PoW': 'No PoW', 'RTT open': 'RTT open', 'RTT read': 'RTT read', 'RTT write': 'RTT write', 'Supported NIPs (from monitor)': 'Supported NIPs (from monitor)', 'Last reported by monitor': 'Last reported by monitor', Network: 'Network', Type: 'Type', Topics: 'Topics', 'Open in a': 'Abrir en {{a}}', 'Cannot handle event of kind k': 'No se puede manejar el evento de tipo {{k}}', 'Unsupported event preview': 'There isn’t a dedicated card for this event type yet. Here’s a readable preview.', 'No text content in event': 'No text in this event.', 'Technical details': 'Technical details', 'Event kind and time': 'Kind {{kind}} · {{time}}', 'Event kind label': 'Kind {{kind}}', 'Note kind label line': 'KIND: {{kind}} · {{description}}', 'Unknown note declared kind tag': 'Tagged kind: {{value}}', 'Unknown note tagged pubkey': 'Tagged pubkey', 'Unknown note tagged content': 'Content', 'Unknown note reference tags': 'Reference tags (e, p, q, a)', 'Starred spells': 'Starred spells', 'Spell star add title': 'Star spell (adds to your Nostr bookmarks)', 'Spell star remove title': 'Unstar spell (removes from your Nostr bookmarks)', 'Copy JSON': 'Copy JSON', Verse: 'Verse', 'Notification reaction summary': 'reacted to this note.', 'Notification discussion upvote summary': 'upvoted in this discussion.', 'Notification discussion downvote summary': 'downvoted in this discussion.', 'Notification boost summary': 'Boosted this note', 'Notification boost detail': 'The preview above is the original post.', 'Notification poll vote summary': 'Voted on the poll above.', 'Notification poll vote options count': '{{count}} option(s) selected', 'Imwald synthetic event': 'Imwald synthetic event', '+ Add a URL to this list': 'Add a URL to this list', 'Add a web URL': 'Add a web URL', 'Add web URL to feed description': 'Adds a card to this feed. Open the page from the card when you want to read, reply, react, or highlight.', 'Add to feed': 'Add to feed', 'Open any https page in the side panel to reply, react, and discuss on Nostr.': 'Open any https page in the side panel to reply, react, and discuss on Nostr.', 'Enter a valid http(s) URL': 'Enter a valid http(s) URL', 'Opened by URL — not from your RSS list. Nostr thread is still tied to this link.': 'Opened by URL — not from your RSS list. Nostr thread is still tied to this link.', 'Open in browser': 'Open in browser', 'liveEvent.zapStreamPlayer': 'Live stream (zap.stream)', liveStreamEmbedSuppressed: 'Inline live stream is hidden because your kind filter excludes NIP-53 streams. Open via njump or another client below.', 'liveEvent.hlsPlaybackUnavailable': 'Inline playback failed (the stream may be offline, ended, or blocked). You can still open the hosted watch page below.', 'liveEvent.hideFromCarousel': 'Hide from carousel', 'liveEvent.showInCarousel': 'Show in carousel', 'liveEvent.hideFromCarouselTitle': 'Hide this stream in the live carousel (saved in this browser on this device). Click again to show it.', 'liveEvent.showInCarouselTitle': 'Show this stream in the live carousel again.', 'Web page': 'Web page', Open: 'Open', 'Sorry! The note cannot be found 😔': '¡Lo siento! No se pudo encontrar la nota 😔', 'This user has been muted': 'Este usuario ha sido silenciado', Wallet: 'Billetera', Sats: 'Satoshis', sats: 'satoshis', 'Zap to': 'Enviar zap a', 'Zap n sats': 'Enviar {{n}} satoshis', zapComment: 'Comentario', 'Default zap amount': 'Cantidad de zap predeterminada', 'Default zap comment': 'Comentario predeterminado de zap', 'Lightning Address (or LNURL)': 'Dirección Lightning (o LNURL)', 'Quick zap': 'Zap rápido', 'Preferred payto category': 'Categoría payto preferida', 'Show this category expanded on payment method lists; other categories collapse behind an accordion.': 'Muestra esta categoría expandida en las listas de métodos de pago; las demás se pliegan en un acordeón.', 'Show all categories': 'Mostrar todas las categorías', 'Other payment categories ({{count}})': 'Otras categorías de pago ({{count}})', 'paytoCategory.bitcoin': 'Bitcoin', 'paytoCategory.bitcoin-layer': 'Capa Bitcoin (Lightning)', 'paytoCategory.monero': 'Monero', 'paytoCategory.crypto': 'Cripto', 'paytoCategory.stablecoin': 'Stablecoin', 'paytoCategory.fiat': 'Fiat', 'paytoCategory.tip': 'Propina', 'If enabled, you can zap with a single click. Click and hold for custom amounts': 'Si está habilitado, puedes enviar un zap con un solo clic. Haz clic y mantén pulsado para cantidades personalizadas', 'Include public zap receipt': 'Include public zap receipt', 'When off, your zap may still succeed but a public receipt may not be published to relays': 'When off, your zap may still succeed but a public receipt may not be published to relays', All: 'Todo', Reactions: 'Reacciones', Zaps: 'Zaps', Boosts: 'Boosts', Badges: 'Badges', Reports: 'Reports', 'Enjoying Imwald?': '¿Te gusta Imwald?', 'Your donation helps me maintain Imwald and make it better! 😊': '¡Tu donación me ayuda a mantener y mejorar Imwald! 😊', 'Earlier notifications': 'Notificaciones anteriores', 'Temporarily display this note': 'Mostrar esta nota temporalmente', buttonFollowing: 'Siguiendo', 'Are you sure you want to unfollow this user?': '¿Estás seguro de que deseas dejar de seguir a este usuario?', 'Recent Supporters': 'Últimos patrocinadores', 'Seen on': 'Visto en', 'Active relays': 'Active relays', 'Not connected': 'Not connected', 'More relays': '+{{count}} relays', 'Temporarily display this reply': 'Mostrar temporalmente esta respuesta', 'Note not found': 'No se encontró la nota', 'Invalid embedded note reference': 'Invalid embedded note reference', embeddedNoteInvalidEmpty: 'This embedded link is empty.', embeddedNoteInvalidHex: 'This is not a valid hex event id (expected exactly 64 hexadecimal characters).', embeddedNoteInvalidBech32: 'This is not a valid Nostr id (bech32 decode failed). It may be mistyped or truncated.', embeddedNoteInvalidWrongKind: 'This is a {{type}} id. Embedded notes must use note1, nevent1, naddr1, or 64-character hex.', embeddedNoteFetchMiss: 'This note is not in local storage and was not returned by the relays we queried. Retries run in the background; you can also open it in another client.', 'The note was not found on your relays or default relays.': 'The note was not found on your relays or default relays.', "Try searching author's relays": "Try searching author's relays", 'Searching external relays...': 'Searching external relays...', "This will connect to the author's relays and relay hints": "This will connect to the author's relays and relay hints", 'Note could not be found anywhere': 'Note could not be found anywhere', 'Try external relays': 'Try external relays', 'Searching...': 'Searching...', 'Show relays': 'Show relays', 'No external relay hints available': 'No external relay hints available', 'External relay search is not available for this link type': 'External relay search is not available for this link type.', 'Searched external relays not found': 'Searched {{count}} external relays; the note was still not found.', 'no more replies': 'no hay más respuestas', 'Relay sets': 'Conjuntos de relés', 'Search for Relays': 'Search for Relays', 'Popular relays': 'Popular relays', 'Your inbox': 'Your inbox', 'Your relays first, then those your network favors and reviews.': 'Your relays first, then those your network favors and reviews.', 'From your mailbox, favorites, and cached relay lists on this device.': 'From your mailbox, favorites, and cached relay lists on this device.', 'No relays in your lists yet.': 'No relays in your lists yet.', 'Using app default relays': 'Using app default relays', "Following's Favorites": 'Favoritos de los seguidos', 'no more relays': 'no hay más relés', 'Favorited by': 'Favoritado por', 'Post settings': 'Ajustes de publicación', 'Publishing feedback': 'Publishing feedback', 'Publish success toasts': 'Publish success toasts', 'Show green notifications when posts, replies, reactions, and other publishes succeed. When off, a small checkmark appears briefly at the bottom-right instead. Errors and failures still use a toast.': 'Show green notifications when posts, replies, reactions, and other publishes succeed. When off, a small checkmark appears briefly at the bottom-right instead. Errors and failures still use a toast.', 'Publish successful': 'Publish successful', 'Media upload service': 'Servicio de carga de medios', BlossomUploadYourListOption: 'Blossom (your list)', BlossomUploadOptionHappyTavern: 'Happy Tavern 0x0 (Blossom)', BlossomUploadOptionBand: 'blossom.band (Blossom)', BlossomUploadOptionPrimal: 'Primal (Blossom)', BlossomUploadOptionNostrMedia: 'nostr.media (Blossom)', BlossomUploadOptionNostrBuild: 'Nostr.build (Blossom)', BlossomUploadServiceBlurb: 'Uses the Blossom (BUD) protocol with your ordered server list below (public hosts like Primal or your own).', BlossomPresetUploadServiceBlurb: 'Fixed Blossom (BUD) host: uploads use this server only, not your published kind-10063 list.', BlossomPresetSelectedHostLabel: 'Blossom host (this preset)', 'Lotus on GitHub': 'Lotus on GitHub', BlossomSelfHostLotusHint: 'Self-hosted Blossom (BUD) servers: paste your public base URL (see the project README for cdn_url / api_addr).', 'Choose a relay': 'Selecciona un relé', 'no relays found': 'no se encontraron relés', video: 'video', 'Show n new notes': 'Mostrar {{n}} nuevas notas', YouTabName: 'You', Bookmark: 'Marcador', 'Remove bookmark': 'Quitar marcador', 'no bookmarks found': 'No se encontraron marcadores', 'no more bookmarks': 'No hay más marcadores', Bookmarks: 'Marcadores', 'Follow Packs': 'Follow Packs', 'Follow Pack': 'Follow Pack', 'Follow pack by': 'by', 'In Follow Packs': 'In Follow Packs', 'Badge details': 'Badge details', 'Issued by': 'Issued by', 'Other recipients': 'Other recipients', 'No other recipients found': 'No other recipients found', 'Recipients could not be loaded': 'Recipients could not be loaded', 'View award': 'View award', 'Awarded on': 'Awarded on', 'Please log in to follow': 'Please log in to follow', 'Following All': 'Following All', 'Followed {{count}} users': 'Followed {{count}} users', 'All available members are already followed or muted': 'All available members are already followed or muted', 'You are already following all members of this pack': 'You are already following all members of this pack', 'Failed to follow pack': 'Failed to follow pack', '{{count}} profiles': '{{count}} profiles', 'Show more': 'Mostrar más', General: 'General', Autoplay: 'Reproducción automática', 'Enable video autoplay on this device': 'Habilitar reproducción automática de video en este dispositivo', 'liveActivities.heading': 'Live now', 'liveActivities.regionLabel': 'Live spaces and streams', 'liveActivities.fromFollow': 'From someone you follow', 'liveActivities.goToSlide': 'Show live item {{n}}', 'liveActivities.swipeToBrowse': 'Swipe left or right on the banner to switch between live activities.', 'liveActivities.viewNoteTitle': 'Open this live activity as a note (play in app, links below)', 'liveActivities.openJoinPageTitle': 'Open the join page in a new tab (e.g. zap.stream or the room site)', 'liveActivities.settingsToggle': 'Live activities banner', 'liveActivities.settingsHint': 'Shows NIP-53 live rooms (audio/video spaces) from your relays. Updates on a quarter-hour schedule and when the app finishes its initial session warm-up.', 'Add random relays to every publish': 'Random relays in publish list', 'Add random relays to every publish description': 'Adds {{n}} random public relays from the NIP-66 lively list (preferring monitors that reported a write RTT) to the publish relay list. When ON, they are selected by default; when OFF, they appear in the list but are unchecked so you can optionally include them.', relayType_local: 'Local', relayType_relay_list: 'Relay list', relayType_http_relay_list: 'HTTP', 'HTTP relays': 'HTTP relays', httpRelaysDescription: 'HTTPS index relays (e.g. REST /api/events/filter). Same read/write/both roles as mailbox relays; stored as kind 10243. Clear the list and save to publish an empty list.', 'HTTP relays saved': 'HTTP relays saved', 'Failed to save HTTP relay list': 'Failed to save HTTP relay list', 'HTTP relays must start with https:// or http://': 'HTTP relays must start with https:// or http://', relayType_client_default: 'Client default', relayType_open_from: 'Current feed', relayType_favorite: 'Favorite', relayType_relay_set: 'Relay set', relayType_contextual: 'Reply/PM', relayType_randomly_selected: 'Random (optional)', 'Session relays': 'Session relays', 'Session relays tab description': 'Relay logic for this session: preset relays and scored random relays used to prefer faster, proven relays when adding random relays to publish.', 'Session relays preset working': 'Working preset relays', 'Session relays preset working hint': 'Preset relays from app defaults.', 'Session relays scored random': 'Scored random relays', 'Session relays scored random hint': 'Relays that have accepted at least one publish this session; used to prefer faster relays when picking random relays. Sorted by average latency.', 'Session relay strikes': 'Session relay strikes', 'Session relay strikes hint': 'Relays temporarily skipped after failures, slow batches, or rate-limit notices. Five read or publish failures → 3 minute skip. Rate-limit NOTICE → 10 minute cooldown (no strike count). Cache relays (kind 10432) always accrue failures.', 'Session relay strikes none active': 'No relays are currently struck or cooling down.', 'Cache relay keys': 'Cache relay keys', 'Session relay strike free': 'Free', 'Session relay strike read skipped': 'Read skipped', 'Session relay strike publish skipped': 'Publish skipped', 'Session relay strike rate limited': 'Rate limited', 'Session relay strike slow parked': 'Slow parked', 'Session relay strike cache relay': 'Cache relay', 'Session relay strike read failures': '{{count}} read failures', 'Session relay strike publish failures': '{{count}} publish failures', 'Session relay strike slow signals': '{{count}} slow signals', 'Session relay strike until': 'until {{time}}', successes: 'successes', None: 'None', 'Cache & offline storage': 'Cache & offline storage', singleRelayKindFallbackNotice: 'This relay returned no events for an open-ended request (no kinds in the filter). The feed below uses your usual kind filter instead.', refreshCacheButtonExplainer: 'Refresh Cache runs an IndexedDB upgrade check, re-fetches your relay lists and profile-related events from the network (same work as the automatic startup sync), syncs kind-5 deletions into tombstones and removes deleted items from the local cache, then refreshes the store counts below.', 'eventArchive.sectionTitle': 'Notes & feed archive', 'eventArchive.sectionBlurb': 'Keeps notes, reactions, and timeline order on disk so feeds can load offline or on slow links. Replaceable data (profiles, relay lists, publications) stays in its existing stores — this archive only fills gaps for “firehose” events.', 'eventArchive.defaultsMobile': 'This device profile uses small defaults: about {{lru}} events in memory, ~{{mb}} MB / {{ev}} archived events (reactions/zaps drop first).', 'eventArchive.defaultsElectron': 'Desktop app defaults: ~{{lru}} in-memory events, ~{{mb}} MB / {{ev}} archived events.', 'eventArchive.defaultsDesktopWeb': 'Desktop browser defaults: ~{{lru}} in-memory events, ~{{mb}} MB / {{ev}} archived events.', 'eventArchive.enablePersist': 'Persist feed events to disk', 'eventArchive.maxMb': 'Max archive size (MB), blank = default for this device', 'eventArchive.maxEvents': 'Max archived events, blank = default', 'eventArchive.sessionLru': 'In-memory session cache (event count), blank = default', 'eventArchive.effectiveSummary': 'Currently: ~{{mb}} MB budget, {{events}} events, {{lru}} session LRU.', 'eventArchive.on': 'on', 'eventArchive.off': 'off', 'eventArchive.apply': 'Apply cache settings', 'eventArchive.appliedToast': 'Cache settings saved. Session memory updated.', 'cacheImport.sectionTitle': 'Import events', 'cacheImport.sectionBlurb': 'Add signed Nostr events to your local cache from JSON (paste) or a .jsonl export. Events must pass signature verification.', 'cacheImport.broadcastLabel': 'Broadcast to my write relays after import', 'cacheImport.tabPaste': 'Paste JSON', 'cacheImport.tabFile': 'Upload .jsonl', 'cacheImport.pastePlaceholder': 'Paste one event object, or a JSON array of events…', 'cacheImport.importButton': 'Import to cache', 'cacheImport.chooseJsonl': 'Choose .jsonl file', 'cacheImport.fileHint': 'One JSON event per line (NDJSON). Duplicate event ids in the same import are skipped.', 'cacheImport.jsonlOnly': 'Please choose a .jsonl file', 'cacheImport.fileTooLarge': 'File is larger than {{mb}} MB', 'cacheImport.noValidEvents': 'No valid signed events to import', 'cacheImport.importing': 'Importing events…', 'cacheImport.done': 'Imported {{count}} event(s) into cache', 'cacheImport.doneWithBroadcast': 'Imported {{imported}} event(s); broadcast accepted on {{broadcastOk}} relay(s) ({{broadcastFailed}} failed)', 'cacheImport.partialWithIssues': 'Imported {{imported}} event(s); {{skipped}} line(s) skipped', 'cacheImport.failed': 'Import failed: {{error}}', 'Paste or drop media files to upload': 'Pegar o soltar archivos multimedia para cargar', Preview: 'Vista previa', 'You are about to publish an event signed by [{{eventAuthorName}}]. You are currently logged in as [{{currentUsername}}]. Are you sure?': 'Estás a punto de publicar un evento firmado por [{{eventAuthorName}}]. Actualmente has iniciado sesión como [{{currentUsername}}]. ¿Estás seguro?', 'Platinum Sponsors': 'Patrocinadores Platino', From: 'De', 'Comment on': 'Comentar en', 'View on njump.me': 'Ver en njump.me', 'Hide content from untrusted users': 'Ocultar contenido de usuarios no confiables', 'Only show content from your followed users and the users they follow': 'Solo mostrar contenido de tus usuarios seguidos y los usuarios que ellos siguen', 'Followed by': 'Seguidos por', 'Mute user privately': 'Silenciar usuario en privado', 'Mute user publicly': 'Silenciar usuario públicamente', Quotes: 'Citas', 'Lightning Invoice': 'Factura Lightning', 'Bookmark failed': 'Error al marcar', 'Follow this': 'Follow this', 'Mute this': 'Mute this', 'Following thread for notifications': 'Following thread for notifications', 'Muted thread for notifications': 'Muted thread for notifications', 'Unfollow thread notifications': 'Unfollow thread notifications', 'Thread notification list update failed': 'Thread notification list update failed', 'Remove bookmark failed': 'Error al quitar marcador', 'Removed from bookmarks': 'Removed from bookmarks', 'Bookmark not in list': 'This bookmark is not in your list (already removed or out of sync).', 'Pin not in list': 'This pin is not in your list (already removed or out of sync).', 'Entry not in list': 'This entry is not in your list (already removed or out of sync).', 'Removed from notification thread follow list': 'Removed from thread notification follow list', 'Removed from notification thread mute list': 'Removed from thread notification mute list', 'No entries in notification thread follow list': 'No threads in your follow list yet. Use the bell on a note to add one.', 'No entries in notification thread mute list': 'No threads in your mute list yet. Use the bell-off control on a note to add one.', 'Failed to remove pin': 'Failed to remove pin', Translation: 'Traducción', Balance: 'Saldo', characters: 'caracteres', translateApiKeyDescription: 'Puedes usar esta clave API en cualquier otro lugar que soporte LibreTranslate. La URL del servicio es {{serviceUrl}}', 'Top up': 'Recargar', 'Will receive: {n} characters': 'Recibirás: {{n}} caracteres', 'Top up {n} sats': 'Recargar {{n}} satoshis', 'Minimum top up is {n} sats': 'La recarga mínima es de {{n}} satoshis', Service: 'Servicio', 'Reset API key': 'Restablecer clave API', 'Are you sure you want to reset your API key? This action cannot be undone.': '¿Estás seguro de que deseas restablecer tu clave API? Esta acción no se puede deshacer.', Warning: 'Advertencia', 'Errors & warnings': 'Errors & warnings', 'Your current API key will become invalid immediately, and any applications using it will stop working until you update them with the new key.': 'Tu clave API actual se volverá inválida de inmediato, y cualquier aplicación que la use dejará de funcionar hasta que las actualices con la nueva clave.', 'Service address': 'Dirección del servicio', Pay: 'Pagar', interactions: 'interacciones', notifications: 'notificaciones', notificationsViewAsAccount: 'View as', notificationsViewAsAccountAria: 'Switch stored account. Notifications, replies, zaps, reactions, and boosts use this account.', notificationsSwitchAccountFailed: 'Could not switch account. Check your signer, password, or extension and try again.', 'Show untrusted {type}': 'Mostrar {{type}} no confiables', 'Hide untrusted {type}': 'Ocultar {{type}} no confiables', 'Currently hiding {type} from untrusted users.': 'Actualmente ocultando {{type}} de usuarios no confiables.', 'Currently showing all {type}.': 'Actualmente mostrando todas las {{type}}.', 'Click continue to show all {type}.': 'Haz clic en continuar para mostrar todas las {{type}}.', 'Click continue to hide {type} from untrusted users.': 'Haz clic en continuar para ocultar {{type}} de usuarios no confiables.', 'Trusted users include people you follow and people they follow.': 'Los usuarios confiables incluyen a las personas que sigues y a las personas que ellos siguen.', Continue: 'Continuar', 'Successfully updated mute list': 'Lista de silenciamiento actualizada con éxito', 'No pubkeys found from {url}': 'No se encontraron pubkeys desde {{url}}', 'Translating...': 'Traduciendo...', Translate: 'Traducir', 'Show original': 'Mostrar original', Website: 'Sitio web', 'Hide untrusted notes': 'Ocultar notas no confiables', 'Open in another client': 'Abrir en otro cliente', Community: 'Comunidad', Group: 'Grupo', 'Live event': 'Evento en vivo', Article: 'Artículo', Unfavorite: 'Desfavoritar', 'Recommended relays': 'Relés recomendados', 'Show recommended relays panel': 'Show recommended relays panel', 'Display the right-side panel with recommended relays on desktop': 'Display the right-side panel with recommended relays on desktop', 'Blossom server URLs': 'URLs del servidor Blossom', 'You need to add at least one blossom server in order to upload media files.': 'Necesitas agregar al menos un servidor Blossom para poder cargar archivos multimedia.', 'Recommended blossom servers': 'Servidores Blossom recomendados', 'Enter Blossom server URL': 'Ingresar URL del servidor Blossom', Preferred: 'Preferido', 'Multiple choice (select one or more)': 'Opción múltiple (selecciona una o más)', Vote: 'Votar', '{{number}} votes': '{{number}} votos', 'Total votes': 'Total de votos', 'Poll has ended': 'La encuesta ha terminado', 'Poll ends at {{time}}': 'La encuesta termina el {{time}}', 'Load results': 'Cargar resultados', 'This is a poll note.': 'Esta es una nota de encuesta.', 'Unlike regular notes, polls are not widely supported and may not display on other clients.': 'A diferencia de las notas regulares, las encuestas no son ampliamente compatibles y pueden no mostrarse en otros clientes.', 'Option {{number}}': 'Opción {{number}}', 'Add Option': 'Agregar Opción', 'Remove option': 'Remove option', 'Close highlight editor': 'Close highlight editor', 'Allow multiple choices': 'Permitir múltiples opciones', 'End Date (optional)': 'Fecha de finalización (opcional)', 'Clear end date': 'Borrar fecha de finalización', 'Relay URLs (optional, comma-separated)': 'URLs de relé (opcional, separadas por comas)', 'Remove poll': 'Eliminar encuesta', 'Refresh results': 'Actualizar resultados', '{{votes}} · {{pct}}%': '{{votes}} · {{pct}}%', 'See results': 'See results', 'Zap poll (paid votes)': 'Zap poll (paid votes)', 'Invalid zap poll': 'Invalid zap poll', 'You voted on this poll (zap receipt)': 'You voted on this poll (zap receipt)', 'Poll closed {{time}}': 'Poll closed {{time}}', 'Closes {{time}}': 'Closes {{time}}', 'Vote size': 'Vote size', '{{n}} sats (fixed)': '{{n}} sats (fixed)', '{{min}}–{{max}} sats': '{{min}}–{{max}} sats', '≥ {{n}} sats': '≥ {{n}} sats', '≤ {{n}} sats': '≤ {{n}} sats', 'Loading tally…': 'Loading tally…', 'Zap poll no votes yet': 'No zap votes found on the relays we queried (try Refresh tally, or votes may live on other relays).', 'Consensus threshold': 'Consensus threshold', 'Pay to': 'Pay to', Recipient: 'Recipient', Option: 'Option', 'Select option': 'Select option', 'Select an option': 'Select an option', 'Vote with zap': 'Vote with zap', 'Zap sent': 'Zap sent', 'Zapping…': 'Zapping…', 'Refresh tally': 'Refresh tally', '{{n}} zaps': '{{n}} zaps', Poll: 'Encuesta', Media: 'medios', 'Articles and Publications': 'Articles and Publications', Liked: 'Liked', 'Refreshing liked posts...': 'Refreshing liked posts...', 'No liked posts yet': 'No liked posts yet', 'Liked by you': 'Liked by you', 'Search articles...': 'Search articles...', 'Refreshing articles...': 'Refreshing articles...', 'No articles or publications found': 'No articles or publications found', 'No articles or publications match your search': 'No articles or publications match your search', 'No reports found': 'No reports found', 'No reports match your search': 'No reports match your search', 'Refreshing reports...': 'Refreshing reports...', 'Reports received': 'Reports received', 'Reports made': 'Reports made', 'No reports received': 'No reports received', 'No reports made': 'No reports made', 'Report card heading': 'Moderation report', 'Report type label': 'Type', 'Report target profile': 'Reported profile', 'Report target note': 'Reported note', Wall: 'Wall', 'Refreshing wall...': 'Refreshing wall...', 'No wall comments yet': 'No wall comments yet', 'Profile metadata not loaded yet': 'Profile metadata not loaded yet', 'articles and publications': 'articles and publications', Interests: 'Interests', Favorites: 'Favorites', 'Heat map': 'Thread heat map', heatMapDescription: "Only threads with at least five feed-filtered notes (last ~3 days) appear. Data merges this tab’s session cache, your on-device archive, and your relay stack. Bubble size and glow reflect activity. Lines connect threads when notes reference another thread's events (`e` / `E` / `q`) or when threads share a replaceable coordinate (`a` / `A`).", heatMapLocalOnlyBanner: 'No read relay stack — only this session’s cache and your on-device archive are merged (add relays in settings for a live relay mix).', heatMapLoading: 'Merging session cache, archive, and relays…', heatMapEmpty: 'Nothing meets the bar yet. Threads need at least five notes that pass your feed kind filter from about the last 72 hours. Browse feeds or Rescan after syncing.', heatMapFetchError: 'Could not load a thread snapshot from relays.', heatMapNoRelays: 'Add read relays (or favorites) in settings to query threads.', heatMapRescan: 'Rescan', heatMapOpenThread: 'Open thread', heatMapBubbleStats: '{{posts}} notes · {{people}} authors · {{follows}} from follows', heatMapConnectorHint: 'Linked threads — «{{left}}» ↔ «{{right}}»', 'Please login to view thread heat map': 'Please log in to open the thread heat map.', 'Interactions map': 'Interactions map', 'Profile interactions map description': 'Profiles ranked by direct interaction count with this profile. Data paints from local cache first, then refreshes from relays.', 'Profile interactions map empty': 'No profile interactions found yet. Browse this profile or rescan after syncing.', 'Profile interactions map failed': 'Could not build the interactions map', 'n interactions': '{{formattedCount}} interactions', 'outgoing interactions': '{{count}} by this profile', 'incoming interactions': '{{count}} toward this profile', 'Topic map': 'Topic map', topicMapDescription: 'The ten largest bubbles combine how often a normalized string appears as a topic tag (·t·) and as a #hashtag in note text (last ~30 days). Data merges this tab’s session cache, your on-device archive, and your relay stack. Tap a bubble to open one feed that merges #t matches and NIP-50 full-text search.', topicMapLocalOnlyBanner: 'No read relay stack — only this session’s cache and your on-device archive are merged (add relays in settings for a live relay mix).', topicMapLoading: 'Merging session cache, archive, and relays…', topicMapEmpty: 'No topic or hashtag signals yet in the scanned window. Browse feeds or rescan after syncing.', topicMapFetchError: 'Could not build the topic map from your sources.', topicMapRescan: 'Rescan', topicMapBubbleCounts: '{{topic}} notes with ·t· tag · {{kw}} with #hashtag in text', topicMapOpenMergedFeed: 'Open merged topic and keyword feed', topicMapClickHint: 'Opens a merged feed: same label as a ·t· filter plus NIP-50 search for the words.', Calendar: 'Calendar', 'No subscribed interests yet.': 'No subscribed interests yet. Add topics in settings to see them here.', 'No bookmarked notes with id tags yet.': 'No bookmarked notes with id tags yet. Only classic (e-tag) bookmarks load in this feed.', 'No follows or relays to load yet.': 'No follows or relays to load yet.', 'No favorites yet.': 'No favorites yet. Add follows, follow sets, interests, or bookmarks.', 'Added from interests': 'Added from interests', 'Added from bookmarks list': 'Added from bookmarks list', 'Added from your web bookmarks': 'Added from your web bookmarks', 'Added from follows and contact lists': 'Added from follows and contact lists', 'Added from follows web bookmarks': 'Added from follows web bookmarks', 'Nothing to load for this feed.': 'Nothing to load for this feed.', 'No posts loaded for this feed. Try refreshing.': 'No posts loaded for this feed. Try refreshing.', sidebarCalendarHeading: "This week's events", sidebarCalendarPreviousWeek: 'Previous week', sidebarCalendarNextWeek: 'Next week', sidebarCalendarEmptyWeek: 'No calendar events this week.', sidebarCalendarLoading: 'Loading…', sidebarCalendarNoRelays: 'Add read relays in settings to load calendar events.', sidebarCalendarOpenMonthView: 'Open month view', calendarPageTitle: 'Calendar', calendarPagePrevMonth: 'Previous month', calendarPageNextMonth: 'Next month', calendarPageThisWeek: 'This week', calendarPageGridLabel: 'Month calendar', calendarPageUntitledEvent: 'Event', calendarPageMoreEventsAria: 'Show {{count}} more events for this day', calendarPageDayEventCount: '{{count}} events', calendarDayPanelEmpty: 'No cached events for this day. Close the panel, open the month calendar again, then tap “+N”.', calendarDayPanelInvalidDate: 'Invalid date.', 'Looking for more events…': 'Looking for more events…', 'Relays returned no events for this feed. They may be offline, slow, or not indexing these notes.': 'Relays returned no events for this feed. They may be offline, slow, or not indexing these notes.', 'Per-relay timeline results ({{count}} connections)': 'Per-relay timeline results ({{count}} connections)', 'Republish to ...': 'Republicar a ...', 'All available relays': 'All available relays', 'All active relays (monitoring list)': 'All active relays (monitoring list)', 'Successfully republish to all available relays': 'Successfully republish to all available relays', 'Failed to republish to all available relays: {{error}}': 'Failed to republish to all available relays: {{error}}', 'Successfully republish to all active relays': 'Successfully republish to all active relays', 'Failed to republish to all active relays: {{error}}': 'Failed to republish to all active relays: {{error}}', 'No active relays in monitoring list': 'No active relays in monitoring list', 'No relay accepted the event': 'No relay accepted the event', 'No relays available': 'No relays available', 'No write relays configured': 'No write relays configured', 'Relay did not accept the event': 'Relay did not accept the event', 'Only {{count}} relay(s) accepted the event; at least 5 required for "all active relays".': 'Only {{count}} relay(s) accepted the event; at least 5 required for "all active relays".', 'Successfully republish to your write relays': 'Republicado con éxito a tus relés de escritura', 'Failed to republish to your write relays: {{error}}': 'Error al republicar a tus relés de escritura: {{error}}', 'Successfully republish to relay set: {{name}}': 'Republicado con éxito al conjunto de relés: {{name}}', 'Failed to republish to relay set: {{name}}. Error: {{error}}': 'Error al republicar al conjunto de relés: {{name}}. Error: {{error}}', 'Successfully republish to relay: {{url}}': 'Republicado con éxito al relé: {{url}}', 'Failed to republish to relay: {{url}}. Error: {{error}}': 'Error al republicar al relé: {{url}}. Error: {{error}}', 'Write relays': 'Relés de escritura', 'No more reactions': 'No hay más reacciones', 'No reactions yet': 'Sin reacciones aún', 'No more zaps': 'No hay más zaps', 'No zaps yet': 'Sin zaps aún', 'No more boosts': 'No hay más boosts', 'No boosts yet': 'Sin boosts aún', 'n more boosts': '{{count}} more boosts', FollowListNotFoundConfirmation: 'Lista de seguidos no encontrada. ¿Quieres crear una nueva? Si has seguido usuarios antes, por favor NO confirmes ya que esta operación te hará perder tu lista de seguidos anterior.', MuteListNotFoundConfirmation: 'Lista de silenciados no encontrada. ¿Quieres crear una nueva? Si has silenciado usuarios antes, por favor NO confirmes ya que esta operación te hará perder tu lista de silenciados anterior.', 'Show NSFW content by default': 'Mostrar contenido NSFW por defecto', 'Custom emoji management': 'Gestión de emojis personalizados', 'After changing emojis, you may need to refresh the page': 'Después de cambiar los emojis, es posible que necesites actualizar la página', 'Too many read relays': 'Demasiados relés de lectura', 'Too many write relays': 'Demasiados relés de escritura', 'You have {{count}} read relays. Most clients only use 2-4 relays, setting more is unnecessary.': 'Tienes {{count}} relés de lectura. La mayoría de los clientes solo usan 2-4 relés, configurar más es innecesario.', 'You have {{count}} write relays. Most clients only use 2-4 relays, setting more is unnecessary.': 'Tienes {{count}} relés de escritura. La mayoría de los clientes solo usan 2-4 relés, configurar más es innecesario.', 'Optimize Relay Settings': 'Optimizar configuración de relés', 'Your current relay configuration may not be optimal. This could make it difficult for others to find your posts and may result in incomplete notifications.': 'Tu configuración actual de relés puede no ser óptima. Esto podría hacer que sea difícil para otros encontrar tus publicaciones y puede resultar en notificaciones incompletas.', 'Optimize Now': 'Optimizar ahora', 'Maybe Later': 'Tal vez más tarde', "Don't remind me again": 'No recordar de nuevo', Posts: 'Publicaciones', 'Posts (OPs)': 'Posts (OPs)', 'Kind 1 replies': 'Kind 1 replies', Comments: 'Comments', 'Replies & comments': 'Replies & comments', Articles: 'Artículos', Highlights: 'Destacados', 'A note from': 'A note from', Polls: 'Encuestas', 'Zap polls': 'Zap polls', 'Voice Posts': 'Publicaciones de voz', 'Photo Posts': 'Publicaciones de fotos', 'Video Posts': 'Publicaciones de video', 'Git repositories': 'Git repositories', 'Git issues': 'Git issues', 'Git releases': 'Git releases', 'Git Republic repository': 'Git Republic repository', 'Git Republic issue': 'Git Republic issue', 'Git Republic release': 'Git Republic release', 'Git Republic event': 'Git Republic event', 'Git Republic': 'Git Republic', 'Open in Git Republic': 'Open in Git Republic', 'Pre-release': 'Pre-release', Draft: 'Draft', 'Repository release': 'Repository release', 'New Repository Release': 'New Repository Release', 'Release notes use the editor below (optional).': 'Release notes use the editor below (optional).', 'Repository owner (npub or hex)': 'Repository owner (npub or hex)', 'Repository id (d-tag)': 'Repository id (d-tag)', 'Git tag name': 'Git tag name', 'Tag target (40-char commit hash)': 'Tag target (40-character commit hash)', '40-character hex SHA-1': '40-character hex SHA-1', 'Release title': 'Release title', 'Download URL': 'Download URL', 'Draft release': 'Draft release', 'Fill repository release fields': 'Fill in all required repository release fields.', 'Invalid repository owner pubkey': 'Invalid repository owner (use npub or 64-char hex).', 'Citations require private relays (NIP-65).': 'Citations require private outbox relays (NIP-65).', 'Select All': 'Seleccionar todo', 'Clear All': 'Limpiar todo', 'Set as default filter': 'Establecer como filtro predeterminado', 'Use filter': 'Use filter', 'See all events': 'See all events', 'See all events hint': 'Feed requests omit kind filters and every kind is shown (still subject to relay limits and other feed rules). For testing new event kinds.', 'Use filter hint': 'Only the kinds you select below are requested and shown.', 'Advanced event lab': 'Advanced editor', 'Advanced lab applyError': 'Editor is not ready. Try again.', 'Advanced lab cancel undo': 'Cancel and Undo Changes', 'Advanced lab undo checkpoint': 'Restore checkpoint', 'Advanced lab undo checkpoint hint': 'About every 30 seconds this tab saves the editor (kind, body, tags) in session storage, up to 10 versions. Use this after a translation or bulk edit you want to roll back.', 'Advanced lab undo checkpoint none': 'No older checkpoint to restore.', 'Advanced lab undo checkpoint restored': 'Editor restored to a saved checkpoint.', 'Advanced lab markup label markdown': 'Markdown', 'Advanced lab markup label asciidoc': 'AsciiDoc', 'Advanced lab preview': 'Preview', 'Advanced lab preview empty': 'Nothing to preview yet.', 'Advanced lab json preview': 'JSON preview', 'Advanced lab json preview hint': 'Read-only publish draft: `kind`, `content`, `created_at`, and `tags` (including `imeta` from URLs in the body and the Imwald `client` tag when enabled in post options). `pubkey`, `id`, and `sig` are set at publish.', 'Advanced lab markup placeholder markdown': 'Note body (Markdown)', 'Advanced lab markup placeholder asciidoc': 'Note body (AsciiDoc)', 'Advanced lab tags JSON': 'Kind, content, and tags (JSON)', 'Advanced lab json placeholder': '{ "kind": 1, "content": "…", "tags": [] }', 'Advanced lab grammar language': 'Grammar check language', 'Advanced lab translate': 'Translate body', 'Advanced lab translation source': 'Source language', 'Advanced lab translation source auto': 'Detect automatically', 'Advanced lab translation target': 'Target language', 'Advanced lab translation languages loading': 'Loading languages from translate service…', 'Advanced lab translation languages empty': 'Translate service returned no languages (check Docker / LibreTranslate).', 'Advanced lab translation languages error': 'Could not load languages from the translate service.', 'Advanced lab translation same source target': 'Source and target language must differ.', 'Language list filter placeholder': 'Filter languages…', 'Language list filter empty': 'No matching languages.', 'Show original text': 'Show original text', 'Showing original note text': 'Showing original text for this note.', 'Translate note': 'Translate note', 'Translating note…': 'Translating note…', 'Note translated': 'Translated to {{language}}.', 'Note translation failed': 'Translation failed: {{message}}', 'Read-aloud Piper English voice fallback title': 'English voice in use', 'Read-aloud Piper English voice fallback detail': 'Piper has no voice model for {{language}}. This session uses the English Piper voice instead; pronunciation may not match the written text.', 'Read-aloud Piper related voice fallback title': 'Approximate Piper voice', 'Read-aloud Piper related voice fallback detail': 'Piper has no model for {{language}}. This session uses the {{profile}} Piper voice as an approximation; pronunciation may not match the written text.', 'Advanced lab translate not configured': 'Translation URL is not set (VITE_TRANSLATE_URL).', 'Advanced lab translate done': 'Translation inserted into the editor.', 'Advanced lab use translation read aloud': 'Use body for read-aloud (this note)', 'Advanced lab read aloud buffer set': 'The next read-aloud for this note will use the current body text (translated if you translated first).', advancedLabTagsTitle: 'Event tags', advancedLabTagsCount: '{{count}} tags', advancedLabTagsHint: 'All tags except the client tag. One value per line for multi-value tags. Changes are saved automatically.', advancedLabTagValuesPlaceholder: 'One value per line', advancedLabTagsAdd: 'Add tag', 'Advanced lab tb markup tools': 'Markup helpers', 'Advanced lab tb headings': 'Headings', 'Advanced lab tb headings hint': 'Inserts at the cursor; adjust spacing if needed.', 'Advanced lab tb heading placeholder': 'Title', 'Advanced lab tb h1': 'Heading 1 (#)', 'Advanced lab tb h2': 'Heading 2 (##)', 'Advanced lab tb h3': 'Heading 3 (###)', 'Advanced lab tb h4': 'Heading 4 (####)', 'Advanced lab tb h5': 'Heading 5 (#####)', 'Advanced lab tb h6': 'Heading 6 (######)', 'Advanced lab tb setextH1': 'Setext heading 1 (title + ===)', 'Advanced lab tb setextH2': 'Setext heading 2 (title + ---)', 'Advanced lab tb horizontalRule': 'Horizontal rule (---)', 'Advanced lab tb horizontalRules': 'Horizontal rules', 'Advanced lab tb hrDashes': 'Dashes (---)', 'Advanced lab tb hrAsterisks': 'Asterisks (***)', 'Advanced lab tb hrUnderscores': 'Underscores (___)', 'Advanced lab tb inline': 'Inline', 'Advanced lab tb bold': 'Bold (** **)', 'Advanced lab tb boldUnderscore': 'Bold (__ __)', 'Advanced lab tb italic': 'Italic (* *)', 'Advanced lab tb italicUnderscore': 'Italic (_ _)', 'Advanced lab tb strike': 'Strikethrough (~~ ~~)', 'Advanced lab tb inlineCode': 'Inline code (` `)', 'Advanced lab tb link': 'Link [text](url)', 'Advanced lab tb linkTitled': 'Link with title [text](url "title")', 'Advanced lab tb image': 'Image ![alt](url)', 'Advanced lab tb imageTitled': 'Image with title ![alt](url "title")', 'Advanced lab tb hardBreak': 'Hard line break (two spaces + newline)', 'Advanced lab tb citations': 'Citations (NIP-32)', 'Advanced lab tb citationsHint': 'Kinds 30–33. Inserts `[[citation::type::nevent…]]` (Markdown & AsciiDoc).', 'Advanced lab citation dialog title': 'Insert citation', 'Advanced lab citation dialog hint': 'Search for NIP-32 citation events (internal, external, hardcopy, prompt), then pick one.', 'Advanced lab citation search placeholder': 'Search kinds 30–33…', 'Advanced lab citation none': 'No citation events found', 'Advanced lab citation kindLabel': 'Kind {{kind}}', 'Advanced lab citation type inline': 'Inline citation', 'Advanced lab citation type quote': 'Block quote citation', 'Advanced lab citation type end': 'Endnote citation', 'Advanced lab citation type foot': 'Footnote call', 'Advanced lab citation type footEnd': 'Footnote + end', 'Advanced lab citation type promptInline': 'Prompt (inline)', 'Advanced lab citation type promptEnd': 'Prompt (end)', 'Advanced lab tb lists': 'Lists', 'Advanced lab tb bulletList': 'Bullet list (-)', 'Advanced lab tb bulletListStar': 'Bullet list (*)', 'Advanced lab tb orderedList': 'Numbered list (1.)', 'Advanced lab tb orderedListStart': 'Numbered list (custom start, e.g. 4.)', 'Advanced lab tb taskItem': 'Task item (- [ ])', 'Advanced lab tb blocks': 'Blocks', 'Advanced lab tb blockquote': 'Blockquote (>)', 'Advanced lab tb pipeTable': 'Pipe table (3×2 starter)', 'Advanced lab tb footnoteRef': 'Footnote reference [^1]', 'Advanced lab tb footnoteDef': 'Footnote definition [^1]: …', 'Advanced lab tb codeBlock': 'Code block', 'Advanced lab tb codeBlockHint': 'Pick a language for syntax highlighting in fenced code.', 'Advanced lab tb filterLanguages': 'Filter languages…', 'Advanced lab tb math': 'Math (KaTeX)', 'Advanced lab tb mathIntro': 'Many readers render $…$ / $$…$$ with KaTeX; check your client.', 'Advanced lab tb mathInline': 'Inline math ($…$)', 'Advanced lab tb mathDisplay': 'Display math ($$…$$)', 'Advanced lab tb mathCommon': 'Common formulas', 'Advanced lab tb katexFrac': 'Fraction \\frac{a}{b}', 'Advanced lab tb katexSqrt': 'Square root \\sqrt{x}', 'Advanced lab tb katexSum': 'Sum \\sum_{i=1}^{n}', 'Advanced lab tb katexInt': 'Integral \\int_a^b', 'Advanced lab tb katexMatrix': '2×2 matrix (pmatrix)', 'Advanced lab tb katexCases': 'Cases (piecewise)', 'Advanced lab tb mathGreek': 'Greek & symbols', 'Advanced lab tb greekAlpha': 'alpha', 'Advanced lab tb greekBeta': 'beta', 'Advanced lab tb greekGamma': 'gamma', 'Advanced lab tb greekDelta': 'delta', 'Advanced lab tb greekPi': 'pi', 'Advanced lab tb greekTheta': 'theta', 'Advanced lab tb greekLambda': 'lambda', 'Advanced lab tb greekSigma': 'sigma', 'Advanced lab tb greekOmega': 'omega', 'Advanced lab tb greekInfty': 'infinity', 'Advanced lab tb hrTitle': 'Horizontal rule', 'Advanced lab tb adocTitles': 'Titles', 'Advanced lab tb adocTitlesHint': 'Document header: no empty lines inside the header; the first blank line ends it (https://docs.asciidoctor.org/asciidoc/latest/document/header/).', 'Advanced lab tb documentTitle': 'Document title', 'Advanced lab tb sectionTitle': 'Section title', 'Advanced lab tb adocLevel0': 'Document title (=)', 'Advanced lab tb adocLevel0WithHeader': 'Minimal header (title, author, revision, description, keywords, first section)', 'Advanced lab tb adocHeaderAuthorLine': 'Author Name ', 'Advanced lab tb adocHeaderRevisionLine': '1.0, 2026-04-15: Draft revision', 'Advanced lab tb adocHeaderAttrsBlock': ':description: Short document summary for metadata\n:keywords: keyword-one, keyword-two, keyword-three', 'Advanced lab tb adocSection1': 'Section (==)', 'Advanced lab tb adocSection2': 'Subsection (===)', 'Advanced lab tb adocSection3': 'Subsubsection (====)', 'Advanced lab tb adocSection4': 'Level 5 (=====)', 'Advanced lab tb adocSection5': 'Level 6 (======)', 'Advanced lab tb adocBold': 'Bold (*bold*)', 'Advanced lab tb adocItalic': 'Italic (_italic_)', 'Advanced lab tb adocMono': 'Monospace (`mono`)', 'Advanced lab tb adocLink': 'Link (link:url[text])', 'Advanced lab tb adocImage': 'Image (image::url[alt])', 'Advanced lab tb adocUnordered': 'Unordered (* item)', 'Advanced lab tb adocOrdered': 'Ordered (. item)', 'Advanced lab tb adocLabeled': 'Labeled list (term:: def)', 'Advanced lab tb adocBlocks': 'Blocks', 'Advanced lab tb adocQuote': 'Quote block (____)', 'Advanced lab tb adocLiteral': 'Literal block (....)', 'Advanced lab tb adocNote': 'NOTE admonition', 'Advanced lab tb adocTip': 'TIP admonition', 'Advanced lab tb adocWarning': 'WARNING admonition', 'Advanced lab tb adocSource': 'Source / listing', 'Advanced lab tb adocSourceHint': 'Inserts a [source,lang] block; replace the sample code.', 'Advanced lab tb adocStem': 'STEM / LaTeX', 'Advanced lab tb adocStemHint': 'Imwald runs Asciidoctor with stem: latexmath; math becomes \\(...\\) / \\[...\\] and is drawn with KaTeX (not MathJax).', 'Advanced lab tb adocStemInline': 'Inline stem:[…]', 'Advanced lab tb adocLatexmathInline': 'Inline latexmath:[…]', 'Advanced lab tb adocStemBlock': 'Display math ([stem] +++ … +++++)', 'Advanced lab tb adocLineBreak': 'Hard line break (space + at line end)', 'Advanced lab tb adocSubscript': 'Subscript (~text~)', 'Advanced lab tb adocSuperscript': 'Superscript (^text^)', 'Advanced lab tb adocPassthrough': 'Inline passthrough (+++ … +++)', 'Advanced lab tb adocFootnote': 'Footnote (footnote:[…])', 'Advanced lab tb adocImportant': 'IMPORTANT admonition', 'Advanced lab tb adocCaution': 'CAUTION admonition', 'Advanced lab tb adocExampleBlock': 'Example block ([example])', 'Advanced lab tb adocSidebar': 'Sidebar (**** … ****)', 'Advanced lab tb adocListing': 'Listing block ([listing] + ----)', 'Advanced lab tb adocOpenBlock': 'Open block (-- … --)', 'Advanced lab tb adocStructure': 'Structure & media', 'Advanced lab tb adocStructureHint': 'Tables, IDs/anchors ([#id] before a block—avoids [[wikilink]] syntax), cross-refs, media (Asciidoctor block macros).', 'Advanced lab tb adocTable': 'Table (|=== …)', 'Advanced lab tb adocAnchor': 'Block or section ID ([#id])', 'Advanced lab tb adocXref': 'Cross reference (<>)', 'Advanced lab tb adocVideo': 'Video (video::url[])', 'Advanced lab tb adocAudio': 'Audio (audio::url[])', 'Advanced lab tb adocOrderedStart': 'Ordered list with [start=n]', 'Advanced lab tb adocComment': 'Line comment (//)', 'Advanced lab tb adockbd': 'Keyboard (kbd:[…])', 'Advanced lab tb adocMenu': 'Menu path (menu:…)', 'Advanced lab tb adocBtn': 'Button (btn:[…])', 'Advanced lab tb adocHrTitle': "Thematic break (''')", Apply: 'Aplicar', Reset: 'Restablecer', 'Share something on this Relay': 'Comparte algo en este relé', 'Try deleting this note': 'Intenta eliminar esta nota', 'Deletion request sent to {{count}} relays': 'Solicitud de eliminación enviada a {{count}} relés', 'Suitable Relays': 'Relés adecuados', 'People, keywords, or relays': 'Personas, palabras clave o relés', 'Hide content mentioning muted users': 'Ocultar contenido que mencione usuarios silenciados', 'This note mentions a user you muted': 'Esta nota menciona a un usuario que silenciaste', Filter: 'Filtro', 'Feed filter': 'Feed filter', 'Search loaded posts': 'Search loaded posts', 'Filter loaded posts placeholder': 'Filter by text in content or tags…', 'Feed filter author': 'Author', 'Feed filter author everyone': 'From everyone', 'Feed filter author me': 'Only from me', 'Feed filter author npub': 'From user (npub or hex)', 'Feed filter author npub from prefix': 'from:', 'Feed filter author npub placeholder': 'npub1… or 64-char hex', 'Feed filter author me needs login': 'Log in to filter by your pubkey', 'Within the last': 'Within the last', 'Time unit': 'Time unit', Minutes: 'Minutes', Days: 'Days', Weeks: 'Weeks', Months: 'Months', Years: 'Years', 'Feed filter client-side hint': 'Filters only apply to posts already loaded; relays are not queried again.', 'Feed full search': 'Perform full search', 'Feed full search running': 'Searching…', 'Feed full search clear': 'Clear', 'Feed full search active hint': 'Showing relay search results. Clear to return to the live feed.', 'Feed full search need constraint': 'Add search text, an author filter, or a time range before searching relays.', 'Feed full search invalid feed': 'This feed cannot run a relay search.', 'Feed full search failed': 'Relay search failed. Try again.', 'Feed full search empty': 'No matching posts were found on the queried relays.', 'No loaded posts match your filters.': 'No loaded posts match your filters.', 'mentioned you in a note': 'te mencionó en una nota', 'quoted your note': 'citó tu nota', 'quoted this note': 'Quoted this note', 'highlighted this note': 'Highlighted this note', 'cited in article': 'Cited in article', 'Thread backlinks heading': 'Also quoting this note', 'Thread backlinks primary section': 'Quotes, highlights & citations', 'Thread backlinks bookmarks section': 'Bookmarks', 'Thread backlinks lists section': 'Lists & collections', 'View full note and thread': 'View full note and thread', 'labeled this note': 'Labeled this note', 'reported this note': 'Reported this note', 'bookmarked this note': 'Bookmarked this note', 'pinned this note': 'Pinned this note', 'listed this note': 'Listed this note', 'bookmark set reference': 'Bookmark set includes this note', 'curated this note': 'Curated this note', 'badge award for this note': 'Badge award for this note', 'referenced this note': 'Referenced this note', 'Report events heading': 'Moderation reports', 'voted in your poll': 'votó en tu encuesta', 'reacted to your note': 'reaccionó a tu nota', 'boosted your note': 'boosteó tu nota', 'zapped your note': 'zappeó tu nota', 'zapped you': 'te zappeó', zapped: 'zapped', 'Invalid zap receipt': 'Invalid zap receipt', 'Zapped note': 'Zapped note', 'Zapped profile': 'Zapped profile', 'Zap reply threshold': 'Zap reply threshold', 'Zaps above this amount will appear as replies in threads': 'Zaps above this amount will appear as replies in threads', 'Mark as read': 'Marcar como leído', Report: 'Reportar', 'Successfully report': 'Reporte exitoso', 'Failed to report': 'Fallo al reportar', nudity: 'Desnudez', malware: 'Software malicioso', profanity: 'Blasfemia', illegal: 'Contenido ilegal', spam: 'Spam', other: 'Otro', 'Notification list style': 'Estilo de lista de notificaciones', 'See extra info for each notification': 'Ver información adicional para cada notificación', 'See more notifications at a glance': 'Ver más notificaciones de un vistazo', Detailed: 'Detallado', 'Submit Relay': 'Enviar relé', Homepage: 'Página principal', 'Proof of Work (difficulty {{minPow}})': 'Prueba de Trabajo (dificultad {{minPow}})', 'POW {{difficulty}}': 'POW {{difficulty}}', 'via {{client}}': 'vía {{client}}', 'Auto-load media': 'Cargar medios automáticamente', Always: 'Siempre', 'Wi-Fi only': 'Solo Wi-Fi', Never: 'Nunca', 'Click to load image': 'Haz clic para cargar la imagen', 'Click to load media': 'Haz clic para cargar los medios', 'Click to load YouTube video': 'Haz clic para cargar el video de YouTube', '{{count}} reviews': '{{count}} reseñas', 'Write a review': 'Escribir una reseña', 'No reviews yet. Be the first to write one!': '¡Aún no hay reseñas. Sé el primero en escribir una!', 'View more reviews': 'Ver más reseñas', 'Failed to review': 'Error al reseñar', 'Write a review and pick a star rating': 'Escriba una reseña y elija una calificación de estrellas', Submit: 'Enviar', 'Reviews for {{relay}}': 'Reseñas para {{relay}}', 'No relays selected': 'No hay relés seleccionados', 'Post to': 'Publicar en', 'Write relays and {{count}} other relays': 'Relés de escritura y {{count}} otros relés', '{{count}} relays': '{{count}} relés', 'Republishing...': 'Republicando...', 'Trending Notes': 'Notas de tendencia', 'Trending on Your Favorite Relays': 'Trending on Your Favorite Relays', 'Trending on the Default Relays': 'Trending on the Default Relays', 'Latest from your follows': 'Latest from your follows', 'Latest from our recommended follows': 'Latest from our recommended follows', 'Search page title': 'Search Nostr', 'Search on Alexandria': 'Search on Alexandria', 'Search page clear': 'Clear', 'Search page clear description': 'Clear the search field, close suggestions, and remove results so you can start a new search.', 'Follows latest page title': 'Latest from follows', 'Follows latest page description': 'Recent notes from accounts you follow (or a curated list when not signed in), using their outbox relays merged with your favorites. Expand a row for notes or open the profile from the row.', 'Follows latest nav label': 'Follows latest', 'Loading follow list…': 'Loading follow list…', 'Could not load recommended follows': 'Could not load recommended follows', 'Your follow list is empty': 'Your follow list is empty', 'Loading recent posts from follows…': 'Loading recent posts from follows…', 'Loading more…': 'Loading more…', 'No recent posts from this user in the current fetch': 'No recent posts from this user in the current fetch', 'Loading trending notes from your relays...': 'Loading trending notes from your relays...', 'Trending on Nostr': 'Trending on Nostr', 'Home trending slice notice': 'This feed includes a trending slice (nostrarchives). Notes that reached you from that relay show “Trending on Nostr” under the card.', Sort: 'Sort', newest: 'newest', oldest: 'oldest', 'most popular': 'most popular', 'least popular': 'least popular', 'Connected to': 'Conectado a', 'Wallet connector': 'Wallet connector', 'NWC relay': 'NWC relay', 'Not an NWC connection (no relay URL in config).': 'Not an NWC connection (no relay URL in config).', 'Disconnect Wallet': 'Desconectar billetera', 'Are you absolutely sure?': '¿Estás absolutamente seguro?', 'You will not be able to send zaps to others.': 'No podrás enviar zaps a otros.', Disconnect: 'Desconectar', 'Set up your wallet to send and receive sats!': '¡Configura tu billetera para enviar y recibir sats!', 'Set up': 'Configurar', 'nested events': 'nested events', 'Loading RSS feeds...': 'Loading RSS feeds...', 'No RSS feed items available': 'No RSS feed items available', 'Show or hide the RSS page and sidebar entry': 'Show or hide the RSS page and sidebar entry', 'Refreshing feeds...': 'Refreshing feeds...', 'All feeds': 'All feeds', 'All time': 'All time', 'Last hour': 'Last hour', 'Last day': 'Last day', 'Last week': 'Last week', 'Last month': 'Last month', 'Last 24 hours': 'Last 24 hours', 'Last 48 hours': 'Last 48 hours', 'Time range': 'Time range', 'Filter by RSS source': 'Filter by RSS source', 'No items match your filters': 'No items match your filters', 'Search...': 'Search...', '{{count}} feeds': '{{count}} feeds', 'Toggle filters': 'Toggle filters', 'Showing {{filtered}} of {{total}} items': 'Showing {{filtered}} of {{total}} items', Full: 'Full', Compact: 'Compacto', Expand: 'Expand', 'help.title': 'Help', 'help.tabShortcuts': 'Keyboard shortcuts', 'help.tabOverview': 'App overview', 'shortcuts.title': 'Keyboard shortcuts', 'shortcuts.intro': 'Shortcuts for this app and common browsing. Modifier combos are Shift+Alt+key (Option+Shift+key on macOS); either modifier order works when typing.', 'shortcuts.sectionApp': 'This app', 'shortcuts.sectionSearch': 'Search bar', 'shortcuts.sectionStandard': 'Standard', 'shortcuts.openHelp': 'Show this help', 'shortcuts.or': 'or', 'shortcuts.then': 'then', 'shortcuts.focusPrimary': 'Focus main column scroll (desktop; then arrow keys, Page Up/Down, Home/End)', 'shortcuts.focusSecondary': 'Focus side panel scroll when it is open (desktop; same keys to scroll)', 'shortcuts.newNote': 'New note / post (after login if needed)', 'shortcuts.searchSuggest': 'Move through suggestions', 'shortcuts.searchDismiss': 'Close search dropdown', 'shortcuts.tabNavigate': 'Move focus to the next or previous control', 'shortcuts.activate': 'Activate buttons and many controls', 'shortcuts.closeOverlays': 'Close dialogs, menus, and the search dropdown', 'shortcuts.scrollWhenFocused': 'Scroll the focused scrollable area', 'shortcuts.browserBack': 'Browser back (history)', 'No spells yet. Create one with the button above.': 'No spells yet. Create one with the button above.', 'Loading spells from your relays…': 'Loading spells from your relays…', 'Could not run this spell. Check that it has a valid REQ/COUNT command, or add write relays in settings.': 'Could not run this spell. Check that it has a valid REQ/COUNT command, or add write relays in settings.', 'Select a spell…': 'Select a spell…', 'Spells from follows': 'From people you follow ({{count}})', 'Other spells': 'Other spells ({{count}})', 'Select a spell to view its feed.': 'Select a spell to view its feed.', 'Add another row': 'Add another row', 'Remove this row': 'Remove this row', 'One kind number per row (e.g. 1 for notes).': 'One kind number per row (e.g. 1 for notes).', 'One author per row: $me, $contacts, or hex pubkey / npub.': 'One author per row: $me, $contacts, or hex pubkey / npub.', 'One hex event id per row.': 'One hex event id per row.', 'One wss:// URL per row. Leave empty to use your write relays.': 'One wss:// URL per row. Leave empty to use your write relays.', 'One topic per row.': 'One topic per row.', topic: 'topic', 'Spell form fields': 'Spell form fields', 'Counting matching events…': 'Counting matching events…', 'Edit spell': 'Edit spell', 'Clone spell': 'Clone spell', 'Spell cloned': 'Spell cloned', 'Clone spell intro': 'This spell is preloaded from another author’s definition. Change anything you like, then save to publish a new spell signed with your account.', 'Spell updated': 'Spell updated', 'Relay URL': 'Relay', Count: 'Count', 'Edit spell relays': 'Edit relays', 'COUNT spell relay errors hint': 'One or more relays failed or returned an error. You can change the relay list in the spell and save again.', 'COUNT spell total distinct explanation': 'Distinct matching event IDs across all relays that responded successfully (duplicates across relays removed). Each relay only returns up to the filter limit.', 'Leave empty to use your write relays.': 'Leave empty to use your write relays.', 'COUNT spell result explanation': 'Distinct events returned for this filter (merged from your spell relays and default write relays, duplicates removed). Relays only return up to the filter limit.', 'COUNT spell may be capped by limit': 'This count may equal your spell limit — there could be more matching events on the network.', 'Spell count failed. Check relays or try again.': 'Could not complete the count. Check relays or try again.', 'REQ returns a feed; COUNT returns a number.': 'REQ: scrollable feed (choose live Feed or one-shot Fetch below). COUNT: a single number, no feed.', listImportManualLabel: 'Pre-fill from event', listImportFromEventHint: 'Supported tags are merged into the form (e, p, t, relay, r, a where possible). Non-empty content is skipped; encrypted private items are not read. You may see notices for unmapped tags.', listImportManualPlaceholder: '64-char hex, nevent1…, or naddr1…', listImportLoadManual: 'Apply', listImportContentSkipped: 'This event has non-empty content (may include encrypted private items). Only public tags were merged.', listImportUnsupportedEmoji: 'This list includes emoji tags (NIP-30); those are not added to the spell filter.', listImportUnsupportedTag: 'Tags of type “{{tag}}” ({{count}}) are not mapped to spell filters yet.', listImportBadATag: 'Could not parse address tag: {{preview}}…', listImportATagNotFound: 'Could not resolve address tag: {{preview}}…', listImportATagFailed: 'Failed to resolve address tag: {{preview}}…', listImportEventNotFound: 'No event found for that reference.', 'REQ tag filters': 'REQ tag filters', spellFormTagFiltersLabel: 'Tag filters on matching events', spellCreateIntro: 'Spells are saved relay filters (NIP-A7). The “Spell query” section is the real definition; the dashed box at the bottom is only for names, descriptions, and catalog labels. Use $me for your pubkey and $contacts for your follow list when executing.', spellFormSectionQueryTitle: 'Spell query', spellFormSectionQueryHint: 'This block is the actual spell definition: it becomes the Nostr REQ/COUNT filter (kinds, authors, time range, tag filters on matching events, relays, etc.).', spellFormSectionMetadataTitle: 'Listing & labels (optional)', spellFormSectionMetadataBadge: 'Not part of the query', spellFormSectionMetadataHint: 'Name, description, and topic labels are only for display and spell pickers. They are not used when the spell fetches events.', spellFormCatalogTopicsLabel: 'Topic labels on this spell (t tags)', spellTopicsMetadataHint: 'One topic per row. To filter which notes you see, use “REQ tag filters” in the spell query above (letter “t”).', spellTagFiltersHint: 'Optional filters on subscribed events (NIP-01 single-letter tags). Example: letter “t”, values “bitcoin”.', spellTagFiltersEmpty: 'No tag filters yet. Add rows below or apply an event reference above.', 'Tag filter letter': 'Tag letter', 'Filter value': 'Value', 'Add tag filter': 'Add tag filter', spellPickerSectionYours: 'Your spells', 'Failed to remove spell from local storage': 'Failed to remove spell from local storage', Spells: 'Spells', 'doublePane.secondaryEmpty': 'Open a note, profile, or settings item to show it here.', 'doublePane.secondaryEmptyHint': 'Your feed and primary pages stay on the left.', '(empty)': '(empty)', '12-hour (AM/PM)': '12-hour (AM/PM)', '24-hour': '24-hour', 'A new version is available': 'A new version is available', 'A short description of the article content': 'A short description of the article content', AM: 'AM', 'Access via': 'Access via', 'Accessed On': 'Accessed On', 'Accessed on': 'Accessed on', 'Add RSS feed URLs to subscribe to. If no feeds are configured, the default feed will be used.': 'Add RSS feed URLs to subscribe to. If no feeds are configured, the default feed will be used.', 'Add a relay to block': 'Add a relay to block', 'Add at least one invitee': 'Add at least one invitee', 'Add client identifier': 'Add client identifier', 'Add expiration tags by default': 'Add expiration tags by default', 'Add quiet tags by default': 'Add quiet tags by default', 'Add recipients using nostr: mentions (e.g., nostr:npub1...) or the recipient selector above': 'Add recipients using nostr: mentions (e.g., nostr:npub1...) or the recipient selector above', 'Add the source (where this text is from)': 'Add the source (where this text is from)', 'Add to favorites': 'Add to favorites', 'Add {{count}} Selected': 'Add {{count}} Selected', 'Added at': 'Added at', 'Added {{count}} relay(s)': 'Added {{count}} relay(s)', 'Adding...': 'Adding...', 'Adding…': 'Adding…', 'Advanced Options': 'Advanced Options', 'All Topics': 'All Topics', 'All feeds from OPML file are already added': 'All feeds from OPML file are already added', 'All items deleted successfully': 'All items deleted successfully', 'Already blocked': 'Already blocked', 'Already saved': 'Already saved', 'Application Recommendations': 'Application Recommendations', 'Are you sure you want to clear all cached data? This will delete all stored events and settings from your browser.': 'Are you sure you want to clear all cached data? This will delete all stored events and settings from your browser.', 'Are you sure you want to delete all items from this store?': 'Are you sure you want to delete all items from this store?', 'Are you sure you want to unmute this user? This will restore the follow button.': 'Are you sure you want to unmute this user? This will restore the follow button.', "Are you sure you want to unregister the service worker? This will clear this app's service worker caches and you will need to reload the page.": "Are you sure you want to unregister the service worker? This will clear this app's service worker caches and you will need to reload the page.", 'Article exported as AsciiDoc': 'Article exported as AsciiDoc', 'Article exported as Markdown': 'Article exported as Markdown', 'Article title (optional)': 'Article title (optional)', articleDTagDefaultHint: 'Optional. If empty, the d-tag defaults to a type-specific prefix plus a Unix timestamp (seconds), e.g. longform-article-…, wiki-article-…, nostr-specification-…, publication-content-….', Audio: 'Audio', Author: 'Author', 'Author is required for reading groups': 'Author is required for reading groups', 'Author name (optional)': 'Author name (optional)', Authors: 'Authors', 'Block Relay': 'Block Relay', 'Blocked Relays': 'Blocked Relays', 'Blocking...': 'Blocking...', Blossom: 'Blossom', Book: 'Book', 'Brief description of the event': 'Brief description of the event', 'Brief summary (optional)': 'Brief summary (optional)', 'Brief summary of the article (optional)': 'Brief summary of the article (optional)', 'Browse Cache': 'Browse Cache', 'Search cached events...': 'Search cached events...', 'No cached events match your search.': 'No cached events match your search.', 'Showing first {{count}} cached event matches.': 'Showing first {{count}} cached event matches.', 'Open in store': 'Open in store', 'Browse cache root description': 'View IndexedDB stores, or search all cached Nostr-like events (content, tags, id, pubkey, kind) across stores.', 'Copy event JSON': 'Copy event JSON', 'Broadcast to mailbox stack': 'Broadcast to mailbox stack', 'Broadcasting to outbox HTTP and cache relays…': 'Broadcasting to outbox, HTTP, and cache relays…', 'Broadcast to mailbox stack finished': 'Broadcast to mailbox stack finished', 'Failed to broadcast: {{error}}': 'Failed to broadcast: {{error}}', 'Log in to broadcast': 'Log in to broadcast', 'Only the author can broadcast this event': 'Only the author can broadcast this event', 'Event must be signed to broadcast': 'Event must be signed to broadcast', 'No mailbox cache or HTTP write relays configured': 'No mailbox, cache, or HTTP write relays configured', 'Publish this event to your NIP-65 outbox, HTTP write relays, and cache relays': 'Publish this event to your NIP-65 outbox, HTTP write relays, and cache relays', 'C-Tag': 'C-Tag', 'Cache Relays': 'Cache Relays', 'Cache cleared successfully': 'Cache cleared successfully', 'Cache refreshed successfully': 'Cache refreshed successfully', 'Cache relays are used to store and retrieve events locally. These relays are merged with your inbox and outbox relays.': 'Cache relays are used to store and retrieve events locally. These relays are merged with your inbox and outbox relays.', 'Cache relays must be local network URLs only (e.g., ws://localhost:4869 or ws://127.0.0.1:4869)': 'Cache relays must be local network URLs only (e.g., ws://localhost:4869 or ws://127.0.0.1:4869)', 'Cache relays saved': 'Cache relays saved', Cancelled: 'Cancelled', Chapter: 'Chapter', 'Chapter Title': 'Chapter Title', 'Chapter title (optional)': 'Chapter title (optional)', Citation: 'Citation', 'Citation title (optional)': 'Citation title (optional)', 'Clean up duplicate replaceable events? This will keep only the newest version of each event.': 'Clean up duplicate replaceable events? This will keep only the newest version of each event.', 'Cleaned up {{deleted}} duplicate entries, kept {{kept}}': 'Cleaned up {{deleted}} duplicate entries, kept {{kept}}', 'Cleaned up {{deleted}} duplicate entries, kept {{kept}} (total items after cleanup: {{total}})': 'Cleaned up {{deleted}} duplicate entries, kept {{kept}} (total items after cleanup: {{total}})', 'Cleanup Duplicates': 'Cleanup Duplicates', Clear: 'Clear', 'Clear Cache': 'Clear Cache', 'Clear Service Worker': 'Clear Service Worker', 'Clear cached data stored in your browser, including IndexedDB events, localStorage settings, and service worker caches.': 'Clear cached data stored in your browser, including IndexedDB events, localStorage settings, and service worker caches.', 'Click update to get the latest features and improvements': 'Click update to get the latest features and improvements', Close: 'Close', 'Comma or space-separated topics (will be added as t-tags)': 'Comma or space-separated topics (will be added as t-tags)', Command: 'Command', Configure: 'Configure', 'Connect Wallet': 'Connect Wallet', 'Console Logs': 'Console Logs', 'Console logs cleared': 'Console logs cleared', 'Content is required': 'Content is required', 'Content must be 5000 characters or less': 'Content must be 5000 characters or less', Controversial: 'Controversial', 'Copied!': 'Copied!', 'Copy to clipboard': 'Copy to clipboard', 'Create Article': 'Create Article', 'Create Citation': 'Create Citation', 'Create Highlight': 'Create Highlight', 'Create New Thread': 'Create New Thread', 'Create Poll': 'Create Poll', 'Create Thread': 'Create Thread', composeModeKind1: 'Short note (kind 1) — turn off other compose types', 'Create a Spell': 'Create a Spell', 'Creating...': 'Creating...', 'D-Tag': 'D-Tag', 'D-Tag is required for articles': 'D-Tag is required for articles', DOI: 'DOI', 'Date-based (all-day)': 'Date-based (all-day)', 'Default expiration (months)': 'Default expiration (months)', 'Default quiet period (days)': 'Default quiet period (days)', 'Delete All': 'Delete All', 'Delete item': 'Delete item', 'Deleted {{count}} event(s)': 'Deleted {{count}} event(s)', 'Deletion request sent': 'Deletion request sent', 'Description (content)': 'Description (content)', 'Digital Object Identifier (optional)': 'Digital Object Identifier (optional)', 'Disable word wrap': 'Disable word wrap', 'Discovered Relays': 'Discovered Relays', 'Discovering relays...': 'Discovering relays...', Discussion: 'Discussion', Discussions: 'Discussions', Downvote: 'Downvote', 'Edited by': 'Edited by', Editor: 'Editor', 'Editor name (optional)': 'Editor name (optional)', 'Enable word wrap': 'Enable word wrap', 'End date': 'End date', 'End date must be after start date': 'End date must be after start date', 'Enter a Nostr event identifier (nevent, naddr, note, or hex ID) OR a web URL (https://). Not both.': 'Enter a Nostr event identifier (nevent, naddr, note, or hex ID) OR a web URL (https://). Not both.', 'Enter a descriptive title for your thread': 'Enter a descriptive title for your thread', 'Enter the author name': 'Enter the author name', 'Enter the book title': 'Enter the book title', 'Enter the specific text you want to highlight in the main content area above': 'Enter the specific text you want to highlight in the main content area above', 'Event IDs (ids)': 'Event IDs (ids)', 'Event appears to be invalid or corrupted': 'Event appears to be invalid or corrupted', 'Event has no value data': 'Event has no value data', 'Event is missing required fields: {{fields}}': 'Event is missing required fields: {{fields}}', 'Event type': 'Event type', 'Expiration Tags': 'Expiration Tags', 'Export OPML': 'Export OPML', 'Export as AsciiDoc': 'Export as AsciiDoc', 'Export as Markdown': 'Export as Markdown', 'External Citation': 'External Citation', 'External Citation Settings': 'External Citation Settings', 'Failed to add relay. Please try again.': 'Failed to add relay. Please try again.', 'Failed to add relays': 'Failed to add relays', 'Failed to block relay. Please try again.': 'Failed to block relay. Please try again.', 'Failed to cleanup duplicates': 'Failed to cleanup duplicates', 'Failed to clear cache': 'Failed to clear cache', 'Failed to copy': 'Failed to copy', 'Failed to create relay set. Please try again.': 'Failed to create relay set. Please try again.', 'Failed to create thread': 'Failed to create thread', 'Failed to create thread. Please try a different relay.': 'Failed to create thread. Please try a different relay.', 'Failed to delete all items': 'Failed to delete all items', 'Failed to delete item': 'Failed to delete item', 'Failed to discover relays': 'Failed to discover relays', 'Failed to export OPML file': 'Failed to export OPML file', 'Failed to export article': 'Failed to export article', 'Failed to import OPML file: {{error}}': 'Failed to import OPML file: {{error}}', 'Failed to load RSS feeds': 'Failed to load RSS feeds', 'Failed to load store items': 'Failed to load store items', 'Failed to mute user privately': 'Failed to mute user privately', 'Failed to mute user publicly': 'Failed to mute user publicly', 'Failed to pin note': 'Failed to pin note', 'Failed to publish post': 'Failed to publish post', 'Failed to publish reply': 'Failed to publish reply', 'Failed to publish reaction': 'Failed to publish reaction', 'Failed to publish thread': 'Failed to publish thread', 'Failed to publish to some relays. Please try again or use different relays.': 'Failed to publish to some relays. Please try again or use different relays.', 'Failed to save RSS feeds': 'Failed to save RSS feeds', 'Failed to save cache relays': 'Failed to save cache relays', 'Failed to save relay list': 'Failed to save relay list', 'Failed to unregister service worker: ': 'Failed to unregister service worker: ', 'Failed to unsubscribe from topic': 'Failed to unsubscribe from topic', Favorite: 'Favorite', Fetch: 'Fetch', 'Fetch once, then stop.': 'Fetch once, then stop.', 'Filter by': 'Filter by', 'Flat View': 'Flat View', 'Font size': 'Font size', 'Full Quote/Context': 'Full Quote/Context', 'Full-text search query': 'Full-text search query', Geohash: 'Geohash', 'Geohash (optional)': 'Geohash (optional)', 'Global quiet mode': 'Global quiet mode', 'Group discussions by topic': 'Group discussions by topic', 'Grouped View': 'Grouped View', Groups: 'Groups', 'Handler {{index}}': 'Handler {{index}}', 'Hardcopy Citation': 'Hardcopy Citation', 'Hardcopy Citation Settings': 'Hardcopy Citation Settings', Hide: 'Hide', 'Hide interactions on all posts': 'Hide interactions on all posts', 'Hide interactions on posts with quiet tags': 'Hide interactions on posts with quiet tags', 'High PoW': 'High PoW', 'Higher values make your thread harder to mine but more unique.': 'Higher values make your thread harder to mine but more unique.', Highlight: 'Highlight', 'Highlight Settings': 'Highlight Settings', 'How to Create a Highlight (NIP-84)': 'How to Create a Highlight (NIP-84)', 'Human-readable spell name': 'Human-readable spell name', 'Image URL': 'Image URL', 'Import OPML': 'Import OPML', 'Imported {{count}} feed(s) from OPML file': 'Imported {{count}} feed(s) from OPML file', 'In-Browser Cache': 'In-Browser Cache', Insert: 'Insert', 'Insert URL into your post and publish to Nostr GIF library (NIP-94).': 'Insert URL into your post and publish to Nostr GIF library (NIP-94).', 'Insert URL into your post and publish kind 1063 (NIP-94) with hashtag memeamigo for discoverability.': 'Insert URL into your post and publish kind 1063 (NIP-94) with hashtag memeamigo for discoverability.', 'Insert event or address': 'Insert event or address', 'Insert mention': 'Insert mention', 'Internal Citation': 'Internal Citation', 'Internal Citation Settings': 'Internal Citation Settings', 'Invalid Event': 'Invalid Event', 'Invalid Lightning Address': 'Invalid Lightning Address', 'Invalid Lightning Address. Please enter a valid Lightning Address or LNURL.': 'Invalid Lightning Address. Please enter a valid Lightning Address or LNURL.', 'Invalid URL': 'Invalid URL', 'Invalid content JSON': 'Invalid content JSON', 'Invalid relay URL': 'Invalid relay URL', 'Invalid source. Please enter a note ID, nevent, naddr, hex ID, or URL.': 'Invalid source. Please enter a note ID, nevent, naddr, hex ID, or URL.', 'Item deleted successfully': 'Item deleted successfully', JSON: 'JSON', 'Join link': 'Join link', 'Journal/Publication name (optional)': 'Journal/Publication name (optional)', Json: 'JSON', Kinds: 'Kinds', 'Language Model': 'Language Model', Large: 'Large', 'Leave empty for HiveTalk, or paste Zoom / Teams / other link': 'Leave empty for HiveTalk, or paste Zoom / Teams / other link', 'Lightning payment failed': 'Lightning payment failed', Limit: 'Limit', 'Live feed; keeps updating.': 'Live feed; keeps updating.', 'Loading more...': 'Loading more...', 'Loading relays...': 'Loading relays...', 'Location (optional)': 'Location (optional)', 'Log in to run this spell (it uses $me or $contacts).': 'Log in to run this spell (it uses $me or $contacts).', 'Login failed': 'Login failed', 'nip07.extensionKeyMismatch': "Your browser extension is using a different key on this tab. Switch to the matching key in the extension, reload the page to apply your extension's current selection, or use the other action on this message to log in with the key currently selected in your extension.", 'nip07.extensionKeyMismatchTitle': 'Extension key mismatch', 'nip07.extensionKeyMismatchBody': "Your browser extension is using a different key than this tab. Switch keys in the extension, reload the page, or sign in with the extension's current key.", 'nip07.reloadPage': 'Reload page', 'nip07.useExtensionIdentity': 'Use extension identity', 'nip07.switchedToExtensionIdentity': "Switched to your extension's current identity.", 'nip07.adoptExtensionFailed': 'Could not switch to extension identity', 'Login to configure RSS feeds': 'Login to configure RSS feeds', 'Long-form Article': 'Long-form Article', 'Mailbox relays saved': 'Mailbox relays saved', 'Mark as NSFW': 'Mark as NSFW', 'Maximum {{max}} invitees': 'Maximum {{max}} invitees', 'Maximum {{max}} invitees allowed': 'Maximum {{max}} invitees allowed', Medium: 'Medium', Mode: 'Mode', 'Most Zapped': 'Most Zapped', 'Move to top': 'Move to top', 'Multiple choice': 'Multiple choice', 'Mute failed': 'Mute failed', NSFW: 'NSFW', Name: 'Name', 'Name of the language model used': 'Name of the language model used', 'New External Citation': 'New External Citation', 'New Hardcopy Citation': 'New Hardcopy Citation', 'New Highlight': 'New Highlight', 'New Internal Citation': 'New Internal Citation', 'New Long-form Article': 'New Long-form Article', 'New Poll': 'New Poll', 'New Discussion': 'New Discussion', 'New Prompt Citation': 'New Prompt Citation', 'New Public Message': 'New Public Message', 'New Wiki Article': 'New Wiki Article', 'New Nostr Specification': 'New Nostr Specification', Newest: 'Newest', 'No JSON available': 'No JSON available', 'No RSS feeds found in OPML file': 'No RSS feeds found in OPML file', 'No cached data found.': 'No cached data found.', 'No console logs captured yet': 'No console logs captured yet', 'No events found': 'No events found', 'No feeds configured. Default feed will be used.': 'No feeds configured. Default feed will be used.', 'No feeds to export': 'No feeds to export', 'No groups available. Join some groups first.': 'No groups available. Join some groups first.', 'No items in this store.': 'No items in this store.', 'No items match your search.': 'No items match your search.', 'No logs match the current filters': 'No logs match the current filters', 'No posts found': 'No posts found', 'No posts match your search': 'No posts match your search', 'No relays available. Please configure relays in settings.': 'No relays available. Please configure relays in settings.', 'No service workers or caches found for this app': 'No service workers or caches found for this app', 'No users found': 'No users found', 'No valid RSS feed URLs found in OPML file': 'No valid RSS feed URLs found in OPML file', 'Note pinned': 'Note pinned', 'Note unpinned': 'Note unpinned', Oldest: 'Oldest', 'Open Timestamp': 'Open Timestamp', 'Opens in a new tab. Copy a GIF URL there, then paste below. If this picker closed, click “Insert GIF” again to paste.': 'Opens in a new tab. Copy a GIF URL there, then paste below. If this picker closed, click “Insert GIF” again to paste.', 'Opens in a new tab. Copy an image URL there, then paste below. If this picker closed, click “Insert meme” again to paste.': 'Opens in a new tab. Copy an image URL there, then paste below. If this picker closed, click “Insert meme” again to paste.', Optional: 'Optional', 'Optional image for the event': 'Optional image for the event', 'Optionally, add the full quote/context to show your highlight within it': 'Optionally, add the full quote/context to show your highlight within it', PM: 'PM', 'Page Range': 'Page Range', Pages: 'Pages', 'Paste URL of a GIF': 'Paste URL of a GIF', 'Paste URL of a meme image': 'Paste URL of a meme image', 'Paste the entire original passage that contains your highlight': 'Paste the entire original passage that contains your highlight', Photo: 'Photo', 'Picture Note': 'Picture Note', 'Pin note': 'Pin note', 'Plain text description of the query': 'Plain text description of the query', 'Please login to view bookmarks': 'Please login to view bookmarks', 'Please login to view favorites': 'Please login to view favorites', 'Please select a group': 'Please select a group', 'Please select at least one relay': 'Please select at least one relay', 'Please set a start date': 'Please set a start date', 'Poll with no options': 'Poll with no options', 'Post published to some relays': 'Post published to some relays', 'Posts will automatically include expiration tags': 'Posts will automatically include expiration tags', 'Posts will automatically include quiet tags': 'Posts will automatically include quiet tags', 'Posts will be quiet for this many days': 'Posts will be quiet for this many days', 'Posts will expire after this many months': 'Posts will expire after this many months', 'Processing...': 'Processing...', 'Profile event not available': 'Profile event not available', 'Prompt Citation': 'Prompt Citation', 'Prompt Citation Settings': 'Prompt Citation Settings', 'Prompt Conversation Script': 'Prompt Conversation Script', 'Proof of Work': 'Proof of Work', 'Publish kind 1063 (NIP-94) for this GIF and insert the URL into your post': 'Publish kind 1063 (NIP-94) for this GIF and insert the URL into your post', 'Publish to Relays': 'Publish to Relays', 'Published By': 'Published By', 'Published In': 'Published In', 'Published On': 'Published On', 'Published in': 'Published in', 'Published on': 'Published on', 'Publisher name (optional)': 'Publisher name (optional)', 'Quiet Tags': 'Quiet Tags', 'RSS Feed': 'RSS Feed', 'RSS + Web': 'RSS + Web', 'RSS feed source': 'RSS feed source', 'All feed sources': 'All feed sources', 'RSS feed view mode': 'RSS feed view mode', 'Article URLs': 'Article URLs', 'Article URLs subtitle': 'One card per link: URLs from Nostr relays (you and people you follow) plus any RSS hit. No RSS row yet → web preview card.', 'Article URLs Nostr manual subtitle': 'Article URLs with no subscribed-feed items yet — from Nostr relay discovery or links you added. Anything that already has feed items appears under RSS.', 'RSS feed column title': 'RSS & linked articles', 'RSS feed column subtitle': 'Feed entries and article cards that include at least one item from your subscribed RSS feeds.', 'RSS timeline': 'RSS timeline', 'RSS timeline subtitle': 'Every item from your subscribed feeds, newest first — classic RSS reader.', URLs: 'URLs', RSS: 'RSS', 'No URL-only items yet': 'No URL-only items yet', 'RSS+Web url tab empty hint': 'Links from your RSS subscriptions appear under the RSS tab. This tab lists article URLs from Nostr (reactions, comments, bookmarks on web pages) when they are not only covered by feed items, and links you add manually.', 'Respond to this RSS entry': 'Respond to this RSS entry', 'RSS read-only thread hint': 'Nostr replies, zaps, and highlights are hidden here. Use this to add the article to your URL feed and respond there.', 'RSS feed item label': 'RSS', 'Web URL item label': 'Web URL', 'URL thread activity': 'URL thread activity', 'Suppress Clawstr links in RSS previews': 'Hide clawstr.com in RSS and URL feed', 'Hide local, media & feed URLs from URL cards': 'Hide local, media, feed, document & XML links from the feed', 'RSS articles': 'RSS articles', 'Web comments': 'Web comments', 'Web highlights': 'Web highlights', 'In your bookmarks': 'In your bookmarks', '{{count}} RSS entries for this URL': '{{count}} RSS entries for this URL', '{{count}} entries for this article URL': '{{count}} entries for this article URL', 'No comments yet': 'No comments yet', 'No highlights yet': 'No highlights yet', 'Showing {{filtered}} of {{total}} entries': 'Showing {{filtered}} of {{total}} entries', standardRssFeed_spotifeed: 'Spotify playlist (Spotifeed)', standardRssFeed_youtube: 'YouTube feed', standardRssFeed_youtubeChannel: 'YouTube channel feed', standardRssFeed_youtubePlaylist: 'YouTube playlist feed', standardRssFeed_feedburner: 'FeedBurner', standardRssFeed_reddit: 'Reddit RSS', standardRssFeed_substack: 'Substack', standardRssFeed_medium: 'Medium', 'RSS Feed Settings': 'RSS Feed Settings', 'Follow sets': 'Follow sets', 'Personal Lists': 'Personal Lists', 'Personal lists hub intro': 'Open mute list, following, bookmarks list, pinned notes, interest topics (kind 10015), your NIP-30 user emoji list (kind 10030), and emoji set packs (kind 30030) on their own pages. Follow sets are below. Web page bookmarks (NIP-B0, kind 39701) are separate—save from an article’s panel or use the Bookmarks spell for a mixed feed.', 'Mute list': 'Mute list', 'Following list': 'Following list', 'Bookmarks list': 'Bookmarks list', 'Notification thread follow list': 'Thread notifications (follow)', 'Notification thread mute list': 'Thread notifications (mute)', 'Pinned notes list': 'Pinned notes list', 'Interests list': 'Interests list', 'Profile badges list': 'Profile badges list', 'Profile badges list intro': 'NIP-58 badges shown on your profile wall: consecutive `a` (badge definition) and `e` (badge award) tag pairs on kind 10008. Publish when you are done editing.', 'Profile badges migrate hint': 'You still have a deprecated kind 30008 profile badges list (`d=profile_badges`). Copy its entries to kind 10008 — the old event is not deleted.', 'Migrate from kind 30008': 'Migrate from kind 30008', 'No profile badges on your list': 'No profile badges on your list yet.', 'Profile badges list updated': 'Profile badges list published', 'Migrated profile badges to kind 10008': 'Profile badges migrated to kind 10008', 'No badges found in deprecated list': 'No badges found in the deprecated list', 'Profile badges need both definition (a) and award (e)': 'Enter both a badge definition coordinate and an award event id.', 'Award must be a 64-character hex event id': 'Award must be a 64-character hex event id', 'Add badge': 'Add badge', 'Badge definition (a tag), e.g. 30009:pubkey:bravery': 'Badge definition (a tag), e.g. 30009:pubkey:bravery', 'Badge award event id (e tag)': 'Badge award event id (e tag)', 'Publish profile badges list': 'Publish profile badges list', 'User emoji list': 'User emoji list (kind 10030)', 'Emoji sets': 'Emoji sets (kind 30030)', 'User emoji list title': "{{username}}'s emoji list", 'User emoji list intro': 'NIP-30: inline custom emoji (`emoji` tags) and references to your kind 30030 packs (`a` tags). Publish when you are done editing.', 'User emoji list saved': 'Emoji list published', 'User emoji inline section': 'Inline emoji', 'User emoji inline empty': 'No inline emoji yet. Add a shortcode and image URL below.', 'User emoji inline invalid': 'Enter a shortcode and a non-empty image URL.', 'User emoji sets section': 'Emoji set references', 'User emoji sets hint': 'Add a coordinate in the form 30030:<64-hex pubkey>:, usually one of your own emoji sets from the Emoji sets page.', 'User emoji sets empty': 'No emoji set references yet.', 'User emoji set ref invalid': 'Invalid coordinate. Use 30030::.', 'User emoji set ref duplicate': 'That emoji set is already in the list.', 'Emoji set coordinate': 'Emoji set (a tag)', 'Publish changes': 'Publish changes', Shortcode: 'Shortcode', 'Emoji sets settings intro': 'NIP-30 emoji packs (kind 30030): each set has a `d` tag and `emoji` entries (shortcode + image URL). Publish from the editor dialog.', 'New emoji set': 'New emoji set', 'Edit emoji set': 'Edit emoji set', 'No emoji sets yet': 'You have not created any emoji sets yet.', 'Emoji set saved': 'Emoji set saved', 'Emoji set deleted': 'Emoji set deleted', 'Failed to load emoji sets': 'Failed to load emoji sets', 'emoji entries': 'emoji', 'Emoji set d tag hint': 'Stable identifier for this pack. It cannot be changed after the first publish.', 'Emoji pack entries': 'Emoji in this pack', 'No emoji entries in pack': 'No emoji in this pack yet.', 'Delete emoji set?': 'Delete this emoji set?', 'Delete emoji set confirm': 'This sends a deletion request (kind 5). Relays that accept it will drop the set; others may still show a cached copy.', 'Interests list section subtitle': 'Topics you follow for hashtag feeds and the Interests spell. Stored on Nostr as kind 10015 (`t` tags).', 'Interest topic placeholder': 'topic or #hashtag', 'Interest list add topic': 'Add topic', 'Interest topic invalid': 'Enter a valid topic (letters, numbers, hyphens, underscores).', 'No interest topics in list': 'No subscribed topics yet. Add one above or subscribe from a hashtag page.', "username's interest topics": "{{username}}'s interest topics", 'Remove from interest list': 'Remove from interest list', 'Personal lists interests spell hint': 'For a combined feed of all subscribed topics, use the', 'Interests spell': 'Interests spell', 'Personal lists bookmarks spell hint': 'For a note feed from NIP-51 bookmarks, use the', 'Bookmarks spell': 'Bookmarks spell', 'Pinned notes hint': 'Pinned notes: use the note menu (⋯) on a note and choose pin to profile. Pins appear on your profile.', 'Bookmarks list section title': 'Bookmarks list', 'Bookmarks list section subtitle': 'Events referenced by `e` / `a` tags on your kind 10003 bookmark list (newest first).', 'No entries in bookmark list': 'Your bookmark list is empty.', 'View bookmarks as feed in Spells': 'View bookmarks as a note feed in Spells', 'Pinned notes list section title': 'Pinned notes list', 'Pinned notes list section subtitle': 'Events referenced by `e` / `a` tags on your kind 10001 pin list (same order as on your profile).', 'Loading pin list': 'Loading pin list…', 'No pinned notes in list': 'No pinned notes in your pin list yet.', "username's bookmarks": "{{username}}'s bookmarks", "username's pinned notes": "{{username}}'s pinned notes", 'Event not loaded': 'Event not loaded', 'No NIP-51 bookmarks or web bookmarks yet.': 'No NIP-51 bookmarks or web bookmarks yet.', 'Web bookmarks': 'Web bookmarks', 'Web bookmark': 'Web bookmark', 'Web bookmarks NIP intro': 'Web bookmarks are stored as kind 39701 events, not in your NIP-51 bookmark list.', 'Log in to save web bookmarks': 'Log in to save web bookmarks for this page (NIP-B0, kind 39701).', 'Remove web bookmark': 'Remove web bookmark', 'No web bookmark for this URL yet': 'You have not saved a web bookmark for this URL yet.', 'Page title': 'Page title', 'Short description': 'Short description', 'Save web bookmark': 'Save web bookmark', 'Sign in to publish web bookmark': 'Please log in with a signing key to save web bookmarks.', 'Follow sets settings intro': 'NIP-51 follow sets (kind 30000) group people for custom feeds (for example in Spells). Lists are published to your NIP-65 outboxes and profile discovery relays.', 'New follow set': 'New follow set', 'Edit follow set': 'Edit follow set', 'No follow sets yet': 'You have not created any follow sets yet.', 'Follow set saved': 'Follow set saved', 'Follow set deleted': 'Follow set deleted', 'Failed to load follow sets': 'Failed to load follow sets', members: 'members', 'Optional display title': 'Optional display title', 'List id (d tag)': 'List id (d tag)', 'Follow set d tag hint': 'Stable identifier for this list. It cannot be changed after the first publish.', 'People in this list': 'People in this list', 'Delete follow set?': 'Delete this follow set?', 'Delete follow set confirm': 'This sends a deletion request (kind 5) for the list. Relays that accept it will drop the list; other clients may still show a cached copy until they refresh.', 'Clean list': 'Clean list', 'Clean this list?': 'Clean this list?', 'Clean list confirm': 'This will publish a fresh, empty replacement for this list (all entries removed). This cannot be undone.', 'Clean follows list confirm with backup': 'Before cleaning your follows (kind 3), the current list snapshot will be published to follows history relays. Then a fresh, empty follows list will be published. Continue?', 'List cleaned': 'List cleaned', 'Failed to clean list': 'Failed to clean list', 'Remove feed': 'Remove feed', 'RSS Feeds': 'RSS Feeds', 'RSS feeds exported to OPML file': 'RSS feeds exported to OPML file', 'RSS feeds saved': 'RSS feeds saved', 'Rate limited. Please wait before trying again.': 'Rate limited. Please wait before trying again.', 'Reaction published': 'Reaction published', 'Reaction published to some relays': 'Reaction published to some relays', 'Reaction removed': 'Reaction removed', 'Read full article': 'Read full article', 'Reading group entry': 'Reading group entry', 'Readings Options': 'Readings Options', Recipients: 'Recipients', 'Recipients detected from your message:': 'Recipients detected from your message:', 'Recommended Relays': 'Recommended Relays', 'Recommended applications for handling events of kind {{kind}}': 'Recommended applications for handling events of kind {{kind}}', 'Reference to the cited Nostr event in kind:pubkey:hex format': 'Reference to the cited Nostr event in kind:pubkey:hex format', 'Refresh Cache': 'Refresh Cache', 'Refreshing posts...': 'Refreshing posts...', 'Relative: 7d, 24h, 1w, 1mo, 1y. Or Unix timestamp.': 'Relative: 7d, 24h, 1w, 1mo, 1y. Or Unix timestamp.', Relay: 'Relay', 'Relay Hint': 'Relay Hint', 'Relay URL (optional)': 'Relay URL (optional)', 'Relay blocked successfully': 'Relay blocked successfully', 'Relay requires authentication for write access. Please try a different relay or contact the relay operator.': 'Relay requires authentication for write access. Please try a different relay or contact the relay operator.', 'Relay set options': 'Relay set options', 'Remove from favorites': 'Remove from favorites', Rendered: 'Rendered', 'Reply published': 'Reply published', 'Reply published to some relays': 'Reply published to some relays', 'Reply to Public Message': 'Reply to Public Message', 'Republish to all active relays': 'Republish to all active relays', 'Republish to all available relays': 'Republish to all available relays', 'Required: start (or start date), invitees. Optional: title, end, location, summary, topics, image.': 'Required: start (or start date), invitees. Optional: title, end, location, summary, topics, image.', 'Required: start time or start date. Optional: title, end, location, summary, topics, image.': 'Required: start time or start date. Optional: title, end, location, summary, topics, image.', 'Required: start time, invitees. Join link defaults to HiveTalk. Optional: title, end, summary, topics, image.': 'Required: start time, invitees. Join link defaults to HiveTalk. Optional: title, end, summary, topics, image.', 'Required: start time. Join link defaults to HiveTalk. Optional: title, end, summary, topics, image.': 'Required: start time. Join link defaults to HiveTalk. Optional: title, end, summary, topics, image.', 'Respect quiet tags': 'Respect quiet tags', 'Search (NIP-50)': 'Search (NIP-50)', 'Search by name or npub…': 'Search by name or npub…', 'Search calendar, publications, wiki…': 'Search calendar, publications, wiki…', 'Search for user…': 'Search for user…', 'Search items...': 'Search items...', 'Search logs...': 'Search logs...', 'Search notes, threads, long-form…': 'Search notes, threads, long-form…', 'Search on GifBuddy': 'Search on GifBuddy', 'Search on Meme Amigo': 'Search on Meme Amigo', 'Search posts...': 'Search posts...', 'Search threads by title, content, tags, npub, author...': 'Search threads by title, content, tags, npub, author...', 'Searching all available relays...': 'Searching all available relays...', 'Searching…': 'Searching…', 'Full-text search merged intro': 'Notes appear as each index relay responds (merged by card; each card shows which relays returned it). The search wave stops at the sooner of {{totalSeconds}}s from start or {{afterFirstSeconds}}s after the first results arrive from any relay (up to {{concurrency}} relays in parallel, {{relayCount}} total). This is not a live feed — results do not auto-update.', 'Full-text search progress relays': '{{done}} / {{total}} index relays', 'Full-text search seen on label': 'Seen on', 'Full-text search seen on relays': 'Relays that returned this note', 'Full-text search local archive badge': 'This device', 'Full-text search local archive description': 'Matched in your publication cache or event archive on this device. Index relays may not have ingested the note yet.', 'Full-text search empty merged': 'No notes matched this search in your archive or on the configured index relays (they can be slow or offline).', 'Full-text search relay errors summary': '{{count}} relay(s) could not be queried.', 'Full-text search relay querying': 'Querying relay…', 'Full-text search relay error': 'Query failed', 'Full-text search relay unknown error': 'Unknown error', 'Full-text search all relays finished': 'All relay queries have finished.', 'Full-text search sources progress': 'Search sources', 'Full-text search source local': 'This device', 'Full-text search source loading': 'Searching…', 'Full-text search source zero hits': '0 hits', 'Full-text search source zero with note': '0 hits · {{note}}', 'Full-text search source hits': '{{count}} hit(s)', 'Full-text search source hits with raw': '{{shown}} shown ({{raw}} from source)', 'See reference': 'See reference', 'Select Group': 'Select Group', 'Select Media Type': 'Select Media Type', 'Select group...': 'Select group...', 'Select relays': 'Select relays', 'Publish relay cap hint': 'At most {{max}} relays are contacted per publish. Of the {{selected}} relay(s) you checked here, {{selectedContacted}} will be contacted; lower-priority checks are skipped first if you exceed the cap. Session-blocked relays are skipped. See console [PublishEvent] for the exact list.', 'Publish relay cap hint with outbox first': 'At most {{max}} relays per publish. Your NIP-65 write relay(s) use {{reservedSlots}} of those slots first (merged ahead of this picker; they may also appear checked below). Of the {{selected}} relay(s) you checked here, {{selectedContacted}} will be contacted. Session-blocked relays are skipped. See console [PublishEvent] for the exact list.', 'Select the group where you want to create this discussion.': 'Select the group where you want to create this discussion.', 'Select topic...': 'Select topic...', 'Selected text': 'Selected text', 'Send Public Message': 'Send Public Message', 'Send a Lightning payment to this user': 'Send a Lightning payment to this user', 'Service worker caches cleared. Please reload the page.': 'Service worker caches cleared. Please reload the page.', 'Service worker unregistered and caches cleared. Please reload the page.': 'Service worker unregistered and caches cleared. Please reload the page.', 'Service worker unregistered. Please reload the page.': 'Service worker unregistered. Please reload the page.', 'Share your thoughts, ask questions, or start a discussion...': 'Share your thoughts, ask questions, or start a discussion...', 'Short Video Note': 'Short Video Note', 'Show RSS Feed': 'Show RSS Feed', 'Show all discussions in a single list': 'Show all discussions in a single list', 'Show less': 'Show less', Since: 'Since', Small: 'Small', 'Some relays have temporarily disabled writes.': 'Some relays have temporarily disabled writes.', Source: 'Source', 'Spell definition': 'Spell definition', 'Spell published': 'Spell published', 'Start date': 'Start date', 'Start typing to see a preview...': 'Start typing to see a preview...', 'Subject (Book Title)': 'Subject (Book Title)', 'Subject (book title) is required for reading groups': 'Subject (book title) is required for reading groups', 'Subject / Topics': 'Subject / Topics', Subscribe: 'Subscribe', Subscribed: 'Subscribed', 'Subscribed to topic': 'Subscribed to topic', 'Subscribed to topic (local)': 'Subscribed to topic (local)', 'Subscribing...': 'Subscribing...', Summary: 'Summary', 'Supported Event Types': 'Supported Event Types', 'Take a note': 'Take a note', 'The full prompt conversation (optional)': 'The full prompt conversation (optional)', 'The main editor above should contain only the text you want to highlight. This field should contain the full quote or paragraph for context.': 'The main editor above should contain only the text you want to highlight. This field should contain the full quote or paragraph for context.', 'These relays were found from your NIP-05 identifier and signer. You can add them to your relay list.': 'These relays were found from your NIP-05 identifier and signer. You can add them to your relay list.', 'This GIF comes from kind 1063 (NIP-94 file metadata). Choosing it still publishes your own kind 1063 to your write relays (and fast write relays as fallback) so your relays index the URL.': 'This GIF comes from kind 1063 (NIP-94 file metadata). Choosing it still publishes your own kind 1063 to your write relays (and fast write relays as fallback) so your relays index the URL.', 'This GIF was found in a kind 1 note. Notes are not NIP-94 GIF index entries; publish kind 1063 yourself if you want it discoverable as file metadata.': 'This GIF was found in a kind 1 note. Notes are not NIP-94 GIF index entries; publish kind 1063 yourself if you want it discoverable as file metadata.', 'This GIF was found in a kind 1111 comment. Comments are not NIP-94 GIF index entries; publish kind 1063 yourself if you want it discoverable as file metadata.': 'This GIF was found in a kind 1111 comment. Comments are not NIP-94 GIF index entries; publish kind 1063 yourself if you want it discoverable as file metadata.', 'This GIF was found in a Nostr event of kind {{kind}}.': 'This GIF was found in a Nostr event of kind {{kind}}.', 'This file could be either audio or video. Please select the correct type:': 'This file could be either audio or video. Please select the correct type:', 'This store does not contain replaceable events': 'This store does not contain replaceable events', 'This will add additional tags for author and subject to help organize reading group discussions.': 'This will add additional tags for author and subject to help organize reading group discussions.', 'Thread Content': 'Thread Content', 'Thread Title': 'Thread Title', 'Thread creation timed out. Please try again.': 'Thread creation timed out. Please try again.', 'Thread published': 'Thread published', 'Threads are organized by topics. Choose a topic that best fits your discussion.': 'Threads are organized by topics. Choose a topic that best fits your discussion.', 'Time-based': 'Time-based', 'Title is required': 'Title is required', 'Title must be 100 characters or less': 'Title must be 100 characters or less', 'To translate notes and other content, use your browser’s built-in translation. For example: right-click the page and choose “Translate to…”, or use the translate icon in the address bar.': 'To translate notes and other content, use your browser’s built-in translation. For example: right-click the page and choose “Translate to…”, or use the translate icon in the address bar.', Top: 'Top', Topic: 'Topic', URL: 'URL', 'URL of the article cover image (optional)': 'URL of the article cover image (optional)', 'Unique identifier for this article (required)': 'Unique identifier for this article (required)', 'Unmute failed': 'Unmute failed', 'Unpin note': 'Unpin note', Unsubscribe: 'Unsubscribe', 'Unsubscribed from topic': 'Unsubscribed from topic', 'Unsubscribing...': 'Unsubscribing...', Until: 'Until', Untitled: 'Untitled', Update: 'Update', 'Updating...': 'Updating...', 'Upload Audio Comment': 'Upload Audio Comment', 'Upload Audio Message': 'Upload Audio Message', 'Upload Media': 'Upload Media', 'Media kind': 'Media kind', 'Use image/audio/video note kind for the media URL in the editor': 'Use image/audio/video note kind for the media URL in the editor', 'Already publishing as a media note': 'Already publishing as a media note', 'No media URL in note — upload or paste a link first': 'No media URL in note — upload or paste a link first', 'Cannot infer media type from URL — use Note type → Media Note to upload': 'Cannot infer media type from URL — use Note type → Media Note to upload', 'Media kind (disabled): add imeta tags, a media URL, or upload media first': 'Media kind (disabled): add imeta tags, a media URL, or upload media first', Upvote: 'Upvote', 'User unmuted': 'User unmuted', 'Version number (optional)': 'Version number (optional)', Video: 'Video', 'Video Note': 'Video Note', 'Video file': 'Video file', 'View Console Logs': 'View Console Logs', 'View JSON': 'View JSON', 'View cached items in this store.': 'View cached items in this store.', 'View definition': 'View definition', 'View details about cached data in IndexedDB stores. Click on a store to view its items.': 'View details about cached data in IndexedDB stores. Click on a store to view its items.', 'View on Alexandria': 'View on Alexandria', 'View on DecentNewsroom': 'View on DecentNewsroom', 'View on Wikistr': 'View on Wikistr', 'View on Nostr.Watch': 'View on Nostr.Watch', 'View on Nostr.Archives': 'View on Nostr.Archives', 'Relay options': 'Relay options', 'View recent console logs for debugging': 'View recent console logs for debugging', 'Voice Comment': 'Voice Comment', 'Voice Note': 'Voice Note', 'Voice note or audio file': 'Voice note or audio file', Volume: 'Volume', 'Volume number (optional)': 'Volume number (optional)', 'Vote published': 'Vote published', 'Vote removed': 'Vote removed', 'Website where LLM was accessed (optional)': 'Website where LLM was accessed (optional)', 'Wiki Article (AsciiDoc)': 'Wiki Article (AsciiDoc)', 'Nostr Specification': 'Nostr Specification', 'You can only delete your own notes': 'You can only delete your own notes', 'You must be logged in to create a thread': 'You must be logged in to create a thread', 'You need to add at least one media server in order to upload media files.': 'You need to add at least one media server in order to upload media files.', 'You need to login first': 'You need to login first', 'Your account is blocked from posting to this relay.': 'Your account is blocked from posting to this relay.', Zap: 'Zap', 'Zap failed': 'Zap failed', created_at: 'created_at', 'e tag of kind 1040 event (optional)': 'e tag of kind 1040 event (optional)', 'e.g. meetup, conference': 'e.g. meetup, conference', 'e.g., 123-145 (optional)': 'e.g., 123-145 (optional)', 'e.g., GPT-4, Claude, etc. (required)': 'e.g., GPT-4, Claude, etc. (required)', 'e.g., my-article-title': 'e.g., my-article-title', entries: 'entries', 'from Bunker': 'from Bunker', 'from Extension': 'from Extension', 'from NIP-05': 'from NIP-05', general: 'general', 'https://example.com (required)': 'https://example.com (required)', 'https://example.com/image.jpg': 'https://example.com/image.jpg', id: 'id', items: 'items', kind: 'kind', 'kind:pubkey:hex format (required)': 'kind:pubkey:hex format (required)', 'last updated': 'last updated', matching: 'matching', naddr: 'naddr', nevent: 'nevent', 'nevent1..., naddr1..., note1..., hex ID, or https://...': 'nevent1..., naddr1..., note1..., hex ID, or https://...', 'no notes found': 'no notes found', of: 'of', 'on note': 'on note', optional: 'optional', pubkey: 'pubkey', 'sent a public message': 'sent a public message', 'sent you a public message': 'sent you a public message', 'sent you a public message (along with {{count}} others)': 'sent you a public message (along with {{count}} others)', sig: 'sig', 'started a discussion in {{topic}}': 'started a discussion in {{topic}}', tags: 'tags', thread: 'thread', threads: 'threads', 'topic1, topic2, topic3': 'topic1, topic2, topic3', '{{count}} relay(s) selected': '{{count}} relay(s) selected', '🔞 NSFW 🔞': '🔞 NSFW 🔞', 'Choose a suggested topic or type your own. It becomes a normalized tag (e.g. my-topic).': 'Choose a suggested topic or type your own. It becomes a normalized tag (e.g. my-topic).', 'Compressing on your device before upload (large videos can take several minutes)…': 'Compressing on your device before upload (large videos can take several minutes)…', 'Failed to refresh': 'Failed to refresh', 'Invalid article link.': 'Invalid article link.', Likes: 'Likes', 'Loading…': 'Loading…', 'Missing pubkey': 'Missing pubkey', 'No RSS feed list found on relays': 'No RSS feed list found on relays', 'Pinned posts': 'Pinned posts', 'Publishing...': 'Publishing...', 'RSS article': 'RSS article', 'RSS feed list refreshed': 'RSS feed list refreshed', 'Save or discard your changes before refreshing from relays': 'Save or discard your changes before refreshing from relays', 'Suggested topics': 'Suggested topics', 'Synthetic event (no author)': 'Synthetic event (no author)', 'Topic is required': 'Topic is required', 'Type a topic or pick from the list': 'Type a topic or pick from the list', 'Uploading to media server…': 'Uploading to media server…', profileEditorRefreshCacheHint: 'profileEditorRefreshCacheHint', startupSessionHydrating: 'Syncing your relays and profile from the network…', 'AI / LLM prompt citation': 'AI / LLM prompt citation', 'AsciiDoc wiki contribution': 'AsciiDoc wiki contribution', 'Attach image, audio, or video': 'Attach image, audio, or video', Citations: 'Citations', 'Cite from external source': 'Cite from external source', 'Cite from private relay': 'Cite from private relay', 'Create a voting poll': 'Create a voting poll', 'Create custom event': 'Create custom event', 'Create event with custom kind': 'Create event with custom kind', 'Custom Event': 'Custom Event', 'Custom tag…': 'Custom tag…', Dismiss: 'Dismiss', 'Enter a valid event kind: 0–{{maxSigned}}, or {{unsignedMin}}–{{unsignedMax}}.': 'Enter a valid event kind: 0–{{maxSigned}}, or {{unsignedMin}}–{{unsignedMax}}.', 'Enter a valid event kind: integer 0–{{maxSigned}}, or {{unsignedMin}}–{{unsignedMax}} (unsigned experiment).': 'Enter a valid event kind: integer 0–{{maxSigned}}, or {{unsignedMin}}–{{unsignedMax}} (unsigned experiment).', 'Failed to rebroadcast entire publication: {{error}}': 'Failed to rebroadcast entire publication: {{error}}', 'Feed filter kind': 'Feed filter kind', 'Feed filter kind hint': 'Feed filter kind hint', 'Feed filter kind invalid': 'Feed filter kind invalid', 'Feed filter kind placeholder': 'Feed filter kind placeholder', 'Invalid event fields': 'Invalid event fields', 'Kind must be an integer from 0 to {{maxSigned}}, or from {{unsignedMin}} to {{unsignedMax}} (unsigned experiment).': 'Kind must be an integer from 0 to {{maxSigned}}, or from {{unsignedMin}} to {{unsignedMax}} (unsigned experiment).', 'Markdown article (NIP-23)': 'Markdown article (NIP-23)', nostrSpecificationContribution: 'NIP or spec document for relay publication (Markdown)', nostrSpecAffectedKindLabel: 'Affected kinds (k tags)', nostrSpecAffectedKindHint: 'One Nostr kind number per line. Each line becomes its own k tag.', nostrSpecAffectedKindPlaceholder: 'e.g. 1', nostrSpecAffectedKindAdd: 'Add kind', 'Media Note': 'Media Note', 'No publication events found for rebroadcast': 'No publication events found for rebroadcast', 'No publication events were accepted by any relay': 'No publication events were accepted by any relay', 'Note type': 'Note type', 'Offline mode': 'Offline mode', 'Only local relays and cached content are available.': 'Only local relays and cached content are available.', 'Physical source citation': 'Physical source citation', 'Plain text note (kind 1)': 'Plain text note (kind 1)', 'Private relay publication': 'Private relay publication', 'Proof of work is not supported for unsigned experimental kinds ({{min}}–{{max}}).': 'Proof of work is not supported for unsigned experimental kinds ({{min}}–{{max}}).', 'Public Message': 'Public Message', 'Public direct message (kind 4)': 'Public direct message (kind 4)', 'Publication Note': 'Publication Note', 'Rebroadcast entire publication': 'Rebroadcast entire publication', 'Rebroadcast entire publication to ...': 'Rebroadcast entire publication to ...', 'Rebroadcasted entire publication': 'Rebroadcasted entire publication', 'Rebroadcasting entire publication...': 'Rebroadcasting entire publication...', 'Save a quote or passage': 'Save a quote or passage', 'Save data': 'Save data', 'Set kind, content, and tags, then publish.': 'Set kind, content, and tags, then publish.', 'Short Note': 'Short Note', 'Signed: 0–{{maxSigned}}. Unsigned experiment (empty sig): {{unsignedMin}}–{{unsignedMax}}.': 'Signed: 0–{{maxSigned}}. Unsigned experiment (empty sig): {{unsignedMin}}–{{unsignedMax}}.', 'Slow connection detected': 'Slow connection detected', 'Start a discussion thread': 'Start a discussion thread', 'This action is only available for publications': 'This action is only available for publications', 'This kind is published with an empty signature. Normal Nostr relays will reject it, and these events are not portable on the open network. Only use relays that explicitly support this experiment and authenticate you (for example with NIP-42 AUTH) before accepting writes.': 'This kind is published with an empty signature. Normal Nostr relays will reject it, and these events are not portable on the open network. Only use relays that explicitly support this experiment and authenticate you (for example with NIP-42 AUTH) before accepting writes.', Thread: 'Thread', 'Turn on low-bandwidth mode to reduce data usage.': 'Turn on low-bandwidth mode to reduce data usage.', 'Turn on low-bandwidth mode? This will set: {{changes}}.': 'Turn on low-bandwidth mode? This will set: {{changes}}.', 'Unsigned experimental kind': 'Unsigned experimental kind', 'Unsigned experimental kind: `sig` will be empty at publish; `id` is still the standard event hash. Not accepted by normal relays. Relays that allow this should authenticate you (e.g. NIP-42 AUTH) before writes.': 'Unsigned experimental kind: `sig` will be empty at publish; `id` is still the standard event hash. Not accepted by normal relays. Relays that allow this should authenticate you (e.g. NIP-42 AUTH) before writes.', 'media loading off': 'media loading off', profileEditorDuplicateSingleton: 'profileEditorDuplicateSingleton', profileEditorEditBannerUrl: 'profileEditorEditBannerUrl', profileEditorEditPictureUrl: 'profileEditorEditPictureUrl', profileEditorImageUrlHint: 'profileEditorImageUrlHint', profileEditorNostrBuildThumbHint: 'profileEditorNostrBuildThumbHint', profileEditorProfileNotLoaded: 'profileEditorProfileNotLoaded', profileEditorTagListHint: 'profileEditorTagListHint', 'readOnlySession.hint': 'readOnlySession.hint', 'readOnlySession.label': 'readOnlySession.label', 'readOnlySession.labelShort': 'readOnlySession.labelShort', 'video autoplay off': 'video autoplay off', 'Add to list': 'Add to list', 'Block relay': 'Block relay', 'Choose app': 'Choose app', 'Payment Methods': 'Payment Methods', 'Unfollowed thread notifications': 'Unfollowed thread notifications', 'Unmute thread notifications': 'Unmute thread notifications', 'Unmuted thread notifications': 'Unmuted thread notifications', Values: 'Values', favoriteRelaysDefaultsBanner: 'favoriteRelaysDefaultsBanner', othersRelayListEmpty: 'othersRelayListEmpty', othersRelayListKind10002Fallback: 'othersRelayListKind10002Fallback', 'paytoEditor.jsonPreviewHint': 'paytoEditor.jsonPreviewHint', profileEditorDragToReorder: 'profileEditorDragToReorder' } }