From c4e9cb4b75debbf485deb1b802c280e5520dcd08 Mon Sep 17 00:00:00 2001 From: Storm Dragon Date: Wed, 4 Nov 2026 22:12:47 -0500 Subject: [PATCH] New notification system added that can be used by scripts or programs that want to send notifications through Fenrir. Separate from self-voicing. --- README.md | 16 + config/keyboard/desktop.toml | 10 + config/keyboard/laptop.toml | 10 + docs/fenrir.1 | 30 ++ docs/user.md | 24 ++ docs/user.txt | 25 ++ internal/app/application.go | 1 + internal/app/commands.go | 4 + internal/app/notifications.go | 82 ++++++ internal/app/notifications_test.go | 188 ++++++++++++ internal/app/remote_settings.go | 6 + internal/command/command.go | 2 + internal/command/descriptions.go | 2 + internal/i18n/locale/de/LC_MESSAGES/fenrir.po | 273 ++++++++++-------- internal/i18n/locale/es/LC_MESSAGES/fenrir.po | 273 ++++++++++-------- internal/i18n/locale/fenrir.pot | 264 +++++++++-------- internal/i18n/locale/pl/LC_MESSAGES/fenrir.po | 273 ++++++++++-------- internal/i18n/locale/pt/LC_MESSAGES/fenrir.po | 273 ++++++++++-------- internal/i18n/locale/ru/LC_MESSAGES/fenrir.po | 273 ++++++++++-------- internal/input/notifications_test.go | 37 +++ 20 files changed, 1331 insertions(+), 735 deletions(-) create mode 100644 internal/app/notifications.go create mode 100644 internal/app/notifications_test.go create mode 100644 internal/input/notifications_test.go diff --git a/README.md b/README.md index 72477495..9a3e50c9 100644 --- a/README.md +++ b/README.md @@ -208,6 +208,8 @@ Shortcuts shared by both layouts: - **Fenrir+A**: select an application override; choose **Default** to clear it. - **Fenrir+Control+E**: open the emoji picker. - **Fenrir+T**: announce the time; press twice quickly for the date. +- **Fenrir+N**: repeat the most recent notification. +- **Fenrir+Control+N**: browse notification history, newest first, with received times. - **Fenrir+F4**: toggle mute. - **Fenrir+Backspace**: pass the next key through to the application. - **Fenrir+Q**: quit Fenrir. @@ -340,6 +342,7 @@ using the standard socket: ```bash echo "command say Hello" | socat - UNIX-CLIENT:/tmp/fenrirscreenreader-daemon.sock +echo "command notify Hello world" | socat - UNIX-CLIENT:/tmp/fenrirscreenreader-daemon.sock echo "command interrupt" | socat - UNIX-CLIENT:/tmp/fenrirscreenreader-daemon.sock echo "command application ninjam" | socat - UNIX-CLIENT:/tmp/fenrirscreenreader-daemon.sock echo "command application default" | socat - UNIX-CLIENT:/tmp/fenrirscreenreader-daemon.sock @@ -349,6 +352,19 @@ echo "setting set reading#mode=highlight" | socat - UNIX-CLIENT:/tmp/fenrirscree Set `remote.enabled = false` to disable remote control. Command and settings requests can also be enabled separately in the `[remote]` section. +`command notify TEXT` speaks a notification and retains it for **Fenrir+N** and +**Fenrir+Control+N**. History holds the latest 100 notifications for this reader +session, including messages received while speech is muted or temporarily +silenced. `command say TEXT` remains self-voicing and does not add history. +Received times use the current time format in Presentation's Time and date +settings. In the history list, use Up/Down to browse, Enter to repeat an entry, +and Escape or the Close button to return to the application. Reopen the list +to include messages received while it was open. + +Detached notifiers must identify the intended reader, using its private socket +when needed. Check socket replies for routing errors; changing `say` to `notify` +does not repair an outdated `WINDOWID` in a long-running notifier. + `command application ID` selects an override for the reader's active terminal, like Fenrir+A. IDs are `default`, `networkmanager`, `ninjam`, `rogue`, and `codex`. In Fenrir+A, select an application and Tab to **Copy alias to clipboard** to diff --git a/config/keyboard/desktop.toml b/config/keyboard/desktop.toml index b57a05a8..8e28a0d7 100644 --- a/config/keyboard/desktop.toml +++ b/config/keyboard/desktop.toml @@ -3,6 +3,16 @@ # Bare keypad review bindings apply with NumLock off. version = 1 +[[bindings]] +name = "Last notification" +keys = ["FENRIR", "N"] +command = "last_notification" + +[[bindings]] +name = "Notification history" +keys = ["FENRIR", "CTRL", "N"] +command = "notification_history" + [[bindings]] name = "Tracking mode" keys = ["FENRIR", "KPASTERISK"] diff --git a/config/keyboard/laptop.toml b/config/keyboard/laptop.toml index 5ed112de..5fe22206 100644 --- a/config/keyboard/laptop.toml +++ b/config/keyboard/laptop.toml @@ -4,6 +4,16 @@ version = 1 fenrir_keys = ["CAPSLOCK", "INSERT", "KP0"] +[[bindings]] +name = "Last notification" +keys = ["FENRIR", "N"] +command = "last_notification" + +[[bindings]] +name = "Notification history" +keys = ["FENRIR", "CTRL", "N"] +command = "notification_history" + [[bindings]] name = "Tracking mode" keys = ["FENRIR", "Y"] diff --git a/docs/fenrir.1 b/docs/fenrir.1 index a90a4ca2..a256c39a 100644 --- a/docs/fenrir.1 +++ b/docs/fenrir.1 @@ -923,6 +923,27 @@ Fenrir invokes them directly and passes the current account name as the first argument. Commands appear in the tutorial\(cqs script list. .SS Remote control +.SS Notifications +Send \f[CR]command notify TEXT\f[R] to speak and remember a +notification. +\f[B]Fenrir+N\f[R] repeats the most recent notification. +\f[B]Fenrir+Control+N\f[R] opens a list of the latest 100 notifications +for this reader session, newest first. +Each message is followed by its received time, formatted using the +current Presentation Time and date preference. +For example, \f[CR]Hello world 01:38 PM\f[R] with 12\-hour time, or +\f[CR]Hello world 13:38\f[R] with 24\-hour time. +.PP +Use Up/Down to browse, Enter to repeat the selected entry, and Escape or +the Close button to leave. +Tab and Shift+Tab move between controls. +The list is a snapshot; reopen it to include new arrivals. +History is cleared when the reader exits. +Notifications received while muted or temporarily silenced are still +remembered. +Self\-voicing through \f[CR]command say TEXT\f[R] does not add +notifications. +.SS Socket commands Unix socket remote control is enabled by default. The standard socket is \f[CR]/tmp/fenrirscreenreader\-daemon.sock\f[R], and instances also have private sockets @@ -935,6 +956,7 @@ Use a private socket to address one reader: .EX echo \(dqls\(dq \f[B]|\f[R] socat \- UNIX\-CLIENT:/tmp/fenrirscreenreader\-daemon.sock echo \(dqcommand say Hello\(dq \f[B]|\f[R] socat \- UNIX\-CLIENT:/tmp/fenrirscreenreader\-daemon.sock +echo \(dqcommand notify Hello world\(dq \f[B]|\f[R] socat \- UNIX\-CLIENT:/tmp/fenrirscreenreader\-daemon.sock echo \(dqcommand interrupt\(dq \f[B]|\f[R] socat \- UNIX\-CLIENT:/tmp/fenrirscreenreader\-daemon.sock echo \(dqsetting set reading#mode=highlight\(dq \f[B]|\f[R] socat \- UNIX\-CLIENT:/tmp/fenrirscreenreader\-daemon.sock .EE @@ -981,6 +1003,14 @@ Command and setting requests have separate switches, \f[CR]enable_command_remote\f[R] and \f[CR]enable_settings_remote\f[R]. Requests are authorized against the caller\(cqs account; console self\-voicing also allows an account logged into the active console. +.PP +Notifications use the same routing and command authorization as +self\-voicing. +A detached notifier with an outdated \f[CR]WINDOWID\f[R] may fail to +identify a reader. +Target the intended private socket in that case and check returned +errors; successful delivery returns an empty reply. +Do not select an arbitrary socket when several readers are running. .SS Command\-line options Fenrir runs as \f[CR]fenrir [options]\f[R]. Use \f[CR]\-\-help\f[R] for the built\-in reference. diff --git a/docs/user.md b/docs/user.md index c14ec4e5..5ee957b4 100644 --- a/docs/user.md +++ b/docs/user.md @@ -645,6 +645,23 @@ script list. ## Remote control +### Notifications + +Send `command notify TEXT` to speak and remember a notification. **Fenrir+N** +repeats the most recent notification. **Fenrir+Control+N** opens a list of the +latest 100 notifications for this reader session, newest first. Each message +is followed by its received time, formatted using the current Presentation +Time and date preference. For example, `Hello world 01:38 PM` with 12-hour time, +or `Hello world 13:38` with 24-hour time. + +Use Up/Down to browse, Enter to repeat the selected entry, and Escape or the +Close button to leave. Tab and Shift+Tab move between controls. The list is a +snapshot; reopen it to include new arrivals. History is cleared when the reader +exits. Notifications received while muted or temporarily silenced are still +remembered. Self-voicing through `command say TEXT` does not add notifications. + +### Socket commands + Unix socket remote control is enabled by default. The standard socket is `/tmp/fenrirscreenreader-daemon.sock`, and instances also have private sockets `/tmp/fenrirscreenreader-.sock`. Set `remote.socket_file` for a custom socket. @@ -654,6 +671,7 @@ Use `ls` to discover instances. Use a private socket to address one reader: ```bash echo "ls" | socat - UNIX-CLIENT:/tmp/fenrirscreenreader-daemon.sock echo "command say Hello" | socat - UNIX-CLIENT:/tmp/fenrirscreenreader-daemon.sock +echo "command notify Hello world" | socat - UNIX-CLIENT:/tmp/fenrirscreenreader-daemon.sock echo "command interrupt" | socat - UNIX-CLIENT:/tmp/fenrirscreenreader-daemon.sock echo "setting set reading#mode=highlight" | socat - UNIX-CLIENT:/tmp/fenrirscreenreader-daemon.sock ``` @@ -688,6 +706,12 @@ requests have separate switches, `enable_command_remote` and `enable_settings_remote`. Requests are authorized against the caller's account; console self-voicing also allows an account logged into the active console. +Notifications use the same routing and command authorization as self-voicing. +A detached notifier with an outdated `WINDOWID` may fail to identify a reader. +Target the intended private socket in that case and check returned errors; +successful delivery returns an empty reply. Do not select an arbitrary socket +when several readers are running. + ## Command-line options Fenrir runs as `fenrir [options]`. Use `--help` for the built-in reference. diff --git a/docs/user.txt b/docs/user.txt index 7c45a4a6..f54caa38 100644 --- a/docs/user.txt +++ b/docs/user.txt @@ -666,6 +666,24 @@ Commands appear in the tutorial’s script list. Remote control +Notifications + +Send command notify TEXT to speak and remember a notification. Fenrir+N +repeats the most recent notification. Fenrir+Control+N opens a list of +the latest 100 notifications for this reader session, newest first. Each +message is followed by its received time, formatted using the current +Presentation Time and date preference. For example, Hello world 01:38 PM +with 12-hour time, or Hello world 13:38 with 24-hour time. + +Use Up/Down to browse, Enter to repeat the selected entry, and Escape or +the Close button to leave. Tab and Shift+Tab move between controls. The +list is a snapshot; reopen it to include new arrivals. History is +cleared when the reader exits. Notifications received while muted or +temporarily silenced are still remembered. Self-voicing through +command say TEXT does not add notifications. + +Socket commands + Unix socket remote control is enabled by default. The standard socket is /tmp/fenrirscreenreader-daemon.sock, and instances also have private sockets /tmp/fenrirscreenreader-.sock. Set remote.socket_file for a @@ -676,6 +694,7 @@ reader: echo "ls" | socat - UNIX-CLIENT:/tmp/fenrirscreenreader-daemon.sock echo "command say Hello" | socat - UNIX-CLIENT:/tmp/fenrirscreenreader-daemon.sock + echo "command notify Hello world" | socat - UNIX-CLIENT:/tmp/fenrirscreenreader-daemon.sock echo "command interrupt" | socat - UNIX-CLIENT:/tmp/fenrirscreenreader-daemon.sock echo "setting set reading#mode=highlight" | socat - UNIX-CLIENT:/tmp/fenrirscreenreader-daemon.sock @@ -711,6 +730,12 @@ enable_settings_remote. Requests are authorized against the caller’s account; console self-voicing also allows an account logged into the active console. +Notifications use the same routing and command authorization as +self-voicing. A detached notifier with an outdated WINDOWID may fail to +identify a reader. Target the intended private socket in that case and +check returned errors; successful delivery returns an empty reply. Do +not select an arbitrary socket when several readers are running. + Command-line options Fenrir runs as fenrir [options]. Use --help for the built-in reference. diff --git a/internal/app/application.go b/internal/app/application.go index 484a5a67..cfb34992 100644 --- a/internal/app/application.go +++ b/internal/app/application.go @@ -50,6 +50,7 @@ type application struct { prompts *prompt.Detector settings applicationSettings quick *quickSettings + notifications []notification saver *settingsSaver speechPending bool speechResults chan speechChangeResult diff --git a/internal/app/commands.go b/internal/app/commands.go index 2c3145cc..a71520c0 100644 --- a/internal/app/commands.go +++ b/internal/app/commands.go @@ -94,6 +94,10 @@ func (a *application) handle_command(id command.ID) { case "": case command.Help: a.ui.open_tutorial(a.options.Bindings, a.options.Scripts, a.settings.live.General.ScriptKeys) + case command.LastNotification: + a.last_notification() + case command.NotificationHistory: + a.open_notifications() case command.Version: a.present(i18n.Format("Fenrir screen reader version {0}-{1}", version.Version, version.Channel), "") case command.Time: diff --git a/internal/app/notifications.go b/internal/app/notifications.go new file mode 100644 index 00000000..35711e0f --- /dev/null +++ b/internal/app/notifications.go @@ -0,0 +1,82 @@ +// Copyright (c) 2026 Storm Dragon +// SPDX-License-Identifier: GPL-3.0-or-later + +package app + +import ( + "strings" + "time" + + "git.stormux.org/storm/fenrir/internal/datetime" + "git.stormux.org/storm/fenrir/internal/diagnostic" + "git.stormux.org/storm/fenrir/internal/i18n" + "git.stormux.org/storm/fenrir/internal/interaction" +) + +const notificationLimit = 100 + +type notification struct { + text string + received time.Time +} + +// Notifications belong to this reader session, independently of self-voicing +// and the last speech echo. Keep them even when speech is silenced or muted. +func (a *application) notify(text string, received time.Time) { + text = strings.TrimSpace(text) + if text == "" { + return + } + if len(a.notifications) == notificationLimit { + copy(a.notifications, a.notifications[1:]) + a.notifications = a.notifications[:notificationLimit-1] + } + a.notifications = append(a.notifications, notification{text: text, received: received}) + diagnostic.Record("notification received", "length", len(text), "retained", len(a.notifications)) + a.present(text, "") +} + +func (a *application) last_notification() { + if len(a.notifications) == 0 { + a.present(i18n.T("No notifications"), "") + return + } + a.present(a.notifications[len(a.notifications)-1].text, "") +} + +func (a *application) open_notifications() { + if len(a.notifications) == 0 { + a.present(i18n.T("No notifications"), "") + return + } + // A snapshot keeps the selected item stable while new notifications arrive. + items := make([]string, 0, len(a.notifications)) + for index := len(a.notifications) - 1; index >= 0; index-- { + entry := a.notifications[index] + timestamp, _ := datetime.Format_time(a.settings.live.Presentation.DateTime.TimeFormat, entry.received) + items = append(items, entry.text+" "+timestamp) + } + session, err := interaction.New_session(interaction.Form{Type: interaction.TabForm, Title: "Notifications", Tabs: []interaction.Tab{ + {ID: "notifications", Label: "Notifications", Controls: []interaction.Control{ + {ID: "history", Label: "Notifications", Kind: interaction.List, Items: items, Action: "repeat_notification"}, + {ID: "close", Label: "Close", Kind: interaction.Button, Action: "cancel"}, + }}, + }}) + if err != nil { + a.ui.failed("Could not open Notifications: {0}", err) + return + } + if _, err := a.ui.begin("Notifications"); err != nil { + a.ui.failed("Could not open Notifications: {0}", err) + return + } + session.Handle(interaction.Key{Name: "tab"}) + a.ui.session = session + a.ui.action = func(action string, session *interaction.Session) { + if action == "repeat_notification" { + control := session.Values()["notifications.history"] + a.present(control.Items[control.Selected], "") + } + } + a.ui.voice.Say(session.Open()) +} diff --git a/internal/app/notifications_test.go b/internal/app/notifications_test.go new file mode 100644 index 00000000..786e478b --- /dev/null +++ b/internal/app/notifications_test.go @@ -0,0 +1,188 @@ +// Copyright (c) 2026 Storm Dragon +// SPDX-License-Identifier: GPL-3.0-or-later + +package app + +import ( + "context" + "errors" + "fmt" + "io" + "net" + "os" + "path/filepath" + "reflect" + "strings" + "testing" + "time" + + "git.stormux.org/storm/fenrir/internal/command" + "git.stormux.org/storm/fenrir/internal/control" + "git.stormux.org/storm/fenrir/internal/input" + "git.stormux.org/storm/fenrir/internal/interaction" +) + +func TestNotificationThroughPrivateSocket(t *testing.T) { + a, voice := persistence_application(t, true) + voice.messages = nil + directory := t.TempDir() + path := filepath.Join(directory, "reader.sock") + ctx, cancel := context.WithTimeout(context.Background(), 3*time.Second) + defer cancel() + server, err := control.Open(ctx, control.Options{SocketFile: path, RegistryDirectory: filepath.Join(directory, "registry")}) + if err != nil { + t.Fatal(err) + } + defer server.Close() + connection, err := net.Dial("unix", path) + if err != nil { + t.Fatal(err) + } + defer connection.Close() + connection.SetDeadline(time.Now().Add(2 * time.Second)) + if _, err := io.WriteString(connection, "command notify Hello, 世界\n"); err != nil { + t.Fatal(err) + } + select { + case request := <-server.Requests(): + a.remote_request(request) + case <-ctx.Done(): + t.Fatal("notification did not reach the application") + } + response, err := io.ReadAll(connection) + if err != nil || len(response) != 0 || len(a.notifications) != 1 || a.notifications[0].text != "Hello, 世界" || !reflect.DeepEqual(voice.messages, []string{"Hello, 世界"}) { + t.Fatal("socket notification delivery failed", string(response), err, a.notifications, voice.messages) + } +} + +func TestNotificationRemoteAdmissionAndSpeechPolicy(t *testing.T) { + for _, terminalMode := range []bool{false, true} { + a, voice := persistence_application(t, terminalMode) + voice.messages = nil + for _, trial := range []struct { + text string + uid int + enabled bool + }{ + {"COMMAND NOTIFY blocked", os.Geteuid() + 1, true}, + {"COMMAND NOTIFY blocked", os.Geteuid(), false}, + {"COMMAND NOTIFY", os.Geteuid(), true}, + {"COMMAND NOTIFY ", os.Geteuid(), true}, + } { + a.settings.live.Remote.EnableCommandRemote = trial.enabled + reply := make(chan string, 1) + a.remote_request(control.Request{Text: trial.text, UID: trial.uid, Reply: reply}) + if response := <-reply; response == "" || len(a.notifications) != 0 || len(voice.messages) != 0 { + t.Fatal("rejected notification had side effects", response, a.notifications, voice.messages) + } + } + a.settings.live.Remote.EnableCommandRemote = true + before := time.Now() + if response := runtime_request(a, "command notify You are transmatting"); response != "" { + t.Fatal(response) + } + entry := a.notifications[0] + if entry.text != "You are transmatting" || entry.received.Before(before) || entry.received.After(time.Now()) || !reflect.DeepEqual(voice.messages, []string{entry.text}) { + t.Fatal("notification was not spoken and timestamped", entry, voice.messages) + } + runtime_request(a, "COMMAND SAY unrelated self-voice") + a.handle_command(command.LastNotification) + if len(a.notifications) != 1 || voice.messages[len(voice.messages)-1] != entry.text { + t.Fatal("self-voice replaced notification", a.notifications, voice.messages) + } + for _, state := range []string{"temporary", "muted", "automatic off"} { + a.temporarySilence = state == "temporary" + a.muted, voice.muted = state == "muted", state == "muted" + a.settings.live.Reading.Automatic = false + voice.messages = nil + runtime_request(a, "COMMAND NOTIFY "+state) + if a.notifications[len(a.notifications)-1].text != state || (len(voice.messages) > 0) != (state == "automatic off") { + t.Fatal("notification storage or speech policy", state, a.notifications, voice.messages) + } + } + a.temporarySilence, a.muted, voice.muted = false, false, false + a.handle_command(command.LastNotification) + if voice.messages[len(voice.messages)-1] != "automatic off" { + t.Fatal("retained notification could not be recalled", voice.messages) + } + } +} + +func TestNotificationHistoryTimesNavigationAndNewArrivals(t *testing.T) { + a, voice := persistence_application(t, true) + keys := a.keyboards.(*fakeKeys) + a.notify("Hello world", time.Date(2026, 1, 2, 13, 38, 0, 0, time.Local)) + a.notify("You are transmatting", time.Date(2026, 1, 2, 22, 50, 0, 0, time.Local)) + for _, trial := range []struct{ format, first, second string }{ + {"12-hour", "10:50 PM", "01:38 PM"}, + {"24-hour", "22:50", "13:38"}, + {"24-hour-seconds", "22:50:00", "13:38:00"}, + } { + a.settings.live.Presentation.DateTime.TimeFormat = trial.format + a.handle_input(input.Decision{Command: command.NotificationHistory, Interrupt: true, Keypress: true}) + if !a.ui.active || a.ui.session == nil || !strings.HasSuffix(voice.messages[len(voice.messages)-1], "You are transmatting "+trial.first) { + t.Fatal("history did not open at newest entry", trial, voice.messages) + } + a.ui.handle(interaction.Key{Name: "down"}) + a.ui.handle(interaction.Key{Name: "enter"}) + if got := voice.messages[len(voice.messages)-1]; got != "Hello world "+trial.second { + t.Fatal("history order, repeat or received time", trial, got) + } + a.ui.handle(interaction.Key{Name: "tab"}) + control, _ := a.ui.session.Focused_control() + if control.ID != "close" { + t.Fatal("Tab could not reach Close", control) + } + a.ui.handle(interaction.Key{Name: "tab", Shift: true}) + control, _ = a.ui.session.Focused_control() + if control.ID != "history" { + t.Fatal("Shift+Tab could not return to list", control) + } + a.ui.handle(interaction.Key{Name: "escape"}) + if a.ui.active || keys.captures[len(keys.captures)-1] { + t.Fatal("history did not release capture") + } + } + a.open_notifications() + a.ui.handle(interaction.Key{Name: "down"}) + selected := a.ui.session.Values()["notifications.history"] + a.notify("New arrival", time.Now()) + if got := a.ui.session.Values()["notifications.history"]; !reflect.DeepEqual(got, selected) { + t.Fatal("arrival moved the selection", got, selected) + } + a.ui.close() + a.open_notifications() + if !strings.Contains(voice.messages[len(voice.messages)-1], "New arrival") { + t.Fatal("reopened history missed arrival") + } + a.ui.handle(interaction.Key{Name: "tab"}) + a.ui.handle(interaction.Key{Name: "enter"}) + if a.ui.active { + t.Fatal("Close button did not close history") + } + keys.captureErr = errors.New("capture unavailable") + a.open_notifications() + if a.ui.active || !strings.Contains(voice.messages[len(voice.messages)-1], "Could not open Notifications") { + t.Fatal("capture failure not reported", voice.messages) + } +} + +func TestNotificationHistoryEmptyAndBounded(t *testing.T) { + a, voice := persistence_application(t, true) + for _, id := range []command.ID{command.LastNotification, command.NotificationHistory} { + a.handle_command(id) + if a.ui.active || voice.messages[len(voice.messages)-1] != "No notifications" { + t.Fatal(id, voice.messages) + } + } + a.notify(" ", time.Now()) + if len(a.notifications) != 0 { + t.Fatal("empty notification retained") + } + for index := range notificationLimit + 2 { + a.notify(fmt.Sprint(index), time.Now()) + } + if len(a.notifications) != notificationLimit || a.notifications[0].text != "2" || a.notifications[notificationLimit-1].text != "101" { + t.Fatal("history did not evict oldest", a.notifications) + } +} diff --git a/internal/app/remote_settings.go b/internal/app/remote_settings.go index 1f428917..fb46573d 100644 --- a/internal/app/remote_settings.go +++ b/internal/app/remote_settings.go @@ -216,6 +216,12 @@ func (a *application) remote_request(request control.Request) { switch strings.ToUpper(verb) { case "SAY": a.present(parameter, "") + case "NOTIFY": + if strings.TrimSpace(parameter) == "" { + response = "NOTIFY requires a message" + } else { + a.notify(parameter, time.Now()) + } case "INTERRUPT": a.voice.Interrupt() case "TEMPDISABLESPEECH": diff --git a/internal/command/command.go b/internal/command/command.go index db2a69ce..7a7b73e6 100644 --- a/internal/command/command.go +++ b/internal/command/command.go @@ -24,6 +24,8 @@ type ID string const ( Time ID = "time" Date ID = "date" + LastNotification ID = "last_notification" + NotificationHistory ID = "notification_history" PreviousLine ID = "previous_line" CurrentLine ID = "current_line" NextLine ID = "next_line" diff --git a/internal/command/descriptions.go b/internal/command/descriptions.go index 83074faa..79c3ce1a 100644 --- a/internal/command/descriptions.go +++ b/internal/command/descriptions.go @@ -13,6 +13,8 @@ import ( var descriptions = map[ID]string{ Time: "presents the time", Date: "presents the date", + LastNotification: "Repeat the most recent notification", + NotificationHistory: "Browse notifications with their received times", PreviousLine: "moves review to the previous line ", CurrentLine: "current line", NextLine: "moves review to the next line ", diff --git a/internal/i18n/locale/de/LC_MESSAGES/fenrir.po b/internal/i18n/locale/de/LC_MESSAGES/fenrir.po index f2b9dcd1..b4845107 100644 --- a/internal/i18n/locale/de/LC_MESSAGES/fenrir.po +++ b/internal/i18n/locale/de/LC_MESSAGES/fenrir.po @@ -368,6 +368,10 @@ msgstr "Gebrochenes Herz" msgid "Brown heart" msgstr "Braunes Herz" +#: internal/command/descriptions.go:17 +msgid "Browse notifications with their received times" +msgstr "Benachrichtigungen mit ihren Empfangszeiten durchsehen" + #: internal/emoji/catalog.go:200 msgid "Bug" msgstr "Raupe" @@ -505,51 +509,51 @@ msgstr "Filmklappe" msgid "Clapping hands" msgstr "Klatschende Hände" -#: internal/command/descriptions.go:77 +#: internal/command/descriptions.go:79 msgid "Clear all live regions" msgstr "Alle Live-Bereiche löschen" -#: internal/command/descriptions.go:78 +#: internal/command/descriptions.go:80 msgid "Clear all reading regions" msgstr "Alle Lesebereiche löschen" -#: internal/command/descriptions.go:80 +#: internal/command/descriptions.go:82 msgid "Clear live region 1" msgstr "Live-Bereich 1 löschen" -#: internal/command/descriptions.go:98 +#: internal/command/descriptions.go:100 msgid "Clear live region 10" msgstr "Live-Bereich 10 löschen" -#: internal/command/descriptions.go:82 +#: internal/command/descriptions.go:84 msgid "Clear live region 2" msgstr "Live-Bereich 2 löschen" -#: internal/command/descriptions.go:84 +#: internal/command/descriptions.go:86 msgid "Clear live region 3" msgstr "Live-Bereich 3 löschen" -#: internal/command/descriptions.go:86 +#: internal/command/descriptions.go:88 msgid "Clear live region 4" msgstr "Live-Bereich 4 löschen" -#: internal/command/descriptions.go:88 +#: internal/command/descriptions.go:90 msgid "Clear live region 5" msgstr "Live-Bereich 5 löschen" -#: internal/command/descriptions.go:90 +#: internal/command/descriptions.go:92 msgid "Clear live region 6" msgstr "Live-Bereich 6 löschen" -#: internal/command/descriptions.go:92 +#: internal/command/descriptions.go:94 msgid "Clear live region 7" msgstr "Live-Bereich 7 löschen" -#: internal/command/descriptions.go:94 +#: internal/command/descriptions.go:96 msgid "Clear live region 8" msgstr "Live-Bereich 8 löschen" -#: internal/command/descriptions.go:96 +#: internal/command/descriptions.go:98 msgid "Clear live region 9" msgstr "Live-Bereich 9 löschen" @@ -561,7 +565,7 @@ msgstr "Sektgläser" msgid "Clipboard" msgstr "Zwischenablage" -#: internal/app/application.go:145 internal/app/application.go:148 +#: internal/app/application.go:146 internal/app/application.go:149 #: internal/app/clipboard.go:218 internal/app/clipboard.go:374 msgid "Clipboard import failed" msgstr "Import aus der Zwischenablage fehlgeschlagen" @@ -570,6 +574,10 @@ msgstr "Import aus der Zwischenablage fehlgeschlagen" msgid "Clipboard sync" msgstr "Zwischenablage synchronisieren" +#: internal/app/notifications.go:62 +msgid "Close" +msgstr "Schließen" + #: internal/emoji/catalog.go:230 msgid "Cloud" msgstr "Wolke" @@ -634,7 +642,7 @@ msgstr "Kaffee" msgid "Coffin" msgstr "Sarg" -#: internal/command/descriptions.go:45 +#: internal/command/descriptions.go:47 msgid "Column number for cursor" msgstr "Spaltennummer des Cursors" @@ -701,6 +709,10 @@ msgstr "Emoji-Menü konnte nicht geöffnet werden: {0}" msgid "Could not open Fenrir Menu: {0}" msgstr "Fenrir-Menü konnte nicht geöffnet werden: {0}" +#: internal/app/notifications.go:66 internal/app/notifications.go:70 +msgid "Could not open Notifications: {0}" +msgstr "Benachrichtigungen konnten nicht geöffnet werden: {0}" + #: internal/app/spellcheck_menu.go:39 internal/app/spellcheck_menu.go:58 msgid "Could not open Spellcheck Menu: {0}" msgstr "Rechtschreibmenü konnte nicht geöffnet werden: {0}" @@ -948,7 +960,7 @@ msgstr "Elf(e)" msgid "Emoji" msgstr "Emoji" -#: internal/command/descriptions.go:53 internal/emoji/catalog.go:14 +#: internal/command/descriptions.go:55 internal/emoji/catalog.go:14 msgid "Emoji Menu" msgstr "Emoji-Menü" @@ -1002,7 +1014,7 @@ msgstr "Erfahrungsstufe" msgid "Exploding head" msgstr "Explodierender Kopf" -#: internal/command/descriptions.go:114 +#: internal/command/descriptions.go:116 msgid "Export current fenrir clipboard to X or GUI clipboard" msgstr "" "Aktuelle Fenrir-Zwischenablage in die grafische Zwischenablage exportieren" @@ -1039,7 +1051,7 @@ msgstr "Märchenfee" msgid "Fallen Leaf" msgstr "Laub" -#: internal/command/descriptions.go:55 internal/preferences/settings.go:38 +#: internal/command/descriptions.go:57 internal/preferences/settings.go:38 msgid "Fenrir Menu" msgstr "Fenrir-Menü" @@ -1047,7 +1059,7 @@ msgstr "Fenrir-Menü" msgid "Fenrir keys" msgstr "Fenrir-Tasten" -#: internal/app/commands.go:98 +#: internal/app/commands.go:102 msgid "Fenrir screen reader version {0}-{1}" msgstr "Fenrir-Bildschirmleser Version {0}-{1}" @@ -1143,7 +1155,7 @@ msgstr "Fußabdrücke" msgid "Fortune Cookie" msgstr "Glückskeks" -#: internal/app/commands.go:143 +#: internal/app/commands.go:147 msgid "Forward next keypress" msgstr "Nächste Taste durchreichen" @@ -1523,7 +1535,7 @@ msgstr "Glühbirne" msgid "Light Rail" msgstr "S bahn" -#: internal/command/descriptions.go:44 +#: internal/command/descriptions.go:46 msgid "Line number for cursor" msgstr "Zeilennummer des Cursors" @@ -1531,7 +1543,7 @@ msgstr "Zeilennummer des Cursors" msgid "Lion" msgstr "Löwe" -#: internal/command/descriptions.go:76 +#: internal/command/descriptions.go:78 msgid "List reading regions" msgstr "Lesebereiche auflisten" @@ -1692,40 +1704,40 @@ msgstr "Motorrad" msgid "Mouse face" msgstr "Mausgesicht" -#: internal/command/descriptions.go:35 +#: internal/command/descriptions.go:37 msgid "Move Review to the end of current line and display the content" msgstr "Lesecursor zum Ende der aktuellen Zeile bewegen und Inhalt ausgeben" -#: internal/command/descriptions.go:36 +#: internal/command/descriptions.go:38 msgid "Move Review to the first character on the line" msgstr "Lesecursor zum ersten Zeichen der Zeile bewegen" -#: internal/command/descriptions.go:48 +#: internal/command/descriptions.go:50 msgid "Move Review to the first character on the screen (left top)" msgstr "Lesecursor zum ersten Bildschirmzeichen bewegen, oben links" -#: internal/command/descriptions.go:37 +#: internal/command/descriptions.go:39 msgid "Move Review to the last character on the line" msgstr "Lesecursor zum letzten Zeichen der Zeile bewegen" -#: internal/command/descriptions.go:49 +#: internal/command/descriptions.go:51 msgid "Move Review to the last character on the screen (right bottom)" msgstr "Lesecursor zum letzten Bildschirmzeichen bewegen, unten rechts" -#: internal/command/descriptions.go:33 +#: internal/command/descriptions.go:35 msgid "Move review to the bottom of the screen" msgstr "Lesecursor zum Bildschirmende bewegen" -#: internal/command/descriptions.go:31 +#: internal/command/descriptions.go:33 msgid "Move review to the character below the current position" msgstr "Lesecursor zum Zeichen unter der aktuellen Position bewegen" -#: internal/command/descriptions.go:30 +#: internal/command/descriptions.go:32 msgid "Move review to the character in the line above the current position" msgstr "" "Lesecursor zum Zeichen in der Zeile über der aktuellen Position bewegen" -#: internal/command/descriptions.go:29 +#: internal/command/descriptions.go:31 msgid "Moves review to the next character" msgstr "Bewegt den Lesecursor zum nächsten Zeichen" @@ -1810,6 +1822,10 @@ msgstr "Keine Chatnachricht empfangen" msgid "No matches" msgstr "Keine Treffer" +#: internal/app/notifications.go:41 internal/app/notifications.go:49 +msgid "No notifications" +msgstr "Keine Benachrichtigungen" + #: internal/reader/regions.go:251 msgid "No reading regions set" msgstr "Keine Lesebereiche festgelegt" @@ -1850,6 +1866,11 @@ msgstr "Nicht im Lesemodus" msgid "Not in window Mode" msgstr "Nicht im Fenstermodus" +#: internal/app/notifications.go:59 internal/app/notifications.go:60 +#: internal/app/notifications.go:61 +msgid "Notifications" +msgstr "Benachrichtigungen" + #: internal/preferences/settings.go:96 msgid "OK" msgstr "OK" @@ -1974,7 +1995,7 @@ msgstr "Surfer(in)" msgid "Person Swimming" msgstr "Schwimmer(in)" -#: internal/command/descriptions.go:25 +#: internal/command/descriptions.go:27 msgid "Phonetically spells the current word" msgstr "Buchstabiert das aktuelle Wort mit dem Buchstabieralphabet" @@ -2062,7 +2083,7 @@ msgstr "Kartoffel" msgid "Potion" msgstr "Trank" -#: internal/command/descriptions.go:52 +#: internal/command/descriptions.go:54 msgid "Present the version of Fenrir currently in use." msgstr "Verwendete Fenrir-Version ansagen." @@ -2070,7 +2091,7 @@ msgstr "Verwendete Fenrir-Version ansagen." msgid "Presentation" msgstr "Ausgabe" -#: internal/command/descriptions.go:101 +#: internal/command/descriptions.go:103 msgid "" "Presents the currently selected text that will be copied to the clipboard" msgstr "" @@ -2085,11 +2106,11 @@ msgstr "Brezel" msgid "Printer" msgstr "Drucker" -#: internal/app/commands.go:129 +#: internal/app/commands.go:133 msgid "Progress monitoring disabled" msgstr "Fortschrittsüberwachung deaktiviert" -#: internal/app/commands.go:127 +#: internal/app/commands.go:131 msgid "Progress monitoring enabled" msgstr "Fortschrittsüberwachung aktiviert" @@ -2165,43 +2186,43 @@ msgstr "Geschwindigkeit" msgid "Raves" msgstr "Raves" -#: internal/command/descriptions.go:79 +#: internal/command/descriptions.go:81 msgid "Read live region 1" msgstr "Live-Bereich 1 lesen" -#: internal/command/descriptions.go:97 +#: internal/command/descriptions.go:99 msgid "Read live region 10" msgstr "Live-Bereich 10 lesen" -#: internal/command/descriptions.go:81 +#: internal/command/descriptions.go:83 msgid "Read live region 2" msgstr "Live-Bereich 2 lesen" -#: internal/command/descriptions.go:83 +#: internal/command/descriptions.go:85 msgid "Read live region 3" msgstr "Live-Bereich 3 lesen" -#: internal/command/descriptions.go:85 +#: internal/command/descriptions.go:87 msgid "Read live region 4" msgstr "Live-Bereich 4 lesen" -#: internal/command/descriptions.go:87 +#: internal/command/descriptions.go:89 msgid "Read live region 5" msgstr "Live-Bereich 5 lesen" -#: internal/command/descriptions.go:89 +#: internal/command/descriptions.go:91 msgid "Read live region 6" msgstr "Live-Bereich 6 lesen" -#: internal/command/descriptions.go:91 +#: internal/command/descriptions.go:93 msgid "Read live region 7" msgstr "Live-Bereich 7 lesen" -#: internal/command/descriptions.go:93 +#: internal/command/descriptions.go:95 msgid "Read live region 8" msgstr "Live-Bereich 8 lesen" -#: internal/command/descriptions.go:95 +#: internal/command/descriptions.go:97 msgid "Read live region 9" msgstr "Live-Bereich 9 lesen" @@ -2221,11 +2242,11 @@ msgstr "Lesebereiche gelöscht" msgid "Reading window: {0}" msgstr "Lesefenster: {0}" -#: internal/command/descriptions.go:42 +#: internal/command/descriptions.go:44 msgid "Reads attributes of current cursor position" msgstr "Liest die Attribute an der aktuellen Cursorposition" -#: internal/command/descriptions.go:39 +#: internal/command/descriptions.go:41 msgid "Reads from the top of the screen to the cursor position" msgstr "Liest vom oberen Bildschirmrand bis zur Cursorposition" @@ -2237,7 +2258,7 @@ msgstr "Entfernt {0}, Kanal {1}" msgid "Remove marks" msgstr "Marken entfernen" -#: internal/command/descriptions.go:100 +#: internal/command/descriptions.go:102 msgid "Removes marks from selected text" msgstr "Entfernt die Markierungen des ausgewählten Textes" @@ -2245,6 +2266,10 @@ msgstr "Entfernt die Markierungen des ausgewählten Textes" msgid "Rename channel" msgstr "Kanal umbenennen" +#: internal/command/descriptions.go:16 +msgid "Repeat the most recent notification" +msgstr "Die letzte Benachrichtigung wiederholen" + #: internal/config/config.go:168 msgid "Repeated symbols" msgstr "Wiederholte Symbole" @@ -2353,7 +2378,7 @@ msgstr "Weihnachtsmann" msgid "Save unavailable." msgstr "Speichern nicht verfügbar." -#: internal/command/descriptions.go:65 +#: internal/command/descriptions.go:67 msgid "Saves your current Fenrir settings so they are the default." msgstr "Speichert die aktuellen Fenrir-Einstellungen als Standard." @@ -2385,7 +2410,7 @@ msgstr "Skorpion" msgid "Screaming" msgstr "Schreiend" -#: internal/app/commands.go:152 internal/app/scripts.go +#: internal/app/commands.go:156 internal/app/scripts.go msgid "Script failed" msgstr "Skript fehlgeschlagen" @@ -2421,7 +2446,7 @@ msgstr "Suche {0}" msgid "Seedling" msgstr "Spross" -#: internal/command/descriptions.go:56 +#: internal/command/descriptions.go:58 msgid "Select a temporary application override" msgstr "Temporäre Anwendungseinstellungen auswählen" @@ -2441,7 +2466,7 @@ msgstr "Serielle Schnittstelle" msgid "Service Dog" msgstr "Assistenzhund" -#: internal/command/descriptions.go:75 +#: internal/command/descriptions.go:77 msgid "Set a live region from one or two marks" msgstr "Live-Bereich aus einer oder zwei Markierungen festlegen" @@ -2458,7 +2483,9 @@ msgstr "Einstellungen sind beschäftigt" msgid "" "Settings saved, but key changes could not be applied: {0}. Previous keys " "remain active." -msgstr "Einstellungen gespeichert, aber die Tastenänderungen konnten nicht angewendet werden: {0}. Die bisherigen Tasten bleiben aktiv." +msgstr "" +"Einstellungen gespeichert, aber die Tastenänderungen konnten nicht " +"angewendet werden: {0}. Die bisherigen Tasten bleiben aktiv." #: internal/app/quick_settings.go:298 msgid "Settings saved." @@ -2616,7 +2643,7 @@ msgstr "Funkeln" msgid "Speech" msgstr "Sprache" -#: internal/speech/drivers.go:44 +#: internal/speech/drivers.go:47 msgid "Speech Dispatcher" msgstr "Speech Dispatcher" @@ -2652,11 +2679,11 @@ msgstr "Rechtschreibprüfung nicht verfügbar" msgid "Spell checking is unavailable: {0}" msgstr "Rechtschreibprüfung nicht verfügbar: {0}" -#: internal/command/descriptions.go:54 +#: internal/command/descriptions.go:56 msgid "Spellcheck Menu" msgstr "Rechtschreibmenü" -#: internal/command/descriptions.go:24 +#: internal/command/descriptions.go:26 msgid "Spells the current word" msgstr "Buchstabiert das aktuelle Wort" @@ -2836,7 +2863,7 @@ msgstr "Uhrzeit und Datum" msgid "Time format" msgstr "Zeitformat" -#: internal/command/descriptions.go:68 +#: internal/command/descriptions.go:70 msgid "Toggle progress bar monitoring with ascending tones" msgstr "Fortschrittsüberwachung mit ansteigenden Tönen umschalten" @@ -2912,7 +2939,7 @@ msgstr "Trinkglas" msgid "Turkey" msgstr "Truthahn" -#: internal/command/descriptions.go:74 +#: internal/command/descriptions.go:76 msgid "Turn off window mode" msgstr "Fenstermodus ausschalten" @@ -3231,7 +3258,7 @@ msgstr "schwarz" #: internal/app/clipboard.go:281 internal/presentation/text.go:35 #: internal/reader/regions.go:191 internal/review/line_start.go:31 #: internal/review/screen_range.go:39 internal/review/spelling.go:44 -#: internal/review/table.go:124 internal/review/table.go:205 +#: internal/review/table.go:119 internal/review/table.go:202 #: internal/review/vertical_character.go:31 internal/review/word.go:64 msgid "blank" msgstr "Leer" @@ -3281,7 +3308,7 @@ msgstr "Zeichen {0}" msgid "checked" msgstr "aktiviert" -#: internal/command/descriptions.go:109 +#: internal/command/descriptions.go:111 msgid "clears the currently selected clipboard" msgstr "Löscht die momentan gewählte Zwischenablage" @@ -3315,11 +3342,11 @@ msgstr "verwirrt" msgid "cool" msgstr "cool" -#: internal/command/descriptions.go:103 +#: internal/command/descriptions.go:105 msgid "copies last presented text to the clipboard" msgstr "kopiert den zuletzt ausgegebenen Text in die Zwischenablage" -#: internal/command/descriptions.go:102 +#: internal/command/descriptions.go:104 msgid "copies marked text to the currently selected clipboard" msgstr "Kopiert markierten Text in die gewählte Zwischenablage" @@ -3327,7 +3354,7 @@ msgstr "Kopiert markierten Text in die gewählte Zwischenablage" msgid "correct" msgstr "Korrekt" -#: internal/review/table.go:132 +#: internal/review/table.go:128 msgid "could not set header row" msgstr "Kopfzeile konnte nicht festgelegt werden" @@ -3335,11 +3362,11 @@ msgstr "Kopfzeile konnte nicht festgelegt werden" msgid "crying" msgstr "weinend" -#: internal/command/descriptions.go:17 +#: internal/command/descriptions.go:19 msgid "current line" msgstr "Aktuelle Zeile" -#: internal/command/descriptions.go:20 +#: internal/command/descriptions.go:22 msgid "current word." msgstr "Aktuelles Wort." @@ -3368,11 +3395,11 @@ msgstr "Bindestrich" msgid "default" msgstr "Standard" -#: internal/command/descriptions.go:67 +#: internal/command/descriptions.go:69 msgid "disables speech until next keypress" msgstr "Sprachausgabe bis zum nächsten Tastendruck ausschalten" -#: internal/command/descriptions.go:43 +#: internal/command/descriptions.go:45 msgid "displays the position of the review cursor" msgstr "Zeigt die Position des Bildschirmcursors an" @@ -3390,27 +3417,27 @@ msgstr "Punkt" msgid "east {0}" msgstr "Osten {0}" -#: internal/command/descriptions.go:69 +#: internal/command/descriptions.go:71 msgid "enables or disables automatic reading of new text as it appears" msgstr "Automatisches Vorlesen von neuem Text ein- oder ausschalten" -#: internal/command/descriptions.go:66 +#: internal/command/descriptions.go:68 msgid "enables or disables speech" msgstr "Schaltet die Sprachausgabe ein oder aus" -#: internal/command/descriptions.go:41 +#: internal/command/descriptions.go:43 msgid "enables or disables the announcement of attributes" msgstr "aktiviert oder deaktiviert die Attributansage" -#: internal/command/descriptions.go:70 +#: internal/command/descriptions.go:72 msgid "enables or disables tracking of highlighted text" msgstr "Schaltet die Verfolgung von hervorgehobenem Text ein oder aus" -#: internal/review/table.go:218 +#: internal/review/table.go:215 msgid "end of cell" msgstr "Zellenende" -#: internal/review/line_end.go:24 internal/review/table.go:175 +#: internal/review/line_end.go:24 internal/review/table.go:172 msgid "end of line" msgstr "Ende der Zeile" @@ -3431,15 +3458,15 @@ msgstr "Gleichheitszeichen" msgid "evil smile" msgstr "böses Lächeln" -#: internal/command/descriptions.go:72 +#: internal/command/descriptions.go:74 msgid "exits Fenrir" msgstr "Beendet Fenrir" -#: internal/command/descriptions.go:50 +#: internal/command/descriptions.go:52 msgid "exits review mode" msgstr "Verlässt die Bildschirmdarstellung" -#: internal/command/descriptions.go:112 +#: internal/command/descriptions.go:114 msgid "export the current fenrir clipboard to a file" msgstr "Aktuelle Fenrir-Zwischenablage in Datei exportieren" @@ -3453,11 +3480,11 @@ msgstr "" "Export in die X-Zwischenablage fehlgeschlagen. Kein verfügbares Display " "gefunden." -#: internal/review/table.go:190 +#: internal/review/table.go:187 msgid "first cell" msgstr "erste Zelle" -#: internal/review/table.go:224 +#: internal/review/table.go:221 msgid "first character in cell {0}" msgstr "erstes Zeichen in Zelle {0}" @@ -3477,35 +3504,35 @@ msgstr "Stirnrunzeln" msgid "frustrated" msgstr "frustriert" -#: internal/command/descriptions.go:59 +#: internal/command/descriptions.go:61 msgid "get current quick menu entry" msgstr "aktuellen Schnellmenüeintrag ansagen" -#: internal/command/descriptions.go:60 +#: internal/command/descriptions.go:62 msgid "get current quick menu value" msgstr "aktuellen Schnellmenüwert ansagen" -#: internal/command/descriptions.go:57 +#: internal/command/descriptions.go:59 msgid "get next quick menu category" msgstr "nächste Schnellmenükategorie auswählen" -#: internal/command/descriptions.go:61 +#: internal/command/descriptions.go:63 msgid "get next quick menu entry" msgstr "nächsten Schnellmenüeintrag auswählen" -#: internal/command/descriptions.go:63 +#: internal/command/descriptions.go:65 msgid "get next quick menu value" msgstr "nächsten Schnellmenüwert auswählen" -#: internal/command/descriptions.go:58 +#: internal/command/descriptions.go:60 msgid "get previous quick menu category" msgstr "vorherige Schnellmenükategorie auswählen" -#: internal/command/descriptions.go:62 +#: internal/command/descriptions.go:64 msgid "get previous quick menu entry" msgstr "vorherigen Schnellmenüeintrag auswählen" -#: internal/command/descriptions.go:64 +#: internal/command/descriptions.go:66 msgid "get previous quick menu value" msgstr "vorherigen Schnellmenüwert auswählen" @@ -3536,7 +3563,7 @@ msgstr "hat Attribut" msgid "hash" msgstr "Raute" -#: internal/review/table.go:138 +#: internal/review/table.go:135 msgid "header row set" msgstr "Kopfzeile festgelegt" @@ -3552,11 +3579,11 @@ msgstr "Hervorhebungen verfolgen" msgid "hurray" msgstr "hurra" -#: internal/command/descriptions.go:111 +#: internal/command/descriptions.go:113 msgid "imports text from clipboard file to the clipboard" msgstr "Importiert Text aus Datei in die Zwischenablage" -#: internal/command/descriptions.go:113 +#: internal/command/descriptions.go:115 msgid "imports the graphical clipboard to Fenrir's clipboard" msgstr "importiert die grafische Zwischenablage in die Fenrir-Zwischenablage" @@ -3572,11 +3599,11 @@ msgstr "kursiv" msgid "knocked out" msgstr "bewusstlos" -#: internal/review/table.go:192 +#: internal/review/table.go:189 msgid "last cell" msgstr "letzte Zelle" -#: internal/review/table.go:227 +#: internal/review/table.go:224 msgid "last character in cell {0}" msgstr "letztes Zeichen in Zelle {0}" @@ -3681,27 +3708,27 @@ msgstr "Falsch geschrieben" msgid "most" msgstr "die meisten" -#: internal/command/descriptions.go:32 +#: internal/command/descriptions.go:34 msgid "move review to top of screen" msgstr "Bewegt die Ansicht an den oberen Bildschirmrand" -#: internal/command/descriptions.go:19 +#: internal/command/descriptions.go:21 msgid "moves review focus to the previous word " msgstr "bewegt den Lesecursor zum vorherigen Wort " -#: internal/command/descriptions.go:18 +#: internal/command/descriptions.go:20 msgid "moves review to the next line " msgstr "bewegt den Lesecursor zur nächsten Zeile " -#: internal/command/descriptions.go:21 +#: internal/command/descriptions.go:23 msgid "moves review to the next word " msgstr "bewegt den Lesecursor zum nächsten Wort " -#: internal/command/descriptions.go:22 +#: internal/command/descriptions.go:24 msgid "moves review to the previous character" msgstr "bewegt den Lesecursor zum vorherigen Zeichen" -#: internal/command/descriptions.go:16 +#: internal/command/descriptions.go:18 msgid "moves review to the previous line " msgstr "bewegt den Lesecursor zur vorherigen Zeile " @@ -3713,8 +3740,8 @@ msgstr "stummgeschaltet" msgid "neutral" msgstr "neutral" -#: internal/command/descriptions.go internal/command/descriptions.go:26 -#: internal/command/descriptions.go:27 +#: internal/command/descriptions.go internal/command/descriptions.go:28 +#: internal/command/descriptions.go:29 msgid "no description available" msgstr "keine Beschreibung verfügbar" @@ -3722,13 +3749,13 @@ msgstr "keine Beschreibung verfügbar" msgid "no review cursor" msgstr "Kein Bildschirm-Cursor" -#: internal/review/spelling.go:19 internal/review/table.go:150 -#: internal/review/table.go:158 internal/review/vertical_character.go:26 +#: internal/review/spelling.go:19 internal/review/table.go:147 +#: internal/review/table.go:155 internal/review/vertical_character.go:26 #: internal/review/vertical_character.go:34 msgid "no table data" msgstr "keine Tabellendaten" -#: internal/reader/regions.go:173 internal/review/review.go:135 +#: internal/reader/regions.go:173 internal/review/review.go:140 msgid "no text console" msgstr "keine Textkonsole" @@ -3756,7 +3783,7 @@ msgstr "Nummer" msgid "paste clipboard" msgstr "Zwischenablage einfügen" -#: internal/command/descriptions.go:110 +#: internal/command/descriptions.go:112 msgid "pastes the text from the currently selected clipboard" msgstr "Fügt den Text aus der momentan gewählten Zwischenablage ein" @@ -3765,7 +3792,7 @@ msgstr "Fügt den Text aus der momentan gewählten Zwischenablage ein" msgid "percent" msgstr "Prozent" -#: internal/command/descriptions.go:99 +#: internal/command/descriptions.go:101 msgid "places marks to select text to copy to the clipboard" msgstr "Setzt Marken zum Auswählen und Kopieren von Text in die Zwischenablage" @@ -3782,7 +3809,7 @@ msgstr "Plus" msgid "plus {0}" msgstr "plus {0}" -#: internal/command/descriptions.go:23 +#: internal/command/descriptions.go:25 msgid "presents the current character." msgstr "Gibt das aktuelle Zeichen aus." @@ -3804,7 +3831,7 @@ msgstr "Fragezeichen" msgid "quote" msgstr "Anführungszeichen" -#: internal/command/descriptions.go:46 +#: internal/command/descriptions.go:48 msgid "" "read line to cursor pos, use review cursor if you are in review mode, " "otherwhise use text cursor" @@ -3812,7 +3839,7 @@ msgstr "" "Zeile bis zum Cursor lesen, im Lesemodus den Lesecursor verwenden, sonst den " "Textcursor" -#: internal/command/descriptions.go:47 +#: internal/command/descriptions.go:49 msgid "" "read to end of line, use review cursor if you are in review mode, otherwhise " "use text cursor" @@ -3820,11 +3847,11 @@ msgstr "" "Liest bis zum Ende der Zeile. Verwendet den Bildschirm-Cursor im Bildschirm-" "Modus, anderenfalls wird der Textcursor benutzt." -#: internal/command/descriptions.go:40 +#: internal/command/descriptions.go:42 msgid "reads from the cursor to the bottom of the screen" msgstr "Liest vom Cursor bis zum unteren Bildschirmrand" -#: internal/command/descriptions.go:38 +#: internal/command/descriptions.go:40 msgid "reads the contents of the current screen" msgstr "Liest den Inhalt des aktuellen Bildschirms vor" @@ -3875,19 +3902,19 @@ msgstr "Bildschirm {0}" msgid "selected" msgstr "ausgewählt" -#: internal/command/descriptions.go:107 +#: internal/command/descriptions.go:109 msgid "selects the first clipboard" msgstr "Wählt die erste Zwischenablage" -#: internal/command/descriptions.go:108 +#: internal/command/descriptions.go:110 msgid "selects the last clipboard" msgstr "Wählt die letzte Zwischenablage" -#: internal/command/descriptions.go:106 +#: internal/command/descriptions.go:108 msgid "selects the next clipboard" msgstr "Wählt die nächste Zwischenablage" -#: internal/command/descriptions.go:105 +#: internal/command/descriptions.go:107 msgid "selects the previous clipboard" msgstr "Wählt die vorherige Zwischenablage" @@ -3896,11 +3923,11 @@ msgstr "Wählt die vorherige Zwischenablage" msgid "semicolon" msgstr "Semikolon" -#: internal/command/descriptions.go:71 +#: internal/command/descriptions.go:73 msgid "sends the following keypress to the terminal or application" msgstr "sendet den nächsten Tastendruck an das Terminal oder die Anwendung" -#: internal/command/descriptions.go:73 +#: internal/command/descriptions.go:75 msgid "set Window Mode, needs 2 marks " msgstr "Fenstermodus setzen, benötigt 2 Marken " @@ -3908,11 +3935,11 @@ msgstr "Fenstermodus setzen, benötigt 2 Marken " msgid "set mark" msgstr "Marke setzen" -#: internal/command/descriptions.go:28 +#: internal/command/descriptions.go:30 msgid "set review and phonetically presents the current character" msgstr "Setzt die Ansicht auf das aktuelle Zeichen und gibt es phonetisch aus" -#: internal/command/descriptions.go:34 +#: internal/command/descriptions.go:36 msgid "set review cursor to begin of current line and display the content" msgstr "" "Setzt den Bildschirm-Cursor an den Anfang der aktuellen Zeile und zeigt " @@ -3948,7 +3975,7 @@ msgstr "Süden {0}" msgid "space" msgstr "Leerzeichen" -#: internal/command/descriptions.go:104 +#: internal/command/descriptions.go:106 msgid "speaks the contents of the currently selected clipboard" msgstr "Liest den Inhalt der momentan gewählten Zwischenablage vor" @@ -3976,7 +4003,7 @@ msgstr "Tonhöhe" msgid "speech rate" msgstr "Sprechgeschwindigkeit" -#: internal/app/commands.go:138 +#: internal/app/commands.go:142 msgid "speech temporary disabled" msgstr "Sprachausgabe vorübergehend ausgeschaltet" @@ -3993,11 +4020,11 @@ msgstr "Sprachlautstärke" msgid "star" msgstr "Stern" -#: internal/review/table.go:212 +#: internal/review/table.go:209 msgid "start of cell" msgstr "Zellenanfang" -#: internal/review/table.go:168 +#: internal/review/table.go:165 msgid "start of line" msgstr "Zeilenanfang" @@ -4026,7 +4053,7 @@ msgstr "Tabellenmodus" msgid "tilde" msgstr "Tilde" -#: internal/command/descriptions.go:51 +#: internal/command/descriptions.go:53 msgid "toggles the tutorial mode" msgstr "Schaltet den Lernmodus um" @@ -4043,7 +4070,7 @@ msgid "unavailable" msgstr "nicht verfügbar" #: internal/app/tutorial.go:107 internal/app/tutorial.go:161 -#: internal/reader/reader.go:261 internal/review/review.go:140 +#: internal/reader/reader.go:261 internal/review/review.go:145 msgid "unbound" msgstr "unbelegt" diff --git a/internal/i18n/locale/es/LC_MESSAGES/fenrir.po b/internal/i18n/locale/es/LC_MESSAGES/fenrir.po index 938b2954..019dee44 100644 --- a/internal/i18n/locale/es/LC_MESSAGES/fenrir.po +++ b/internal/i18n/locale/es/LC_MESSAGES/fenrir.po @@ -368,6 +368,10 @@ msgstr "Corazón roto" msgid "Brown heart" msgstr "Corazón marrón" +#: internal/command/descriptions.go:17 +msgid "Browse notifications with their received times" +msgstr "Explorar las notificaciones con sus horas de recepción" + #: internal/emoji/catalog.go:200 msgid "Bug" msgstr "Bicho" @@ -505,51 +509,51 @@ msgstr "Claqueta" msgid "Clapping hands" msgstr "Palmas" -#: internal/command/descriptions.go:77 +#: internal/command/descriptions.go:79 msgid "Clear all live regions" msgstr "Borrar todas las regiones dinámicas" -#: internal/command/descriptions.go:78 +#: internal/command/descriptions.go:80 msgid "Clear all reading regions" msgstr "Borrar todas las regiones de lectura" -#: internal/command/descriptions.go:80 +#: internal/command/descriptions.go:82 msgid "Clear live region 1" msgstr "Borrar la región dinámica 1" -#: internal/command/descriptions.go:98 +#: internal/command/descriptions.go:100 msgid "Clear live region 10" msgstr "Borrar la región dinámica 10" -#: internal/command/descriptions.go:82 +#: internal/command/descriptions.go:84 msgid "Clear live region 2" msgstr "Borrar la región dinámica 2" -#: internal/command/descriptions.go:84 +#: internal/command/descriptions.go:86 msgid "Clear live region 3" msgstr "Borrar la región dinámica 3" -#: internal/command/descriptions.go:86 +#: internal/command/descriptions.go:88 msgid "Clear live region 4" msgstr "Borrar la región dinámica 4" -#: internal/command/descriptions.go:88 +#: internal/command/descriptions.go:90 msgid "Clear live region 5" msgstr "Borrar la región dinámica 5" -#: internal/command/descriptions.go:90 +#: internal/command/descriptions.go:92 msgid "Clear live region 6" msgstr "Borrar la región dinámica 6" -#: internal/command/descriptions.go:92 +#: internal/command/descriptions.go:94 msgid "Clear live region 7" msgstr "Borrar la región dinámica 7" -#: internal/command/descriptions.go:94 +#: internal/command/descriptions.go:96 msgid "Clear live region 8" msgstr "Borrar la región dinámica 8" -#: internal/command/descriptions.go:96 +#: internal/command/descriptions.go:98 msgid "Clear live region 9" msgstr "Borrar la región dinámica 9" @@ -561,7 +565,7 @@ msgstr "Copas brindando" msgid "Clipboard" msgstr "Portapapeles" -#: internal/app/application.go:145 internal/app/application.go:148 +#: internal/app/application.go:146 internal/app/application.go:149 #: internal/app/clipboard.go:218 internal/app/clipboard.go:374 msgid "Clipboard import failed" msgstr "Error al importar el portapapeles" @@ -570,6 +574,10 @@ msgstr "Error al importar el portapapeles" msgid "Clipboard sync" msgstr "Sincronización del portapapeles" +#: internal/app/notifications.go:62 +msgid "Close" +msgstr "Cerrar" + #: internal/emoji/catalog.go:230 msgid "Cloud" msgstr "Nube" @@ -636,7 +644,7 @@ msgstr "Café" msgid "Coffin" msgstr "Ataúd" -#: internal/command/descriptions.go:45 +#: internal/command/descriptions.go:47 msgid "Column number for cursor" msgstr "Número de columna del cursor" @@ -703,6 +711,10 @@ msgstr "No se pudo abrir el menú de emojis: {0}" msgid "Could not open Fenrir Menu: {0}" msgstr "No se pudo abrir el menú de Fenrir: {0}" +#: internal/app/notifications.go:66 internal/app/notifications.go:70 +msgid "Could not open Notifications: {0}" +msgstr "No se pudieron abrir las notificaciones: {0}" + #: internal/app/spellcheck_menu.go:39 internal/app/spellcheck_menu.go:58 msgid "Could not open Spellcheck Menu: {0}" msgstr "No se pudo abrir el menú de ortografía: {0}" @@ -950,7 +962,7 @@ msgstr "Elfo" msgid "Emoji" msgstr "Emoji" -#: internal/command/descriptions.go:53 internal/emoji/catalog.go:14 +#: internal/command/descriptions.go:55 internal/emoji/catalog.go:14 msgid "Emoji Menu" msgstr "Menú de emojis" @@ -1005,7 +1017,7 @@ msgstr "Nivel de experiencia" msgid "Exploding head" msgstr "Cabeza explotando" -#: internal/command/descriptions.go:114 +#: internal/command/descriptions.go:116 msgid "Export current fenrir clipboard to X or GUI clipboard" msgstr "" "Exportar el portapapeles actual de Fenrir al portapapeles gráfico o de X" @@ -1042,7 +1054,7 @@ msgstr "Hada" msgid "Fallen Leaf" msgstr "Hojas caídas" -#: internal/command/descriptions.go:55 internal/preferences/settings.go:38 +#: internal/command/descriptions.go:57 internal/preferences/settings.go:38 msgid "Fenrir Menu" msgstr "Menú de Fenrir" @@ -1050,7 +1062,7 @@ msgstr "Menú de Fenrir" msgid "Fenrir keys" msgstr "Teclas de Fenrir" -#: internal/app/commands.go:98 +#: internal/app/commands.go:102 msgid "Fenrir screen reader version {0}-{1}" msgstr "Lector de pantalla Fenrir versión {0}-{1}" @@ -1146,7 +1158,7 @@ msgstr "Huellas de pies" msgid "Fortune Cookie" msgstr "Galleta de la fortuna" -#: internal/app/commands.go:143 +#: internal/app/commands.go:147 msgid "Forward next keypress" msgstr "Enviar la siguiente tecla" @@ -1526,7 +1538,7 @@ msgstr "Bombilla" msgid "Light Rail" msgstr "Tren ligero" -#: internal/command/descriptions.go:44 +#: internal/command/descriptions.go:46 msgid "Line number for cursor" msgstr "Número de línea del cursor" @@ -1534,7 +1546,7 @@ msgstr "Número de línea del cursor" msgid "Lion" msgstr "León" -#: internal/command/descriptions.go:76 +#: internal/command/descriptions.go:78 msgid "List reading regions" msgstr "Listar las regiones de lectura" @@ -1695,47 +1707,47 @@ msgstr "Moto" msgid "Mouse face" msgstr "Cara de ratón" -#: internal/command/descriptions.go:35 +#: internal/command/descriptions.go:37 msgid "Move Review to the end of current line and display the content" msgstr "" "Mover el cursor de revisión al final de la línea actual y presentar el " "contenido" -#: internal/command/descriptions.go:36 +#: internal/command/descriptions.go:38 msgid "Move Review to the first character on the line" msgstr "Mover el cursor de revisión al primer carácter de la línea" -#: internal/command/descriptions.go:48 +#: internal/command/descriptions.go:50 msgid "Move Review to the first character on the screen (left top)" msgstr "" "Mover el cursor de revisión al primer carácter de la pantalla, arriba a la " "izquierda" -#: internal/command/descriptions.go:37 +#: internal/command/descriptions.go:39 msgid "Move Review to the last character on the line" msgstr "Mover el cursor de revisión al último carácter de la línea" -#: internal/command/descriptions.go:49 +#: internal/command/descriptions.go:51 msgid "Move Review to the last character on the screen (right bottom)" msgstr "" "Mover el cursor de revisión al último carácter de la pantalla, abajo a la " "derecha" -#: internal/command/descriptions.go:33 +#: internal/command/descriptions.go:35 msgid "Move review to the bottom of the screen" msgstr "Mover el cursor de revisión al final de la pantalla" -#: internal/command/descriptions.go:31 +#: internal/command/descriptions.go:33 msgid "Move review to the character below the current position" msgstr "Mover el cursor de revisión al carácter debajo de la posición actual" -#: internal/command/descriptions.go:30 +#: internal/command/descriptions.go:32 msgid "Move review to the character in the line above the current position" msgstr "" "Mover el cursor de revisión al carácter de la línea superior a la posición " "actual" -#: internal/command/descriptions.go:29 +#: internal/command/descriptions.go:31 msgid "Moves review to the next character" msgstr "Mueve el cursor de revisión al carácter siguiente" @@ -1820,6 +1832,10 @@ msgstr "No se ha recibido ningún mensaje de chat" msgid "No matches" msgstr "Sin coincidencias" +#: internal/app/notifications.go:41 internal/app/notifications.go:49 +msgid "No notifications" +msgstr "No hay notificaciones" + #: internal/reader/regions.go:251 msgid "No reading regions set" msgstr "No hay regiones de lectura definidas" @@ -1861,6 +1877,11 @@ msgstr "Fuera del modo de revisión" msgid "Not in window Mode" msgstr "No está en modo ventana" +#: internal/app/notifications.go:59 internal/app/notifications.go:60 +#: internal/app/notifications.go:61 +msgid "Notifications" +msgstr "Notificaciones" + #: internal/preferences/settings.go:96 msgid "OK" msgstr "Aceptar" @@ -1985,7 +2006,7 @@ msgstr "Persona haciendo surf" msgid "Person Swimming" msgstr "Persona nadando" -#: internal/command/descriptions.go:25 +#: internal/command/descriptions.go:27 msgid "Phonetically spells the current word" msgstr "Deletrea fonéticamente la palabra actual" @@ -2073,7 +2094,7 @@ msgstr "Patata" msgid "Potion" msgstr "Poción" -#: internal/command/descriptions.go:52 +#: internal/command/descriptions.go:54 msgid "Present the version of Fenrir currently in use." msgstr "Anunciar la versión de Fenrir en uso." @@ -2081,7 +2102,7 @@ msgstr "Anunciar la versión de Fenrir en uso." msgid "Presentation" msgstr "Presentación" -#: internal/command/descriptions.go:101 +#: internal/command/descriptions.go:103 msgid "" "Presents the currently selected text that will be copied to the clipboard" msgstr "Presenta el texto seleccionado que se copiará al portapapeles" @@ -2094,11 +2115,11 @@ msgstr "Bretzel" msgid "Printer" msgstr "Impresora" -#: internal/app/commands.go:129 +#: internal/app/commands.go:133 msgid "Progress monitoring disabled" msgstr "Seguimiento del progreso desactivado" -#: internal/app/commands.go:127 +#: internal/app/commands.go:131 msgid "Progress monitoring enabled" msgstr "Seguimiento del progreso activado" @@ -2174,43 +2195,43 @@ msgstr "Velocidad" msgid "Raves" msgstr "Fiestas rave" -#: internal/command/descriptions.go:79 +#: internal/command/descriptions.go:81 msgid "Read live region 1" msgstr "Leer la región dinámica 1" -#: internal/command/descriptions.go:97 +#: internal/command/descriptions.go:99 msgid "Read live region 10" msgstr "Leer la región dinámica 10" -#: internal/command/descriptions.go:81 +#: internal/command/descriptions.go:83 msgid "Read live region 2" msgstr "Leer la región dinámica 2" -#: internal/command/descriptions.go:83 +#: internal/command/descriptions.go:85 msgid "Read live region 3" msgstr "Leer la región dinámica 3" -#: internal/command/descriptions.go:85 +#: internal/command/descriptions.go:87 msgid "Read live region 4" msgstr "Leer la región dinámica 4" -#: internal/command/descriptions.go:87 +#: internal/command/descriptions.go:89 msgid "Read live region 5" msgstr "Leer la región dinámica 5" -#: internal/command/descriptions.go:89 +#: internal/command/descriptions.go:91 msgid "Read live region 6" msgstr "Leer la región dinámica 6" -#: internal/command/descriptions.go:91 +#: internal/command/descriptions.go:93 msgid "Read live region 7" msgstr "Leer la región dinámica 7" -#: internal/command/descriptions.go:93 +#: internal/command/descriptions.go:95 msgid "Read live region 8" msgstr "Leer la región dinámica 8" -#: internal/command/descriptions.go:95 +#: internal/command/descriptions.go:97 msgid "Read live region 9" msgstr "Leer la región dinámica 9" @@ -2230,11 +2251,11 @@ msgstr "Regiones de lectura borradas" msgid "Reading window: {0}" msgstr "Ventana de lectura: {0}" -#: internal/command/descriptions.go:42 +#: internal/command/descriptions.go:44 msgid "Reads attributes of current cursor position" msgstr "Lee los atributos de la posición actual del cursor" -#: internal/command/descriptions.go:39 +#: internal/command/descriptions.go:41 msgid "Reads from the top of the screen to the cursor position" msgstr "Lee desde el inicio de la pantalla hasta la posición del cursor." @@ -2246,7 +2267,7 @@ msgstr "Remoto {0}, canal {1}" msgid "Remove marks" msgstr "Marcas eliminadas" -#: internal/command/descriptions.go:100 +#: internal/command/descriptions.go:102 msgid "Removes marks from selected text" msgstr "Elimina las marcas del texto seleccionado" @@ -2254,6 +2275,10 @@ msgstr "Elimina las marcas del texto seleccionado" msgid "Rename channel" msgstr "Cambiar nombre del canal" +#: internal/command/descriptions.go:16 +msgid "Repeat the most recent notification" +msgstr "Repetir la notificación más reciente" + #: internal/config/config.go:168 msgid "Repeated symbols" msgstr "Símbolos repetidos" @@ -2362,7 +2387,7 @@ msgstr "Papá Noel" msgid "Save unavailable." msgstr "Guardado no disponible." -#: internal/command/descriptions.go:65 +#: internal/command/descriptions.go:67 msgid "Saves your current Fenrir settings so they are the default." msgstr "Guarda la configuración actual de Fenrir como predeterminada." @@ -2394,7 +2419,7 @@ msgstr "Escorpión" msgid "Screaming" msgstr "Gritando" -#: internal/app/commands.go:152 internal/app/scripts.go +#: internal/app/commands.go:156 internal/app/scripts.go msgid "Script failed" msgstr "El script falló" @@ -2430,7 +2455,7 @@ msgstr "Buscar {0}" msgid "Seedling" msgstr "Planta joven" -#: internal/command/descriptions.go:56 +#: internal/command/descriptions.go:58 msgid "Select a temporary application override" msgstr "Seleccionar ajustes temporales para una aplicación" @@ -2450,7 +2475,7 @@ msgstr "Puerto serie" msgid "Service Dog" msgstr "Perro de servicio" -#: internal/command/descriptions.go:75 +#: internal/command/descriptions.go:77 msgid "Set a live region from one or two marks" msgstr "Definir una región dinámica a partir de una o dos marcas" @@ -2467,7 +2492,9 @@ msgstr "La configuración está ocupada" msgid "" "Settings saved, but key changes could not be applied: {0}. Previous keys " "remain active." -msgstr "Ajustes guardados, pero no se pudieron aplicar los cambios de teclas: {0}. Las teclas anteriores siguen activas." +msgstr "" +"Ajustes guardados, pero no se pudieron aplicar los cambios de teclas: {0}. " +"Las teclas anteriores siguen activas." #: internal/app/quick_settings.go:298 msgid "Settings saved." @@ -2625,7 +2652,7 @@ msgstr "Destellos" msgid "Speech" msgstr "Voz" -#: internal/speech/drivers.go:44 +#: internal/speech/drivers.go:47 msgid "Speech Dispatcher" msgstr "Speech Dispatcher" @@ -2661,11 +2688,11 @@ msgstr "La revisión ortográfica no está disponible" msgid "Spell checking is unavailable: {0}" msgstr "La revisión ortográfica no está disponible: {0}" -#: internal/command/descriptions.go:54 +#: internal/command/descriptions.go:56 msgid "Spellcheck Menu" msgstr "Menú de ortografía" -#: internal/command/descriptions.go:24 +#: internal/command/descriptions.go:26 msgid "Spells the current word" msgstr "Deletrea la palabra actual" @@ -2845,7 +2872,7 @@ msgstr "Hora y fecha" msgid "Time format" msgstr "Formato de hora" -#: internal/command/descriptions.go:68 +#: internal/command/descriptions.go:70 msgid "Toggle progress bar monitoring with ascending tones" msgstr "Alternar el seguimiento del progreso con tonos ascendentes" @@ -2921,7 +2948,7 @@ msgstr "Vaso de whisky" msgid "Turkey" msgstr "Pavo" -#: internal/command/descriptions.go:74 +#: internal/command/descriptions.go:76 msgid "Turn off window mode" msgstr "Desactivar el modo de ventana" @@ -3238,7 +3265,7 @@ msgstr "negro" #: internal/app/clipboard.go:281 internal/presentation/text.go:35 #: internal/reader/regions.go:191 internal/review/line_start.go:31 #: internal/review/screen_range.go:39 internal/review/spelling.go:44 -#: internal/review/table.go:124 internal/review/table.go:205 +#: internal/review/table.go:119 internal/review/table.go:202 #: internal/review/vertical_character.go:31 internal/review/word.go:64 msgid "blank" msgstr "en blanco" @@ -3288,7 +3315,7 @@ msgstr "carácter {0}" msgid "checked" msgstr "marcado" -#: internal/command/descriptions.go:109 +#: internal/command/descriptions.go:111 msgid "clears the currently selected clipboard" msgstr "Vacía el portapapeles seleccionado" @@ -3322,11 +3349,11 @@ msgstr "confundido" msgid "cool" msgstr "genial" -#: internal/command/descriptions.go:103 +#: internal/command/descriptions.go:105 msgid "copies last presented text to the clipboard" msgstr "copia el último texto presentado al portapapeles" -#: internal/command/descriptions.go:102 +#: internal/command/descriptions.go:104 msgid "copies marked text to the currently selected clipboard" msgstr "Copia el texto marcado al portapapeles en uso" @@ -3334,7 +3361,7 @@ msgstr "Copia el texto marcado al portapapeles en uso" msgid "correct" msgstr "Correcto" -#: internal/review/table.go:132 +#: internal/review/table.go:128 msgid "could not set header row" msgstr "no se pudo definir la fila de encabezado" @@ -3342,11 +3369,11 @@ msgstr "no se pudo definir la fila de encabezado" msgid "crying" msgstr "llorando" -#: internal/command/descriptions.go:17 +#: internal/command/descriptions.go:19 msgid "current line" msgstr "línea actual" -#: internal/command/descriptions.go:20 +#: internal/command/descriptions.go:22 msgid "current word." msgstr "Palabra actual." @@ -3375,11 +3402,11 @@ msgstr "guion" msgid "default" msgstr "predeterminado" -#: internal/command/descriptions.go:67 +#: internal/command/descriptions.go:69 msgid "disables speech until next keypress" msgstr "Desactiva el habla hasta la siguiente pulsación de teclas" -#: internal/command/descriptions.go:43 +#: internal/command/descriptions.go:45 msgid "displays the position of the review cursor" msgstr "Indica la posición del cursor de revisión" @@ -3397,29 +3424,29 @@ msgstr "punto" msgid "east {0}" msgstr "este {0}" -#: internal/command/descriptions.go:69 +#: internal/command/descriptions.go:71 msgid "enables or disables automatic reading of new text as it appears" msgstr "" "Activa o desactiva la lectura de texto cuando hay nuevo contenido en la " "pantalla" -#: internal/command/descriptions.go:66 +#: internal/command/descriptions.go:68 msgid "enables or disables speech" msgstr "Activa o desactiva el habla" -#: internal/command/descriptions.go:41 +#: internal/command/descriptions.go:43 msgid "enables or disables the announcement of attributes" msgstr "activa o desactiva el anuncio de atributos" -#: internal/command/descriptions.go:70 +#: internal/command/descriptions.go:72 msgid "enables or disables tracking of highlighted text" msgstr "activa o desactiva el seguimiento del texto resaltado" -#: internal/review/table.go:218 +#: internal/review/table.go:215 msgid "end of cell" msgstr "fin de celda" -#: internal/review/line_end.go:24 internal/review/table.go:175 +#: internal/review/line_end.go:24 internal/review/table.go:172 msgid "end of line" msgstr "Fin de línea" @@ -3440,15 +3467,15 @@ msgstr "igual" msgid "evil smile" msgstr "sonrisa malvada" -#: internal/command/descriptions.go:72 +#: internal/command/descriptions.go:74 msgid "exits Fenrir" msgstr "Sale de Fenrir" -#: internal/command/descriptions.go:50 +#: internal/command/descriptions.go:52 msgid "exits review mode" msgstr "Sale del modo de revisión" -#: internal/command/descriptions.go:112 +#: internal/command/descriptions.go:114 msgid "export the current fenrir clipboard to a file" msgstr "exporta el portapapeles actual de Fenrir a un archivo" @@ -3462,11 +3489,11 @@ msgstr "" "no se pudo exportar al portapapeles de X. No se encontró ninguna pantalla " "disponible." -#: internal/review/table.go:190 +#: internal/review/table.go:187 msgid "first cell" msgstr "primera celda" -#: internal/review/table.go:224 +#: internal/review/table.go:221 msgid "first character in cell {0}" msgstr "primer carácter de la celda {0}" @@ -3486,35 +3513,35 @@ msgstr "ceño fruncido" msgid "frustrated" msgstr "frustrado" -#: internal/command/descriptions.go:59 +#: internal/command/descriptions.go:61 msgid "get current quick menu entry" msgstr "anunciar la entrada actual del menú rápido" -#: internal/command/descriptions.go:60 +#: internal/command/descriptions.go:62 msgid "get current quick menu value" msgstr "anunciar el valor actual del menú rápido" -#: internal/command/descriptions.go:57 +#: internal/command/descriptions.go:59 msgid "get next quick menu category" msgstr "seleccionar la siguiente categoría del menú rápido" -#: internal/command/descriptions.go:61 +#: internal/command/descriptions.go:63 msgid "get next quick menu entry" msgstr "seleccionar la siguiente entrada del menú rápido" -#: internal/command/descriptions.go:63 +#: internal/command/descriptions.go:65 msgid "get next quick menu value" msgstr "seleccionar el siguiente valor del menú rápido" -#: internal/command/descriptions.go:58 +#: internal/command/descriptions.go:60 msgid "get previous quick menu category" msgstr "seleccionar la categoría anterior del menú rápido" -#: internal/command/descriptions.go:62 +#: internal/command/descriptions.go:64 msgid "get previous quick menu entry" msgstr "seleccionar la entrada anterior del menú rápido" -#: internal/command/descriptions.go:64 +#: internal/command/descriptions.go:66 msgid "get previous quick menu value" msgstr "seleccionar el valor anterior del menú rápido" @@ -3545,7 +3572,7 @@ msgstr "tiene atributos" msgid "hash" msgstr "almohadilla" -#: internal/review/table.go:138 +#: internal/review/table.go:135 msgid "header row set" msgstr "fila de encabezado definida" @@ -3561,11 +3588,11 @@ msgstr "Seguimiento del texto resaltado" msgid "hurray" msgstr "hurra" -#: internal/command/descriptions.go:111 +#: internal/command/descriptions.go:113 msgid "imports text from clipboard file to the clipboard" msgstr "importa texto del archivo del portapapeles al portapapeles" -#: internal/command/descriptions.go:113 +#: internal/command/descriptions.go:115 msgid "imports the graphical clipboard to Fenrir's clipboard" msgstr "importa el portapapeles gráfico al portapapeles de Fenrir" @@ -3581,11 +3608,11 @@ msgstr "cursiva" msgid "knocked out" msgstr "inconsciente" -#: internal/review/table.go:192 +#: internal/review/table.go:189 msgid "last cell" msgstr "última celda" -#: internal/review/table.go:227 +#: internal/review/table.go:224 msgid "last character in cell {0}" msgstr "último carácter de la celda {0}" @@ -3690,27 +3717,27 @@ msgstr "mal escrito" msgid "most" msgstr "la mayoría" -#: internal/command/descriptions.go:32 +#: internal/command/descriptions.go:34 msgid "move review to top of screen" msgstr "ir al final de la pantalla" -#: internal/command/descriptions.go:19 +#: internal/command/descriptions.go:21 msgid "moves review focus to the previous word " msgstr "mueve el cursor de revisión a la palabra anterior " -#: internal/command/descriptions.go:18 +#: internal/command/descriptions.go:20 msgid "moves review to the next line " msgstr "mueve el cursor de revisión a la línea siguiente " -#: internal/command/descriptions.go:21 +#: internal/command/descriptions.go:23 msgid "moves review to the next word " msgstr "mueve el cursor de revisión a la palabra siguiente " -#: internal/command/descriptions.go:22 +#: internal/command/descriptions.go:24 msgid "moves review to the previous character" msgstr "mueve el cursor de revisión al carácter anterior" -#: internal/command/descriptions.go:16 +#: internal/command/descriptions.go:18 msgid "moves review to the previous line " msgstr "mueve el cursor de revisión a la línea anterior " @@ -3722,8 +3749,8 @@ msgstr "silenciado" msgid "neutral" msgstr "neutral" -#: internal/command/descriptions.go internal/command/descriptions.go:26 -#: internal/command/descriptions.go:27 +#: internal/command/descriptions.go internal/command/descriptions.go:28 +#: internal/command/descriptions.go:29 msgid "no description available" msgstr "sin descripción disponible" @@ -3731,13 +3758,13 @@ msgstr "sin descripción disponible" msgid "no review cursor" msgstr "No hay cursor de revisión" -#: internal/review/spelling.go:19 internal/review/table.go:150 -#: internal/review/table.go:158 internal/review/vertical_character.go:26 +#: internal/review/spelling.go:19 internal/review/table.go:147 +#: internal/review/table.go:155 internal/review/vertical_character.go:26 #: internal/review/vertical_character.go:34 msgid "no table data" msgstr "sin datos de tabla" -#: internal/reader/regions.go:173 internal/review/review.go:135 +#: internal/reader/regions.go:173 internal/review/review.go:140 msgid "no text console" msgstr "sin consola de texto" @@ -3765,7 +3792,7 @@ msgstr "número" msgid "paste clipboard" msgstr "pegar portapapeles" -#: internal/command/descriptions.go:110 +#: internal/command/descriptions.go:112 msgid "pastes the text from the currently selected clipboard" msgstr "Pega el texto del portapapeles en uso" @@ -3774,7 +3801,7 @@ msgstr "Pega el texto del portapapeles en uso" msgid "percent" msgstr "por ciento" -#: internal/command/descriptions.go:99 +#: internal/command/descriptions.go:101 msgid "places marks to select text to copy to the clipboard" msgstr "" "Establece marcas para seleccionar texto que será copiado al portapapeles" @@ -3792,7 +3819,7 @@ msgstr "más" msgid "plus {0}" msgstr "más {0}" -#: internal/command/descriptions.go:23 +#: internal/command/descriptions.go:25 msgid "presents the current character." msgstr "Lee el carácter actual" @@ -3814,7 +3841,7 @@ msgstr "interrogación" msgid "quote" msgstr "comillas" -#: internal/command/descriptions.go:46 +#: internal/command/descriptions.go:48 msgid "" "read line to cursor pos, use review cursor if you are in review mode, " "otherwhise use text cursor" @@ -3822,7 +3849,7 @@ msgstr "" "leer la línea hasta el cursor; usar el cursor de revisión en modo de " "revisión y el cursor de texto en los demás casos" -#: internal/command/descriptions.go:47 +#: internal/command/descriptions.go:49 msgid "" "read to end of line, use review cursor if you are in review mode, otherwhise " "use text cursor" @@ -3830,11 +3857,11 @@ msgstr "" "Leer hasta el fin de línea, utiliza el cursor de revisión cuando el modo de " "revisión está activo, de lo contrario utiliza el cursor de texto." -#: internal/command/descriptions.go:40 +#: internal/command/descriptions.go:42 msgid "reads from the cursor to the bottom of the screen" msgstr "Lee desde el cursor hasta el final de la pantalla" -#: internal/command/descriptions.go:38 +#: internal/command/descriptions.go:40 msgid "reads the contents of the current screen" msgstr "Lee el contenido de la pantalla actual" @@ -3885,19 +3912,19 @@ msgstr "pantalla {0}" msgid "selected" msgstr "seleccionado" -#: internal/command/descriptions.go:107 +#: internal/command/descriptions.go:109 msgid "selects the first clipboard" msgstr "Selecciona el primer portapapeles" -#: internal/command/descriptions.go:108 +#: internal/command/descriptions.go:110 msgid "selects the last clipboard" msgstr "Selecciona el último portapapeles" -#: internal/command/descriptions.go:106 +#: internal/command/descriptions.go:108 msgid "selects the next clipboard" msgstr "Selecciona el siguiente portapapeles" -#: internal/command/descriptions.go:105 +#: internal/command/descriptions.go:107 msgid "selects the previous clipboard" msgstr "Selecciona el portapapeles anterior" @@ -3906,11 +3933,11 @@ msgstr "Selecciona el portapapeles anterior" msgid "semicolon" msgstr "punto y coma" -#: internal/command/descriptions.go:71 +#: internal/command/descriptions.go:73 msgid "sends the following keypress to the terminal or application" msgstr "envía la siguiente pulsación al terminal o a la aplicación" -#: internal/command/descriptions.go:73 +#: internal/command/descriptions.go:75 msgid "set Window Mode, needs 2 marks " msgstr "se necesitan dos marcas para establecer el modo ventana " @@ -3918,11 +3945,11 @@ msgstr "se necesitan dos marcas para establecer el modo ventana " msgid "set mark" msgstr "Marcar" -#: internal/command/descriptions.go:28 +#: internal/command/descriptions.go:30 msgid "set review and phonetically presents the current character" msgstr "Lee fonéticamente el último carácter" -#: internal/command/descriptions.go:34 +#: internal/command/descriptions.go:36 msgid "set review cursor to begin of current line and display the content" msgstr "lee la línea actual desde el principio" @@ -3956,7 +3983,7 @@ msgstr "sur {0}" msgid "space" msgstr "espacio" -#: internal/command/descriptions.go:104 +#: internal/command/descriptions.go:106 msgid "speaks the contents of the currently selected clipboard" msgstr "Habla el contenido del portapapeles seleccionado" @@ -3984,7 +4011,7 @@ msgstr "tono de voz" msgid "speech rate" msgstr "velocidad de voz" -#: internal/app/commands.go:138 +#: internal/app/commands.go:142 msgid "speech temporary disabled" msgstr "Habla desactivada temporalmente" @@ -4001,11 +4028,11 @@ msgstr "volumen de voz" msgid "star" msgstr "asterisco" -#: internal/review/table.go:212 +#: internal/review/table.go:209 msgid "start of cell" msgstr "inicio de celda" -#: internal/review/table.go:168 +#: internal/review/table.go:165 msgid "start of line" msgstr "inicio de línea" @@ -4034,7 +4061,7 @@ msgstr "modo de tabla" msgid "tilde" msgstr "tilde" -#: internal/command/descriptions.go:51 +#: internal/command/descriptions.go:53 msgid "toggles the tutorial mode" msgstr "alterna el modo de aprendizaje" @@ -4051,7 +4078,7 @@ msgid "unavailable" msgstr "no disponible" #: internal/app/tutorial.go:107 internal/app/tutorial.go:161 -#: internal/reader/reader.go:261 internal/review/review.go:140 +#: internal/reader/reader.go:261 internal/review/review.go:145 msgid "unbound" msgstr "sin asignar" diff --git a/internal/i18n/locale/fenrir.pot b/internal/i18n/locale/fenrir.pot index 62b95e63..167f27d7 100644 --- a/internal/i18n/locale/fenrir.pot +++ b/internal/i18n/locale/fenrir.pot @@ -357,6 +357,10 @@ msgstr "" msgid "Brown heart" msgstr "" +#: internal/command/descriptions.go:17 +msgid "Browse notifications with their received times" +msgstr "" + #: internal/emoji/catalog.go:200 msgid "Bug" msgstr "" @@ -493,51 +497,51 @@ msgstr "" msgid "Clapping hands" msgstr "" -#: internal/command/descriptions.go:77 +#: internal/command/descriptions.go:79 msgid "Clear all live regions" msgstr "" -#: internal/command/descriptions.go:78 +#: internal/command/descriptions.go:80 msgid "Clear all reading regions" msgstr "" -#: internal/command/descriptions.go:80 +#: internal/command/descriptions.go:82 msgid "Clear live region 1" msgstr "" -#: internal/command/descriptions.go:98 +#: internal/command/descriptions.go:100 msgid "Clear live region 10" msgstr "" -#: internal/command/descriptions.go:82 +#: internal/command/descriptions.go:84 msgid "Clear live region 2" msgstr "" -#: internal/command/descriptions.go:84 +#: internal/command/descriptions.go:86 msgid "Clear live region 3" msgstr "" -#: internal/command/descriptions.go:86 +#: internal/command/descriptions.go:88 msgid "Clear live region 4" msgstr "" -#: internal/command/descriptions.go:88 +#: internal/command/descriptions.go:90 msgid "Clear live region 5" msgstr "" -#: internal/command/descriptions.go:90 +#: internal/command/descriptions.go:92 msgid "Clear live region 6" msgstr "" -#: internal/command/descriptions.go:92 +#: internal/command/descriptions.go:94 msgid "Clear live region 7" msgstr "" -#: internal/command/descriptions.go:94 +#: internal/command/descriptions.go:96 msgid "Clear live region 8" msgstr "" -#: internal/command/descriptions.go:96 +#: internal/command/descriptions.go:98 msgid "Clear live region 9" msgstr "" @@ -549,7 +553,7 @@ msgstr "" msgid "Clipboard" msgstr "" -#: internal/app/application.go:145 internal/app/application.go:148 internal/app/clipboard.go:218 internal/app/clipboard.go:374 +#: internal/app/application.go:146 internal/app/application.go:149 internal/app/clipboard.go:218 internal/app/clipboard.go:374 msgid "Clipboard import failed" msgstr "" @@ -557,6 +561,10 @@ msgstr "" msgid "Clipboard sync" msgstr "" +#: internal/app/notifications.go:62 +msgid "Close" +msgstr "" + #: internal/emoji/catalog.go:230 msgid "Cloud" msgstr "" @@ -621,7 +629,7 @@ msgstr "" msgid "Coffin" msgstr "" -#: internal/command/descriptions.go:45 +#: internal/command/descriptions.go:47 msgid "Column number for cursor" msgstr "" @@ -685,6 +693,10 @@ msgstr "" msgid "Could not open Fenrir Menu: {0}" msgstr "" +#: internal/app/notifications.go:66 internal/app/notifications.go:70 +msgid "Could not open Notifications: {0}" +msgstr "" + #: internal/app/spellcheck_menu.go:39 internal/app/spellcheck_menu.go:58 msgid "Could not open Spellcheck Menu: {0}" msgstr "" @@ -929,7 +941,7 @@ msgstr "" msgid "Emoji" msgstr "" -#: internal/command/descriptions.go:53 internal/emoji/catalog.go:14 +#: internal/command/descriptions.go:55 internal/emoji/catalog.go:14 msgid "Emoji Menu" msgstr "" @@ -973,7 +985,7 @@ msgstr "" msgid "Exploding head" msgstr "" -#: internal/command/descriptions.go:114 +#: internal/command/descriptions.go:116 msgid "Export current fenrir clipboard to X or GUI clipboard" msgstr "" @@ -1009,7 +1021,7 @@ msgstr "" msgid "Fallen Leaf" msgstr "" -#: internal/command/descriptions.go:55 internal/preferences/settings.go:38 +#: internal/command/descriptions.go:57 internal/preferences/settings.go:38 msgid "Fenrir Menu" msgstr "" @@ -1017,7 +1029,7 @@ msgstr "" msgid "Fenrir keys" msgstr "" -#: internal/app/commands.go:98 +#: internal/app/commands.go:102 msgid "Fenrir screen reader version {0}-{1}" msgstr "" @@ -1113,7 +1125,7 @@ msgstr "" msgid "Fortune Cookie" msgstr "" -#: internal/app/commands.go:143 +#: internal/app/commands.go:147 msgid "Forward next keypress" msgstr "" @@ -1493,7 +1505,7 @@ msgstr "" msgid "Light Rail" msgstr "" -#: internal/command/descriptions.go:44 +#: internal/command/descriptions.go:46 msgid "Line number for cursor" msgstr "" @@ -1501,7 +1513,7 @@ msgstr "" msgid "Lion" msgstr "" -#: internal/command/descriptions.go:76 +#: internal/command/descriptions.go:78 msgid "List reading regions" msgstr "" @@ -1661,39 +1673,39 @@ msgstr "" msgid "Mouse face" msgstr "" -#: internal/command/descriptions.go:35 +#: internal/command/descriptions.go:37 msgid "Move Review to the end of current line and display the content" msgstr "" -#: internal/command/descriptions.go:36 +#: internal/command/descriptions.go:38 msgid "Move Review to the first character on the line" msgstr "" -#: internal/command/descriptions.go:48 +#: internal/command/descriptions.go:50 msgid "Move Review to the first character on the screen (left top)" msgstr "" -#: internal/command/descriptions.go:37 +#: internal/command/descriptions.go:39 msgid "Move Review to the last character on the line" msgstr "" -#: internal/command/descriptions.go:49 +#: internal/command/descriptions.go:51 msgid "Move Review to the last character on the screen (right bottom)" msgstr "" -#: internal/command/descriptions.go:33 +#: internal/command/descriptions.go:35 msgid "Move review to the bottom of the screen" msgstr "" -#: internal/command/descriptions.go:31 +#: internal/command/descriptions.go:33 msgid "Move review to the character below the current position" msgstr "" -#: internal/command/descriptions.go:30 +#: internal/command/descriptions.go:32 msgid "Move review to the character in the line above the current position" msgstr "" -#: internal/command/descriptions.go:29 +#: internal/command/descriptions.go:31 msgid "Moves review to the next character" msgstr "" @@ -1773,6 +1785,10 @@ msgstr "" msgid "No matches" msgstr "" +#: internal/app/notifications.go:41 internal/app/notifications.go:49 +msgid "No notifications" +msgstr "" + #: internal/reader/regions.go:251 msgid "No reading regions set" msgstr "" @@ -1813,6 +1829,10 @@ msgstr "" msgid "Not in window Mode" msgstr "" +#: internal/app/notifications.go:59 internal/app/notifications.go:60 internal/app/notifications.go:61 +msgid "Notifications" +msgstr "" + #: internal/preferences/settings.go:96 msgid "OK" msgstr "" @@ -1937,7 +1957,7 @@ msgstr "" msgid "Person Swimming" msgstr "" -#: internal/command/descriptions.go:25 +#: internal/command/descriptions.go:27 msgid "Phonetically spells the current word" msgstr "" @@ -2025,7 +2045,7 @@ msgstr "" msgid "Potion" msgstr "" -#: internal/command/descriptions.go:52 +#: internal/command/descriptions.go:54 msgid "Present the version of Fenrir currently in use." msgstr "" @@ -2033,7 +2053,7 @@ msgstr "" msgid "Presentation" msgstr "" -#: internal/command/descriptions.go:101 +#: internal/command/descriptions.go:103 msgid "Presents the currently selected text that will be copied to the clipboard" msgstr "" @@ -2045,11 +2065,11 @@ msgstr "" msgid "Printer" msgstr "" -#: internal/app/commands.go:129 +#: internal/app/commands.go:133 msgid "Progress monitoring disabled" msgstr "" -#: internal/app/commands.go:127 +#: internal/app/commands.go:131 msgid "Progress monitoring enabled" msgstr "" @@ -2125,43 +2145,43 @@ msgstr "" msgid "Raves" msgstr "" -#: internal/command/descriptions.go:79 +#: internal/command/descriptions.go:81 msgid "Read live region 1" msgstr "" -#: internal/command/descriptions.go:97 +#: internal/command/descriptions.go:99 msgid "Read live region 10" msgstr "" -#: internal/command/descriptions.go:81 +#: internal/command/descriptions.go:83 msgid "Read live region 2" msgstr "" -#: internal/command/descriptions.go:83 +#: internal/command/descriptions.go:85 msgid "Read live region 3" msgstr "" -#: internal/command/descriptions.go:85 +#: internal/command/descriptions.go:87 msgid "Read live region 4" msgstr "" -#: internal/command/descriptions.go:87 +#: internal/command/descriptions.go:89 msgid "Read live region 5" msgstr "" -#: internal/command/descriptions.go:89 +#: internal/command/descriptions.go:91 msgid "Read live region 6" msgstr "" -#: internal/command/descriptions.go:91 +#: internal/command/descriptions.go:93 msgid "Read live region 7" msgstr "" -#: internal/command/descriptions.go:93 +#: internal/command/descriptions.go:95 msgid "Read live region 8" msgstr "" -#: internal/command/descriptions.go:95 +#: internal/command/descriptions.go:97 msgid "Read live region 9" msgstr "" @@ -2181,11 +2201,11 @@ msgstr "" msgid "Reading window: {0}" msgstr "" -#: internal/command/descriptions.go:42 +#: internal/command/descriptions.go:44 msgid "Reads attributes of current cursor position" msgstr "" -#: internal/command/descriptions.go:39 +#: internal/command/descriptions.go:41 msgid "Reads from the top of the screen to the cursor position" msgstr "" @@ -2197,7 +2217,7 @@ msgstr "" msgid "Remove marks" msgstr "" -#: internal/command/descriptions.go:100 +#: internal/command/descriptions.go:102 msgid "Removes marks from selected text" msgstr "" @@ -2205,6 +2225,10 @@ msgstr "" msgid "Rename channel" msgstr "" +#: internal/command/descriptions.go:16 +msgid "Repeat the most recent notification" +msgstr "" + #: internal/config/config.go:168 msgid "Repeated symbols" msgstr "" @@ -2313,7 +2337,7 @@ msgstr "" msgid "Save unavailable." msgstr "" -#: internal/command/descriptions.go:65 +#: internal/command/descriptions.go:67 msgid "Saves your current Fenrir settings so they are the default." msgstr "" @@ -2345,7 +2369,7 @@ msgstr "" msgid "Screaming" msgstr "" -#: internal/app/commands.go:152 internal/app/scripts.go +#: internal/app/commands.go:156 internal/app/scripts.go msgid "Script failed" msgstr "" @@ -2381,7 +2405,7 @@ msgstr "" msgid "Seedling" msgstr "" -#: internal/command/descriptions.go:56 +#: internal/command/descriptions.go:58 msgid "Select a temporary application override" msgstr "" @@ -2401,7 +2425,7 @@ msgstr "" msgid "Service Dog" msgstr "" -#: internal/command/descriptions.go:75 +#: internal/command/descriptions.go:77 msgid "Set a live region from one or two marks" msgstr "" @@ -2573,7 +2597,7 @@ msgstr "" msgid "Speech" msgstr "" -#: internal/speech/drivers.go:44 +#: internal/speech/drivers.go:47 msgid "Speech Dispatcher" msgstr "" @@ -2609,11 +2633,11 @@ msgstr "" msgid "Spell checking is unavailable: {0}" msgstr "" -#: internal/command/descriptions.go:54 +#: internal/command/descriptions.go:56 msgid "Spellcheck Menu" msgstr "" -#: internal/command/descriptions.go:24 +#: internal/command/descriptions.go:26 msgid "Spells the current word" msgstr "" @@ -2793,7 +2817,7 @@ msgstr "" msgid "Time format" msgstr "" -#: internal/command/descriptions.go:68 +#: internal/command/descriptions.go:70 msgid "Toggle progress bar monitoring with ascending tones" msgstr "" @@ -2869,7 +2893,7 @@ msgstr "" msgid "Turkey" msgstr "" -#: internal/command/descriptions.go:74 +#: internal/command/descriptions.go:76 msgid "Turn off window mode" msgstr "" @@ -3169,7 +3193,7 @@ msgstr "" msgid "black" msgstr "" -#: internal/app/clipboard.go:281 internal/presentation/text.go:35 internal/reader/regions.go:191 internal/review/line_start.go:31 internal/review/screen_range.go:39 internal/review/spelling.go:44 internal/review/table.go:124 internal/review/table.go:205 internal/review/vertical_character.go:31 internal/review/word.go:64 +#: internal/app/clipboard.go:281 internal/presentation/text.go:35 internal/reader/regions.go:191 internal/review/line_start.go:31 internal/review/screen_range.go:39 internal/review/spelling.go:44 internal/review/table.go:119 internal/review/table.go:202 internal/review/vertical_character.go:31 internal/review/word.go:64 msgid "blank" msgstr "" @@ -3217,7 +3241,7 @@ msgstr "" msgid "checked" msgstr "" -#: internal/command/descriptions.go:109 +#: internal/command/descriptions.go:111 msgid "clears the currently selected clipboard" msgstr "" @@ -3249,11 +3273,11 @@ msgstr "" msgid "cool" msgstr "" -#: internal/command/descriptions.go:103 +#: internal/command/descriptions.go:105 msgid "copies last presented text to the clipboard" msgstr "" -#: internal/command/descriptions.go:102 +#: internal/command/descriptions.go:104 msgid "copies marked text to the currently selected clipboard" msgstr "" @@ -3261,7 +3285,7 @@ msgstr "" msgid "correct" msgstr "" -#: internal/review/table.go:132 +#: internal/review/table.go:128 msgid "could not set header row" msgstr "" @@ -3269,11 +3293,11 @@ msgstr "" msgid "crying" msgstr "" -#: internal/command/descriptions.go:17 +#: internal/command/descriptions.go:19 msgid "current line" msgstr "" -#: internal/command/descriptions.go:20 +#: internal/command/descriptions.go:22 msgid "current word." msgstr "" @@ -3297,11 +3321,11 @@ msgstr "" msgid "default" msgstr "" -#: internal/command/descriptions.go:67 +#: internal/command/descriptions.go:69 msgid "disables speech until next keypress" msgstr "" -#: internal/command/descriptions.go:43 +#: internal/command/descriptions.go:45 msgid "displays the position of the review cursor" msgstr "" @@ -3317,27 +3341,27 @@ msgstr "" msgid "east {0}" msgstr "" -#: internal/command/descriptions.go:69 +#: internal/command/descriptions.go:71 msgid "enables or disables automatic reading of new text as it appears" msgstr "" -#: internal/command/descriptions.go:66 +#: internal/command/descriptions.go:68 msgid "enables or disables speech" msgstr "" -#: internal/command/descriptions.go:41 +#: internal/command/descriptions.go:43 msgid "enables or disables the announcement of attributes" msgstr "" -#: internal/command/descriptions.go:70 +#: internal/command/descriptions.go:72 msgid "enables or disables tracking of highlighted text" msgstr "" -#: internal/review/table.go:218 +#: internal/review/table.go:215 msgid "end of cell" msgstr "" -#: internal/review/line_end.go:24 internal/review/table.go:175 +#: internal/review/line_end.go:24 internal/review/table.go:172 msgid "end of line" msgstr "" @@ -3357,15 +3381,15 @@ msgstr "" msgid "evil smile" msgstr "" -#: internal/command/descriptions.go:72 +#: internal/command/descriptions.go:74 msgid "exits Fenrir" msgstr "" -#: internal/command/descriptions.go:50 +#: internal/command/descriptions.go:52 msgid "exits review mode" msgstr "" -#: internal/command/descriptions.go:112 +#: internal/command/descriptions.go:114 msgid "export the current fenrir clipboard to a file" msgstr "" @@ -3377,11 +3401,11 @@ msgstr "" msgid "failed to export to X clipboard. No available display found." msgstr "" -#: internal/review/table.go:190 +#: internal/review/table.go:187 msgid "first cell" msgstr "" -#: internal/review/table.go:224 +#: internal/review/table.go:221 msgid "first character in cell {0}" msgstr "" @@ -3401,35 +3425,35 @@ msgstr "" msgid "frustrated" msgstr "" -#: internal/command/descriptions.go:59 +#: internal/command/descriptions.go:61 msgid "get current quick menu entry" msgstr "" -#: internal/command/descriptions.go:60 +#: internal/command/descriptions.go:62 msgid "get current quick menu value" msgstr "" -#: internal/command/descriptions.go:57 +#: internal/command/descriptions.go:59 msgid "get next quick menu category" msgstr "" -#: internal/command/descriptions.go:61 +#: internal/command/descriptions.go:63 msgid "get next quick menu entry" msgstr "" -#: internal/command/descriptions.go:63 +#: internal/command/descriptions.go:65 msgid "get next quick menu value" msgstr "" -#: internal/command/descriptions.go:58 +#: internal/command/descriptions.go:60 msgid "get previous quick menu category" msgstr "" -#: internal/command/descriptions.go:62 +#: internal/command/descriptions.go:64 msgid "get previous quick menu entry" msgstr "" -#: internal/command/descriptions.go:64 +#: internal/command/descriptions.go:66 msgid "get previous quick menu value" msgstr "" @@ -3457,7 +3481,7 @@ msgstr "" msgid "hash" msgstr "" -#: internal/review/table.go:138 +#: internal/review/table.go:135 msgid "header row set" msgstr "" @@ -3473,11 +3497,11 @@ msgstr "" msgid "hurray" msgstr "" -#: internal/command/descriptions.go:111 +#: internal/command/descriptions.go:113 msgid "imports text from clipboard file to the clipboard" msgstr "" -#: internal/command/descriptions.go:113 +#: internal/command/descriptions.go:115 msgid "imports the graphical clipboard to Fenrir's clipboard" msgstr "" @@ -3493,11 +3517,11 @@ msgstr "" msgid "knocked out" msgstr "" -#: internal/review/table.go:192 +#: internal/review/table.go:189 msgid "last cell" msgstr "" -#: internal/review/table.go:227 +#: internal/review/table.go:224 msgid "last character in cell {0}" msgstr "" @@ -3597,27 +3621,27 @@ msgstr "" msgid "most" msgstr "" -#: internal/command/descriptions.go:32 +#: internal/command/descriptions.go:34 msgid "move review to top of screen" msgstr "" -#: internal/command/descriptions.go:19 +#: internal/command/descriptions.go:21 msgid "moves review focus to the previous word " msgstr "" -#: internal/command/descriptions.go:18 +#: internal/command/descriptions.go:20 msgid "moves review to the next line " msgstr "" -#: internal/command/descriptions.go:21 +#: internal/command/descriptions.go:23 msgid "moves review to the next word " msgstr "" -#: internal/command/descriptions.go:22 +#: internal/command/descriptions.go:24 msgid "moves review to the previous character" msgstr "" -#: internal/command/descriptions.go:16 +#: internal/command/descriptions.go:18 msgid "moves review to the previous line " msgstr "" @@ -3629,7 +3653,7 @@ msgstr "" msgid "neutral" msgstr "" -#: internal/command/descriptions.go internal/command/descriptions.go:26 internal/command/descriptions.go:27 +#: internal/command/descriptions.go internal/command/descriptions.go:28 internal/command/descriptions.go:29 msgid "no description available" msgstr "" @@ -3637,11 +3661,11 @@ msgstr "" msgid "no review cursor" msgstr "" -#: internal/review/spelling.go:19 internal/review/table.go:150 internal/review/table.go:158 internal/review/vertical_character.go:26 internal/review/vertical_character.go:34 +#: internal/review/spelling.go:19 internal/review/table.go:147 internal/review/table.go:155 internal/review/vertical_character.go:26 internal/review/vertical_character.go:34 msgid "no table data" msgstr "" -#: internal/reader/regions.go:173 internal/review/review.go:135 +#: internal/reader/regions.go:173 internal/review/review.go:140 msgid "no text console" msgstr "" @@ -3669,7 +3693,7 @@ msgstr "" msgid "paste clipboard" msgstr "" -#: internal/command/descriptions.go:110 +#: internal/command/descriptions.go:112 msgid "pastes the text from the currently selected clipboard" msgstr "" @@ -3677,7 +3701,7 @@ msgstr "" msgid "percent" msgstr "" -#: internal/command/descriptions.go:99 +#: internal/command/descriptions.go:101 msgid "places marks to select text to copy to the clipboard" msgstr "" @@ -3693,7 +3717,7 @@ msgstr "" msgid "plus {0}" msgstr "" -#: internal/command/descriptions.go:23 +#: internal/command/descriptions.go:25 msgid "presents the current character." msgstr "" @@ -3713,19 +3737,19 @@ msgstr "" msgid "quote" msgstr "" -#: internal/command/descriptions.go:46 +#: internal/command/descriptions.go:48 msgid "read line to cursor pos, use review cursor if you are in review mode, otherwhise use text cursor" msgstr "" -#: internal/command/descriptions.go:47 +#: internal/command/descriptions.go:49 msgid "read to end of line, use review cursor if you are in review mode, otherwhise use text cursor" msgstr "" -#: internal/command/descriptions.go:40 +#: internal/command/descriptions.go:42 msgid "reads from the cursor to the bottom of the screen" msgstr "" -#: internal/command/descriptions.go:38 +#: internal/command/descriptions.go:40 msgid "reads the contents of the current screen" msgstr "" @@ -3773,19 +3797,19 @@ msgstr "" msgid "selected" msgstr "" -#: internal/command/descriptions.go:107 +#: internal/command/descriptions.go:109 msgid "selects the first clipboard" msgstr "" -#: internal/command/descriptions.go:108 +#: internal/command/descriptions.go:110 msgid "selects the last clipboard" msgstr "" -#: internal/command/descriptions.go:106 +#: internal/command/descriptions.go:108 msgid "selects the next clipboard" msgstr "" -#: internal/command/descriptions.go:105 +#: internal/command/descriptions.go:107 msgid "selects the previous clipboard" msgstr "" @@ -3793,11 +3817,11 @@ msgstr "" msgid "semicolon" msgstr "" -#: internal/command/descriptions.go:71 +#: internal/command/descriptions.go:73 msgid "sends the following keypress to the terminal or application" msgstr "" -#: internal/command/descriptions.go:73 +#: internal/command/descriptions.go:75 msgid "set Window Mode, needs 2 marks " msgstr "" @@ -3805,11 +3829,11 @@ msgstr "" msgid "set mark" msgstr "" -#: internal/command/descriptions.go:28 +#: internal/command/descriptions.go:30 msgid "set review and phonetically presents the current character" msgstr "" -#: internal/command/descriptions.go:34 +#: internal/command/descriptions.go:36 msgid "set review cursor to begin of current line and display the content" msgstr "" @@ -3841,7 +3865,7 @@ msgstr "" msgid "space" msgstr "" -#: internal/command/descriptions.go:104 +#: internal/command/descriptions.go:106 msgid "speaks the contents of the currently selected clipboard" msgstr "" @@ -3869,7 +3893,7 @@ msgstr "" msgid "speech rate" msgstr "" -#: internal/app/commands.go:138 +#: internal/app/commands.go:142 msgid "speech temporary disabled" msgstr "" @@ -3885,11 +3909,11 @@ msgstr "" msgid "star" msgstr "" -#: internal/review/table.go:212 +#: internal/review/table.go:209 msgid "start of cell" msgstr "" -#: internal/review/table.go:168 +#: internal/review/table.go:165 msgid "start of line" msgstr "" @@ -3917,7 +3941,7 @@ msgstr "" msgid "tilde" msgstr "" -#: internal/command/descriptions.go:51 +#: internal/command/descriptions.go:53 msgid "toggles the tutorial mode" msgstr "" @@ -3933,7 +3957,7 @@ msgstr "" msgid "unavailable" msgstr "" -#: internal/app/tutorial.go:107 internal/app/tutorial.go:161 internal/reader/reader.go:261 internal/review/review.go:140 +#: internal/app/tutorial.go:107 internal/app/tutorial.go:161 internal/reader/reader.go:261 internal/review/review.go:145 msgid "unbound" msgstr "" diff --git a/internal/i18n/locale/pl/LC_MESSAGES/fenrir.po b/internal/i18n/locale/pl/LC_MESSAGES/fenrir.po index d34e38f7..79e57c5d 100644 --- a/internal/i18n/locale/pl/LC_MESSAGES/fenrir.po +++ b/internal/i18n/locale/pl/LC_MESSAGES/fenrir.po @@ -369,6 +369,10 @@ msgstr "Złamane serce" msgid "Brown heart" msgstr "Brązowe serce" +#: internal/command/descriptions.go:17 +msgid "Browse notifications with their received times" +msgstr "Przeglądaj powiadomienia z godzinami ich otrzymania" + #: internal/emoji/catalog.go:200 msgid "Bug" msgstr "gąsienica" @@ -506,51 +510,51 @@ msgstr "klaps" msgid "Clapping hands" msgstr "Klaszczące ręce" -#: internal/command/descriptions.go:77 +#: internal/command/descriptions.go:79 msgid "Clear all live regions" msgstr "Wyczyść wszystkie obszary dynamiczne" -#: internal/command/descriptions.go:78 +#: internal/command/descriptions.go:80 msgid "Clear all reading regions" msgstr "Wyczyść wszystkie obszary czytania" -#: internal/command/descriptions.go:80 +#: internal/command/descriptions.go:82 msgid "Clear live region 1" msgstr "Wyczyść obszar dynamiczny 1" -#: internal/command/descriptions.go:98 +#: internal/command/descriptions.go:100 msgid "Clear live region 10" msgstr "Wyczyść obszar dynamiczny 10" -#: internal/command/descriptions.go:82 +#: internal/command/descriptions.go:84 msgid "Clear live region 2" msgstr "Wyczyść obszar dynamiczny 2" -#: internal/command/descriptions.go:84 +#: internal/command/descriptions.go:86 msgid "Clear live region 3" msgstr "Wyczyść obszar dynamiczny 3" -#: internal/command/descriptions.go:86 +#: internal/command/descriptions.go:88 msgid "Clear live region 4" msgstr "Wyczyść obszar dynamiczny 4" -#: internal/command/descriptions.go:88 +#: internal/command/descriptions.go:90 msgid "Clear live region 5" msgstr "Wyczyść obszar dynamiczny 5" -#: internal/command/descriptions.go:90 +#: internal/command/descriptions.go:92 msgid "Clear live region 6" msgstr "Wyczyść obszar dynamiczny 6" -#: internal/command/descriptions.go:92 +#: internal/command/descriptions.go:94 msgid "Clear live region 7" msgstr "Wyczyść obszar dynamiczny 7" -#: internal/command/descriptions.go:94 +#: internal/command/descriptions.go:96 msgid "Clear live region 8" msgstr "Wyczyść obszar dynamiczny 8" -#: internal/command/descriptions.go:96 +#: internal/command/descriptions.go:98 msgid "Clear live region 9" msgstr "Wyczyść obszar dynamiczny 9" @@ -562,7 +566,7 @@ msgstr "stukające się kieliszki" msgid "Clipboard" msgstr "Schowek" -#: internal/app/application.go:145 internal/app/application.go:148 +#: internal/app/application.go:146 internal/app/application.go:149 #: internal/app/clipboard.go:218 internal/app/clipboard.go:374 msgid "Clipboard import failed" msgstr "Importowanie schowka nie powiodło się" @@ -571,6 +575,10 @@ msgstr "Importowanie schowka nie powiodło się" msgid "Clipboard sync" msgstr "Synchronizacja schowka" +#: internal/app/notifications.go:62 +msgid "Close" +msgstr "Zamknij" + #: internal/emoji/catalog.go:230 msgid "Cloud" msgstr "chmura" @@ -636,7 +644,7 @@ msgstr "Kawa" msgid "Coffin" msgstr "Trumna" -#: internal/command/descriptions.go:45 +#: internal/command/descriptions.go:47 msgid "Column number for cursor" msgstr "Numer kolumny kursora" @@ -703,6 +711,10 @@ msgstr "Nie można otworzyć menu emoji: {0}" msgid "Could not open Fenrir Menu: {0}" msgstr "Nie można otworzyć menu Fenrira: {0}" +#: internal/app/notifications.go:66 internal/app/notifications.go:70 +msgid "Could not open Notifications: {0}" +msgstr "Nie można otworzyć powiadomień: {0}" + #: internal/app/spellcheck_menu.go:39 internal/app/spellcheck_menu.go:58 msgid "Could not open Spellcheck Menu: {0}" msgstr "Nie można otworzyć menu sprawdzania pisowni: {0}" @@ -950,7 +962,7 @@ msgstr "elf" msgid "Emoji" msgstr "Emoji" -#: internal/command/descriptions.go:53 internal/emoji/catalog.go:14 +#: internal/command/descriptions.go:55 internal/emoji/catalog.go:14 msgid "Emoji Menu" msgstr "Menu emoji" @@ -1004,7 +1016,7 @@ msgstr "Poziom doświadczenia" msgid "Exploding head" msgstr "Eksplodująca głowa" -#: internal/command/descriptions.go:114 +#: internal/command/descriptions.go:116 msgid "Export current fenrir clipboard to X or GUI clipboard" msgstr "" "Eksportuj bieżący schowek Fenrira do schowka X lub interfejsu graficznego" @@ -1041,7 +1053,7 @@ msgstr "wróżka" msgid "Fallen Leaf" msgstr "spadające liście" -#: internal/command/descriptions.go:55 internal/preferences/settings.go:38 +#: internal/command/descriptions.go:57 internal/preferences/settings.go:38 msgid "Fenrir Menu" msgstr "Menu Fenrira" @@ -1049,7 +1061,7 @@ msgstr "Menu Fenrira" msgid "Fenrir keys" msgstr "Klawisze Fenrira" -#: internal/app/commands.go:98 +#: internal/app/commands.go:102 msgid "Fenrir screen reader version {0}-{1}" msgstr "Czytnik ekranu Fenrir, wersja {0}-{1}" @@ -1145,7 +1157,7 @@ msgstr "ślady stóp" msgid "Fortune Cookie" msgstr "ciastko z wróżbą" -#: internal/app/commands.go:143 +#: internal/app/commands.go:147 msgid "Forward next keypress" msgstr "Przepuść następny klawisz" @@ -1525,7 +1537,7 @@ msgstr "żarówka" msgid "Light Rail" msgstr "kolej miejska" -#: internal/command/descriptions.go:44 +#: internal/command/descriptions.go:46 msgid "Line number for cursor" msgstr "Numer wiersza kursora" @@ -1533,7 +1545,7 @@ msgstr "Numer wiersza kursora" msgid "Lion" msgstr "głowa lwa" -#: internal/command/descriptions.go:76 +#: internal/command/descriptions.go:78 msgid "List reading regions" msgstr "Wyświetl obszary czytania" @@ -1694,43 +1706,43 @@ msgstr "motocykl" msgid "Mouse face" msgstr "Twarz myszy" -#: internal/command/descriptions.go:35 +#: internal/command/descriptions.go:37 msgid "Move Review to the end of current line and display the content" msgstr "" "Przenieś kursor przeglądu na koniec bieżącego wiersza i odczytaj zawartość" -#: internal/command/descriptions.go:36 +#: internal/command/descriptions.go:38 msgid "Move Review to the first character on the line" msgstr "Przenieś kursor przeglądu do pierwszego znaku w wierszu" -#: internal/command/descriptions.go:48 +#: internal/command/descriptions.go:50 msgid "Move Review to the first character on the screen (left top)" msgstr "" "Przenieś kursor przeglądu do pierwszego znaku na ekranie, w lewym górnym rogu" -#: internal/command/descriptions.go:37 +#: internal/command/descriptions.go:39 msgid "Move Review to the last character on the line" msgstr "Przenieś kursor przeglądu do ostatniego znaku w wierszu" -#: internal/command/descriptions.go:49 +#: internal/command/descriptions.go:51 msgid "Move Review to the last character on the screen (right bottom)" msgstr "" "Przenieś kursor przeglądu do ostatniego znaku na ekranie, w prawym dolnym " "rogu" -#: internal/command/descriptions.go:33 +#: internal/command/descriptions.go:35 msgid "Move review to the bottom of the screen" msgstr "Przenieś kursor przeglądu na dół ekranu" -#: internal/command/descriptions.go:31 +#: internal/command/descriptions.go:33 msgid "Move review to the character below the current position" msgstr "Przenieś kursor przeglądu do znaku poniżej bieżącej pozycji" -#: internal/command/descriptions.go:30 +#: internal/command/descriptions.go:32 msgid "Move review to the character in the line above the current position" msgstr "Przenieś kursor przeglądu do znaku w wierszu powyżej bieżącej pozycji" -#: internal/command/descriptions.go:29 +#: internal/command/descriptions.go:31 msgid "Moves review to the next character" msgstr "Przenosi kursor przeglądu do następnego znaku" @@ -1815,6 +1827,10 @@ msgstr "Nie odebrano wiadomości czatu" msgid "No matches" msgstr "Brak dopasowań" +#: internal/app/notifications.go:41 internal/app/notifications.go:49 +msgid "No notifications" +msgstr "Brak powiadomień" + #: internal/reader/regions.go:251 msgid "No reading regions set" msgstr "Nie ustawiono obszarów czytania" @@ -1855,6 +1871,11 @@ msgstr "Poza trybem przeglądu" msgid "Not in window Mode" msgstr "Nie znajdujesz się w trybie okna." +#: internal/app/notifications.go:59 internal/app/notifications.go:60 +#: internal/app/notifications.go:61 +msgid "Notifications" +msgstr "Powiadomienia" + #: internal/preferences/settings.go:96 msgid "OK" msgstr "OK" @@ -1979,7 +2000,7 @@ msgstr "surfująca osoba" msgid "Person Swimming" msgstr "pływająca osoba" -#: internal/command/descriptions.go:25 +#: internal/command/descriptions.go:27 msgid "Phonetically spells the current word" msgstr "Literuje bieżące słowo alfabetem fonetycznym" @@ -2067,7 +2088,7 @@ msgstr "Ziemniak" msgid "Potion" msgstr "Mikstura" -#: internal/command/descriptions.go:52 +#: internal/command/descriptions.go:54 msgid "Present the version of Fenrir currently in use." msgstr "Odczytaj używaną wersję Fenrira." @@ -2075,7 +2096,7 @@ msgstr "Odczytaj używaną wersję Fenrira." msgid "Presentation" msgstr "Prezentacja" -#: internal/command/descriptions.go:101 +#: internal/command/descriptions.go:103 msgid "" "Presents the currently selected text that will be copied to the clipboard" msgstr "Odczytuje zaznaczony tekst, który zostanie skopiowany do schowka" @@ -2088,11 +2109,11 @@ msgstr "precel" msgid "Printer" msgstr "Drukarka" -#: internal/app/commands.go:129 +#: internal/app/commands.go:133 msgid "Progress monitoring disabled" msgstr "Monitorowanie postępu wyłączone" -#: internal/app/commands.go:127 +#: internal/app/commands.go:131 msgid "Progress monitoring enabled" msgstr "Monitorowanie postępu włączone" @@ -2168,43 +2189,43 @@ msgstr "Szybkość" msgid "Raves" msgstr "Imprezy rave" -#: internal/command/descriptions.go:79 +#: internal/command/descriptions.go:81 msgid "Read live region 1" msgstr "Czytaj obszar dynamiczny 1" -#: internal/command/descriptions.go:97 +#: internal/command/descriptions.go:99 msgid "Read live region 10" msgstr "Czytaj obszar dynamiczny 10" -#: internal/command/descriptions.go:81 +#: internal/command/descriptions.go:83 msgid "Read live region 2" msgstr "Czytaj obszar dynamiczny 2" -#: internal/command/descriptions.go:83 +#: internal/command/descriptions.go:85 msgid "Read live region 3" msgstr "Czytaj obszar dynamiczny 3" -#: internal/command/descriptions.go:85 +#: internal/command/descriptions.go:87 msgid "Read live region 4" msgstr "Czytaj obszar dynamiczny 4" -#: internal/command/descriptions.go:87 +#: internal/command/descriptions.go:89 msgid "Read live region 5" msgstr "Czytaj obszar dynamiczny 5" -#: internal/command/descriptions.go:89 +#: internal/command/descriptions.go:91 msgid "Read live region 6" msgstr "Czytaj obszar dynamiczny 6" -#: internal/command/descriptions.go:91 +#: internal/command/descriptions.go:93 msgid "Read live region 7" msgstr "Czytaj obszar dynamiczny 7" -#: internal/command/descriptions.go:93 +#: internal/command/descriptions.go:95 msgid "Read live region 8" msgstr "Czytaj obszar dynamiczny 8" -#: internal/command/descriptions.go:95 +#: internal/command/descriptions.go:97 msgid "Read live region 9" msgstr "Czytaj obszar dynamiczny 9" @@ -2224,11 +2245,11 @@ msgstr "Wyczyszczono obszary czytania" msgid "Reading window: {0}" msgstr "Okno czytania: {0}" -#: internal/command/descriptions.go:42 +#: internal/command/descriptions.go:44 msgid "Reads attributes of current cursor position" msgstr "Odczytuje atrybuty bieżącej pozycji kursora" -#: internal/command/descriptions.go:39 +#: internal/command/descriptions.go:41 msgid "Reads from the top of the screen to the cursor position" msgstr "Czyta od góry ekranu do pozycji kursora." @@ -2240,7 +2261,7 @@ msgstr "Zdalny użytkownik {0}, kanał {1}" msgid "Remove marks" msgstr "Usuń znaczniki" -#: internal/command/descriptions.go:100 +#: internal/command/descriptions.go:102 msgid "Removes marks from selected text" msgstr "Usuwa znaczniki z zaznaczonego tekstu" @@ -2248,6 +2269,10 @@ msgstr "Usuwa znaczniki z zaznaczonego tekstu" msgid "Rename channel" msgstr "Zmień nazwę kanału" +#: internal/command/descriptions.go:16 +msgid "Repeat the most recent notification" +msgstr "Powtórz ostatnie powiadomienie" + #: internal/config/config.go:168 msgid "Repeated symbols" msgstr "Powtarzane symbole" @@ -2356,7 +2381,7 @@ msgstr "Święty Mikołaj" msgid "Save unavailable." msgstr "Zapisywanie niedostępne." -#: internal/command/descriptions.go:65 +#: internal/command/descriptions.go:67 msgid "Saves your current Fenrir settings so they are the default." msgstr "Zapisuje bieżące ustawienia Fenrira jako domyślne." @@ -2388,7 +2413,7 @@ msgstr "brązowy skorpion" msgid "Screaming" msgstr "Krzyk" -#: internal/app/commands.go:152 internal/app/scripts.go +#: internal/app/commands.go:156 internal/app/scripts.go msgid "Script failed" msgstr "Skrypt nie powiódł się" @@ -2424,7 +2449,7 @@ msgstr "Szukaj {0}" msgid "Seedling" msgstr "sadzonka" -#: internal/command/descriptions.go:56 +#: internal/command/descriptions.go:58 msgid "Select a temporary application override" msgstr "Wybierz tymczasowe ustawienia aplikacji" @@ -2444,7 +2469,7 @@ msgstr "Port szeregowy" msgid "Service Dog" msgstr "pies pomocnik" -#: internal/command/descriptions.go:75 +#: internal/command/descriptions.go:77 msgid "Set a live region from one or two marks" msgstr "Ustaw obszar dynamiczny za pomocą jednego lub dwóch znaczników" @@ -2461,7 +2486,9 @@ msgstr "Ustawienia są zajęte" msgid "" "Settings saved, but key changes could not be applied: {0}. Previous keys " "remain active." -msgstr "Ustawienia zapisano, ale nie udało się zastosować zmian klawiszy: {0}. Poprzednie klawisze pozostają aktywne." +msgstr "" +"Ustawienia zapisano, ale nie udało się zastosować zmian klawiszy: {0}. " +"Poprzednie klawisze pozostają aktywne." #: internal/app/quick_settings.go:298 msgid "Settings saved." @@ -2619,7 +2646,7 @@ msgstr "Iskierki" msgid "Speech" msgstr "Mowa" -#: internal/speech/drivers.go:44 +#: internal/speech/drivers.go:47 msgid "Speech Dispatcher" msgstr "Speech Dispatcher" @@ -2655,11 +2682,11 @@ msgstr "Sprawdzanie pisowni jest niedostępne" msgid "Spell checking is unavailable: {0}" msgstr "Sprawdzanie pisowni jest niedostępne: {0}" -#: internal/command/descriptions.go:54 +#: internal/command/descriptions.go:56 msgid "Spellcheck Menu" msgstr "Menu sprawdzania pisowni" -#: internal/command/descriptions.go:24 +#: internal/command/descriptions.go:26 msgid "Spells the current word" msgstr "Literuje bieżące słowo" @@ -2839,7 +2866,7 @@ msgstr "Czas i data" msgid "Time format" msgstr "Format czasu" -#: internal/command/descriptions.go:68 +#: internal/command/descriptions.go:70 msgid "Toggle progress bar monitoring with ascending tones" msgstr "Przełącz monitorowanie paska postępu z rosnącymi tonami" @@ -2915,7 +2942,7 @@ msgstr "szklanka z grubym dnem" msgid "Turkey" msgstr "Indyk" -#: internal/command/descriptions.go:74 +#: internal/command/descriptions.go:76 msgid "Turn off window mode" msgstr "Wyłącz tryb okna" @@ -3233,7 +3260,7 @@ msgstr "Czarny" #: internal/app/clipboard.go:281 internal/presentation/text.go:35 #: internal/reader/regions.go:191 internal/review/line_start.go:31 #: internal/review/screen_range.go:39 internal/review/spelling.go:44 -#: internal/review/table.go:124 internal/review/table.go:205 +#: internal/review/table.go:119 internal/review/table.go:202 #: internal/review/vertical_character.go:31 internal/review/word.go:64 msgid "blank" msgstr "Pusta" @@ -3283,7 +3310,7 @@ msgstr "znak {0}" msgid "checked" msgstr "zaznaczone" -#: internal/command/descriptions.go:109 +#: internal/command/descriptions.go:111 msgid "clears the currently selected clipboard" msgstr "Czyści aktualnie zaznaczony showek." @@ -3317,11 +3344,11 @@ msgstr "dezorientacja" msgid "cool" msgstr "wyluzowanie" -#: internal/command/descriptions.go:103 +#: internal/command/descriptions.go:105 msgid "copies last presented text to the clipboard" msgstr "kopiuje ostatnio odczytany tekst do schowka" -#: internal/command/descriptions.go:102 +#: internal/command/descriptions.go:104 msgid "copies marked text to the currently selected clipboard" msgstr "Kopiuje zaznaczony tekst do aktualnie wybranego schowka." @@ -3329,7 +3356,7 @@ msgstr "Kopiuje zaznaczony tekst do aktualnie wybranego schowka." msgid "correct" msgstr "Poprawny" -#: internal/review/table.go:132 +#: internal/review/table.go:128 msgid "could not set header row" msgstr "nie można ustawić wiersza nagłówka" @@ -3337,11 +3364,11 @@ msgstr "nie można ustawić wiersza nagłówka" msgid "crying" msgstr "płacz" -#: internal/command/descriptions.go:17 +#: internal/command/descriptions.go:19 msgid "current line" msgstr "Aktualna linia" -#: internal/command/descriptions.go:20 +#: internal/command/descriptions.go:22 msgid "current word." msgstr "Aktualne słowo" @@ -3370,11 +3397,11 @@ msgstr "łącznik" msgid "default" msgstr "domyślne" -#: internal/command/descriptions.go:67 +#: internal/command/descriptions.go:69 msgid "disables speech until next keypress" msgstr "Wyłącza mowę do następnego naciśnięcia klawisza." -#: internal/command/descriptions.go:43 +#: internal/command/descriptions.go:45 msgid "displays the position of the review cursor" msgstr "Wyświetla pozycję kursora przeglądu" @@ -3392,27 +3419,27 @@ msgstr "kropka" msgid "east {0}" msgstr "wschód {0}" -#: internal/command/descriptions.go:69 +#: internal/command/descriptions.go:71 msgid "enables or disables automatic reading of new text as it appears" msgstr "Włącza lub wyłącza informowanie o dynamicznych zmianach treści." -#: internal/command/descriptions.go:66 +#: internal/command/descriptions.go:68 msgid "enables or disables speech" msgstr "Włącza lub wyłącza mowę." -#: internal/command/descriptions.go:41 +#: internal/command/descriptions.go:43 msgid "enables or disables the announcement of attributes" msgstr "włącza lub wyłącza odczytywanie atrybutów" -#: internal/command/descriptions.go:70 +#: internal/command/descriptions.go:72 msgid "enables or disables tracking of highlighted text" msgstr "Włącza lub wyłącza śledzenie podświetlonego tekstu." -#: internal/review/table.go:218 +#: internal/review/table.go:215 msgid "end of cell" msgstr "koniec komórki" -#: internal/review/line_end.go:24 internal/review/table.go:175 +#: internal/review/line_end.go:24 internal/review/table.go:172 msgid "end of line" msgstr "Koniec linii." @@ -3433,15 +3460,15 @@ msgstr "równa się" msgid "evil smile" msgstr "złowrogi uśmiech" -#: internal/command/descriptions.go:72 +#: internal/command/descriptions.go:74 msgid "exits Fenrir" msgstr "Zamyka Fenrir." -#: internal/command/descriptions.go:50 +#: internal/command/descriptions.go:52 msgid "exits review mode" msgstr "Wychodzi z trybu przeglądu." -#: internal/command/descriptions.go:112 +#: internal/command/descriptions.go:114 msgid "export the current fenrir clipboard to a file" msgstr "Wyeksportuj aktualny showek Fenrir do pliku." @@ -3454,11 +3481,11 @@ msgid "failed to export to X clipboard. No available display found." msgstr "" "nie udało się wyeksportować do schowka X. Nie znaleziono dostępnego ekranu." -#: internal/review/table.go:190 +#: internal/review/table.go:187 msgid "first cell" msgstr "pierwsza komórka" -#: internal/review/table.go:224 +#: internal/review/table.go:221 msgid "first character in cell {0}" msgstr "pierwszy znak w komórce {0}" @@ -3478,35 +3505,35 @@ msgstr "niezadowolenie" msgid "frustrated" msgstr "frustracja" -#: internal/command/descriptions.go:59 +#: internal/command/descriptions.go:61 msgid "get current quick menu entry" msgstr "odczytaj bieżącą pozycję menu podręcznego" -#: internal/command/descriptions.go:60 +#: internal/command/descriptions.go:62 msgid "get current quick menu value" msgstr "odczytaj bieżącą wartość menu podręcznego" -#: internal/command/descriptions.go:57 +#: internal/command/descriptions.go:59 msgid "get next quick menu category" msgstr "wybierz następną kategorię menu podręcznego" -#: internal/command/descriptions.go:61 +#: internal/command/descriptions.go:63 msgid "get next quick menu entry" msgstr "wybierz następną pozycję menu podręcznego" -#: internal/command/descriptions.go:63 +#: internal/command/descriptions.go:65 msgid "get next quick menu value" msgstr "wybierz następną wartość menu podręcznego" -#: internal/command/descriptions.go:58 +#: internal/command/descriptions.go:60 msgid "get previous quick menu category" msgstr "wybierz poprzednią kategorię menu podręcznego" -#: internal/command/descriptions.go:62 +#: internal/command/descriptions.go:64 msgid "get previous quick menu entry" msgstr "wybierz poprzednią pozycję menu podręcznego" -#: internal/command/descriptions.go:64 +#: internal/command/descriptions.go:66 msgid "get previous quick menu value" msgstr "wybierz poprzednią wartość menu podręcznego" @@ -3537,7 +3564,7 @@ msgstr "ma atrybut" msgid "hash" msgstr "kratka" -#: internal/review/table.go:138 +#: internal/review/table.go:135 msgid "header row set" msgstr "ustawiono wiersz nagłówka" @@ -3553,11 +3580,11 @@ msgstr "Śledzenie podświetlenia." msgid "hurray" msgstr "hurra" -#: internal/command/descriptions.go:111 +#: internal/command/descriptions.go:113 msgid "imports text from clipboard file to the clipboard" msgstr "Importuje tekst z pliku do schowka." -#: internal/command/descriptions.go:113 +#: internal/command/descriptions.go:115 msgid "imports the graphical clipboard to Fenrir's clipboard" msgstr "importuje schowek graficzny do schowka Fenrira" @@ -3573,11 +3600,11 @@ msgstr "kursywa" msgid "knocked out" msgstr "znokautowanie" -#: internal/review/table.go:192 +#: internal/review/table.go:189 msgid "last cell" msgstr "ostatnia komórka" -#: internal/review/table.go:227 +#: internal/review/table.go:224 msgid "last character in cell {0}" msgstr "ostatni znak w komórce {0}" @@ -3682,27 +3709,27 @@ msgstr "Błąd pisowni" msgid "most" msgstr "większość" -#: internal/command/descriptions.go:32 +#: internal/command/descriptions.go:34 msgid "move review to top of screen" msgstr "Przenieś kursor przeglądu na górę ekranu." -#: internal/command/descriptions.go:19 +#: internal/command/descriptions.go:21 msgid "moves review focus to the previous word " msgstr "przenosi kursor przeglądu do poprzedniego słowa " -#: internal/command/descriptions.go:18 +#: internal/command/descriptions.go:20 msgid "moves review to the next line " msgstr "przenosi kursor przeglądu do następnego wiersza " -#: internal/command/descriptions.go:21 +#: internal/command/descriptions.go:23 msgid "moves review to the next word " msgstr "przenosi kursor przeglądu do następnego słowa " -#: internal/command/descriptions.go:22 +#: internal/command/descriptions.go:24 msgid "moves review to the previous character" msgstr "przenosi kursor przeglądu do poprzedniego znaku" -#: internal/command/descriptions.go:16 +#: internal/command/descriptions.go:18 msgid "moves review to the previous line " msgstr "przenosi kursor przeglądu do poprzedniego wiersza " @@ -3714,8 +3741,8 @@ msgstr "wyciszony" msgid "neutral" msgstr "neutralność" -#: internal/command/descriptions.go internal/command/descriptions.go:26 -#: internal/command/descriptions.go:27 +#: internal/command/descriptions.go internal/command/descriptions.go:28 +#: internal/command/descriptions.go:29 msgid "no description available" msgstr "brak opisu" @@ -3723,13 +3750,13 @@ msgstr "brak opisu" msgid "no review cursor" msgstr "Brak kursora przeglądu." -#: internal/review/spelling.go:19 internal/review/table.go:150 -#: internal/review/table.go:158 internal/review/vertical_character.go:26 +#: internal/review/spelling.go:19 internal/review/table.go:147 +#: internal/review/table.go:155 internal/review/vertical_character.go:26 #: internal/review/vertical_character.go:34 msgid "no table data" msgstr "brak danych tabeli" -#: internal/reader/regions.go:173 internal/review/review.go:135 +#: internal/reader/regions.go:173 internal/review/review.go:140 msgid "no text console" msgstr "brak konsoli tekstowej" @@ -3757,7 +3784,7 @@ msgstr "numer" msgid "paste clipboard" msgstr "wklej schowek" -#: internal/command/descriptions.go:110 +#: internal/command/descriptions.go:112 msgid "pastes the text from the currently selected clipboard" msgstr "Wkleja tekst z aktualnie wybranego schowka." @@ -3766,7 +3793,7 @@ msgstr "Wkleja tekst z aktualnie wybranego schowka." msgid "percent" msgstr "procent" -#: internal/command/descriptions.go:99 +#: internal/command/descriptions.go:101 msgid "places marks to select text to copy to the clipboard" msgstr "Ustawia znaczniki w tekście do skopiowania do schowka." @@ -3783,7 +3810,7 @@ msgstr "plus" msgid "plus {0}" msgstr "plus {0}" -#: internal/command/descriptions.go:23 +#: internal/command/descriptions.go:25 msgid "presents the current character." msgstr "Odczytuje aktualny znak." @@ -3805,7 +3832,7 @@ msgstr "znak zapytania" msgid "quote" msgstr "cudzysłów" -#: internal/command/descriptions.go:46 +#: internal/command/descriptions.go:48 msgid "" "read line to cursor pos, use review cursor if you are in review mode, " "otherwhise use text cursor" @@ -3813,7 +3840,7 @@ msgstr "" "czytaj wiersz do kursora; w trybie przeglądu użyj kursora przeglądu, w " "pozostałych przypadkach kursora tekstowego" -#: internal/command/descriptions.go:47 +#: internal/command/descriptions.go:49 msgid "" "read to end of line, use review cursor if you are in review mode, otherwhise " "use text cursor" @@ -3821,11 +3848,11 @@ msgstr "" "Czyta tekst do końca linii. Używa kursora przeglądu (jeśli w trybie " "przeglądu), w przeciwnym razie używa kursora tekstu." -#: internal/command/descriptions.go:40 +#: internal/command/descriptions.go:42 msgid "reads from the cursor to the bottom of the screen" msgstr "Czyta od pozycji kursora do końca ekranu." -#: internal/command/descriptions.go:38 +#: internal/command/descriptions.go:40 msgid "reads the contents of the current screen" msgstr "Wypowiada treść aktualnego ekranu." @@ -3876,19 +3903,19 @@ msgstr "Ekran {0}" msgid "selected" msgstr "zaznaczone" -#: internal/command/descriptions.go:107 +#: internal/command/descriptions.go:109 msgid "selects the first clipboard" msgstr "Wybiera pierwszy schowek." -#: internal/command/descriptions.go:108 +#: internal/command/descriptions.go:110 msgid "selects the last clipboard" msgstr "Wybiera ostatni showek." -#: internal/command/descriptions.go:106 +#: internal/command/descriptions.go:108 msgid "selects the next clipboard" msgstr "Wybiera następny showek." -#: internal/command/descriptions.go:105 +#: internal/command/descriptions.go:107 msgid "selects the previous clipboard" msgstr "Wybiera poprzedni showek." @@ -3897,11 +3924,11 @@ msgstr "Wybiera poprzedni showek." msgid "semicolon" msgstr "średnik" -#: internal/command/descriptions.go:71 +#: internal/command/descriptions.go:73 msgid "sends the following keypress to the terminal or application" msgstr "przekazuje następne naciśnięcie klawisza do terminala lub aplikacji" -#: internal/command/descriptions.go:73 +#: internal/command/descriptions.go:75 msgid "set Window Mode, needs 2 marks " msgstr "ustaw tryb okna, wymagane dwa znaczniki. " @@ -3909,11 +3936,11 @@ msgstr "ustaw tryb okna, wymagane dwa znaczniki. " msgid "set mark" msgstr "ustaw znacznik." -#: internal/command/descriptions.go:28 +#: internal/command/descriptions.go:30 msgid "set review and phonetically presents the current character" msgstr "Ustawia kursor przeglądu i fonetycznie odczytuje zaznaczony znak." -#: internal/command/descriptions.go:34 +#: internal/command/descriptions.go:36 msgid "set review cursor to begin of current line and display the content" msgstr "Ustawia kursor przeglądu na początku linii i odczytuje jej treść." @@ -3947,7 +3974,7 @@ msgstr "południe {0}" msgid "space" msgstr "spacja" -#: internal/command/descriptions.go:104 +#: internal/command/descriptions.go:106 msgid "speaks the contents of the currently selected clipboard" msgstr "Wypowiada treść aktualnie wybranego showka" @@ -3975,7 +4002,7 @@ msgstr "wysokość głosu" msgid "speech rate" msgstr "szybkość mowy" -#: internal/app/commands.go:138 +#: internal/app/commands.go:142 msgid "speech temporary disabled" msgstr "Mowa tymczasowo wyłączona." @@ -3992,11 +4019,11 @@ msgstr "głośność mowy" msgid "star" msgstr "gwiazdka" -#: internal/review/table.go:212 +#: internal/review/table.go:209 msgid "start of cell" msgstr "początek komórki" -#: internal/review/table.go:168 +#: internal/review/table.go:165 msgid "start of line" msgstr "początek wiersza" @@ -4025,7 +4052,7 @@ msgstr "tryb tabeli" msgid "tilde" msgstr "tylda" -#: internal/command/descriptions.go:51 +#: internal/command/descriptions.go:53 msgid "toggles the tutorial mode" msgstr "Przełącza tryb pomocy." @@ -4042,7 +4069,7 @@ msgid "unavailable" msgstr "niedostępne" #: internal/app/tutorial.go:107 internal/app/tutorial.go:161 -#: internal/reader/reader.go:261 internal/review/review.go:140 +#: internal/reader/reader.go:261 internal/review/review.go:145 msgid "unbound" msgstr "nieprzypisane" diff --git a/internal/i18n/locale/pt/LC_MESSAGES/fenrir.po b/internal/i18n/locale/pt/LC_MESSAGES/fenrir.po index 288116e1..64ce323b 100644 --- a/internal/i18n/locale/pt/LC_MESSAGES/fenrir.po +++ b/internal/i18n/locale/pt/LC_MESSAGES/fenrir.po @@ -367,6 +367,10 @@ msgstr "Coração partido" msgid "Brown heart" msgstr "Coração marrom" +#: internal/command/descriptions.go:17 +msgid "Browse notifications with their received times" +msgstr "Explorar notificações com as horas de receção" + #: internal/emoji/catalog.go:200 msgid "Bug" msgstr "Inseto" @@ -504,51 +508,51 @@ msgstr "Claquete" msgid "Clapping hands" msgstr "Palmas" -#: internal/command/descriptions.go:77 +#: internal/command/descriptions.go:79 msgid "Clear all live regions" msgstr "Limpar todas as regiões dinâmicas" -#: internal/command/descriptions.go:78 +#: internal/command/descriptions.go:80 msgid "Clear all reading regions" msgstr "Limpar todas as regiões de leitura" -#: internal/command/descriptions.go:80 +#: internal/command/descriptions.go:82 msgid "Clear live region 1" msgstr "Limpar região dinâmica 1" -#: internal/command/descriptions.go:98 +#: internal/command/descriptions.go:100 msgid "Clear live region 10" msgstr "Limpar região dinâmica 10" -#: internal/command/descriptions.go:82 +#: internal/command/descriptions.go:84 msgid "Clear live region 2" msgstr "Limpar região dinâmica 2" -#: internal/command/descriptions.go:84 +#: internal/command/descriptions.go:86 msgid "Clear live region 3" msgstr "Limpar região dinâmica 3" -#: internal/command/descriptions.go:86 +#: internal/command/descriptions.go:88 msgid "Clear live region 4" msgstr "Limpar região dinâmica 4" -#: internal/command/descriptions.go:88 +#: internal/command/descriptions.go:90 msgid "Clear live region 5" msgstr "Limpar região dinâmica 5" -#: internal/command/descriptions.go:90 +#: internal/command/descriptions.go:92 msgid "Clear live region 6" msgstr "Limpar região dinâmica 6" -#: internal/command/descriptions.go:92 +#: internal/command/descriptions.go:94 msgid "Clear live region 7" msgstr "Limpar região dinâmica 7" -#: internal/command/descriptions.go:94 +#: internal/command/descriptions.go:96 msgid "Clear live region 8" msgstr "Limpar região dinâmica 8" -#: internal/command/descriptions.go:96 +#: internal/command/descriptions.go:98 msgid "Clear live region 9" msgstr "Limpar região dinâmica 9" @@ -560,7 +564,7 @@ msgstr "Taças brindando" msgid "Clipboard" msgstr "Área de transferência" -#: internal/app/application.go:145 internal/app/application.go:148 +#: internal/app/application.go:146 internal/app/application.go:149 #: internal/app/clipboard.go:218 internal/app/clipboard.go:374 msgid "Clipboard import failed" msgstr "Falha ao importar a área de transferência" @@ -569,6 +573,10 @@ msgstr "Falha ao importar a área de transferência" msgid "Clipboard sync" msgstr "Sincronização da área de transferência" +#: internal/app/notifications.go:62 +msgid "Close" +msgstr "Fechar" + #: internal/emoji/catalog.go:230 msgid "Cloud" msgstr "Nuvem" @@ -634,7 +642,7 @@ msgstr "Café" msgid "Coffin" msgstr "Caixão" -#: internal/command/descriptions.go:45 +#: internal/command/descriptions.go:47 msgid "Column number for cursor" msgstr "Número da coluna do cursor" @@ -701,6 +709,10 @@ msgstr "Não foi possível abrir o menu de emojis: {0}" msgid "Could not open Fenrir Menu: {0}" msgstr "Não foi possível abrir o menu do Fenrir: {0}" +#: internal/app/notifications.go:66 internal/app/notifications.go:70 +msgid "Could not open Notifications: {0}" +msgstr "Não foi possível abrir as notificações: {0}" + #: internal/app/spellcheck_menu.go:39 internal/app/spellcheck_menu.go:58 msgid "Could not open Spellcheck Menu: {0}" msgstr "Não foi possível abrir o menu de ortografia: {0}" @@ -948,7 +960,7 @@ msgstr "Elfo" msgid "Emoji" msgstr "Emoji" -#: internal/command/descriptions.go:53 internal/emoji/catalog.go:14 +#: internal/command/descriptions.go:55 internal/emoji/catalog.go:14 msgid "Emoji Menu" msgstr "Menu de emojis" @@ -1003,7 +1015,7 @@ msgstr "Nível de experiência" msgid "Exploding head" msgstr "Cabeça explodindo" -#: internal/command/descriptions.go:114 +#: internal/command/descriptions.go:116 msgid "Export current fenrir clipboard to X or GUI clipboard" msgstr "" "Exportar a área de transferência atual do Fenrir para a área de " @@ -1041,7 +1053,7 @@ msgstr "Fada" msgid "Fallen Leaf" msgstr "Folhas caídas" -#: internal/command/descriptions.go:55 internal/preferences/settings.go:38 +#: internal/command/descriptions.go:57 internal/preferences/settings.go:38 msgid "Fenrir Menu" msgstr "Menu do Fenrir" @@ -1049,7 +1061,7 @@ msgstr "Menu do Fenrir" msgid "Fenrir keys" msgstr "Teclas do Fenrir" -#: internal/app/commands.go:98 +#: internal/app/commands.go:102 msgid "Fenrir screen reader version {0}-{1}" msgstr "Leitor de tela Fenrir versão {0}-{1}" @@ -1145,7 +1157,7 @@ msgstr "Pegadas" msgid "Fortune Cookie" msgstr "Biscoito da sorte" -#: internal/app/commands.go:143 +#: internal/app/commands.go:147 msgid "Forward next keypress" msgstr "Avançar próxima tecla pressionada" @@ -1525,7 +1537,7 @@ msgstr "Lâmpada" msgid "Light Rail" msgstr "Trem urbano" -#: internal/command/descriptions.go:44 +#: internal/command/descriptions.go:46 msgid "Line number for cursor" msgstr "Número da linha do cursor" @@ -1533,7 +1545,7 @@ msgstr "Número da linha do cursor" msgid "Lion" msgstr "Rosto de leão" -#: internal/command/descriptions.go:76 +#: internal/command/descriptions.go:78 msgid "List reading regions" msgstr "Listar regiões de leitura" @@ -1694,45 +1706,45 @@ msgstr "Motocicleta" msgid "Mouse face" msgstr "Cara de rato" -#: internal/command/descriptions.go:35 +#: internal/command/descriptions.go:37 msgid "Move Review to the end of current line and display the content" msgstr "" "Mover o cursor de revisão para o fim da linha atual e apresentar o conteúdo" -#: internal/command/descriptions.go:36 +#: internal/command/descriptions.go:38 msgid "Move Review to the first character on the line" msgstr "Mover o cursor de revisão para o primeiro caractere da linha" -#: internal/command/descriptions.go:48 +#: internal/command/descriptions.go:50 msgid "Move Review to the first character on the screen (left top)" msgstr "" "Mover o cursor de revisão para o primeiro caractere da tela, no canto " "superior esquerdo" -#: internal/command/descriptions.go:37 +#: internal/command/descriptions.go:39 msgid "Move Review to the last character on the line" msgstr "Mover o cursor de revisão para o último caractere da linha" -#: internal/command/descriptions.go:49 +#: internal/command/descriptions.go:51 msgid "Move Review to the last character on the screen (right bottom)" msgstr "" "Mover o cursor de revisão para o último caractere da tela, no canto inferior " "direito" -#: internal/command/descriptions.go:33 +#: internal/command/descriptions.go:35 msgid "Move review to the bottom of the screen" msgstr "Mover o cursor de revisão para o fim da tela" -#: internal/command/descriptions.go:31 +#: internal/command/descriptions.go:33 msgid "Move review to the character below the current position" msgstr "Mover o cursor de revisão para o caractere abaixo da posição atual" -#: internal/command/descriptions.go:30 +#: internal/command/descriptions.go:32 msgid "Move review to the character in the line above the current position" msgstr "" "Mover o cursor de revisão para o caractere na linha acima da posição atual" -#: internal/command/descriptions.go:29 +#: internal/command/descriptions.go:31 msgid "Moves review to the next character" msgstr "Move o cursor de revisão para o próximo caractere" @@ -1817,6 +1829,10 @@ msgstr "Nenhuma mensagem de chat recebida" msgid "No matches" msgstr "Nenhum resultado" +#: internal/app/notifications.go:41 internal/app/notifications.go:49 +msgid "No notifications" +msgstr "Sem notificações" + #: internal/reader/regions.go:251 msgid "No reading regions set" msgstr "Nenhuma região de leitura definida" @@ -1858,6 +1874,11 @@ msgstr "Fora do modo de revisão" msgid "Not in window Mode" msgstr "Não no Modo de Janela" +#: internal/app/notifications.go:59 internal/app/notifications.go:60 +#: internal/app/notifications.go:61 +msgid "Notifications" +msgstr "Notificações" + #: internal/preferences/settings.go:96 msgid "OK" msgstr "OK" @@ -1982,7 +2003,7 @@ msgstr "Surfista" msgid "Person Swimming" msgstr "Pessoa nadando" -#: internal/command/descriptions.go:25 +#: internal/command/descriptions.go:27 msgid "Phonetically spells the current word" msgstr "Soletra foneticamente a palavra atual" @@ -2070,7 +2091,7 @@ msgstr "Batata" msgid "Potion" msgstr "Poção" -#: internal/command/descriptions.go:52 +#: internal/command/descriptions.go:54 msgid "Present the version of Fenrir currently in use." msgstr "Anunciar a versão do Fenrir em uso." @@ -2078,7 +2099,7 @@ msgstr "Anunciar a versão do Fenrir em uso." msgid "Presentation" msgstr "Apresentação" -#: internal/command/descriptions.go:101 +#: internal/command/descriptions.go:103 msgid "" "Presents the currently selected text that will be copied to the clipboard" msgstr "" @@ -2092,11 +2113,11 @@ msgstr "Pretzel" msgid "Printer" msgstr "Impressora" -#: internal/app/commands.go:129 +#: internal/app/commands.go:133 msgid "Progress monitoring disabled" msgstr "Monitoramento de progresso desativado" -#: internal/app/commands.go:127 +#: internal/app/commands.go:131 msgid "Progress monitoring enabled" msgstr "Monitoramento de progresso ativado" @@ -2172,43 +2193,43 @@ msgstr "Velocidade" msgid "Raves" msgstr "Festas rave" -#: internal/command/descriptions.go:79 +#: internal/command/descriptions.go:81 msgid "Read live region 1" msgstr "Ler região dinâmica 1" -#: internal/command/descriptions.go:97 +#: internal/command/descriptions.go:99 msgid "Read live region 10" msgstr "Ler região dinâmica 10" -#: internal/command/descriptions.go:81 +#: internal/command/descriptions.go:83 msgid "Read live region 2" msgstr "Ler região dinâmica 2" -#: internal/command/descriptions.go:83 +#: internal/command/descriptions.go:85 msgid "Read live region 3" msgstr "Ler região dinâmica 3" -#: internal/command/descriptions.go:85 +#: internal/command/descriptions.go:87 msgid "Read live region 4" msgstr "Ler região dinâmica 4" -#: internal/command/descriptions.go:87 +#: internal/command/descriptions.go:89 msgid "Read live region 5" msgstr "Ler região dinâmica 5" -#: internal/command/descriptions.go:89 +#: internal/command/descriptions.go:91 msgid "Read live region 6" msgstr "Ler região dinâmica 6" -#: internal/command/descriptions.go:91 +#: internal/command/descriptions.go:93 msgid "Read live region 7" msgstr "Ler região dinâmica 7" -#: internal/command/descriptions.go:93 +#: internal/command/descriptions.go:95 msgid "Read live region 8" msgstr "Ler região dinâmica 8" -#: internal/command/descriptions.go:95 +#: internal/command/descriptions.go:97 msgid "Read live region 9" msgstr "Ler região dinâmica 9" @@ -2228,11 +2249,11 @@ msgstr "Regiões de leitura limpas" msgid "Reading window: {0}" msgstr "Janela de leitura: {0}" -#: internal/command/descriptions.go:42 +#: internal/command/descriptions.go:44 msgid "Reads attributes of current cursor position" msgstr "Lê os atributos da posição atual do cursor" -#: internal/command/descriptions.go:39 +#: internal/command/descriptions.go:41 msgid "Reads from the top of the screen to the cursor position" msgstr "Lê da parte superior da tela até a posição do cursor" @@ -2244,7 +2265,7 @@ msgstr "Remoto {0}, canal {1}" msgid "Remove marks" msgstr "Remove marcas" -#: internal/command/descriptions.go:100 +#: internal/command/descriptions.go:102 msgid "Removes marks from selected text" msgstr "Remove as marcas do texto selecionado" @@ -2252,6 +2273,10 @@ msgstr "Remove as marcas do texto selecionado" msgid "Rename channel" msgstr "Renomear canal" +#: internal/command/descriptions.go:16 +msgid "Repeat the most recent notification" +msgstr "Repetir a notificação mais recente" + #: internal/config/config.go:168 msgid "Repeated symbols" msgstr "Símbolos repetidos" @@ -2360,7 +2385,7 @@ msgstr "Papai Noel" msgid "Save unavailable." msgstr "Salvamento indisponível." -#: internal/command/descriptions.go:65 +#: internal/command/descriptions.go:67 msgid "Saves your current Fenrir settings so they are the default." msgstr "Salva as configurações atuais do Fenrir como padrão." @@ -2392,7 +2417,7 @@ msgstr "Escorpião" msgid "Screaming" msgstr "Gritando" -#: internal/app/commands.go:152 internal/app/scripts.go +#: internal/app/commands.go:156 internal/app/scripts.go msgid "Script failed" msgstr "O script falhou" @@ -2428,7 +2453,7 @@ msgstr "Pesquisar {0}" msgid "Seedling" msgstr "Muda de planta" -#: internal/command/descriptions.go:56 +#: internal/command/descriptions.go:58 msgid "Select a temporary application override" msgstr "Selecionar configurações temporárias de um aplicativo" @@ -2448,7 +2473,7 @@ msgstr "Porta serial" msgid "Service Dog" msgstr "Cão de serviço" -#: internal/command/descriptions.go:75 +#: internal/command/descriptions.go:77 msgid "Set a live region from one or two marks" msgstr "Definir uma região dinâmica a partir de uma ou duas marcas" @@ -2465,7 +2490,9 @@ msgstr "As configurações estão ocupadas" msgid "" "Settings saved, but key changes could not be applied: {0}. Previous keys " "remain active." -msgstr "Configurações salvas, mas não foi possível aplicar as alterações de teclas: {0}. As teclas anteriores permanecem ativas." +msgstr "" +"Configurações salvas, mas não foi possível aplicar as alterações de teclas: " +"{0}. As teclas anteriores permanecem ativas." #: internal/app/quick_settings.go:298 msgid "Settings saved." @@ -2623,7 +2650,7 @@ msgstr "Brilhos" msgid "Speech" msgstr "Fala" -#: internal/speech/drivers.go:44 +#: internal/speech/drivers.go:47 msgid "Speech Dispatcher" msgstr "Speech Dispatcher" @@ -2659,11 +2686,11 @@ msgstr "A verificação ortográfica não está disponível" msgid "Spell checking is unavailable: {0}" msgstr "A verificação ortográfica não está disponível: {0}" -#: internal/command/descriptions.go:54 +#: internal/command/descriptions.go:56 msgid "Spellcheck Menu" msgstr "Menu de ortografia" -#: internal/command/descriptions.go:24 +#: internal/command/descriptions.go:26 msgid "Spells the current word" msgstr "Soletra a palavra atual" @@ -2843,7 +2870,7 @@ msgstr "Hora e data" msgid "Time format" msgstr "Formato da hora" -#: internal/command/descriptions.go:68 +#: internal/command/descriptions.go:70 msgid "Toggle progress bar monitoring with ascending tones" msgstr "Alternar o monitoramento do progresso com tons ascendentes" @@ -2919,7 +2946,7 @@ msgstr "Copo" msgid "Turkey" msgstr "Peru" -#: internal/command/descriptions.go:74 +#: internal/command/descriptions.go:76 msgid "Turn off window mode" msgstr "Desativar o modo de janela" @@ -3238,7 +3265,7 @@ msgstr "preto" #: internal/app/clipboard.go:281 internal/presentation/text.go:35 #: internal/reader/regions.go:191 internal/review/line_start.go:31 #: internal/review/screen_range.go:39 internal/review/spelling.go:44 -#: internal/review/table.go:124 internal/review/table.go:205 +#: internal/review/table.go:119 internal/review/table.go:202 #: internal/review/vertical_character.go:31 internal/review/word.go:64 msgid "blank" msgstr "em branco" @@ -3288,7 +3315,7 @@ msgstr "caractere {0}" msgid "checked" msgstr "marcado" -#: internal/command/descriptions.go:109 +#: internal/command/descriptions.go:111 msgid "clears the currently selected clipboard" msgstr "limpa a área de transferência atualmente selecionada" @@ -3322,11 +3349,11 @@ msgstr "confuso" msgid "cool" msgstr "legal" -#: internal/command/descriptions.go:103 +#: internal/command/descriptions.go:105 msgid "copies last presented text to the clipboard" msgstr "copia o último texto apresentado para a área de transferência" -#: internal/command/descriptions.go:102 +#: internal/command/descriptions.go:104 msgid "copies marked text to the currently selected clipboard" msgstr "" "copia o texto marcado para a área de transferência atualmente selecionada" @@ -3335,7 +3362,7 @@ msgstr "" msgid "correct" msgstr "correto" -#: internal/review/table.go:132 +#: internal/review/table.go:128 msgid "could not set header row" msgstr "não foi possível definir a linha de cabeçalho" @@ -3343,11 +3370,11 @@ msgstr "não foi possível definir a linha de cabeçalho" msgid "crying" msgstr "chorando" -#: internal/command/descriptions.go:17 +#: internal/command/descriptions.go:19 msgid "current line" msgstr "linha atual" -#: internal/command/descriptions.go:20 +#: internal/command/descriptions.go:22 msgid "current word." msgstr "palavra atual." @@ -3376,11 +3403,11 @@ msgstr "hífen" msgid "default" msgstr "padrão" -#: internal/command/descriptions.go:67 +#: internal/command/descriptions.go:69 msgid "disables speech until next keypress" msgstr "desativa a fala até a próxima tecla pressionada" -#: internal/command/descriptions.go:43 +#: internal/command/descriptions.go:45 msgid "displays the position of the review cursor" msgstr "mostra a posição do cursor de revisão" @@ -3398,27 +3425,27 @@ msgstr "ponto" msgid "east {0}" msgstr "leste {0}" -#: internal/command/descriptions.go:69 +#: internal/command/descriptions.go:71 msgid "enables or disables automatic reading of new text as it appears" msgstr "ativa ou desativa a leitura automática de novo texto como aparece" -#: internal/command/descriptions.go:66 +#: internal/command/descriptions.go:68 msgid "enables or disables speech" msgstr "ativa ou desativa a fala" -#: internal/command/descriptions.go:41 +#: internal/command/descriptions.go:43 msgid "enables or disables the announcement of attributes" msgstr "ativa ou desativa o anúncio de atributos" -#: internal/command/descriptions.go:70 +#: internal/command/descriptions.go:72 msgid "enables or disables tracking of highlighted text" msgstr "ativa ou desativa o acompanhamento do texto destacado" -#: internal/review/table.go:218 +#: internal/review/table.go:215 msgid "end of cell" msgstr "fim da célula" -#: internal/review/line_end.go:24 internal/review/table.go:175 +#: internal/review/line_end.go:24 internal/review/table.go:172 msgid "end of line" msgstr "fim da linha" @@ -3439,15 +3466,15 @@ msgstr "igual" msgid "evil smile" msgstr "sorriso malvado" -#: internal/command/descriptions.go:72 +#: internal/command/descriptions.go:74 msgid "exits Fenrir" msgstr "sai do Fenrir" -#: internal/command/descriptions.go:50 +#: internal/command/descriptions.go:52 msgid "exits review mode" msgstr "sai do modo de revisão" -#: internal/command/descriptions.go:112 +#: internal/command/descriptions.go:114 msgid "export the current fenrir clipboard to a file" msgstr "exporta a área de transferência atual do Fenrir para um arquivo" @@ -3461,11 +3488,11 @@ msgstr "" "falha ao exportar para a área de transferência do X. Nenhuma tela disponível " "encontrada." -#: internal/review/table.go:190 +#: internal/review/table.go:187 msgid "first cell" msgstr "primeira célula" -#: internal/review/table.go:224 +#: internal/review/table.go:221 msgid "first character in cell {0}" msgstr "primeiro caractere na célula {0}" @@ -3485,35 +3512,35 @@ msgstr "carranca" msgid "frustrated" msgstr "frustrado" -#: internal/command/descriptions.go:59 +#: internal/command/descriptions.go:61 msgid "get current quick menu entry" msgstr "anunciar a entrada atual do menu rápido" -#: internal/command/descriptions.go:60 +#: internal/command/descriptions.go:62 msgid "get current quick menu value" msgstr "anunciar o valor atual do menu rápido" -#: internal/command/descriptions.go:57 +#: internal/command/descriptions.go:59 msgid "get next quick menu category" msgstr "selecionar a próxima categoria do menu rápido" -#: internal/command/descriptions.go:61 +#: internal/command/descriptions.go:63 msgid "get next quick menu entry" msgstr "selecionar a próxima entrada do menu rápido" -#: internal/command/descriptions.go:63 +#: internal/command/descriptions.go:65 msgid "get next quick menu value" msgstr "selecionar o próximo valor do menu rápido" -#: internal/command/descriptions.go:58 +#: internal/command/descriptions.go:60 msgid "get previous quick menu category" msgstr "selecionar a categoria anterior do menu rápido" -#: internal/command/descriptions.go:62 +#: internal/command/descriptions.go:64 msgid "get previous quick menu entry" msgstr "selecionar a entrada anterior do menu rápido" -#: internal/command/descriptions.go:64 +#: internal/command/descriptions.go:66 msgid "get previous quick menu value" msgstr "selecionar o valor anterior do menu rápido" @@ -3544,7 +3571,7 @@ msgstr "tem atributo" msgid "hash" msgstr "cerquilha" -#: internal/review/table.go:138 +#: internal/review/table.go:135 msgid "header row set" msgstr "linha de cabeçalho definida" @@ -3560,13 +3587,13 @@ msgstr "rastreamento em destaque" msgid "hurray" msgstr "viva" -#: internal/command/descriptions.go:111 +#: internal/command/descriptions.go:113 msgid "imports text from clipboard file to the clipboard" msgstr "" "importa texto do arquivo da área de transferência para a área de " "transferência" -#: internal/command/descriptions.go:113 +#: internal/command/descriptions.go:115 msgid "imports the graphical clipboard to Fenrir's clipboard" msgstr "" "importa a área de transferência gráfica para a área de transferência do " @@ -3584,11 +3611,11 @@ msgstr "itálico" msgid "knocked out" msgstr "desmaiado" -#: internal/review/table.go:192 +#: internal/review/table.go:189 msgid "last cell" msgstr "última célula" -#: internal/review/table.go:227 +#: internal/review/table.go:224 msgid "last character in cell {0}" msgstr "último caractere na célula {0}" @@ -3693,27 +3720,27 @@ msgstr "com erros ortográficos" msgid "most" msgstr "a maioria" -#: internal/command/descriptions.go:32 +#: internal/command/descriptions.go:34 msgid "move review to top of screen" msgstr "mover a revisão para o topo da tela" -#: internal/command/descriptions.go:19 +#: internal/command/descriptions.go:21 msgid "moves review focus to the previous word " msgstr "move o cursor de revisão para a palavra anterior " -#: internal/command/descriptions.go:18 +#: internal/command/descriptions.go:20 msgid "moves review to the next line " msgstr "move o cursor de revisão para a próxima linha " -#: internal/command/descriptions.go:21 +#: internal/command/descriptions.go:23 msgid "moves review to the next word " msgstr "move o cursor de revisão para a próxima palavra " -#: internal/command/descriptions.go:22 +#: internal/command/descriptions.go:24 msgid "moves review to the previous character" msgstr "move o cursor de revisão para o caractere anterior" -#: internal/command/descriptions.go:16 +#: internal/command/descriptions.go:18 msgid "moves review to the previous line " msgstr "move o cursor de revisão para a linha anterior " @@ -3725,8 +3752,8 @@ msgstr "silenciado" msgid "neutral" msgstr "neutro" -#: internal/command/descriptions.go internal/command/descriptions.go:26 -#: internal/command/descriptions.go:27 +#: internal/command/descriptions.go internal/command/descriptions.go:28 +#: internal/command/descriptions.go:29 msgid "no description available" msgstr "nenhuma descrição disponível" @@ -3734,13 +3761,13 @@ msgstr "nenhuma descrição disponível" msgid "no review cursor" msgstr "sem cursor de revisão" -#: internal/review/spelling.go:19 internal/review/table.go:150 -#: internal/review/table.go:158 internal/review/vertical_character.go:26 +#: internal/review/spelling.go:19 internal/review/table.go:147 +#: internal/review/table.go:155 internal/review/vertical_character.go:26 #: internal/review/vertical_character.go:34 msgid "no table data" msgstr "sem dados de tabela" -#: internal/reader/regions.go:173 internal/review/review.go:135 +#: internal/reader/regions.go:173 internal/review/review.go:140 msgid "no text console" msgstr "nenhum console de texto" @@ -3768,7 +3795,7 @@ msgstr "número" msgid "paste clipboard" msgstr "colar área de transferência" -#: internal/command/descriptions.go:110 +#: internal/command/descriptions.go:112 msgid "pastes the text from the currently selected clipboard" msgstr "cola o texto da área de transferência atualmente selecionada" @@ -3777,7 +3804,7 @@ msgstr "cola o texto da área de transferência atualmente selecionada" msgid "percent" msgstr "por cento" -#: internal/command/descriptions.go:99 +#: internal/command/descriptions.go:101 msgid "places marks to select text to copy to the clipboard" msgstr "" "coloca marcas para selecionar texto para copiar para a área de transferência" @@ -3795,7 +3822,7 @@ msgstr "mais" msgid "plus {0}" msgstr "mais {0}" -#: internal/command/descriptions.go:23 +#: internal/command/descriptions.go:25 msgid "presents the current character." msgstr "apresenta o caracter atual." @@ -3817,7 +3844,7 @@ msgstr "interrogação" msgid "quote" msgstr "aspas" -#: internal/command/descriptions.go:46 +#: internal/command/descriptions.go:48 msgid "" "read line to cursor pos, use review cursor if you are in review mode, " "otherwhise use text cursor" @@ -3825,7 +3852,7 @@ msgstr "" "ler a linha até o cursor; usar o cursor de revisão no modo de revisão e o " "cursor de texto nos demais casos" -#: internal/command/descriptions.go:47 +#: internal/command/descriptions.go:49 msgid "" "read to end of line, use review cursor if you are in review mode, otherwhise " "use text cursor" @@ -3833,11 +3860,11 @@ msgstr "" "ler até o final da linha, use o cursor de revisão se você estiver no modo de " "revisão, ou use o cursor de texto" -#: internal/command/descriptions.go:40 +#: internal/command/descriptions.go:42 msgid "reads from the cursor to the bottom of the screen" msgstr "lê a partir do cursor até a parte inferior da tela" -#: internal/command/descriptions.go:38 +#: internal/command/descriptions.go:40 msgid "reads the contents of the current screen" msgstr "lê o conteúdo da tela atual" @@ -3888,19 +3915,19 @@ msgstr "tela {0}" msgid "selected" msgstr "selecionado" -#: internal/command/descriptions.go:107 +#: internal/command/descriptions.go:109 msgid "selects the first clipboard" msgstr "seleciona a primeira área de transferência" -#: internal/command/descriptions.go:108 +#: internal/command/descriptions.go:110 msgid "selects the last clipboard" msgstr "seleciona a última área de transferência" -#: internal/command/descriptions.go:106 +#: internal/command/descriptions.go:108 msgid "selects the next clipboard" msgstr "seleciona a próxima área de transferência" -#: internal/command/descriptions.go:105 +#: internal/command/descriptions.go:107 msgid "selects the previous clipboard" msgstr "seleciona a área de transferência anterior" @@ -3909,11 +3936,11 @@ msgstr "seleciona a área de transferência anterior" msgid "semicolon" msgstr "ponto e vírgula" -#: internal/command/descriptions.go:71 +#: internal/command/descriptions.go:73 msgid "sends the following keypress to the terminal or application" msgstr "envia a próxima tecla ao terminal ou aplicativo" -#: internal/command/descriptions.go:73 +#: internal/command/descriptions.go:75 msgid "set Window Mode, needs 2 marks " msgstr "definir o Modo de Janela, precisa de 2 marcas " @@ -3921,11 +3948,11 @@ msgstr "definir o Modo de Janela, precisa de 2 marcas " msgid "set mark" msgstr "define marca" -#: internal/command/descriptions.go:28 +#: internal/command/descriptions.go:30 msgid "set review and phonetically presents the current character" msgstr "define revisão e apresenta o caracter atual foneticamente" -#: internal/command/descriptions.go:34 +#: internal/command/descriptions.go:36 msgid "set review cursor to begin of current line and display the content" msgstr "" "define o cursor de revisão para o início da linha atual e exibe o conteúdo" @@ -3960,7 +3987,7 @@ msgstr "sul {0}" msgid "space" msgstr "espaço" -#: internal/command/descriptions.go:104 +#: internal/command/descriptions.go:106 msgid "speaks the contents of the currently selected clipboard" msgstr "fala o conteúdo da área de transferência atualmente selecionada" @@ -3988,7 +4015,7 @@ msgstr "tom da fala" msgid "speech rate" msgstr "velocidade da fala" -#: internal/app/commands.go:138 +#: internal/app/commands.go:142 msgid "speech temporary disabled" msgstr "fala temporariamente desativada" @@ -4005,11 +4032,11 @@ msgstr "volume da fala" msgid "star" msgstr "asterisco" -#: internal/review/table.go:212 +#: internal/review/table.go:209 msgid "start of cell" msgstr "início da célula" -#: internal/review/table.go:168 +#: internal/review/table.go:165 msgid "start of line" msgstr "início da linha" @@ -4038,7 +4065,7 @@ msgstr "modo de tabela" msgid "tilde" msgstr "til" -#: internal/command/descriptions.go:51 +#: internal/command/descriptions.go:53 msgid "toggles the tutorial mode" msgstr "alterna o modo de aprendizado" @@ -4055,7 +4082,7 @@ msgid "unavailable" msgstr "indisponível" #: internal/app/tutorial.go:107 internal/app/tutorial.go:161 -#: internal/reader/reader.go:261 internal/review/review.go:140 +#: internal/reader/reader.go:261 internal/review/review.go:145 msgid "unbound" msgstr "sem atalho" diff --git a/internal/i18n/locale/ru/LC_MESSAGES/fenrir.po b/internal/i18n/locale/ru/LC_MESSAGES/fenrir.po index 2325ce87..96fd98ce 100644 --- a/internal/i18n/locale/ru/LC_MESSAGES/fenrir.po +++ b/internal/i18n/locale/ru/LC_MESSAGES/fenrir.po @@ -366,6 +366,10 @@ msgstr "Разбитое сердце" msgid "Brown heart" msgstr "Коричневое сердце" +#: internal/command/descriptions.go:17 +msgid "Browse notifications with their received times" +msgstr "Просмотр уведомлений со временем получения" + #: internal/emoji/catalog.go:200 msgid "Bug" msgstr "Гусеница" @@ -503,51 +507,51 @@ msgstr "Хлопушка нумератор" msgid "Clapping hands" msgstr "Хлопающие руки" -#: internal/command/descriptions.go:77 +#: internal/command/descriptions.go:79 msgid "Clear all live regions" msgstr "Очистить все динамические области" -#: internal/command/descriptions.go:78 +#: internal/command/descriptions.go:80 msgid "Clear all reading regions" msgstr "Очистить все области чтения" -#: internal/command/descriptions.go:80 +#: internal/command/descriptions.go:82 msgid "Clear live region 1" msgstr "Очистить динамическую область 1" -#: internal/command/descriptions.go:98 +#: internal/command/descriptions.go:100 msgid "Clear live region 10" msgstr "Очистить динамическую область 10" -#: internal/command/descriptions.go:82 +#: internal/command/descriptions.go:84 msgid "Clear live region 2" msgstr "Очистить динамическую область 2" -#: internal/command/descriptions.go:84 +#: internal/command/descriptions.go:86 msgid "Clear live region 3" msgstr "Очистить динамическую область 3" -#: internal/command/descriptions.go:86 +#: internal/command/descriptions.go:88 msgid "Clear live region 4" msgstr "Очистить динамическую область 4" -#: internal/command/descriptions.go:88 +#: internal/command/descriptions.go:90 msgid "Clear live region 5" msgstr "Очистить динамическую область 5" -#: internal/command/descriptions.go:90 +#: internal/command/descriptions.go:92 msgid "Clear live region 6" msgstr "Очистить динамическую область 6" -#: internal/command/descriptions.go:92 +#: internal/command/descriptions.go:94 msgid "Clear live region 7" msgstr "Очистить динамическую область 7" -#: internal/command/descriptions.go:94 +#: internal/command/descriptions.go:96 msgid "Clear live region 8" msgstr "Очистить динамическую область 8" -#: internal/command/descriptions.go:96 +#: internal/command/descriptions.go:98 msgid "Clear live region 9" msgstr "Очистить динамическую область 9" @@ -559,7 +563,7 @@ msgstr "Чокающиеся бокалы" msgid "Clipboard" msgstr "Буфер обмена" -#: internal/app/application.go:145 internal/app/application.go:148 +#: internal/app/application.go:146 internal/app/application.go:149 #: internal/app/clipboard.go:218 internal/app/clipboard.go:374 msgid "Clipboard import failed" msgstr "Не удалось импортировать буфер обмена" @@ -568,6 +572,10 @@ msgstr "Не удалось импортировать буфер обмена" msgid "Clipboard sync" msgstr "Синхронизация буфера обмена" +#: internal/app/notifications.go:62 +msgid "Close" +msgstr "Закрыть" + #: internal/emoji/catalog.go:230 msgid "Cloud" msgstr "Облако" @@ -633,7 +641,7 @@ msgstr "Кофе" msgid "Coffin" msgstr "Гроб" -#: internal/command/descriptions.go:45 +#: internal/command/descriptions.go:47 msgid "Column number for cursor" msgstr "Номер столбца для курсора." @@ -700,6 +708,10 @@ msgstr "Не удалось открыть меню эмодзи: {0}" msgid "Could not open Fenrir Menu: {0}" msgstr "Не удалось открыть меню Fenrir: {0}" +#: internal/app/notifications.go:66 internal/app/notifications.go:70 +msgid "Could not open Notifications: {0}" +msgstr "Не удалось открыть уведомления: {0}" + #: internal/app/spellcheck_menu.go:39 internal/app/spellcheck_menu.go:58 msgid "Could not open Spellcheck Menu: {0}" msgstr "Не удалось открыть меню проверки правописания: {0}" @@ -947,7 +959,7 @@ msgstr "Эльф" msgid "Emoji" msgstr "Эмодзи" -#: internal/command/descriptions.go:53 internal/emoji/catalog.go:14 +#: internal/command/descriptions.go:55 internal/emoji/catalog.go:14 msgid "Emoji Menu" msgstr "Меню эмодзи" @@ -1001,7 +1013,7 @@ msgstr "Уровень опыта" msgid "Exploding head" msgstr "Взрывающаяся голова" -#: internal/command/descriptions.go:114 +#: internal/command/descriptions.go:116 msgid "Export current fenrir clipboard to X or GUI clipboard" msgstr "Экспорт текущего буфера обмена fenrir в буфер обмена X или GUI" @@ -1037,7 +1049,7 @@ msgstr "Фея" msgid "Fallen Leaf" msgstr "Падающие листья" -#: internal/command/descriptions.go:55 internal/preferences/settings.go:38 +#: internal/command/descriptions.go:57 internal/preferences/settings.go:38 msgid "Fenrir Menu" msgstr "Меню Fenrir" @@ -1045,7 +1057,7 @@ msgstr "Меню Fenrir" msgid "Fenrir keys" msgstr "Клавиши Fenrir" -#: internal/app/commands.go:98 +#: internal/app/commands.go:102 msgid "Fenrir screen reader version {0}-{1}" msgstr "Программа экранного доступа Fenrir, версия {0}-{1}" @@ -1141,7 +1153,7 @@ msgstr "Следы" msgid "Fortune Cookie" msgstr "Печенье с предсказанием" -#: internal/app/commands.go:143 +#: internal/app/commands.go:147 msgid "Forward next keypress" msgstr "Переслать следующую клавишу." @@ -1521,7 +1533,7 @@ msgstr "Лампочка" msgid "Light Rail" msgstr "Легкий рельсовый транспорт" -#: internal/command/descriptions.go:44 +#: internal/command/descriptions.go:46 msgid "Line number for cursor" msgstr "Номер строки для курсора." @@ -1529,7 +1541,7 @@ msgstr "Номер строки для курсора." msgid "Lion" msgstr "Морда льва" -#: internal/command/descriptions.go:76 +#: internal/command/descriptions.go:78 msgid "List reading regions" msgstr "Перечислить области чтения" @@ -1690,42 +1702,42 @@ msgstr "Мотоцикл" msgid "Mouse face" msgstr "Голова мыши" -#: internal/command/descriptions.go:35 +#: internal/command/descriptions.go:37 msgid "Move Review to the end of current line and display the content" msgstr "" "Установить курсор просмотра в конец текущей строки и отобразить содержимое." -#: internal/command/descriptions.go:36 +#: internal/command/descriptions.go:38 msgid "Move Review to the first character on the line" msgstr "Переместить курсор просмотра к первому символу строки" -#: internal/command/descriptions.go:48 +#: internal/command/descriptions.go:50 msgid "Move Review to the first character on the screen (left top)" msgstr "" "Переместить курсор обзора к первому символу экрана, в левый верхний угол" -#: internal/command/descriptions.go:37 +#: internal/command/descriptions.go:39 msgid "Move Review to the last character on the line" msgstr "Переместить курсор к последнему символу на строке" -#: internal/command/descriptions.go:49 +#: internal/command/descriptions.go:51 msgid "Move Review to the last character on the screen (right bottom)" msgstr "" "Переместить курсор обзора к последнему символу экрана, в правый нижний угол" -#: internal/command/descriptions.go:33 +#: internal/command/descriptions.go:35 msgid "Move review to the bottom of the screen" msgstr "Переместить просмотр в конец экрана." -#: internal/command/descriptions.go:31 +#: internal/command/descriptions.go:33 msgid "Move review to the character below the current position" msgstr "Переместить обзор на символ ниже текущей позиции." -#: internal/command/descriptions.go:30 +#: internal/command/descriptions.go:32 msgid "Move review to the character in the line above the current position" msgstr "Переместить курсор обзора на символ в строке выше текущей позиции." -#: internal/command/descriptions.go:29 +#: internal/command/descriptions.go:31 msgid "Moves review to the next character" msgstr "Перемещает курсор обзора к следующему символу" @@ -1810,6 +1822,10 @@ msgstr "Сообщения чата не получены" msgid "No matches" msgstr "Совпадений нет" +#: internal/app/notifications.go:41 internal/app/notifications.go:49 +msgid "No notifications" +msgstr "Нет уведомлений" + #: internal/reader/regions.go:251 msgid "No reading regions set" msgstr "Области чтения не заданы" @@ -1850,6 +1866,11 @@ msgstr "Нет в режиме просмотра." msgid "Not in window Mode" msgstr "Не в режиме окна." +#: internal/app/notifications.go:59 internal/app/notifications.go:60 +#: internal/app/notifications.go:61 +msgid "Notifications" +msgstr "Уведомления" + #: internal/preferences/settings.go:96 msgid "OK" msgstr "ОК" @@ -1974,7 +1995,7 @@ msgstr "Серфинг" msgid "Person Swimming" msgstr "Плавание" -#: internal/command/descriptions.go:25 +#: internal/command/descriptions.go:27 msgid "Phonetically spells the current word" msgstr "Представляет фонетически текущее слово" @@ -2062,7 +2083,7 @@ msgstr "Картофель" msgid "Potion" msgstr "Зелье" -#: internal/command/descriptions.go:52 +#: internal/command/descriptions.go:54 msgid "Present the version of Fenrir currently in use." msgstr "Назвать используемую версию Fenrir." @@ -2070,7 +2091,7 @@ msgstr "Назвать используемую версию Fenrir." msgid "Presentation" msgstr "Представление" -#: internal/command/descriptions.go:101 +#: internal/command/descriptions.go:103 msgid "" "Presents the currently selected text that will be copied to the clipboard" msgstr "" @@ -2084,11 +2105,11 @@ msgstr "Крендель" msgid "Printer" msgstr "Принтер" -#: internal/app/commands.go:129 +#: internal/app/commands.go:133 msgid "Progress monitoring disabled" msgstr "Отслеживание хода выполнения отключено" -#: internal/app/commands.go:127 +#: internal/app/commands.go:131 msgid "Progress monitoring enabled" msgstr "Отслеживание хода выполнения включено" @@ -2164,43 +2185,43 @@ msgstr "Скорость" msgid "Raves" msgstr "Рейвы" -#: internal/command/descriptions.go:79 +#: internal/command/descriptions.go:81 msgid "Read live region 1" msgstr "Прочитать динамическую область 1" -#: internal/command/descriptions.go:97 +#: internal/command/descriptions.go:99 msgid "Read live region 10" msgstr "Прочитать динамическую область 10" -#: internal/command/descriptions.go:81 +#: internal/command/descriptions.go:83 msgid "Read live region 2" msgstr "Прочитать динамическую область 2" -#: internal/command/descriptions.go:83 +#: internal/command/descriptions.go:85 msgid "Read live region 3" msgstr "Прочитать динамическую область 3" -#: internal/command/descriptions.go:85 +#: internal/command/descriptions.go:87 msgid "Read live region 4" msgstr "Прочитать динамическую область 4" -#: internal/command/descriptions.go:87 +#: internal/command/descriptions.go:89 msgid "Read live region 5" msgstr "Прочитать динамическую область 5" -#: internal/command/descriptions.go:89 +#: internal/command/descriptions.go:91 msgid "Read live region 6" msgstr "Прочитать динамическую область 6" -#: internal/command/descriptions.go:91 +#: internal/command/descriptions.go:93 msgid "Read live region 7" msgstr "Прочитать динамическую область 7" -#: internal/command/descriptions.go:93 +#: internal/command/descriptions.go:95 msgid "Read live region 8" msgstr "Прочитать динамическую область 8" -#: internal/command/descriptions.go:95 +#: internal/command/descriptions.go:97 msgid "Read live region 9" msgstr "Прочитать динамическую область 9" @@ -2220,11 +2241,11 @@ msgstr "Области чтения очищены" msgid "Reading window: {0}" msgstr "Окно чтения: {0}" -#: internal/command/descriptions.go:42 +#: internal/command/descriptions.go:44 msgid "Reads attributes of current cursor position" msgstr "Читает атрибуты текущей позиции курсора" -#: internal/command/descriptions.go:39 +#: internal/command/descriptions.go:41 msgid "Reads from the top of the screen to the cursor position" msgstr "Чтение сначала экрана до курсора." @@ -2236,7 +2257,7 @@ msgstr "Удалённый пользователь {0}, канал {1}" msgid "Remove marks" msgstr "Удалить метки." -#: internal/command/descriptions.go:100 +#: internal/command/descriptions.go:102 msgid "Removes marks from selected text" msgstr "Удалить метки из выбранного текста." @@ -2244,6 +2265,10 @@ msgstr "Удалить метки из выбранного текста." msgid "Rename channel" msgstr "Переименовать канал" +#: internal/command/descriptions.go:16 +msgid "Repeat the most recent notification" +msgstr "Повторить последнее уведомление" + #: internal/config/config.go:168 msgid "Repeated symbols" msgstr "Повторяющиеся символы" @@ -2352,7 +2377,7 @@ msgstr "Дед Мороз" msgid "Save unavailable." msgstr "Сохранение недоступно." -#: internal/command/descriptions.go:65 +#: internal/command/descriptions.go:67 msgid "Saves your current Fenrir settings so they are the default." msgstr "Сохранить текущие настройки fenrir как настройки по умолчанию." @@ -2384,7 +2409,7 @@ msgstr "Скорпион" msgid "Screaming" msgstr "Крик" -#: internal/app/commands.go:152 internal/app/scripts.go +#: internal/app/commands.go:156 internal/app/scripts.go msgid "Script failed" msgstr "Ошибка сценария" @@ -2420,7 +2445,7 @@ msgstr "Поиск {0}" msgid "Seedling" msgstr "Росток" -#: internal/command/descriptions.go:56 +#: internal/command/descriptions.go:58 msgid "Select a temporary application override" msgstr "Выбрать временные настройки приложения" @@ -2440,7 +2465,7 @@ msgstr "Последовательный порт" msgid "Service Dog" msgstr "Служебная собака" -#: internal/command/descriptions.go:75 +#: internal/command/descriptions.go:77 msgid "Set a live region from one or two marks" msgstr "Задать динамическую область по одной или двум меткам" @@ -2457,7 +2482,9 @@ msgstr "Настройки заняты" msgid "" "Settings saved, but key changes could not be applied: {0}. Previous keys " "remain active." -msgstr "Настройки сохранены, но изменения клавиш не удалось применить: {0}. Прежние клавиши остаются активными." +msgstr "" +"Настройки сохранены, но изменения клавиш не удалось применить: {0}. Прежние " +"клавиши остаются активными." #: internal/app/quick_settings.go:298 msgid "Settings saved." @@ -2615,7 +2642,7 @@ msgstr "Искры" msgid "Speech" msgstr "Речь" -#: internal/speech/drivers.go:44 +#: internal/speech/drivers.go:47 msgid "Speech Dispatcher" msgstr "Speech Dispatcher" @@ -2651,11 +2678,11 @@ msgstr "Проверка правописания недоступна" msgid "Spell checking is unavailable: {0}" msgstr "Проверка правописания недоступна: {0}" -#: internal/command/descriptions.go:54 +#: internal/command/descriptions.go:56 msgid "Spellcheck Menu" msgstr "Меню проверки правописания" -#: internal/command/descriptions.go:24 +#: internal/command/descriptions.go:26 msgid "Spells the current word" msgstr "Произносит текущее слово по буквам" @@ -2835,7 +2862,7 @@ msgstr "Время и дата" msgid "Time format" msgstr "Формат времени" -#: internal/command/descriptions.go:68 +#: internal/command/descriptions.go:70 msgid "Toggle progress bar monitoring with ascending tones" msgstr "Переключить отслеживание хода выполнения с повышающимися тонами" @@ -2911,7 +2938,7 @@ msgstr "Стакан с виски" msgid "Turkey" msgstr "Индейка" -#: internal/command/descriptions.go:74 +#: internal/command/descriptions.go:76 msgid "Turn off window mode" msgstr "Выключить оконный режим" @@ -3230,7 +3257,7 @@ msgstr "черный" #: internal/app/clipboard.go:281 internal/presentation/text.go:35 #: internal/reader/regions.go:191 internal/review/line_start.go:31 #: internal/review/screen_range.go:39 internal/review/spelling.go:44 -#: internal/review/table.go:124 internal/review/table.go:205 +#: internal/review/table.go:119 internal/review/table.go:202 #: internal/review/vertical_character.go:31 internal/review/word.go:64 msgid "blank" msgstr "пусто" @@ -3280,7 +3307,7 @@ msgstr "символ {0}" msgid "checked" msgstr "отмечено" -#: internal/command/descriptions.go:109 +#: internal/command/descriptions.go:111 msgid "clears the currently selected clipboard" msgstr "Очищает текущий выбранный буфер обмена." @@ -3314,11 +3341,11 @@ msgstr "недоумение" msgid "cool" msgstr "круто" -#: internal/command/descriptions.go:103 +#: internal/command/descriptions.go:105 msgid "copies last presented text to the clipboard" msgstr "Копирует последний представленный текст в буфер обмена." -#: internal/command/descriptions.go:102 +#: internal/command/descriptions.go:104 msgid "copies marked text to the currently selected clipboard" msgstr "Копирует помеченный текст в выбранный буфер обмена." @@ -3326,7 +3353,7 @@ msgstr "Копирует помеченный текст в выбранный msgid "correct" msgstr "Правильно" -#: internal/review/table.go:132 +#: internal/review/table.go:128 msgid "could not set header row" msgstr "не удалось задать строку заголовков" @@ -3334,11 +3361,11 @@ msgstr "не удалось задать строку заголовков" msgid "crying" msgstr "плач" -#: internal/command/descriptions.go:17 +#: internal/command/descriptions.go:19 msgid "current line" msgstr "Текущая строка." -#: internal/command/descriptions.go:20 +#: internal/command/descriptions.go:22 msgid "current word." msgstr "Текущее слово." @@ -3367,11 +3394,11 @@ msgstr "дефис" msgid "default" msgstr "По умолчанию" -#: internal/command/descriptions.go:67 +#: internal/command/descriptions.go:69 msgid "disables speech until next keypress" msgstr "Отключить речь пока не нажата следующая клавиша" -#: internal/command/descriptions.go:43 +#: internal/command/descriptions.go:45 msgid "displays the position of the review cursor" msgstr "Отображает положение курсора обзора." @@ -3389,27 +3416,27 @@ msgstr "точка" msgid "east {0}" msgstr "восток {0}" -#: internal/command/descriptions.go:69 +#: internal/command/descriptions.go:71 msgid "enables or disables automatic reading of new text as it appears" msgstr "включить или отключить чтения нового текста" -#: internal/command/descriptions.go:66 +#: internal/command/descriptions.go:68 msgid "enables or disables speech" msgstr "Включение или отключение речи" -#: internal/command/descriptions.go:41 +#: internal/command/descriptions.go:43 msgid "enables or disables the announcement of attributes" msgstr "Включение или отключение чтения атрибутов" -#: internal/command/descriptions.go:70 +#: internal/command/descriptions.go:72 msgid "enables or disables tracking of highlighted text" msgstr "Включает или отключает отслеживание выделенного текста" -#: internal/review/table.go:218 +#: internal/review/table.go:215 msgid "end of cell" msgstr "конец ячейки" -#: internal/review/line_end.go:24 internal/review/table.go:175 +#: internal/review/line_end.go:24 internal/review/table.go:172 msgid "end of line" msgstr "Конец строки" @@ -3430,15 +3457,15 @@ msgstr "равно" msgid "evil smile" msgstr "зловещая улыбка" -#: internal/command/descriptions.go:72 +#: internal/command/descriptions.go:74 msgid "exits Fenrir" msgstr "Выход из fenrir." -#: internal/command/descriptions.go:50 +#: internal/command/descriptions.go:52 msgid "exits review mode" msgstr "Выход из режима просмотра." -#: internal/command/descriptions.go:112 +#: internal/command/descriptions.go:114 msgid "export the current fenrir clipboard to a file" msgstr "Экспортировать текущий буфер обмена Fenrir в файл." @@ -3450,11 +3477,11 @@ msgstr "экспортировано в сеанс X." msgid "failed to export to X clipboard. No available display found." msgstr "не удалось экспортировать в буфер X. Доступный дисплей не найден." -#: internal/review/table.go:190 +#: internal/review/table.go:187 msgid "first cell" msgstr "первая ячейка" -#: internal/review/table.go:224 +#: internal/review/table.go:221 msgid "first character in cell {0}" msgstr "первый символ в ячейке {0}" @@ -3474,35 +3501,35 @@ msgstr "хмурое лицо" msgid "frustrated" msgstr "разочарование" -#: internal/command/descriptions.go:59 +#: internal/command/descriptions.go:61 msgid "get current quick menu entry" msgstr "Получить текущий быстрый пункт меню" -#: internal/command/descriptions.go:60 +#: internal/command/descriptions.go:62 msgid "get current quick menu value" msgstr "Получить текущее значение быстрого меню." -#: internal/command/descriptions.go:57 +#: internal/command/descriptions.go:59 msgid "get next quick menu category" msgstr "выбрать следующую категорию быстрого меню" -#: internal/command/descriptions.go:61 +#: internal/command/descriptions.go:63 msgid "get next quick menu entry" msgstr "Получить следующий быстрый пункт меню." -#: internal/command/descriptions.go:63 +#: internal/command/descriptions.go:65 msgid "get next quick menu value" msgstr "Получить следующее значение быстрого меню." -#: internal/command/descriptions.go:58 +#: internal/command/descriptions.go:60 msgid "get previous quick menu category" msgstr "выбрать предыдущую категорию быстрого меню" -#: internal/command/descriptions.go:62 +#: internal/command/descriptions.go:64 msgid "get previous quick menu entry" msgstr "Получить предыдущий пункт быстрого меню." -#: internal/command/descriptions.go:64 +#: internal/command/descriptions.go:66 msgid "get previous quick menu value" msgstr "Получить предыдущее значение быстрого меню." @@ -3533,7 +3560,7 @@ msgstr "есть атрибут" msgid "hash" msgstr "решётка" -#: internal/review/table.go:138 +#: internal/review/table.go:135 msgid "header row set" msgstr "строка заголовков задана" @@ -3549,11 +3576,11 @@ msgstr "Отслеживание выделения" msgid "hurray" msgstr "ура" -#: internal/command/descriptions.go:111 +#: internal/command/descriptions.go:113 msgid "imports text from clipboard file to the clipboard" msgstr "импортирует текст из буфера файла в буфер обмена" -#: internal/command/descriptions.go:113 +#: internal/command/descriptions.go:115 msgid "imports the graphical clipboard to Fenrir's clipboard" msgstr "Импортирует графический буфер обмена в буфер обмена Фенрира." @@ -3569,11 +3596,11 @@ msgstr "Курсивный" msgid "knocked out" msgstr "без сознания" -#: internal/review/table.go:192 +#: internal/review/table.go:189 msgid "last cell" msgstr "последняя ячейка" -#: internal/review/table.go:227 +#: internal/review/table.go:224 msgid "last character in cell {0}" msgstr "последний символ в ячейке {0}" @@ -3678,27 +3705,27 @@ msgstr "Орфографическая ошибка" msgid "most" msgstr "большинство" -#: internal/command/descriptions.go:32 +#: internal/command/descriptions.go:34 msgid "move review to top of screen" msgstr "Переместить курсор просмотра в начало экрана" -#: internal/command/descriptions.go:19 +#: internal/command/descriptions.go:21 msgid "moves review focus to the previous word " msgstr "Переместить курсор просмотра к предыдущему слову " -#: internal/command/descriptions.go:18 +#: internal/command/descriptions.go:20 msgid "moves review to the next line " msgstr "Переместить курсор просмотра к следующей строке " -#: internal/command/descriptions.go:21 +#: internal/command/descriptions.go:23 msgid "moves review to the next word " msgstr "Переместить курсор просмотра к следующему слову " -#: internal/command/descriptions.go:22 +#: internal/command/descriptions.go:24 msgid "moves review to the previous character" msgstr "перемещает курсор обзора к предыдущему символу" -#: internal/command/descriptions.go:16 +#: internal/command/descriptions.go:18 msgid "moves review to the previous line " msgstr "Переместить курсор просмотра к предыдущей строке " @@ -3710,8 +3737,8 @@ msgstr "звук выключен" msgid "neutral" msgstr "нейтральное лицо" -#: internal/command/descriptions.go internal/command/descriptions.go:26 -#: internal/command/descriptions.go:27 +#: internal/command/descriptions.go internal/command/descriptions.go:28 +#: internal/command/descriptions.go:29 msgid "no description available" msgstr "описание недоступно" @@ -3719,13 +3746,13 @@ msgstr "описание недоступно" msgid "no review cursor" msgstr "Нет курсора просмотра" -#: internal/review/spelling.go:19 internal/review/table.go:150 -#: internal/review/table.go:158 internal/review/vertical_character.go:26 +#: internal/review/spelling.go:19 internal/review/table.go:147 +#: internal/review/table.go:155 internal/review/vertical_character.go:26 #: internal/review/vertical_character.go:34 msgid "no table data" msgstr "нет данных таблицы" -#: internal/reader/regions.go:173 internal/review/review.go:135 +#: internal/reader/regions.go:173 internal/review/review.go:140 msgid "no text console" msgstr "нет текстовой консоли" @@ -3753,7 +3780,7 @@ msgstr "номер" msgid "paste clipboard" msgstr "вставить буфер обмена" -#: internal/command/descriptions.go:110 +#: internal/command/descriptions.go:112 msgid "pastes the text from the currently selected clipboard" msgstr "Вставляет текст из текущего выбранного буфера обмена." @@ -3762,7 +3789,7 @@ msgstr "Вставляет текст из текущего выбранного msgid "percent" msgstr "процент" -#: internal/command/descriptions.go:99 +#: internal/command/descriptions.go:101 msgid "places marks to select text to copy to the clipboard" msgstr "Ставит метки для выбора текста для копирования в буфер обмена." @@ -3779,7 +3806,7 @@ msgstr "плюс" msgid "plus {0}" msgstr "плюс {0}" -#: internal/command/descriptions.go:23 +#: internal/command/descriptions.go:25 msgid "presents the current character." msgstr "Сообщать текущий символ." @@ -3801,7 +3828,7 @@ msgstr "вопросительный знак" msgid "quote" msgstr "кавычки" -#: internal/command/descriptions.go:46 +#: internal/command/descriptions.go:48 msgid "" "read line to cursor pos, use review cursor if you are in review mode, " "otherwhise use text cursor" @@ -3809,7 +3836,7 @@ msgstr "" "прочитать строку до курсора; в режиме обзора использовать курсор обзора, " "иначе текстовый курсор" -#: internal/command/descriptions.go:47 +#: internal/command/descriptions.go:49 msgid "" "read to end of line, use review cursor if you are in review mode, otherwhise " "use text cursor" @@ -3817,11 +3844,11 @@ msgstr "" "Чтение до конца строки, используйте курсор обзора, если вы находитесь в " "режиме просмотра, иначе используйте текстовый курсор." -#: internal/command/descriptions.go:40 +#: internal/command/descriptions.go:42 msgid "reads from the cursor to the bottom of the screen" msgstr "Чтение от курсора до конца экрана." -#: internal/command/descriptions.go:38 +#: internal/command/descriptions.go:40 msgid "reads the contents of the current screen" msgstr "Чтение содержимого текущего экрана." @@ -3872,19 +3899,19 @@ msgstr "Экран {0}" msgid "selected" msgstr "выделено" -#: internal/command/descriptions.go:107 +#: internal/command/descriptions.go:109 msgid "selects the first clipboard" msgstr "Выбирает первый буфер обмена." -#: internal/command/descriptions.go:108 +#: internal/command/descriptions.go:110 msgid "selects the last clipboard" msgstr "Выбирает последний буфер обмена." -#: internal/command/descriptions.go:106 +#: internal/command/descriptions.go:108 msgid "selects the next clipboard" msgstr "Выбирает следующий буфер обмена." -#: internal/command/descriptions.go:105 +#: internal/command/descriptions.go:107 msgid "selects the previous clipboard" msgstr "Выбирает предыдущий буфер обмена." @@ -3893,11 +3920,11 @@ msgstr "Выбирает предыдущий буфер обмена." msgid "semicolon" msgstr "точка с запятой" -#: internal/command/descriptions.go:71 +#: internal/command/descriptions.go:73 msgid "sends the following keypress to the terminal or application" msgstr "Отправляет следующее нажатие на терминал или приложение." -#: internal/command/descriptions.go:73 +#: internal/command/descriptions.go:75 msgid "set Window Mode, needs 2 marks " msgstr "Установка режима окна нуждается в двух метках " @@ -3905,11 +3932,11 @@ msgstr "Установка режима окна нуждается в двух msgid "set mark" msgstr "Установка метки." -#: internal/command/descriptions.go:28 +#: internal/command/descriptions.go:30 msgid "set review and phonetically presents the current character" msgstr "Установить обзор и фонетически представлять текущий символ." -#: internal/command/descriptions.go:34 +#: internal/command/descriptions.go:36 msgid "set review cursor to begin of current line and display the content" msgstr "" "Установить курсор просмотра в начало текущей строки и отобразить содержимое." @@ -3944,7 +3971,7 @@ msgstr "юг {0}" msgid "space" msgstr "пробел" -#: internal/command/descriptions.go:104 +#: internal/command/descriptions.go:106 msgid "speaks the contents of the currently selected clipboard" msgstr "Говорит содержимое выбранного буфера обмена." @@ -3972,7 +3999,7 @@ msgstr "высота голоса" msgid "speech rate" msgstr "скорость речи" -#: internal/app/commands.go:138 +#: internal/app/commands.go:142 msgid "speech temporary disabled" msgstr "Речь временно отключена" @@ -3989,11 +4016,11 @@ msgstr "громкость речи" msgid "star" msgstr "звёздочка" -#: internal/review/table.go:212 +#: internal/review/table.go:209 msgid "start of cell" msgstr "начало ячейки" -#: internal/review/table.go:168 +#: internal/review/table.go:165 msgid "start of line" msgstr "начало строки" @@ -4022,7 +4049,7 @@ msgstr "режим таблицы" msgid "tilde" msgstr "тильда" -#: internal/command/descriptions.go:51 +#: internal/command/descriptions.go:53 msgid "toggles the tutorial mode" msgstr "Переключение в режим обучения" @@ -4039,7 +4066,7 @@ msgid "unavailable" msgstr "недоступно" #: internal/app/tutorial.go:107 internal/app/tutorial.go:161 -#: internal/reader/reader.go:261 internal/review/review.go:140 +#: internal/reader/reader.go:261 internal/review/review.go:145 msgid "unbound" msgstr "не назначено" diff --git a/internal/input/notifications_test.go b/internal/input/notifications_test.go new file mode 100644 index 00000000..a41b0cee --- /dev/null +++ b/internal/input/notifications_test.go @@ -0,0 +1,37 @@ +// Copyright (c) 2026 Storm Dragon +// SPDX-License-Identifier: GPL-3.0-or-later + +package input + +import ( + "testing" + + "git.stormux.org/storm/fenrir/internal/command" +) + +func TestNotificationBindingsInBothLayouts(t *testing.T) { + for _, layout := range []string{"desktop", "laptop"} { + bindings, _, err := Load_bindings([]string{"../../config/keyboard/" + layout + ".toml"}) + if err != nil { + t.Fatal(err) + } + for _, trial := range []struct { + ctrl bool + id command.ID + }{ + {false, command.LastNotification}, {true, command.NotificationHistory}, + } { + router, err := New_router(bindings) + if err != nil { + t.Fatal(err) + } + router.Key(0, KeyInsert, 1, false, false) + if trial.ctrl { + router.Key(0, KeyCtrl, 1, false, false) + } + if got := router.Key(0, 49, 1, false, false); got.Command != trial.id || got.Forward { + t.Fatal(layout, trial, got) + } + } + } +}