@lemonriver/core 0.1.1 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{build-f-fM2ZY4.js → build-Df_xwIpg.js} +1 -1
- package/dist/cli/bin.js +4 -4
- package/dist/{config-DO45GU3e.js → config-BjWCLoMQ.js} +2343 -363
- package/dist/{config-B6JaKJM4.d.ts → config-rMGCkz6i.d.ts} +6 -2
- package/dist/{dev-CqS2xpgE.js → dev-Ctsx9IeO.js} +2 -2
- package/dist/index.d.ts +3 -3
- package/dist/index.js +4 -3
- package/dist/locale/index.d.ts +5 -2
- package/dist/locale/index.js +2 -2
- package/dist/{preview-BihgMlEl.js → preview-CJgcqsPk.js} +1 -1
- package/dist/{types-BjW4glip.d.ts → types-8VUyA2bu.d.ts} +133 -5
- package/dist/{update-C_R0ycVC.js → update-BKOA3Z6o.js} +153 -21
- package/dist/vite/index.d.ts +1 -1
- package/dist/vite/index.js +1 -1
- package/dist/{zh-tw-Ci0jK8eg.js → zh-tw-CeLrYwRE.js} +1178 -25
- package/package.json +13 -6
- package/skills/apply-comments/SKILL.md +10 -6
- package/skills/create-slide/SKILL.md +2 -0
- package/skills/current-slide/SKILL.md +1 -0
- package/skills/slide-authoring/SKILL.md +31 -1
- package/src/agent/prompt.ts +141 -0
- package/src/agent/provider.ts +123 -0
- package/src/agent/types.ts +151 -0
- package/src/app/app.tsx +2 -0
- package/src/app/assets/open-slide.svg +39 -0
- package/src/app/components/agent/agent-dock.tsx +35 -0
- package/src/app/components/agent/agent-markdown.tsx +45 -0
- package/src/app/components/agent/agent-panel.tsx +692 -0
- package/src/app/components/agent/agent-presence.tsx +74 -0
- package/src/app/components/agent/composer.tsx +120 -0
- package/src/app/components/agent/connect-view.tsx +184 -0
- package/src/app/components/agent/history-view.tsx +135 -0
- package/src/app/components/agent/provider-logo.tsx +34 -0
- package/src/app/components/agent/transcript.tsx +609 -0
- package/src/app/components/board/board-canvas.tsx +143 -12
- package/src/app/components/board/board.css +51 -0
- package/src/app/components/board/layout.test.ts +53 -1
- package/src/app/components/board/layout.ts +50 -2
- package/src/app/components/board/page-node.tsx +287 -13
- package/src/app/components/board/use-board-cards.ts +210 -0
- package/src/app/components/board/use-page-order.ts +17 -9
- package/src/app/components/command/slide-command-menu.tsx +10 -0
- package/src/app/components/icon-switcher-indicator.tsx +1 -1
- package/src/app/components/inspector/comment-layer.tsx +1011 -0
- package/src/app/components/inspector/image-crop-dialog.tsx +1 -5
- package/src/app/components/inspector/inspect-overlay.tsx +2 -39
- package/src/app/components/inspector/inspector-panel.tsx +10 -93
- package/src/app/components/inspector/inspector-provider.tsx +121 -47
- package/src/app/components/panel/editor-sidebar.tsx +85 -16
- package/src/app/components/panel/panel-shell.tsx +2 -2
- package/src/app/components/panel/resize-handle.tsx +129 -0
- package/src/app/components/player.tsx +0 -1
- package/src/app/components/preview-step-host.tsx +16 -0
- package/src/app/components/sidebar/sidebar.tsx +2 -2
- package/src/app/components/style-panel/style-panel.tsx +3 -2
- package/src/app/components/thumbnail-rail.tsx +76 -1
- package/src/app/favicon.ico +0 -0
- package/src/app/favicon.svg +39 -0
- package/src/app/index.html +2 -1
- package/src/app/lib/agent/use-agent.ts +543 -0
- package/src/app/lib/inspector/freeze-motion.ts +61 -0
- package/src/app/lib/inspector/use-comments.ts +32 -3
- package/src/app/lib/locale-store.ts +6 -1
- package/src/app/lib/print-ready.ts +9 -6
- package/src/app/lib/use-auto-grow.ts +15 -0
- package/src/app/lib/utils.ts +4 -0
- package/src/app/routes/board.tsx +48 -11
- package/src/app/routes/home.tsx +43 -7
- package/src/app/routes/presenter.tsx +1 -16
- package/src/app/routes/preview.tsx +169 -0
- package/src/app/routes/slide.tsx +221 -173
- package/src/app/styles.css +234 -80
- package/src/editing/placeholder-id.ts +1 -0
- package/src/locale/en.ts +127 -5
- package/src/locale/es.ts +692 -0
- package/src/locale/index.ts +1 -0
- package/src/locale/ja.ts +120 -6
- package/src/locale/types.ts +132 -5
- package/src/locale/zh-cn.ts +117 -5
- package/src/locale/zh-tw.ts +117 -5
- package/src/app/assets/open-slide.png +0 -0
- package/src/app/components/inspector/comment-widget.tsx +0 -119
|
@@ -91,6 +91,7 @@ const en = {
|
|
|
91
91
|
pickIcon: "Pick icon"
|
|
92
92
|
},
|
|
93
93
|
slide: {
|
|
94
|
+
resizeSidePanel: "Resize side panel",
|
|
94
95
|
home: "Home",
|
|
95
96
|
backToHome: "Back to home",
|
|
96
97
|
agentConnected: "Agent connected",
|
|
@@ -272,10 +273,9 @@ const en = {
|
|
|
272
273
|
cropFitCover: "Fill",
|
|
273
274
|
cropFitContain: "Fit",
|
|
274
275
|
cropApply: "Apply",
|
|
275
|
-
|
|
276
|
+
commentMode: "Comment",
|
|
276
277
|
commentPlaceholder: "Describe a change for the agent…",
|
|
277
|
-
|
|
278
|
-
addComment: "Add comment",
|
|
278
|
+
commentPost: "Post",
|
|
279
279
|
unsavedChanges: {
|
|
280
280
|
one: "{count} unsaved change",
|
|
281
281
|
other: "{count} unsaved changes"
|
|
@@ -285,10 +285,14 @@ const en = {
|
|
|
285
285
|
other: "{count} comments"
|
|
286
286
|
},
|
|
287
287
|
commentLineLabel: "line {n}",
|
|
288
|
-
|
|
288
|
+
commentRegionLabel: "region",
|
|
289
|
+
commentEmptyHint: "Click an element or drag across a region to leave a comment.",
|
|
289
290
|
commentsApplyHintPrefix: "Run ",
|
|
290
291
|
commentsApplyHintSuffix: " in your agent to apply these.",
|
|
291
292
|
commentDeleteAria: "Delete",
|
|
293
|
+
commentUpdateFailed: "Couldn't update comment:",
|
|
294
|
+
commentAddFailed: "Couldn't add comment:",
|
|
295
|
+
commentRegionNoTarget: "Couldn't find an element to attach this region to.",
|
|
292
296
|
saveFailed: "Couldn't save:",
|
|
293
297
|
decreaseFontSize: "Decrease font size",
|
|
294
298
|
increaseFontSize: "Increase font size"
|
|
@@ -438,7 +442,7 @@ const en = {
|
|
|
438
442
|
title: "Story board",
|
|
439
443
|
openBoard: "Story board (B)",
|
|
440
444
|
backToDeck: "Back to deck",
|
|
441
|
-
hint: "Drag a card to reorder · Double-click to edit the page",
|
|
445
|
+
hint: "Drag a card to reorder · Double-click to edit the page · Drag the dot to link two cards",
|
|
442
446
|
loading: "Loading deck…",
|
|
443
447
|
columnFallback: "Part {n}",
|
|
444
448
|
moveToEnd: "Move to end",
|
|
@@ -453,7 +457,20 @@ const en = {
|
|
|
453
457
|
notesPlaceholder: "Speaker notes…",
|
|
454
458
|
/** template: "Added a blank page at {n}" */
|
|
455
459
|
toastInserted: "Added a blank page at {n}",
|
|
456
|
-
insertFailed: "Could not add a page"
|
|
460
|
+
insertFailed: "Could not add a page",
|
|
461
|
+
cardTitlePlaceholder: "Name this card",
|
|
462
|
+
renameCard: "Rename this card",
|
|
463
|
+
status: "Status",
|
|
464
|
+
statusNone: "No status",
|
|
465
|
+
statusTodo: "To do",
|
|
466
|
+
statusDoing: "In progress",
|
|
467
|
+
statusReview: "In review",
|
|
468
|
+
statusDone: "Done",
|
|
469
|
+
memoPlaceholder: "Work memo — stays on the board…",
|
|
470
|
+
linkHandle: "Drag onto another card to link them",
|
|
471
|
+
showLinks: "Show links",
|
|
472
|
+
hideLinks: "Hide links",
|
|
473
|
+
removeLink: "Remove this link"
|
|
457
474
|
},
|
|
458
475
|
pdfToast: {
|
|
459
476
|
title: "Exporting PDF",
|
|
@@ -534,6 +551,773 @@ const en = {
|
|
|
534
551
|
usedByEmpty: "No slides use this theme yet.",
|
|
535
552
|
expandPromptAria: "Expand prompt",
|
|
536
553
|
collapsePromptAria: "Collapse prompt"
|
|
554
|
+
},
|
|
555
|
+
agent: {
|
|
556
|
+
title: "Agent",
|
|
557
|
+
beta: "Beta",
|
|
558
|
+
betaTitle: "Early preview",
|
|
559
|
+
betaHint: "Replies, edits and tool calls can occasionally fail or do something unexpected.",
|
|
560
|
+
open: "Agent",
|
|
561
|
+
openTitle: "Open the agent panel",
|
|
562
|
+
close: "Close agent panel",
|
|
563
|
+
newSession: "New chat",
|
|
564
|
+
sessions: "History",
|
|
565
|
+
noSessions: "No conversations yet.",
|
|
566
|
+
deleteSession: "Delete conversation",
|
|
567
|
+
historyThisDeck: "This deck",
|
|
568
|
+
historyOtherDecks: "Other decks",
|
|
569
|
+
historyEmptyHint: "Chats you start in this panel show up here.",
|
|
570
|
+
sessionRunning: "Working",
|
|
571
|
+
composerPlaceholder: "Ask {provider} to create or edit slides…",
|
|
572
|
+
send: "Send",
|
|
573
|
+
stop: "Stop",
|
|
574
|
+
working: "Working",
|
|
575
|
+
contextPage: "Page {n}",
|
|
576
|
+
contextSelection: "Selection",
|
|
577
|
+
pendingComments: {
|
|
578
|
+
one: "{count} comment",
|
|
579
|
+
other: "{count} comments"
|
|
580
|
+
},
|
|
581
|
+
applyComments: "Apply comments",
|
|
582
|
+
applyCommentsWith: "Apply with {provider}",
|
|
583
|
+
createDeck: "New deck",
|
|
584
|
+
createDeckWith: "Create a deck with {provider}",
|
|
585
|
+
quickCreate: "Draft a new deck",
|
|
586
|
+
quickCreateHint: "Opens a blank deck; describe it and the agent drafts it page by page.",
|
|
587
|
+
quickApply: "Apply pending comments",
|
|
588
|
+
quickApplyHint: "Resolves every @slide-comment marker in this slide.",
|
|
589
|
+
quickTheme: "Create a theme",
|
|
590
|
+
quickThemeHint: "Extracts or designs a reusable theme under themes/.",
|
|
591
|
+
quickEdit: "Edit this page",
|
|
592
|
+
quickEditHint: "Describe a change to the page you are viewing.",
|
|
593
|
+
emptyTitle: "What should we build?",
|
|
594
|
+
emptyHint: "Describe a deck, or pick a starting point.",
|
|
595
|
+
questionSubmit: "Continue",
|
|
596
|
+
questionOther: "Other",
|
|
597
|
+
questionOtherPlaceholder: "Type your own answer",
|
|
598
|
+
questionCancelled: "Dismissed",
|
|
599
|
+
permissionTitle: "Needs approval",
|
|
600
|
+
allow: "Allow",
|
|
601
|
+
deny: "Deny",
|
|
602
|
+
allowed: "Allowed",
|
|
603
|
+
denied: "Denied",
|
|
604
|
+
autoApprove: "Auto-approve",
|
|
605
|
+
autoApproveHint: "Run commands without asking. Edits inside the workspace are always allowed.",
|
|
606
|
+
resultDone: "Done",
|
|
607
|
+
resultStopped: "Stopped",
|
|
608
|
+
resultSeconds: "{seconds}s",
|
|
609
|
+
errorEyebrow: "Error",
|
|
610
|
+
statusLoading: "Checking agents",
|
|
611
|
+
disabled: "The agent panel is disabled in lemonriver.config.ts.",
|
|
612
|
+
connectTitle: "Connect an agent",
|
|
613
|
+
connectDescription: "Drive your coding agent from here instead of a terminal. Agents installed on this machine connect automatically and reuse their sign-in.",
|
|
614
|
+
connect: "Connect",
|
|
615
|
+
connecting: "Connecting",
|
|
616
|
+
connected: "Connected",
|
|
617
|
+
connectInstallHint: "Adds {pkg} to this workspace with {pm}.",
|
|
618
|
+
cliFound: "CLI found · v{version}",
|
|
619
|
+
cliFoundNoVersion: "CLI found",
|
|
620
|
+
cliMissing: "CLI not found on PATH",
|
|
621
|
+
cliHint: "Install the {name} CLI and sign in once; the panel reuses its login.",
|
|
622
|
+
needCliTitle: "Install Claude Code or Codex first",
|
|
623
|
+
needCliDescription: "The panel drives the coding agent CLI on this machine, and none was found on your PATH. Install one, sign in once in a terminal, then check again.",
|
|
624
|
+
checkAgain: "Check again",
|
|
625
|
+
retry: "Retry",
|
|
626
|
+
toastConnected: "{name} connected",
|
|
627
|
+
toastConnectFailed: "Could not install {pkg}",
|
|
628
|
+
manageConnections: "Manage agents",
|
|
629
|
+
backToChat: "Back",
|
|
630
|
+
toastSendFailed: "Could not send message",
|
|
631
|
+
newDeckTitle: "What's this deck about?",
|
|
632
|
+
newDeckHint: "Describe the topic, audience and tone. {provider} drafts it page by page while you watch.",
|
|
633
|
+
newDeckPlaceholder: "A 10-minute talk on…",
|
|
634
|
+
toastCreateDeckFailed: "Could not create a deck",
|
|
635
|
+
steps: {
|
|
636
|
+
one: "{count} step",
|
|
637
|
+
other: "{count} steps"
|
|
638
|
+
},
|
|
639
|
+
questionSkip: "Skip",
|
|
640
|
+
copyMessage: "Copy",
|
|
641
|
+
copied: "Copied",
|
|
642
|
+
editMessage: "Edit",
|
|
643
|
+
cancelEdit: "Cancel",
|
|
644
|
+
sendEdit: "Send",
|
|
645
|
+
editHint: "Sending replaces the conversation after this message. Edits already made to files stay.",
|
|
646
|
+
modelDefault: "Default",
|
|
647
|
+
reasoning: "Reasoning",
|
|
648
|
+
effortAuto: "Auto",
|
|
649
|
+
efforts: {
|
|
650
|
+
minimal: "Minimal",
|
|
651
|
+
low: "Low",
|
|
652
|
+
medium: "Medium",
|
|
653
|
+
high: "High",
|
|
654
|
+
xhigh: "Extra high",
|
|
655
|
+
max: "Max"
|
|
656
|
+
},
|
|
657
|
+
presenceEditing: "{provider} is editing",
|
|
658
|
+
presenceThinking: "Thinking",
|
|
659
|
+
presenceWaiting: "Waiting for you"
|
|
660
|
+
}
|
|
661
|
+
};
|
|
662
|
+
//#endregion
|
|
663
|
+
//#region src/locale/es.ts
|
|
664
|
+
const es = {
|
|
665
|
+
id: "es",
|
|
666
|
+
common: {
|
|
667
|
+
cancel: "Cancelar",
|
|
668
|
+
save: "Guardar",
|
|
669
|
+
saving: "Guardando",
|
|
670
|
+
saved: "Guardado",
|
|
671
|
+
discard: "Descartar",
|
|
672
|
+
delete: "Eliminar",
|
|
673
|
+
rename: "Renombrar",
|
|
674
|
+
move: "Mover",
|
|
675
|
+
close: "Cerrar",
|
|
676
|
+
loading: "Cargando",
|
|
677
|
+
loadFailed: "Error al cargar",
|
|
678
|
+
failedToLoadSlide: "No se pudo cargar la presentación",
|
|
679
|
+
home: "Inicio",
|
|
680
|
+
add: "Añadir",
|
|
681
|
+
done: "Hecho",
|
|
682
|
+
tryAgain: "Reintentar",
|
|
683
|
+
undo: "Deshacer",
|
|
684
|
+
redo: "Rehacer",
|
|
685
|
+
selected: "Seleccionado"
|
|
686
|
+
},
|
|
687
|
+
notFound: {
|
|
688
|
+
eyebrow: "404 · no encontrada",
|
|
689
|
+
title: "Página no encontrada"
|
|
690
|
+
},
|
|
691
|
+
home: {
|
|
692
|
+
appTitle: "LemonRiver",
|
|
693
|
+
draft: "Borradores",
|
|
694
|
+
duplicate: "Duplicar",
|
|
695
|
+
themes: "Temas",
|
|
696
|
+
assets: "Recursos",
|
|
697
|
+
folders: "Carpetas",
|
|
698
|
+
slides: "Presentaciones",
|
|
699
|
+
menu: "Menú",
|
|
700
|
+
newFolder: "Nueva carpeta",
|
|
701
|
+
folderName: "Nombre de la carpeta",
|
|
702
|
+
updateAvailable: "LemonRiver {version} está disponible",
|
|
703
|
+
updatePackage: "Actualizar",
|
|
704
|
+
updatingPackage: "Actualizando",
|
|
705
|
+
updatePackageDone: "Actualizado. Reinicia el servidor de desarrollo para usar la nueva versión.",
|
|
706
|
+
updatePackageFailed: "Error al actualizar. Revisa la salida del servidor de desarrollo.",
|
|
707
|
+
restartServer: "Reiniciar servidor de desarrollo",
|
|
708
|
+
restartingServer: "Reiniciando",
|
|
709
|
+
restartServerFailed: "Error al reiniciar. Reinicia el servidor de desarrollo manualmente.",
|
|
710
|
+
changeIcon: "Cambiar icono",
|
|
711
|
+
iconEmojiTab: "Emoji",
|
|
712
|
+
iconColorTab: "Color",
|
|
713
|
+
folderActions: "Acciones de carpeta",
|
|
714
|
+
searchPlaceholder: "Buscar presentaciones",
|
|
715
|
+
clearSearch: "Borrar búsqueda",
|
|
716
|
+
sortLabel: "Ordenar",
|
|
717
|
+
sortByCreatedDesc: "Más recientes",
|
|
718
|
+
sortByCreatedAsc: "Más antiguas",
|
|
719
|
+
sortByTitleAsc: "A–Z",
|
|
720
|
+
sortByTitleDesc: "Z–A",
|
|
721
|
+
noMatches: "Sin resultados",
|
|
722
|
+
nothingMatchesPrefix: "Nada coincide con ",
|
|
723
|
+
nothingMatchesSuffix: " en esta carpeta.",
|
|
724
|
+
noSlidesYet: "Aún no hay presentaciones",
|
|
725
|
+
createSlideHintPrefix: "Ejecuta ",
|
|
726
|
+
createSlideHintSuffix: " en tu agente para crear una.",
|
|
727
|
+
folderEmptyTitle: "{name} está vacía",
|
|
728
|
+
folderEmptyHint: "Arrastra una presentación desde Borradores a esta carpeta en la barra lateral.",
|
|
729
|
+
slideActions: "Acciones de la presentación",
|
|
730
|
+
moveToFolder: "Mover a carpeta…",
|
|
731
|
+
renameDialogEyebrow: "Renombrar",
|
|
732
|
+
renameDialogTitle: "Renombrar presentación",
|
|
733
|
+
renameDialogDescription: "Dale un nuevo nombre visible a esta presentación.",
|
|
734
|
+
slideNamePlaceholder: "Nombre de la presentación",
|
|
735
|
+
moveDialogEyebrow: "Mover",
|
|
736
|
+
moveDialogTitle: "Mover presentación",
|
|
737
|
+
moveDialogDescriptionPrefix: "Elige una carpeta para ",
|
|
738
|
+
moveDialogDescriptionSuffix: ".",
|
|
739
|
+
deleteDialogEyebrow: "Acción destructiva",
|
|
740
|
+
deleteDialogTitle: "¿Eliminar presentación?",
|
|
741
|
+
deleteDialogDescriptionPrefix: "Esto elimina permanentemente ",
|
|
742
|
+
deleteDialogDescriptionMid: " y sus archivos del disco. ",
|
|
743
|
+
deleteDialogDescriptionSuffix: "Esta acción no se puede deshacer.",
|
|
744
|
+
toastFolderCreated: "Carpeta «{name}» creada",
|
|
745
|
+
toastFolderCreateFailed: "No se pudo crear la carpeta",
|
|
746
|
+
toastSlideDuplicated: "«{slide}» duplicada como {newSlide}",
|
|
747
|
+
toastSlideDuplicateFailed: "No se pudo duplicar la presentación",
|
|
748
|
+
toastSlideMoved: "«{slide}» movida a {folder}",
|
|
749
|
+
toastSlideMoveFailed: "No se pudo mover la presentación",
|
|
750
|
+
toastFolderDeleted: "Carpeta «{name}» eliminada",
|
|
751
|
+
toastFolderDeleteFailed: "No se pudo eliminar la carpeta",
|
|
752
|
+
toastFolderReorderFailed: "No se pudieron reordenar las carpetas",
|
|
753
|
+
pickIcon: "Elegir icono"
|
|
754
|
+
},
|
|
755
|
+
slide: {
|
|
756
|
+
resizeSidePanel: "Redimensionar panel lateral",
|
|
757
|
+
home: "Inicio",
|
|
758
|
+
backToHome: "Volver al inicio",
|
|
759
|
+
agentConnected: "Agente conectado",
|
|
760
|
+
agentConnectedTooltip: "La diapositiva actual y la selección del inspector se sincronizan con tu agente en tiempo real.",
|
|
761
|
+
agentDisconnected: "Agente desconectado",
|
|
762
|
+
agentDisconnectedTooltip: "Se perdió la conexión con el servidor de desarrollo, así que tu agente ya no ve la diapositiva actual ni la selección del inspector. Reinicia el servidor de desarrollo para restablecerla.",
|
|
763
|
+
download: "Descargar",
|
|
764
|
+
copyLink: "Copiar enlace",
|
|
765
|
+
moreActions: "Más acciones",
|
|
766
|
+
toastCopyLinkSuccess: "Enlace copiado al portapapeles",
|
|
767
|
+
toastCopyLinkFailed: "No se pudo copiar el enlace",
|
|
768
|
+
exportAsHtml: "Exportar como HTML",
|
|
769
|
+
exportAsPdf: "Exportar como PDF",
|
|
770
|
+
exportAsImagePptx: "Exportar como PPTX (imágenes)",
|
|
771
|
+
exportAsPptx: "Exportar como PPTX",
|
|
772
|
+
pdfExportFailed: "Error al exportar PDF",
|
|
773
|
+
pptxExportFailed: "Error al exportar PPTX",
|
|
774
|
+
imagePptxExportFailed: "Error al exportar PPTX",
|
|
775
|
+
pdfExportSafariUnsupported: "Exportar como PDF no está disponible en Safari. Prueba con un navegador basado en Chromium.",
|
|
776
|
+
present: "Presentar",
|
|
777
|
+
presentMenuAria: "Opciones de presentación",
|
|
778
|
+
presentInWindow: "Reproducir",
|
|
779
|
+
presentFullscreen: "Pantalla completa",
|
|
780
|
+
presentPresenter: "Modo presentador",
|
|
781
|
+
slidesTab: "Diapositivas",
|
|
782
|
+
assetsTab: "Recursos",
|
|
783
|
+
renameSlide: "Renombrar presentación",
|
|
784
|
+
loadingEyebrow: "Cargando",
|
|
785
|
+
loadingAssetsEyebrow: "Cargando recursos",
|
|
786
|
+
emptyEyebrow: "Vacía",
|
|
787
|
+
nothingToShow: "No hay nada que mostrar.",
|
|
788
|
+
emptyHintMust: " debe ",
|
|
789
|
+
emptyHintSuffix: " un array no vacío de componentes."
|
|
790
|
+
},
|
|
791
|
+
presenter: {
|
|
792
|
+
eyebrow: "Presentador",
|
|
793
|
+
notLinked: "Sin vincular",
|
|
794
|
+
nowShowing: "En pantalla",
|
|
795
|
+
upNext: "Siguiente",
|
|
796
|
+
lastSlide: "Última diapositiva",
|
|
797
|
+
endOfDeck: "Fin de la presentación",
|
|
798
|
+
speakerNotes: "Notas del ponente",
|
|
799
|
+
notesTextSmaller: "Reducir texto de las notas",
|
|
800
|
+
notesTextLarger: "Ampliar texto de las notas",
|
|
801
|
+
noNotesPrefix: "Esta diapositiva no tiene notas. Añade ",
|
|
802
|
+
noNotesSuffix: " al módulo de la presentación para verlas aquí.",
|
|
803
|
+
blackScreen: "Pantalla negra",
|
|
804
|
+
whiteScreen: "Pantalla blanca",
|
|
805
|
+
prev: "Anterior",
|
|
806
|
+
next: "Siguiente",
|
|
807
|
+
black: "Negro",
|
|
808
|
+
white: "Blanco",
|
|
809
|
+
reset: "Reiniciar",
|
|
810
|
+
resetTimer: "Reiniciar cronómetro",
|
|
811
|
+
currentTime: "Hora actual",
|
|
812
|
+
elapsed: "Transcurrido",
|
|
813
|
+
jump: "Ir a",
|
|
814
|
+
loadingSlide: "Cargando {slideId}…",
|
|
815
|
+
loadingAssets: "Cargando recursos…",
|
|
816
|
+
switchDeck: "Cambiar presentación",
|
|
817
|
+
searchDecks: "Buscar presentaciones…",
|
|
818
|
+
noDecksFound: "Ninguna presentación coincide"
|
|
819
|
+
},
|
|
820
|
+
present: {
|
|
821
|
+
prevSlideAria: "Diapositiva anterior (←)",
|
|
822
|
+
nextSlideAria: "Diapositiva siguiente (→)",
|
|
823
|
+
overviewAria: "Vista general (O)",
|
|
824
|
+
blackoutAria: "Pantalla negra (B)",
|
|
825
|
+
whiteoutAria: "Pantalla blanca (W)",
|
|
826
|
+
laserAria: "Puntero láser (L)",
|
|
827
|
+
presenterAria: "Vista del presentador (P)",
|
|
828
|
+
enterFullscreenAria: "Pantalla completa",
|
|
829
|
+
exitFullscreenAria: "Salir de pantalla completa",
|
|
830
|
+
helpAria: "Atajos de teclado (?)",
|
|
831
|
+
exitAria: "Salir (Esc)",
|
|
832
|
+
elapsedTime: "Tiempo transcurrido",
|
|
833
|
+
helpEyebrow: "Modo presentación",
|
|
834
|
+
helpTitle: "Atajos de teclado",
|
|
835
|
+
shortcutNext: "Diapositiva siguiente",
|
|
836
|
+
shortcutPrev: "Diapositiva anterior",
|
|
837
|
+
shortcutFirstLast: "Primera / última diapositiva",
|
|
838
|
+
shortcutJump: "Ir a diapositiva",
|
|
839
|
+
shortcutOverview: "Vista general",
|
|
840
|
+
shortcutBlack: "Pantalla negra",
|
|
841
|
+
shortcutWhite: "Pantalla blanca",
|
|
842
|
+
shortcutLaser: "Puntero láser",
|
|
843
|
+
shortcutPresenter: "Abrir vista del presentador",
|
|
844
|
+
shortcutToggleHelp: "Mostrar/ocultar esta ayuda",
|
|
845
|
+
shortcutCloseExit: "Cerrar panel / salir",
|
|
846
|
+
overviewDialogAria: "Vista general",
|
|
847
|
+
overviewEyebrow: "Vista general",
|
|
848
|
+
overviewGoToAria: "Ir a la diapositiva {n}",
|
|
849
|
+
nowBadge: "Ahora"
|
|
850
|
+
},
|
|
851
|
+
inspector: {
|
|
852
|
+
format: "Formato",
|
|
853
|
+
editMode: "Editar",
|
|
854
|
+
previewMode: "Vista previa",
|
|
855
|
+
closeFormatPanel: "Cerrar panel de formato",
|
|
856
|
+
editText: "Editar en la diapositiva",
|
|
857
|
+
emptySelectionTitle: "Selecciona un objeto",
|
|
858
|
+
emptySelectionHint: "Haz clic en un objeto para darle formato. Doble clic en un texto para editarlo.",
|
|
859
|
+
textSelectionHint: "El formato se aplica al texto seleccionado.",
|
|
860
|
+
elementText: "Texto",
|
|
861
|
+
elementImage: "Imagen",
|
|
862
|
+
elementShape: "Forma",
|
|
863
|
+
sourceSection: "Código",
|
|
864
|
+
rotateHandle: "Rotar elemento",
|
|
865
|
+
resizeHandle: "Redimensionar {handle}",
|
|
866
|
+
arrangeSection: "Organizar",
|
|
867
|
+
selectionCount: "{count} elementos seleccionados",
|
|
868
|
+
positionLabel: "Posición",
|
|
869
|
+
positionX: "Posición horizontal",
|
|
870
|
+
positionY: "Posición vertical",
|
|
871
|
+
widthLabel: "Ancho",
|
|
872
|
+
heightLabel: "Alto",
|
|
873
|
+
rotationLabel: "Rotación",
|
|
874
|
+
alignToLabel: "Alinear con",
|
|
875
|
+
alignToSelection: "Selección",
|
|
876
|
+
alignToSlide: "Diapositiva",
|
|
877
|
+
alignLeft: "Alinear a la izquierda",
|
|
878
|
+
alignCenter: "Centrar horizontalmente",
|
|
879
|
+
alignRight: "Alinear a la derecha",
|
|
880
|
+
alignTop: "Alinear arriba",
|
|
881
|
+
alignMiddle: "Centrar verticalmente",
|
|
882
|
+
alignBottom: "Alinear abajo",
|
|
883
|
+
distributeLabel: "Distribuir",
|
|
884
|
+
distributeHorizontal: "Distribuir horizontalmente",
|
|
885
|
+
distributeVertical: "Distribuir verticalmente",
|
|
886
|
+
layerLabel: "Capa",
|
|
887
|
+
bringToFront: "Traer al frente",
|
|
888
|
+
bringForward: "Traer adelante",
|
|
889
|
+
sendBackward: "Enviar atrás",
|
|
890
|
+
sendToBack: "Enviar al fondo",
|
|
891
|
+
smartGuides: "Guías inteligentes",
|
|
892
|
+
selectParent: "Seleccionar contenedor",
|
|
893
|
+
visualEditorHint: "Mayús+clic para seleccionar más. ⌘A selecciona todo. Las flechas mueven 1 px; con Mayús, 10 px. Alt ignora las guías. Mayús restringe el arrastre o mantiene las proporciones.",
|
|
894
|
+
sharedLayoutHint: "Este elemento comparte su definición JSX con otras instancias. Selecciona un contenedor padre único para organizarlo de forma independiente.",
|
|
895
|
+
inlineLayoutHint: "Selecciona el contenedor padre para mover o redimensionar contenido en línea.",
|
|
896
|
+
layerLayoutHint: "Parte del contenido anidado no se puede posicionar de forma independiente. Selecciona un contenedor posicionado para cambiar capas.",
|
|
897
|
+
inspect: "Inspeccionar",
|
|
898
|
+
deselect: "Deseleccionar",
|
|
899
|
+
agentWatching: "El agente está observando",
|
|
900
|
+
agentWatchingTooltip: "El elemento seleccionado se sincroniza con tu agente en tiempo real.",
|
|
901
|
+
agentNotWatching: "El agente no está observando",
|
|
902
|
+
agentNotWatchingTooltip: "Se perdió la conexión con el servidor de desarrollo, así que tu agente ya no ve el elemento seleccionado. Reinicia el servidor de desarrollo para restablecerla.",
|
|
903
|
+
contentSection: "Contenido",
|
|
904
|
+
typographySection: "Tipografía",
|
|
905
|
+
colorSection: "Color",
|
|
906
|
+
textColor: "Texto",
|
|
907
|
+
backgroundColor: "Fondo",
|
|
908
|
+
imageSection: "Imagen",
|
|
909
|
+
imagePlaceholderSection: "Marcador de imagen",
|
|
910
|
+
elementTextPlaceholder: "Texto del elemento",
|
|
911
|
+
sizeLabel: "Tamaño",
|
|
912
|
+
weightLabel: "Grosor",
|
|
913
|
+
weightLight: "Fina",
|
|
914
|
+
weightRegular: "Normal",
|
|
915
|
+
weightMedium: "Media",
|
|
916
|
+
weightSemibold: "Seminegrita",
|
|
917
|
+
weightBold: "Negrita",
|
|
918
|
+
weightExtrabold: "Extranegrita",
|
|
919
|
+
styleLabel: "Estilo",
|
|
920
|
+
boldAria: "Negrita",
|
|
921
|
+
italicAria: "Cursiva",
|
|
922
|
+
lineHeightLabel: "Interlineado",
|
|
923
|
+
trackingLabel: "Espaciado",
|
|
924
|
+
alignLabel: "Alineación",
|
|
925
|
+
clearAria: "Borrar",
|
|
926
|
+
replace: "Reemplazar…",
|
|
927
|
+
replaceImageDialogTitle: "Reemplazar imagen",
|
|
928
|
+
replaceImageDescription: "Elige un recurso de {path}.",
|
|
929
|
+
pickerLoading: "Cargando…",
|
|
930
|
+
pickerEmpty: "Aún no hay imágenes en la carpeta de recursos de esta presentación. Añádelas desde la pestaña Recursos.",
|
|
931
|
+
placeholderHintLabel: "Pista:",
|
|
932
|
+
crop: "Recortar…",
|
|
933
|
+
cropDialogTitle: "Recortar imagen",
|
|
934
|
+
cropDialogDescription: "Arrastra el marco para elegir qué parte queda visible.",
|
|
935
|
+
cropFitCover: "Rellenar",
|
|
936
|
+
cropFitContain: "Ajustar",
|
|
937
|
+
cropApply: "Aplicar",
|
|
938
|
+
commentMode: "Comentar",
|
|
939
|
+
commentPlaceholder: "Describe un cambio para el agente…",
|
|
940
|
+
commentPost: "Publicar",
|
|
941
|
+
unsavedChanges: {
|
|
942
|
+
one: "{count} cambio sin guardar",
|
|
943
|
+
other: "{count} cambios sin guardar"
|
|
944
|
+
},
|
|
945
|
+
commentsCount: {
|
|
946
|
+
one: "{count} comentario",
|
|
947
|
+
other: "{count} comentarios"
|
|
948
|
+
},
|
|
949
|
+
commentLineLabel: "línea {n}",
|
|
950
|
+
commentRegionLabel: "zona",
|
|
951
|
+
commentEmptyHint: "Haz clic en un elemento o arrastra sobre una zona para dejar un comentario.",
|
|
952
|
+
commentsApplyHintPrefix: "Ejecuta ",
|
|
953
|
+
commentsApplyHintSuffix: " en tu agente para aplicarlos.",
|
|
954
|
+
commentDeleteAria: "Eliminar",
|
|
955
|
+
commentUpdateFailed: "No se pudo actualizar el comentario:",
|
|
956
|
+
commentAddFailed: "No se pudo añadir el comentario:",
|
|
957
|
+
commentRegionNoTarget: "No se encontró un elemento al que asociar esta zona.",
|
|
958
|
+
saveFailed: "No se pudo guardar:",
|
|
959
|
+
decreaseFontSize: "Reducir tamaño de fuente",
|
|
960
|
+
increaseFontSize: "Aumentar tamaño de fuente"
|
|
961
|
+
},
|
|
962
|
+
stylePanel: {
|
|
963
|
+
designTokens: "Tokens de diseño",
|
|
964
|
+
draftBadge: "borrador",
|
|
965
|
+
unsavedTitle: "Sin guardar",
|
|
966
|
+
closePanelAria: "Cerrar panel de diseño",
|
|
967
|
+
colorsSection: "Colores",
|
|
968
|
+
typographySection: "Tipografía",
|
|
969
|
+
shapeSection: "Forma",
|
|
970
|
+
backgroundLabel: "Fondo",
|
|
971
|
+
textLabel: "Texto",
|
|
972
|
+
accentLabel: "Acento",
|
|
973
|
+
displayFontLabel: "Titulares",
|
|
974
|
+
bodyFontLabel: "Cuerpo",
|
|
975
|
+
heroLabel: "Portada",
|
|
976
|
+
bodyLabel: "Cuerpo",
|
|
977
|
+
radiusLabel: "Radio",
|
|
978
|
+
designToggle: "Diseño",
|
|
979
|
+
designToggleTitle: "Tokens de diseño",
|
|
980
|
+
fontPresetCustom: "Personalizada…",
|
|
981
|
+
shuffleAria: "Diseño aleatorio",
|
|
982
|
+
shuffleTitle: "Mezclar para inspirarte"
|
|
983
|
+
},
|
|
984
|
+
asset: {
|
|
985
|
+
devOnlyMessage: "La gestión de recursos solo está disponible en modo desarrollo.",
|
|
986
|
+
sectionAria: "Recursos de la presentación",
|
|
987
|
+
eyebrow: "Recursos",
|
|
988
|
+
scopeSlide: "Esta presentación",
|
|
989
|
+
scopeGlobal: "Globales",
|
|
990
|
+
fileCount: {
|
|
991
|
+
one: "{count} archivo",
|
|
992
|
+
other: "{count} archivos"
|
|
993
|
+
},
|
|
994
|
+
createdAt: "Creado",
|
|
995
|
+
modifiedAt: "Modificado",
|
|
996
|
+
nameColumn: "Nombre",
|
|
997
|
+
typeColumn: "Tipo",
|
|
998
|
+
sizeColumn: "Tamaño",
|
|
999
|
+
statusColumn: "Estado",
|
|
1000
|
+
sortAria: "Ordenar recursos",
|
|
1001
|
+
sortByColumn: "Ordenar por {column}",
|
|
1002
|
+
sortAscending: "Ascendente",
|
|
1003
|
+
sortDescending: "Descendente",
|
|
1004
|
+
assetSearchPlaceholder: "Buscar recursos…",
|
|
1005
|
+
clearAssetSearch: "Borrar búsqueda de recursos",
|
|
1006
|
+
usageFilterAria: "Filtrar por uso",
|
|
1007
|
+
usageAll: "Todos",
|
|
1008
|
+
usageUsed: "En uso",
|
|
1009
|
+
usageUnused: "Sin usar",
|
|
1010
|
+
typeFilterAria: "Filtrar por tipo de archivo",
|
|
1011
|
+
typeAll: "Todos los tipos",
|
|
1012
|
+
typeImage: "Imágenes",
|
|
1013
|
+
typeFont: "Fuentes",
|
|
1014
|
+
typeVideo: "Vídeos",
|
|
1015
|
+
typeOther: "Otros",
|
|
1016
|
+
gridViewAria: "Vista de cuadrícula",
|
|
1017
|
+
listViewAria: "Vista de lista",
|
|
1018
|
+
gridColumnsAria: "Columnas de la cuadrícula",
|
|
1019
|
+
gridColumnsValue: "{count} columnas",
|
|
1020
|
+
noMatchingAssets: "Ningún recurso coincide",
|
|
1021
|
+
noMatchingAssetsHint: "Prueba a ajustar la búsqueda o los filtros.",
|
|
1022
|
+
clearFilters: "Borrar filtros",
|
|
1023
|
+
searchLogos: "Buscar logos",
|
|
1024
|
+
searchFonts: "Buscar fuentes",
|
|
1025
|
+
upload: "Subir",
|
|
1026
|
+
dropToUpload: "Suelta para subir",
|
|
1027
|
+
loading: "Cargando…",
|
|
1028
|
+
noAssetsYet: "Aún no hay recursos",
|
|
1029
|
+
noAssetsHintPrefix: "Suelta archivos en cualquier parte o usa ",
|
|
1030
|
+
noAssetsHintSuffix: ".",
|
|
1031
|
+
nameAlreadyExists: "Ya existe un archivo con ese nombre.",
|
|
1032
|
+
previewAria: "Vista previa de {name}",
|
|
1033
|
+
actionsAria: "Acciones para {name}",
|
|
1034
|
+
previewMenuItem: "Vista previa",
|
|
1035
|
+
renameMenuItem: "Renombrar",
|
|
1036
|
+
deleteMenuItem: "Eliminar",
|
|
1037
|
+
conflictTitle: "El archivo ya existe",
|
|
1038
|
+
conflictDescription: "{name} ya está en la carpeta de recursos.",
|
|
1039
|
+
conflictReplace: "Reemplazar",
|
|
1040
|
+
conflictRenameCopy: "Renombrar copia",
|
|
1041
|
+
deleteAssetTitle: "Eliminar recurso",
|
|
1042
|
+
deleteAssetDescription: "¿Eliminar {name}? Las importaciones que hagan referencia a este archivo dejarán de funcionar.",
|
|
1043
|
+
deleteAssetInUseDescription: "{name} se usa en {count} lugar(es) de {slides} presentación(es).",
|
|
1044
|
+
deleteAssetInUseHint: "Al eliminarlo, esos usos volverán a ser marcadores de imagen.",
|
|
1045
|
+
deleteAndRevert: "Eliminar y revertir",
|
|
1046
|
+
toastRevertFailed: "No se pudo revertir el uso en {slideId}",
|
|
1047
|
+
toastDeletedWithRevert: "{name} eliminado y {count} uso(s) revertido(s)",
|
|
1048
|
+
noPreview: "Vista previa no disponible",
|
|
1049
|
+
importHintComment: "import asset from ",
|
|
1050
|
+
importHintSemi: ";",
|
|
1051
|
+
logoSearchTitle: "Buscar logos",
|
|
1052
|
+
logoSearchPoweredByPrefix: "Con la tecnología de ",
|
|
1053
|
+
logoSearchPlaceholder: "Buscar por marca…",
|
|
1054
|
+
logoSearchErrorTitle: "No se pudo conectar con svgl",
|
|
1055
|
+
logoSearchErrorBody: "Comprueba tu conexión e inténtalo de nuevo.",
|
|
1056
|
+
logoSearchNoResults: "No hay logos para \"{query}\"",
|
|
1057
|
+
logoSearchEmpty: "No hay logos disponibles",
|
|
1058
|
+
logoSearchEmptyHintPrefix: "Prueba con otra marca o explora el catálogo completo en ",
|
|
1059
|
+
logoSearchEmptyHintSuffix: ".",
|
|
1060
|
+
logoVariantLight: "Claro",
|
|
1061
|
+
logoVariantDark: "Oscuro",
|
|
1062
|
+
fontSearchTitle: "Buscar en Google Fonts",
|
|
1063
|
+
fontSearchPoweredByPrefix: "Con la tecnología de ",
|
|
1064
|
+
fontSearchPlaceholder: "Buscar familias tipográficas…",
|
|
1065
|
+
fontSearchPreviewPlaceholder: "Texto de ejemplo",
|
|
1066
|
+
fontSearchErrorTitle: "No se pudo conectar con Google Fonts",
|
|
1067
|
+
fontSearchErrorBody: "Comprueba tu conexión e inténtalo de nuevo.",
|
|
1068
|
+
fontSearchNoResults: "No hay fuentes para \"{query}\"",
|
|
1069
|
+
fontSearchEmpty: "No hay fuentes disponibles",
|
|
1070
|
+
fontSearchEmptyHintPrefix: "Prueba con otra familia o explora el catálogo completo en ",
|
|
1071
|
+
fontSearchEmptyHintSuffix: ".",
|
|
1072
|
+
fontWeightLabel: "Grosor",
|
|
1073
|
+
fontPreviewSample: "El veloz murciélago hindú comía feliz cardillo y kiwi 0123456789",
|
|
1074
|
+
toastUploadFailed: "Error al subir ({status})",
|
|
1075
|
+
toastReplaced: "{name} reemplazado",
|
|
1076
|
+
toastUploadedAs: "Subido como {name}",
|
|
1077
|
+
toastUploaded: "{name} subido",
|
|
1078
|
+
toastRenameFailed: "Error al renombrar ({status})",
|
|
1079
|
+
toastRenamed: "Renombrado a {name}",
|
|
1080
|
+
toastDeleteFailed: "Error al eliminar ({status})",
|
|
1081
|
+
toastDeleted: "{name} eliminado",
|
|
1082
|
+
toastDownloadFailed: "No se pudo descargar el logo",
|
|
1083
|
+
toastFontDownloadFailed: "No se pudo descargar la fuente",
|
|
1084
|
+
toastSearchFailed: "Error en la búsqueda"
|
|
1085
|
+
},
|
|
1086
|
+
thumbnailRail: {
|
|
1087
|
+
pages: "Páginas",
|
|
1088
|
+
goToPageAria: "Ir a la página {n}",
|
|
1089
|
+
duplicatePage: "Duplicar",
|
|
1090
|
+
deletePage: "Eliminar",
|
|
1091
|
+
pageActionsAria: "Acciones de la página {n}",
|
|
1092
|
+
toastDuplicated: "Página {n} duplicada",
|
|
1093
|
+
toastDeleted: "Página {n} eliminada",
|
|
1094
|
+
toastDuplicateFailed: "No se pudo duplicar la página",
|
|
1095
|
+
toastDeleteFailed: "No se pudo eliminar la página",
|
|
1096
|
+
resizeRail: "Redimensionar miniaturas",
|
|
1097
|
+
transitionIndicator: "Tiene transición",
|
|
1098
|
+
stepsIndicator: "Tiene revelado por pasos",
|
|
1099
|
+
overviewAria: "Vista general (O)",
|
|
1100
|
+
scrollUpToCurrentPage: "Subir hasta la página actual {n}",
|
|
1101
|
+
scrollDownToCurrentPage: "Bajar hasta la página actual {n}"
|
|
1102
|
+
},
|
|
1103
|
+
board: {
|
|
1104
|
+
title: "Tablero de la historia",
|
|
1105
|
+
openBoard: "Tablero de la historia (B)",
|
|
1106
|
+
backToDeck: "Volver a la presentación",
|
|
1107
|
+
hint: "Arrastra una tarjeta para reordenar · Haz doble clic para editar la página · Arrastra el punto para enlazar dos tarjetas",
|
|
1108
|
+
loading: "Cargando presentación…",
|
|
1109
|
+
columnFallback: "Parte {n}",
|
|
1110
|
+
moveToEnd: "Mover al final",
|
|
1111
|
+
reorderFailed: "No se pudieron reordenar las páginas",
|
|
1112
|
+
zoomIn: "Acercar",
|
|
1113
|
+
zoomOut: "Alejar",
|
|
1114
|
+
fitView: "Ajustar a la vista",
|
|
1115
|
+
saveFailed: "No se pudo guardar la disposición del tablero",
|
|
1116
|
+
renameColumn: "Renombrar esta columna",
|
|
1117
|
+
columnTitlePlaceholder: "Nombre de la columna",
|
|
1118
|
+
addPage: "Añadir una página a esta columna (copia la última)",
|
|
1119
|
+
notesPlaceholder: "Notas del orador…",
|
|
1120
|
+
toastInserted: "Página en blanco añadida en {n}",
|
|
1121
|
+
insertFailed: "No se pudo añadir la página",
|
|
1122
|
+
cardTitlePlaceholder: "Nombra esta tarjeta",
|
|
1123
|
+
renameCard: "Renombrar esta tarjeta",
|
|
1124
|
+
status: "Estado",
|
|
1125
|
+
statusNone: "Sin estado",
|
|
1126
|
+
statusTodo: "Por hacer",
|
|
1127
|
+
statusDoing: "En curso",
|
|
1128
|
+
statusReview: "En revisión",
|
|
1129
|
+
statusDone: "Hecho",
|
|
1130
|
+
memoPlaceholder: "Nota de trabajo — se queda en el tablero…",
|
|
1131
|
+
linkHandle: "Arrastra sobre otra tarjeta para enlazarlas",
|
|
1132
|
+
showLinks: "Mostrar enlaces",
|
|
1133
|
+
hideLinks: "Ocultar enlaces",
|
|
1134
|
+
removeLink: "Quitar este enlace"
|
|
1135
|
+
},
|
|
1136
|
+
pdfToast: {
|
|
1137
|
+
title: "Exportando PDF",
|
|
1138
|
+
processing: "Procesando página {current} de {total}",
|
|
1139
|
+
printing: "Abriendo diálogo de impresión…",
|
|
1140
|
+
done: "Hecho"
|
|
1141
|
+
},
|
|
1142
|
+
pptxToast: {
|
|
1143
|
+
title: "Exportando PPTX",
|
|
1144
|
+
processing: "Renderizando página {current} de {total}",
|
|
1145
|
+
generating: "Generando presentación…",
|
|
1146
|
+
done: "Hecho"
|
|
1147
|
+
},
|
|
1148
|
+
commandMenu: {
|
|
1149
|
+
trigger: "Comandos",
|
|
1150
|
+
triggerAria: "Abrir menú de comandos",
|
|
1151
|
+
triggerTooltip: "Buscar",
|
|
1152
|
+
placeholder: "Busca presentaciones o ejecuta un comando…",
|
|
1153
|
+
slidePlaceholder: "Busca en esta presentación o ejecuta un comando…",
|
|
1154
|
+
empty: "Sin resultados.",
|
|
1155
|
+
groupSlides: "Presentaciones",
|
|
1156
|
+
groupFolders: "Carpetas",
|
|
1157
|
+
groupNavigation: "Ir a",
|
|
1158
|
+
groupPresent: "Presentar",
|
|
1159
|
+
groupDeck: "Esta presentación",
|
|
1160
|
+
groupExport: "Exportar",
|
|
1161
|
+
groupPages: "Páginas",
|
|
1162
|
+
groupAppearance: "Apariencia",
|
|
1163
|
+
groupDeveloper: "Desarrollo",
|
|
1164
|
+
goToPage: "Página {n}",
|
|
1165
|
+
overview: "Vista general",
|
|
1166
|
+
designPanel: "Mostrar/ocultar panel de diseño",
|
|
1167
|
+
backToSlides: "Volver a todas las presentaciones",
|
|
1168
|
+
themeItem: "Tema: {name}",
|
|
1169
|
+
languageItem: "Idioma: {name}",
|
|
1170
|
+
hintNavigate: "Navegar",
|
|
1171
|
+
hintSelect: "Seleccionar",
|
|
1172
|
+
hintClose: "Cerrar"
|
|
1173
|
+
},
|
|
1174
|
+
themeToggle: {
|
|
1175
|
+
toggleAria: "Cambiar tema",
|
|
1176
|
+
title: "Tema",
|
|
1177
|
+
light: "Claro",
|
|
1178
|
+
dark: "Oscuro",
|
|
1179
|
+
system: "Sistema"
|
|
1180
|
+
},
|
|
1181
|
+
languageToggle: {
|
|
1182
|
+
toggleAria: "Cambiar idioma",
|
|
1183
|
+
title: "Idioma"
|
|
1184
|
+
},
|
|
1185
|
+
imagePlaceholder: {
|
|
1186
|
+
dropOverlay: "Suelta la imagen para usarla aquí",
|
|
1187
|
+
uploading: "Subiendo…",
|
|
1188
|
+
uploadFailed: "No se pudo subir la imagen"
|
|
1189
|
+
},
|
|
1190
|
+
notesDrawer: {
|
|
1191
|
+
toggle: "Notas",
|
|
1192
|
+
pageLabel: "página {n}/{total}",
|
|
1193
|
+
placeholder: "Escribe las notas del ponente para esta diapositiva (admite Markdown)…",
|
|
1194
|
+
statusSaving: "Guardando…",
|
|
1195
|
+
statusSaved: "Guardado",
|
|
1196
|
+
statusError: "Error al guardar: {msg}"
|
|
1197
|
+
},
|
|
1198
|
+
themes: {
|
|
1199
|
+
title: "Temas",
|
|
1200
|
+
noThemesTitle: "Aún no hay temas",
|
|
1201
|
+
noThemesHintPrefix: "Ejecuta ",
|
|
1202
|
+
noThemesHintSuffix: " para crear uno: un archivo markdown en themes/ más una presentación de demostración.",
|
|
1203
|
+
noDemoYet: "Aún no hay demo",
|
|
1204
|
+
noDemoHintPrefix: "Vuelve a ejecutar ",
|
|
1205
|
+
noDemoHintSuffix: " para este tema y generar una presentación de vista previa.",
|
|
1206
|
+
backToGallery: "Volver a temas",
|
|
1207
|
+
pageOf: "página {n}/{total}",
|
|
1208
|
+
nextPageAria: "Página siguiente",
|
|
1209
|
+
prevPageAria: "Página anterior",
|
|
1210
|
+
openThemeAria: "Abrir tema {name}",
|
|
1211
|
+
usedBy: "Presentaciones que usan este tema",
|
|
1212
|
+
usedByEmpty: "Ninguna presentación usa este tema todavía.",
|
|
1213
|
+
expandPromptAria: "Expandir prompt",
|
|
1214
|
+
collapsePromptAria: "Contraer prompt"
|
|
1215
|
+
},
|
|
1216
|
+
agent: {
|
|
1217
|
+
title: "Agente",
|
|
1218
|
+
beta: "Beta",
|
|
1219
|
+
betaTitle: "Versión preliminar",
|
|
1220
|
+
betaHint: "Las respuestas, ediciones y acciones pueden fallar o hacer algo inesperado de vez en cuando.",
|
|
1221
|
+
open: "Agente",
|
|
1222
|
+
openTitle: "Abrir el panel del agente",
|
|
1223
|
+
close: "Cerrar el panel del agente",
|
|
1224
|
+
newSession: "Nuevo chat",
|
|
1225
|
+
sessions: "Historial",
|
|
1226
|
+
noSessions: "Todavía no hay conversaciones.",
|
|
1227
|
+
deleteSession: "Eliminar conversación",
|
|
1228
|
+
historyThisDeck: "Esta presentación",
|
|
1229
|
+
historyOtherDecks: "Otras presentaciones",
|
|
1230
|
+
historyEmptyHint: "Los chats que empieces en este panel aparecen aquí.",
|
|
1231
|
+
sessionRunning: "En curso",
|
|
1232
|
+
composerPlaceholder: "Pídele a {provider} que cree o edite diapositivas…",
|
|
1233
|
+
send: "Enviar",
|
|
1234
|
+
stop: "Detener",
|
|
1235
|
+
working: "Trabajando",
|
|
1236
|
+
contextPage: "Página {n}",
|
|
1237
|
+
contextSelection: "Selección",
|
|
1238
|
+
pendingComments: {
|
|
1239
|
+
one: "{count} comentario",
|
|
1240
|
+
other: "{count} comentarios"
|
|
1241
|
+
},
|
|
1242
|
+
applyComments: "Aplicar comentarios",
|
|
1243
|
+
applyCommentsWith: "Aplicar con {provider}",
|
|
1244
|
+
createDeck: "Nueva presentación",
|
|
1245
|
+
createDeckWith: "Crear una presentación con {provider}",
|
|
1246
|
+
quickCreate: "Redactar una nueva presentación",
|
|
1247
|
+
quickCreateHint: "Abre una presentación en blanco; descríbela y el agente la redacta página a página.",
|
|
1248
|
+
quickApply: "Aplicar comentarios pendientes",
|
|
1249
|
+
quickApplyHint: "Resuelve todos los marcadores @slide-comment de esta presentación.",
|
|
1250
|
+
quickTheme: "Crear un tema",
|
|
1251
|
+
quickThemeHint: "Extrae o diseña un tema reutilizable en themes/.",
|
|
1252
|
+
quickEdit: "Editar esta página",
|
|
1253
|
+
quickEditHint: "Describe un cambio para la página que estás viendo.",
|
|
1254
|
+
emptyTitle: "¿Qué construimos?",
|
|
1255
|
+
emptyHint: "Describe una presentación o elige un punto de partida.",
|
|
1256
|
+
questionSubmit: "Continuar",
|
|
1257
|
+
questionOther: "Otra",
|
|
1258
|
+
questionOtherPlaceholder: "Escribe tu propia respuesta",
|
|
1259
|
+
questionCancelled: "Descartada",
|
|
1260
|
+
permissionTitle: "Requiere aprobación",
|
|
1261
|
+
allow: "Permitir",
|
|
1262
|
+
deny: "Denegar",
|
|
1263
|
+
allowed: "Permitido",
|
|
1264
|
+
denied: "Denegado",
|
|
1265
|
+
autoApprove: "Aprobar automáticamente",
|
|
1266
|
+
autoApproveHint: "Ejecuta comandos sin preguntar. Las ediciones dentro del workspace siempre se permiten.",
|
|
1267
|
+
resultDone: "Listo",
|
|
1268
|
+
resultStopped: "Detenido",
|
|
1269
|
+
resultSeconds: "{seconds}s",
|
|
1270
|
+
errorEyebrow: "Error",
|
|
1271
|
+
statusLoading: "Comprobando agentes",
|
|
1272
|
+
disabled: "El panel del agente está desactivado en lemonriver.config.ts.",
|
|
1273
|
+
connectTitle: "Conectar un agente",
|
|
1274
|
+
connectDescription: "Dirige tu agente de código desde aquí en lugar de una terminal. Los agentes instalados en esta máquina se conectan solos y reutilizan su sesión.",
|
|
1275
|
+
connect: "Conectar",
|
|
1276
|
+
connecting: "Conectando",
|
|
1277
|
+
connected: "Conectado",
|
|
1278
|
+
connectInstallHint: "Añade {pkg} a este workspace con {pm}.",
|
|
1279
|
+
cliFound: "CLI encontrada · v{version}",
|
|
1280
|
+
cliFoundNoVersion: "CLI encontrada",
|
|
1281
|
+
cliMissing: "CLI no encontrada en el PATH",
|
|
1282
|
+
cliHint: "Instala la CLI de {name} e inicia sesión una vez; el panel reutiliza esa sesión.",
|
|
1283
|
+
needCliTitle: "Instala Claude Code o Codex primero",
|
|
1284
|
+
needCliDescription: "El panel dirige la CLI del agente de código de esta máquina y no se encontró ninguna en el PATH. Instala una, inicia sesión una vez en una terminal y vuelve a comprobar.",
|
|
1285
|
+
checkAgain: "Volver a comprobar",
|
|
1286
|
+
retry: "Reintentar",
|
|
1287
|
+
toastConnected: "{name} conectado",
|
|
1288
|
+
toastConnectFailed: "No se pudo instalar {pkg}",
|
|
1289
|
+
manageConnections: "Gestionar agentes",
|
|
1290
|
+
backToChat: "Volver",
|
|
1291
|
+
toastSendFailed: "No se pudo enviar el mensaje",
|
|
1292
|
+
newDeckTitle: "¿De qué trata esta presentación?",
|
|
1293
|
+
newDeckHint: "Describe el tema, la audiencia y el tono. {provider} la redacta página a página mientras miras.",
|
|
1294
|
+
newDeckPlaceholder: "Una charla de 10 minutos sobre…",
|
|
1295
|
+
toastCreateDeckFailed: "No se pudo crear la presentación",
|
|
1296
|
+
steps: {
|
|
1297
|
+
one: "{count} paso",
|
|
1298
|
+
other: "{count} pasos"
|
|
1299
|
+
},
|
|
1300
|
+
questionSkip: "Omitir",
|
|
1301
|
+
copyMessage: "Copiar",
|
|
1302
|
+
copied: "Copiado",
|
|
1303
|
+
editMessage: "Editar",
|
|
1304
|
+
cancelEdit: "Cancelar",
|
|
1305
|
+
sendEdit: "Enviar",
|
|
1306
|
+
editHint: "Al enviar se reemplaza la conversación posterior a este mensaje. Los cambios en archivos se mantienen.",
|
|
1307
|
+
modelDefault: "Predeterminado",
|
|
1308
|
+
reasoning: "Razonamiento",
|
|
1309
|
+
effortAuto: "Auto",
|
|
1310
|
+
efforts: {
|
|
1311
|
+
minimal: "Mínimo",
|
|
1312
|
+
low: "Bajo",
|
|
1313
|
+
medium: "Medio",
|
|
1314
|
+
high: "Alto",
|
|
1315
|
+
xhigh: "Muy alto",
|
|
1316
|
+
max: "Máximo"
|
|
1317
|
+
},
|
|
1318
|
+
presenceEditing: "{provider} está editando",
|
|
1319
|
+
presenceThinking: "Pensando",
|
|
1320
|
+
presenceWaiting: "Esperando tu respuesta"
|
|
537
1321
|
}
|
|
538
1322
|
};
|
|
539
1323
|
//#endregion
|
|
@@ -630,6 +1414,7 @@ const ja = {
|
|
|
630
1414
|
pickIcon: "アイコンを選択"
|
|
631
1415
|
},
|
|
632
1416
|
slide: {
|
|
1417
|
+
resizeSidePanel: "サイドパネルの幅を調整",
|
|
633
1418
|
agentConnected: "エージェント接続中",
|
|
634
1419
|
agentConnectedTooltip: "現在のスライドと Inspector の選択はエージェントにリアルタイムで同期されています。",
|
|
635
1420
|
agentDisconnected: "エージェント切断",
|
|
@@ -811,10 +1596,9 @@ const ja = {
|
|
|
811
1596
|
agentWatchingTooltip: "選択中の要素はエージェントにリアルタイムで同期されています。",
|
|
812
1597
|
agentNotWatching: "エージェント未接続",
|
|
813
1598
|
agentNotWatchingTooltip: "dev server との接続が切れたため、選択中の要素がエージェントに見えなくなっています。dev server を再起動して接続を復旧してください。",
|
|
814
|
-
|
|
1599
|
+
commentMode: "コメント",
|
|
815
1600
|
commentPlaceholder: "エージェントに依頼する変更を記述…",
|
|
816
|
-
|
|
817
|
-
addComment: "コメントを追加",
|
|
1601
|
+
commentPost: "投稿",
|
|
818
1602
|
unsavedChanges: {
|
|
819
1603
|
one: "未保存の変更 {count} 件",
|
|
820
1604
|
other: "未保存の変更 {count} 件"
|
|
@@ -824,10 +1608,14 @@ const ja = {
|
|
|
824
1608
|
other: "コメント {count} 件"
|
|
825
1609
|
},
|
|
826
1610
|
commentLineLabel: "行 {n}",
|
|
827
|
-
|
|
1611
|
+
commentRegionLabel: "範囲",
|
|
1612
|
+
commentEmptyHint: "要素をクリックするか、範囲をドラッグしてコメントを残せます。",
|
|
828
1613
|
commentsApplyHintPrefix: "エージェントで ",
|
|
829
1614
|
commentsApplyHintSuffix: " を実行して適用してください。",
|
|
830
1615
|
commentDeleteAria: "削除",
|
|
1616
|
+
commentUpdateFailed: "コメントを更新できませんでした:",
|
|
1617
|
+
commentAddFailed: "コメントを追加できませんでした:",
|
|
1618
|
+
commentRegionNoTarget: "この範囲を付けられる要素が見つかりませんでした。",
|
|
831
1619
|
saveFailed: "保存に失敗しました:",
|
|
832
1620
|
decreaseFontSize: "フォントサイズを縮小",
|
|
833
1621
|
increaseFontSize: "フォントサイズを拡大"
|
|
@@ -977,7 +1765,7 @@ const ja = {
|
|
|
977
1765
|
title: "ストーリーボード",
|
|
978
1766
|
openBoard: "ストーリーボード (B)",
|
|
979
1767
|
backToDeck: "スライドに戻る",
|
|
980
|
-
hint: "カードをドラッグして並べ替え · ダブルクリックで編集",
|
|
1768
|
+
hint: "カードをドラッグして並べ替え · ダブルクリックで編集 · 丸をドラッグして関連付け",
|
|
981
1769
|
loading: "読み込み中…",
|
|
982
1770
|
columnFallback: "パート {n}",
|
|
983
1771
|
moveToEnd: "最後に移動",
|
|
@@ -991,7 +1779,20 @@ const ja = {
|
|
|
991
1779
|
addPage: "この列にページを追加(最後のページを複製)",
|
|
992
1780
|
notesPlaceholder: "発表者ノート…",
|
|
993
1781
|
toastInserted: "ページ {n} に白紙ページを追加しました",
|
|
994
|
-
insertFailed: "ページを追加できませんでした"
|
|
1782
|
+
insertFailed: "ページを追加できませんでした",
|
|
1783
|
+
cardTitlePlaceholder: "カードに名前を付ける",
|
|
1784
|
+
renameCard: "カード名を変更",
|
|
1785
|
+
status: "ステータス",
|
|
1786
|
+
statusNone: "なし",
|
|
1787
|
+
statusTodo: "未着手",
|
|
1788
|
+
statusDoing: "進行中",
|
|
1789
|
+
statusReview: "確認待ち",
|
|
1790
|
+
statusDone: "完了",
|
|
1791
|
+
memoPlaceholder: "作業メモ…(ボードだけに残ります)",
|
|
1792
|
+
linkHandle: "別のカードにドラッグして関連付け",
|
|
1793
|
+
showLinks: "関連線を表示",
|
|
1794
|
+
hideLinks: "関連線を隠す",
|
|
1795
|
+
removeLink: "この関連を削除"
|
|
995
1796
|
},
|
|
996
1797
|
pdfToast: {
|
|
997
1798
|
title: "PDF を書き出し中",
|
|
@@ -1072,6 +1873,112 @@ const ja = {
|
|
|
1072
1873
|
usedByEmpty: "このテーマを使うスライドはまだありません。",
|
|
1073
1874
|
expandPromptAria: "プロンプトを展開",
|
|
1074
1875
|
collapsePromptAria: "プロンプトを折りたたむ"
|
|
1876
|
+
},
|
|
1877
|
+
agent: {
|
|
1878
|
+
title: "エージェント",
|
|
1879
|
+
beta: "Beta",
|
|
1880
|
+
betaTitle: "プレビュー版",
|
|
1881
|
+
betaHint: "返答・編集・ツール実行が失敗したり、思わぬ動作をしたりすることがあります。",
|
|
1882
|
+
open: "エージェント",
|
|
1883
|
+
openTitle: "エージェントパネルを開く",
|
|
1884
|
+
close: "エージェントパネルを閉じる",
|
|
1885
|
+
newSession: "新しいチャット",
|
|
1886
|
+
sessions: "履歴",
|
|
1887
|
+
noSessions: "まだ会話はありません。",
|
|
1888
|
+
deleteSession: "会話を削除",
|
|
1889
|
+
historyThisDeck: "このデッキ",
|
|
1890
|
+
historyOtherDecks: "他のデッキ",
|
|
1891
|
+
historyEmptyHint: "このパネルで始めた会話がここに表示されます。",
|
|
1892
|
+
sessionRunning: "実行中",
|
|
1893
|
+
composerPlaceholder: "{provider} にスライドの作成や編集を依頼…",
|
|
1894
|
+
send: "送信",
|
|
1895
|
+
stop: "停止",
|
|
1896
|
+
working: "処理中",
|
|
1897
|
+
contextPage: "{n} ページ目",
|
|
1898
|
+
contextSelection: "選択中",
|
|
1899
|
+
pendingComments: {
|
|
1900
|
+
one: "{count} 件のコメント",
|
|
1901
|
+
other: "{count} 件のコメント"
|
|
1902
|
+
},
|
|
1903
|
+
applyComments: "コメントを適用",
|
|
1904
|
+
applyCommentsWith: "{provider} で適用",
|
|
1905
|
+
createDeck: "新しいデッキ",
|
|
1906
|
+
createDeckWith: "{provider} でデッキを作成",
|
|
1907
|
+
quickCreate: "新しいデッキを下書き",
|
|
1908
|
+
quickCreateHint: "空のデッキを開き、内容を伝えるとエージェントが 1 ページずつ作成します。",
|
|
1909
|
+
quickApply: "未処理のコメントを適用",
|
|
1910
|
+
quickApplyHint: "このスライドの @slide-comment マーカーをすべて処理します。",
|
|
1911
|
+
quickTheme: "テーマを作成",
|
|
1912
|
+
quickThemeHint: "themes/ に再利用できるテーマを抽出・設計します。",
|
|
1913
|
+
quickEdit: "このページを編集",
|
|
1914
|
+
quickEditHint: "表示中のページへの変更内容を書いてください。",
|
|
1915
|
+
emptyTitle: "何を作りますか?",
|
|
1916
|
+
emptyHint: "デッキの内容を書くか、下から出発点を選んでください。",
|
|
1917
|
+
questionSubmit: "続ける",
|
|
1918
|
+
questionOther: "その他",
|
|
1919
|
+
questionOtherPlaceholder: "自由に入力",
|
|
1920
|
+
questionCancelled: "スキップ",
|
|
1921
|
+
permissionTitle: "承認が必要です",
|
|
1922
|
+
allow: "許可",
|
|
1923
|
+
deny: "拒否",
|
|
1924
|
+
allowed: "許可済み",
|
|
1925
|
+
denied: "拒否済み",
|
|
1926
|
+
autoApprove: "自動承認",
|
|
1927
|
+
autoApproveHint: "確認なしでコマンドを実行します。ワークスペース内の編集は常に許可されます。",
|
|
1928
|
+
resultDone: "完了",
|
|
1929
|
+
resultStopped: "停止",
|
|
1930
|
+
resultSeconds: "{seconds} 秒",
|
|
1931
|
+
errorEyebrow: "エラー",
|
|
1932
|
+
statusLoading: "エージェントを確認中",
|
|
1933
|
+
disabled: "エージェントパネルは lemonriver.config.ts で無効化されています。",
|
|
1934
|
+
connectTitle: "エージェントを接続",
|
|
1935
|
+
connectDescription: "ターミナルの代わりにここからコーディングエージェントを操作できます。このマシンにインストール済みのエージェントは自動で接続され、そのログインを再利用します。",
|
|
1936
|
+
connect: "接続",
|
|
1937
|
+
connecting: "接続中",
|
|
1938
|
+
connected: "接続済み",
|
|
1939
|
+
connectInstallHint: "{pm} で {pkg} をこのワークスペースに追加します。",
|
|
1940
|
+
cliFound: "CLI を検出 · v{version}",
|
|
1941
|
+
cliFoundNoVersion: "CLI を検出",
|
|
1942
|
+
cliMissing: "PATH に CLI が見つかりません",
|
|
1943
|
+
cliHint: "{name} CLI をインストールして一度ログインしてください。パネルはそのログインを再利用します。",
|
|
1944
|
+
needCliTitle: "先に Claude Code か Codex をインストールしてください",
|
|
1945
|
+
needCliDescription: "パネルはこのマシンのコーディングエージェント CLI を操作しますが、PATH に見つかりませんでした。どちらかをインストールしてターミナルで一度ログインし、もう一度確認してください。",
|
|
1946
|
+
checkAgain: "もう一度確認",
|
|
1947
|
+
retry: "再試行",
|
|
1948
|
+
toastConnected: "{name} を接続しました",
|
|
1949
|
+
toastConnectFailed: "{pkg} をインストールできませんでした",
|
|
1950
|
+
manageConnections: "エージェントを管理",
|
|
1951
|
+
backToChat: "戻る",
|
|
1952
|
+
toastSendFailed: "メッセージを送信できませんでした",
|
|
1953
|
+
newDeckTitle: "どんなデッキにしますか?",
|
|
1954
|
+
newDeckHint: "テーマ、対象、トーンを伝えてください。{provider} が 1 ページずつ作成する様子を見られます。",
|
|
1955
|
+
newDeckPlaceholder: "10 分間のトーク:…",
|
|
1956
|
+
toastCreateDeckFailed: "デッキを作成できませんでした",
|
|
1957
|
+
steps: {
|
|
1958
|
+
one: "{count} ステップ",
|
|
1959
|
+
other: "{count} ステップ"
|
|
1960
|
+
},
|
|
1961
|
+
questionSkip: "スキップ",
|
|
1962
|
+
copyMessage: "コピー",
|
|
1963
|
+
copied: "コピーしました",
|
|
1964
|
+
editMessage: "編集",
|
|
1965
|
+
cancelEdit: "キャンセル",
|
|
1966
|
+
sendEdit: "送信",
|
|
1967
|
+
editHint: "送信すると、このメッセージ以降の会話が置き換わります。ファイルへの変更は元に戻りません。",
|
|
1968
|
+
modelDefault: "デフォルト",
|
|
1969
|
+
reasoning: "推論",
|
|
1970
|
+
effortAuto: "自動",
|
|
1971
|
+
efforts: {
|
|
1972
|
+
minimal: "最小",
|
|
1973
|
+
low: "低",
|
|
1974
|
+
medium: "中",
|
|
1975
|
+
high: "高",
|
|
1976
|
+
xhigh: "最高",
|
|
1977
|
+
max: "最大"
|
|
1978
|
+
},
|
|
1979
|
+
presenceEditing: "{provider} が編集中",
|
|
1980
|
+
presenceThinking: "考え中",
|
|
1981
|
+
presenceWaiting: "あなたの回答待ち"
|
|
1075
1982
|
}
|
|
1076
1983
|
};
|
|
1077
1984
|
//#endregion
|
|
@@ -1168,6 +2075,7 @@ const zhCN = {
|
|
|
1168
2075
|
pickIcon: "选择图标"
|
|
1169
2076
|
},
|
|
1170
2077
|
slide: {
|
|
2078
|
+
resizeSidePanel: "调整侧栏宽度",
|
|
1171
2079
|
agentConnected: "Agent 已连接",
|
|
1172
2080
|
agentConnectedTooltip: "目前的 slide 与 Inspector 选择会即时同步给 agent。",
|
|
1173
2081
|
agentDisconnected: "Agent 已断开",
|
|
@@ -1349,10 +2257,9 @@ const zhCN = {
|
|
|
1349
2257
|
agentWatchingTooltip: "选取的元素会即时同步给 agent。",
|
|
1350
2258
|
agentNotWatching: "Agent 没在关注",
|
|
1351
2259
|
agentNotWatchingTooltip: "已和 dev server 断开连接,agent 看不到你选的元素了。请重新启动 dev server 来恢复连接。",
|
|
1352
|
-
|
|
2260
|
+
commentMode: "评论",
|
|
1353
2261
|
commentPlaceholder: "描述你希望代理执行的更改…",
|
|
1354
|
-
|
|
1355
|
-
addComment: "添加 comment",
|
|
2262
|
+
commentPost: "发送",
|
|
1356
2263
|
unsavedChanges: {
|
|
1357
2264
|
one: "{count} 项未保存的更改",
|
|
1358
2265
|
other: "{count} 项未保存的更改"
|
|
@@ -1362,10 +2269,14 @@ const zhCN = {
|
|
|
1362
2269
|
other: "{count} 条评论"
|
|
1363
2270
|
},
|
|
1364
2271
|
commentLineLabel: "第 {n} 行",
|
|
1365
|
-
|
|
2272
|
+
commentRegionLabel: "区域",
|
|
2273
|
+
commentEmptyHint: "点击元素或拖拽框选一个区域来评论。",
|
|
1366
2274
|
commentsApplyHintPrefix: "在你的代理中运行 ",
|
|
1367
2275
|
commentsApplyHintSuffix: " 以应用这些更改。",
|
|
1368
2276
|
commentDeleteAria: "删除",
|
|
2277
|
+
commentUpdateFailed: "无法更新评论:",
|
|
2278
|
+
commentAddFailed: "无法添加评论:",
|
|
2279
|
+
commentRegionNoTarget: "找不到可以附加该区域的元素。",
|
|
1369
2280
|
saveFailed: "保存失败:",
|
|
1370
2281
|
decreaseFontSize: "缩小字号",
|
|
1371
2282
|
increaseFontSize: "放大字号"
|
|
@@ -1515,7 +2426,7 @@ const zhCN = {
|
|
|
1515
2426
|
title: "故事看板",
|
|
1516
2427
|
openBoard: "故事看板 (B)",
|
|
1517
2428
|
backToDeck: "返回幻灯片",
|
|
1518
|
-
hint: "拖动卡片调整顺序 · 双击进入该页编辑",
|
|
2429
|
+
hint: "拖动卡片调整顺序 · 双击进入该页编辑 · 拖动圆点关联两页",
|
|
1519
2430
|
loading: "正在加载…",
|
|
1520
2431
|
columnFallback: "第 {n} 部分",
|
|
1521
2432
|
moveToEnd: "移到末尾",
|
|
@@ -1529,7 +2440,20 @@ const zhCN = {
|
|
|
1529
2440
|
addPage: "在这一栏新增一页(复制最后一页)",
|
|
1530
2441
|
notesPlaceholder: "讲稿…",
|
|
1531
2442
|
toastInserted: "已在第 {n} 页新建空白页",
|
|
1532
|
-
insertFailed: "新建页面失败"
|
|
2443
|
+
insertFailed: "新建页面失败",
|
|
2444
|
+
cardTitlePlaceholder: "给这张卡片起个名字",
|
|
2445
|
+
renameCard: "重命名这张卡片",
|
|
2446
|
+
status: "状态",
|
|
2447
|
+
statusNone: "无状态",
|
|
2448
|
+
statusTodo: "待做",
|
|
2449
|
+
statusDoing: "进行中",
|
|
2450
|
+
statusReview: "待确认",
|
|
2451
|
+
statusDone: "已完成",
|
|
2452
|
+
memoPlaceholder: "工作备注…(只在看板上,不进材料)",
|
|
2453
|
+
linkHandle: "拖到另一张卡片上建立关联",
|
|
2454
|
+
showLinks: "显示关联线",
|
|
2455
|
+
hideLinks: "隐藏关联线",
|
|
2456
|
+
removeLink: "删除这条关联"
|
|
1533
2457
|
},
|
|
1534
2458
|
pdfToast: {
|
|
1535
2459
|
title: "导出 PDF",
|
|
@@ -1610,6 +2534,112 @@ const zhCN = {
|
|
|
1610
2534
|
usedByEmpty: "尚未有 slides 使用此主题。",
|
|
1611
2535
|
expandPromptAria: "展开 prompt",
|
|
1612
2536
|
collapsePromptAria: "收起 prompt"
|
|
2537
|
+
},
|
|
2538
|
+
agent: {
|
|
2539
|
+
title: "Agent",
|
|
2540
|
+
beta: "Beta",
|
|
2541
|
+
betaTitle: "抢先体验版",
|
|
2542
|
+
betaHint: "回复、编辑或工具调用偶尔可能失败,或出现预期之外的结果。",
|
|
2543
|
+
open: "Agent",
|
|
2544
|
+
openTitle: "打开 agent 面板",
|
|
2545
|
+
close: "关闭 agent 面板",
|
|
2546
|
+
newSession: "新对话",
|
|
2547
|
+
sessions: "对话记录",
|
|
2548
|
+
noSessions: "还没有任何对话。",
|
|
2549
|
+
deleteSession: "删除对话",
|
|
2550
|
+
historyThisDeck: "这份幻灯片",
|
|
2551
|
+
historyOtherDecks: "其他幻灯片",
|
|
2552
|
+
historyEmptyHint: "在这个面板开始的对话会列在这里。",
|
|
2553
|
+
sessionRunning: "进行中",
|
|
2554
|
+
composerPlaceholder: "让 {provider} 创建或修改幻灯片…",
|
|
2555
|
+
send: "发送",
|
|
2556
|
+
stop: "停止",
|
|
2557
|
+
working: "处理中",
|
|
2558
|
+
contextPage: "第 {n} 页",
|
|
2559
|
+
contextSelection: "选中元素",
|
|
2560
|
+
pendingComments: {
|
|
2561
|
+
one: "{count} 条评论",
|
|
2562
|
+
other: "{count} 条评论"
|
|
2563
|
+
},
|
|
2564
|
+
applyComments: "应用评论",
|
|
2565
|
+
applyCommentsWith: "用 {provider} 应用",
|
|
2566
|
+
createDeck: "新幻灯片",
|
|
2567
|
+
createDeckWith: "用 {provider} 创建幻灯片",
|
|
2568
|
+
quickCreate: "起草一份新幻灯片",
|
|
2569
|
+
quickCreateHint: "打开一份空白幻灯片,描述需求后 agent 会逐页生成。",
|
|
2570
|
+
quickApply: "应用待处理的评论",
|
|
2571
|
+
quickApplyHint: "处理这份幻灯片中所有的 @slide-comment 标记。",
|
|
2572
|
+
quickTheme: "创建主题",
|
|
2573
|
+
quickThemeHint: "在 themes/ 下提取或设计可复用的主题。",
|
|
2574
|
+
quickEdit: "编辑当前页",
|
|
2575
|
+
quickEditHint: "描述你想对当前页面做的修改。",
|
|
2576
|
+
emptyTitle: "想做什么?",
|
|
2577
|
+
emptyHint: "描述一份幻灯片,或从下面选一个起点。",
|
|
2578
|
+
questionSubmit: "继续",
|
|
2579
|
+
questionOther: "其他",
|
|
2580
|
+
questionOtherPlaceholder: "输入你自己的答案",
|
|
2581
|
+
questionCancelled: "已跳过",
|
|
2582
|
+
permissionTitle: "需要批准",
|
|
2583
|
+
allow: "允许",
|
|
2584
|
+
deny: "拒绝",
|
|
2585
|
+
allowed: "已允许",
|
|
2586
|
+
denied: "已拒绝",
|
|
2587
|
+
autoApprove: "自动批准",
|
|
2588
|
+
autoApproveHint: "不询问直接执行命令。工作区内的文件编辑始终允许。",
|
|
2589
|
+
resultDone: "完成",
|
|
2590
|
+
resultStopped: "已停止",
|
|
2591
|
+
resultSeconds: "{seconds} 秒",
|
|
2592
|
+
errorEyebrow: "错误",
|
|
2593
|
+
statusLoading: "正在检查 agent",
|
|
2594
|
+
disabled: "agent 面板已在 lemonriver.config.ts 中禁用。",
|
|
2595
|
+
connectTitle: "连接 agent",
|
|
2596
|
+
connectDescription: "直接在这里驱动你的 coding agent,无需切换到终端。这台电脑上已安装的 agent 会自动连接,并复用它的登录状态。",
|
|
2597
|
+
connect: "连接",
|
|
2598
|
+
connecting: "连接中",
|
|
2599
|
+
connected: "已连接",
|
|
2600
|
+
connectInstallHint: "会用 {pm} 把 {pkg} 添加到这个工作区。",
|
|
2601
|
+
cliFound: "已找到 CLI · v{version}",
|
|
2602
|
+
cliFoundNoVersion: "已找到 CLI",
|
|
2603
|
+
cliMissing: "PATH 中找不到 CLI",
|
|
2604
|
+
cliHint: "请安装 {name} CLI 并登录一次;面板会复用它的登录状态。",
|
|
2605
|
+
needCliTitle: "请先安装 Claude Code 或 Codex",
|
|
2606
|
+
needCliDescription: "面板会驱动这台电脑上的 coding agent CLI,但 PATH 中找不到任何一个。请先安装其中一个并在终端登录一次,再重新检查。",
|
|
2607
|
+
checkAgain: "重新检查",
|
|
2608
|
+
retry: "重试",
|
|
2609
|
+
toastConnected: "{name} 已连接",
|
|
2610
|
+
toastConnectFailed: "无法安装 {pkg}",
|
|
2611
|
+
manageConnections: "管理 agent",
|
|
2612
|
+
backToChat: "返回",
|
|
2613
|
+
toastSendFailed: "消息发送失败",
|
|
2614
|
+
newDeckTitle: "这份幻灯片要讲什么?",
|
|
2615
|
+
newDeckHint: "描述主题、受众和风格,{provider} 会逐页生成,你可以边看边调整。",
|
|
2616
|
+
newDeckPlaceholder: "一场 10 分钟的分享,主题是…",
|
|
2617
|
+
toastCreateDeckFailed: "无法创建幻灯片",
|
|
2618
|
+
steps: {
|
|
2619
|
+
one: "{count} 个步骤",
|
|
2620
|
+
other: "{count} 个步骤"
|
|
2621
|
+
},
|
|
2622
|
+
questionSkip: "跳过",
|
|
2623
|
+
copyMessage: "复制",
|
|
2624
|
+
copied: "已复制",
|
|
2625
|
+
editMessage: "编辑",
|
|
2626
|
+
cancelEdit: "取消",
|
|
2627
|
+
sendEdit: "发送",
|
|
2628
|
+
editHint: "发送后会替换这条消息之后的对话,已改动的文件不会还原。",
|
|
2629
|
+
modelDefault: "默认",
|
|
2630
|
+
reasoning: "推理强度",
|
|
2631
|
+
effortAuto: "自动",
|
|
2632
|
+
efforts: {
|
|
2633
|
+
minimal: "最低",
|
|
2634
|
+
low: "低",
|
|
2635
|
+
medium: "中",
|
|
2636
|
+
high: "高",
|
|
2637
|
+
xhigh: "超高",
|
|
2638
|
+
max: "最高"
|
|
2639
|
+
},
|
|
2640
|
+
presenceEditing: "{provider} 正在编辑",
|
|
2641
|
+
presenceThinking: "思考中",
|
|
2642
|
+
presenceWaiting: "等待你的回复"
|
|
1613
2643
|
}
|
|
1614
2644
|
};
|
|
1615
2645
|
//#endregion
|
|
@@ -1706,6 +2736,7 @@ const zhTW = {
|
|
|
1706
2736
|
pickIcon: "選擇圖示"
|
|
1707
2737
|
},
|
|
1708
2738
|
slide: {
|
|
2739
|
+
resizeSidePanel: "調整側欄寬度",
|
|
1709
2740
|
agentConnected: "Agent 已連線",
|
|
1710
2741
|
agentConnectedTooltip: "目前的 slide 與 Inspector 選擇會即時同步給 agent。",
|
|
1711
2742
|
agentDisconnected: "Agent 已斷線",
|
|
@@ -1887,10 +2918,9 @@ const zhTW = {
|
|
|
1887
2918
|
agentWatchingTooltip: "選取的元素會即時同步給 agent。",
|
|
1888
2919
|
agentNotWatching: "Agent 沒在關注",
|
|
1889
2920
|
agentNotWatchingTooltip: "已和 dev server 斷線,agent 看不到你選的元素了。請重新啟動 dev server 來恢復連線。",
|
|
1890
|
-
|
|
2921
|
+
commentMode: "留言",
|
|
1891
2922
|
commentPlaceholder: "描述你希望代理進行的修改…",
|
|
1892
|
-
|
|
1893
|
-
addComment: "新增 comment",
|
|
2923
|
+
commentPost: "送出",
|
|
1894
2924
|
unsavedChanges: {
|
|
1895
2925
|
one: "{count} 項未儲存的變更",
|
|
1896
2926
|
other: "{count} 項未儲存的變更"
|
|
@@ -1900,10 +2930,14 @@ const zhTW = {
|
|
|
1900
2930
|
other: "{count} 則留言"
|
|
1901
2931
|
},
|
|
1902
2932
|
commentLineLabel: "第 {n} 行",
|
|
1903
|
-
|
|
2933
|
+
commentRegionLabel: "範圍",
|
|
2934
|
+
commentEmptyHint: "點選元件或拖曳框選一個範圍來留言。",
|
|
1904
2935
|
commentsApplyHintPrefix: "在你的代理中執行 ",
|
|
1905
2936
|
commentsApplyHintSuffix: " 以套用這些變更。",
|
|
1906
2937
|
commentDeleteAria: "刪除",
|
|
2938
|
+
commentUpdateFailed: "無法更新留言:",
|
|
2939
|
+
commentAddFailed: "無法新增留言:",
|
|
2940
|
+
commentRegionNoTarget: "找不到可以附加這個範圍的元件。",
|
|
1907
2941
|
saveFailed: "儲存失敗:",
|
|
1908
2942
|
decreaseFontSize: "縮小字級",
|
|
1909
2943
|
increaseFontSize: "放大字級"
|
|
@@ -2053,7 +3087,7 @@ const zhTW = {
|
|
|
2053
3087
|
title: "故事看板",
|
|
2054
3088
|
openBoard: "故事看板 (B)",
|
|
2055
3089
|
backToDeck: "返回投影片",
|
|
2056
|
-
hint: "拖動卡片調整順序 · 雙擊進入該頁編輯",
|
|
3090
|
+
hint: "拖動卡片調整順序 · 雙擊進入該頁編輯 · 拖動圓點關聯兩頁",
|
|
2057
3091
|
loading: "正在載入…",
|
|
2058
3092
|
columnFallback: "第 {n} 部分",
|
|
2059
3093
|
moveToEnd: "移到最後",
|
|
@@ -2067,7 +3101,20 @@ const zhTW = {
|
|
|
2067
3101
|
addPage: "在這一欄新增一頁(複製最後一頁)",
|
|
2068
3102
|
notesPlaceholder: "講稿…",
|
|
2069
3103
|
toastInserted: "已於第 {n} 頁新增空白頁",
|
|
2070
|
-
insertFailed: "新增頁面失敗"
|
|
3104
|
+
insertFailed: "新增頁面失敗",
|
|
3105
|
+
cardTitlePlaceholder: "幫這張卡片取個名字",
|
|
3106
|
+
renameCard: "重新命名這張卡片",
|
|
3107
|
+
status: "狀態",
|
|
3108
|
+
statusNone: "無狀態",
|
|
3109
|
+
statusTodo: "待做",
|
|
3110
|
+
statusDoing: "進行中",
|
|
3111
|
+
statusReview: "待確認",
|
|
3112
|
+
statusDone: "已完成",
|
|
3113
|
+
memoPlaceholder: "工作備註…(只在看板上,不進投影片)",
|
|
3114
|
+
linkHandle: "拖到另一張卡片上建立關聯",
|
|
3115
|
+
showLinks: "顯示關聯線",
|
|
3116
|
+
hideLinks: "隱藏關聯線",
|
|
3117
|
+
removeLink: "刪除這條關聯"
|
|
2071
3118
|
},
|
|
2072
3119
|
pdfToast: {
|
|
2073
3120
|
title: "匯出 PDF",
|
|
@@ -2148,7 +3195,113 @@ const zhTW = {
|
|
|
2148
3195
|
usedByEmpty: "尚未有 slides 使用此主題。",
|
|
2149
3196
|
expandPromptAria: "展開 prompt",
|
|
2150
3197
|
collapsePromptAria: "收合 prompt"
|
|
3198
|
+
},
|
|
3199
|
+
agent: {
|
|
3200
|
+
title: "Agent",
|
|
3201
|
+
beta: "Beta",
|
|
3202
|
+
betaTitle: "搶先體驗版",
|
|
3203
|
+
betaHint: "回覆、編輯或工具呼叫偶爾可能失敗,或出現預期之外的結果。",
|
|
3204
|
+
open: "Agent",
|
|
3205
|
+
openTitle: "開啟 agent 面板",
|
|
3206
|
+
close: "關閉 agent 面板",
|
|
3207
|
+
newSession: "新對話",
|
|
3208
|
+
sessions: "對話紀錄",
|
|
3209
|
+
noSessions: "還沒有任何對話。",
|
|
3210
|
+
deleteSession: "刪除對話",
|
|
3211
|
+
historyThisDeck: "這份簡報",
|
|
3212
|
+
historyOtherDecks: "其他簡報",
|
|
3213
|
+
historyEmptyHint: "在這個面板開始的對話會列在這裡。",
|
|
3214
|
+
sessionRunning: "進行中",
|
|
3215
|
+
composerPlaceholder: "請 {provider} 建立或修改簡報…",
|
|
3216
|
+
send: "送出",
|
|
3217
|
+
stop: "停止",
|
|
3218
|
+
working: "處理中",
|
|
3219
|
+
contextPage: "第 {n} 頁",
|
|
3220
|
+
contextSelection: "選取元件",
|
|
3221
|
+
pendingComments: {
|
|
3222
|
+
one: "{count} 則留言",
|
|
3223
|
+
other: "{count} 則留言"
|
|
3224
|
+
},
|
|
3225
|
+
applyComments: "套用留言",
|
|
3226
|
+
applyCommentsWith: "用 {provider} 套用",
|
|
3227
|
+
createDeck: "新簡報",
|
|
3228
|
+
createDeckWith: "用 {provider} 建立簡報",
|
|
3229
|
+
quickCreate: "草擬一份新簡報",
|
|
3230
|
+
quickCreateHint: "開啟一份空白簡報,描述需求後 agent 會逐頁產生。",
|
|
3231
|
+
quickApply: "套用待處理的留言",
|
|
3232
|
+
quickApplyHint: "處理這份簡報裡所有的 @slide-comment 標記。",
|
|
3233
|
+
quickTheme: "建立主題",
|
|
3234
|
+
quickThemeHint: "在 themes/ 下萃取或設計可重用的主題。",
|
|
3235
|
+
quickEdit: "編輯這一頁",
|
|
3236
|
+
quickEditHint: "描述你想對目前頁面做的修改。",
|
|
3237
|
+
emptyTitle: "想做什麼?",
|
|
3238
|
+
emptyHint: "描述一份簡報,或從下面選一個起點。",
|
|
3239
|
+
questionSubmit: "繼續",
|
|
3240
|
+
questionOther: "其他",
|
|
3241
|
+
questionOtherPlaceholder: "輸入你自己的答案",
|
|
3242
|
+
questionCancelled: "已略過",
|
|
3243
|
+
permissionTitle: "需要核准",
|
|
3244
|
+
allow: "允許",
|
|
3245
|
+
deny: "拒絕",
|
|
3246
|
+
allowed: "已允許",
|
|
3247
|
+
denied: "已拒絕",
|
|
3248
|
+
autoApprove: "自動核准",
|
|
3249
|
+
autoApproveHint: "不詢問就執行指令。工作區內的檔案編輯一律允許。",
|
|
3250
|
+
resultDone: "完成",
|
|
3251
|
+
resultStopped: "已停止",
|
|
3252
|
+
resultSeconds: "{seconds} 秒",
|
|
3253
|
+
errorEyebrow: "錯誤",
|
|
3254
|
+
statusLoading: "正在檢查 agent",
|
|
3255
|
+
disabled: "agent 面板已在 lemonriver.config.ts 中停用。",
|
|
3256
|
+
connectTitle: "連接 agent",
|
|
3257
|
+
connectDescription: "直接在這裡操作你的 coding agent,不用再切到終端機。這台電腦上已安裝的 agent 會自動連接,並沿用它的登入狀態。",
|
|
3258
|
+
connect: "連接",
|
|
3259
|
+
connecting: "連接中",
|
|
3260
|
+
connected: "已連接",
|
|
3261
|
+
connectInstallHint: "會用 {pm} 把 {pkg} 加進這個工作區。",
|
|
3262
|
+
cliFound: "已找到 CLI · v{version}",
|
|
3263
|
+
cliFoundNoVersion: "已找到 CLI",
|
|
3264
|
+
cliMissing: "PATH 中找不到 CLI",
|
|
3265
|
+
cliHint: "請安裝 {name} CLI 並登入一次;面板會沿用它的登入狀態。",
|
|
3266
|
+
needCliTitle: "請先安裝 Claude Code 或 Codex",
|
|
3267
|
+
needCliDescription: "面板會操作這台電腦上的 coding agent CLI,但 PATH 中找不到任何一個。請先安裝其中一個並在終端機登入一次,再重新檢查。",
|
|
3268
|
+
checkAgain: "重新檢查",
|
|
3269
|
+
retry: "重試",
|
|
3270
|
+
toastConnected: "{name} 已連接",
|
|
3271
|
+
toastConnectFailed: "無法安裝 {pkg}",
|
|
3272
|
+
manageConnections: "管理 agent",
|
|
3273
|
+
backToChat: "返回",
|
|
3274
|
+
toastSendFailed: "訊息送出失敗",
|
|
3275
|
+
newDeckTitle: "這份簡報要講什麼?",
|
|
3276
|
+
newDeckHint: "描述主題、對象和風格,{provider} 會逐頁產生,你可以邊看邊調整。",
|
|
3277
|
+
newDeckPlaceholder: "一場 10 分鐘的分享,主題是…",
|
|
3278
|
+
toastCreateDeckFailed: "無法建立簡報",
|
|
3279
|
+
steps: {
|
|
3280
|
+
one: "{count} 個步驟",
|
|
3281
|
+
other: "{count} 個步驟"
|
|
3282
|
+
},
|
|
3283
|
+
questionSkip: "略過",
|
|
3284
|
+
copyMessage: "複製",
|
|
3285
|
+
copied: "已複製",
|
|
3286
|
+
editMessage: "編輯",
|
|
3287
|
+
cancelEdit: "取消",
|
|
3288
|
+
sendEdit: "送出",
|
|
3289
|
+
editHint: "送出後會取代這則訊息之後的對話,已改動的檔案不會還原。",
|
|
3290
|
+
modelDefault: "預設",
|
|
3291
|
+
reasoning: "推理強度",
|
|
3292
|
+
effortAuto: "自動",
|
|
3293
|
+
efforts: {
|
|
3294
|
+
minimal: "最低",
|
|
3295
|
+
low: "低",
|
|
3296
|
+
medium: "中",
|
|
3297
|
+
high: "高",
|
|
3298
|
+
xhigh: "超高",
|
|
3299
|
+
max: "最高"
|
|
3300
|
+
},
|
|
3301
|
+
presenceEditing: "{provider} 正在編輯",
|
|
3302
|
+
presenceThinking: "思考中",
|
|
3303
|
+
presenceWaiting: "等待你的回覆"
|
|
2151
3304
|
}
|
|
2152
3305
|
};
|
|
2153
3306
|
//#endregion
|
|
2154
|
-
export { en as i, zhCN as n, ja as r, zhTW as t };
|
|
3307
|
+
export { en as a, es as i, zhCN as n, ja as r, zhTW as t };
|