mirror of
https://github.com/Termix-SSH/Termix.git
synced 2026-10-30 15:15:24 +00:00
feat: move snippets, keybinding actions and macros out of core into plugins
This commit is contained in:
1 parent
d9bba10612
commit
e0c30a4e6f
262 files changed
+9091
-10744
No files matched your search
@@ -409,7 +409,6 @@
|
||||
"sidebarSettings": "Configuració de la barra lateral...",
|
||||
"hosts": "Amfitrions",
|
||||
"snippets": "Fragments",
|
||||
"macros": "Macros",
|
||||
"hostManager": "Gestor d'amfitrions",
|
||||
"credentials": "Credencials",
|
||||
"connections": "Connexions",
|
||||
@@ -869,7 +868,6 @@
|
||||
"groupTags": "Etiquetes i pin",
|
||||
"groupTunnels": "Túnels",
|
||||
"groupJumpHosts": "Amfitrions de salt",
|
||||
"groupQuickActions": "Accions ràpides",
|
||||
"groupFeatureFlags": "Banderes de funcions",
|
||||
"groupAdvanced": "Configuració avançada",
|
||||
"preview": "Vista prèvia",
|
||||
@@ -1068,9 +1066,6 @@
|
||||
"addCredentialDesc": "Emmagatzemar claus o contrasenyes SSH",
|
||||
"tmuxMonitor": "Monitor Tmux",
|
||||
"tmuxMonitorDesc": "Supervisa les sessions tmux a tots els teus amfitrions",
|
||||
"snippets": "Fragments",
|
||||
"runSnippetDesc": "Executar a la pestanya activa del terminal",
|
||||
"noSnippetsFound": "No s'han trobat fragments que coincideixin amb \"{{search}}\"",
|
||||
"recentActivity": "Activitat recent",
|
||||
"serversAndHosts": "Servidors i amfitrions",
|
||||
"noHostsFound": "No s'han trobat hosts que coincideixin amb \"{{search}}\"",
|
||||
@@ -1864,119 +1859,6 @@
|
||||
"hotkeysPrevTab": "Pestanya anterior",
|
||||
"hotkeysJumpTab": "Salta a la pestanya"
|
||||
},
|
||||
"snippets": {
|
||||
"title": "Fragments",
|
||||
"createSnippetTitle": "Crea un fragment",
|
||||
"createSnippetDescription": "Crea un nou fragment d'ordre per a una execució ràpida",
|
||||
"nameLabel": "Nom",
|
||||
"namePlaceholder": "p. ex., reiniciar Nginx",
|
||||
"descriptionLabel": "Descripció",
|
||||
"descriptionPlaceholder": "Descripció opcional",
|
||||
"optional": "Opcional",
|
||||
"folderLabel": "Carpeta",
|
||||
"noFolder": "Sense carpeta (Sense categoria)",
|
||||
"commandLabel": "Comandament",
|
||||
"commandPlaceholder": "p. ex., sudo systemctl reinicia nginx",
|
||||
"typeLabel": "Tipus",
|
||||
"typeCommand": "Comandament",
|
||||
"typeNote": "Nota",
|
||||
"noteLabel": "Nota",
|
||||
"notePlaceholder": "p. ex., un text de recordatori o indicació reutilitzable",
|
||||
"cancel": "Cancel·la",
|
||||
"createSnippetButton": "Crea un fragment",
|
||||
"createFolderTitle": "Crea una carpeta",
|
||||
"createFolderDescription": "Organitza els teus fragments en carpetes",
|
||||
"folderNameLabel": "Nom de la carpeta",
|
||||
"folderNamePlaceholder": "p. ex., ordres del sistema, scripts de Docker",
|
||||
"folderColorLabel": "Color de la carpeta",
|
||||
"folderIconLabel": "Icona de carpeta",
|
||||
"previewLabel": "Vista prèvia",
|
||||
"folderNameFallback": "Nom de la carpeta",
|
||||
"createFolderButton": "Crea una carpeta",
|
||||
"targetTerminals": "Terminals de destinació",
|
||||
"selectAll": "Tot",
|
||||
"selectNone": "Cap",
|
||||
"noTerminalTabsOpen": "No hi ha pestanyes de terminal obertes",
|
||||
"searchPlaceholder": "Fragments de cerca...",
|
||||
"newSnippet": "Nou fragment",
|
||||
"newFolder": "Nova carpeta",
|
||||
"run": "Corre",
|
||||
"noSnippetsInFolder": "No hi ha fragments en aquesta carpeta",
|
||||
"uncategorized": "Sense categoria",
|
||||
"editSnippetTitle": "Edita el fragment",
|
||||
"editSnippetDescription": "Actualitza aquest fragment d'ordres",
|
||||
"saveSnippetButton": "Desa els canvis",
|
||||
"createSuccess": "Fragment creat correctament",
|
||||
"createFailed": "No s'ha pogut crear el fragment",
|
||||
"updateSuccess": "Fragment actualitzat correctament",
|
||||
"updateFailed": "No s'ha pogut actualitzar el fragment",
|
||||
"deleteFailed": "No s'ha pogut suprimir el fragment",
|
||||
"folderCreateSuccess": "Carpeta creada correctament",
|
||||
"folderCreateFailed": "No s'ha pogut crear la carpeta",
|
||||
"editFolderTitle": "Edita la carpeta",
|
||||
"editFolderDescription": "Canvia el nom o l'aspecte d'aquesta carpeta",
|
||||
"saveFolderButton": "Desa els canvis",
|
||||
"editFolder": "Edita la carpeta",
|
||||
"deleteFolder": "Suprimeix la carpeta",
|
||||
"folderDeleteSuccess": "S'ha suprimit la carpeta \"{{name}}\"",
|
||||
"folderDeleteFailed": "No s'ha pogut suprimir la carpeta",
|
||||
"folderEditSuccess": "La carpeta s'ha actualitzat correctament",
|
||||
"folderEditFailed": "No s'ha pogut actualitzar la carpeta",
|
||||
"confirmRunMessage": "Executar \"{{name}}\"?",
|
||||
"confirmRunButton": "Corre",
|
||||
"runSuccess": "Ha executat \"{{name}}\" en terminals {{count}}",
|
||||
"pasteSuccess": "S'ha enganxat \"{{name}}\" al(s) terminal(s) {{count}}",
|
||||
"pasteToTerminal": "Enganxa",
|
||||
"copySuccess": "S'ha copiat \"{{name}}\" al porta-retalls",
|
||||
"shareTitle": "Compartir fragment",
|
||||
"shareUser": "Usuari",
|
||||
"shareRole": "Rol",
|
||||
"selectUser": "Selecciona un usuari...",
|
||||
"selectRole": "Selecciona un rol...",
|
||||
"shareSuccess": "Fragment compartit correctament",
|
||||
"shareFailed": "No s'ha pogut compartir el fragment",
|
||||
"revokeSuccess": "Accés revocat",
|
||||
"revokeFailed": "No s'ha pogut revocar l'accés",
|
||||
"currentAccess": "Accés actual",
|
||||
"shareLoadError": "No s'han pogut carregar les dades compartides",
|
||||
"loading": "S'està carregant...",
|
||||
"close": "Tanca",
|
||||
"reorderFailed": "No s'ha pogut desar l'ordre del fragment",
|
||||
"importExport": "Importació / Exportació",
|
||||
"exportBtn": "Exporta JSON",
|
||||
"importBtn": "Importa JSON",
|
||||
"exportSuccess": "Fragments exportats correctament",
|
||||
"exportFailed": "No s'han pogut exportar els fragments",
|
||||
"importTitle": "Importa fragments",
|
||||
"importDescription": "Importa fragments i carpetes des d'un fitxer JSON exportat per Termix",
|
||||
"importDropOrClick": "Deixa anar un fitxer JSON aquí o fes clic per navegar",
|
||||
"importSelectedFile": "Seleccionat: {{name}}",
|
||||
"importOverwrite": "Sobreescriu els fragments existents amb el mateix nom i carpeta",
|
||||
"importStartBtn": "Importa",
|
||||
"importSuccess": "Importació completada: {{snippets}} fragment(s) afegit(s), {{updated}} actualitzat, {{skipped}} omès, {{folders}} carpeta(es) afegida(es)",
|
||||
"importFailed": "No s'han pogut importar els fragments",
|
||||
"importInvalidFile": "Fitxer no vàlid: s'esperava un objecte JSON amb fragments o matrius de carpetes.",
|
||||
"targetHostsLabel": "Amfitrions de destinació",
|
||||
"targetHostsHint": "Assigneu hosts per executar aquest fragment directament sense un terminal obert.",
|
||||
"noHostsAvailable": "No hi ha cap amfitrió configurat",
|
||||
"clearTargetHosts": "Esborra-ho tot",
|
||||
"hasTargetHosts": "Té amfitrions de destinació",
|
||||
"runOnTargets": "Executar en objectius",
|
||||
"directRunSuccess": "Ha executat \"{{name}}\" en {{count}} host(s)",
|
||||
"directRunPartialFail": "\"{{name}}\" ha fallat en un o més amfitrions",
|
||||
"executionResultTitle": "Resultats de l'execució: {{name}}",
|
||||
"executionResultDescription": "Sortida de l'execució del fragment a cada amfitrió de destinació.",
|
||||
"executionSuccess": "Èxit",
|
||||
"executionFailed": "Fallat",
|
||||
"expandAll": "Expandir totes les carpetes",
|
||||
"collapseAll": "Replega totes les carpetes",
|
||||
"settings": "Configuració del fragment",
|
||||
"variablesHint": "Variables: $HOST, $USER, $PORT, $NAME, ${INPUT_1:Etiqueta}",
|
||||
"variablesDialogTitle": "Executa \"{{name}}\"",
|
||||
"variablesDialogDescription": "Empleneu els valors que necessita aquest fragment abans d'executar-lo.",
|
||||
"variablesPreviewLabel": "Vista prèvia",
|
||||
"variablesConfirmButton": "Corre"
|
||||
},
|
||||
"keybindings": {
|
||||
"title": "Dreceres de teclat",
|
||||
"description": "Personalitza les dreceres de copiar, enganxar i controlar del terminal, o vincula tecles per enviar text o executar un fragment.",
|
||||
@@ -2000,26 +1882,11 @@
|
||||
"pressKeysPlaceholder": "Feu clic i premeu les tecles",
|
||||
"recording": "Premeu les tecles...",
|
||||
"comboRequiredError": "Premeu primer una combinació de tecles",
|
||||
"textRequiredError": "Introduïu el text per enviar",
|
||||
"controlCodeRequiredError": "Introduïu una sola lletra per al codi de control",
|
||||
"snippetRequiredError": "Selecciona un fragment",
|
||||
"conflictWarning": "Aquesta combinació ja està vinculada a {{combo}}. Si deseu, totes dues es dispararan.",
|
||||
"actionLabel": "Acció",
|
||||
"actionCopy": "Copia la selecció",
|
||||
"actionPaste": "Enganxa",
|
||||
"actionSendControlCode": "Envia el senyal Ctrl+lletra",
|
||||
"actionSendText": "Enviar text",
|
||||
"actionRunSnippet": "Executa el fragment existent",
|
||||
"actionNextTab": "Canvia a la pestanya següent",
|
||||
"actionPreviousTab": "Canvia a la pestanya anterior",
|
||||
"actionOpenCommandPalette": "Obre la cerca ràpida",
|
||||
"controlCodeLabel": "Carta",
|
||||
"textLabel": "Text per enviar",
|
||||
"appendEnterLabel": "Premeu Intro després d'enviar",
|
||||
"snippetLabel": "Fragment",
|
||||
"selectSnippetPlaceholder": "Selecciona un fragment",
|
||||
"orphanedSnippetWarning": "fragment no trobat",
|
||||
"clipboardPermissionNote": "Pot demanar permisos al porta-retalls en el primer ús en alguns navegadors."
|
||||
"actionOpenCommandPalette": "Obre la cerca ràpida"
|
||||
},
|
||||
"userProfile": {
|
||||
"donateTitle": "Mantingueu viva la Termix",
|
||||
@@ -2240,100 +2107,5 @@
|
||||
"ntfyTopicRequired": "El tema és obligatori",
|
||||
"ntfyToken": "Token d'accés (opcional)",
|
||||
"channelSaveFailed": "No s'ha pogut desar el canal"
|
||||
},
|
||||
"macros": {
|
||||
"title": "Macros",
|
||||
"description": "Executa una sèrie d'ordres desades en un terminal i reacciona al que el servidor envia de tornada.",
|
||||
"target": "Objectiu",
|
||||
"noTerminal": "Cap terminal obert",
|
||||
"empty": "Encara no hi ha macros",
|
||||
"emptyHint": "Crea una macro per automatitzar un flux de terminal, com ara iniciar la sessió, reiniciar un servei o respondre a les indicacions.",
|
||||
"create": "Nova macro",
|
||||
"back": "Torna a les macros",
|
||||
"name": "Nom",
|
||||
"namePlaceholder": "Reinicia el servidor web",
|
||||
"nameRequired": "Doneu un nom a la macro abans de desar-la",
|
||||
"descriptionLabel": "Descripció",
|
||||
"descriptionPlaceholder": "Què fa aquesta macro (opcional)",
|
||||
"unsaved": "Canvis no desats",
|
||||
"save": "Desa",
|
||||
"saved": "Macro desada",
|
||||
"saveFailed": "No s'ha pogut desar la macro",
|
||||
"delete": "Suprimeix",
|
||||
"deleteTitle": "Voleu suprimir aquesta macro?",
|
||||
"deleteBody": "«{{name}}» s'eliminarà permanentment. Això no es pot desfer.",
|
||||
"deleted": "Macro suprimida",
|
||||
"cancel": "Cancel·la",
|
||||
"run": "Corre",
|
||||
"stop": "Atura",
|
||||
"running": "Corrent...",
|
||||
"completed": "Macro acabada",
|
||||
"failed": "La macro ha fallat",
|
||||
"loadFailed": "No s'han pogut carregar les macros",
|
||||
"needTerminal": "Obriu i connecteu primer un terminal",
|
||||
"noSteps": "Aquesta macro encara no té cap pas. Afegeix-ne un a continuació.",
|
||||
"addStep": "Afegeix un pas",
|
||||
"stepNumber": "Pas {{number}}",
|
||||
"removeStep": "Elimina el pas",
|
||||
"confirmRunTitle": "Voleu executar aquesta macro?",
|
||||
"confirmRunBody": "\"{{name}}\" enviarà ordres a {{host}}.",
|
||||
"confirmRunAction": "Executa macro",
|
||||
"stepTypes": {
|
||||
"send": {
|
||||
"label": "Envia l'ordre",
|
||||
"help": "Escriu text al terminal, igual que si l'haguessis escrit."
|
||||
},
|
||||
"wait": {
|
||||
"label": "Espera la sortida",
|
||||
"help": "Es posa en pausa fins que el servidor imprimeix el text que anomeneu, com si fos una sol·licitud de contrasenya."
|
||||
},
|
||||
"delay": {
|
||||
"label": "Pausa",
|
||||
"help": "Espera un temps fix abans del següent pas."
|
||||
},
|
||||
"if": {
|
||||
"label": "Si la sortida conté",
|
||||
"help": "Comprova tot el que el servidor ha imprès fins ara i després executa una de les dues branques."
|
||||
},
|
||||
"repeat": {
|
||||
"label": "Repetir",
|
||||
"help": "Executa els passos que hi ha dins un nombre determinat de vegades."
|
||||
}
|
||||
},
|
||||
"send": {
|
||||
"text": "Ordre o text",
|
||||
"textPlaceholder": "reinici de systemctl a nginx",
|
||||
"pressEnter": "Premeu Intro després d'enviar",
|
||||
"pressEnterHelp": "Desactiva això per escriure text sense enviar-lo."
|
||||
},
|
||||
"wait": {
|
||||
"pattern": "Espereu fins que la sortida contingui",
|
||||
"patternPlaceholder": "contrasenya:",
|
||||
"timeout": "Renunciar després",
|
||||
"onTimeout": "Si mai apareix",
|
||||
"stop": "Atura la macro",
|
||||
"continue": "Continua igualment"
|
||||
},
|
||||
"delay": {
|
||||
"duration": "Espera"
|
||||
},
|
||||
"ifStep": {
|
||||
"pattern": "Si la sortida conté",
|
||||
"patternPlaceholder": "Actiu: actiu (en funcionament)",
|
||||
"then": "Aleshores fes això",
|
||||
"else": "Si no, fes això",
|
||||
"emptyBranch": "Sense esglaons"
|
||||
},
|
||||
"repeat": {
|
||||
"count": "Nombre de vegades",
|
||||
"times": "vegades"
|
||||
},
|
||||
"match": {
|
||||
"useRegex": "Coincideix amb una expressió regular",
|
||||
"useRegexHelp": "Deixa això desactivat perquè el text coincideixi exactament com està escrit.",
|
||||
"invalidRegex": "No és una expressió regular vàlida, es trobarà com a text sense format."
|
||||
},
|
||||
"seconds": "segons",
|
||||
"secondsShort": "{{count}}s"
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user