From e027364c0e65c3af654308f8b0bf0acf3c59d7dc Mon Sep 17 00:00:00 2001 From: Chili Palmer Date: Thu, 16 Jul 2026 21:42:19 +0200 Subject: [PATCH] feat: vi-style / search in the TUI sidebar with tag:, category: and ISO-date filters (issue #31) --- lib/bds/tui.ex | 114 +++++++++++- lib/bds/ui/sidebar.ex | 43 ++++- priv/gettext/de/LC_MESSAGES/render.po | 2 +- priv/gettext/de/LC_MESSAGES/ui.po | 246 +++++++++++++------------- priv/gettext/en/LC_MESSAGES/render.po | 2 +- priv/gettext/en/LC_MESSAGES/ui.po | 246 +++++++++++++------------- priv/gettext/es/LC_MESSAGES/render.po | 2 +- priv/gettext/es/LC_MESSAGES/ui.po | 246 +++++++++++++------------- priv/gettext/fr/LC_MESSAGES/render.po | 2 +- priv/gettext/fr/LC_MESSAGES/ui.po | 246 +++++++++++++------------- priv/gettext/it/LC_MESSAGES/render.po | 2 +- priv/gettext/it/LC_MESSAGES/ui.po | 246 +++++++++++++------------- priv/gettext/render.pot | 2 +- priv/gettext/ui.pot | 246 +++++++++++++------------- specs/tui.allium | 13 ++ test/bds/tui_test.exs | 95 ++++++++++ test/bds/ui/sidebar_test.exs | 41 +++++ 17 files changed, 1044 insertions(+), 750 deletions(-) diff --git a/lib/bds/tui.ex b/lib/bds/tui.ex index cbfea67..21ee57f 100644 --- a/lib/bds/tui.ex +++ b/lib/bds/tui.ex @@ -13,7 +13,9 @@ defmodule BDS.TUI do `1..5` switch view (posts/media/templates/scripts/tags), `r` refresh, `p` projects overlay (switch the active project or open an existing blog folder by path, with bash-style tab completion — opening one - queues a full database rebuild), + queues a full database rebuild), `/` vi-style search that live-filters + the current view (plain text, `tag:x`, `category:x`, or an ISO date + `yyyy-mm-dd`; enter keeps the filter, esc clears it), `:` vi-style command prompt over the Blog-menu shell commands, `?` command help (commands whose report/apply UI is GUI-only are marked). Editor focus: text keys edit, `ctrl+s` save, `ctrl+p` publish, @@ -59,6 +61,8 @@ defmodule BDS.TUI do task_snapshot_fun: Keyword.get(opts, :task_snapshot_fun, &BDS.Tasks.status_snapshot/0), command: nil, projects: nil, + search: nil, + filters_by_view: %{}, report: nil, handled_task_ids: nil, task_polling: false, @@ -118,6 +122,10 @@ defmodule BDS.TUI do when projects != nil, do: projects_key(key, state) + def handle_event(%ExRatatui.Event.Key{kind: "press"} = key, %{search: search} = state) + when search != nil, + do: search_key(key, state) + def handle_event(%ExRatatui.Event.Key{code: "esc"}, %{image: image} = state) when image != nil, do: {:noreply, %{state | image: nil}} @@ -148,6 +156,9 @@ defmodule BDS.TUI do defp sidebar_key(%{code: ":"}, state), do: {:noreply, %{state | command: %{input: "", selected: 0, help?: false}}} + defp sidebar_key(%{code: "/"}, state), + do: {:noreply, %{state | search: %{input: Map.get(state.filters_by_view, state.view, "")}}} + defp sidebar_key(%{code: "p"}, state) do snapshot = Projects.shell_snapshot() selected = Enum.find_index(snapshot.projects, & &1.is_active) || 0 @@ -258,6 +269,86 @@ defmodule BDS.TUI do defp apply_report(state, _report), do: state + # ── Events: sidebar search (vi-style "/") ───────────────────────────────── + + # The prompt lives in the status line and filters the current view live + # on every keystroke. Esc clears the view's filter, enter keeps it (the + # active filter stays visible in the sidebar title). + defp search_key(%{code: "esc"}, state) do + state = %{state | search: nil, filters_by_view: Map.delete(state.filters_by_view, state.view)} + {:noreply, load_sidebar(state)} + end + + defp search_key(%{code: "enter"}, state), do: {:noreply, %{state | search: nil}} + + defp search_key(%{code: "backspace"}, %{search: search} = state), + do: {:noreply, apply_search(state, String.slice(search.input, 0..-2//1))} + + defp search_key(%{code: code, modifiers: []}, %{search: search} = state) + when byte_size(code) >= 1 do + if String.length(code) == 1 do + {:noreply, apply_search(state, search.input <> code)} + else + {:noreply, state} + end + end + + defp search_key(_key, state), do: {:noreply, state} + + defp apply_search(state, input) do + filters_by_view = + case String.trim(input) do + "" -> Map.delete(state.filters_by_view, state.view) + _some -> Map.put(state.filters_by_view, state.view, input) + end + + load_sidebar(%{ + state + | search: %{input: input}, + filters_by_view: filters_by_view, + selected: 0 + }) + end + + # "/" query syntax: plain words are a text search, "tag:x" and + # "category:x" filter exactly like the GUI filter chips, and an ISO date + # (yyyy-mm-dd) narrows to that day. Tokens combine with AND. + defp parse_search_query(query) do + initial = %{words: [], tags: [], categories: [], date: nil} + + parsed = + query + |> String.split() + |> Enum.reduce(initial, fn token, acc -> + cond do + String.starts_with?(token, "tag:") -> + add_filter_token(acc, :tags, String.replace_prefix(token, "tag:", "")) + + String.starts_with?(token, "category:") -> + add_filter_token(acc, :categories, String.replace_prefix(token, "category:", "")) + + match?({:ok, _date}, Date.from_iso8601(token)) -> + {:ok, date} = Date.from_iso8601(token) + %{acc | date: date} + + true -> + %{acc | words: acc.words ++ [token]} + end + end) + + %{ + search: if(parsed.words == [], do: nil, else: Enum.join(parsed.words, " ")), + tags: parsed.tags, + categories: parsed.categories, + year: parsed.date && parsed.date.year, + month: parsed.date && parsed.date.month, + day: parsed.date && parsed.date.day + } + end + + defp add_filter_token(acc, _key, ""), do: acc + defp add_filter_token(acc, key, value), do: Map.update!(acc, key, &(&1 ++ [value])) + # ── Events: projects overlay (switch / open existing) ──────────────────── defp projects_key(%{code: "esc"}, %{projects: %{mode: :open} = projects} = state), @@ -685,11 +776,18 @@ defmodule BDS.TUI do do: %Style{fg: :black, bg: :cyan}, else: %Style{modifiers: [:bold]} ), - block: %Block{title: view_label(state.view), borders: [:all]} + block: %Block{title: sidebar_title(state), borders: [:all]} }, rect} ] end + defp sidebar_title(state) do + case Map.get(state.filters_by_view, state.view) do + nil -> view_label(state.view) + query -> view_label(state.view) <> " /" <> query + end + end + # The List widget requires selected: nil when the collection is empty # and raises otherwise — clamp every dynamic list through this. defp list_selected([], _selected), do: nil @@ -761,6 +859,7 @@ defmodule BDS.TUI do defp status_widgets(state, rect) do text = cond do + state.search -> "/" <> state.search.input state.busy -> dgettext("ui", "Working…") state.status -> state.status true -> default_status(state) @@ -1021,7 +1120,7 @@ defmodule BDS.TUI do do: dgettext( "ui", - "enter open · n new post · 1-5 views · p projects · : commands (:? help) · r refresh · ctrl+q quit" + "enter open · n new post · 1-5 views · p projects · / search · : commands (:? help) · r refresh · ctrl+q quit" ) defp default_status(%{focus: :editor}), @@ -1034,7 +1133,7 @@ defmodule BDS.TUI do # ── Sidebar data ───────────────────────────────────────────────────────── defp load_sidebar(state) do - view = Sidebar.view(state.project_id, state.view) + view = Sidebar.view(state.project_id, state.view, search_filter_params(state)) items = flatten_items(view, state.view) selected = @@ -1046,6 +1145,13 @@ defmodule BDS.TUI do %{state | sidebar: view, items: items, selected: selected} end + defp search_filter_params(state) do + case Map.get(state.filters_by_view, state.view) do + nil -> %{} + query -> parse_search_query(query) + end + end + defp flatten_items(view, route) do sections = cond do diff --git a/lib/bds/ui/sidebar.ex b/lib/bds/ui/sidebar.ex index a10bb7d..8afb599 100644 --- a/lib/bds/ui/sidebar.ex +++ b/lib/bds/ui/sidebar.ex @@ -363,6 +363,7 @@ defmodule BDS.UI.Sidebar do |> maybe_where_search(filters.search) |> maybe_where_year(filters.year) |> maybe_where_month(filters.month) + |> maybe_where_day(filters.day) |> maybe_where_all_tags(filters.tags) |> maybe_where_all_categories(filters.categories) end @@ -424,6 +425,25 @@ defmodule BDS.UI.Sidebar do ) end + # Day-of-month filter used by the TUI's ISO-date search (yyyy-mm-dd); + # always combined with year and month by the caller. + defp maybe_where_day(query, nil), do: query + + defp maybe_where_day(query, day) do + day_str = String.pad_leading(to_string(day), 2, "0") + + where( + query, + [p], + fragment( + "strftime('%d', datetime(COALESCE(?, ?) / 1000, 'unixepoch')) = ?", + p.published_at, + p.updated_at, + ^day_str + ) + ) + end + defp maybe_where_all_tags(query, []), do: query defp maybe_where_all_tags(query, tags), do: where_all_in_json_array(query, tags, :tags) @@ -609,6 +629,7 @@ defmodule BDS.UI.Sidebar do |> maybe_where_media_search(filters.search) |> maybe_where_media_year(filters.year) |> maybe_where_media_month(filters.month) + |> maybe_where_media_day(filters.day) |> maybe_where_all_media_tags(filters.tags) end @@ -667,6 +688,22 @@ defmodule BDS.UI.Sidebar do ) end + defp maybe_where_media_day(query, nil), do: query + + defp maybe_where_media_day(query, day) do + day_str = String.pad_leading(to_string(day), 2, "0") + + where( + query, + [m], + fragment( + "strftime('%d', datetime(? / 1000, 'unixepoch')) = ?", + m.updated_at, + ^day_str + ) + ) + end + defp maybe_where_all_media_tags(query, []), do: query defp maybe_where_all_media_tags(query, tags), @@ -1028,6 +1065,7 @@ defmodule BDS.UI.Sidebar do search: normalize_string(BDS.MapUtils.attr(params, :search)), year: normalize_integer(BDS.MapUtils.attr(params, :year)), month: normalize_integer(BDS.MapUtils.attr(params, :month)), + day: normalize_integer(BDS.MapUtils.attr(params, :day)), tags: normalize_string_list(BDS.MapUtils.attr(params, :tags)), categories: normalize_string_list(BDS.MapUtils.attr(params, :categories)), display_limit: @@ -1045,6 +1083,7 @@ defmodule BDS.UI.Sidebar do search: nil, year: nil, month: nil, + day: nil, tags: [], categories: [], display_limit: @default_page_size @@ -1052,8 +1091,8 @@ defmodule BDS.UI.Sidebar do end defp filter_active?(filters) do - present?(filters.search) or not is_nil(filters.year) or filters.tags != [] or - filters.categories != [] + present?(filters.search) or not is_nil(filters.year) or not is_nil(filters.day) or + filters.tags != [] or filters.categories != [] end defp post_search_blob(post) do diff --git a/priv/gettext/de/LC_MESSAGES/render.po b/priv/gettext/de/LC_MESSAGES/render.po index 8b117fb..3aa4930 100644 --- a/priv/gettext/de/LC_MESSAGES/render.po +++ b/priv/gettext/de/LC_MESSAGES/render.po @@ -1,6 +1,6 @@ #: lib/bds/rendering/labels.ex:18 #: lib/bds/ui/sidebar.ex:288 -#: lib/bds/ui/sidebar.ex:566 +#: lib/bds/ui/sidebar.ex:586 #, elixir-autogen, elixir-format msgid "Archive" msgstr "Archiv" diff --git a/priv/gettext/de/LC_MESSAGES/ui.po b/priv/gettext/de/LC_MESSAGES/ui.po index 244d9f8..608d74a 100644 --- a/priv/gettext/de/LC_MESSAGES/ui.po +++ b/priv/gettext/de/LC_MESSAGES/ui.po @@ -59,7 +59,7 @@ msgid "--" msgstr "--" #: lib/bds/desktop/shell_live/settings_editor_html/settings_editor.html.heex:220 -#: lib/bds/ui/sidebar.ex:765 +#: lib/bds/ui/sidebar.ex:802 #, elixir-autogen, elixir-format msgid "AI" msgstr "KI" @@ -81,11 +81,11 @@ msgstr "KI-Einstellungen" #: lib/bds/desktop/shell_live/overlay_manager.ex:72 #: lib/bds/desktop/shell_live/post_editor.ex:920 #: lib/bds/desktop/shell_live/post_editor_html/post_editor.html.heex:43 -#: lib/bds/tui.ex:564 -#: lib/bds/tui.ex:567 -#: lib/bds/tui.ex:570 -#: lib/bds/tui.ex:578 -#: lib/bds/tui.ex:1203 +#: lib/bds/tui.ex:655 +#: lib/bds/tui.ex:658 +#: lib/bds/tui.ex:661 +#: lib/bds/tui.ex:669 +#: lib/bds/tui.ex:1309 #, elixir-autogen, elixir-format msgid "AI Suggestions" msgstr "KI-Vorschlaege" @@ -527,7 +527,7 @@ msgid "Clear categories" msgstr "Kategorien löschen" #: lib/bds/ui/sidebar.ex:293 -#: lib/bds/ui/sidebar.ex:569 +#: lib/bds/ui/sidebar.ex:589 #, elixir-autogen, elixir-format msgid "Clear filters" msgstr "Filter löschen" @@ -539,7 +539,7 @@ msgid "Clear mapping" msgstr "Zuordnung entfernen" #: lib/bds/ui/sidebar.ex:291 -#: lib/bds/ui/sidebar.ex:568 +#: lib/bds/ui/sidebar.ex:588 #, elixir-autogen, elixir-format msgid "Clear tags" msgstr "Tags löschen" @@ -572,7 +572,7 @@ msgid "Collapse unchanged diff hunks" msgstr "Unveränderte Diff-Blöcke einklappen" #: lib/bds/desktop/shell_live/overlay_manager.ex:422 -#: lib/bds/tui.ex:1299 +#: lib/bds/tui.ex:1405 #, elixir-autogen, elixir-format msgid "Command completed" msgstr "Befehl abgeschlossen" @@ -590,8 +590,8 @@ msgstr "Bestaetigen" #: lib/bds/desktop/shell_live/post_editor_html/post_editor.html.heex:375 #: lib/bds/desktop/shell_live/script_editor_html/script_editor.html.heex:34 #: lib/bds/desktop/shell_live/template_editor_html/template_editor.html.heex:32 -#: lib/bds/tui.ex:747 -#: lib/bds/ui/sidebar.ex:764 +#: lib/bds/tui.ex:845 +#: lib/bds/ui/sidebar.ex:801 #, elixir-autogen, elixir-format msgid "Content" msgstr "Inhalte" @@ -632,7 +632,7 @@ msgid "Create" msgstr "Erstellen" #: lib/bds/desktop/shell_live/tags_editor_html/tags_editor.html.heex:36 -#: lib/bds/ui/sidebar.ex:749 +#: lib/bds/ui/sidebar.ex:786 #, elixir-autogen, elixir-format msgid "Create / Edit" msgstr "Erstellen / Bearbeiten" @@ -678,7 +678,7 @@ msgstr "Dunkel" msgid "Dashboard" msgstr "Instrumententafel" -#: lib/bds/ui/sidebar.ex:778 +#: lib/bds/ui/sidebar.ex:815 #, elixir-autogen, elixir-format msgid "Data" msgstr "Daten" @@ -913,7 +913,7 @@ msgstr "Übersetzung bearbeiten" #: lib/bds/desktop/shell_live/index.html.heex:513 #: lib/bds/desktop/shell_live/settings_editor_html/settings_editor.html.heex:114 -#: lib/bds/ui/sidebar.ex:763 +#: lib/bds/ui/sidebar.ex:800 #, elixir-autogen, elixir-format msgid "Editor" msgstr "Editor" @@ -1030,7 +1030,7 @@ msgid "Filename" msgstr "Dateiname" #: lib/bds/desktop/menu_bar.ex:254 -#: lib/bds/tui.ex:1263 +#: lib/bds/tui.ex:1369 #, elixir-autogen, elixir-format msgid "Fill Missing Translations" msgstr "Fehlende Übersetzungen ergänzen" @@ -1041,7 +1041,7 @@ msgid "Find" msgstr "Suchen" #: lib/bds/desktop/menu_bar.ex:255 -#: lib/bds/tui.ex:1266 +#: lib/bds/tui.ex:1372 #, elixir-autogen, elixir-format msgid "Find Duplicate Posts" msgstr "Doppelte Beiträge finden" @@ -1068,14 +1068,14 @@ msgid "Gallery" msgstr "Galerie" #: lib/bds/desktop/menu_bar.ex:256 -#: lib/bds/tui.ex:1247 +#: lib/bds/tui.ex:1353 #, elixir-autogen, elixir-format msgid "Generate Site" msgstr "Website generieren" #: lib/bds/desktop/shell_live.ex:792 #: lib/bds/desktop/shell_live/socket_state.ex:109 -#: lib/bds/ui/sidebar.ex:789 +#: lib/bds/ui/sidebar.ex:826 #, elixir-autogen, elixir-format msgid "Git" msgstr "Git" @@ -1126,7 +1126,7 @@ msgstr "Leerlauf" msgid "Ignore" msgstr "Ignorieren" -#: lib/bds/ui/sidebar.ex:559 +#: lib/bds/ui/sidebar.ex:579 #, elixir-autogen, elixir-format msgid "Images and files" msgstr "Bilder und Dateien" @@ -1332,7 +1332,7 @@ msgstr "Mehr laden" #: lib/bds/desktop/shell_live/settings_editor/mcp_config.ex:50 #: lib/bds/desktop/shell_live/settings_editor/mcp_config.ex:57 #: lib/bds/desktop/shell_live/settings_editor_html/settings_editor.html.heex:351 -#: lib/bds/ui/sidebar.ex:779 +#: lib/bds/ui/sidebar.ex:816 #, elixir-autogen, elixir-format msgid "MCP" msgstr "MCP" @@ -1389,12 +1389,12 @@ msgstr "Maximale Beiträge pro Seite" #: lib/bds/desktop/shell_live/misc_editor.ex:762 #: lib/bds/desktop/shell_live/sidebar_components.ex:654 #: lib/bds/desktop/shell_live/sidebar_delete.ex:175 -#: lib/bds/tui.ex:1117 -#: lib/bds/tui.ex:1328 -#: lib/bds/tui.ex:1331 +#: lib/bds/tui.ex:1223 +#: lib/bds/tui.ex:1434 +#: lib/bds/tui.ex:1437 #: lib/bds/ui/registry.ex:30 #: lib/bds/ui/registry.ex:100 -#: lib/bds/ui/sidebar.ex:558 +#: lib/bds/ui/sidebar.ex:578 #, elixir-autogen, elixir-format msgid "Media" msgstr "Medien" @@ -1420,7 +1420,7 @@ msgid "Merge" msgstr "Zusammenführen" #: lib/bds/desktop/shell_live/tags_editor_html/tags_editor.html.heex:78 -#: lib/bds/ui/sidebar.ex:750 +#: lib/bds/ui/sidebar.ex:787 #, elixir-autogen, elixir-format msgid "Merge Tags" msgstr "Tags zusammenführen" @@ -1434,11 +1434,11 @@ msgstr "Metadaten" #: lib/bds/desktop/shell_live/misc_editor.ex:214 #: lib/bds/desktop/shell_live/misc_editor.ex:226 #: lib/bds/desktop/shell_live/misc_editor.ex:448 -#: lib/bds/tui.ex:218 -#: lib/bds/tui.ex:224 +#: lib/bds/tui.ex:229 #: lib/bds/tui.ex:235 -#: lib/bds/tui.ex:935 -#: lib/bds/tui.ex:1244 +#: lib/bds/tui.ex:246 +#: lib/bds/tui.ex:1034 +#: lib/bds/tui.ex:1350 #: lib/bds/ui/registry.ex:111 #, elixir-autogen, elixir-format msgid "Metadata Diff" @@ -1484,7 +1484,7 @@ msgstr "Neue Seite" #: lib/bds/desktop/menu_bar.ex:214 #: lib/bds/desktop/shell_live/sidebar_create.ex:41 -#: lib/bds/tui.ex:175 +#: lib/bds/tui.ex:186 #, elixir-autogen, elixir-format msgid "New Post" msgstr "Neuer Beitrag" @@ -1544,8 +1544,8 @@ msgstr "Noch keine Git-Historie" #: lib/bds/desktop/shell_live/sidebar_components.ex:381 #: lib/bds/desktop/shell_live/sidebar_components.ex:455 #: lib/bds/ui/sidebar.ex:202 -#: lib/bds/ui/sidebar.ex:792 -#: lib/bds/ui/sidebar.ex:899 +#: lib/bds/ui/sidebar.ex:829 +#: lib/bds/ui/sidebar.ex:936 #, elixir-autogen, elixir-format msgid "No items" msgstr "Keine Einträge" @@ -1570,8 +1570,8 @@ msgstr "Keine passenden Seiten gefunden." msgid "No matching posts" msgstr "Keine passenden Beiträge" -#: lib/bds/ui/sidebar.ex:561 -#: lib/bds/ui/sidebar.ex:572 +#: lib/bds/ui/sidebar.ex:581 +#: lib/bds/ui/sidebar.ex:592 #, elixir-autogen, elixir-format msgid "No media files" msgstr "Keine Mediendateien" @@ -1762,8 +1762,8 @@ msgid "Open Data Folder" msgstr "Datenordner öffnen" #: lib/bds/desktop/shell_live/index.html.heex:644 -#: lib/bds/tui.ex:416 -#: lib/bds/tui.ex:421 +#: lib/bds/tui.ex:507 +#: lib/bds/tui.ex:512 #, elixir-autogen, elixir-format msgid "Open Existing Blog" msgstr "Bestehenden Blog öffnen" @@ -1775,7 +1775,7 @@ msgid "Open Settings" msgstr "Einstellungen öffnen" #: lib/bds/desktop/menu_bar.ex:217 -#: lib/bds/tui.ex:1268 +#: lib/bds/tui.ex:1374 #, elixir-autogen, elixir-format msgid "Open in Browser" msgstr "Im Browser öffnen" @@ -1923,8 +1923,8 @@ msgstr "Beitrag gespeichert" #: lib/bds/desktop/menu_bar.ex:233 #: lib/bds/desktop/shell_live/misc_editor.ex:664 #: lib/bds/desktop/shell_live/misc_editor.ex:761 -#: lib/bds/tui.ex:1116 -#: lib/bds/tui.ex:1127 +#: lib/bds/tui.ex:1222 +#: lib/bds/tui.ex:1233 #: lib/bds/ui/registry.ex:14 #: lib/bds/ui/sidebar.ex:271 #, elixir-autogen, elixir-format @@ -1966,7 +1966,7 @@ msgstr "Vorschau nicht verfügbar" #: lib/bds/desktop/shell_live/misc_editor.ex:739 #: lib/bds/desktop/shell_live/misc_editor.ex:765 #: lib/bds/desktop/shell_live/settings_editor_html/settings_editor.html.heex:27 -#: lib/bds/ui/sidebar.ex:762 +#: lib/bds/ui/sidebar.ex:799 #, elixir-autogen, elixir-format msgid "Project" msgstr "Projekt" @@ -1976,15 +1976,15 @@ msgstr "Projekt" msgid "Project Name" msgstr "Projektname" -#: lib/bds/ui/sidebar.ex:759 +#: lib/bds/ui/sidebar.ex:796 #, elixir-autogen, elixir-format msgid "Project and publishing" msgstr "Projekt und Veröffentlichung" #: lib/bds/desktop/shell_live/chat_surface.ex:15 #: lib/bds/desktop/shell_live/index.html.heex:623 -#: lib/bds/tui.ex:329 -#: lib/bds/tui.ex:334 +#: lib/bds/tui.ex:420 +#: lib/bds/tui.ex:425 #, elixir-autogen, elixir-format msgid "Projects" msgstr "Projekte" @@ -2028,7 +2028,7 @@ msgstr "Veröffentlichte Übersetzung hat Inhalt in der DB statt im Dateisystem" #: lib/bds/desktop/shell_live/settings_editor/publishing_settings.ex:40 #: lib/bds/desktop/shell_live/settings_editor/publishing_settings.ex:57 #: lib/bds/desktop/shell_live/settings_editor_html/settings_editor.html.heex:338 -#: lib/bds/ui/sidebar.ex:774 +#: lib/bds/ui/sidebar.ex:811 #, elixir-autogen, elixir-format msgid "Publishing" msgstr "Veröffentlichung" @@ -2050,15 +2050,15 @@ msgid "Ready to import:" msgstr "Bereit zum Import:" #: lib/bds/desktop/menu_bar.ex:248 -#: lib/bds/tui.ex:413 -#: lib/bds/tui.ex:1248 +#: lib/bds/tui.ex:504 +#: lib/bds/tui.ex:1354 #, elixir-autogen, elixir-format msgid "Rebuild Database" msgstr "Datenbank neu aufbauen" #: lib/bds/desktop/menu_bar.ex:250 #: lib/bds/desktop/shell_live/settings_editor_html/settings_editor.html.heex:381 -#: lib/bds/tui.ex:1252 +#: lib/bds/tui.ex:1358 #, elixir-autogen, elixir-format msgid "Rebuild Embedding Index" msgstr "Embedding-Index neu aufbauen" @@ -2116,7 +2116,7 @@ msgid "Refresh Translation" msgstr "Übersetzung aktualisieren" #: lib/bds/desktop/menu_bar.ex:252 -#: lib/bds/tui.ex:1255 +#: lib/bds/tui.ex:1361 #, elixir-autogen, elixir-format msgid "Regenerate Calendar" msgstr "Kalender neu erzeugen" @@ -2127,7 +2127,7 @@ msgid "Regenerate Missing Thumbnails" msgstr "Fehlende Vorschaubilder neu erzeugen" #: lib/bds/desktop/menu_bar.ex:249 -#: lib/bds/tui.ex:1249 +#: lib/bds/tui.ex:1355 #, elixir-autogen, elixir-format msgid "Reindex Text" msgstr "Text neu indizieren" @@ -2313,7 +2313,7 @@ msgstr "Scripting-Funktionen werden in der Neufassung auf Anwendungsebene konfig #: lib/bds/desktop/shell_live/script_editor.ex:216 #: lib/bds/desktop/shell_live/script_editor.ex:219 #: lib/bds/desktop/shell_live/script_editor.ex:234 -#: lib/bds/tui.ex:1119 +#: lib/bds/tui.ex:1225 #: lib/bds/ui/registry.ex:38 #: lib/bds/ui/sidebar.ex:63 #: lib/bds/ui/sidebar.ex:115 @@ -2328,7 +2328,7 @@ msgid "Search" msgstr "Suchen" #: lib/bds/desktop/shell_live/overlay_html/shell_overlay.html.heex:99 -#: lib/bds/ui/sidebar.ex:564 +#: lib/bds/ui/sidebar.ex:584 #, elixir-autogen, elixir-format msgid "Search media..." msgstr "Medien durchsuchen..." @@ -2420,7 +2420,7 @@ msgstr "Semantische Ähnlichkeit" #: lib/bds/desktop/shell_live/settings_editor_html/settings_editor.html.heex:11 #: lib/bds/ui/registry.ex:86 #: lib/bds/ui/registry.ex:101 -#: lib/bds/ui/sidebar.ex:758 +#: lib/bds/ui/sidebar.ex:795 #, elixir-autogen, elixir-format msgid "Settings" msgstr "Einstellungen" @@ -2441,9 +2441,9 @@ msgid "Site" msgstr "Website" #: lib/bds/desktop/shell_live/misc_editor.ex:412 -#: lib/bds/tui.ex:251 -#: lib/bds/tui.ex:253 -#: lib/bds/tui.ex:940 +#: lib/bds/tui.ex:262 +#: lib/bds/tui.ex:264 +#: lib/bds/tui.ex:1039 #: lib/bds/ui/registry.ex:125 #, elixir-autogen, elixir-format msgid "Site Validation" @@ -2507,7 +2507,7 @@ msgstr "Stopp" #: lib/bds/desktop/shell_live/settings_editor/style_editor.ex:76 #: lib/bds/desktop/shell_live/settings_editor_html/style_editor.html.heex:3 #: lib/bds/ui/registry.ex:102 -#: lib/bds/ui/sidebar.ex:780 +#: lib/bds/ui/sidebar.ex:817 #, elixir-autogen, elixir-format msgid "Style" msgstr "Stil" @@ -2538,12 +2538,12 @@ msgid "System Prompt" msgstr "System-Prompt" #: lib/bds/desktop/shell_live/tags_editor_html/tags_editor.html.heex:16 -#: lib/bds/ui/sidebar.ex:748 +#: lib/bds/ui/sidebar.ex:785 #, elixir-autogen, elixir-format msgid "Tag Cloud" msgstr "Tag-Wolke" -#: lib/bds/ui/sidebar.ex:745 +#: lib/bds/ui/sidebar.ex:782 #, elixir-autogen, elixir-format msgid "Tag management" msgstr "Tag-Verwaltung" @@ -2564,25 +2564,25 @@ msgstr "Schlagwortname" #: lib/bds/desktop/shell_live/tags_editor.ex:222 #: lib/bds/desktop/shell_live/tags_editor.ex:253 #: lib/bds/desktop/shell_live/tags_editor_html/tags_editor.html.heex:11 -#: lib/bds/tui.ex:1120 +#: lib/bds/tui.ex:1226 #: lib/bds/ui/registry.ex:54 #: lib/bds/ui/registry.ex:103 #: lib/bds/ui/sidebar.ex:289 -#: lib/bds/ui/sidebar.ex:567 -#: lib/bds/ui/sidebar.ex:744 +#: lib/bds/ui/sidebar.ex:587 +#: lib/bds/ui/sidebar.ex:781 #, elixir-autogen, elixir-format msgid "Tags" msgstr "Tags" #: lib/bds/desktop/shell_live.ex:786 #: lib/bds/desktop/shell_live/panel_renderer.ex:54 -#: lib/bds/tui.ex:594 +#: lib/bds/tui.ex:685 #, elixir-autogen, elixir-format msgid "Tasks" msgstr "Aufgaben" #: lib/bds/desktop/shell_live/settings_editor_html/settings_editor.html.heex:321 -#: lib/bds/ui/sidebar.ex:768 +#: lib/bds/ui/sidebar.ex:805 #, elixir-autogen, elixir-format msgid "Technology" msgstr "Technik" @@ -2621,7 +2621,7 @@ msgstr "Template-Syntax ist gültig" #: lib/bds/desktop/shell_live/template_editor.ex:171 #: lib/bds/desktop/shell_live/template_editor.ex:176 #: lib/bds/desktop/shell_live/template_editor.ex:191 -#: lib/bds/tui.ex:1118 +#: lib/bds/tui.ex:1224 #: lib/bds/ui/registry.ex:46 #: lib/bds/ui/sidebar.ex:71 #: lib/bds/ui/sidebar.ex:122 @@ -2682,7 +2682,7 @@ msgid "Toggle Dev Tools" msgstr "Entwicklertools umschalten" #: lib/bds/ui/sidebar.ex:287 -#: lib/bds/ui/sidebar.ex:565 +#: lib/bds/ui/sidebar.ex:585 #, elixir-autogen, elixir-format msgid "Toggle Filters" msgstr "Filter umschalten" @@ -2819,7 +2819,7 @@ msgstr "Nicht gespeichert" #: lib/bds/desktop/shell_live/import_editor.ex:871 #: lib/bds/ui/post_editor/metadata.ex:166 -#: lib/bds/ui/sidebar.ex:1108 +#: lib/bds/ui/sidebar.ex:1147 #, elixir-autogen, elixir-format msgid "Untitled" msgstr "Ohne Titel" @@ -2844,7 +2844,7 @@ msgid "Updated URLs" msgstr "Aktualisierte URLs" #: lib/bds/desktop/menu_bar.ex:259 -#: lib/bds/tui.ex:1267 +#: lib/bds/tui.ex:1373 #, elixir-autogen, elixir-format msgid "Upload Site" msgstr "Website hochladen" @@ -2872,13 +2872,13 @@ msgid "Validate" msgstr "Validieren" #: lib/bds/desktop/menu_bar.ex:258 -#: lib/bds/tui.ex:1245 +#: lib/bds/tui.ex:1351 #, elixir-autogen, elixir-format msgid "Validate Site" msgstr "Website validieren" #: lib/bds/desktop/menu_bar.ex:253 -#: lib/bds/tui.ex:1258 +#: lib/bds/tui.ex:1364 #, elixir-autogen, elixir-format msgid "Validate Translations" msgstr "Übersetzungen validieren" @@ -2916,7 +2916,7 @@ msgid "Working tree" msgstr "Arbeitsverzeichnis" #: lib/bds/desktop/shell_live/tab_helpers.ex:191 -#: lib/bds/ui/sidebar.ex:790 +#: lib/bds/ui/sidebar.ex:827 #, elixir-autogen, elixir-format msgid "Working tree and history" msgstr "Arbeitsverzeichnis und Verlauf" @@ -3093,13 +3093,13 @@ msgid "posts" msgstr "Beiträge" #: lib/bds/ui/sidebar.ex:294 -#: lib/bds/ui/sidebar.ex:570 +#: lib/bds/ui/sidebar.ex:590 #, elixir-autogen, elixir-format msgid "results" msgstr "Ergebnisse" #: lib/bds/ui/sidebar.ex:295 -#: lib/bds/ui/sidebar.ex:571 +#: lib/bds/ui/sidebar.ex:591 #, elixir-autogen, elixir-format msgid "results for" msgstr "Ergebnisse für" @@ -3460,28 +3460,28 @@ msgstr "Synchronisiert" msgid "This project is not a Git repository yet." msgstr "Dieses Projekt ist noch kein Git-Repository." -#: lib/bds/ui/sidebar.ex:872 +#: lib/bds/ui/sidebar.ex:909 #, elixir-autogen, elixir-format msgid "added" msgstr "hinzugefügt" -#: lib/bds/ui/sidebar.ex:873 +#: lib/bds/ui/sidebar.ex:910 #, elixir-autogen, elixir-format msgid "deleted" msgstr "gelöscht" -#: lib/bds/ui/sidebar.ex:874 -#: lib/bds/ui/sidebar.ex:877 +#: lib/bds/ui/sidebar.ex:911 +#: lib/bds/ui/sidebar.ex:914 #, elixir-autogen, elixir-format msgid "modified" msgstr "geändert" -#: lib/bds/ui/sidebar.ex:875 +#: lib/bds/ui/sidebar.ex:912 #, elixir-autogen, elixir-format msgid "renamed" msgstr "umbenannt" -#: lib/bds/ui/sidebar.ex:876 +#: lib/bds/ui/sidebar.ex:913 #, elixir-autogen, elixir-format msgid "untracked" msgstr "nicht verfolgt" @@ -3543,7 +3543,7 @@ msgid "Suggested tags" msgstr "Vorgeschlagene Tags" #: lib/bds/desktop/menu_bar.ex:257 -#: lib/bds/tui.ex:1246 +#: lib/bds/tui.ex:1352 #, elixir-autogen, elixir-format msgid "Force Render Site" msgstr "Website vollständig neu generieren" @@ -3640,82 +3640,82 @@ msgstr "OK" msgid "The endpoint returned no models. You can still type a model name manually." msgstr "Der Endpunkt hat keine Modelle zurückgegeben. Sie können einen Modellnamen weiterhin manuell eingeben." -#: lib/bds/tui.ex:1204 +#: lib/bds/tui.ex:1310 #, elixir-autogen, elixir-format msgid "AI is unavailable in airplane mode without a local endpoint." msgstr "KI ist im Flugmodus ohne lokalen Endpunkt nicht verfügbar." -#: lib/bds/tui.ex:1331 +#: lib/bds/tui.ex:1437 #, elixir-autogen, elixir-format msgid "Could not load this file." msgstr "Diese Datei konnte nicht geladen werden." -#: lib/bds/tui.ex:183 +#: lib/bds/tui.ex:194 #, elixir-autogen, elixir-format msgid "Editing this item is not available in the terminal UI yet." msgstr "Die Bearbeitung dieses Eintrags ist in der Terminal-Oberfläche noch nicht verfügbar." -#: lib/bds/tui.ex:567 +#: lib/bds/tui.ex:658 #, elixir-autogen, elixir-format msgid "No suggestions returned." msgstr "Keine Vorschläge erhalten." -#: lib/bds/tui.ex:1328 +#: lib/bds/tui.ex:1434 #, elixir-autogen, elixir-format msgid "Only images can be previewed." msgstr "Nur Bilder können in der Vorschau angezeigt werden." -#: lib/bds/tui.ex:1127 +#: lib/bds/tui.ex:1233 #, elixir-autogen, elixir-format msgid "Post not found." msgstr "Beitrag nicht gefunden." -#: lib/bds/tui.ex:702 +#: lib/bds/tui.ex:800 #, elixir-autogen, elixir-format msgid "Press enter to preview %{name}." msgstr "Drücken Sie Enter, um %{name} in der Vorschau anzuzeigen." -#: lib/bds/tui.ex:1174 +#: lib/bds/tui.ex:1280 #, elixir-autogen, elixir-format msgid "Published." msgstr "Veröffentlicht." -#: lib/bds/tui.ex:1190 +#: lib/bds/tui.ex:1296 #, elixir-autogen, elixir-format msgid "Save before switching languages." msgstr "Speichern Sie vor dem Sprachwechsel." -#: lib/bds/tui.ex:1175 +#: lib/bds/tui.ex:1281 #, elixir-autogen, elixir-format msgid "Saved." msgstr "Gespeichert." -#: lib/bds/tui.ex:705 +#: lib/bds/tui.ex:803 #, elixir-autogen, elixir-format msgid "Select an entry and press enter to open it." msgstr "Wählen Sie einen Eintrag aus und öffnen Sie ihn mit Enter." -#: lib/bds/tui.ex:564 +#: lib/bds/tui.ex:655 #, elixir-autogen, elixir-format msgid "Suggestions applied." msgstr "Vorschläge übernommen." -#: lib/bds/tui.ex:717 +#: lib/bds/tui.ex:815 #, elixir-autogen, elixir-format msgid "Title (ctrl+t to edit)" msgstr "Titel (Strg+T zum Bearbeiten)" -#: lib/bds/tui.ex:716 +#: lib/bds/tui.ex:814 #, elixir-autogen, elixir-format msgid "Title (editing — enter to confirm)" msgstr "Titel (Bearbeitung — Enter zum Bestätigen)" -#: lib/bds/tui.ex:764 +#: lib/bds/tui.ex:863 #, elixir-autogen, elixir-format msgid "Working…" msgstr "Wird bearbeitet…" -#: lib/bds/tui.ex:786 +#: lib/bds/tui.ex:885 #, elixir-autogen, elixir-format msgid "esc to close" msgstr "Esc zum Schließen" @@ -3752,122 +3752,122 @@ msgstr "Serveradresse (user@host oder user@host:port), Public-Key-Authentifizier msgid "Use the form user@host or user@host:port." msgstr "Verwenden Sie das Format user@host oder user@host:port." -#: lib/bds/tui.ex:736 +#: lib/bds/tui.ex:834 #, elixir-autogen, elixir-format msgid "Preview (ctrl+e to edit)" msgstr "Vorschau (ctrl+e zum Bearbeiten)" -#: lib/bds/tui.ex:1029 +#: lib/bds/tui.ex:1128 #, elixir-autogen, elixir-format msgid "ctrl+s save · ctrl+p publish · ctrl+e preview · ctrl+t title · ctrl+l language · ctrl+g AI · esc back" msgstr "Strg+S Speichern · Strg+P Veröffentlichen · Strg+E Vorschau · Strg+T Titel · Strg+L Sprache · Strg+G KI · Esc Zurück" -#: lib/bds/tui.ex:594 +#: lib/bds/tui.ex:685 #, elixir-autogen, elixir-format msgid "All tasks finished." msgstr "Alle Aufgaben abgeschlossen." -#: lib/bds/tui.ex:812 +#: lib/bds/tui.ex:911 #, elixir-autogen, elixir-format msgid "Commands — esc to close" msgstr "Befehle — Esc zum Schließen" -#: lib/bds/tui.ex:438 +#: lib/bds/tui.ex:529 #, elixir-autogen, elixir-format msgid "Unknown command." msgstr "Unbekannter Befehl." -#: lib/bds/tui.ex:802 +#: lib/bds/tui.ex:901 #, elixir-autogen, elixir-format msgid "[report/apply in GUI]" msgstr "[Bericht/Anwenden in der GUI]" -#: lib/bds/tui.ex:951 +#: lib/bds/tui.ex:1050 #, elixir-autogen, elixir-format msgid "%{diffs} differences · %{orphans} orphan files" msgstr "%{diffs} Unterschiede · %{orphans} verwaiste Dateien" -#: lib/bds/tui.ex:983 +#: lib/bds/tui.ex:1082 #, elixir-autogen, elixir-format msgid "Expected %{expected} · Existing %{existing}" msgstr "Erwartet %{expected} · Vorhanden %{existing}" -#: lib/bds/tui.ex:1000 +#: lib/bds/tui.ex:1099 #, elixir-autogen, elixir-format msgid "Extra files (will be removed):" msgstr "Überzählige Dateien (werden entfernt):" -#: lib/bds/tui.ex:996 +#: lib/bds/tui.ex:1095 #, elixir-autogen, elixir-format msgid "Missing pages (will be rendered):" msgstr "Fehlende Seiten (werden gerendert):" -#: lib/bds/tui.ex:251 +#: lib/bds/tui.ex:262 #, elixir-autogen, elixir-format msgid "Nothing to apply." msgstr "Nichts anzuwenden." -#: lib/bds/tui.ex:218 +#: lib/bds/tui.ex:229 #, elixir-autogen, elixir-format msgid "Nothing to repair." msgstr "Nichts zu reparieren." -#: lib/bds/tui.ex:974 +#: lib/bds/tui.ex:1073 #, elixir-autogen, elixir-format msgid "Orphan files (not in database):" msgstr "Verwaiste Dateien (nicht in der Datenbank):" -#: lib/bds/tui.ex:990 +#: lib/bds/tui.ex:1089 #, elixir-autogen, elixir-format msgid "Sitemap changed." msgstr "Sitemap geändert." -#: lib/bds/tui.ex:1004 +#: lib/bds/tui.ex:1103 #, elixir-autogen, elixir-format msgid "Updated posts (will be re-rendered):" msgstr "Aktualisierte Beiträge (werden neu gerendert):" -#: lib/bds/tui.ex:941 +#: lib/bds/tui.ex:1040 #, elixir-autogen, elixir-format msgid "enter apply changes · esc close" msgstr "Enter Änderungen anwenden · Esc Schließen" -#: lib/bds/tui.ex:936 +#: lib/bds/tui.ex:1035 #, elixir-autogen, elixir-format msgid "enter repair all from files · esc close" msgstr "Enter alles aus Dateien reparieren · Esc Schließen" -#: lib/bds/tui.ex:403 +#: lib/bds/tui.ex:494 #, elixir-autogen, elixir-format msgid "Imported Blog" msgstr "Importierter Blog" -#: lib/bds/tui.ex:422 +#: lib/bds/tui.ex:513 #, elixir-autogen, elixir-format msgid "Not a folder: %{path}" msgstr "Kein Ordner: %{path}" -#: lib/bds/tui.ex:878 +#: lib/bds/tui.ex:977 #, elixir-autogen, elixir-format msgid "Projects — enter switch · o open existing · esc close" msgstr "Projekte — Enter Wechseln · O Bestehenden öffnen · Esc Schließen" -#: lib/bds/tui.ex:330 +#: lib/bds/tui.ex:421 #, elixir-autogen, elixir-format msgid "Switched to %{name}." msgstr "Zu %{name} gewechselt." -#: lib/bds/tui.ex:1022 -#, elixir-autogen, elixir-format -msgid "enter open · n new post · 1-5 views · p projects · : commands (:? help) · r refresh · ctrl+q quit" -msgstr "Enter Öffnen · N Neuer Beitrag · 1-5 Ansichten · P Projekte · : Befehle (:? Hilfe) · R Aktualisieren · Strg+Q Beenden" - -#: lib/bds/tui.ex:906 +#: lib/bds/tui.ex:1005 #, elixir-autogen, elixir-format msgid "Matching folders" msgstr "Passende Ordner" -#: lib/bds/tui.ex:844 +#: lib/bds/tui.ex:943 #, elixir-autogen, elixir-format msgid "Open Existing Blog — type a folder path · tab complete · enter open · esc back" msgstr "Bestehenden Blog öffnen — Ordnerpfad eingeben · Tab Vervollständigen · Enter Öffnen · Esc Zurück" + +#: lib/bds/tui.ex:1121 +#, elixir-autogen, elixir-format +msgid "enter open · n new post · 1-5 views · p projects · / search · : commands (:? help) · r refresh · ctrl+q quit" +msgstr "Enter Öffnen · N Neuer Beitrag · 1-5 Ansichten · P Projekte · / Suche · : Befehle (:? Hilfe) · R Aktualisieren · Strg+Q Beenden" diff --git a/priv/gettext/en/LC_MESSAGES/render.po b/priv/gettext/en/LC_MESSAGES/render.po index 93d9695..d88ae2f 100644 --- a/priv/gettext/en/LC_MESSAGES/render.po +++ b/priv/gettext/en/LC_MESSAGES/render.po @@ -1,6 +1,6 @@ #: lib/bds/rendering/labels.ex:18 #: lib/bds/ui/sidebar.ex:288 -#: lib/bds/ui/sidebar.ex:566 +#: lib/bds/ui/sidebar.ex:586 #, elixir-autogen, elixir-format msgid "Archive" msgstr "" diff --git a/priv/gettext/en/LC_MESSAGES/ui.po b/priv/gettext/en/LC_MESSAGES/ui.po index b43e673..5c83c74 100644 --- a/priv/gettext/en/LC_MESSAGES/ui.po +++ b/priv/gettext/en/LC_MESSAGES/ui.po @@ -59,7 +59,7 @@ msgid "--" msgstr "" #: lib/bds/desktop/shell_live/settings_editor_html/settings_editor.html.heex:220 -#: lib/bds/ui/sidebar.ex:765 +#: lib/bds/ui/sidebar.ex:802 #, elixir-autogen, elixir-format msgid "AI" msgstr "" @@ -81,11 +81,11 @@ msgstr "" #: lib/bds/desktop/shell_live/overlay_manager.ex:72 #: lib/bds/desktop/shell_live/post_editor.ex:920 #: lib/bds/desktop/shell_live/post_editor_html/post_editor.html.heex:43 -#: lib/bds/tui.ex:564 -#: lib/bds/tui.ex:567 -#: lib/bds/tui.ex:570 -#: lib/bds/tui.ex:578 -#: lib/bds/tui.ex:1203 +#: lib/bds/tui.ex:655 +#: lib/bds/tui.ex:658 +#: lib/bds/tui.ex:661 +#: lib/bds/tui.ex:669 +#: lib/bds/tui.ex:1309 #, elixir-autogen, elixir-format msgid "AI Suggestions" msgstr "" @@ -527,7 +527,7 @@ msgid "Clear categories" msgstr "" #: lib/bds/ui/sidebar.ex:293 -#: lib/bds/ui/sidebar.ex:569 +#: lib/bds/ui/sidebar.ex:589 #, elixir-autogen, elixir-format msgid "Clear filters" msgstr "" @@ -539,7 +539,7 @@ msgid "Clear mapping" msgstr "" #: lib/bds/ui/sidebar.ex:291 -#: lib/bds/ui/sidebar.ex:568 +#: lib/bds/ui/sidebar.ex:588 #, elixir-autogen, elixir-format msgid "Clear tags" msgstr "" @@ -572,7 +572,7 @@ msgid "Collapse unchanged diff hunks" msgstr "" #: lib/bds/desktop/shell_live/overlay_manager.ex:422 -#: lib/bds/tui.ex:1299 +#: lib/bds/tui.ex:1405 #, elixir-autogen, elixir-format msgid "Command completed" msgstr "" @@ -590,8 +590,8 @@ msgstr "" #: lib/bds/desktop/shell_live/post_editor_html/post_editor.html.heex:375 #: lib/bds/desktop/shell_live/script_editor_html/script_editor.html.heex:34 #: lib/bds/desktop/shell_live/template_editor_html/template_editor.html.heex:32 -#: lib/bds/tui.ex:747 -#: lib/bds/ui/sidebar.ex:764 +#: lib/bds/tui.ex:845 +#: lib/bds/ui/sidebar.ex:801 #, elixir-autogen, elixir-format msgid "Content" msgstr "" @@ -632,7 +632,7 @@ msgid "Create" msgstr "" #: lib/bds/desktop/shell_live/tags_editor_html/tags_editor.html.heex:36 -#: lib/bds/ui/sidebar.ex:749 +#: lib/bds/ui/sidebar.ex:786 #, elixir-autogen, elixir-format msgid "Create / Edit" msgstr "" @@ -678,7 +678,7 @@ msgstr "" msgid "Dashboard" msgstr "" -#: lib/bds/ui/sidebar.ex:778 +#: lib/bds/ui/sidebar.ex:815 #, elixir-autogen, elixir-format msgid "Data" msgstr "" @@ -913,7 +913,7 @@ msgstr "" #: lib/bds/desktop/shell_live/index.html.heex:513 #: lib/bds/desktop/shell_live/settings_editor_html/settings_editor.html.heex:114 -#: lib/bds/ui/sidebar.ex:763 +#: lib/bds/ui/sidebar.ex:800 #, elixir-autogen, elixir-format msgid "Editor" msgstr "" @@ -1030,7 +1030,7 @@ msgid "Filename" msgstr "" #: lib/bds/desktop/menu_bar.ex:254 -#: lib/bds/tui.ex:1263 +#: lib/bds/tui.ex:1369 #, elixir-autogen, elixir-format msgid "Fill Missing Translations" msgstr "" @@ -1041,7 +1041,7 @@ msgid "Find" msgstr "" #: lib/bds/desktop/menu_bar.ex:255 -#: lib/bds/tui.ex:1266 +#: lib/bds/tui.ex:1372 #, elixir-autogen, elixir-format msgid "Find Duplicate Posts" msgstr "" @@ -1068,14 +1068,14 @@ msgid "Gallery" msgstr "" #: lib/bds/desktop/menu_bar.ex:256 -#: lib/bds/tui.ex:1247 +#: lib/bds/tui.ex:1353 #, elixir-autogen, elixir-format msgid "Generate Site" msgstr "" #: lib/bds/desktop/shell_live.ex:792 #: lib/bds/desktop/shell_live/socket_state.ex:109 -#: lib/bds/ui/sidebar.ex:789 +#: lib/bds/ui/sidebar.ex:826 #, elixir-autogen, elixir-format msgid "Git" msgstr "" @@ -1126,7 +1126,7 @@ msgstr "" msgid "Ignore" msgstr "" -#: lib/bds/ui/sidebar.ex:559 +#: lib/bds/ui/sidebar.ex:579 #, elixir-autogen, elixir-format msgid "Images and files" msgstr "" @@ -1332,7 +1332,7 @@ msgstr "" #: lib/bds/desktop/shell_live/settings_editor/mcp_config.ex:50 #: lib/bds/desktop/shell_live/settings_editor/mcp_config.ex:57 #: lib/bds/desktop/shell_live/settings_editor_html/settings_editor.html.heex:351 -#: lib/bds/ui/sidebar.ex:779 +#: lib/bds/ui/sidebar.ex:816 #, elixir-autogen, elixir-format msgid "MCP" msgstr "" @@ -1389,12 +1389,12 @@ msgstr "" #: lib/bds/desktop/shell_live/misc_editor.ex:762 #: lib/bds/desktop/shell_live/sidebar_components.ex:654 #: lib/bds/desktop/shell_live/sidebar_delete.ex:175 -#: lib/bds/tui.ex:1117 -#: lib/bds/tui.ex:1328 -#: lib/bds/tui.ex:1331 +#: lib/bds/tui.ex:1223 +#: lib/bds/tui.ex:1434 +#: lib/bds/tui.ex:1437 #: lib/bds/ui/registry.ex:30 #: lib/bds/ui/registry.ex:100 -#: lib/bds/ui/sidebar.ex:558 +#: lib/bds/ui/sidebar.ex:578 #, elixir-autogen, elixir-format msgid "Media" msgstr "" @@ -1420,7 +1420,7 @@ msgid "Merge" msgstr "" #: lib/bds/desktop/shell_live/tags_editor_html/tags_editor.html.heex:78 -#: lib/bds/ui/sidebar.ex:750 +#: lib/bds/ui/sidebar.ex:787 #, elixir-autogen, elixir-format msgid "Merge Tags" msgstr "" @@ -1434,11 +1434,11 @@ msgstr "" #: lib/bds/desktop/shell_live/misc_editor.ex:214 #: lib/bds/desktop/shell_live/misc_editor.ex:226 #: lib/bds/desktop/shell_live/misc_editor.ex:448 -#: lib/bds/tui.ex:218 -#: lib/bds/tui.ex:224 +#: lib/bds/tui.ex:229 #: lib/bds/tui.ex:235 -#: lib/bds/tui.ex:935 -#: lib/bds/tui.ex:1244 +#: lib/bds/tui.ex:246 +#: lib/bds/tui.ex:1034 +#: lib/bds/tui.ex:1350 #: lib/bds/ui/registry.ex:111 #, elixir-autogen, elixir-format msgid "Metadata Diff" @@ -1484,7 +1484,7 @@ msgstr "" #: lib/bds/desktop/menu_bar.ex:214 #: lib/bds/desktop/shell_live/sidebar_create.ex:41 -#: lib/bds/tui.ex:175 +#: lib/bds/tui.ex:186 #, elixir-autogen, elixir-format msgid "New Post" msgstr "" @@ -1544,8 +1544,8 @@ msgstr "" #: lib/bds/desktop/shell_live/sidebar_components.ex:381 #: lib/bds/desktop/shell_live/sidebar_components.ex:455 #: lib/bds/ui/sidebar.ex:202 -#: lib/bds/ui/sidebar.ex:792 -#: lib/bds/ui/sidebar.ex:899 +#: lib/bds/ui/sidebar.ex:829 +#: lib/bds/ui/sidebar.ex:936 #, elixir-autogen, elixir-format msgid "No items" msgstr "" @@ -1570,8 +1570,8 @@ msgstr "" msgid "No matching posts" msgstr "" -#: lib/bds/ui/sidebar.ex:561 -#: lib/bds/ui/sidebar.ex:572 +#: lib/bds/ui/sidebar.ex:581 +#: lib/bds/ui/sidebar.ex:592 #, elixir-autogen, elixir-format msgid "No media files" msgstr "" @@ -1762,8 +1762,8 @@ msgid "Open Data Folder" msgstr "" #: lib/bds/desktop/shell_live/index.html.heex:644 -#: lib/bds/tui.ex:416 -#: lib/bds/tui.ex:421 +#: lib/bds/tui.ex:507 +#: lib/bds/tui.ex:512 #, elixir-autogen, elixir-format msgid "Open Existing Blog" msgstr "" @@ -1775,7 +1775,7 @@ msgid "Open Settings" msgstr "" #: lib/bds/desktop/menu_bar.ex:217 -#: lib/bds/tui.ex:1268 +#: lib/bds/tui.ex:1374 #, elixir-autogen, elixir-format msgid "Open in Browser" msgstr "" @@ -1923,8 +1923,8 @@ msgstr "" #: lib/bds/desktop/menu_bar.ex:233 #: lib/bds/desktop/shell_live/misc_editor.ex:664 #: lib/bds/desktop/shell_live/misc_editor.ex:761 -#: lib/bds/tui.ex:1116 -#: lib/bds/tui.ex:1127 +#: lib/bds/tui.ex:1222 +#: lib/bds/tui.ex:1233 #: lib/bds/ui/registry.ex:14 #: lib/bds/ui/sidebar.ex:271 #, elixir-autogen, elixir-format @@ -1966,7 +1966,7 @@ msgstr "" #: lib/bds/desktop/shell_live/misc_editor.ex:739 #: lib/bds/desktop/shell_live/misc_editor.ex:765 #: lib/bds/desktop/shell_live/settings_editor_html/settings_editor.html.heex:27 -#: lib/bds/ui/sidebar.ex:762 +#: lib/bds/ui/sidebar.ex:799 #, elixir-autogen, elixir-format msgid "Project" msgstr "" @@ -1976,15 +1976,15 @@ msgstr "" msgid "Project Name" msgstr "" -#: lib/bds/ui/sidebar.ex:759 +#: lib/bds/ui/sidebar.ex:796 #, elixir-autogen, elixir-format msgid "Project and publishing" msgstr "" #: lib/bds/desktop/shell_live/chat_surface.ex:15 #: lib/bds/desktop/shell_live/index.html.heex:623 -#: lib/bds/tui.ex:329 -#: lib/bds/tui.ex:334 +#: lib/bds/tui.ex:420 +#: lib/bds/tui.ex:425 #, elixir-autogen, elixir-format msgid "Projects" msgstr "" @@ -2028,7 +2028,7 @@ msgstr "" #: lib/bds/desktop/shell_live/settings_editor/publishing_settings.ex:40 #: lib/bds/desktop/shell_live/settings_editor/publishing_settings.ex:57 #: lib/bds/desktop/shell_live/settings_editor_html/settings_editor.html.heex:338 -#: lib/bds/ui/sidebar.ex:774 +#: lib/bds/ui/sidebar.ex:811 #, elixir-autogen, elixir-format msgid "Publishing" msgstr "" @@ -2050,15 +2050,15 @@ msgid "Ready to import:" msgstr "" #: lib/bds/desktop/menu_bar.ex:248 -#: lib/bds/tui.ex:413 -#: lib/bds/tui.ex:1248 +#: lib/bds/tui.ex:504 +#: lib/bds/tui.ex:1354 #, elixir-autogen, elixir-format msgid "Rebuild Database" msgstr "" #: lib/bds/desktop/menu_bar.ex:250 #: lib/bds/desktop/shell_live/settings_editor_html/settings_editor.html.heex:381 -#: lib/bds/tui.ex:1252 +#: lib/bds/tui.ex:1358 #, elixir-autogen, elixir-format msgid "Rebuild Embedding Index" msgstr "" @@ -2116,7 +2116,7 @@ msgid "Refresh Translation" msgstr "" #: lib/bds/desktop/menu_bar.ex:252 -#: lib/bds/tui.ex:1255 +#: lib/bds/tui.ex:1361 #, elixir-autogen, elixir-format msgid "Regenerate Calendar" msgstr "" @@ -2127,7 +2127,7 @@ msgid "Regenerate Missing Thumbnails" msgstr "" #: lib/bds/desktop/menu_bar.ex:249 -#: lib/bds/tui.ex:1249 +#: lib/bds/tui.ex:1355 #, elixir-autogen, elixir-format msgid "Reindex Text" msgstr "" @@ -2313,7 +2313,7 @@ msgstr "" #: lib/bds/desktop/shell_live/script_editor.ex:216 #: lib/bds/desktop/shell_live/script_editor.ex:219 #: lib/bds/desktop/shell_live/script_editor.ex:234 -#: lib/bds/tui.ex:1119 +#: lib/bds/tui.ex:1225 #: lib/bds/ui/registry.ex:38 #: lib/bds/ui/sidebar.ex:63 #: lib/bds/ui/sidebar.ex:115 @@ -2328,7 +2328,7 @@ msgid "Search" msgstr "" #: lib/bds/desktop/shell_live/overlay_html/shell_overlay.html.heex:99 -#: lib/bds/ui/sidebar.ex:564 +#: lib/bds/ui/sidebar.ex:584 #, elixir-autogen, elixir-format msgid "Search media..." msgstr "" @@ -2420,7 +2420,7 @@ msgstr "" #: lib/bds/desktop/shell_live/settings_editor_html/settings_editor.html.heex:11 #: lib/bds/ui/registry.ex:86 #: lib/bds/ui/registry.ex:101 -#: lib/bds/ui/sidebar.ex:758 +#: lib/bds/ui/sidebar.ex:795 #, elixir-autogen, elixir-format msgid "Settings" msgstr "" @@ -2441,9 +2441,9 @@ msgid "Site" msgstr "" #: lib/bds/desktop/shell_live/misc_editor.ex:412 -#: lib/bds/tui.ex:251 -#: lib/bds/tui.ex:253 -#: lib/bds/tui.ex:940 +#: lib/bds/tui.ex:262 +#: lib/bds/tui.ex:264 +#: lib/bds/tui.ex:1039 #: lib/bds/ui/registry.ex:125 #, elixir-autogen, elixir-format msgid "Site Validation" @@ -2507,7 +2507,7 @@ msgstr "" #: lib/bds/desktop/shell_live/settings_editor/style_editor.ex:76 #: lib/bds/desktop/shell_live/settings_editor_html/style_editor.html.heex:3 #: lib/bds/ui/registry.ex:102 -#: lib/bds/ui/sidebar.ex:780 +#: lib/bds/ui/sidebar.ex:817 #, elixir-autogen, elixir-format msgid "Style" msgstr "" @@ -2538,12 +2538,12 @@ msgid "System Prompt" msgstr "" #: lib/bds/desktop/shell_live/tags_editor_html/tags_editor.html.heex:16 -#: lib/bds/ui/sidebar.ex:748 +#: lib/bds/ui/sidebar.ex:785 #, elixir-autogen, elixir-format msgid "Tag Cloud" msgstr "" -#: lib/bds/ui/sidebar.ex:745 +#: lib/bds/ui/sidebar.ex:782 #, elixir-autogen, elixir-format msgid "Tag management" msgstr "" @@ -2564,25 +2564,25 @@ msgstr "" #: lib/bds/desktop/shell_live/tags_editor.ex:222 #: lib/bds/desktop/shell_live/tags_editor.ex:253 #: lib/bds/desktop/shell_live/tags_editor_html/tags_editor.html.heex:11 -#: lib/bds/tui.ex:1120 +#: lib/bds/tui.ex:1226 #: lib/bds/ui/registry.ex:54 #: lib/bds/ui/registry.ex:103 #: lib/bds/ui/sidebar.ex:289 -#: lib/bds/ui/sidebar.ex:567 -#: lib/bds/ui/sidebar.ex:744 +#: lib/bds/ui/sidebar.ex:587 +#: lib/bds/ui/sidebar.ex:781 #, elixir-autogen, elixir-format msgid "Tags" msgstr "" #: lib/bds/desktop/shell_live.ex:786 #: lib/bds/desktop/shell_live/panel_renderer.ex:54 -#: lib/bds/tui.ex:594 +#: lib/bds/tui.ex:685 #, elixir-autogen, elixir-format msgid "Tasks" msgstr "" #: lib/bds/desktop/shell_live/settings_editor_html/settings_editor.html.heex:321 -#: lib/bds/ui/sidebar.ex:768 +#: lib/bds/ui/sidebar.ex:805 #, elixir-autogen, elixir-format msgid "Technology" msgstr "" @@ -2621,7 +2621,7 @@ msgstr "" #: lib/bds/desktop/shell_live/template_editor.ex:171 #: lib/bds/desktop/shell_live/template_editor.ex:176 #: lib/bds/desktop/shell_live/template_editor.ex:191 -#: lib/bds/tui.ex:1118 +#: lib/bds/tui.ex:1224 #: lib/bds/ui/registry.ex:46 #: lib/bds/ui/sidebar.ex:71 #: lib/bds/ui/sidebar.ex:122 @@ -2682,7 +2682,7 @@ msgid "Toggle Dev Tools" msgstr "" #: lib/bds/ui/sidebar.ex:287 -#: lib/bds/ui/sidebar.ex:565 +#: lib/bds/ui/sidebar.ex:585 #, elixir-autogen, elixir-format msgid "Toggle Filters" msgstr "" @@ -2819,7 +2819,7 @@ msgstr "" #: lib/bds/desktop/shell_live/import_editor.ex:871 #: lib/bds/ui/post_editor/metadata.ex:166 -#: lib/bds/ui/sidebar.ex:1108 +#: lib/bds/ui/sidebar.ex:1147 #, elixir-autogen, elixir-format msgid "Untitled" msgstr "" @@ -2844,7 +2844,7 @@ msgid "Updated URLs" msgstr "" #: lib/bds/desktop/menu_bar.ex:259 -#: lib/bds/tui.ex:1267 +#: lib/bds/tui.ex:1373 #, elixir-autogen, elixir-format msgid "Upload Site" msgstr "" @@ -2872,13 +2872,13 @@ msgid "Validate" msgstr "" #: lib/bds/desktop/menu_bar.ex:258 -#: lib/bds/tui.ex:1245 +#: lib/bds/tui.ex:1351 #, elixir-autogen, elixir-format msgid "Validate Site" msgstr "" #: lib/bds/desktop/menu_bar.ex:253 -#: lib/bds/tui.ex:1258 +#: lib/bds/tui.ex:1364 #, elixir-autogen, elixir-format msgid "Validate Translations" msgstr "" @@ -2916,7 +2916,7 @@ msgid "Working tree" msgstr "" #: lib/bds/desktop/shell_live/tab_helpers.ex:191 -#: lib/bds/ui/sidebar.ex:790 +#: lib/bds/ui/sidebar.ex:827 #, elixir-autogen, elixir-format msgid "Working tree and history" msgstr "" @@ -3093,13 +3093,13 @@ msgid "posts" msgstr "" #: lib/bds/ui/sidebar.ex:294 -#: lib/bds/ui/sidebar.ex:570 +#: lib/bds/ui/sidebar.ex:590 #, elixir-autogen, elixir-format msgid "results" msgstr "" #: lib/bds/ui/sidebar.ex:295 -#: lib/bds/ui/sidebar.ex:571 +#: lib/bds/ui/sidebar.ex:591 #, elixir-autogen, elixir-format msgid "results for" msgstr "" @@ -3460,28 +3460,28 @@ msgstr "" msgid "This project is not a Git repository yet." msgstr "" -#: lib/bds/ui/sidebar.ex:872 +#: lib/bds/ui/sidebar.ex:909 #, elixir-autogen, elixir-format, fuzzy msgid "added" msgstr "" -#: lib/bds/ui/sidebar.ex:873 +#: lib/bds/ui/sidebar.ex:910 #, elixir-autogen, elixir-format, fuzzy msgid "deleted" msgstr "" -#: lib/bds/ui/sidebar.ex:874 -#: lib/bds/ui/sidebar.ex:877 +#: lib/bds/ui/sidebar.ex:911 +#: lib/bds/ui/sidebar.ex:914 #, elixir-autogen, elixir-format msgid "modified" msgstr "" -#: lib/bds/ui/sidebar.ex:875 +#: lib/bds/ui/sidebar.ex:912 #, elixir-autogen, elixir-format, fuzzy msgid "renamed" msgstr "" -#: lib/bds/ui/sidebar.ex:876 +#: lib/bds/ui/sidebar.ex:913 #, elixir-autogen, elixir-format msgid "untracked" msgstr "" @@ -3543,7 +3543,7 @@ msgid "Suggested tags" msgstr "" #: lib/bds/desktop/menu_bar.ex:257 -#: lib/bds/tui.ex:1246 +#: lib/bds/tui.ex:1352 #, elixir-autogen, elixir-format msgid "Force Render Site" msgstr "" @@ -3640,82 +3640,82 @@ msgstr "" msgid "The endpoint returned no models. You can still type a model name manually." msgstr "" -#: lib/bds/tui.ex:1204 +#: lib/bds/tui.ex:1310 #, elixir-autogen, elixir-format msgid "AI is unavailable in airplane mode without a local endpoint." msgstr "" -#: lib/bds/tui.ex:1331 +#: lib/bds/tui.ex:1437 #, elixir-autogen, elixir-format, fuzzy msgid "Could not load this file." msgstr "" -#: lib/bds/tui.ex:183 +#: lib/bds/tui.ex:194 #, elixir-autogen, elixir-format msgid "Editing this item is not available in the terminal UI yet." msgstr "" -#: lib/bds/tui.ex:567 +#: lib/bds/tui.ex:658 #, elixir-autogen, elixir-format msgid "No suggestions returned." msgstr "" -#: lib/bds/tui.ex:1328 +#: lib/bds/tui.ex:1434 #, elixir-autogen, elixir-format msgid "Only images can be previewed." msgstr "" -#: lib/bds/tui.ex:1127 +#: lib/bds/tui.ex:1233 #, elixir-autogen, elixir-format msgid "Post not found." msgstr "" -#: lib/bds/tui.ex:702 +#: lib/bds/tui.ex:800 #, elixir-autogen, elixir-format msgid "Press enter to preview %{name}." msgstr "" -#: lib/bds/tui.ex:1174 +#: lib/bds/tui.ex:1280 #, elixir-autogen, elixir-format, fuzzy msgid "Published." msgstr "" -#: lib/bds/tui.ex:1190 +#: lib/bds/tui.ex:1296 #, elixir-autogen, elixir-format msgid "Save before switching languages." msgstr "" -#: lib/bds/tui.ex:1175 +#: lib/bds/tui.ex:1281 #, elixir-autogen, elixir-format, fuzzy msgid "Saved." msgstr "" -#: lib/bds/tui.ex:705 +#: lib/bds/tui.ex:803 #, elixir-autogen, elixir-format msgid "Select an entry and press enter to open it." msgstr "" -#: lib/bds/tui.ex:564 +#: lib/bds/tui.ex:655 #, elixir-autogen, elixir-format msgid "Suggestions applied." msgstr "" -#: lib/bds/tui.ex:717 +#: lib/bds/tui.ex:815 #, elixir-autogen, elixir-format msgid "Title (ctrl+t to edit)" msgstr "" -#: lib/bds/tui.ex:716 +#: lib/bds/tui.ex:814 #, elixir-autogen, elixir-format msgid "Title (editing — enter to confirm)" msgstr "" -#: lib/bds/tui.ex:764 +#: lib/bds/tui.ex:863 #, elixir-autogen, elixir-format, fuzzy msgid "Working…" msgstr "" -#: lib/bds/tui.ex:786 +#: lib/bds/tui.ex:885 #, elixir-autogen, elixir-format msgid "esc to close" msgstr "" @@ -3752,122 +3752,122 @@ msgstr "" msgid "Use the form user@host or user@host:port." msgstr "" -#: lib/bds/tui.ex:736 +#: lib/bds/tui.ex:834 #, elixir-autogen, elixir-format msgid "Preview (ctrl+e to edit)" msgstr "" -#: lib/bds/tui.ex:1029 +#: lib/bds/tui.ex:1128 #, elixir-autogen, elixir-format, fuzzy msgid "ctrl+s save · ctrl+p publish · ctrl+e preview · ctrl+t title · ctrl+l language · ctrl+g AI · esc back" msgstr "" -#: lib/bds/tui.ex:594 +#: lib/bds/tui.ex:685 #, elixir-autogen, elixir-format msgid "All tasks finished." msgstr "" -#: lib/bds/tui.ex:812 +#: lib/bds/tui.ex:911 #, elixir-autogen, elixir-format msgid "Commands — esc to close" msgstr "" -#: lib/bds/tui.ex:438 +#: lib/bds/tui.ex:529 #, elixir-autogen, elixir-format, fuzzy msgid "Unknown command." msgstr "" -#: lib/bds/tui.ex:802 +#: lib/bds/tui.ex:901 #, elixir-autogen, elixir-format msgid "[report/apply in GUI]" msgstr "" -#: lib/bds/tui.ex:951 +#: lib/bds/tui.ex:1050 #, elixir-autogen, elixir-format msgid "%{diffs} differences · %{orphans} orphan files" msgstr "" -#: lib/bds/tui.ex:983 +#: lib/bds/tui.ex:1082 #, elixir-autogen, elixir-format msgid "Expected %{expected} · Existing %{existing}" msgstr "" -#: lib/bds/tui.ex:1000 +#: lib/bds/tui.ex:1099 #, elixir-autogen, elixir-format msgid "Extra files (will be removed):" msgstr "" -#: lib/bds/tui.ex:996 +#: lib/bds/tui.ex:1095 #, elixir-autogen, elixir-format msgid "Missing pages (will be rendered):" msgstr "" -#: lib/bds/tui.ex:251 +#: lib/bds/tui.ex:262 #, elixir-autogen, elixir-format, fuzzy msgid "Nothing to apply." msgstr "" -#: lib/bds/tui.ex:218 +#: lib/bds/tui.ex:229 #, elixir-autogen, elixir-format, fuzzy msgid "Nothing to repair." msgstr "" -#: lib/bds/tui.ex:974 +#: lib/bds/tui.ex:1073 #, elixir-autogen, elixir-format msgid "Orphan files (not in database):" msgstr "" -#: lib/bds/tui.ex:990 +#: lib/bds/tui.ex:1089 #, elixir-autogen, elixir-format msgid "Sitemap changed." msgstr "" -#: lib/bds/tui.ex:1004 +#: lib/bds/tui.ex:1103 #, elixir-autogen, elixir-format msgid "Updated posts (will be re-rendered):" msgstr "" -#: lib/bds/tui.ex:941 +#: lib/bds/tui.ex:1040 #, elixir-autogen, elixir-format msgid "enter apply changes · esc close" msgstr "" -#: lib/bds/tui.ex:936 +#: lib/bds/tui.ex:1035 #, elixir-autogen, elixir-format msgid "enter repair all from files · esc close" msgstr "" -#: lib/bds/tui.ex:403 +#: lib/bds/tui.ex:494 #, elixir-autogen, elixir-format, fuzzy msgid "Imported Blog" msgstr "" -#: lib/bds/tui.ex:422 +#: lib/bds/tui.ex:513 #, elixir-autogen, elixir-format msgid "Not a folder: %{path}" msgstr "" -#: lib/bds/tui.ex:878 +#: lib/bds/tui.ex:977 #, elixir-autogen, elixir-format msgid "Projects — enter switch · o open existing · esc close" msgstr "" -#: lib/bds/tui.ex:330 +#: lib/bds/tui.ex:421 #, elixir-autogen, elixir-format msgid "Switched to %{name}." msgstr "" -#: lib/bds/tui.ex:1022 -#, elixir-autogen, elixir-format, fuzzy -msgid "enter open · n new post · 1-5 views · p projects · : commands (:? help) · r refresh · ctrl+q quit" -msgstr "" - -#: lib/bds/tui.ex:906 +#: lib/bds/tui.ex:1005 #, elixir-autogen, elixir-format msgid "Matching folders" msgstr "" -#: lib/bds/tui.ex:844 +#: lib/bds/tui.ex:943 #, elixir-autogen, elixir-format, fuzzy msgid "Open Existing Blog — type a folder path · tab complete · enter open · esc back" msgstr "" + +#: lib/bds/tui.ex:1121 +#, elixir-autogen, elixir-format, fuzzy +msgid "enter open · n new post · 1-5 views · p projects · / search · : commands (:? help) · r refresh · ctrl+q quit" +msgstr "" diff --git a/priv/gettext/es/LC_MESSAGES/render.po b/priv/gettext/es/LC_MESSAGES/render.po index 8ff89ed..3f4e7a7 100644 --- a/priv/gettext/es/LC_MESSAGES/render.po +++ b/priv/gettext/es/LC_MESSAGES/render.po @@ -1,6 +1,6 @@ #: lib/bds/rendering/labels.ex:18 #: lib/bds/ui/sidebar.ex:288 -#: lib/bds/ui/sidebar.ex:566 +#: lib/bds/ui/sidebar.ex:586 #, elixir-autogen, elixir-format msgid "Archive" msgstr "Archivo" diff --git a/priv/gettext/es/LC_MESSAGES/ui.po b/priv/gettext/es/LC_MESSAGES/ui.po index b35d019..d390d4a 100644 --- a/priv/gettext/es/LC_MESSAGES/ui.po +++ b/priv/gettext/es/LC_MESSAGES/ui.po @@ -59,7 +59,7 @@ msgid "--" msgstr "--" #: lib/bds/desktop/shell_live/settings_editor_html/settings_editor.html.heex:220 -#: lib/bds/ui/sidebar.ex:765 +#: lib/bds/ui/sidebar.ex:802 #, elixir-autogen, elixir-format msgid "AI" msgstr "IA" @@ -81,11 +81,11 @@ msgstr "Configuración de IA" #: lib/bds/desktop/shell_live/overlay_manager.ex:72 #: lib/bds/desktop/shell_live/post_editor.ex:920 #: lib/bds/desktop/shell_live/post_editor_html/post_editor.html.heex:43 -#: lib/bds/tui.ex:564 -#: lib/bds/tui.ex:567 -#: lib/bds/tui.ex:570 -#: lib/bds/tui.ex:578 -#: lib/bds/tui.ex:1203 +#: lib/bds/tui.ex:655 +#: lib/bds/tui.ex:658 +#: lib/bds/tui.ex:661 +#: lib/bds/tui.ex:669 +#: lib/bds/tui.ex:1309 #, elixir-autogen, elixir-format msgid "AI Suggestions" msgstr "Sugerencias de IA" @@ -527,7 +527,7 @@ msgid "Clear categories" msgstr "Limpiar categorías" #: lib/bds/ui/sidebar.ex:293 -#: lib/bds/ui/sidebar.ex:569 +#: lib/bds/ui/sidebar.ex:589 #, elixir-autogen, elixir-format msgid "Clear filters" msgstr "Limpiar filtros" @@ -539,7 +539,7 @@ msgid "Clear mapping" msgstr "Borrar mapeo" #: lib/bds/ui/sidebar.ex:291 -#: lib/bds/ui/sidebar.ex:568 +#: lib/bds/ui/sidebar.ex:588 #, elixir-autogen, elixir-format msgid "Clear tags" msgstr "Limpiar etiquetas" @@ -572,7 +572,7 @@ msgid "Collapse unchanged diff hunks" msgstr "Contraer bloques de diff sin cambios" #: lib/bds/desktop/shell_live/overlay_manager.ex:422 -#: lib/bds/tui.ex:1299 +#: lib/bds/tui.ex:1405 #, elixir-autogen, elixir-format msgid "Command completed" msgstr "Comando completado" @@ -590,8 +590,8 @@ msgstr "Confirmar" #: lib/bds/desktop/shell_live/post_editor_html/post_editor.html.heex:375 #: lib/bds/desktop/shell_live/script_editor_html/script_editor.html.heex:34 #: lib/bds/desktop/shell_live/template_editor_html/template_editor.html.heex:32 -#: lib/bds/tui.ex:747 -#: lib/bds/ui/sidebar.ex:764 +#: lib/bds/tui.ex:845 +#: lib/bds/ui/sidebar.ex:801 #, elixir-autogen, elixir-format msgid "Content" msgstr "Contenido" @@ -632,7 +632,7 @@ msgid "Create" msgstr "Crear" #: lib/bds/desktop/shell_live/tags_editor_html/tags_editor.html.heex:36 -#: lib/bds/ui/sidebar.ex:749 +#: lib/bds/ui/sidebar.ex:786 #, elixir-autogen, elixir-format msgid "Create / Edit" msgstr "Crear / editar" @@ -678,7 +678,7 @@ msgstr "Oscuro" msgid "Dashboard" msgstr "Panel" -#: lib/bds/ui/sidebar.ex:778 +#: lib/bds/ui/sidebar.ex:815 #, elixir-autogen, elixir-format msgid "Data" msgstr "Datos" @@ -913,7 +913,7 @@ msgstr "Editar traducción" #: lib/bds/desktop/shell_live/index.html.heex:513 #: lib/bds/desktop/shell_live/settings_editor_html/settings_editor.html.heex:114 -#: lib/bds/ui/sidebar.ex:763 +#: lib/bds/ui/sidebar.ex:800 #, elixir-autogen, elixir-format msgid "Editor" msgstr "Editor" @@ -1030,7 +1030,7 @@ msgid "Filename" msgstr "Nombre de archivo" #: lib/bds/desktop/menu_bar.ex:254 -#: lib/bds/tui.ex:1263 +#: lib/bds/tui.ex:1369 #, elixir-autogen, elixir-format msgid "Fill Missing Translations" msgstr "Completar traducciones faltantes" @@ -1041,7 +1041,7 @@ msgid "Find" msgstr "Buscar" #: lib/bds/desktop/menu_bar.ex:255 -#: lib/bds/tui.ex:1266 +#: lib/bds/tui.ex:1372 #, elixir-autogen, elixir-format msgid "Find Duplicate Posts" msgstr "Buscar entradas duplicadas" @@ -1068,14 +1068,14 @@ msgid "Gallery" msgstr "Galeria" #: lib/bds/desktop/menu_bar.ex:256 -#: lib/bds/tui.ex:1247 +#: lib/bds/tui.ex:1353 #, elixir-autogen, elixir-format msgid "Generate Site" msgstr "Generar sitio" #: lib/bds/desktop/shell_live.ex:792 #: lib/bds/desktop/shell_live/socket_state.ex:109 -#: lib/bds/ui/sidebar.ex:789 +#: lib/bds/ui/sidebar.ex:826 #, elixir-autogen, elixir-format msgid "Git" msgstr "Git" @@ -1126,7 +1126,7 @@ msgstr "Inactivo" msgid "Ignore" msgstr "Ignorar" -#: lib/bds/ui/sidebar.ex:559 +#: lib/bds/ui/sidebar.ex:579 #, elixir-autogen, elixir-format msgid "Images and files" msgstr "Imágenes y archivos" @@ -1332,7 +1332,7 @@ msgstr "Cargar más" #: lib/bds/desktop/shell_live/settings_editor/mcp_config.ex:50 #: lib/bds/desktop/shell_live/settings_editor/mcp_config.ex:57 #: lib/bds/desktop/shell_live/settings_editor_html/settings_editor.html.heex:351 -#: lib/bds/ui/sidebar.ex:779 +#: lib/bds/ui/sidebar.ex:816 #, elixir-autogen, elixir-format msgid "MCP" msgstr "MCP" @@ -1389,12 +1389,12 @@ msgstr "Máximo de publicaciones por página" #: lib/bds/desktop/shell_live/misc_editor.ex:762 #: lib/bds/desktop/shell_live/sidebar_components.ex:654 #: lib/bds/desktop/shell_live/sidebar_delete.ex:175 -#: lib/bds/tui.ex:1117 -#: lib/bds/tui.ex:1328 -#: lib/bds/tui.ex:1331 +#: lib/bds/tui.ex:1223 +#: lib/bds/tui.ex:1434 +#: lib/bds/tui.ex:1437 #: lib/bds/ui/registry.ex:30 #: lib/bds/ui/registry.ex:100 -#: lib/bds/ui/sidebar.ex:558 +#: lib/bds/ui/sidebar.ex:578 #, elixir-autogen, elixir-format msgid "Media" msgstr "Medios" @@ -1420,7 +1420,7 @@ msgid "Merge" msgstr "Fusionar" #: lib/bds/desktop/shell_live/tags_editor_html/tags_editor.html.heex:78 -#: lib/bds/ui/sidebar.ex:750 +#: lib/bds/ui/sidebar.ex:787 #, elixir-autogen, elixir-format msgid "Merge Tags" msgstr "Combinar etiquetas" @@ -1434,11 +1434,11 @@ msgstr "Metadatos" #: lib/bds/desktop/shell_live/misc_editor.ex:214 #: lib/bds/desktop/shell_live/misc_editor.ex:226 #: lib/bds/desktop/shell_live/misc_editor.ex:448 -#: lib/bds/tui.ex:218 -#: lib/bds/tui.ex:224 +#: lib/bds/tui.ex:229 #: lib/bds/tui.ex:235 -#: lib/bds/tui.ex:935 -#: lib/bds/tui.ex:1244 +#: lib/bds/tui.ex:246 +#: lib/bds/tui.ex:1034 +#: lib/bds/tui.ex:1350 #: lib/bds/ui/registry.ex:111 #, elixir-autogen, elixir-format msgid "Metadata Diff" @@ -1484,7 +1484,7 @@ msgstr "Nueva página" #: lib/bds/desktop/menu_bar.ex:214 #: lib/bds/desktop/shell_live/sidebar_create.ex:41 -#: lib/bds/tui.ex:175 +#: lib/bds/tui.ex:186 #, elixir-autogen, elixir-format msgid "New Post" msgstr "Nueva entrada" @@ -1544,8 +1544,8 @@ msgstr "Aún no hay historial de Git" #: lib/bds/desktop/shell_live/sidebar_components.ex:381 #: lib/bds/desktop/shell_live/sidebar_components.ex:455 #: lib/bds/ui/sidebar.ex:202 -#: lib/bds/ui/sidebar.ex:792 -#: lib/bds/ui/sidebar.ex:899 +#: lib/bds/ui/sidebar.ex:829 +#: lib/bds/ui/sidebar.ex:936 #, elixir-autogen, elixir-format msgid "No items" msgstr "No hay elementos" @@ -1570,8 +1570,8 @@ msgstr "No se encontraron páginas coincidentes." msgid "No matching posts" msgstr "No hay entradas coincidentes" -#: lib/bds/ui/sidebar.ex:561 -#: lib/bds/ui/sidebar.ex:572 +#: lib/bds/ui/sidebar.ex:581 +#: lib/bds/ui/sidebar.ex:592 #, elixir-autogen, elixir-format msgid "No media files" msgstr "No hay archivos multimedia" @@ -1762,8 +1762,8 @@ msgid "Open Data Folder" msgstr "Abrir carpeta de datos" #: lib/bds/desktop/shell_live/index.html.heex:644 -#: lib/bds/tui.ex:416 -#: lib/bds/tui.ex:421 +#: lib/bds/tui.ex:507 +#: lib/bds/tui.ex:512 #, elixir-autogen, elixir-format msgid "Open Existing Blog" msgstr "Abrir blog existente" @@ -1775,7 +1775,7 @@ msgid "Open Settings" msgstr "Abrir Ajustes" #: lib/bds/desktop/menu_bar.ex:217 -#: lib/bds/tui.ex:1268 +#: lib/bds/tui.ex:1374 #, elixir-autogen, elixir-format msgid "Open in Browser" msgstr "Abrir en el navegador" @@ -1923,8 +1923,8 @@ msgstr "Artículo guardado" #: lib/bds/desktop/menu_bar.ex:233 #: lib/bds/desktop/shell_live/misc_editor.ex:664 #: lib/bds/desktop/shell_live/misc_editor.ex:761 -#: lib/bds/tui.ex:1116 -#: lib/bds/tui.ex:1127 +#: lib/bds/tui.ex:1222 +#: lib/bds/tui.ex:1233 #: lib/bds/ui/registry.ex:14 #: lib/bds/ui/sidebar.ex:271 #, elixir-autogen, elixir-format @@ -1966,7 +1966,7 @@ msgstr "Vista previa no disponible" #: lib/bds/desktop/shell_live/misc_editor.ex:739 #: lib/bds/desktop/shell_live/misc_editor.ex:765 #: lib/bds/desktop/shell_live/settings_editor_html/settings_editor.html.heex:27 -#: lib/bds/ui/sidebar.ex:762 +#: lib/bds/ui/sidebar.ex:799 #, elixir-autogen, elixir-format msgid "Project" msgstr "Proyecto" @@ -1976,15 +1976,15 @@ msgstr "Proyecto" msgid "Project Name" msgstr "Nombre del proyecto" -#: lib/bds/ui/sidebar.ex:759 +#: lib/bds/ui/sidebar.ex:796 #, elixir-autogen, elixir-format msgid "Project and publishing" msgstr "Proyecto y publicación" #: lib/bds/desktop/shell_live/chat_surface.ex:15 #: lib/bds/desktop/shell_live/index.html.heex:623 -#: lib/bds/tui.ex:329 -#: lib/bds/tui.ex:334 +#: lib/bds/tui.ex:420 +#: lib/bds/tui.ex:425 #, elixir-autogen, elixir-format msgid "Projects" msgstr "Proyectos" @@ -2028,7 +2028,7 @@ msgstr "Traducción publicada con contenido en la BD en lugar del sistema de arc #: lib/bds/desktop/shell_live/settings_editor/publishing_settings.ex:40 #: lib/bds/desktop/shell_live/settings_editor/publishing_settings.ex:57 #: lib/bds/desktop/shell_live/settings_editor_html/settings_editor.html.heex:338 -#: lib/bds/ui/sidebar.ex:774 +#: lib/bds/ui/sidebar.ex:811 #, elixir-autogen, elixir-format msgid "Publishing" msgstr "Publicación" @@ -2050,15 +2050,15 @@ msgid "Ready to import:" msgstr "Listo para importar:" #: lib/bds/desktop/menu_bar.ex:248 -#: lib/bds/tui.ex:413 -#: lib/bds/tui.ex:1248 +#: lib/bds/tui.ex:504 +#: lib/bds/tui.ex:1354 #, elixir-autogen, elixir-format msgid "Rebuild Database" msgstr "Reconstruir base de datos" #: lib/bds/desktop/menu_bar.ex:250 #: lib/bds/desktop/shell_live/settings_editor_html/settings_editor.html.heex:381 -#: lib/bds/tui.ex:1252 +#: lib/bds/tui.ex:1358 #, elixir-autogen, elixir-format msgid "Rebuild Embedding Index" msgstr "Reconstruir índice de embeddings" @@ -2116,7 +2116,7 @@ msgid "Refresh Translation" msgstr "Actualizar traducción" #: lib/bds/desktop/menu_bar.ex:252 -#: lib/bds/tui.ex:1255 +#: lib/bds/tui.ex:1361 #, elixir-autogen, elixir-format msgid "Regenerate Calendar" msgstr "Regenerar calendario" @@ -2127,7 +2127,7 @@ msgid "Regenerate Missing Thumbnails" msgstr "Regenerar miniaturas faltantes" #: lib/bds/desktop/menu_bar.ex:249 -#: lib/bds/tui.ex:1249 +#: lib/bds/tui.ex:1355 #, elixir-autogen, elixir-format msgid "Reindex Text" msgstr "Reindexar texto" @@ -2313,7 +2313,7 @@ msgstr "Las capacidades de scripts se configuran en la capa de aplicación en la #: lib/bds/desktop/shell_live/script_editor.ex:216 #: lib/bds/desktop/shell_live/script_editor.ex:219 #: lib/bds/desktop/shell_live/script_editor.ex:234 -#: lib/bds/tui.ex:1119 +#: lib/bds/tui.ex:1225 #: lib/bds/ui/registry.ex:38 #: lib/bds/ui/sidebar.ex:63 #: lib/bds/ui/sidebar.ex:115 @@ -2328,7 +2328,7 @@ msgid "Search" msgstr "Buscar" #: lib/bds/desktop/shell_live/overlay_html/shell_overlay.html.heex:99 -#: lib/bds/ui/sidebar.ex:564 +#: lib/bds/ui/sidebar.ex:584 #, elixir-autogen, elixir-format msgid "Search media..." msgstr "Buscar medios..." @@ -2420,7 +2420,7 @@ msgstr "Similitud semántica" #: lib/bds/desktop/shell_live/settings_editor_html/settings_editor.html.heex:11 #: lib/bds/ui/registry.ex:86 #: lib/bds/ui/registry.ex:101 -#: lib/bds/ui/sidebar.ex:758 +#: lib/bds/ui/sidebar.ex:795 #, elixir-autogen, elixir-format msgid "Settings" msgstr "Configuración" @@ -2441,9 +2441,9 @@ msgid "Site" msgstr "Sitio" #: lib/bds/desktop/shell_live/misc_editor.ex:412 -#: lib/bds/tui.ex:251 -#: lib/bds/tui.ex:253 -#: lib/bds/tui.ex:940 +#: lib/bds/tui.ex:262 +#: lib/bds/tui.ex:264 +#: lib/bds/tui.ex:1039 #: lib/bds/ui/registry.ex:125 #, elixir-autogen, elixir-format msgid "Site Validation" @@ -2507,7 +2507,7 @@ msgstr "Detener" #: lib/bds/desktop/shell_live/settings_editor/style_editor.ex:76 #: lib/bds/desktop/shell_live/settings_editor_html/style_editor.html.heex:3 #: lib/bds/ui/registry.ex:102 -#: lib/bds/ui/sidebar.ex:780 +#: lib/bds/ui/sidebar.ex:817 #, elixir-autogen, elixir-format msgid "Style" msgstr "Estilo" @@ -2538,12 +2538,12 @@ msgid "System Prompt" msgstr "Prompt del sistema" #: lib/bds/desktop/shell_live/tags_editor_html/tags_editor.html.heex:16 -#: lib/bds/ui/sidebar.ex:748 +#: lib/bds/ui/sidebar.ex:785 #, elixir-autogen, elixir-format msgid "Tag Cloud" msgstr "Nube de etiquetas" -#: lib/bds/ui/sidebar.ex:745 +#: lib/bds/ui/sidebar.ex:782 #, elixir-autogen, elixir-format msgid "Tag management" msgstr "Gestión de etiquetas" @@ -2564,25 +2564,25 @@ msgstr "Nombre de la etiqueta" #: lib/bds/desktop/shell_live/tags_editor.ex:222 #: lib/bds/desktop/shell_live/tags_editor.ex:253 #: lib/bds/desktop/shell_live/tags_editor_html/tags_editor.html.heex:11 -#: lib/bds/tui.ex:1120 +#: lib/bds/tui.ex:1226 #: lib/bds/ui/registry.ex:54 #: lib/bds/ui/registry.ex:103 #: lib/bds/ui/sidebar.ex:289 -#: lib/bds/ui/sidebar.ex:567 -#: lib/bds/ui/sidebar.ex:744 +#: lib/bds/ui/sidebar.ex:587 +#: lib/bds/ui/sidebar.ex:781 #, elixir-autogen, elixir-format msgid "Tags" msgstr "Etiquetas" #: lib/bds/desktop/shell_live.ex:786 #: lib/bds/desktop/shell_live/panel_renderer.ex:54 -#: lib/bds/tui.ex:594 +#: lib/bds/tui.ex:685 #, elixir-autogen, elixir-format msgid "Tasks" msgstr "Tareas" #: lib/bds/desktop/shell_live/settings_editor_html/settings_editor.html.heex:321 -#: lib/bds/ui/sidebar.ex:768 +#: lib/bds/ui/sidebar.ex:805 #, elixir-autogen, elixir-format msgid "Technology" msgstr "Tecnología" @@ -2621,7 +2621,7 @@ msgstr "La sintaxis de la plantilla es válida" #: lib/bds/desktop/shell_live/template_editor.ex:171 #: lib/bds/desktop/shell_live/template_editor.ex:176 #: lib/bds/desktop/shell_live/template_editor.ex:191 -#: lib/bds/tui.ex:1118 +#: lib/bds/tui.ex:1224 #: lib/bds/ui/registry.ex:46 #: lib/bds/ui/sidebar.ex:71 #: lib/bds/ui/sidebar.ex:122 @@ -2682,7 +2682,7 @@ msgid "Toggle Dev Tools" msgstr "Alternar herramientas de desarrollo" #: lib/bds/ui/sidebar.ex:287 -#: lib/bds/ui/sidebar.ex:565 +#: lib/bds/ui/sidebar.ex:585 #, elixir-autogen, elixir-format msgid "Toggle Filters" msgstr "Alternar filtros" @@ -2819,7 +2819,7 @@ msgstr "Sin guardar" #: lib/bds/desktop/shell_live/import_editor.ex:871 #: lib/bds/ui/post_editor/metadata.ex:166 -#: lib/bds/ui/sidebar.ex:1108 +#: lib/bds/ui/sidebar.ex:1147 #, elixir-autogen, elixir-format msgid "Untitled" msgstr "Sin título" @@ -2844,7 +2844,7 @@ msgid "Updated URLs" msgstr "URLs actualizadas" #: lib/bds/desktop/menu_bar.ex:259 -#: lib/bds/tui.ex:1267 +#: lib/bds/tui.ex:1373 #, elixir-autogen, elixir-format msgid "Upload Site" msgstr "Subir sitio" @@ -2872,13 +2872,13 @@ msgid "Validate" msgstr "Validar" #: lib/bds/desktop/menu_bar.ex:258 -#: lib/bds/tui.ex:1245 +#: lib/bds/tui.ex:1351 #, elixir-autogen, elixir-format msgid "Validate Site" msgstr "Validar sitio" #: lib/bds/desktop/menu_bar.ex:253 -#: lib/bds/tui.ex:1258 +#: lib/bds/tui.ex:1364 #, elixir-autogen, elixir-format msgid "Validate Translations" msgstr "Validar traducciones" @@ -2916,7 +2916,7 @@ msgid "Working tree" msgstr "Árbol de trabajo" #: lib/bds/desktop/shell_live/tab_helpers.ex:191 -#: lib/bds/ui/sidebar.ex:790 +#: lib/bds/ui/sidebar.ex:827 #, elixir-autogen, elixir-format msgid "Working tree and history" msgstr "Árbol de trabajo e historial" @@ -3093,13 +3093,13 @@ msgid "posts" msgstr "publicaciones" #: lib/bds/ui/sidebar.ex:294 -#: lib/bds/ui/sidebar.ex:570 +#: lib/bds/ui/sidebar.ex:590 #, elixir-autogen, elixir-format msgid "results" msgstr "resultados" #: lib/bds/ui/sidebar.ex:295 -#: lib/bds/ui/sidebar.ex:571 +#: lib/bds/ui/sidebar.ex:591 #, elixir-autogen, elixir-format msgid "results for" msgstr "resultados para" @@ -3460,28 +3460,28 @@ msgstr "Sincronizado" msgid "This project is not a Git repository yet." msgstr "Este proyecto aún no es un repositorio Git." -#: lib/bds/ui/sidebar.ex:872 +#: lib/bds/ui/sidebar.ex:909 #, elixir-autogen, elixir-format msgid "added" msgstr "añadido" -#: lib/bds/ui/sidebar.ex:873 +#: lib/bds/ui/sidebar.ex:910 #, elixir-autogen, elixir-format msgid "deleted" msgstr "eliminado" -#: lib/bds/ui/sidebar.ex:874 -#: lib/bds/ui/sidebar.ex:877 +#: lib/bds/ui/sidebar.ex:911 +#: lib/bds/ui/sidebar.ex:914 #, elixir-autogen, elixir-format msgid "modified" msgstr "modificado" -#: lib/bds/ui/sidebar.ex:875 +#: lib/bds/ui/sidebar.ex:912 #, elixir-autogen, elixir-format msgid "renamed" msgstr "renombrado" -#: lib/bds/ui/sidebar.ex:876 +#: lib/bds/ui/sidebar.ex:913 #, elixir-autogen, elixir-format msgid "untracked" msgstr "sin seguimiento" @@ -3543,7 +3543,7 @@ msgid "Suggested tags" msgstr "Etiquetas sugeridas" #: lib/bds/desktop/menu_bar.ex:257 -#: lib/bds/tui.ex:1246 +#: lib/bds/tui.ex:1352 #, elixir-autogen, elixir-format msgid "Force Render Site" msgstr "Forzar la regeneración del sitio" @@ -3640,82 +3640,82 @@ msgstr "OK" msgid "The endpoint returned no models. You can still type a model name manually." msgstr "El endpoint no devolvió ningún modelo. Aún puedes escribir el nombre de un modelo manualmente." -#: lib/bds/tui.ex:1204 +#: lib/bds/tui.ex:1310 #, elixir-autogen, elixir-format msgid "AI is unavailable in airplane mode without a local endpoint." msgstr "La IA no está disponible en modo avión sin un punto de conexión local." -#: lib/bds/tui.ex:1331 +#: lib/bds/tui.ex:1437 #, elixir-autogen, elixir-format msgid "Could not load this file." msgstr "No se pudo cargar este archivo." -#: lib/bds/tui.ex:183 +#: lib/bds/tui.ex:194 #, elixir-autogen, elixir-format msgid "Editing this item is not available in the terminal UI yet." msgstr "La edición de este elemento aún no está disponible en la interfaz de terminal." -#: lib/bds/tui.ex:567 +#: lib/bds/tui.ex:658 #, elixir-autogen, elixir-format msgid "No suggestions returned." msgstr "No se recibieron sugerencias." -#: lib/bds/tui.ex:1328 +#: lib/bds/tui.ex:1434 #, elixir-autogen, elixir-format msgid "Only images can be previewed." msgstr "Solo se pueden previsualizar imágenes." -#: lib/bds/tui.ex:1127 +#: lib/bds/tui.ex:1233 #, elixir-autogen, elixir-format msgid "Post not found." msgstr "Entrada no encontrada." -#: lib/bds/tui.ex:702 +#: lib/bds/tui.ex:800 #, elixir-autogen, elixir-format msgid "Press enter to preview %{name}." msgstr "Pulsa Intro para previsualizar %{name}." -#: lib/bds/tui.ex:1174 +#: lib/bds/tui.ex:1280 #, elixir-autogen, elixir-format msgid "Published." msgstr "Publicado." -#: lib/bds/tui.ex:1190 +#: lib/bds/tui.ex:1296 #, elixir-autogen, elixir-format msgid "Save before switching languages." msgstr "Guarda antes de cambiar de idioma." -#: lib/bds/tui.ex:1175 +#: lib/bds/tui.ex:1281 #, elixir-autogen, elixir-format msgid "Saved." msgstr "Guardado." -#: lib/bds/tui.ex:705 +#: lib/bds/tui.ex:803 #, elixir-autogen, elixir-format msgid "Select an entry and press enter to open it." msgstr "Selecciona una entrada y pulsa Intro para abrirla." -#: lib/bds/tui.ex:564 +#: lib/bds/tui.ex:655 #, elixir-autogen, elixir-format msgid "Suggestions applied." msgstr "Sugerencias aplicadas." -#: lib/bds/tui.ex:717 +#: lib/bds/tui.ex:815 #, elixir-autogen, elixir-format msgid "Title (ctrl+t to edit)" msgstr "Título (ctrl+t para editar)" -#: lib/bds/tui.ex:716 +#: lib/bds/tui.ex:814 #, elixir-autogen, elixir-format msgid "Title (editing — enter to confirm)" msgstr "Título (edición — Intro para confirmar)" -#: lib/bds/tui.ex:764 +#: lib/bds/tui.ex:863 #, elixir-autogen, elixir-format msgid "Working…" msgstr "Procesando…" -#: lib/bds/tui.ex:786 +#: lib/bds/tui.ex:885 #, elixir-autogen, elixir-format msgid "esc to close" msgstr "esc para cerrar" @@ -3752,122 +3752,122 @@ msgstr "Dirección del servidor (user@host o user@host:port), autenticación de msgid "Use the form user@host or user@host:port." msgstr "Usa el formato user@host o user@host:port." -#: lib/bds/tui.ex:736 +#: lib/bds/tui.ex:834 #, elixir-autogen, elixir-format msgid "Preview (ctrl+e to edit)" msgstr "Vista previa (ctrl+e para editar)" -#: lib/bds/tui.ex:1029 +#: lib/bds/tui.ex:1128 #, elixir-autogen, elixir-format msgid "ctrl+s save · ctrl+p publish · ctrl+e preview · ctrl+t title · ctrl+l language · ctrl+g AI · esc back" msgstr "ctrl+s guardar · ctrl+p publicar · ctrl+e vista previa · ctrl+t título · ctrl+l idioma · ctrl+g IA · esc volver" -#: lib/bds/tui.ex:594 +#: lib/bds/tui.ex:685 #, elixir-autogen, elixir-format msgid "All tasks finished." msgstr "Todas las tareas han terminado." -#: lib/bds/tui.ex:812 +#: lib/bds/tui.ex:911 #, elixir-autogen, elixir-format msgid "Commands — esc to close" msgstr "Comandos — esc para cerrar" -#: lib/bds/tui.ex:438 +#: lib/bds/tui.ex:529 #, elixir-autogen, elixir-format msgid "Unknown command." msgstr "Comando desconocido." -#: lib/bds/tui.ex:802 +#: lib/bds/tui.ex:901 #, elixir-autogen, elixir-format msgid "[report/apply in GUI]" msgstr "[informe/aplicación en la GUI]" -#: lib/bds/tui.ex:951 +#: lib/bds/tui.ex:1050 #, elixir-autogen, elixir-format msgid "%{diffs} differences · %{orphans} orphan files" msgstr "%{diffs} diferencias · %{orphans} archivos huérfanos" -#: lib/bds/tui.ex:983 +#: lib/bds/tui.ex:1082 #, elixir-autogen, elixir-format msgid "Expected %{expected} · Existing %{existing}" msgstr "Esperados %{expected} · Existentes %{existing}" -#: lib/bds/tui.ex:1000 +#: lib/bds/tui.ex:1099 #, elixir-autogen, elixir-format msgid "Extra files (will be removed):" msgstr "Archivos sobrantes (se eliminarán):" -#: lib/bds/tui.ex:996 +#: lib/bds/tui.ex:1095 #, elixir-autogen, elixir-format msgid "Missing pages (will be rendered):" msgstr "Páginas faltantes (se generarán):" -#: lib/bds/tui.ex:251 +#: lib/bds/tui.ex:262 #, elixir-autogen, elixir-format msgid "Nothing to apply." msgstr "Nada que aplicar." -#: lib/bds/tui.ex:218 +#: lib/bds/tui.ex:229 #, elixir-autogen, elixir-format msgid "Nothing to repair." msgstr "Nada que reparar." -#: lib/bds/tui.ex:974 +#: lib/bds/tui.ex:1073 #, elixir-autogen, elixir-format msgid "Orphan files (not in database):" msgstr "Archivos huérfanos (no están en la base de datos):" -#: lib/bds/tui.ex:990 +#: lib/bds/tui.ex:1089 #, elixir-autogen, elixir-format msgid "Sitemap changed." msgstr "Sitemap modificado." -#: lib/bds/tui.ex:1004 +#: lib/bds/tui.ex:1103 #, elixir-autogen, elixir-format msgid "Updated posts (will be re-rendered):" msgstr "Entradas actualizadas (se volverán a generar):" -#: lib/bds/tui.ex:941 +#: lib/bds/tui.ex:1040 #, elixir-autogen, elixir-format msgid "enter apply changes · esc close" msgstr "intro aplicar cambios · esc cerrar" -#: lib/bds/tui.ex:936 +#: lib/bds/tui.ex:1035 #, elixir-autogen, elixir-format msgid "enter repair all from files · esc close" msgstr "intro reparar todo desde archivos · esc cerrar" -#: lib/bds/tui.ex:403 +#: lib/bds/tui.ex:494 #, elixir-autogen, elixir-format msgid "Imported Blog" msgstr "Blog importado" -#: lib/bds/tui.ex:422 +#: lib/bds/tui.ex:513 #, elixir-autogen, elixir-format msgid "Not a folder: %{path}" msgstr "No es una carpeta: %{path}" -#: lib/bds/tui.ex:878 +#: lib/bds/tui.ex:977 #, elixir-autogen, elixir-format msgid "Projects — enter switch · o open existing · esc close" msgstr "Proyectos — intro cambiar · o abrir existente · esc cerrar" -#: lib/bds/tui.ex:330 +#: lib/bds/tui.ex:421 #, elixir-autogen, elixir-format msgid "Switched to %{name}." msgstr "Cambiado a %{name}." -#: lib/bds/tui.ex:1022 -#, elixir-autogen, elixir-format -msgid "enter open · n new post · 1-5 views · p projects · : commands (:? help) · r refresh · ctrl+q quit" -msgstr "intro abrir · n nueva entrada · 1-5 vistas · p proyectos · : comandos (:? ayuda) · r actualizar · ctrl+q salir" - -#: lib/bds/tui.ex:906 +#: lib/bds/tui.ex:1005 #, elixir-autogen, elixir-format msgid "Matching folders" msgstr "Carpetas coincidentes" -#: lib/bds/tui.ex:844 +#: lib/bds/tui.ex:943 #, elixir-autogen, elixir-format msgid "Open Existing Blog — type a folder path · tab complete · enter open · esc back" msgstr "Abrir blog existente — escribe la ruta de una carpeta · tab completar · intro abrir · esc volver" + +#: lib/bds/tui.ex:1121 +#, elixir-autogen, elixir-format +msgid "enter open · n new post · 1-5 views · p projects · / search · : commands (:? help) · r refresh · ctrl+q quit" +msgstr "intro abrir · n nueva entrada · 1-5 vistas · p proyectos · / buscar · : comandos (:? ayuda) · r actualizar · ctrl+q salir" diff --git a/priv/gettext/fr/LC_MESSAGES/render.po b/priv/gettext/fr/LC_MESSAGES/render.po index b7b4118..983e562 100644 --- a/priv/gettext/fr/LC_MESSAGES/render.po +++ b/priv/gettext/fr/LC_MESSAGES/render.po @@ -1,6 +1,6 @@ #: lib/bds/rendering/labels.ex:18 #: lib/bds/ui/sidebar.ex:288 -#: lib/bds/ui/sidebar.ex:566 +#: lib/bds/ui/sidebar.ex:586 #, elixir-autogen, elixir-format msgid "Archive" msgstr "Archives" diff --git a/priv/gettext/fr/LC_MESSAGES/ui.po b/priv/gettext/fr/LC_MESSAGES/ui.po index 4d4632b..e9ecf55 100644 --- a/priv/gettext/fr/LC_MESSAGES/ui.po +++ b/priv/gettext/fr/LC_MESSAGES/ui.po @@ -59,7 +59,7 @@ msgid "--" msgstr "--" #: lib/bds/desktop/shell_live/settings_editor_html/settings_editor.html.heex:220 -#: lib/bds/ui/sidebar.ex:765 +#: lib/bds/ui/sidebar.ex:802 #, elixir-autogen, elixir-format msgid "AI" msgstr "IA" @@ -81,11 +81,11 @@ msgstr "Paramètres IA" #: lib/bds/desktop/shell_live/overlay_manager.ex:72 #: lib/bds/desktop/shell_live/post_editor.ex:920 #: lib/bds/desktop/shell_live/post_editor_html/post_editor.html.heex:43 -#: lib/bds/tui.ex:564 -#: lib/bds/tui.ex:567 -#: lib/bds/tui.ex:570 -#: lib/bds/tui.ex:578 -#: lib/bds/tui.ex:1203 +#: lib/bds/tui.ex:655 +#: lib/bds/tui.ex:658 +#: lib/bds/tui.ex:661 +#: lib/bds/tui.ex:669 +#: lib/bds/tui.ex:1309 #, elixir-autogen, elixir-format msgid "AI Suggestions" msgstr "Suggestions IA" @@ -527,7 +527,7 @@ msgid "Clear categories" msgstr "Effacer les catégories" #: lib/bds/ui/sidebar.ex:293 -#: lib/bds/ui/sidebar.ex:569 +#: lib/bds/ui/sidebar.ex:589 #, elixir-autogen, elixir-format msgid "Clear filters" msgstr "Effacer les filtres" @@ -539,7 +539,7 @@ msgid "Clear mapping" msgstr "Effacer le mapping" #: lib/bds/ui/sidebar.ex:291 -#: lib/bds/ui/sidebar.ex:568 +#: lib/bds/ui/sidebar.ex:588 #, elixir-autogen, elixir-format msgid "Clear tags" msgstr "Effacer les étiquettes" @@ -572,7 +572,7 @@ msgid "Collapse unchanged diff hunks" msgstr "Réduire les blocs de diff inchangés" #: lib/bds/desktop/shell_live/overlay_manager.ex:422 -#: lib/bds/tui.ex:1299 +#: lib/bds/tui.ex:1405 #, elixir-autogen, elixir-format msgid "Command completed" msgstr "Commande terminée" @@ -590,8 +590,8 @@ msgstr "Confirmer" #: lib/bds/desktop/shell_live/post_editor_html/post_editor.html.heex:375 #: lib/bds/desktop/shell_live/script_editor_html/script_editor.html.heex:34 #: lib/bds/desktop/shell_live/template_editor_html/template_editor.html.heex:32 -#: lib/bds/tui.ex:747 -#: lib/bds/ui/sidebar.ex:764 +#: lib/bds/tui.ex:845 +#: lib/bds/ui/sidebar.ex:801 #, elixir-autogen, elixir-format msgid "Content" msgstr "Contenu" @@ -632,7 +632,7 @@ msgid "Create" msgstr "Créer" #: lib/bds/desktop/shell_live/tags_editor_html/tags_editor.html.heex:36 -#: lib/bds/ui/sidebar.ex:749 +#: lib/bds/ui/sidebar.ex:786 #, elixir-autogen, elixir-format msgid "Create / Edit" msgstr "Créer / modifier" @@ -678,7 +678,7 @@ msgstr "Sombre" msgid "Dashboard" msgstr "Tableau de bord" -#: lib/bds/ui/sidebar.ex:778 +#: lib/bds/ui/sidebar.ex:815 #, elixir-autogen, elixir-format msgid "Data" msgstr "Données" @@ -913,7 +913,7 @@ msgstr "Modifier la traduction" #: lib/bds/desktop/shell_live/index.html.heex:513 #: lib/bds/desktop/shell_live/settings_editor_html/settings_editor.html.heex:114 -#: lib/bds/ui/sidebar.ex:763 +#: lib/bds/ui/sidebar.ex:800 #, elixir-autogen, elixir-format msgid "Editor" msgstr "Éditeur" @@ -1030,7 +1030,7 @@ msgid "Filename" msgstr "Nom de fichier" #: lib/bds/desktop/menu_bar.ex:254 -#: lib/bds/tui.ex:1263 +#: lib/bds/tui.ex:1369 #, elixir-autogen, elixir-format msgid "Fill Missing Translations" msgstr "Compléter les traductions manquantes" @@ -1041,7 +1041,7 @@ msgid "Find" msgstr "Rechercher" #: lib/bds/desktop/menu_bar.ex:255 -#: lib/bds/tui.ex:1266 +#: lib/bds/tui.ex:1372 #, elixir-autogen, elixir-format msgid "Find Duplicate Posts" msgstr "Trouver les doublons" @@ -1068,14 +1068,14 @@ msgid "Gallery" msgstr "Galerie" #: lib/bds/desktop/menu_bar.ex:256 -#: lib/bds/tui.ex:1247 +#: lib/bds/tui.ex:1353 #, elixir-autogen, elixir-format msgid "Generate Site" msgstr "Générer le site" #: lib/bds/desktop/shell_live.ex:792 #: lib/bds/desktop/shell_live/socket_state.ex:109 -#: lib/bds/ui/sidebar.ex:789 +#: lib/bds/ui/sidebar.ex:826 #, elixir-autogen, elixir-format msgid "Git" msgstr "Git" @@ -1126,7 +1126,7 @@ msgstr "Inactif" msgid "Ignore" msgstr "Ignorer" -#: lib/bds/ui/sidebar.ex:559 +#: lib/bds/ui/sidebar.ex:579 #, elixir-autogen, elixir-format msgid "Images and files" msgstr "Images et fichiers" @@ -1332,7 +1332,7 @@ msgstr "Charger plus" #: lib/bds/desktop/shell_live/settings_editor/mcp_config.ex:50 #: lib/bds/desktop/shell_live/settings_editor/mcp_config.ex:57 #: lib/bds/desktop/shell_live/settings_editor_html/settings_editor.html.heex:351 -#: lib/bds/ui/sidebar.ex:779 +#: lib/bds/ui/sidebar.ex:816 #, elixir-autogen, elixir-format msgid "MCP" msgstr "MCP" @@ -1389,12 +1389,12 @@ msgstr "Nombre maximal d’articles par page" #: lib/bds/desktop/shell_live/misc_editor.ex:762 #: lib/bds/desktop/shell_live/sidebar_components.ex:654 #: lib/bds/desktop/shell_live/sidebar_delete.ex:175 -#: lib/bds/tui.ex:1117 -#: lib/bds/tui.ex:1328 -#: lib/bds/tui.ex:1331 +#: lib/bds/tui.ex:1223 +#: lib/bds/tui.ex:1434 +#: lib/bds/tui.ex:1437 #: lib/bds/ui/registry.ex:30 #: lib/bds/ui/registry.ex:100 -#: lib/bds/ui/sidebar.ex:558 +#: lib/bds/ui/sidebar.ex:578 #, elixir-autogen, elixir-format msgid "Media" msgstr "Médias" @@ -1420,7 +1420,7 @@ msgid "Merge" msgstr "Fusionner" #: lib/bds/desktop/shell_live/tags_editor_html/tags_editor.html.heex:78 -#: lib/bds/ui/sidebar.ex:750 +#: lib/bds/ui/sidebar.ex:787 #, elixir-autogen, elixir-format msgid "Merge Tags" msgstr "Fusionner les tags" @@ -1434,11 +1434,11 @@ msgstr "Métadonnées" #: lib/bds/desktop/shell_live/misc_editor.ex:214 #: lib/bds/desktop/shell_live/misc_editor.ex:226 #: lib/bds/desktop/shell_live/misc_editor.ex:448 -#: lib/bds/tui.ex:218 -#: lib/bds/tui.ex:224 +#: lib/bds/tui.ex:229 #: lib/bds/tui.ex:235 -#: lib/bds/tui.ex:935 -#: lib/bds/tui.ex:1244 +#: lib/bds/tui.ex:246 +#: lib/bds/tui.ex:1034 +#: lib/bds/tui.ex:1350 #: lib/bds/ui/registry.ex:111 #, elixir-autogen, elixir-format msgid "Metadata Diff" @@ -1484,7 +1484,7 @@ msgstr "Nouvelle page" #: lib/bds/desktop/menu_bar.ex:214 #: lib/bds/desktop/shell_live/sidebar_create.ex:41 -#: lib/bds/tui.ex:175 +#: lib/bds/tui.ex:186 #, elixir-autogen, elixir-format msgid "New Post" msgstr "Nouvel article" @@ -1544,8 +1544,8 @@ msgstr "Pas encore d'historique Git" #: lib/bds/desktop/shell_live/sidebar_components.ex:381 #: lib/bds/desktop/shell_live/sidebar_components.ex:455 #: lib/bds/ui/sidebar.ex:202 -#: lib/bds/ui/sidebar.ex:792 -#: lib/bds/ui/sidebar.ex:899 +#: lib/bds/ui/sidebar.ex:829 +#: lib/bds/ui/sidebar.ex:936 #, elixir-autogen, elixir-format msgid "No items" msgstr "Aucun élément" @@ -1570,8 +1570,8 @@ msgstr "Aucune page correspondante trouvée." msgid "No matching posts" msgstr "Aucun article correspondant" -#: lib/bds/ui/sidebar.ex:561 -#: lib/bds/ui/sidebar.ex:572 +#: lib/bds/ui/sidebar.ex:581 +#: lib/bds/ui/sidebar.ex:592 #, elixir-autogen, elixir-format msgid "No media files" msgstr "Aucun fichier média" @@ -1762,8 +1762,8 @@ msgid "Open Data Folder" msgstr "Ouvrir le dossier de données" #: lib/bds/desktop/shell_live/index.html.heex:644 -#: lib/bds/tui.ex:416 -#: lib/bds/tui.ex:421 +#: lib/bds/tui.ex:507 +#: lib/bds/tui.ex:512 #, elixir-autogen, elixir-format msgid "Open Existing Blog" msgstr "Ouvrir un blog existant" @@ -1775,7 +1775,7 @@ msgid "Open Settings" msgstr "Ouvrir les Réglages" #: lib/bds/desktop/menu_bar.ex:217 -#: lib/bds/tui.ex:1268 +#: lib/bds/tui.ex:1374 #, elixir-autogen, elixir-format msgid "Open in Browser" msgstr "Ouvrir dans le navigateur" @@ -1923,8 +1923,8 @@ msgstr "Article enregistré" #: lib/bds/desktop/menu_bar.ex:233 #: lib/bds/desktop/shell_live/misc_editor.ex:664 #: lib/bds/desktop/shell_live/misc_editor.ex:761 -#: lib/bds/tui.ex:1116 -#: lib/bds/tui.ex:1127 +#: lib/bds/tui.ex:1222 +#: lib/bds/tui.ex:1233 #: lib/bds/ui/registry.ex:14 #: lib/bds/ui/sidebar.ex:271 #, elixir-autogen, elixir-format @@ -1966,7 +1966,7 @@ msgstr "Aperçu non disponible" #: lib/bds/desktop/shell_live/misc_editor.ex:739 #: lib/bds/desktop/shell_live/misc_editor.ex:765 #: lib/bds/desktop/shell_live/settings_editor_html/settings_editor.html.heex:27 -#: lib/bds/ui/sidebar.ex:762 +#: lib/bds/ui/sidebar.ex:799 #, elixir-autogen, elixir-format msgid "Project" msgstr "Projet" @@ -1976,15 +1976,15 @@ msgstr "Projet" msgid "Project Name" msgstr "Nom du projet" -#: lib/bds/ui/sidebar.ex:759 +#: lib/bds/ui/sidebar.ex:796 #, elixir-autogen, elixir-format msgid "Project and publishing" msgstr "Projet et publication" #: lib/bds/desktop/shell_live/chat_surface.ex:15 #: lib/bds/desktop/shell_live/index.html.heex:623 -#: lib/bds/tui.ex:329 -#: lib/bds/tui.ex:334 +#: lib/bds/tui.ex:420 +#: lib/bds/tui.ex:425 #, elixir-autogen, elixir-format msgid "Projects" msgstr "Projets" @@ -2028,7 +2028,7 @@ msgstr "Traduction publiée avec contenu encore en base au lieu du système de f #: lib/bds/desktop/shell_live/settings_editor/publishing_settings.ex:40 #: lib/bds/desktop/shell_live/settings_editor/publishing_settings.ex:57 #: lib/bds/desktop/shell_live/settings_editor_html/settings_editor.html.heex:338 -#: lib/bds/ui/sidebar.ex:774 +#: lib/bds/ui/sidebar.ex:811 #, elixir-autogen, elixir-format msgid "Publishing" msgstr "Publication" @@ -2050,15 +2050,15 @@ msgid "Ready to import:" msgstr "Prêt à importer :" #: lib/bds/desktop/menu_bar.ex:248 -#: lib/bds/tui.ex:413 -#: lib/bds/tui.ex:1248 +#: lib/bds/tui.ex:504 +#: lib/bds/tui.ex:1354 #, elixir-autogen, elixir-format msgid "Rebuild Database" msgstr "Reconstruire la base de données" #: lib/bds/desktop/menu_bar.ex:250 #: lib/bds/desktop/shell_live/settings_editor_html/settings_editor.html.heex:381 -#: lib/bds/tui.ex:1252 +#: lib/bds/tui.ex:1358 #, elixir-autogen, elixir-format msgid "Rebuild Embedding Index" msgstr "Reconstruire l’index d’embeddings" @@ -2116,7 +2116,7 @@ msgid "Refresh Translation" msgstr "Actualiser la traduction" #: lib/bds/desktop/menu_bar.ex:252 -#: lib/bds/tui.ex:1255 +#: lib/bds/tui.ex:1361 #, elixir-autogen, elixir-format msgid "Regenerate Calendar" msgstr "Régénérer le calendrier" @@ -2127,7 +2127,7 @@ msgid "Regenerate Missing Thumbnails" msgstr "Régénérer les vignettes manquantes" #: lib/bds/desktop/menu_bar.ex:249 -#: lib/bds/tui.ex:1249 +#: lib/bds/tui.ex:1355 #, elixir-autogen, elixir-format msgid "Reindex Text" msgstr "Réindexer le texte" @@ -2313,7 +2313,7 @@ msgstr "Les capacités de script sont configurées au niveau de l’application #: lib/bds/desktop/shell_live/script_editor.ex:216 #: lib/bds/desktop/shell_live/script_editor.ex:219 #: lib/bds/desktop/shell_live/script_editor.ex:234 -#: lib/bds/tui.ex:1119 +#: lib/bds/tui.ex:1225 #: lib/bds/ui/registry.ex:38 #: lib/bds/ui/sidebar.ex:63 #: lib/bds/ui/sidebar.ex:115 @@ -2328,7 +2328,7 @@ msgid "Search" msgstr "Rechercher" #: lib/bds/desktop/shell_live/overlay_html/shell_overlay.html.heex:99 -#: lib/bds/ui/sidebar.ex:564 +#: lib/bds/ui/sidebar.ex:584 #, elixir-autogen, elixir-format msgid "Search media..." msgstr "Rechercher des médias..." @@ -2420,7 +2420,7 @@ msgstr "Similarité sémantique" #: lib/bds/desktop/shell_live/settings_editor_html/settings_editor.html.heex:11 #: lib/bds/ui/registry.ex:86 #: lib/bds/ui/registry.ex:101 -#: lib/bds/ui/sidebar.ex:758 +#: lib/bds/ui/sidebar.ex:795 #, elixir-autogen, elixir-format msgid "Settings" msgstr "Paramètres" @@ -2441,9 +2441,9 @@ msgid "Site" msgstr "Site" #: lib/bds/desktop/shell_live/misc_editor.ex:412 -#: lib/bds/tui.ex:251 -#: lib/bds/tui.ex:253 -#: lib/bds/tui.ex:940 +#: lib/bds/tui.ex:262 +#: lib/bds/tui.ex:264 +#: lib/bds/tui.ex:1039 #: lib/bds/ui/registry.ex:125 #, elixir-autogen, elixir-format msgid "Site Validation" @@ -2507,7 +2507,7 @@ msgstr "Arrêter" #: lib/bds/desktop/shell_live/settings_editor/style_editor.ex:76 #: lib/bds/desktop/shell_live/settings_editor_html/style_editor.html.heex:3 #: lib/bds/ui/registry.ex:102 -#: lib/bds/ui/sidebar.ex:780 +#: lib/bds/ui/sidebar.ex:817 #, elixir-autogen, elixir-format msgid "Style" msgstr "Style" @@ -2538,12 +2538,12 @@ msgid "System Prompt" msgstr "Prompt système" #: lib/bds/desktop/shell_live/tags_editor_html/tags_editor.html.heex:16 -#: lib/bds/ui/sidebar.ex:748 +#: lib/bds/ui/sidebar.ex:785 #, elixir-autogen, elixir-format msgid "Tag Cloud" msgstr "Nuage de tags" -#: lib/bds/ui/sidebar.ex:745 +#: lib/bds/ui/sidebar.ex:782 #, elixir-autogen, elixir-format msgid "Tag management" msgstr "Gestion des tags" @@ -2564,25 +2564,25 @@ msgstr "Nom du mot-clé" #: lib/bds/desktop/shell_live/tags_editor.ex:222 #: lib/bds/desktop/shell_live/tags_editor.ex:253 #: lib/bds/desktop/shell_live/tags_editor_html/tags_editor.html.heex:11 -#: lib/bds/tui.ex:1120 +#: lib/bds/tui.ex:1226 #: lib/bds/ui/registry.ex:54 #: lib/bds/ui/registry.ex:103 #: lib/bds/ui/sidebar.ex:289 -#: lib/bds/ui/sidebar.ex:567 -#: lib/bds/ui/sidebar.ex:744 +#: lib/bds/ui/sidebar.ex:587 +#: lib/bds/ui/sidebar.ex:781 #, elixir-autogen, elixir-format msgid "Tags" msgstr "Tags" #: lib/bds/desktop/shell_live.ex:786 #: lib/bds/desktop/shell_live/panel_renderer.ex:54 -#: lib/bds/tui.ex:594 +#: lib/bds/tui.ex:685 #, elixir-autogen, elixir-format msgid "Tasks" msgstr "Tâches" #: lib/bds/desktop/shell_live/settings_editor_html/settings_editor.html.heex:321 -#: lib/bds/ui/sidebar.ex:768 +#: lib/bds/ui/sidebar.ex:805 #, elixir-autogen, elixir-format msgid "Technology" msgstr "Technologie" @@ -2621,7 +2621,7 @@ msgstr "La syntaxe du template est valide" #: lib/bds/desktop/shell_live/template_editor.ex:171 #: lib/bds/desktop/shell_live/template_editor.ex:176 #: lib/bds/desktop/shell_live/template_editor.ex:191 -#: lib/bds/tui.ex:1118 +#: lib/bds/tui.ex:1224 #: lib/bds/ui/registry.ex:46 #: lib/bds/ui/sidebar.ex:71 #: lib/bds/ui/sidebar.ex:122 @@ -2682,7 +2682,7 @@ msgid "Toggle Dev Tools" msgstr "Afficher/masquer les outils de développement" #: lib/bds/ui/sidebar.ex:287 -#: lib/bds/ui/sidebar.ex:565 +#: lib/bds/ui/sidebar.ex:585 #, elixir-autogen, elixir-format msgid "Toggle Filters" msgstr "Afficher/masquer les filtres" @@ -2819,7 +2819,7 @@ msgstr "Non enregistré" #: lib/bds/desktop/shell_live/import_editor.ex:871 #: lib/bds/ui/post_editor/metadata.ex:166 -#: lib/bds/ui/sidebar.ex:1108 +#: lib/bds/ui/sidebar.ex:1147 #, elixir-autogen, elixir-format msgid "Untitled" msgstr "Sans titre" @@ -2844,7 +2844,7 @@ msgid "Updated URLs" msgstr "URLs mises à jour" #: lib/bds/desktop/menu_bar.ex:259 -#: lib/bds/tui.ex:1267 +#: lib/bds/tui.ex:1373 #, elixir-autogen, elixir-format msgid "Upload Site" msgstr "Téléverser le site" @@ -2872,13 +2872,13 @@ msgid "Validate" msgstr "Valider" #: lib/bds/desktop/menu_bar.ex:258 -#: lib/bds/tui.ex:1245 +#: lib/bds/tui.ex:1351 #, elixir-autogen, elixir-format msgid "Validate Site" msgstr "Valider le site" #: lib/bds/desktop/menu_bar.ex:253 -#: lib/bds/tui.ex:1258 +#: lib/bds/tui.ex:1364 #, elixir-autogen, elixir-format msgid "Validate Translations" msgstr "Valider les traductions" @@ -2916,7 +2916,7 @@ msgid "Working tree" msgstr "Arbre de travail" #: lib/bds/desktop/shell_live/tab_helpers.ex:191 -#: lib/bds/ui/sidebar.ex:790 +#: lib/bds/ui/sidebar.ex:827 #, elixir-autogen, elixir-format msgid "Working tree and history" msgstr "Arbre de travail et historique" @@ -3093,13 +3093,13 @@ msgid "posts" msgstr "articles" #: lib/bds/ui/sidebar.ex:294 -#: lib/bds/ui/sidebar.ex:570 +#: lib/bds/ui/sidebar.ex:590 #, elixir-autogen, elixir-format msgid "results" msgstr "résultats" #: lib/bds/ui/sidebar.ex:295 -#: lib/bds/ui/sidebar.ex:571 +#: lib/bds/ui/sidebar.ex:591 #, elixir-autogen, elixir-format msgid "results for" msgstr "résultats pour" @@ -3460,28 +3460,28 @@ msgstr "Synchronisé" msgid "This project is not a Git repository yet." msgstr "Ce projet n’est pas encore un dépôt Git." -#: lib/bds/ui/sidebar.ex:872 +#: lib/bds/ui/sidebar.ex:909 #, elixir-autogen, elixir-format msgid "added" msgstr "ajouté" -#: lib/bds/ui/sidebar.ex:873 +#: lib/bds/ui/sidebar.ex:910 #, elixir-autogen, elixir-format msgid "deleted" msgstr "supprimé" -#: lib/bds/ui/sidebar.ex:874 -#: lib/bds/ui/sidebar.ex:877 +#: lib/bds/ui/sidebar.ex:911 +#: lib/bds/ui/sidebar.ex:914 #, elixir-autogen, elixir-format msgid "modified" msgstr "modifié" -#: lib/bds/ui/sidebar.ex:875 +#: lib/bds/ui/sidebar.ex:912 #, elixir-autogen, elixir-format msgid "renamed" msgstr "renommé" -#: lib/bds/ui/sidebar.ex:876 +#: lib/bds/ui/sidebar.ex:913 #, elixir-autogen, elixir-format msgid "untracked" msgstr "non suivi" @@ -3543,7 +3543,7 @@ msgid "Suggested tags" msgstr "Tags suggérés" #: lib/bds/desktop/menu_bar.ex:257 -#: lib/bds/tui.ex:1246 +#: lib/bds/tui.ex:1352 #, elixir-autogen, elixir-format msgid "Force Render Site" msgstr "Forcer la régénération du site" @@ -3640,82 +3640,82 @@ msgstr "OK" msgid "The endpoint returned no models. You can still type a model name manually." msgstr "Le point de terminaison n'a renvoyé aucun modèle. Vous pouvez toujours saisir un nom de modèle manuellement." -#: lib/bds/tui.ex:1204 +#: lib/bds/tui.ex:1310 #, elixir-autogen, elixir-format msgid "AI is unavailable in airplane mode without a local endpoint." msgstr "L'IA n'est pas disponible en mode avion sans point de terminaison local." -#: lib/bds/tui.ex:1331 +#: lib/bds/tui.ex:1437 #, elixir-autogen, elixir-format msgid "Could not load this file." msgstr "Impossible de charger ce fichier." -#: lib/bds/tui.ex:183 +#: lib/bds/tui.ex:194 #, elixir-autogen, elixir-format msgid "Editing this item is not available in the terminal UI yet." msgstr "La modification de cet élément n'est pas encore disponible dans l'interface du terminal." -#: lib/bds/tui.ex:567 +#: lib/bds/tui.ex:658 #, elixir-autogen, elixir-format msgid "No suggestions returned." msgstr "Aucune suggestion reçue." -#: lib/bds/tui.ex:1328 +#: lib/bds/tui.ex:1434 #, elixir-autogen, elixir-format msgid "Only images can be previewed." msgstr "Seules les images peuvent être prévisualisées." -#: lib/bds/tui.ex:1127 +#: lib/bds/tui.ex:1233 #, elixir-autogen, elixir-format msgid "Post not found." msgstr "Article introuvable." -#: lib/bds/tui.ex:702 +#: lib/bds/tui.ex:800 #, elixir-autogen, elixir-format msgid "Press enter to preview %{name}." msgstr "Appuyez sur Entrée pour prévisualiser %{name}." -#: lib/bds/tui.ex:1174 +#: lib/bds/tui.ex:1280 #, elixir-autogen, elixir-format msgid "Published." msgstr "Publié." -#: lib/bds/tui.ex:1190 +#: lib/bds/tui.ex:1296 #, elixir-autogen, elixir-format msgid "Save before switching languages." msgstr "Enregistrez avant de changer de langue." -#: lib/bds/tui.ex:1175 +#: lib/bds/tui.ex:1281 #, elixir-autogen, elixir-format msgid "Saved." msgstr "Enregistré." -#: lib/bds/tui.ex:705 +#: lib/bds/tui.ex:803 #, elixir-autogen, elixir-format msgid "Select an entry and press enter to open it." msgstr "Sélectionnez une entrée et appuyez sur Entrée pour l'ouvrir." -#: lib/bds/tui.ex:564 +#: lib/bds/tui.ex:655 #, elixir-autogen, elixir-format msgid "Suggestions applied." msgstr "Suggestions appliquées." -#: lib/bds/tui.ex:717 +#: lib/bds/tui.ex:815 #, elixir-autogen, elixir-format msgid "Title (ctrl+t to edit)" msgstr "Titre (ctrl+t pour modifier)" -#: lib/bds/tui.ex:716 +#: lib/bds/tui.ex:814 #, elixir-autogen, elixir-format msgid "Title (editing — enter to confirm)" msgstr "Titre (édition — Entrée pour confirmer)" -#: lib/bds/tui.ex:764 +#: lib/bds/tui.ex:863 #, elixir-autogen, elixir-format msgid "Working…" msgstr "Traitement en cours…" -#: lib/bds/tui.ex:786 +#: lib/bds/tui.ex:885 #, elixir-autogen, elixir-format msgid "esc to close" msgstr "échap pour fermer" @@ -3752,122 +3752,122 @@ msgstr "Adresse du serveur (user@host ou user@host:port), authentification par c msgid "Use the form user@host or user@host:port." msgstr "Utilisez le format user@host ou user@host:port." -#: lib/bds/tui.ex:736 +#: lib/bds/tui.ex:834 #, elixir-autogen, elixir-format msgid "Preview (ctrl+e to edit)" msgstr "Aperçu (ctrl+e pour modifier)" -#: lib/bds/tui.ex:1029 +#: lib/bds/tui.ex:1128 #, elixir-autogen, elixir-format msgid "ctrl+s save · ctrl+p publish · ctrl+e preview · ctrl+t title · ctrl+l language · ctrl+g AI · esc back" msgstr "ctrl+s enregistrer · ctrl+p publier · ctrl+e aperçu · ctrl+t titre · ctrl+l langue · ctrl+g IA · échap retour" -#: lib/bds/tui.ex:594 +#: lib/bds/tui.ex:685 #, elixir-autogen, elixir-format msgid "All tasks finished." msgstr "Toutes les tâches sont terminées." -#: lib/bds/tui.ex:812 +#: lib/bds/tui.ex:911 #, elixir-autogen, elixir-format msgid "Commands — esc to close" msgstr "Commandes — échap pour fermer" -#: lib/bds/tui.ex:438 +#: lib/bds/tui.ex:529 #, elixir-autogen, elixir-format msgid "Unknown command." msgstr "Commande inconnue." -#: lib/bds/tui.ex:802 +#: lib/bds/tui.ex:901 #, elixir-autogen, elixir-format msgid "[report/apply in GUI]" msgstr "[rapport/application dans la GUI]" -#: lib/bds/tui.ex:951 +#: lib/bds/tui.ex:1050 #, elixir-autogen, elixir-format msgid "%{diffs} differences · %{orphans} orphan files" msgstr "%{diffs} différences · %{orphans} fichiers orphelins" -#: lib/bds/tui.ex:983 +#: lib/bds/tui.ex:1082 #, elixir-autogen, elixir-format msgid "Expected %{expected} · Existing %{existing}" msgstr "Attendu %{expected} · Existant %{existing}" -#: lib/bds/tui.ex:1000 +#: lib/bds/tui.ex:1099 #, elixir-autogen, elixir-format msgid "Extra files (will be removed):" msgstr "Fichiers en trop (seront supprimés) :" -#: lib/bds/tui.ex:996 +#: lib/bds/tui.ex:1095 #, elixir-autogen, elixir-format msgid "Missing pages (will be rendered):" msgstr "Pages manquantes (seront rendues) :" -#: lib/bds/tui.ex:251 +#: lib/bds/tui.ex:262 #, elixir-autogen, elixir-format msgid "Nothing to apply." msgstr "Rien à appliquer." -#: lib/bds/tui.ex:218 +#: lib/bds/tui.ex:229 #, elixir-autogen, elixir-format msgid "Nothing to repair." msgstr "Rien à réparer." -#: lib/bds/tui.ex:974 +#: lib/bds/tui.ex:1073 #, elixir-autogen, elixir-format msgid "Orphan files (not in database):" msgstr "Fichiers orphelins (absents de la base de données) :" -#: lib/bds/tui.ex:990 +#: lib/bds/tui.ex:1089 #, elixir-autogen, elixir-format msgid "Sitemap changed." msgstr "Sitemap modifié." -#: lib/bds/tui.ex:1004 +#: lib/bds/tui.ex:1103 #, elixir-autogen, elixir-format msgid "Updated posts (will be re-rendered):" msgstr "Articles mis à jour (seront rendus à nouveau) :" -#: lib/bds/tui.ex:941 +#: lib/bds/tui.ex:1040 #, elixir-autogen, elixir-format msgid "enter apply changes · esc close" msgstr "entrée appliquer les modifications · échap fermer" -#: lib/bds/tui.ex:936 +#: lib/bds/tui.ex:1035 #, elixir-autogen, elixir-format msgid "enter repair all from files · esc close" msgstr "entrée tout réparer depuis les fichiers · échap fermer" -#: lib/bds/tui.ex:403 +#: lib/bds/tui.ex:494 #, elixir-autogen, elixir-format msgid "Imported Blog" msgstr "Blog importé" -#: lib/bds/tui.ex:422 +#: lib/bds/tui.ex:513 #, elixir-autogen, elixir-format msgid "Not a folder: %{path}" msgstr "Pas un dossier : %{path}" -#: lib/bds/tui.ex:878 +#: lib/bds/tui.ex:977 #, elixir-autogen, elixir-format msgid "Projects — enter switch · o open existing · esc close" msgstr "Projets — entrée changer · o ouvrir existant · échap fermer" -#: lib/bds/tui.ex:330 +#: lib/bds/tui.ex:421 #, elixir-autogen, elixir-format msgid "Switched to %{name}." msgstr "Passage à %{name}." -#: lib/bds/tui.ex:1022 -#, elixir-autogen, elixir-format -msgid "enter open · n new post · 1-5 views · p projects · : commands (:? help) · r refresh · ctrl+q quit" -msgstr "entrée ouvrir · n nouvel article · 1-5 vues · p projets · : commandes (:? aide) · r actualiser · ctrl+q quitter" - -#: lib/bds/tui.ex:906 +#: lib/bds/tui.ex:1005 #, elixir-autogen, elixir-format msgid "Matching folders" msgstr "Dossiers correspondants" -#: lib/bds/tui.ex:844 +#: lib/bds/tui.ex:943 #, elixir-autogen, elixir-format msgid "Open Existing Blog — type a folder path · tab complete · enter open · esc back" msgstr "Ouvrir un blog existant — saisir le chemin d'un dossier · tab compléter · entrée ouvrir · échap retour" + +#: lib/bds/tui.ex:1121 +#, elixir-autogen, elixir-format +msgid "enter open · n new post · 1-5 views · p projects · / search · : commands (:? help) · r refresh · ctrl+q quit" +msgstr "entrée ouvrir · n nouvel article · 1-5 vues · p projets · / rechercher · : commandes (:? aide) · r actualiser · ctrl+q quitter" diff --git a/priv/gettext/it/LC_MESSAGES/render.po b/priv/gettext/it/LC_MESSAGES/render.po index 940fd66..3e07a3c 100644 --- a/priv/gettext/it/LC_MESSAGES/render.po +++ b/priv/gettext/it/LC_MESSAGES/render.po @@ -1,6 +1,6 @@ #: lib/bds/rendering/labels.ex:18 #: lib/bds/ui/sidebar.ex:288 -#: lib/bds/ui/sidebar.ex:566 +#: lib/bds/ui/sidebar.ex:586 #, elixir-autogen, elixir-format msgid "Archive" msgstr "Archivio" diff --git a/priv/gettext/it/LC_MESSAGES/ui.po b/priv/gettext/it/LC_MESSAGES/ui.po index 8a2f244..f9c582e 100644 --- a/priv/gettext/it/LC_MESSAGES/ui.po +++ b/priv/gettext/it/LC_MESSAGES/ui.po @@ -59,7 +59,7 @@ msgid "--" msgstr "--" #: lib/bds/desktop/shell_live/settings_editor_html/settings_editor.html.heex:220 -#: lib/bds/ui/sidebar.ex:765 +#: lib/bds/ui/sidebar.ex:802 #, elixir-autogen, elixir-format msgid "AI" msgstr "IA" @@ -81,11 +81,11 @@ msgstr "Impostazioni IA" #: lib/bds/desktop/shell_live/overlay_manager.ex:72 #: lib/bds/desktop/shell_live/post_editor.ex:920 #: lib/bds/desktop/shell_live/post_editor_html/post_editor.html.heex:43 -#: lib/bds/tui.ex:564 -#: lib/bds/tui.ex:567 -#: lib/bds/tui.ex:570 -#: lib/bds/tui.ex:578 -#: lib/bds/tui.ex:1203 +#: lib/bds/tui.ex:655 +#: lib/bds/tui.ex:658 +#: lib/bds/tui.ex:661 +#: lib/bds/tui.ex:669 +#: lib/bds/tui.ex:1309 #, elixir-autogen, elixir-format msgid "AI Suggestions" msgstr "Suggerimenti IA" @@ -527,7 +527,7 @@ msgid "Clear categories" msgstr "Cancella categorie" #: lib/bds/ui/sidebar.ex:293 -#: lib/bds/ui/sidebar.ex:569 +#: lib/bds/ui/sidebar.ex:589 #, elixir-autogen, elixir-format msgid "Clear filters" msgstr "Cancella filtri" @@ -539,7 +539,7 @@ msgid "Clear mapping" msgstr "Cancella mappatura" #: lib/bds/ui/sidebar.ex:291 -#: lib/bds/ui/sidebar.ex:568 +#: lib/bds/ui/sidebar.ex:588 #, elixir-autogen, elixir-format msgid "Clear tags" msgstr "Cancella tag" @@ -572,7 +572,7 @@ msgid "Collapse unchanged diff hunks" msgstr "Comprimi i blocchi diff invariati" #: lib/bds/desktop/shell_live/overlay_manager.ex:422 -#: lib/bds/tui.ex:1299 +#: lib/bds/tui.ex:1405 #, elixir-autogen, elixir-format msgid "Command completed" msgstr "Comando completato" @@ -590,8 +590,8 @@ msgstr "Conferma" #: lib/bds/desktop/shell_live/post_editor_html/post_editor.html.heex:375 #: lib/bds/desktop/shell_live/script_editor_html/script_editor.html.heex:34 #: lib/bds/desktop/shell_live/template_editor_html/template_editor.html.heex:32 -#: lib/bds/tui.ex:747 -#: lib/bds/ui/sidebar.ex:764 +#: lib/bds/tui.ex:845 +#: lib/bds/ui/sidebar.ex:801 #, elixir-autogen, elixir-format msgid "Content" msgstr "Contenuti" @@ -632,7 +632,7 @@ msgid "Create" msgstr "Crea" #: lib/bds/desktop/shell_live/tags_editor_html/tags_editor.html.heex:36 -#: lib/bds/ui/sidebar.ex:749 +#: lib/bds/ui/sidebar.ex:786 #, elixir-autogen, elixir-format msgid "Create / Edit" msgstr "Crea / modifica" @@ -678,7 +678,7 @@ msgstr "Scuro" msgid "Dashboard" msgstr "Dashboard" -#: lib/bds/ui/sidebar.ex:778 +#: lib/bds/ui/sidebar.ex:815 #, elixir-autogen, elixir-format msgid "Data" msgstr "Dati" @@ -913,7 +913,7 @@ msgstr "Modifica traduzione" #: lib/bds/desktop/shell_live/index.html.heex:513 #: lib/bds/desktop/shell_live/settings_editor_html/settings_editor.html.heex:114 -#: lib/bds/ui/sidebar.ex:763 +#: lib/bds/ui/sidebar.ex:800 #, elixir-autogen, elixir-format msgid "Editor" msgstr "Editor" @@ -1030,7 +1030,7 @@ msgid "Filename" msgstr "Nome file" #: lib/bds/desktop/menu_bar.ex:254 -#: lib/bds/tui.ex:1263 +#: lib/bds/tui.ex:1369 #, elixir-autogen, elixir-format msgid "Fill Missing Translations" msgstr "Completa traduzioni mancanti" @@ -1041,7 +1041,7 @@ msgid "Find" msgstr "Trova" #: lib/bds/desktop/menu_bar.ex:255 -#: lib/bds/tui.ex:1266 +#: lib/bds/tui.ex:1372 #, elixir-autogen, elixir-format msgid "Find Duplicate Posts" msgstr "Trova post duplicati" @@ -1068,14 +1068,14 @@ msgid "Gallery" msgstr "Galleria" #: lib/bds/desktop/menu_bar.ex:256 -#: lib/bds/tui.ex:1247 +#: lib/bds/tui.ex:1353 #, elixir-autogen, elixir-format msgid "Generate Site" msgstr "Genera sito" #: lib/bds/desktop/shell_live.ex:792 #: lib/bds/desktop/shell_live/socket_state.ex:109 -#: lib/bds/ui/sidebar.ex:789 +#: lib/bds/ui/sidebar.ex:826 #, elixir-autogen, elixir-format msgid "Git" msgstr "Git" @@ -1126,7 +1126,7 @@ msgstr "Inattivo" msgid "Ignore" msgstr "Ignora" -#: lib/bds/ui/sidebar.ex:559 +#: lib/bds/ui/sidebar.ex:579 #, elixir-autogen, elixir-format msgid "Images and files" msgstr "Immagini e file" @@ -1332,7 +1332,7 @@ msgstr "Carica altri" #: lib/bds/desktop/shell_live/settings_editor/mcp_config.ex:50 #: lib/bds/desktop/shell_live/settings_editor/mcp_config.ex:57 #: lib/bds/desktop/shell_live/settings_editor_html/settings_editor.html.heex:351 -#: lib/bds/ui/sidebar.ex:779 +#: lib/bds/ui/sidebar.ex:816 #, elixir-autogen, elixir-format msgid "MCP" msgstr "MCP" @@ -1389,12 +1389,12 @@ msgstr "Numero massimo di post per pagina" #: lib/bds/desktop/shell_live/misc_editor.ex:762 #: lib/bds/desktop/shell_live/sidebar_components.ex:654 #: lib/bds/desktop/shell_live/sidebar_delete.ex:175 -#: lib/bds/tui.ex:1117 -#: lib/bds/tui.ex:1328 -#: lib/bds/tui.ex:1331 +#: lib/bds/tui.ex:1223 +#: lib/bds/tui.ex:1434 +#: lib/bds/tui.ex:1437 #: lib/bds/ui/registry.ex:30 #: lib/bds/ui/registry.ex:100 -#: lib/bds/ui/sidebar.ex:558 +#: lib/bds/ui/sidebar.ex:578 #, elixir-autogen, elixir-format msgid "Media" msgstr "Media" @@ -1420,7 +1420,7 @@ msgid "Merge" msgstr "Unisci" #: lib/bds/desktop/shell_live/tags_editor_html/tags_editor.html.heex:78 -#: lib/bds/ui/sidebar.ex:750 +#: lib/bds/ui/sidebar.ex:787 #, elixir-autogen, elixir-format msgid "Merge Tags" msgstr "Unisci tag" @@ -1434,11 +1434,11 @@ msgstr "Metadati" #: lib/bds/desktop/shell_live/misc_editor.ex:214 #: lib/bds/desktop/shell_live/misc_editor.ex:226 #: lib/bds/desktop/shell_live/misc_editor.ex:448 -#: lib/bds/tui.ex:218 -#: lib/bds/tui.ex:224 +#: lib/bds/tui.ex:229 #: lib/bds/tui.ex:235 -#: lib/bds/tui.ex:935 -#: lib/bds/tui.ex:1244 +#: lib/bds/tui.ex:246 +#: lib/bds/tui.ex:1034 +#: lib/bds/tui.ex:1350 #: lib/bds/ui/registry.ex:111 #, elixir-autogen, elixir-format msgid "Metadata Diff" @@ -1484,7 +1484,7 @@ msgstr "Nuova pagina" #: lib/bds/desktop/menu_bar.ex:214 #: lib/bds/desktop/shell_live/sidebar_create.ex:41 -#: lib/bds/tui.ex:175 +#: lib/bds/tui.ex:186 #, elixir-autogen, elixir-format msgid "New Post" msgstr "Nuovo post" @@ -1544,8 +1544,8 @@ msgstr "Nessuna cronologia Git" #: lib/bds/desktop/shell_live/sidebar_components.ex:381 #: lib/bds/desktop/shell_live/sidebar_components.ex:455 #: lib/bds/ui/sidebar.ex:202 -#: lib/bds/ui/sidebar.ex:792 -#: lib/bds/ui/sidebar.ex:899 +#: lib/bds/ui/sidebar.ex:829 +#: lib/bds/ui/sidebar.ex:936 #, elixir-autogen, elixir-format msgid "No items" msgstr "Nessun elemento" @@ -1570,8 +1570,8 @@ msgstr "Nessuna pagina corrispondente trovata." msgid "No matching posts" msgstr "Nessun post corrispondente" -#: lib/bds/ui/sidebar.ex:561 -#: lib/bds/ui/sidebar.ex:572 +#: lib/bds/ui/sidebar.ex:581 +#: lib/bds/ui/sidebar.ex:592 #, elixir-autogen, elixir-format msgid "No media files" msgstr "Nessun file multimediale" @@ -1762,8 +1762,8 @@ msgid "Open Data Folder" msgstr "Apri cartella dati" #: lib/bds/desktop/shell_live/index.html.heex:644 -#: lib/bds/tui.ex:416 -#: lib/bds/tui.ex:421 +#: lib/bds/tui.ex:507 +#: lib/bds/tui.ex:512 #, elixir-autogen, elixir-format msgid "Open Existing Blog" msgstr "Apri blog esistente" @@ -1775,7 +1775,7 @@ msgid "Open Settings" msgstr "Apri Impostazioni" #: lib/bds/desktop/menu_bar.ex:217 -#: lib/bds/tui.ex:1268 +#: lib/bds/tui.ex:1374 #, elixir-autogen, elixir-format msgid "Open in Browser" msgstr "Apri nel browser" @@ -1923,8 +1923,8 @@ msgstr "Articolo salvato" #: lib/bds/desktop/menu_bar.ex:233 #: lib/bds/desktop/shell_live/misc_editor.ex:664 #: lib/bds/desktop/shell_live/misc_editor.ex:761 -#: lib/bds/tui.ex:1116 -#: lib/bds/tui.ex:1127 +#: lib/bds/tui.ex:1222 +#: lib/bds/tui.ex:1233 #: lib/bds/ui/registry.ex:14 #: lib/bds/ui/sidebar.ex:271 #, elixir-autogen, elixir-format @@ -1966,7 +1966,7 @@ msgstr "Anteprima non disponibile" #: lib/bds/desktop/shell_live/misc_editor.ex:739 #: lib/bds/desktop/shell_live/misc_editor.ex:765 #: lib/bds/desktop/shell_live/settings_editor_html/settings_editor.html.heex:27 -#: lib/bds/ui/sidebar.ex:762 +#: lib/bds/ui/sidebar.ex:799 #, elixir-autogen, elixir-format msgid "Project" msgstr "Progetto" @@ -1976,15 +1976,15 @@ msgstr "Progetto" msgid "Project Name" msgstr "Nome progetto" -#: lib/bds/ui/sidebar.ex:759 +#: lib/bds/ui/sidebar.ex:796 #, elixir-autogen, elixir-format msgid "Project and publishing" msgstr "Progetto e pubblicazione" #: lib/bds/desktop/shell_live/chat_surface.ex:15 #: lib/bds/desktop/shell_live/index.html.heex:623 -#: lib/bds/tui.ex:329 -#: lib/bds/tui.ex:334 +#: lib/bds/tui.ex:420 +#: lib/bds/tui.ex:425 #, elixir-autogen, elixir-format msgid "Projects" msgstr "Progetti" @@ -2028,7 +2028,7 @@ msgstr "Traduzione pubblicata con contenuto nel DB invece del filesystem" #: lib/bds/desktop/shell_live/settings_editor/publishing_settings.ex:40 #: lib/bds/desktop/shell_live/settings_editor/publishing_settings.ex:57 #: lib/bds/desktop/shell_live/settings_editor_html/settings_editor.html.heex:338 -#: lib/bds/ui/sidebar.ex:774 +#: lib/bds/ui/sidebar.ex:811 #, elixir-autogen, elixir-format msgid "Publishing" msgstr "Pubblicazione" @@ -2050,15 +2050,15 @@ msgid "Ready to import:" msgstr "Pronto per importare:" #: lib/bds/desktop/menu_bar.ex:248 -#: lib/bds/tui.ex:413 -#: lib/bds/tui.ex:1248 +#: lib/bds/tui.ex:504 +#: lib/bds/tui.ex:1354 #, elixir-autogen, elixir-format msgid "Rebuild Database" msgstr "Ricostruisci database" #: lib/bds/desktop/menu_bar.ex:250 #: lib/bds/desktop/shell_live/settings_editor_html/settings_editor.html.heex:381 -#: lib/bds/tui.ex:1252 +#: lib/bds/tui.ex:1358 #, elixir-autogen, elixir-format msgid "Rebuild Embedding Index" msgstr "Ricostruisci indice embeddings" @@ -2116,7 +2116,7 @@ msgid "Refresh Translation" msgstr "Aggiorna traduzione" #: lib/bds/desktop/menu_bar.ex:252 -#: lib/bds/tui.ex:1255 +#: lib/bds/tui.ex:1361 #, elixir-autogen, elixir-format msgid "Regenerate Calendar" msgstr "Rigenera calendario" @@ -2127,7 +2127,7 @@ msgid "Regenerate Missing Thumbnails" msgstr "Rigenera miniature mancanti" #: lib/bds/desktop/menu_bar.ex:249 -#: lib/bds/tui.ex:1249 +#: lib/bds/tui.ex:1355 #, elixir-autogen, elixir-format msgid "Reindex Text" msgstr "Reindicizza testo" @@ -2313,7 +2313,7 @@ msgstr "Le capacità di scripting sono configurate a livello applicativo nella r #: lib/bds/desktop/shell_live/script_editor.ex:216 #: lib/bds/desktop/shell_live/script_editor.ex:219 #: lib/bds/desktop/shell_live/script_editor.ex:234 -#: lib/bds/tui.ex:1119 +#: lib/bds/tui.ex:1225 #: lib/bds/ui/registry.ex:38 #: lib/bds/ui/sidebar.ex:63 #: lib/bds/ui/sidebar.ex:115 @@ -2328,7 +2328,7 @@ msgid "Search" msgstr "Cerca" #: lib/bds/desktop/shell_live/overlay_html/shell_overlay.html.heex:99 -#: lib/bds/ui/sidebar.ex:564 +#: lib/bds/ui/sidebar.ex:584 #, elixir-autogen, elixir-format msgid "Search media..." msgstr "Cerca media..." @@ -2420,7 +2420,7 @@ msgstr "Somiglianza semantica" #: lib/bds/desktop/shell_live/settings_editor_html/settings_editor.html.heex:11 #: lib/bds/ui/registry.ex:86 #: lib/bds/ui/registry.ex:101 -#: lib/bds/ui/sidebar.ex:758 +#: lib/bds/ui/sidebar.ex:795 #, elixir-autogen, elixir-format msgid "Settings" msgstr "Impostazioni" @@ -2441,9 +2441,9 @@ msgid "Site" msgstr "Sito" #: lib/bds/desktop/shell_live/misc_editor.ex:412 -#: lib/bds/tui.ex:251 -#: lib/bds/tui.ex:253 -#: lib/bds/tui.ex:940 +#: lib/bds/tui.ex:262 +#: lib/bds/tui.ex:264 +#: lib/bds/tui.ex:1039 #: lib/bds/ui/registry.ex:125 #, elixir-autogen, elixir-format msgid "Site Validation" @@ -2507,7 +2507,7 @@ msgstr "Ferma" #: lib/bds/desktop/shell_live/settings_editor/style_editor.ex:76 #: lib/bds/desktop/shell_live/settings_editor_html/style_editor.html.heex:3 #: lib/bds/ui/registry.ex:102 -#: lib/bds/ui/sidebar.ex:780 +#: lib/bds/ui/sidebar.ex:817 #, elixir-autogen, elixir-format msgid "Style" msgstr "Stile" @@ -2538,12 +2538,12 @@ msgid "System Prompt" msgstr "Prompt di sistema" #: lib/bds/desktop/shell_live/tags_editor_html/tags_editor.html.heex:16 -#: lib/bds/ui/sidebar.ex:748 +#: lib/bds/ui/sidebar.ex:785 #, elixir-autogen, elixir-format msgid "Tag Cloud" msgstr "Nuvola di tag" -#: lib/bds/ui/sidebar.ex:745 +#: lib/bds/ui/sidebar.ex:782 #, elixir-autogen, elixir-format msgid "Tag management" msgstr "Gestione tag" @@ -2564,25 +2564,25 @@ msgstr "Nome del tag" #: lib/bds/desktop/shell_live/tags_editor.ex:222 #: lib/bds/desktop/shell_live/tags_editor.ex:253 #: lib/bds/desktop/shell_live/tags_editor_html/tags_editor.html.heex:11 -#: lib/bds/tui.ex:1120 +#: lib/bds/tui.ex:1226 #: lib/bds/ui/registry.ex:54 #: lib/bds/ui/registry.ex:103 #: lib/bds/ui/sidebar.ex:289 -#: lib/bds/ui/sidebar.ex:567 -#: lib/bds/ui/sidebar.ex:744 +#: lib/bds/ui/sidebar.ex:587 +#: lib/bds/ui/sidebar.ex:781 #, elixir-autogen, elixir-format msgid "Tags" msgstr "Tag" #: lib/bds/desktop/shell_live.ex:786 #: lib/bds/desktop/shell_live/panel_renderer.ex:54 -#: lib/bds/tui.ex:594 +#: lib/bds/tui.ex:685 #, elixir-autogen, elixir-format msgid "Tasks" msgstr "Attività" #: lib/bds/desktop/shell_live/settings_editor_html/settings_editor.html.heex:321 -#: lib/bds/ui/sidebar.ex:768 +#: lib/bds/ui/sidebar.ex:805 #, elixir-autogen, elixir-format msgid "Technology" msgstr "Tecnologia" @@ -2621,7 +2621,7 @@ msgstr "La sintassi del template è valida" #: lib/bds/desktop/shell_live/template_editor.ex:171 #: lib/bds/desktop/shell_live/template_editor.ex:176 #: lib/bds/desktop/shell_live/template_editor.ex:191 -#: lib/bds/tui.ex:1118 +#: lib/bds/tui.ex:1224 #: lib/bds/ui/registry.ex:46 #: lib/bds/ui/sidebar.ex:71 #: lib/bds/ui/sidebar.ex:122 @@ -2682,7 +2682,7 @@ msgid "Toggle Dev Tools" msgstr "Attiva/disattiva strumenti sviluppo" #: lib/bds/ui/sidebar.ex:287 -#: lib/bds/ui/sidebar.ex:565 +#: lib/bds/ui/sidebar.ex:585 #, elixir-autogen, elixir-format msgid "Toggle Filters" msgstr "Mostra/nascondi filtri" @@ -2819,7 +2819,7 @@ msgstr "Non salvato" #: lib/bds/desktop/shell_live/import_editor.ex:871 #: lib/bds/ui/post_editor/metadata.ex:166 -#: lib/bds/ui/sidebar.ex:1108 +#: lib/bds/ui/sidebar.ex:1147 #, elixir-autogen, elixir-format msgid "Untitled" msgstr "Senza titolo" @@ -2844,7 +2844,7 @@ msgid "Updated URLs" msgstr "URL aggiornati" #: lib/bds/desktop/menu_bar.ex:259 -#: lib/bds/tui.ex:1267 +#: lib/bds/tui.ex:1373 #, elixir-autogen, elixir-format msgid "Upload Site" msgstr "Carica sito" @@ -2872,13 +2872,13 @@ msgid "Validate" msgstr "Valida" #: lib/bds/desktop/menu_bar.ex:258 -#: lib/bds/tui.ex:1245 +#: lib/bds/tui.ex:1351 #, elixir-autogen, elixir-format msgid "Validate Site" msgstr "Valida sito" #: lib/bds/desktop/menu_bar.ex:253 -#: lib/bds/tui.ex:1258 +#: lib/bds/tui.ex:1364 #, elixir-autogen, elixir-format msgid "Validate Translations" msgstr "Valida traduzioni" @@ -2916,7 +2916,7 @@ msgid "Working tree" msgstr "Working tree" #: lib/bds/desktop/shell_live/tab_helpers.ex:191 -#: lib/bds/ui/sidebar.ex:790 +#: lib/bds/ui/sidebar.ex:827 #, elixir-autogen, elixir-format msgid "Working tree and history" msgstr "Working tree e cronologia" @@ -3093,13 +3093,13 @@ msgid "posts" msgstr "articoli" #: lib/bds/ui/sidebar.ex:294 -#: lib/bds/ui/sidebar.ex:570 +#: lib/bds/ui/sidebar.ex:590 #, elixir-autogen, elixir-format msgid "results" msgstr "risultati" #: lib/bds/ui/sidebar.ex:295 -#: lib/bds/ui/sidebar.ex:571 +#: lib/bds/ui/sidebar.ex:591 #, elixir-autogen, elixir-format msgid "results for" msgstr "risultati per" @@ -3460,28 +3460,28 @@ msgstr "Sincronizzato" msgid "This project is not a Git repository yet." msgstr "Questo progetto non è ancora un repository Git." -#: lib/bds/ui/sidebar.ex:872 +#: lib/bds/ui/sidebar.ex:909 #, elixir-autogen, elixir-format msgid "added" msgstr "aggiunto" -#: lib/bds/ui/sidebar.ex:873 +#: lib/bds/ui/sidebar.ex:910 #, elixir-autogen, elixir-format msgid "deleted" msgstr "eliminato" -#: lib/bds/ui/sidebar.ex:874 -#: lib/bds/ui/sidebar.ex:877 +#: lib/bds/ui/sidebar.ex:911 +#: lib/bds/ui/sidebar.ex:914 #, elixir-autogen, elixir-format msgid "modified" msgstr "modificato" -#: lib/bds/ui/sidebar.ex:875 +#: lib/bds/ui/sidebar.ex:912 #, elixir-autogen, elixir-format msgid "renamed" msgstr "rinominato" -#: lib/bds/ui/sidebar.ex:876 +#: lib/bds/ui/sidebar.ex:913 #, elixir-autogen, elixir-format msgid "untracked" msgstr "non tracciato" @@ -3543,7 +3543,7 @@ msgid "Suggested tags" msgstr "Tag suggeriti" #: lib/bds/desktop/menu_bar.ex:257 -#: lib/bds/tui.ex:1246 +#: lib/bds/tui.ex:1352 #, elixir-autogen, elixir-format msgid "Force Render Site" msgstr "Forza la rigenerazione del sito" @@ -3640,82 +3640,82 @@ msgstr "OK" msgid "The endpoint returned no models. You can still type a model name manually." msgstr "L'endpoint non ha restituito alcun modello. Puoi comunque digitare manualmente il nome di un modello." -#: lib/bds/tui.ex:1204 +#: lib/bds/tui.ex:1310 #, elixir-autogen, elixir-format msgid "AI is unavailable in airplane mode without a local endpoint." msgstr "L'IA non è disponibile in modalità aereo senza un endpoint locale." -#: lib/bds/tui.ex:1331 +#: lib/bds/tui.ex:1437 #, elixir-autogen, elixir-format msgid "Could not load this file." msgstr "Impossibile caricare questo file." -#: lib/bds/tui.ex:183 +#: lib/bds/tui.ex:194 #, elixir-autogen, elixir-format msgid "Editing this item is not available in the terminal UI yet." msgstr "La modifica di questo elemento non è ancora disponibile nell'interfaccia del terminale." -#: lib/bds/tui.ex:567 +#: lib/bds/tui.ex:658 #, elixir-autogen, elixir-format msgid "No suggestions returned." msgstr "Nessun suggerimento ricevuto." -#: lib/bds/tui.ex:1328 +#: lib/bds/tui.ex:1434 #, elixir-autogen, elixir-format msgid "Only images can be previewed." msgstr "Solo le immagini possono essere visualizzate in anteprima." -#: lib/bds/tui.ex:1127 +#: lib/bds/tui.ex:1233 #, elixir-autogen, elixir-format msgid "Post not found." msgstr "Post non trovato." -#: lib/bds/tui.ex:702 +#: lib/bds/tui.ex:800 #, elixir-autogen, elixir-format msgid "Press enter to preview %{name}." msgstr "Premi Invio per l'anteprima di %{name}." -#: lib/bds/tui.ex:1174 +#: lib/bds/tui.ex:1280 #, elixir-autogen, elixir-format msgid "Published." msgstr "Pubblicato." -#: lib/bds/tui.ex:1190 +#: lib/bds/tui.ex:1296 #, elixir-autogen, elixir-format msgid "Save before switching languages." msgstr "Salva prima di cambiare lingua." -#: lib/bds/tui.ex:1175 +#: lib/bds/tui.ex:1281 #, elixir-autogen, elixir-format msgid "Saved." msgstr "Salvato." -#: lib/bds/tui.ex:705 +#: lib/bds/tui.ex:803 #, elixir-autogen, elixir-format msgid "Select an entry and press enter to open it." msgstr "Seleziona una voce e premi Invio per aprirla." -#: lib/bds/tui.ex:564 +#: lib/bds/tui.ex:655 #, elixir-autogen, elixir-format msgid "Suggestions applied." msgstr "Suggerimenti applicati." -#: lib/bds/tui.ex:717 +#: lib/bds/tui.ex:815 #, elixir-autogen, elixir-format msgid "Title (ctrl+t to edit)" msgstr "Titolo (ctrl+t per modificare)" -#: lib/bds/tui.ex:716 +#: lib/bds/tui.ex:814 #, elixir-autogen, elixir-format msgid "Title (editing — enter to confirm)" msgstr "Titolo (modifica — Invio per confermare)" -#: lib/bds/tui.ex:764 +#: lib/bds/tui.ex:863 #, elixir-autogen, elixir-format msgid "Working…" msgstr "Elaborazione…" -#: lib/bds/tui.ex:786 +#: lib/bds/tui.ex:885 #, elixir-autogen, elixir-format msgid "esc to close" msgstr "esc per chiudere" @@ -3752,122 +3752,122 @@ msgstr "Indirizzo del server (user@host o user@host:port), autenticazione a chia msgid "Use the form user@host or user@host:port." msgstr "Usa il formato user@host o user@host:port." -#: lib/bds/tui.ex:736 +#: lib/bds/tui.ex:834 #, elixir-autogen, elixir-format msgid "Preview (ctrl+e to edit)" msgstr "Anteprima (ctrl+e per modificare)" -#: lib/bds/tui.ex:1029 +#: lib/bds/tui.ex:1128 #, elixir-autogen, elixir-format msgid "ctrl+s save · ctrl+p publish · ctrl+e preview · ctrl+t title · ctrl+l language · ctrl+g AI · esc back" msgstr "ctrl+s salva · ctrl+p pubblica · ctrl+e anteprima · ctrl+t titolo · ctrl+l lingua · ctrl+g IA · esc indietro" -#: lib/bds/tui.ex:594 +#: lib/bds/tui.ex:685 #, elixir-autogen, elixir-format msgid "All tasks finished." msgstr "Tutte le attività sono terminate." -#: lib/bds/tui.ex:812 +#: lib/bds/tui.ex:911 #, elixir-autogen, elixir-format msgid "Commands — esc to close" msgstr "Comandi — esc per chiudere" -#: lib/bds/tui.ex:438 +#: lib/bds/tui.ex:529 #, elixir-autogen, elixir-format msgid "Unknown command." msgstr "Comando sconosciuto." -#: lib/bds/tui.ex:802 +#: lib/bds/tui.ex:901 #, elixir-autogen, elixir-format msgid "[report/apply in GUI]" msgstr "[report/applicazione nella GUI]" -#: lib/bds/tui.ex:951 +#: lib/bds/tui.ex:1050 #, elixir-autogen, elixir-format msgid "%{diffs} differences · %{orphans} orphan files" msgstr "%{diffs} differenze · %{orphans} file orfani" -#: lib/bds/tui.ex:983 +#: lib/bds/tui.ex:1082 #, elixir-autogen, elixir-format msgid "Expected %{expected} · Existing %{existing}" msgstr "Attesi %{expected} · Esistenti %{existing}" -#: lib/bds/tui.ex:1000 +#: lib/bds/tui.ex:1099 #, elixir-autogen, elixir-format msgid "Extra files (will be removed):" msgstr "File in eccesso (verranno rimossi):" -#: lib/bds/tui.ex:996 +#: lib/bds/tui.ex:1095 #, elixir-autogen, elixir-format msgid "Missing pages (will be rendered):" msgstr "Pagine mancanti (verranno generate):" -#: lib/bds/tui.ex:251 +#: lib/bds/tui.ex:262 #, elixir-autogen, elixir-format msgid "Nothing to apply." msgstr "Niente da applicare." -#: lib/bds/tui.ex:218 +#: lib/bds/tui.ex:229 #, elixir-autogen, elixir-format msgid "Nothing to repair." msgstr "Niente da riparare." -#: lib/bds/tui.ex:974 +#: lib/bds/tui.ex:1073 #, elixir-autogen, elixir-format msgid "Orphan files (not in database):" msgstr "File orfani (non presenti nel database):" -#: lib/bds/tui.ex:990 +#: lib/bds/tui.ex:1089 #, elixir-autogen, elixir-format msgid "Sitemap changed." msgstr "Sitemap modificata." -#: lib/bds/tui.ex:1004 +#: lib/bds/tui.ex:1103 #, elixir-autogen, elixir-format msgid "Updated posts (will be re-rendered):" msgstr "Post aggiornati (verranno rigenerati):" -#: lib/bds/tui.ex:941 +#: lib/bds/tui.ex:1040 #, elixir-autogen, elixir-format msgid "enter apply changes · esc close" msgstr "invio applica le modifiche · esc chiudi" -#: lib/bds/tui.ex:936 +#: lib/bds/tui.ex:1035 #, elixir-autogen, elixir-format msgid "enter repair all from files · esc close" msgstr "invio ripara tutto dai file · esc chiudi" -#: lib/bds/tui.ex:403 +#: lib/bds/tui.ex:494 #, elixir-autogen, elixir-format msgid "Imported Blog" msgstr "Blog importato" -#: lib/bds/tui.ex:422 +#: lib/bds/tui.ex:513 #, elixir-autogen, elixir-format msgid "Not a folder: %{path}" msgstr "Non è una cartella: %{path}" -#: lib/bds/tui.ex:878 +#: lib/bds/tui.ex:977 #, elixir-autogen, elixir-format msgid "Projects — enter switch · o open existing · esc close" msgstr "Progetti — invio cambia · o apri esistente · esc chiudi" -#: lib/bds/tui.ex:330 +#: lib/bds/tui.ex:421 #, elixir-autogen, elixir-format msgid "Switched to %{name}." msgstr "Passato a %{name}." -#: lib/bds/tui.ex:1022 -#, elixir-autogen, elixir-format -msgid "enter open · n new post · 1-5 views · p projects · : commands (:? help) · r refresh · ctrl+q quit" -msgstr "invio apri · n nuovo post · 1-5 viste · p progetti · : comandi (:? aiuto) · r aggiorna · ctrl+q esci" - -#: lib/bds/tui.ex:906 +#: lib/bds/tui.ex:1005 #, elixir-autogen, elixir-format msgid "Matching folders" msgstr "Cartelle corrispondenti" -#: lib/bds/tui.ex:844 +#: lib/bds/tui.ex:943 #, elixir-autogen, elixir-format msgid "Open Existing Blog — type a folder path · tab complete · enter open · esc back" msgstr "Apri blog esistente — digita il percorso di una cartella · tab completa · invio apri · esc indietro" + +#: lib/bds/tui.ex:1121 +#, elixir-autogen, elixir-format +msgid "enter open · n new post · 1-5 views · p projects · / search · : commands (:? help) · r refresh · ctrl+q quit" +msgstr "invio apri · n nuovo post · 1-5 viste · p progetti · / cerca · : comandi (:? aiuto) · r aggiorna · ctrl+q esci" diff --git a/priv/gettext/render.pot b/priv/gettext/render.pot index 14f6d44..ec48465 100644 --- a/priv/gettext/render.pot +++ b/priv/gettext/render.pot @@ -13,7 +13,7 @@ msgstr "" #: lib/bds/rendering/labels.ex:18 #: lib/bds/ui/sidebar.ex:288 -#: lib/bds/ui/sidebar.ex:566 +#: lib/bds/ui/sidebar.ex:586 #, elixir-autogen, elixir-format msgid "Archive" msgstr "" diff --git a/priv/gettext/ui.pot b/priv/gettext/ui.pot index 5a2563c..c00ee35 100644 --- a/priv/gettext/ui.pot +++ b/priv/gettext/ui.pot @@ -72,7 +72,7 @@ msgid "--" msgstr "" #: lib/bds/desktop/shell_live/settings_editor_html/settings_editor.html.heex:220 -#: lib/bds/ui/sidebar.ex:765 +#: lib/bds/ui/sidebar.ex:802 #, elixir-autogen, elixir-format msgid "AI" msgstr "" @@ -94,11 +94,11 @@ msgstr "" #: lib/bds/desktop/shell_live/overlay_manager.ex:72 #: lib/bds/desktop/shell_live/post_editor.ex:920 #: lib/bds/desktop/shell_live/post_editor_html/post_editor.html.heex:43 -#: lib/bds/tui.ex:564 -#: lib/bds/tui.ex:567 -#: lib/bds/tui.ex:570 -#: lib/bds/tui.ex:578 -#: lib/bds/tui.ex:1203 +#: lib/bds/tui.ex:655 +#: lib/bds/tui.ex:658 +#: lib/bds/tui.ex:661 +#: lib/bds/tui.ex:669 +#: lib/bds/tui.ex:1309 #, elixir-autogen, elixir-format msgid "AI Suggestions" msgstr "" @@ -540,7 +540,7 @@ msgid "Clear categories" msgstr "" #: lib/bds/ui/sidebar.ex:293 -#: lib/bds/ui/sidebar.ex:569 +#: lib/bds/ui/sidebar.ex:589 #, elixir-autogen, elixir-format msgid "Clear filters" msgstr "" @@ -552,7 +552,7 @@ msgid "Clear mapping" msgstr "" #: lib/bds/ui/sidebar.ex:291 -#: lib/bds/ui/sidebar.ex:568 +#: lib/bds/ui/sidebar.ex:588 #, elixir-autogen, elixir-format msgid "Clear tags" msgstr "" @@ -585,7 +585,7 @@ msgid "Collapse unchanged diff hunks" msgstr "" #: lib/bds/desktop/shell_live/overlay_manager.ex:422 -#: lib/bds/tui.ex:1299 +#: lib/bds/tui.ex:1405 #, elixir-autogen, elixir-format msgid "Command completed" msgstr "" @@ -603,8 +603,8 @@ msgstr "" #: lib/bds/desktop/shell_live/post_editor_html/post_editor.html.heex:375 #: lib/bds/desktop/shell_live/script_editor_html/script_editor.html.heex:34 #: lib/bds/desktop/shell_live/template_editor_html/template_editor.html.heex:32 -#: lib/bds/tui.ex:747 -#: lib/bds/ui/sidebar.ex:764 +#: lib/bds/tui.ex:845 +#: lib/bds/ui/sidebar.ex:801 #, elixir-autogen, elixir-format msgid "Content" msgstr "" @@ -645,7 +645,7 @@ msgid "Create" msgstr "" #: lib/bds/desktop/shell_live/tags_editor_html/tags_editor.html.heex:36 -#: lib/bds/ui/sidebar.ex:749 +#: lib/bds/ui/sidebar.ex:786 #, elixir-autogen, elixir-format msgid "Create / Edit" msgstr "" @@ -691,7 +691,7 @@ msgstr "" msgid "Dashboard" msgstr "" -#: lib/bds/ui/sidebar.ex:778 +#: lib/bds/ui/sidebar.ex:815 #, elixir-autogen, elixir-format msgid "Data" msgstr "" @@ -926,7 +926,7 @@ msgstr "" #: lib/bds/desktop/shell_live/index.html.heex:513 #: lib/bds/desktop/shell_live/settings_editor_html/settings_editor.html.heex:114 -#: lib/bds/ui/sidebar.ex:763 +#: lib/bds/ui/sidebar.ex:800 #, elixir-autogen, elixir-format msgid "Editor" msgstr "" @@ -1043,7 +1043,7 @@ msgid "Filename" msgstr "" #: lib/bds/desktop/menu_bar.ex:254 -#: lib/bds/tui.ex:1263 +#: lib/bds/tui.ex:1369 #, elixir-autogen, elixir-format msgid "Fill Missing Translations" msgstr "" @@ -1054,7 +1054,7 @@ msgid "Find" msgstr "" #: lib/bds/desktop/menu_bar.ex:255 -#: lib/bds/tui.ex:1266 +#: lib/bds/tui.ex:1372 #, elixir-autogen, elixir-format msgid "Find Duplicate Posts" msgstr "" @@ -1081,14 +1081,14 @@ msgid "Gallery" msgstr "" #: lib/bds/desktop/menu_bar.ex:256 -#: lib/bds/tui.ex:1247 +#: lib/bds/tui.ex:1353 #, elixir-autogen, elixir-format msgid "Generate Site" msgstr "" #: lib/bds/desktop/shell_live.ex:792 #: lib/bds/desktop/shell_live/socket_state.ex:109 -#: lib/bds/ui/sidebar.ex:789 +#: lib/bds/ui/sidebar.ex:826 #, elixir-autogen, elixir-format msgid "Git" msgstr "" @@ -1139,7 +1139,7 @@ msgstr "" msgid "Ignore" msgstr "" -#: lib/bds/ui/sidebar.ex:559 +#: lib/bds/ui/sidebar.ex:579 #, elixir-autogen, elixir-format msgid "Images and files" msgstr "" @@ -1345,7 +1345,7 @@ msgstr "" #: lib/bds/desktop/shell_live/settings_editor/mcp_config.ex:50 #: lib/bds/desktop/shell_live/settings_editor/mcp_config.ex:57 #: lib/bds/desktop/shell_live/settings_editor_html/settings_editor.html.heex:351 -#: lib/bds/ui/sidebar.ex:779 +#: lib/bds/ui/sidebar.ex:816 #, elixir-autogen, elixir-format msgid "MCP" msgstr "" @@ -1402,12 +1402,12 @@ msgstr "" #: lib/bds/desktop/shell_live/misc_editor.ex:762 #: lib/bds/desktop/shell_live/sidebar_components.ex:654 #: lib/bds/desktop/shell_live/sidebar_delete.ex:175 -#: lib/bds/tui.ex:1117 -#: lib/bds/tui.ex:1328 -#: lib/bds/tui.ex:1331 +#: lib/bds/tui.ex:1223 +#: lib/bds/tui.ex:1434 +#: lib/bds/tui.ex:1437 #: lib/bds/ui/registry.ex:30 #: lib/bds/ui/registry.ex:100 -#: lib/bds/ui/sidebar.ex:558 +#: lib/bds/ui/sidebar.ex:578 #, elixir-autogen, elixir-format msgid "Media" msgstr "" @@ -1433,7 +1433,7 @@ msgid "Merge" msgstr "" #: lib/bds/desktop/shell_live/tags_editor_html/tags_editor.html.heex:78 -#: lib/bds/ui/sidebar.ex:750 +#: lib/bds/ui/sidebar.ex:787 #, elixir-autogen, elixir-format msgid "Merge Tags" msgstr "" @@ -1447,11 +1447,11 @@ msgstr "" #: lib/bds/desktop/shell_live/misc_editor.ex:214 #: lib/bds/desktop/shell_live/misc_editor.ex:226 #: lib/bds/desktop/shell_live/misc_editor.ex:448 -#: lib/bds/tui.ex:218 -#: lib/bds/tui.ex:224 +#: lib/bds/tui.ex:229 #: lib/bds/tui.ex:235 -#: lib/bds/tui.ex:935 -#: lib/bds/tui.ex:1244 +#: lib/bds/tui.ex:246 +#: lib/bds/tui.ex:1034 +#: lib/bds/tui.ex:1350 #: lib/bds/ui/registry.ex:111 #, elixir-autogen, elixir-format msgid "Metadata Diff" @@ -1497,7 +1497,7 @@ msgstr "" #: lib/bds/desktop/menu_bar.ex:214 #: lib/bds/desktop/shell_live/sidebar_create.ex:41 -#: lib/bds/tui.ex:175 +#: lib/bds/tui.ex:186 #, elixir-autogen, elixir-format msgid "New Post" msgstr "" @@ -1557,8 +1557,8 @@ msgstr "" #: lib/bds/desktop/shell_live/sidebar_components.ex:381 #: lib/bds/desktop/shell_live/sidebar_components.ex:455 #: lib/bds/ui/sidebar.ex:202 -#: lib/bds/ui/sidebar.ex:792 -#: lib/bds/ui/sidebar.ex:899 +#: lib/bds/ui/sidebar.ex:829 +#: lib/bds/ui/sidebar.ex:936 #, elixir-autogen, elixir-format msgid "No items" msgstr "" @@ -1583,8 +1583,8 @@ msgstr "" msgid "No matching posts" msgstr "" -#: lib/bds/ui/sidebar.ex:561 -#: lib/bds/ui/sidebar.ex:572 +#: lib/bds/ui/sidebar.ex:581 +#: lib/bds/ui/sidebar.ex:592 #, elixir-autogen, elixir-format msgid "No media files" msgstr "" @@ -1775,8 +1775,8 @@ msgid "Open Data Folder" msgstr "" #: lib/bds/desktop/shell_live/index.html.heex:644 -#: lib/bds/tui.ex:416 -#: lib/bds/tui.ex:421 +#: lib/bds/tui.ex:507 +#: lib/bds/tui.ex:512 #, elixir-autogen, elixir-format msgid "Open Existing Blog" msgstr "" @@ -1788,7 +1788,7 @@ msgid "Open Settings" msgstr "" #: lib/bds/desktop/menu_bar.ex:217 -#: lib/bds/tui.ex:1268 +#: lib/bds/tui.ex:1374 #, elixir-autogen, elixir-format msgid "Open in Browser" msgstr "" @@ -1936,8 +1936,8 @@ msgstr "" #: lib/bds/desktop/menu_bar.ex:233 #: lib/bds/desktop/shell_live/misc_editor.ex:664 #: lib/bds/desktop/shell_live/misc_editor.ex:761 -#: lib/bds/tui.ex:1116 -#: lib/bds/tui.ex:1127 +#: lib/bds/tui.ex:1222 +#: lib/bds/tui.ex:1233 #: lib/bds/ui/registry.ex:14 #: lib/bds/ui/sidebar.ex:271 #, elixir-autogen, elixir-format @@ -1979,7 +1979,7 @@ msgstr "" #: lib/bds/desktop/shell_live/misc_editor.ex:739 #: lib/bds/desktop/shell_live/misc_editor.ex:765 #: lib/bds/desktop/shell_live/settings_editor_html/settings_editor.html.heex:27 -#: lib/bds/ui/sidebar.ex:762 +#: lib/bds/ui/sidebar.ex:799 #, elixir-autogen, elixir-format msgid "Project" msgstr "" @@ -1989,15 +1989,15 @@ msgstr "" msgid "Project Name" msgstr "" -#: lib/bds/ui/sidebar.ex:759 +#: lib/bds/ui/sidebar.ex:796 #, elixir-autogen, elixir-format msgid "Project and publishing" msgstr "" #: lib/bds/desktop/shell_live/chat_surface.ex:15 #: lib/bds/desktop/shell_live/index.html.heex:623 -#: lib/bds/tui.ex:329 -#: lib/bds/tui.ex:334 +#: lib/bds/tui.ex:420 +#: lib/bds/tui.ex:425 #, elixir-autogen, elixir-format msgid "Projects" msgstr "" @@ -2041,7 +2041,7 @@ msgstr "" #: lib/bds/desktop/shell_live/settings_editor/publishing_settings.ex:40 #: lib/bds/desktop/shell_live/settings_editor/publishing_settings.ex:57 #: lib/bds/desktop/shell_live/settings_editor_html/settings_editor.html.heex:338 -#: lib/bds/ui/sidebar.ex:774 +#: lib/bds/ui/sidebar.ex:811 #, elixir-autogen, elixir-format msgid "Publishing" msgstr "" @@ -2063,15 +2063,15 @@ msgid "Ready to import:" msgstr "" #: lib/bds/desktop/menu_bar.ex:248 -#: lib/bds/tui.ex:413 -#: lib/bds/tui.ex:1248 +#: lib/bds/tui.ex:504 +#: lib/bds/tui.ex:1354 #, elixir-autogen, elixir-format msgid "Rebuild Database" msgstr "" #: lib/bds/desktop/menu_bar.ex:250 #: lib/bds/desktop/shell_live/settings_editor_html/settings_editor.html.heex:381 -#: lib/bds/tui.ex:1252 +#: lib/bds/tui.ex:1358 #, elixir-autogen, elixir-format msgid "Rebuild Embedding Index" msgstr "" @@ -2129,7 +2129,7 @@ msgid "Refresh Translation" msgstr "" #: lib/bds/desktop/menu_bar.ex:252 -#: lib/bds/tui.ex:1255 +#: lib/bds/tui.ex:1361 #, elixir-autogen, elixir-format msgid "Regenerate Calendar" msgstr "" @@ -2140,7 +2140,7 @@ msgid "Regenerate Missing Thumbnails" msgstr "" #: lib/bds/desktop/menu_bar.ex:249 -#: lib/bds/tui.ex:1249 +#: lib/bds/tui.ex:1355 #, elixir-autogen, elixir-format msgid "Reindex Text" msgstr "" @@ -2326,7 +2326,7 @@ msgstr "" #: lib/bds/desktop/shell_live/script_editor.ex:216 #: lib/bds/desktop/shell_live/script_editor.ex:219 #: lib/bds/desktop/shell_live/script_editor.ex:234 -#: lib/bds/tui.ex:1119 +#: lib/bds/tui.ex:1225 #: lib/bds/ui/registry.ex:38 #: lib/bds/ui/sidebar.ex:63 #: lib/bds/ui/sidebar.ex:115 @@ -2341,7 +2341,7 @@ msgid "Search" msgstr "" #: lib/bds/desktop/shell_live/overlay_html/shell_overlay.html.heex:99 -#: lib/bds/ui/sidebar.ex:564 +#: lib/bds/ui/sidebar.ex:584 #, elixir-autogen, elixir-format msgid "Search media..." msgstr "" @@ -2433,7 +2433,7 @@ msgstr "" #: lib/bds/desktop/shell_live/settings_editor_html/settings_editor.html.heex:11 #: lib/bds/ui/registry.ex:86 #: lib/bds/ui/registry.ex:101 -#: lib/bds/ui/sidebar.ex:758 +#: lib/bds/ui/sidebar.ex:795 #, elixir-autogen, elixir-format msgid "Settings" msgstr "" @@ -2454,9 +2454,9 @@ msgid "Site" msgstr "" #: lib/bds/desktop/shell_live/misc_editor.ex:412 -#: lib/bds/tui.ex:251 -#: lib/bds/tui.ex:253 -#: lib/bds/tui.ex:940 +#: lib/bds/tui.ex:262 +#: lib/bds/tui.ex:264 +#: lib/bds/tui.ex:1039 #: lib/bds/ui/registry.ex:125 #, elixir-autogen, elixir-format msgid "Site Validation" @@ -2520,7 +2520,7 @@ msgstr "" #: lib/bds/desktop/shell_live/settings_editor/style_editor.ex:76 #: lib/bds/desktop/shell_live/settings_editor_html/style_editor.html.heex:3 #: lib/bds/ui/registry.ex:102 -#: lib/bds/ui/sidebar.ex:780 +#: lib/bds/ui/sidebar.ex:817 #, elixir-autogen, elixir-format msgid "Style" msgstr "" @@ -2551,12 +2551,12 @@ msgid "System Prompt" msgstr "" #: lib/bds/desktop/shell_live/tags_editor_html/tags_editor.html.heex:16 -#: lib/bds/ui/sidebar.ex:748 +#: lib/bds/ui/sidebar.ex:785 #, elixir-autogen, elixir-format msgid "Tag Cloud" msgstr "" -#: lib/bds/ui/sidebar.ex:745 +#: lib/bds/ui/sidebar.ex:782 #, elixir-autogen, elixir-format msgid "Tag management" msgstr "" @@ -2577,25 +2577,25 @@ msgstr "" #: lib/bds/desktop/shell_live/tags_editor.ex:222 #: lib/bds/desktop/shell_live/tags_editor.ex:253 #: lib/bds/desktop/shell_live/tags_editor_html/tags_editor.html.heex:11 -#: lib/bds/tui.ex:1120 +#: lib/bds/tui.ex:1226 #: lib/bds/ui/registry.ex:54 #: lib/bds/ui/registry.ex:103 #: lib/bds/ui/sidebar.ex:289 -#: lib/bds/ui/sidebar.ex:567 -#: lib/bds/ui/sidebar.ex:744 +#: lib/bds/ui/sidebar.ex:587 +#: lib/bds/ui/sidebar.ex:781 #, elixir-autogen, elixir-format msgid "Tags" msgstr "" #: lib/bds/desktop/shell_live.ex:786 #: lib/bds/desktop/shell_live/panel_renderer.ex:54 -#: lib/bds/tui.ex:594 +#: lib/bds/tui.ex:685 #, elixir-autogen, elixir-format msgid "Tasks" msgstr "" #: lib/bds/desktop/shell_live/settings_editor_html/settings_editor.html.heex:321 -#: lib/bds/ui/sidebar.ex:768 +#: lib/bds/ui/sidebar.ex:805 #, elixir-autogen, elixir-format msgid "Technology" msgstr "" @@ -2634,7 +2634,7 @@ msgstr "" #: lib/bds/desktop/shell_live/template_editor.ex:171 #: lib/bds/desktop/shell_live/template_editor.ex:176 #: lib/bds/desktop/shell_live/template_editor.ex:191 -#: lib/bds/tui.ex:1118 +#: lib/bds/tui.ex:1224 #: lib/bds/ui/registry.ex:46 #: lib/bds/ui/sidebar.ex:71 #: lib/bds/ui/sidebar.ex:122 @@ -2695,7 +2695,7 @@ msgid "Toggle Dev Tools" msgstr "" #: lib/bds/ui/sidebar.ex:287 -#: lib/bds/ui/sidebar.ex:565 +#: lib/bds/ui/sidebar.ex:585 #, elixir-autogen, elixir-format msgid "Toggle Filters" msgstr "" @@ -2832,7 +2832,7 @@ msgstr "" #: lib/bds/desktop/shell_live/import_editor.ex:871 #: lib/bds/ui/post_editor/metadata.ex:166 -#: lib/bds/ui/sidebar.ex:1108 +#: lib/bds/ui/sidebar.ex:1147 #, elixir-autogen, elixir-format msgid "Untitled" msgstr "" @@ -2857,7 +2857,7 @@ msgid "Updated URLs" msgstr "" #: lib/bds/desktop/menu_bar.ex:259 -#: lib/bds/tui.ex:1267 +#: lib/bds/tui.ex:1373 #, elixir-autogen, elixir-format msgid "Upload Site" msgstr "" @@ -2885,13 +2885,13 @@ msgid "Validate" msgstr "" #: lib/bds/desktop/menu_bar.ex:258 -#: lib/bds/tui.ex:1245 +#: lib/bds/tui.ex:1351 #, elixir-autogen, elixir-format msgid "Validate Site" msgstr "" #: lib/bds/desktop/menu_bar.ex:253 -#: lib/bds/tui.ex:1258 +#: lib/bds/tui.ex:1364 #, elixir-autogen, elixir-format msgid "Validate Translations" msgstr "" @@ -2929,7 +2929,7 @@ msgid "Working tree" msgstr "" #: lib/bds/desktop/shell_live/tab_helpers.ex:191 -#: lib/bds/ui/sidebar.ex:790 +#: lib/bds/ui/sidebar.ex:827 #, elixir-autogen, elixir-format msgid "Working tree and history" msgstr "" @@ -3106,13 +3106,13 @@ msgid "posts" msgstr "" #: lib/bds/ui/sidebar.ex:294 -#: lib/bds/ui/sidebar.ex:570 +#: lib/bds/ui/sidebar.ex:590 #, elixir-autogen, elixir-format msgid "results" msgstr "" #: lib/bds/ui/sidebar.ex:295 -#: lib/bds/ui/sidebar.ex:571 +#: lib/bds/ui/sidebar.ex:591 #, elixir-autogen, elixir-format msgid "results for" msgstr "" @@ -3473,28 +3473,28 @@ msgstr "" msgid "This project is not a Git repository yet." msgstr "" -#: lib/bds/ui/sidebar.ex:872 +#: lib/bds/ui/sidebar.ex:909 #, elixir-autogen, elixir-format msgid "added" msgstr "" -#: lib/bds/ui/sidebar.ex:873 +#: lib/bds/ui/sidebar.ex:910 #, elixir-autogen, elixir-format msgid "deleted" msgstr "" -#: lib/bds/ui/sidebar.ex:874 -#: lib/bds/ui/sidebar.ex:877 +#: lib/bds/ui/sidebar.ex:911 +#: lib/bds/ui/sidebar.ex:914 #, elixir-autogen, elixir-format msgid "modified" msgstr "" -#: lib/bds/ui/sidebar.ex:875 +#: lib/bds/ui/sidebar.ex:912 #, elixir-autogen, elixir-format msgid "renamed" msgstr "" -#: lib/bds/ui/sidebar.ex:876 +#: lib/bds/ui/sidebar.ex:913 #, elixir-autogen, elixir-format msgid "untracked" msgstr "" @@ -3556,7 +3556,7 @@ msgid "Suggested tags" msgstr "" #: lib/bds/desktop/menu_bar.ex:257 -#: lib/bds/tui.ex:1246 +#: lib/bds/tui.ex:1352 #, elixir-autogen, elixir-format msgid "Force Render Site" msgstr "" @@ -3653,82 +3653,82 @@ msgstr "" msgid "The endpoint returned no models. You can still type a model name manually." msgstr "" -#: lib/bds/tui.ex:1204 +#: lib/bds/tui.ex:1310 #, elixir-autogen, elixir-format msgid "AI is unavailable in airplane mode without a local endpoint." msgstr "" -#: lib/bds/tui.ex:1331 +#: lib/bds/tui.ex:1437 #, elixir-autogen, elixir-format msgid "Could not load this file." msgstr "" -#: lib/bds/tui.ex:183 +#: lib/bds/tui.ex:194 #, elixir-autogen, elixir-format msgid "Editing this item is not available in the terminal UI yet." msgstr "" -#: lib/bds/tui.ex:567 +#: lib/bds/tui.ex:658 #, elixir-autogen, elixir-format msgid "No suggestions returned." msgstr "" -#: lib/bds/tui.ex:1328 +#: lib/bds/tui.ex:1434 #, elixir-autogen, elixir-format msgid "Only images can be previewed." msgstr "" -#: lib/bds/tui.ex:1127 +#: lib/bds/tui.ex:1233 #, elixir-autogen, elixir-format msgid "Post not found." msgstr "" -#: lib/bds/tui.ex:702 +#: lib/bds/tui.ex:800 #, elixir-autogen, elixir-format msgid "Press enter to preview %{name}." msgstr "" -#: lib/bds/tui.ex:1174 +#: lib/bds/tui.ex:1280 #, elixir-autogen, elixir-format msgid "Published." msgstr "" -#: lib/bds/tui.ex:1190 +#: lib/bds/tui.ex:1296 #, elixir-autogen, elixir-format msgid "Save before switching languages." msgstr "" -#: lib/bds/tui.ex:1175 +#: lib/bds/tui.ex:1281 #, elixir-autogen, elixir-format msgid "Saved." msgstr "" -#: lib/bds/tui.ex:705 +#: lib/bds/tui.ex:803 #, elixir-autogen, elixir-format msgid "Select an entry and press enter to open it." msgstr "" -#: lib/bds/tui.ex:564 +#: lib/bds/tui.ex:655 #, elixir-autogen, elixir-format msgid "Suggestions applied." msgstr "" -#: lib/bds/tui.ex:717 +#: lib/bds/tui.ex:815 #, elixir-autogen, elixir-format msgid "Title (ctrl+t to edit)" msgstr "" -#: lib/bds/tui.ex:716 +#: lib/bds/tui.ex:814 #, elixir-autogen, elixir-format msgid "Title (editing — enter to confirm)" msgstr "" -#: lib/bds/tui.ex:764 +#: lib/bds/tui.ex:863 #, elixir-autogen, elixir-format msgid "Working…" msgstr "" -#: lib/bds/tui.ex:786 +#: lib/bds/tui.ex:885 #, elixir-autogen, elixir-format msgid "esc to close" msgstr "" @@ -3765,122 +3765,122 @@ msgstr "" msgid "Use the form user@host or user@host:port." msgstr "" -#: lib/bds/tui.ex:736 +#: lib/bds/tui.ex:834 #, elixir-autogen, elixir-format msgid "Preview (ctrl+e to edit)" msgstr "" -#: lib/bds/tui.ex:1029 +#: lib/bds/tui.ex:1128 #, elixir-autogen, elixir-format msgid "ctrl+s save · ctrl+p publish · ctrl+e preview · ctrl+t title · ctrl+l language · ctrl+g AI · esc back" msgstr "" -#: lib/bds/tui.ex:594 +#: lib/bds/tui.ex:685 #, elixir-autogen, elixir-format msgid "All tasks finished." msgstr "" -#: lib/bds/tui.ex:812 +#: lib/bds/tui.ex:911 #, elixir-autogen, elixir-format msgid "Commands — esc to close" msgstr "" -#: lib/bds/tui.ex:438 +#: lib/bds/tui.ex:529 #, elixir-autogen, elixir-format msgid "Unknown command." msgstr "" -#: lib/bds/tui.ex:802 +#: lib/bds/tui.ex:901 #, elixir-autogen, elixir-format msgid "[report/apply in GUI]" msgstr "" -#: lib/bds/tui.ex:951 +#: lib/bds/tui.ex:1050 #, elixir-autogen, elixir-format msgid "%{diffs} differences · %{orphans} orphan files" msgstr "" -#: lib/bds/tui.ex:983 +#: lib/bds/tui.ex:1082 #, elixir-autogen, elixir-format msgid "Expected %{expected} · Existing %{existing}" msgstr "" -#: lib/bds/tui.ex:1000 +#: lib/bds/tui.ex:1099 #, elixir-autogen, elixir-format msgid "Extra files (will be removed):" msgstr "" -#: lib/bds/tui.ex:996 +#: lib/bds/tui.ex:1095 #, elixir-autogen, elixir-format msgid "Missing pages (will be rendered):" msgstr "" -#: lib/bds/tui.ex:251 +#: lib/bds/tui.ex:262 #, elixir-autogen, elixir-format msgid "Nothing to apply." msgstr "" -#: lib/bds/tui.ex:218 +#: lib/bds/tui.ex:229 #, elixir-autogen, elixir-format msgid "Nothing to repair." msgstr "" -#: lib/bds/tui.ex:974 +#: lib/bds/tui.ex:1073 #, elixir-autogen, elixir-format msgid "Orphan files (not in database):" msgstr "" -#: lib/bds/tui.ex:990 +#: lib/bds/tui.ex:1089 #, elixir-autogen, elixir-format msgid "Sitemap changed." msgstr "" -#: lib/bds/tui.ex:1004 +#: lib/bds/tui.ex:1103 #, elixir-autogen, elixir-format msgid "Updated posts (will be re-rendered):" msgstr "" -#: lib/bds/tui.ex:941 +#: lib/bds/tui.ex:1040 #, elixir-autogen, elixir-format msgid "enter apply changes · esc close" msgstr "" -#: lib/bds/tui.ex:936 +#: lib/bds/tui.ex:1035 #, elixir-autogen, elixir-format msgid "enter repair all from files · esc close" msgstr "" -#: lib/bds/tui.ex:403 +#: lib/bds/tui.ex:494 #, elixir-autogen, elixir-format msgid "Imported Blog" msgstr "" -#: lib/bds/tui.ex:422 +#: lib/bds/tui.ex:513 #, elixir-autogen, elixir-format msgid "Not a folder: %{path}" msgstr "" -#: lib/bds/tui.ex:878 +#: lib/bds/tui.ex:977 #, elixir-autogen, elixir-format msgid "Projects — enter switch · o open existing · esc close" msgstr "" -#: lib/bds/tui.ex:330 +#: lib/bds/tui.ex:421 #, elixir-autogen, elixir-format msgid "Switched to %{name}." msgstr "" -#: lib/bds/tui.ex:1022 -#, elixir-autogen, elixir-format -msgid "enter open · n new post · 1-5 views · p projects · : commands (:? help) · r refresh · ctrl+q quit" -msgstr "" - -#: lib/bds/tui.ex:906 +#: lib/bds/tui.ex:1005 #, elixir-autogen, elixir-format msgid "Matching folders" msgstr "" -#: lib/bds/tui.ex:844 +#: lib/bds/tui.ex:943 #, elixir-autogen, elixir-format msgid "Open Existing Blog — type a folder path · tab complete · enter open · esc back" msgstr "" + +#: lib/bds/tui.ex:1121 +#, elixir-autogen, elixir-format +msgid "enter open · n new post · 1-5 views · p projects · / search · : commands (:? help) · r refresh · ctrl+q quit" +msgstr "" diff --git a/specs/tui.allium b/specs/tui.allium index a35f2d5..58358db 100644 --- a/specs/tui.allium +++ b/specs/tui.allium @@ -83,6 +83,19 @@ rule ProjectSwitcher { ensures: ProjectSwitchedOrOpened() } +rule SidebarSearch { + when: TuiKeyPressed(code: "/") + -- "/" in sidebar focus opens a vi-style search prompt in the status + -- line that live-filters the current view through the same + -- BDS.UI.Sidebar filter params the GUI sidebar uses (posts, pages, + -- media). Plain words are a text search, "tag:x" and "category:x" + -- filter like the GUI chips, and an ISO date (yyyy-mm-dd) narrows + -- to that day — the day filter extends the shared sidebar queries. + -- Tokens combine with AND. Enter keeps the filter (shown appended + -- to the sidebar title), esc clears it; filters are per view. + ensures: SidebarFiltered() +} + rule CommandPrompt { when: TuiKeyPressed(code: ":") -- Vi-style prompt: ":" opens a filterable list of the parameterless diff --git a/test/bds/tui_test.exs b/test/bds/tui_test.exs index d57047b..61bc69e 100644 --- a/test/bds/tui_test.exs +++ b/test/bds/tui_test.exs @@ -524,6 +524,101 @@ defmodule BDS.TUITest do end end + describe "sidebar search" do + setup %{project: project} do + {:ok, tagged} = + BDS.Posts.create_post(%{ + project_id: project.id, + title: "Tagged Post", + content: "x", + tags: ["elixir"], + categories: ["news"] + }) + + {:ok, tagged: tagged} + end + + defp item_titles(state) do + for {:item, item} <- state.items, do: to_string(item[:title] || item[:name]) + end + + defp search(state, query) do + state |> press("/") |> type(query) + end + + test "'/' opens the prompt and typing filters the list live" do + state = mount!() |> search("tagged") + + assert state.search != nil + assert item_titles(state) == ["Tagged Post"] + assert screen_text(state) =~ "/tagged" + end + + test "tag: filters by tag" do + state = mount!() |> search("tag:elixir") + assert item_titles(state) == ["Tagged Post"] + end + + test "category: filters by category" do + state = mount!() |> search("category:news") + assert item_titles(state) == ["Tagged Post"] + end + + test "an ISO date shows the posts from that date", %{post: post} do + on_ms = + DateTime.new!(~D[2026-07-04], ~T[10:00:00], "Etc/UTC") |> DateTime.to_unix(:millisecond) + + BDS.Repo.update_all( + from(p in BDS.Posts.Post, where: p.id == ^post.id), + set: [updated_at: on_ms] + ) + + state = mount!() |> search("2026-07-04") + assert item_titles(state) == ["Hello TUI"] + end + + test "tokens combine: tag plus text must both match" do + state = mount!() |> search("tag:elixir hello") + assert item_titles(state) == [] + end + + test "enter keeps the filter and shows it in the sidebar title" do + state = mount!() |> search("tag:elixir") |> press("enter") + + assert state.search == nil + assert item_titles(state) == ["Tagged Post"] + assert screen_text(state) =~ "/tag:elixir" + end + + test "esc clears the filter and restores the full list" do + state = mount!() |> search("tag:elixir") |> press("esc") + + assert state.search == nil + assert "Hello TUI" in item_titles(state) + assert "Tagged Post" in item_titles(state) + end + + test "the filter applies per view and works for media", %{project: project} do + media_file = Path.join(System.tmp_dir!(), "bds-tui-media-#{System.unique_integer([:positive])}.txt") + File.write!(media_file, "media body") + on_exit(fn -> File.rm(media_file) end) + + {:ok, _media} = + BDS.Media.import_media(%{ + project_id: project.id, + source_path: media_file, + title: "Findable Media" + }) + + state = mount!() |> press("2") |> search("findable") |> press("enter") + assert item_titles(state) == ["Findable Media"] + + # posts view keeps its own (empty) filter + state = press(state, "1") + assert "Hello TUI" in item_titles(state) + end + end + describe "path completion" do setup do base = Path.join(System.tmp_dir!(), "bds-tui-tab-#{System.unique_integer([:positive])}") diff --git a/test/bds/ui/sidebar_test.exs b/test/bds/ui/sidebar_test.exs index eeb231f..87cb083 100644 --- a/test/bds/ui/sidebar_test.exs +++ b/test/bds/ui/sidebar_test.exs @@ -175,6 +175,47 @@ defmodule BDS.UI.SidebarTest do assert Enum.map(import_view.items, & &1.title) == ["New Import", "Old Import"] end + test "posts and media can be filtered to a single ISO date", %{ + project: project, + temp_dir: temp_dir + } do + on_ms = + DateTime.new!(~D[2026-07-04], ~T[10:00:00], "Etc/UTC") |> DateTime.to_unix(:millisecond) + + off_ms = + DateTime.new!(~D[2026-07-05], ~T[10:00:00], "Etc/UTC") |> DateTime.to_unix(:millisecond) + + assert {:ok, on_post} = Posts.create_post(%{project_id: project.id, title: "On Date"}) + assert {:ok, off_post} = Posts.create_post(%{project_id: project.id, title: "Off Date"}) + update_post_sidebar_row(on_post.id, updated_at: on_ms) + update_post_sidebar_row(off_post.id, updated_at: off_ms) + + view = Sidebar.view(project.id, "posts", %{year: 2026, month: 7, day: 4}) + assert titles_in_section(view, "Drafts") == ["On Date"] + assert view.filters.has_active_filters + + on_file = Path.join(temp_dir, "on.txt") + off_file = Path.join(temp_dir, "off.txt") + File.write!(on_file, "on") + File.write!(off_file, "off") + + assert {:ok, on_media} = + Media.import_media(%{project_id: project.id, source_path: on_file, title: "Media On"}) + + assert {:ok, off_media} = + Media.import_media(%{ + project_id: project.id, + source_path: off_file, + title: "Media Off" + }) + + update_media_sidebar_row(on_media.id, updated_at: on_ms) + update_media_sidebar_row(off_media.id, updated_at: off_ms) + + media_view = Sidebar.view(project.id, "media", %{year: 2026, month: 7, day: 4}) + assert Enum.map(media_view.items, & &1.title) == ["Media On"] + end + defp titles_in_section(view, title) do view.sections |> Enum.find(&(&1.title == title))