Pluralize count-dependent messages with a CLDR one/other selector and gate catalog consistency with a test
All checks were successful
CI / check (push) Successful in 5m20s

This commit is contained in:
Jean Chevronnet 2026-07-20 02:03:05 +00:00
parent 74a58c5425
commit ecdead8278
No known key found for this signature in database
34 changed files with 572 additions and 186 deletions

View file

@ -61,7 +61,6 @@
"\u0002{chan}\u0002 isn't suspended.": "\u0002{chan}\u0002 no está suspendido.",
"\u0002{chan}\u0002 was already set that way.": "\u0002{chan}\u0002 ya estaba configurado así.",
"\u0002{chan}\u0002 will no longer expire.": "\u0002{chan}\u0002 ya no va a expirar.",
"\u0002{chan}\u0002 — \u0002{lines}\u0002 line(s) seen.": "\u0002{chan}\u0002 — \u0002{lines}\u0002 línea(s) vistas.",
"\u0002{code}\u0002 isn't an available language. Available: {list}.": "\u0002{code}\u0002 no es un idioma disponible. Disponibles: {list}.",
"\u0002{d}\u0002 isn't a valid expiry — try 30d, 12h, 45m, or 0.": "\u0002{d}\u0002 no es un vencimiento válido — probá 30d, 12h, 45m, o 0.",
"\u0002{host}\u0002 is already in use. Please choose another.": "\u0002{host}\u0002 ya está en uso. Elegí otro.",
@ -69,7 +68,6 @@
"\u0002{host}\u0002 isn't a valid host (letters, digits, hyphens and dots).": "\u0002{host}\u0002 no es un host válido (letras, dígitos, guiones y puntos).",
"\u0002{host}\u0002 isn't a valid host.": "\u0002{host}\u0002 no es un host válido.",
"\u0002{host}\u0002 isn't allowed here. Please choose another.": "\u0002{host}\u0002 no está permitido acá. Elegí otro.",
"\u0002{ip}\u0002 has \u0002{count}\u0002 live session(s).": "\u0002{ip}\u0002 tiene \u0002{count}\u0002 sesión(es) activas.",
"\u0002{label}\u0002 access on \u0002{chan}\u0002: \u0002{level}\u0002": "Acceso de \u0002{label}\u0002 en \u0002{chan}\u0002: \u0002{level}\u0002",
"\u0002{mask}\u0002 isn't on \u0002{chan}\u0002's auto-kick list.": "\u0002{mask}\u0002 no está en la lista de auto-kick de \u0002{chan}\u0002.",
"\u0002{mask}\u0002 isn't on the ignore list.": "\u0002{mask}\u0002 no está en la lista de ignorados.",
@ -88,7 +86,6 @@
"\u0002{nick}\u0002 isn't grouped to your account.": "\u0002{nick}\u0002 no está agrupado a tu cuenta.",
"\u0002{nick}\u0002 isn't here.": "\u0002{nick}\u0002 no está acá.",
"\u0002{nick}\u0002 was last seen {when} ({what}).": "\u0002{nick}\u0002 se vio por última vez {when} ({what}).",
"\u0002{n}\u0002 vote(s) will now carry a \u0002!votekick\u0002/\u0002!voteban\u0002 in \u0002{chan}\u0002.": "\u0002{n}\u0002 voto(s) ahora van a concretar un \u0002!votekick\u0002/\u0002!voteban\u0002 en \u0002{chan}\u0002.",
"\u0002{pattern}\u0002 isn't a valid regular expression.": "\u0002{pattern}\u0002 no es una expresión regular válida.",
"\u0002{raw}\u0002 isn't a valid \u0002{target}\u0002 mask.": "\u0002{raw}\u0002 no es una máscara \u0002{target}\u0002 válida.",
"\u0002{target}\u0002 had no access to \u0002{chan}\u0002.": "\u0002{target}\u0002 no tenía acceso a \u0002{chan}\u0002.",
@ -143,7 +140,6 @@
" (custom)": " (personalizado)",
" (no activity counters yet)": " (todavía no hay contadores de actividad)",
" About : \u0002{target}\u0002": " Sobre : \u0002{target}\u0002",
" Auto-join : {count} channel(s) — see \u0002AJOIN LIST\u0002": " Auto-join : {count} canal(es) — mirá \u0002AJOIN LIST\u0002",
" By : \u0002{by}\u0002": " Por : \u0002{by}\u0002",
" Description: {desc}": " Descripción: {desc}",
" Email : (none set)": " Email : (ninguno)",
@ -165,7 +161,6 @@
" Real name: {gecos}": " Nombre real: {gecos}",
" Reason : {reason}": " Motivo : {reason}",
" Registered : {when}": " Registrado : {when}",
" Serving {count} channel(s): {list}": " Atendiendo {count} canal(es): {list}",
" Staff note : {note}": " Nota del staff: {note}",
" Suspended : by \u0002{by}\u0002 — {reason}": " Suspendido : por \u0002{by}\u0002 — {reason}",
" URL : {url}": " URL : {url}",
@ -278,7 +273,6 @@
"Both channels must be registered.": "Los dos canales tienen que estar registrados.",
"Bots ({count}):": "Bots ({count}):",
"CALC and show each die": "CALC y mostrar cada dado",
"CHANKILL on \u0002{chan}\u0002: \u0002{banned}\u0002 host(s) AKILL'd.": "CHANKILL en \u0002{chan}\u0002: \u0002{banned}\u0002 host(s) AKILLeados.",
"Can't activate: \u0002{host}\u0002 is on the forbidden list.": "No se puede activar: \u0002{host}\u0002 está en la lista de prohibidos.",
"Can't activate: {msg}": "No se puede activar: {msg}",
"Challenge \u0002#{id}\u0002 ({game}) sent to \u0002{target}\u0002.": "Desafío \u0002#{id}\u0002 ({game}) enviado a \u0002{target}\u0002.",
@ -291,10 +285,6 @@
"Channels released: {list}.": "Canales liberados: {list}.",
"Channels you have access on ({count}):": "Canales en los que tenés acceso ({count}):",
"Classement \u0002{game}\u0002 vide. Sois le premier à gagner !": "Ranking de \u0002{game}\u0002 vacío. ¡Sé el primero en ganar!",
"Cleared \u0002{count}\u0002 entr{suffix} from \u0002{chan}\u0002's auto-kick list.": "Se borraron \u0002{count}\u0002 entrada{suffix} de la lista de auto-kick de \u0002{chan}\u0002.",
"Cleared \u0002{n}\u0002 badword pattern(s) from \u0002{chan}\u0002.": "Se borraron \u0002{n}\u0002 patrón(es) de badword de \u0002{chan}\u0002.",
"Cleared \u0002{n}\u0002 notify watch(es).": "Se borraron \u0002{n}\u0002 vigilancia(s) de notify.",
"Cleared \u0002{n}\u0002 trigger(s) from \u0002{chan}\u0002.": "Se borraron \u0002{n}\u0002 trigger(s) de \u0002{chan}\u0002.",
"Cleared \u0002{target}\u0002's access to \u0002{chan}\u0002.": "Se borró el acceso de \u0002{target}\u0002 a \u0002{chan}\u0002.",
"Cleared the *!*@{host} ban on \u0002{chan}\u0002.": "Se sacó el ban *!*@{host} en \u0002{chan}\u0002.",
"Contact email for \u0002{chan}\u0002 cleared.": "Se borró el email de contacto de \u0002{chan}\u0002.",
@ -306,22 +296,17 @@
"Couldn't update \u0002{chan}\u0002 — please try again in a moment.": "No se pudo actualizar \u0002{chan}\u0002 — probá de nuevo en un momento.",
"DEFCON set to \u0002{level}\u0002 — {desc}.": "DEFCON configurado en \u0002{level}\u0002 — {desc}.",
"Declined.": "Rechazado.",
"Deleted all \u0002{count}\u0002 memo(s).": "Se borraron todos los \u0002{count}\u0002 memo(s).",
"Description for \u0002{chan}\u0002 updated.": "Se actualizó la descripción de \u0002{chan}\u0002.",
"DiceServ rolls dice and evaluates maths for tabletop games. Dice: \u00022d6\u0002, \u0002d20\u0002, \u0002d%\u0002. Also + - * / ^ %, parentheses, functions (sqrt, floor, min, ...), \u0002pi\u0002/\u0002e\u0002, and \u00023~2d6\u0002 to repeat.": "DiceServ tira dados y evalúa cuentas matemáticas para juegos de mesa. Dados: \u00022d6\u0002, \u0002d20\u0002, \u0002d%\u0002. También + - * / ^ %, paréntesis, funciones (sqrt, floor, min, ...), \u0002pi\u0002/\u0002e\u0002, y \u00023~2d6\u0002 para repetir.",
"DictServ looks words up in the dict.org dictionaries. Try \u0002dict\u0002 <word> (WordNet), \u0002define\u0002 (GCIDE), \u0002thes\u0002 (thesaurus), \u0002acronym\u0002, \u0002element\u0002, \u0002law\u0002, \u0002bible\u0002, and more — \u0002LOOKUP\u0002 lists them all.": "DictServ busca palabras en los diccionarios de dict.org. Probá \u0002dict\u0002 <word> (WordNet), \u0002define\u0002 (GCIDE), \u0002thes\u0002 (tesauro), \u0002acronym\u0002, \u0002element\u0002, \u0002law\u0002, \u0002bible\u0002, y más — \u0002LOOKUP\u0002 los lista todos.",
"Email for \u0002{account}\u0002 cleared.": "Se borró el email de \u0002{account}\u0002.",
"Email for \u0002{account}\u0002 updated.": "Se actualizó el email de \u0002{account}\u0002.",
"End of exception list ({count} shown).": "Fin de la lista de excepciones ({count} mostradas).",
"End of flags ({count} entr{suffix}).": "Fin de los flags ({count} entrada{suffix}).",
"End of ignore list ({count} shown).": "Fin de la lista de ignorados ({count} mostrados).",
"End of jupe list ({count} shown).": "Fin de la lista de jupes ({count} mostrados).",
"End of list ({count} group(s)).": "Fin de la lista ({count} grupo(s)).",
"End of list — {count} match(es){more}.": "Fin de la lista — {count} coincidencia(s){more}.",
"End of notify list ({shown} shown).": "Fin de la lista de notify ({shown} mostrados).",
"End of results ({count} shown, newest first — refine the search to narrow).": "Fin de los resultados ({count} mostrados, más nuevos primero — refiná la búsqueda para acotar).",
"End of runtime operator list ({count} shown).": "Fin de la lista de operadores de runtime ({count} mostrados).",
"End of session list ({count} IP(s)).": "Fin de la lista de sesiones ({count} IP(s)).",
"End of spam-filter list ({shown} shown).": "Fin de la lista de spam-filter ({shown} mostrados).",
"End of {name} list ({shown} shown).": "Fin de la lista de {name} ({shown} mostrados).",
"End of {which} bulletins ({count} shown).": "Fin de los boletines {which} ({count} mostrados).",
@ -387,8 +372,6 @@
"Mask must be a \u0002#channel\u0002, a \u0002nick!user@host\u0002 pattern, or a bare nick glob — and no spaces.": "La máscara tiene que ser un \u0002#channel\u0002, un patrón \u0002nick!user@host\u0002, o un glob de nick pelado — y sin espacios.",
"Memo #\u0002{num}\u0002 from \u0002{from}\u0002 ({when}):": "Memo #\u0002{num}\u0002 de \u0002{from}\u0002 ({when}):",
"Memo #\u0002{n}\u0002 deleted.": "Memo #\u0002{n}\u0002 eliminado.",
"Memo sent to \u0002{sent}\u0002 account(s).": "Memo enviado a \u0002{sent}\u0002 cuenta(s).",
"Memo sent to \u0002{sent}\u0002 operator(s).": "Memo enviado a \u0002{sent}\u0002 operador(es).",
"Memo sent to \u0002{target}\u0002.": "Memo enviado a \u0002{target}\u0002.",
"MemoServ delivers messages to registered users, online or not. You must be identified to use it.": "MemoServ entrega mensajes a usuarios registrados, estén conectados o no. Tenés que estar identificado para usarlo.",
"Mode lock for \u0002{chan}\u0002 updated.": "Se actualizó el mode lock de \u0002{chan}\u0002.",
@ -485,12 +468,10 @@
"Removed \u0002{mask}\u0002 from \u0002{chan}\u0002's auto-kick list.": "Se quitó \u0002{mask}\u0002 de la lista de auto-kick de \u0002{chan}\u0002.",
"Removed \u0002{target}\u0002 from \u0002{name}\u0002.": "Se quitó \u0002{target}\u0002 de \u0002{name}\u0002.",
"Removed \u0002{which}\u0002 bulletin \u0002{n}\u0002.": "Se eliminó el boletín \u0002{which}\u0002 \u0002{n}\u0002.",
"Removed all \u0002{n}\u0002 bot(s).": "Se quitaron los \u0002{n}\u0002 bot(s).",
"Removed badword pattern from \u0002{chan}\u0002.": "Se quitó el patrón de palabra prohibida de \u0002{chan}\u0002.",
"Removed fingerprint \u0002{fp}\u0002.": "Se quitó la huella \u0002{fp}\u0002.",
"Removed forbidden pattern: {pattern}": "Se quitó el patrón prohibido: {pattern}",
"Removed the forbid on {label} \u0002{mask}\u0002.": "Se quitó la prohibición sobre {label} \u0002{mask}\u0002.",
"Reopped \u0002{opped}\u0002 trusted regular(s) in \u0002{chan}\u0002.": "Se volvió a dar op a \u0002{opped}\u0002 habitué(s) de confianza en \u0002{chan}\u0002.",
"Report \u0002#{id}\u0002 ({state}):": "Reporte \u0002#{id}\u0002 ({state}):",
"Report \u0002#{n}\u0002 closed.": "Reporte \u0002#{n}\u0002 cerrado.",
"Report \u0002#{n}\u0002 deleted.": "Reporte \u0002#{n}\u0002 eliminado.",
@ -881,7 +862,6 @@
"The bot has left \u0002{chan}\u0002.": "El bot salió de \u0002{chan}\u0002.",
"The bot may again kick channel operators in \u0002{chan}\u0002.": "El bot puede volver a expulsar a los operadores del canal en \u0002{chan}\u0002.",
"The bot may again kick voiced users in \u0002{chan}\u0002.": "El bot puede volver a expulsar a los usuarios con voz en \u0002{chan}\u0002.",
"The bot will ban a user after \u0002{n}\u0002 kick(s) in \u0002{chan}\u0002.": "El bot va a banear a un usuario después de \u0002{n}\u0002 expulsión(es) en \u0002{chan}\u0002.",
"The bot will kick without warning in \u0002{chan}\u0002.": "El bot va a expulsar sin aviso en \u0002{chan}\u0002.",
"The bot will no longer kick channel operators in \u0002{chan}\u0002.": "El bot ya no va a expulsar a los operadores del canal en \u0002{chan}\u0002.",
"The bot will no longer kick voiced users in \u0002{chan}\u0002.": "El bot ya no va a expulsar a los usuarios con voz en \u0002{chan}\u0002.",
@ -927,7 +907,6 @@
"Ticket \u0002#{id}\u0002 isn't open (or doesn't exist).": "El ticket \u0002#{id}\u0002 no está abierto (o no existe).",
"Too many failed attempts. Please wait {secs}s and try again.": "Demasiados intentos fallidos. Esperá {secs}s y probá de nuevo.",
"Top talkers:": "Los que más hablan:",
"Top {shown} of {total} scored identit{suffix} for \u0002{chan}\u0002.": "Top {shown} de {total} identidad{suffix} con puntaje para \u0002{chan}\u0002.",
"Topic for \u0002{chan}\u0002 updated.": "Tema de \u0002{chan}\u0002 actualizado.",
"Trigger #\u0002{n}\u0002 removed from \u0002{chan}\u0002.": "Trigger #\u0002{n}\u0002 eliminado de \u0002{chan}\u0002.",
"Triggers for \u0002{chan}\u0002 ({count}):": "Triggers de \u0002{chan}\u0002 ({count}):",
@ -958,8 +937,6 @@
"You can't ungroup your main account name.": "No podés desagrupar el nombre principal de tu cuenta.",
"You cannot challenge yourself.": "No podés desafiarte a vos mismo.",
"You don't have an account to confirm.": "No tenés una cuenta para confirmar.",
"You have \u0002{total}\u0002 memo(s), \u0002{unread}\u0002 unread, of a maximum \u0002{max}\u0002.": "Tenés \u0002{total}\u0002 memo(s), \u0002{unread}\u0002 sin leer, de un máximo de \u0002{max}\u0002.",
"You have \u0002{unread}\u0002 new memo(s). Read them with \u0002/msg MemoServ READ NEW\u0002.": "Tenés \u0002{unread}\u0002 memo(s) nuevo(s). Leelos con \u0002/msg MemoServ READ NEW\u0002.",
"You have access on no channels.": "No tenés acceso en ningún canal.",
"You have no games. Use \u0002CHALLENGE <nick> <game>\u0002.": "No tenés juegos. Usá \u0002CHALLENGE <nick> <game>\u0002.",
"You have no memo #\u0002{n}\u0002.": "No tenés el memo #\u0002{n}\u0002.",
@ -1258,7 +1235,6 @@
"your mailbox summary": "el resumen de tu buzón",
"your memo preferences": "tus preferencias de memos",
"{challenger} challenges you to {game} (game #{id}). \u0002/msg GamesServ ACCEPT {id}\u0002": "{challenger} te desafía a {game} (juego #{id}). \u0002/msg GamesServ ACCEPT {id}\u0002",
"{count} ticket(s). \u0002VIEW\u0002 <id> for detail.": "{count} ticket(s). \u0002VIEW\u0002 <id> para el detalle.",
"{name} added for \u0002{mask}\u0002 (temporary).": "{name} agregado para \u0002{mask}\u0002 (temporal).",
"{name} added for \u0002{mask}\u0002.": "{name} agregado para \u0002{mask}\u0002.",
"{name} for \u0002{mask}\u0002 removed.": "{name} para \u0002{mask}\u0002 eliminado.",
@ -1266,7 +1242,6 @@
"{name} updated for \u0002{mask}\u0002.": "{name} actualizado para \u0002{mask}\u0002.",
"{nick} declined your challenge #{id}.": "{nick} rechazó tu desafío #{id}.",
"{num}. {text} — by {by}": "{num}. {text} — por {by}",
"{n} report(s). \u0002VIEW\u0002 <id> for detail.": "{n} reporte(s). \u0002VIEW\u0002 <id> para el detalle.",
"{n}. \u0002{mask}\u0002 [{flags}] by {setter} ({when}) — {reason}": "{n}. \u0002{mask}\u0002 [{flags}] por {setter} ({when}) — {reason}",
"{n}. \u0002{mask}\u0002 [{flags}] by {setter} ({when}), expires in {ttl} — {reason}": "{n}. \u0002{mask}\u0002 [{flags}] por {setter} ({when}), vence en {ttl} — {reason}",
"{n}. \u0002{mask}\u0002 [{flags}] — {reason}": "{n}. \u0002{mask}\u0002 [{flags}] — {reason}",
@ -1283,5 +1258,55 @@
"{who}: I have no record of \u0002{nick}\u0002 talking in \u0002{chan}\u0002.": "{who}: No tengo registro de que \u0002{nick}\u0002 haya hablado en \u0002{chan}\u0002.",
"{word} list for \u0002{name}\u0002:": "Lista de {word} para \u0002{name}\u0002:",
"Type \u0002HELP <command>\u0002 for detail on one command.": "Escribí \u0002HELP <command>\u0002 para ver el detalle de un comando.",
"No help for \u0002{t}\u0002. Type \u0002HELP\u0002 for the command list.": "No hay ayuda para \u0002{t}\u0002. Escribí \u0002HELP\u0002 para ver la lista de comandos."
"No help for \u0002{t}\u0002. Type \u0002HELP\u0002 for the command list.": "No hay ayuda para \u0002{t}\u0002. Escribí \u0002HELP\u0002 para ver la lista de comandos.",
"Reopped \u0002{opped}\u0002 trusted regular in \u0002{chan}\u0002.": "Se reopeó \u0002{opped}\u0002 habitual de confianza en \u0002{chan}\u0002.",
"Reopped \u0002{opped}\u0002 trusted regulars in \u0002{chan}\u0002.": "Se reopearon \u0002{opped}\u0002 habituales de confianza en \u0002{chan}\u0002.",
"Cleared \u0002{n}\u0002 trigger from \u0002{chan}\u0002.": "Se borró \u0002{n}\u0002 disparador de \u0002{chan}\u0002.",
"Cleared \u0002{n}\u0002 triggers from \u0002{chan}\u0002.": "Se borraron \u0002{n}\u0002 disparadores de \u0002{chan}\u0002.",
" Serving {count} channel: {list}": " Atendiendo {count} canal: {list}",
" Serving {count} channels: {list}": " Atendiendo {count} canales: {list}",
"Removed all \u0002{n}\u0002 bot.": "Se eliminó \u0002{n}\u0002 bot en total.",
"Removed all \u0002{n}\u0002 bots.": "Se eliminaron los \u0002{n}\u0002 bots.",
"Cleared \u0002{n}\u0002 badword pattern from \u0002{chan}\u0002.": "Se borró \u0002{n}\u0002 patrón de palabra prohibida de \u0002{chan}\u0002.",
"Cleared \u0002{n}\u0002 badword patterns from \u0002{chan}\u0002.": "Se borraron \u0002{n}\u0002 patrones de palabras prohibidas de \u0002{chan}\u0002.",
"The bot will ban a user after \u0002{n}\u0002 kick in \u0002{chan}\u0002.": "El bot va a banear a un usuario después de \u0002{n}\u0002 kick en \u0002{chan}\u0002.",
"The bot will ban a user after \u0002{n}\u0002 kicks in \u0002{chan}\u0002.": "El bot va a banear a un usuario después de \u0002{n}\u0002 kicks en \u0002{chan}\u0002.",
"Cleared \u0002{count}\u0002 entry from \u0002{chan}\u0002's auto-kick list.": "Se borró \u0002{count}\u0002 entrada de la lista de auto-kick de \u0002{chan}\u0002.",
"Cleared \u0002{count}\u0002 entries from \u0002{chan}\u0002's auto-kick list.": "Se borraron \u0002{count}\u0002 entradas de la lista de auto-kick de \u0002{chan}\u0002.",
"Top {shown} of {total} scored identity for \u0002{chan}\u0002.": "Top {shown} de {total} identidad puntuada para \u0002{chan}\u0002.",
"Top {shown} of {total} scored identities for \u0002{chan}\u0002.": "Top {shown} de {total} identidades puntuadas para \u0002{chan}\u0002.",
"\u0002{n}\u0002 vote will now carry a \u0002!votekick\u0002/\u0002!voteban\u0002 in \u0002{chan}\u0002.": "\u0002{n}\u0002 voto va a alcanzar ahora para un \u0002!votekick\u0002/\u0002!voteban\u0002 en \u0002{chan}\u0002.",
"\u0002{n}\u0002 votes will now carry a \u0002!votekick\u0002/\u0002!voteban\u0002 in \u0002{chan}\u0002.": "\u0002{n}\u0002 votos van a alcanzar ahora para un \u0002!votekick\u0002/\u0002!voteban\u0002 en \u0002{chan}\u0002.",
"End of flags ({count} entry).": "Fin de los flags ({count} entrada).",
"End of flags ({count} entries).": "Fin de los flags ({count} entradas).",
"Deleted all \u0002{count}\u0002 memo.": "Se eliminaron \u0002{count}\u0002 memo en total.",
"Deleted all \u0002{count}\u0002 memos.": "Se eliminaron los \u0002{count}\u0002 memos.",
"Memo sent to \u0002{sent}\u0002 account.": "Memo enviado a \u0002{sent}\u0002 cuenta.",
"Memo sent to \u0002{sent}\u0002 accounts.": "Memo enviado a \u0002{sent}\u0002 cuentas.",
"End of session list ({count} IP).": "Fin de la lista de sesiones ({count} IP).",
"End of session list ({count} IPs).": "Fin de la lista de sesiones ({count} IPs).",
"\u0002{ip}\u0002 has \u0002{count}\u0002 live session.": "\u0002{ip}\u0002 tiene \u0002{count}\u0002 sesión activa.",
"\u0002{ip}\u0002 has \u0002{count}\u0002 live sessions.": "\u0002{ip}\u0002 tiene \u0002{count}\u0002 sesiones activas.",
"You have \u0002{total}\u0002 memo, \u0002{unread}\u0002 unread, of a maximum \u0002{max}\u0002.": "Tenés \u0002{total}\u0002 memo, \u0002{unread}\u0002 sin leer, de un máximo de \u0002{max}\u0002.",
"You have \u0002{total}\u0002 memos, \u0002{unread}\u0002 unread, of a maximum \u0002{max}\u0002.": "Tenés \u0002{total}\u0002 memos, \u0002{unread}\u0002 sin leer, de un máximo de \u0002{max}\u0002.",
"End of list — {count} match{more}.": "Fin de la lista — {count} coincidencia{more}.",
"End of list — {count} matches{more}.": "Fin de la lista — {count} coincidencias{more}.",
"Memo sent to \u0002{sent}\u0002 operator.": "Memo enviado a \u0002{sent}\u0002 operador.",
"Memo sent to \u0002{sent}\u0002 operators.": "Memo enviado a \u0002{sent}\u0002 operadores.",
"CHANKILL on \u0002{chan}\u0002: \u0002{banned}\u0002 host AKILL'd.": "CHANKILL en \u0002{chan}\u0002: se aplicó AKILL a \u0002{banned}\u0002 host.",
"CHANKILL on \u0002{chan}\u0002: \u0002{banned}\u0002 hosts AKILL'd.": "CHANKILL en \u0002{chan}\u0002: se aplicó AKILL a \u0002{banned}\u0002 hosts.",
" Auto-join : {count} channel — see \u0002AJOIN LIST\u0002": " Auto-join : {count} canal — mirá \u0002AJOIN LIST\u0002",
" Auto-join : {count} channels — see \u0002AJOIN LIST\u0002": " Auto-join : {count} canales — mirá \u0002AJOIN LIST\u0002",
"{count} ticket. \u0002VIEW\u0002 <id> for detail.": "{count} ticket. \u0002VIEW\u0002 <id> para el detalle.",
"{count} tickets. \u0002VIEW\u0002 <id> for detail.": "{count} tickets. \u0002VIEW\u0002 <id> para el detalle.",
"You have \u0002{unread}\u0002 new memo. Read it with \u0002/msg MemoServ READ NEW\u0002.": "Tenés \u0002{unread}\u0002 memo nuevo. Leelo con \u0002/msg MemoServ READ NEW\u0002.",
"You have \u0002{unread}\u0002 new memos. Read them with \u0002/msg MemoServ READ NEW\u0002.": "Tenés \u0002{unread}\u0002 memos nuevos. Leelos con \u0002/msg MemoServ READ NEW\u0002.",
"Cleared \u0002{n}\u0002 notify watch.": "Se borró \u0002{n}\u0002 seguimiento de notificación.",
"Cleared \u0002{n}\u0002 notify watches.": "Se borraron \u0002{n}\u0002 seguimientos de notificación.",
"\u0002{chan}\u0002 — \u0002{lines}\u0002 line seen.": "\u0002{chan}\u0002 — \u0002{lines}\u0002 línea vista.",
"\u0002{chan}\u0002 — \u0002{lines}\u0002 lines seen.": "\u0002{chan}\u0002 — \u0002{lines}\u0002 líneas vistas.",
"{n} report. \u0002VIEW\u0002 <id> for detail.": "{n} reporte. \u0002VIEW\u0002 <id> para el detalle.",
"{n} reports. \u0002VIEW\u0002 <id> for detail.": "{n} reportes. \u0002VIEW\u0002 <id> para el detalle.",
"End of list ({count} group).": "Fin de la lista ({count} grupo).",
"End of list ({count} groups).": "Fin de la lista ({count} grupos)."
}