Ver Fonte

refactor: Replace "Bookmarks" with "Starred"

Replaces usage of the word "bookmark" with "star"/"starred" in order to be more
consistent with the UI and database models, and to reduce confusion with
"bookmarklet" and integration features.

This is in preparation of future work on read-it-later features.
Which are also not called "bookmarks" to prevent any further confusion.
https://github.com/orgs/miniflux/discussions/3719

Related-to: https://github.com/miniflux/v2/pull/2219
Steven vanZyl há 8 meses atrás
pai
commit
60cd7ffe88
37 ficheiros alterados com 171 adições e 170 exclusões
  1. 3 3
      client/client.go
  2. 2 1
      internal/api/api.go
  3. 3 3
      internal/api/api_integration_test.go
  4. 2 2
      internal/api/entry.go
  5. 2 2
      internal/fever/handler.go
  6. 2 2
      internal/googlereader/handler.go
  7. 6 6
      internal/locale/translations/de_DE.json
  8. 6 6
      internal/locale/translations/el_EL.json
  9. 6 6
      internal/locale/translations/en_US.json
  10. 6 6
      internal/locale/translations/es_ES.json
  11. 6 6
      internal/locale/translations/fi_FI.json
  12. 6 6
      internal/locale/translations/fr_FR.json
  13. 6 6
      internal/locale/translations/hi_IN.json
  14. 6 6
      internal/locale/translations/id_ID.json
  15. 6 6
      internal/locale/translations/it_IT.json
  16. 6 6
      internal/locale/translations/ja_JP.json
  17. 6 6
      internal/locale/translations/nan_Latn_pehoeji.json
  18. 6 6
      internal/locale/translations/nl_NL.json
  19. 6 6
      internal/locale/translations/pl_PL.json
  20. 6 6
      internal/locale/translations/pt_BR.json
  21. 6 6
      internal/locale/translations/ro_RO.json
  22. 6 6
      internal/locale/translations/ru_RU.json
  23. 6 6
      internal/locale/translations/tr_TR.json
  24. 6 6
      internal/locale/translations/uk_UA.json
  25. 6 6
      internal/locale/translations/zh_CN.json
  26. 6 6
      internal/locale/translations/zh_TW.json
  27. 7 7
      internal/storage/entry.go
  28. 1 1
      internal/template/engine.go
  29. 5 5
      internal/template/templates/common/item_meta.html
  30. 1 1
      internal/template/templates/common/layout.html
  31. 7 7
      internal/template/templates/views/entry.html
  32. 1 1
      internal/template/templates/views/starred_entries.html
  33. 0 0
      internal/ui/entry_starred.go
  34. 2 2
      internal/ui/entry_toggle_starred.go
  35. 1 1
      internal/ui/starred_entries.go
  36. 10 10
      internal/ui/static/js/app.js
  37. 2 2
      internal/ui/ui.go

+ 3 - 3
client/client.go

@@ -650,9 +650,9 @@ func (c *Client) UpdateEntry(entryID int64, entryChanges *EntryModificationReque
 	return entry, nil
 }
 
-// ToggleBookmark toggles entry bookmark value.
-func (c *Client) ToggleBookmark(entryID int64) error {
-	_, err := c.request.Put(fmt.Sprintf("/v1/entries/%d/bookmark", entryID), nil)
+// ToggleStarred toggles entry starred value.
+func (c *Client) ToggleStarred(entryID int64) error {
+	_, err := c.request.Put(fmt.Sprintf("/v1/entries/%d/star", entryID), nil)
 	return err
 }
 

+ 2 - 1
internal/api/api.go

@@ -67,7 +67,8 @@ func Serve(router *mux.Router, store *storage.Storage, pool *worker.Pool) {
 	sr.HandleFunc("/entries", handler.setEntryStatus).Methods(http.MethodPut)
 	sr.HandleFunc("/entries/{entryID}", handler.getEntry).Methods(http.MethodGet)
 	sr.HandleFunc("/entries/{entryID}", handler.updateEntry).Methods(http.MethodPut)
-	sr.HandleFunc("/entries/{entryID}/bookmark", handler.toggleBookmark).Methods(http.MethodPut)
+	sr.HandleFunc("/entries/{entryID}/bookmark", handler.toggleStarred).Methods(http.MethodPut)
+	sr.HandleFunc("/entries/{entryID}/star", handler.toggleStarred).Methods(http.MethodPut)
 	sr.HandleFunc("/entries/{entryID}/save", handler.saveEntry).Methods(http.MethodPost)
 	sr.HandleFunc("/entries/{entryID}/fetch-content", handler.fetchContent).Methods(http.MethodGet)
 	sr.HandleFunc("/flush-history", handler.flushHistory).Methods(http.MethodPut, http.MethodDelete)

+ 3 - 3
internal/api/api_integration_test.go

@@ -2749,7 +2749,7 @@ func TestUpdateEntryEndpoint(t *testing.T) {
 	}
 }
 
-func TestToggleBookmarkEndpoint(t *testing.T) {
+func TestToggleStarredEndpoint(t *testing.T) {
 	testConfig := newIntegrationTestConfig()
 	if !testConfig.isConfigured() {
 		t.Skip(skipIntegrationTestsMessage)
@@ -2777,7 +2777,7 @@ func TestToggleBookmarkEndpoint(t *testing.T) {
 		t.Fatalf(`Failed to get entries: %v`, err)
 	}
 
-	if err := regularUserClient.ToggleBookmark(result.Entries[0].ID); err != nil {
+	if err := regularUserClient.ToggleStarred(result.Entries[0].ID); err != nil {
 		t.Fatal(err)
 	}
 
@@ -2787,7 +2787,7 @@ func TestToggleBookmarkEndpoint(t *testing.T) {
 	}
 
 	if !entry.Starred {
-		t.Fatalf(`The entry should be bookmarked`)
+		t.Fatalf(`The entry should be starred`)
 	}
 }
 

+ 2 - 2
internal/api/entry.go

@@ -186,9 +186,9 @@ func (h *handler) setEntryStatus(w http.ResponseWriter, r *http.Request) {
 	json.NoContent(w, r)
 }
 
-func (h *handler) toggleBookmark(w http.ResponseWriter, r *http.Request) {
+func (h *handler) toggleStarred(w http.ResponseWriter, r *http.Request) {
 	entryID := request.RouteInt64Param(r, "entryID")
-	if err := h.store.ToggleBookmark(request.UserID(r), entryID); err != nil {
+	if err := h.store.ToggleStarred(request.UserID(r), entryID); err != nil {
 		json.ServerError(w, r, err)
 		return
 	}

+ 2 - 2
internal/fever/handler.go

@@ -455,7 +455,7 @@ func (h *handler) handleWriteItems(w http.ResponseWriter, r *http.Request) {
 			slog.Int64("user_id", userID),
 			slog.Int64("entry_id", entryID),
 		)
-		if err := h.store.ToggleBookmark(userID, entryID); err != nil {
+		if err := h.store.ToggleStarred(userID, entryID); err != nil {
 			json.ServerError(w, r, err)
 			return
 		}
@@ -474,7 +474,7 @@ func (h *handler) handleWriteItems(w http.ResponseWriter, r *http.Request) {
 			slog.Int64("user_id", userID),
 			slog.Int64("entry_id", entryID),
 		)
-		if err := h.store.ToggleBookmark(userID, entryID); err != nil {
+		if err := h.store.ToggleStarred(userID, entryID); err != nil {
 			json.ServerError(w, r, err)
 			return
 		}

+ 2 - 2
internal/googlereader/handler.go

@@ -357,7 +357,7 @@ func (h *handler) editTagHandler(w http.ResponseWriter, r *http.Request) {
 	}
 
 	if len(unstarredEntryIDs) > 0 {
-		err = h.store.SetEntriesBookmarkedState(userID, unstarredEntryIDs, false)
+		err = h.store.SetEntriesStarredState(userID, unstarredEntryIDs, false)
 		if err != nil {
 			json.ServerError(w, r, err)
 			return
@@ -365,7 +365,7 @@ func (h *handler) editTagHandler(w http.ResponseWriter, r *http.Request) {
 	}
 
 	if len(starredEntryIDs) > 0 {
-		err = h.store.SetEntriesBookmarkedState(userID, starredEntryIDs, true)
+		err = h.store.SetEntriesStarredState(userID, starredEntryIDs, true)
 		if err != nil {
 			json.ServerError(w, r, err)
 			return

+ 6 - 6
internal/locale/translations/de_DE.json

@@ -15,7 +15,7 @@
     "alert.account_unlinked": "Ihr externer Account ist jetzt getrennt!",
     "alert.background_feed_refresh": "Alle Abonnements werden derzeit im Hintergrund aktualisiert. Sie können Miniflux weiterhin benutzen, während dieser Prozess ausgeführt wird.",
     "alert.feed_error": "Es gibt ein Problem mit diesem Abonnement",
-    "alert.no_bookmark": "Es existiert derzeit kein Lesezeichen.",
+    "alert.no_starred": "Es existiert derzeit kein Lesezeichen.",
     "alert.no_category": "Es ist keine Kategorie vorhanden.",
     "alert.no_category_entry": "Es befindet sich kein Artikel in dieser Kategorie.",
     "alert.no_feed": "Es sind keine Abonnements vorhanden.",
@@ -46,10 +46,10 @@
     "enclosure_media_controls.speed.reset.title": "Wiedergabegeschwindigkeit auf 1x zurücksetzen",
     "enclosure_media_controls.speed.slower": "Langsamer",
     "enclosure_media_controls.speed.slower.title": "%sx langsamer",
-    "entry.bookmark.toast.off": "Nicht markiert",
-    "entry.bookmark.toast.on": "Markiert",
-    "entry.bookmark.toggle.off": "Lesezeichen entfernen",
-    "entry.bookmark.toggle.on": "Lesezeichen hinzufügen",
+    "entry.starred.toast.off": "Nicht markiert",
+    "entry.starred.toast.on": "Markiert",
+    "entry.starred.toggle.off": "Lesezeichen entfernen",
+    "entry.starred.toggle.on": "Lesezeichen hinzufügen",
     "entry.comments.label": "Kommentare",
     "entry.comments.title": "Kommentare anzeigen",
     "entry.estimated_reading_time": [
@@ -517,7 +517,7 @@
     "page.keyboard_shortcuts.subtitle.pages": "Navigation zwischen den Seiten",
     "page.keyboard_shortcuts.subtitle.sections": "Navigation zwischen den Menüpunkten",
     "page.keyboard_shortcuts.title": "Tastenkürzel",
-    "page.keyboard_shortcuts.toggle_bookmark_status": "Lesezeichen hinzufügen/entfernen",
+    "page.keyboard_shortcuts.toggle_star_status": "Lesezeichen hinzufügen/entfernen",
     "page.keyboard_shortcuts.toggle_entry_attachments": "Artikelanhänge öffnen/schließen",
     "page.keyboard_shortcuts.toggle_read_status_next": "Gewählten Artikel als gelesen/ungelesen markieren, nächsten auswählen",
     "page.keyboard_shortcuts.toggle_read_status_prev": "Gewählten Artikel als gelesen/ungelesen markieren, vorherigen auswählen",

+ 6 - 6
internal/locale/translations/el_EL.json

@@ -15,7 +15,7 @@
     "alert.account_unlinked": "Ο εξωτερικός σας λογαριασμός είναι πλέον αποσυνδεδεμένος!",
     "alert.background_feed_refresh": "Όλες οι ροές ανανεώνονται στο παρασκήνιο. Μπορείτε να συνεχίσετε να χρησιμοποιείτε το Miniflux όσο εκτελείται αυτή η διαδικασία.",
     "alert.feed_error": "Υπάρχει πρόβλημα με αυτήν τη ροή",
-    "alert.no_bookmark": "Δεν υπάρχει σελιδοδείκτης αυτή τη στιγμή.",
+    "alert.no_starred": "Δεν υπάρχει σελιδοδείκτης αυτή τη στιγμή.",
     "alert.no_category": "Δεν υπάρχει κατηγορία.",
     "alert.no_category_entry": "Δεν υπάρχουν άρθρα σε αυτήν την κατηγορία.",
     "alert.no_feed": "Δεν έχετε συνδρομές.",
@@ -46,10 +46,10 @@
     "enclosure_media_controls.speed.reset.title": "Επαναφορά ταχύτητας σε 1x",
     "enclosure_media_controls.speed.slower": "Πιο αργά",
     "enclosure_media_controls.speed.slower.title": "Πιο αργά κατά %sx",
-    "entry.bookmark.toast.off": "Μη αγαπημένα",
-    "entry.bookmark.toast.on": "Αγαπημένα",
-    "entry.bookmark.toggle.off": "Αναίρεση αγαπημένου",
-    "entry.bookmark.toggle.on": "Αγαπημένο",
+    "entry.starred.toast.off": "Μη αγαπημένα",
+    "entry.starred.toast.on": "Αγαπημένα",
+    "entry.starred.toggle.off": "Αναίρεση αγαπημένου",
+    "entry.starred.toggle.on": "Αγαπημένο",
     "entry.comments.label": "Σχόλια",
     "entry.comments.title": "Δείτε Σχόλια",
     "entry.estimated_reading_time": [
@@ -517,7 +517,7 @@
     "page.keyboard_shortcuts.subtitle.pages": "Πλοήγηση Σελίδων",
     "page.keyboard_shortcuts.subtitle.sections": "Πλοήγηση Τμημάτων",
     "page.keyboard_shortcuts.title": "Συντομεύσεις Πληκτρολογίου",
-    "page.keyboard_shortcuts.toggle_bookmark_status": "Εναλλαγή σελιδοδείκτη",
+    "page.keyboard_shortcuts.toggle_star_status": "Εναλλαγή σελιδοδείκτη",
     "page.keyboard_shortcuts.toggle_entry_attachments": "Εναλλαγή άνοιγμα/κλείσιμο συνημμένων καταχώρησης",
     "page.keyboard_shortcuts.toggle_read_status_next": "Εναλλαγή ανάγνωσης / μη αναγνωσμένης, εστίαση στη συνέχεια",
     "page.keyboard_shortcuts.toggle_read_status_prev": "Εναλλαγή ανάγνωσης / μη αναγνωσμένης, εστίαση στο προηγούμενο",

+ 6 - 6
internal/locale/translations/en_US.json

@@ -15,7 +15,7 @@
     "alert.account_unlinked": "Your external account is now dissociated!",
     "alert.background_feed_refresh": "All feeds are being refreshed in the background. You can continue to use Miniflux while this process is running.",
     "alert.feed_error": "There is a problem with this feed",
-    "alert.no_bookmark": "There are no starred entries.",
+    "alert.no_starred": "There are no starred entries.",
     "alert.no_category": "There is no category.",
     "alert.no_category_entry": "There are no entries in this category.",
     "alert.no_feed": "You don’t have any feeds.",
@@ -46,10 +46,10 @@
     "enclosure_media_controls.speed.reset.title": "Reset speed to 1x",
     "enclosure_media_controls.speed.slower": "Slower",
     "enclosure_media_controls.speed.slower.title": "Slower by %sx",
-    "entry.bookmark.toast.off": "Unstarred",
-    "entry.bookmark.toast.on": "Starred",
-    "entry.bookmark.toggle.off": "Unstar",
-    "entry.bookmark.toggle.on": "Star",
+    "entry.starred.toast.off": "Unstarred",
+    "entry.starred.toast.on": "Starred",
+    "entry.starred.toggle.off": "Unstar",
+    "entry.starred.toggle.on": "Star",
     "entry.comments.label": "Comments",
     "entry.comments.title": "View Comments",
     "entry.estimated_reading_time": [
@@ -517,7 +517,7 @@
     "page.keyboard_shortcuts.subtitle.pages": "Pages Navigation",
     "page.keyboard_shortcuts.subtitle.sections": "Sections Navigation",
     "page.keyboard_shortcuts.title": "Keyboard Shortcuts",
-    "page.keyboard_shortcuts.toggle_bookmark_status": "Toggle starred",
+    "page.keyboard_shortcuts.toggle_star_status": "Toggle starred",
     "page.keyboard_shortcuts.toggle_entry_attachments": "Toggle open/close entry attachments",
     "page.keyboard_shortcuts.toggle_read_status_next": "Toggle read/unread, focus next",
     "page.keyboard_shortcuts.toggle_read_status_prev": "Toggle read/unread, focus previous",

+ 6 - 6
internal/locale/translations/es_ES.json

@@ -15,7 +15,7 @@
     "alert.account_unlinked": "¡Tu cuenta externa ya está desvinculada!",
     "alert.background_feed_refresh": "Todos los feeds se actualizan en segundo plano. Puede continuar usando Miniflux mientras se ejecuta este proceso.",
     "alert.feed_error": "Hay un problema con esta fuente.",
-    "alert.no_bookmark": "No hay marcador en este momento.",
+    "alert.no_starred": "No hay marcador en este momento.",
     "alert.no_category": "No hay categoría.",
     "alert.no_category_entry": "No hay artículos en esta categoría.",
     "alert.no_feed": "No tienes fuentes.",
@@ -46,10 +46,10 @@
     "enclosure_media_controls.speed.reset.title": "Restablecer la velocidad a 1x",
     "enclosure_media_controls.speed.slower": "Despacio",
     "enclosure_media_controls.speed.slower.title": "Más despacio a %sx",
-    "entry.bookmark.toast.off": "Sin estrellas",
-    "entry.bookmark.toast.on": "Sembrado de estrellas",
-    "entry.bookmark.toggle.off": "Desmarcar",
-    "entry.bookmark.toggle.on": "Marcar",
+    "entry.starred.toast.off": "Sin estrellas",
+    "entry.starred.toast.on": "Sembrado de estrellas",
+    "entry.starred.toggle.off": "Desmarcar",
+    "entry.starred.toggle.on": "Marcar",
     "entry.comments.label": "Comentarios",
     "entry.comments.title": "Ver comentarios",
     "entry.estimated_reading_time": [
@@ -517,7 +517,7 @@
     "page.keyboard_shortcuts.subtitle.pages": "Navegación de páginas",
     "page.keyboard_shortcuts.subtitle.sections": "Navegación de secciones",
     "page.keyboard_shortcuts.title": "Atajos de teclado",
-    "page.keyboard_shortcuts.toggle_bookmark_status": "Agregar o quitar marcador",
+    "page.keyboard_shortcuts.toggle_star_status": "Agregar o quitar marcador",
     "page.keyboard_shortcuts.toggle_entry_attachments": "Alternar abrir/cerrar adjuntos de la entrada",
     "page.keyboard_shortcuts.toggle_read_status_next": "Marcar como leído o no leído, enfoque siguiente",
     "page.keyboard_shortcuts.toggle_read_status_prev": "Marcar como leído o no leído, foco anterior",

+ 6 - 6
internal/locale/translations/fi_FI.json

@@ -15,7 +15,7 @@
     "alert.account_unlinked": "Ulkoinen tilisi on nyt irrotettu!",
     "alert.background_feed_refresh": "Kaikki syötteet päivitetään taustalla. Voit jatkaa Minifluxin käyttöä tämän prosessin aikana.",
     "alert.feed_error": "Tässä syötteessä on ongelma",
-    "alert.no_bookmark": "Tällä hetkellä ei ole kirjanmerkkiä.",
+    "alert.no_starred": "Tällä hetkellä ei ole kirjanmerkkiä.",
     "alert.no_category": "Ei ole kategoriaa.",
     "alert.no_category_entry": "Tässä kategoriassa ei ole artikkeleita.",
     "alert.no_feed": "Sinulla ei ole tilauksia.",
@@ -46,10 +46,10 @@
     "enclosure_media_controls.speed.reset.title": "Palauta nopeus 1x",
     "enclosure_media_controls.speed.slower": "Hitaammin",
     "enclosure_media_controls.speed.slower.title": "Hitaampi %sx",
-    "entry.bookmark.toast.off": "Tähdettömät",
-    "entry.bookmark.toast.on": "Tähdellä merkityt",
-    "entry.bookmark.toggle.off": "Poista suosikeista",
-    "entry.bookmark.toggle.on": "Lisää suosikkeihin",
+    "entry.starred.toast.off": "Tähdettömät",
+    "entry.starred.toast.on": "Tähdellä merkityt",
+    "entry.starred.toggle.off": "Poista suosikeista",
+    "entry.starred.toggle.on": "Lisää suosikkeihin",
     "entry.comments.label": "Kommentit",
     "entry.comments.title": "Näytä kommentit",
     "entry.estimated_reading_time": [
@@ -517,7 +517,7 @@
     "page.keyboard_shortcuts.subtitle.pages": "Sivujen navigointi",
     "page.keyboard_shortcuts.subtitle.sections": "Osion navigointi",
     "page.keyboard_shortcuts.title": "Pikanäppäimet",
-    "page.keyboard_shortcuts.toggle_bookmark_status": "Vaihda kirjanmerkki",
+    "page.keyboard_shortcuts.toggle_star_status": "Vaihda kirjanmerkki",
     "page.keyboard_shortcuts.toggle_entry_attachments": "Toggle open/close entry attachments",
     "page.keyboard_shortcuts.toggle_read_status_next": "Vaihda luettu/lukematon, keskity seuraavaksi",
     "page.keyboard_shortcuts.toggle_read_status_prev": "Vaihda luettu/lukematon, keskity edelliseen",

+ 6 - 6
internal/locale/translations/fr_FR.json

@@ -15,7 +15,7 @@
     "alert.account_unlinked": "Votre compte externe est maintenant dissocié !",
     "alert.background_feed_refresh": "Les abonnements sont en cours d'actualisation en arrière-plan. Vous pouvez continuer à naviguer dans l'application.",
     "alert.feed_error": "Il y a un problème avec cet abonnement",
-    "alert.no_bookmark": "Il n'y a aucun favoris pour le moment.",
+    "alert.no_starred": "Il n'y a aucun favoris pour le moment.",
     "alert.no_category": "Il n'y a aucune catégorie.",
     "alert.no_category_entry": "Il n'y a aucun article dans cette catégorie.",
     "alert.no_feed": "Vous n'avez aucun abonnement.",
@@ -46,10 +46,10 @@
     "enclosure_media_controls.speed.reset.title": "Réinitialiser la vitesse de lecture à 1x",
     "enclosure_media_controls.speed.slower": "Ralentir",
     "enclosure_media_controls.speed.slower.title": "Ralentir de %sx",
-    "entry.bookmark.toast.off": "Enlevé des favoris",
-    "entry.bookmark.toast.on": "Ajouté aux favoris",
-    "entry.bookmark.toggle.off": "Enlever favoris",
-    "entry.bookmark.toggle.on": "Favoris",
+    "entry.starred.toast.off": "Enlevé des favoris",
+    "entry.starred.toast.on": "Ajouté aux favoris",
+    "entry.starred.toggle.off": "Enlever favoris",
+    "entry.starred.toggle.on": "Favoris",
     "entry.comments.label": "Commentaires",
     "entry.comments.title": "Voir les commentaires",
     "entry.estimated_reading_time": [
@@ -517,7 +517,7 @@
     "page.keyboard_shortcuts.subtitle.pages": "Navigation entre les pages",
     "page.keyboard_shortcuts.subtitle.sections": "Navigation entre les sections",
     "page.keyboard_shortcuts.title": "Raccourcis clavier",
-    "page.keyboard_shortcuts.toggle_bookmark_status": "Ajouter/Enlever favoris",
+    "page.keyboard_shortcuts.toggle_star_status": "Ajouter/Enlever favoris",
     "page.keyboard_shortcuts.toggle_entry_attachments": "Ouvrir/Fermer les pièces jointes de l'entrée",
     "page.keyboard_shortcuts.toggle_read_status_next": "Basculer entre lu/non lu, et changer le focus sur l'élément suivant",
     "page.keyboard_shortcuts.toggle_read_status_prev": "Basculer entre lu/non lu, et changer le focus sur l'élément précédent",

+ 6 - 6
internal/locale/translations/hi_IN.json

@@ -15,7 +15,7 @@
     "alert.account_unlinked": "आपका बाहरी खाता अब अलग कर दिया गया है!",
     "alert.background_feed_refresh": "सभी फ़ीड्स पृष्ठभूमि में ताज़ा की जा रही हैं। जब यह प्रक्रिया चल रही हो, तो आप मिनीफ्लक्स का उपयोग जारी रख सकते हैं।",
     "alert.feed_error": "इस फ़ीड में एक समस्या है",
-    "alert.no_bookmark": "इस समय कोई बुकमार्क नहीं है",
+    "alert.no_starred": "इस समय कोई बुकमार्क नहीं है",
     "alert.no_category": "कोई श्रेणी नहीं है।",
     "alert.no_category_entry": "इस श्रेणी में कोई विषय-वस्तु नहीं है।",
     "alert.no_feed": "आपके पास कोई सदस्यता नहीं है।",
@@ -46,10 +46,10 @@
     "enclosure_media_controls.speed.reset.title": "गति 1x पर रीसेट करें",
     "enclosure_media_controls.speed.slower": "धीमा",
     "enclosure_media_controls.speed.slower.title": "%sx गुना धीमा",
-    "entry.bookmark.toast.off": "तारांकित न करे",
-    "entry.bookmark.toast.on": "तारांकित",
-    "entry.bookmark.toggle.off": "सितारा हटा दो",
-    "entry.bookmark.toggle.on": "सितारा दे",
+    "entry.starred.toast.off": "तारांकित न करे",
+    "entry.starred.toast.on": "तारांकित",
+    "entry.starred.toggle.off": "सितारा हटा दो",
+    "entry.starred.toggle.on": "सितारा दे",
     "entry.comments.label": "टिप्पणियाँ",
     "entry.comments.title": "टिप्पणियाँ देखे",
     "entry.estimated_reading_time": [
@@ -517,7 +517,7 @@
     "page.keyboard_shortcuts.subtitle.pages": "पेज नेविगेशन",
     "page.keyboard_shortcuts.subtitle.sections": "अनुभाग नेविगेशन",
     "page.keyboard_shortcuts.title": "कुंजीपटल अल्प मार्ग",
-    "page.keyboard_shortcuts.toggle_bookmark_status": "बुकमार्क टॉगल करें",
+    "page.keyboard_shortcuts.toggle_star_status": "बुकमार्क टॉगल करें",
     "page.keyboard_shortcuts.toggle_entry_attachments": "Toggle open/close entry attachments",
     "page.keyboard_shortcuts.toggle_read_status_next": "पढ़ें/अपठित टॉगल करें, अगला फ़ोकस करें",
     "page.keyboard_shortcuts.toggle_read_status_prev": "पढ़ें/अपठित टॉगल करें, पिछला फ़ोकस करें",

+ 6 - 6
internal/locale/translations/id_ID.json

@@ -15,7 +15,7 @@
     "alert.account_unlinked": "Akun eksternal Anda sudah terputus!",
     "alert.background_feed_refresh": "Semua umpan sedang disegarkan di latar belakang. Anda bisa lanjut menggunakan Miniflux sembari proses ini berlanjut.",
     "alert.feed_error": "Ada masalah dengan umpan ini",
-    "alert.no_bookmark": "Tidak ada markah.",
+    "alert.no_starred": "Tidak ada markah.",
     "alert.no_category": "Tidak ada kategori.",
     "alert.no_category_entry": "Tidak ada artikel di kategori ini.",
     "alert.no_feed": "Anda tidak memiliki langganan.",
@@ -45,10 +45,10 @@
     "enclosure_media_controls.speed.reset.title": "Atur ulang ke 1x",
     "enclosure_media_controls.speed.slower": "Lebih lambat",
     "enclosure_media_controls.speed.slower.title": "Lebih lambat %sx",
-    "entry.bookmark.toast.off": "Batal Markahi",
-    "entry.bookmark.toast.on": "Markahi",
-    "entry.bookmark.toggle.off": "Batal Markahi",
-    "entry.bookmark.toggle.on": "Markahi",
+    "entry.starred.toast.off": "Batal Markahi",
+    "entry.starred.toast.on": "Markahi",
+    "entry.starred.toggle.off": "Batal Markahi",
+    "entry.starred.toggle.on": "Markahi",
     "entry.comments.label": "Komentar",
     "entry.comments.title": "Lihat Komentar",
     "entry.estimated_reading_time": [
@@ -511,7 +511,7 @@
     "page.keyboard_shortcuts.subtitle.pages": "Navigasi Halaman",
     "page.keyboard_shortcuts.subtitle.sections": "Navigasi Bagian",
     "page.keyboard_shortcuts.title": "Pintasan Papan Tik",
-    "page.keyboard_shortcuts.toggle_bookmark_status": "Ubah status markah",
+    "page.keyboard_shortcuts.toggle_star_status": "Ubah status markah",
     "page.keyboard_shortcuts.toggle_entry_attachments": "Buka/tutup lampiran entri",
     "page.keyboard_shortcuts.toggle_read_status_next": "Ubah status baca, fokus ke selanjutnya",
     "page.keyboard_shortcuts.toggle_read_status_prev": "Ubah status baca, fokus ke sebelumnya",

+ 6 - 6
internal/locale/translations/it_IT.json

@@ -15,7 +15,7 @@
     "alert.account_unlinked": "Il tuo account esterno ora è scollegato!",
     "alert.background_feed_refresh": "Tutti i feed vengono aggiornati in background. Puoi continuare a usare Miniflux mentre questo processo è in esecuzione.",
     "alert.feed_error": "Sembra ci sia un problema con questo feed",
-    "alert.no_bookmark": "Nessun preferito disponibile.",
+    "alert.no_starred": "Nessun preferito disponibile.",
     "alert.no_category": "Nessuna categoria disponibile.",
     "alert.no_category_entry": "Questa categoria non contiene alcun articolo.",
     "alert.no_feed": "Nessun feed disponibile.",
@@ -46,10 +46,10 @@
     "enclosure_media_controls.speed.reset.title": "Reimposta velocità a 1x",
     "enclosure_media_controls.speed.slower": "Più lento",
     "enclosure_media_controls.speed.slower.title": "Più lento di %sx",
-    "entry.bookmark.toast.off": "Non preferito",
-    "entry.bookmark.toast.on": "Preferito",
-    "entry.bookmark.toggle.off": "Rimuovi dai preferiti",
-    "entry.bookmark.toggle.on": "Aggiungi ai preferiti",
+    "entry.starred.toast.off": "Non preferito",
+    "entry.starred.toast.on": "Preferito",
+    "entry.starred.toggle.off": "Rimuovi dai preferiti",
+    "entry.starred.toggle.on": "Aggiungi ai preferiti",
     "entry.comments.label": "Commenti",
     "entry.comments.title": "Mostra i commenti",
     "entry.estimated_reading_time": [
@@ -517,7 +517,7 @@
     "page.keyboard_shortcuts.subtitle.pages": "Navigazione pagine",
     "page.keyboard_shortcuts.subtitle.sections": "Navigazione sezioni",
     "page.keyboard_shortcuts.title": "Scorciatoie da tastiera",
-    "page.keyboard_shortcuts.toggle_bookmark_status": "Aggiungi/rimuovi dai preferiti",
+    "page.keyboard_shortcuts.toggle_star_status": "Aggiungi/rimuovi dai preferiti",
     "page.keyboard_shortcuts.toggle_entry_attachments": "Toggle open/close entry attachments",
     "page.keyboard_shortcuts.toggle_read_status_next": "Cambia lo stato di lettura (letto/da leggere), concentrati dopo",
     "page.keyboard_shortcuts.toggle_read_status_prev": "Cambia lo stato di lettura (letto/da leggere), focus precedente",

+ 6 - 6
internal/locale/translations/ja_JP.json

@@ -15,7 +15,7 @@
     "alert.account_unlinked": "外部アカウントとのリンクが解除されました!",
     "alert.background_feed_refresh": "すべてのフィードがバックグラウンドで更新されています。この処理中も Miniflux を使い続けることができます。",
     "alert.feed_error": "このフィードには問題があります。",
-    "alert.no_bookmark": "現在星付きはありません。",
+    "alert.no_starred": "現在星付きはありません。",
     "alert.no_category": "カテゴリが存在しません。",
     "alert.no_category_entry": "このカテゴリには記事がありません。",
     "alert.no_feed": "何も購読していません。",
@@ -45,10 +45,10 @@
     "enclosure_media_controls.speed.reset.title": "速度を1xにリセット",
     "enclosure_media_controls.speed.slower": "遅く",
     "enclosure_media_controls.speed.slower.title": "%sx 遅く",
-    "entry.bookmark.toast.off": "星を外しました",
-    "entry.bookmark.toast.on": "星を付けました",
-    "entry.bookmark.toggle.off": "星を外す",
-    "entry.bookmark.toggle.on": "星を付ける",
+    "entry.starred.toast.off": "星を外しました",
+    "entry.starred.toast.on": "星を付けました",
+    "entry.starred.toggle.off": "星を外す",
+    "entry.starred.toggle.on": "星を付ける",
     "entry.comments.label": "コメント",
     "entry.comments.title": "コメントを見る",
     "entry.estimated_reading_time": [
@@ -511,7 +511,7 @@
     "page.keyboard_shortcuts.subtitle.pages": "ページ間を移動する",
     "page.keyboard_shortcuts.subtitle.sections": "セクションを移動する",
     "page.keyboard_shortcuts.title": "キーボードショートカット",
-    "page.keyboard_shortcuts.toggle_bookmark_status": "星を付ける/外す",
+    "page.keyboard_shortcuts.toggle_star_status": "星を付ける/外す",
     "page.keyboard_shortcuts.toggle_entry_attachments": "添付ファイルを開く/閉じる",
     "page.keyboard_shortcuts.toggle_read_status_next": "既読/未読を切り替えて次のアイテムに移動",
     "page.keyboard_shortcuts.toggle_read_status_prev": "既読/未読を切り替えて前のアイテムに移動",

+ 6 - 6
internal/locale/translations/nan_Latn_pehoeji.json

@@ -15,7 +15,7 @@
     "alert.account_unlinked": "Kah lí ê gōa-pō͘ kháu-chō ê kiat í-keng phah khui--ah!",
     "alert.background_feed_refresh": "Tng leh pōe-āu ōaⁿ-sin só͘-ū siau-sit lâi-goân, lí ē-sái kè-sio̍k sú-iōng Miniflux。",
     "alert.feed_error": "Chit ê siau-sit lâi-goân ū būn-tôe",
-    "alert.no_bookmark": "Chit-má ah bô siu-chông",
+    "alert.no_starred": "Chit-má ah bô siu-chông",
     "alert.no_category": "Chit-má ah bô lūi-pia̍t",
     "alert.no_category_entry": "Chit ê lūi-pah ah bô siau-sit",
     "alert.no_feed": "Chit-má ah bô siau-sit lâi-goân",
@@ -45,10 +45,10 @@
     "enclosure_media_controls.speed.reset.title": "Têng siat-tēng pàng ê sok-tō͘ chòe 1x",
     "enclosure_media_controls.speed.slower": "Pàng bān",
     "enclosure_media_controls.speed.slower.title": "Pàng bān %sx",
-    "entry.bookmark.toast.off": "Chhú-siau siu-chông chòe soah",
-    "entry.bookmark.toast.on": "Sin cheng-ka siu-chông chòe soah",
-    "entry.bookmark.toggle.off": "Chhú-siau siu-chông",
-    "entry.bookmark.toggle.on": "Siu-chông khí-lâi",
+    "entry.starred.toast.off": "Chhú-siau siu-chông chòe soah",
+    "entry.starred.toast.on": "Sin cheng-ka siu-chông chòe soah",
+    "entry.starred.toggle.off": "Chhú-siau siu-chông",
+    "entry.starred.toggle.on": "Siu-chông khí-lâi",
     "entry.comments.label": "Hôe-èng",
     "entry.comments.title": "Khòaⁿ hôe-èng",
     "entry.estimated_reading_time": [
@@ -511,7 +511,7 @@
     "page.keyboard_shortcuts.subtitle.pages": "Ia̍h bīn tō-lám",
     "page.keyboard_shortcuts.subtitle.sections": "Hun lân tō-lám",
     "page.keyboard_shortcuts.title": "Khoài-sok khí",
-    "page.keyboard_shortcuts.toggle_bookmark_status": "Chhet-li̍p siu-chông chōng-thài",
+    "page.keyboard_shortcuts.toggle_star_status": "Chhet-li̍p siu-chông chōng-thài",
     "page.keyboard_shortcuts.toggle_entry_attachments": "Chhet-li̍p thián khui kah siu-ha̍p siau-sit hù-kiāⁿ ê chōng-thài",
     "page.keyboard_shortcuts.toggle_read_status_next": "Chhet-li̍p tha̍k--kè, ah-bōe tha̍k ê chōng-thài, koh chiau-tiám tī āu-chi̍t--ê",
     "page.keyboard_shortcuts.toggle_read_status_prev": "Chhet-li̍p tha̍k--kè, ah-bōe tha̍k ê chōng-thài, koh chiau-tiám tī téng-chi̍t--ê",

+ 6 - 6
internal/locale/translations/nl_NL.json

@@ -15,7 +15,7 @@
     "alert.account_unlinked": "Jouw externe account is nu ontkoppeld!",
     "alert.background_feed_refresh": "Alle feeds worden op de achtergrond vernieuwd. Je kunt Miniflux blijven gebruiker terwijl dit proces draait.",
     "alert.feed_error": "Er is een probleem met deze feed",
-    "alert.no_bookmark": "Er zijn geen favorieten.",
+    "alert.no_starred": "Er zijn geen favorieten.",
     "alert.no_category": "Er zijn geen categorieën.",
     "alert.no_category_entry": "Er zijn geen artikelen in deze categorie.",
     "alert.no_feed": "Je hebt nog geen feed geabonneerd.",
@@ -46,10 +46,10 @@
     "enclosure_media_controls.speed.reset.title": "Reset snelheid naar 1x",
     "enclosure_media_controls.speed.slower": "Vertraag",
     "enclosure_media_controls.speed.slower.title": "Vertraag met %sx",
-    "entry.bookmark.toast.off": "Favoriet verwijderd",
-    "entry.bookmark.toast.on": "Favoriet toegevoegd",
-    "entry.bookmark.toggle.off": "Favoriet verwijderen",
-    "entry.bookmark.toggle.on": "Favoriet",
+    "entry.starred.toast.off": "Favoriet verwijderd",
+    "entry.starred.toast.on": "Favoriet toegevoegd",
+    "entry.starred.toggle.off": "Favoriet verwijderen",
+    "entry.starred.toggle.on": "Favoriet",
     "entry.comments.label": "Reacties",
     "entry.comments.title": "Bekijk reacties",
     "entry.estimated_reading_time": [
@@ -517,7 +517,7 @@
     "page.keyboard_shortcuts.subtitle.pages": "Navigeren door pagina's",
     "page.keyboard_shortcuts.subtitle.sections": "Navigeren door menu's",
     "page.keyboard_shortcuts.title": "Sneltoetsen",
-    "page.keyboard_shortcuts.toggle_bookmark_status": "Favoriet toevoegen/verwijderen",
+    "page.keyboard_shortcuts.toggle_star_status": "Favoriet toevoegen/verwijderen",
     "page.keyboard_shortcuts.toggle_entry_attachments": "Bijlagen van artikel openen/sluiten",
     "page.keyboard_shortcuts.toggle_read_status_next": "Markeer gelezen/ongelezen, focus volgende",
     "page.keyboard_shortcuts.toggle_read_status_prev": "Markeer gelezen/ongelezen, focus vorige",

+ 6 - 6
internal/locale/translations/pl_PL.json

@@ -15,7 +15,7 @@
     "alert.account_unlinked": "Twoje konto zewnętrzne jest teraz zdysocjowane!",
     "alert.background_feed_refresh": "Wszystkie kanały są odświeżane w tle. Możesz kontynuować korzystanie z Miniflux podczas trwania tego procesu.",
     "alert.feed_error": "Z tym kanałem jest problem",
-    "alert.no_bookmark": "Brak ulubionych w tej chwili.",
+    "alert.no_starred": "Brak ulubionych w tej chwili.",
     "alert.no_category": "Brak kategorii!",
     "alert.no_category_entry": "Brak wpisów w tej kategorii",
     "alert.no_feed": "Nie masz żadnej subskrypcji.",
@@ -47,10 +47,10 @@
     "enclosure_media_controls.speed.reset.title": "Przywróć szybkość do 1x",
     "enclosure_media_controls.speed.slower": "Wolniej",
     "enclosure_media_controls.speed.slower.title": "Wolniej o %sx",
-    "entry.bookmark.toast.off": "Usunięto z ulubionych",
-    "entry.bookmark.toast.on": "Dodano do ulubionych",
-    "entry.bookmark.toggle.off": "Usuń z ulubionych",
-    "entry.bookmark.toggle.on": "Dodaj do ulubionych",
+    "entry.starred.toast.off": "Usunięto z ulubionych",
+    "entry.starred.toast.on": "Dodano do ulubionych",
+    "entry.starred.toggle.off": "Usuń z ulubionych",
+    "entry.starred.toggle.on": "Dodaj do ulubionych",
     "entry.comments.label": "Komentarze",
     "entry.comments.title": "Zobacz komentarze",
     "entry.estimated_reading_time": [
@@ -523,7 +523,7 @@
     "page.keyboard_shortcuts.subtitle.pages": "Nawigacja między stronami",
     "page.keyboard_shortcuts.subtitle.sections": "Nawigacja między punktami menu",
     "page.keyboard_shortcuts.title": "Skróty klawiszowe",
-    "page.keyboard_shortcuts.toggle_bookmark_status": "Przełącz dodanie do ulubionych",
+    "page.keyboard_shortcuts.toggle_star_status": "Przełącz dodanie do ulubionych",
     "page.keyboard_shortcuts.toggle_entry_attachments": "Przełącz otwieranie/zamykanie załączników wpisów",
     "page.keyboard_shortcuts.toggle_read_status_next": "Przełącz przeczytane/nieprzeczytane, przejdź dalej",
     "page.keyboard_shortcuts.toggle_read_status_prev": "Przełącz przeczytane/nieprzeczytane, przejdź wstecz",

+ 6 - 6
internal/locale/translations/pt_BR.json

@@ -15,7 +15,7 @@
     "alert.account_unlinked": "Sua conta externa está desvinculada!",
     "alert.background_feed_refresh": "Todas as fontes estão sendo atualizadas em segundo plano. Você pode continuar usando o Miniflux enquanto este processo está em execução.",
     "alert.feed_error": "Ocorreu um problema com esta fonte.",
-    "alert.no_bookmark": "Não há favorito neste momento.",
+    "alert.no_starred": "Não há favorito neste momento.",
     "alert.no_category": "Não há categoria.",
     "alert.no_category_entry": "Não há itens nesta categoria.",
     "alert.no_feed": "Não há inscrições.",
@@ -46,10 +46,10 @@
     "enclosure_media_controls.speed.reset.title": "Resetar velocidade para 1x",
     "enclosure_media_controls.speed.slower": "Mais Lento",
     "enclosure_media_controls.speed.slower.title": "Mais lento em %sx",
-    "entry.bookmark.toast.off": "Desfavoritado",
-    "entry.bookmark.toast.on": "Favoritado",
-    "entry.bookmark.toggle.off": "Remover dos Favoritos",
-    "entry.bookmark.toggle.on": "Favoritar",
+    "entry.starred.toast.off": "Desfavoritado",
+    "entry.starred.toast.on": "Favoritado",
+    "entry.starred.toggle.off": "Remover dos Favoritos",
+    "entry.starred.toggle.on": "Favoritar",
     "entry.comments.label": "Comentários",
     "entry.comments.title": "Ver comentários",
     "entry.estimated_reading_time": [
@@ -517,7 +517,7 @@
     "page.keyboard_shortcuts.subtitle.pages": "Navegação de páginas",
     "page.keyboard_shortcuts.subtitle.sections": "Navegação de seções",
     "page.keyboard_shortcuts.title": "Atalhos de teclado",
-    "page.keyboard_shortcuts.toggle_bookmark_status": "Marcar ou desmarcar como favorito",
+    "page.keyboard_shortcuts.toggle_star_status": "Marcar ou desmarcar como favorito",
     "page.keyboard_shortcuts.toggle_entry_attachments": "Alternar abrir/fechar anexos do item",
     "page.keyboard_shortcuts.toggle_read_status_next": "Inverter estado de leitura do item, focar próximo item",
     "page.keyboard_shortcuts.toggle_read_status_prev": "Inverter estado de leitura do item, focar item anterior",

+ 6 - 6
internal/locale/translations/ro_RO.json

@@ -15,7 +15,7 @@
     "alert.account_unlinked": "Am decuplat contul dvs. extern!",
     "alert.background_feed_refresh": "Toate fluxurile sunt actualizate în fundal. Puteți să continuați utilizarea Miniflux în timp ce procesul rulează.",
     "alert.feed_error": "Este o problemă cu acest flux",
-    "alert.no_bookmark": "Nu sunt înregistrări marcate.",
+    "alert.no_starred": "Nu sunt înregistrări marcate.",
     "alert.no_category": "Nu sunt categorii.",
     "alert.no_category_entry": "Nu sunt înregistrări în această categorie.",
     "alert.no_feed": "Nu aveți fluxuri.",
@@ -47,10 +47,10 @@
     "enclosure_media_controls.speed.reset.title": "Resetare viteză la 1x",
     "enclosure_media_controls.speed.slower": "Mai încet",
     "enclosure_media_controls.speed.slower.title": "Mai încet cu %sx",
-    "entry.bookmark.toast.off": "Fără stea",
-    "entry.bookmark.toast.on": "Cu stea",
-    "entry.bookmark.toggle.off": "Fără stea",
-    "entry.bookmark.toggle.on": "Stea",
+    "entry.starred.toast.off": "Fără stea",
+    "entry.starred.toast.on": "Cu stea",
+    "entry.starred.toggle.off": "Fără stea",
+    "entry.starred.toggle.on": "Stea",
     "entry.comments.label": "Comentarii",
     "entry.comments.title": "Vizualizare Comentarii",
     "entry.estimated_reading_time": [
@@ -523,7 +523,7 @@
     "page.keyboard_shortcuts.subtitle.pages": "Navigare Pagini",
     "page.keyboard_shortcuts.subtitle.sections": "Navigare Secțiuni",
     "page.keyboard_shortcuts.title": "Scurtături Tastatură",
-    "page.keyboard_shortcuts.toggle_bookmark_status": "Comută marcate",
+    "page.keyboard_shortcuts.toggle_star_status": "Comută marcate",
     "page.keyboard_shortcuts.toggle_entry_attachments": "Comută deschis/închis pe atașamentele înregistrării",
     "page.keyboard_shortcuts.toggle_read_status_next": "Comută citit/necitit focus următor",
     "page.keyboard_shortcuts.toggle_read_status_prev": "Comută citit/necitit, focus anterior",

+ 6 - 6
internal/locale/translations/ru_RU.json

@@ -15,7 +15,7 @@
     "alert.account_unlinked": "Ваш внешний аккаунт теперь отвязан!",
     "alert.background_feed_refresh": "Все подписки обновляются в фоновом режиме. Вы можете продолжать использовать Miniflux пока идёт этот процесс.",
     "alert.feed_error": "С этой подпиской есть проблема",
-    "alert.no_bookmark": "Избранное отсутствует.",
+    "alert.no_starred": "Избранное отсутствует.",
     "alert.no_category": "Категории отсутствуют.",
     "alert.no_category_entry": "В этой категории нет статей.",
     "alert.no_feed": "У вас нет ни одной подписки.",
@@ -47,10 +47,10 @@
     "enclosure_media_controls.speed.reset.title": "Сбросить скорость до 1x",
     "enclosure_media_controls.speed.slower": "Медленнее",
     "enclosure_media_controls.speed.slower.title": "Замедлить в %s раз",
-    "entry.bookmark.toast.off": "Без пометок",
-    "entry.bookmark.toast.on": "Помеченные",
-    "entry.bookmark.toggle.off": "Удалить из Избранного",
-    "entry.bookmark.toggle.on": "Добавить в Избранное",
+    "entry.starred.toast.off": "Без пометок",
+    "entry.starred.toast.on": "Помеченные",
+    "entry.starred.toggle.off": "Удалить из Избранного",
+    "entry.starred.toggle.on": "Добавить в Избранное",
     "entry.comments.label": "Комментарии",
     "entry.comments.title": "Показать комментарии",
     "entry.estimated_reading_time": [
@@ -523,7 +523,7 @@
     "page.keyboard_shortcuts.subtitle.pages": "Навигация по страницам",
     "page.keyboard_shortcuts.subtitle.sections": "Навигация по секциям",
     "page.keyboard_shortcuts.title": "Горячие клавиши",
-    "page.keyboard_shortcuts.toggle_bookmark_status": "Переключатель избранного",
+    "page.keyboard_shortcuts.toggle_star_status": "Переключатель избранного",
     "page.keyboard_shortcuts.toggle_entry_attachments": "Переключатель показать/скрыть вложения",
     "page.keyboard_shortcuts.toggle_read_status_next": "Переключатель прочитанного, сосредоточиться на следующем",
     "page.keyboard_shortcuts.toggle_read_status_prev": "Переключатель прочитанного, фокус предыдущий",

+ 6 - 6
internal/locale/translations/tr_TR.json

@@ -15,7 +15,7 @@
     "alert.account_unlinked": "Harici hesabınızın bağlantısı kaldırıldı!",
     "alert.background_feed_refresh": "Tüm beslemeler arkaplanda yenileniyor. Bu süreç devam ederken Miniflux'ı kullanmaya devam edebilirsiniz.",
     "alert.feed_error": "Bu beslemeyle ilgili bir problem var",
-    "alert.no_bookmark": "Yıldızlanmış makale yok.",
+    "alert.no_starred": "Yıldızlanmış makale yok.",
     "alert.no_category": "Hiç kategori yok.",
     "alert.no_category_entry": "Bu kategoride hiç makele yok.",
     "alert.no_feed": "Hiç beslemeniz yok.",
@@ -46,10 +46,10 @@
     "enclosure_media_controls.speed.reset.title": "Hızı 1x'e sıfırla",
     "enclosure_media_controls.speed.slower": "Daha yavaş",
     "enclosure_media_controls.speed.slower.title": "%sx kat daha yavaş",
-    "entry.bookmark.toast.off": "Yıldızsız",
-    "entry.bookmark.toast.on": "Yıldızlı",
-    "entry.bookmark.toggle.off": "Yıldızı kaldır",
-    "entry.bookmark.toggle.on": "Yıldız ekle",
+    "entry.starred.toast.off": "Yıldızsız",
+    "entry.starred.toast.on": "Yıldızlı",
+    "entry.starred.toggle.off": "Yıldızı kaldır",
+    "entry.starred.toggle.on": "Yıldız ekle",
     "entry.comments.label": "Yorumlar",
     "entry.comments.title": "Yorumları Göster",
     "entry.estimated_reading_time": [
@@ -517,7 +517,7 @@
     "page.keyboard_shortcuts.subtitle.pages": "Sayfalarda Gezinme",
     "page.keyboard_shortcuts.subtitle.sections": "Bölümlerde Gezinme",
     "page.keyboard_shortcuts.title": "Klavye Kısayolları",
-    "page.keyboard_shortcuts.toggle_bookmark_status": "Yıldız ekle/kaldır",
+    "page.keyboard_shortcuts.toggle_star_status": "Yıldız ekle/kaldır",
     "page.keyboard_shortcuts.toggle_entry_attachments": "Makele eklerini açma/kapama arasında geçiş yap",
     "page.keyboard_shortcuts.toggle_read_status_next": "Okundu/okunmadı arasında geçiş yap, sonrakine odaklan",
     "page.keyboard_shortcuts.toggle_read_status_prev": "Okundu/okunmadı arasında geçiş yap, öncekine odaklan",

+ 6 - 6
internal/locale/translations/uk_UA.json

@@ -15,7 +15,7 @@
     "alert.account_unlinked": "Тепер ваш зовнішній обліковий запис підключено!",
     "alert.background_feed_refresh": "Всі стрічки оновлюються у фоновому режимі. Ви можете продовжувати користуватися Miniflux, поки триває цей процес.",
     "alert.feed_error": "З цією стрічкою трапилась помилка",
-    "alert.no_bookmark": "Наразі закладки відсутні.",
+    "alert.no_starred": "Наразі закладки відсутні.",
     "alert.no_category": "Немає категорії.",
     "alert.no_category_entry": "У цій категорії немає записів.",
     "alert.no_feed": "У вас немає підписок.",
@@ -47,10 +47,10 @@
     "enclosure_media_controls.speed.reset.title": "Скинути швидкість до 1x",
     "enclosure_media_controls.speed.slower": "Повільніше",
     "enclosure_media_controls.speed.slower.title": "Повільніше на %sx",
-    "entry.bookmark.toast.off": "Без зірочки",
-    "entry.bookmark.toast.on": "З зірочкою",
-    "entry.bookmark.toggle.off": "Прибрати зірочку",
-    "entry.bookmark.toggle.on": "Поставити зірочку",
+    "entry.starred.toast.off": "Без зірочки",
+    "entry.starred.toast.on": "З зірочкою",
+    "entry.starred.toggle.off": "Прибрати зірочку",
+    "entry.starred.toggle.on": "Поставити зірочку",
     "entry.comments.label": "Коментарі",
     "entry.comments.title": "Дивитися коментарі",
     "entry.estimated_reading_time": [
@@ -523,7 +523,7 @@
     "page.keyboard_shortcuts.subtitle.pages": "Навігація по сторінках",
     "page.keyboard_shortcuts.subtitle.sections": "Навігація по розділах",
     "page.keyboard_shortcuts.title": "Комбінації клавиш",
-    "page.keyboard_shortcuts.toggle_bookmark_status": "Переключити статус закладки",
+    "page.keyboard_shortcuts.toggle_star_status": "Переключити статус закладки",
     "page.keyboard_shortcuts.toggle_entry_attachments": "Toggle open/close entry attachments",
     "page.keyboard_shortcuts.toggle_read_status_next": "Переключити статус читання, перейти до наступного",
     "page.keyboard_shortcuts.toggle_read_status_prev": "Переключити статус читання, перейти до попереднього",

+ 6 - 6
internal/locale/translations/zh_CN.json

@@ -15,7 +15,7 @@
     "alert.account_unlinked": "您的外部帐户已解除关联!",
     "alert.background_feed_refresh": "所有订阅源正在后台刷新。您可以在刷新过程中继续使用 Miniflux。",
     "alert.feed_error": "此订阅源存在问题",
-    "alert.no_bookmark": "没有收藏的条目。",
+    "alert.no_starred": "没有收藏的条目。",
     "alert.no_category": "没有分类。",
     "alert.no_category_entry": "此分类下没有条目。",
     "alert.no_feed": "你没有任何订阅源。",
@@ -45,10 +45,10 @@
     "enclosure_media_controls.speed.reset.title": "重置速度到 1x",
     "enclosure_media_controls.speed.slower": "减慢",
     "enclosure_media_controls.speed.slower.title": "速度减慢到 %sx",
-    "entry.bookmark.toast.off": "已取消收藏",
-    "entry.bookmark.toast.on": "已添加收藏",
-    "entry.bookmark.toggle.off": "取消收藏",
-    "entry.bookmark.toggle.on": "添加收藏",
+    "entry.starred.toast.off": "已取消收藏",
+    "entry.starred.toast.on": "已添加收藏",
+    "entry.starred.toggle.off": "取消收藏",
+    "entry.starred.toggle.on": "添加收藏",
     "entry.comments.label": "评论",
     "entry.comments.title": "查看评论",
     "entry.estimated_reading_time": [
@@ -511,7 +511,7 @@
     "page.keyboard_shortcuts.subtitle.pages": "页面导航",
     "page.keyboard_shortcuts.subtitle.sections": "区域导航",
     "page.keyboard_shortcuts.title": "键盘快捷键",
-    "page.keyboard_shortcuts.toggle_bookmark_status": "切换收藏状态",
+    "page.keyboard_shortcuts.toggle_star_status": "切换收藏状态",
     "page.keyboard_shortcuts.toggle_entry_attachments": "切换展开/折叠条目附件",
     "page.keyboard_shortcuts.toggle_read_status_next": "切换已读/未读状态,并切换到下一项",
     "page.keyboard_shortcuts.toggle_read_status_prev": "切换已读/未读状态,并切换到上一项",

+ 6 - 6
internal/locale/translations/zh_TW.json

@@ -15,7 +15,7 @@
     "alert.account_unlinked": "您的外部帳戶已解除關聯!",
     "alert.background_feed_refresh": "所有 Feed 正在背景中更新,您可以繼續使用 Miniflux。",
     "alert.feed_error": "該 Feed 存在問題",
-    "alert.no_bookmark": "目前沒有收藏",
+    "alert.no_starred": "目前沒有收藏",
     "alert.no_category": "目前沒有分類",
     "alert.no_category_entry": "該分類下沒有文章",
     "alert.no_feed": "目前沒有 Feed",
@@ -45,10 +45,10 @@
     "enclosure_media_controls.speed.reset.title": "重設播放速度為 1x",
     "enclosure_media_controls.speed.slower": "放慢",
     "enclosure_media_controls.speed.slower.title": "放慢 %sx",
-    "entry.bookmark.toast.off": "已取消收藏",
-    "entry.bookmark.toast.on": "已新增收藏",
-    "entry.bookmark.toggle.off": "取消收藏",
-    "entry.bookmark.toggle.on": "新增收藏",
+    "entry.starred.toast.off": "已取消收藏",
+    "entry.starred.toast.on": "已新增收藏",
+    "entry.starred.toggle.off": "取消收藏",
+    "entry.starred.toggle.on": "新增收藏",
     "entry.comments.label": "評論",
     "entry.comments.title": "檢視評論",
     "entry.estimated_reading_time": [
@@ -511,7 +511,7 @@
     "page.keyboard_shortcuts.subtitle.pages": "頁面導覽",
     "page.keyboard_shortcuts.subtitle.sections": "分欄導覽",
     "page.keyboard_shortcuts.title": "快捷鍵",
-    "page.keyboard_shortcuts.toggle_bookmark_status": "切換收藏狀態",
+    "page.keyboard_shortcuts.toggle_star_status": "切換收藏狀態",
     "page.keyboard_shortcuts.toggle_entry_attachments": "展開/折疊文章附件",
     "page.keyboard_shortcuts.toggle_read_status_next": "切換已讀/未讀狀態,並聚焦到下一個",
     "page.keyboard_shortcuts.toggle_read_status_prev": "切換已讀/未讀狀態,並聚焦到上一個",

+ 7 - 7
internal/storage/entry.go

@@ -479,12 +479,12 @@ func (s *Storage) SetEntriesStatusCount(userID int64, entryIDs []int64, status s
 	return visible, nil
 }
 
-// SetEntriesBookmarkedState updates the bookmarked state for the given list of entries.
-func (s *Storage) SetEntriesBookmarkedState(userID int64, entryIDs []int64, starred bool) error {
+// SetEntriesStarredState updates the starred state for the given list of entries.
+func (s *Storage) SetEntriesStarredState(userID int64, entryIDs []int64, starred bool) error {
 	query := `UPDATE entries SET starred=$1, changed_at=now() WHERE user_id=$2 AND id=ANY($3)`
 	result, err := s.db.Exec(query, starred, userID, pq.Array(entryIDs))
 	if err != nil {
-		return fmt.Errorf(`store: unable to update the bookmarked state %v: %v`, entryIDs, err)
+		return fmt.Errorf(`store: unable to update the starred state %v: %v`, entryIDs, err)
 	}
 
 	count, err := result.RowsAffected()
@@ -499,17 +499,17 @@ func (s *Storage) SetEntriesBookmarkedState(userID int64, entryIDs []int64, star
 	return nil
 }
 
-// ToggleBookmark toggles entry bookmark value.
-func (s *Storage) ToggleBookmark(userID int64, entryID int64) error {
+// ToggleStarred toggles entry starred value.
+func (s *Storage) ToggleStarred(userID int64, entryID int64) error {
 	query := `UPDATE entries SET starred = NOT starred, changed_at=now() WHERE user_id=$1 AND id=$2`
 	result, err := s.db.Exec(query, userID, entryID)
 	if err != nil {
-		return fmt.Errorf(`store: unable to toggle bookmark flag for entry #%d: %v`, entryID, err)
+		return fmt.Errorf(`store: unable to toggle starred flag for entry #%d: %v`, entryID, err)
 	}
 
 	count, err := result.RowsAffected()
 	if err != nil {
-		return fmt.Errorf(`store: unable to toggle bookmark flag for entry #%d: %v`, entryID, err)
+		return fmt.Errorf(`store: unable to toggle starred flag for entry #%d: %v`, entryID, err)
 	}
 
 	if count == 0 {

+ 1 - 1
internal/template/engine.go

@@ -40,7 +40,7 @@ func (e *Engine) ParseTemplates() {
 		"about.html":               {"layout.html", "settings_menu.html"},
 		"add_subscription.html":    {"feed_menu.html", "layout.html", "settings_menu.html"},
 		"api_keys.html":            {"layout.html", "settings_menu.html"},
-		"bookmark_entries.html":    {"item_meta.html", "layout.html", "pagination.html"},
+		"starred_entries.html":     {"item_meta.html", "layout.html", "pagination.html"},
 		"categories.html":          {"layout.html"},
 		"category_entries.html":    {"item_meta.html", "layout.html", "pagination.html"},
 		"category_feeds.html":      {"feed_list.html", "layout.html"},

+ 5 - 5
internal/template/templates/common/item_meta.html

@@ -28,13 +28,13 @@
         <li class="item-meta-icons-star">
             <button
                 aria-describedby="entry-title-{{ .entry.ID }}"
-                data-toggle-bookmark="true"
-                data-bookmark-url="{{ route "toggleBookmark" "entryID" .entry.ID }}"
+                data-toggle-starred="true"
+                data-star-url="{{ route "toggleStarred" "entryID" .entry.ID }}"
                 data-label-loading="{{ t "entry.state.saving" }}"
-                data-label-star="{{ t "entry.bookmark.toggle.on" }}"
-                data-label-unstar="{{ t "entry.bookmark.toggle.off" }}"
+                data-label-star="{{ t "entry.starred.toggle.on" }}"
+                data-label-unstar="{{ t "entry.starred.toggle.off" }}"
                 data-value="{{ if .entry.Starred }}star{{ else }}unstar{{ end }}"
-                >{{ if .entry.Starred }}{{ icon "unstar" }}{{ else }}{{ icon "star" }}{{ end }}<span class="icon-label">{{ if .entry.Starred }}{{ t "entry.bookmark.toggle.off" }}{{ else }}{{ t "entry.bookmark.toggle.on" }}{{ end }}</span></button>
+                >{{ if .entry.Starred }}{{ icon "unstar" }}{{ else }}{{ icon "star" }}{{ end }}<span class="icon-label">{{ if .entry.Starred }}{{ t "entry.starred.toggle.off" }}{{ else }}{{ t "entry.starred.toggle.on" }}{{ end }}</span></button>
         </li>
         {{ if .entry.ShareCode }}
             <li class="item-meta-icons-share">

+ 1 - 1
internal/template/templates/common/layout.html

@@ -176,7 +176,7 @@
                     <li>{{ t "page.keyboard_shortcuts.toggle_read_status_prev" }} = <strong>M</strong></li>
                     <li>{{ t "page.keyboard_shortcuts.mark_page_as_read" }} = <strong>A</strong></li>
                     <li>{{ t "page.keyboard_shortcuts.download_content" }} = <strong>d</strong></li>
-                    <li>{{ t "page.keyboard_shortcuts.toggle_bookmark_status" }} = <strong>f</strong></li>
+                    <li>{{ t "page.keyboard_shortcuts.toggle_star_status" }} = <strong>f</strong></li>
                     <li>{{ t "page.keyboard_shortcuts.save_article" }} = <strong>s</strong></li>
                     <li>{{ t "page.keyboard_shortcuts.toggle_entry_attachments" }} = <strong>a</strong></li>
                     <li>{{ t "page.keyboard_shortcuts.scroll_item_to_top" }} = <strong>z + t</strong></li>

+ 7 - 7
internal/template/templates/views/entry.html

@@ -64,15 +64,15 @@
                 <li>
                     <button
                         class="page-button"
-                        data-toggle-bookmark="true"
-                        data-bookmark-url="{{ route "toggleBookmark" "entryID" .entry.ID }}"
+                        data-toggle-starred="true"
+                        data-star-url="{{ route "toggleStarred" "entryID" .entry.ID }}"
                         data-label-loading="{{ t "entry.state.saving" }}"
-                        data-label-star="{{ t "entry.bookmark.toggle.on" }}"
-                        data-label-unstar="{{ t "entry.bookmark.toggle.off" }}"
-                        data-toast-star="{{ t "entry.bookmark.toast.on" }}"
-                        data-toast-unstar="{{ t "entry.bookmark.toast.off" }}"
+                        data-label-star="{{ t "entry.starred.toggle.on" }}"
+                        data-label-unstar="{{ t "entry.starred.toggle.off" }}"
+                        data-toast-star="{{ t "entry.starred.toast.on" }}"
+                        data-toast-unstar="{{ t "entry.starred.toast.off" }}"
                         data-value="{{ if .entry.Starred }}star{{ else }}unstar{{ end }}"
-                        >{{ if .entry.Starred }}{{ icon "unstar" }}{{ else }}{{ icon "star" }}{{ end }}<span class="icon-label">{{ if .entry.Starred }}{{ t "entry.bookmark.toggle.off" }}{{ else }}{{ t "entry.bookmark.toggle.on" }}{{ end }}</span></button>
+                        >{{ if .entry.Starred }}{{ icon "unstar" }}{{ else }}{{ icon "star" }}{{ end }}<span class="icon-label">{{ if .entry.Starred }}{{ t "entry.starred.toggle.off" }}{{ else }}{{ t "entry.starred.toggle.on" }}{{ end }}</span></button>
                 </li>
                 {{ if .hasSaveEntry }}
                 <li>

+ 1 - 1
internal/template/templates/views/bookmark_entries.html → internal/template/templates/views/starred_entries.html

@@ -12,7 +12,7 @@
 
 {{ define "content"}}
 {{ if not .entries }}
-    <p role="alert" class="alert alert-info">{{ t "alert.no_bookmark" }}</p>
+    <p role="alert" class="alert alert-info">{{ t "alert.no_starred" }}</p>
 {{ else }}
     <div class="pagination-top">
         {{ template "pagination" .pagination }}

+ 0 - 0
internal/ui/entry_bookmark.go → internal/ui/entry_starred.go


+ 2 - 2
internal/ui/entry_toggle_bookmark.go → internal/ui/entry_toggle_starred.go

@@ -10,9 +10,9 @@ import (
 	"miniflux.app/v2/internal/http/response/json"
 )
 
-func (h *handler) toggleBookmark(w http.ResponseWriter, r *http.Request) {
+func (h *handler) toggleStarred(w http.ResponseWriter, r *http.Request) {
 	entryID := request.RouteInt64Param(r, "entryID")
-	if err := h.store.ToggleBookmark(request.UserID(r), entryID); err != nil {
+	if err := h.store.ToggleStarred(request.UserID(r), entryID); err != nil {
 		json.ServerError(w, r, err)
 		return
 	}

+ 1 - 1
internal/ui/bookmark_entries.go → internal/ui/starred_entries.go

@@ -53,5 +53,5 @@ func (h *handler) showStarredPage(w http.ResponseWriter, r *http.Request) {
 	view.Set("countErrorFeeds", h.store.CountUserFeedsWithErrors(user.ID))
 	view.Set("hasSaveEntry", h.store.HasSaveEntry(user.ID))
 
-	html.OK(w, r, view.Render("bookmark_entries"))
+	html.OK(w, r, view.Render("starred_entries"))
 }

+ 10 - 10
internal/ui/static/js/app.js

@@ -215,12 +215,12 @@ function setButtonToSavedState(buttonElement) {
 }
 
 /**
- * Set the bookmark button state.
+ * Set the star button state.
  *
  * @param {Element} buttonElement - The button element to update.
  * @param {string} newState - The new state to set ("star" or "unstar").
  */
-function setBookmarkButtonState(buttonElement, newState) {
+function setStarredButtonState(buttonElement, newState) {
     buttonElement.dataset.value = newState;
     const iconType = newState === "star" ? "unstar" : "star";
     setIconAndLabelElement(buttonElement, iconType, buttonElement.dataset[newState === "star" ? "labelUnstar" : "labelStar"]);
@@ -702,25 +702,25 @@ function handleSaveEntryAction(element = null) {
 }
 
 /**
- * Handle bookmarking an entry.
+ * Handle starring an entry.
  *
- * @param {Element} element - The element that triggered the bookmark action.
+ * @param {Element} element - The element that triggered the star action.
  */
-function handleBookmarkAction(element) {
+function handleStarAction(element) {
     const currentEntry = findEntry(element);
     if (!currentEntry) return;
 
-    const buttonElement = currentEntry.querySelector(":is(a, button)[data-toggle-bookmark]");
+    const buttonElement = currentEntry.querySelector(":is(a, button)[data-toggle-starred]");
     if (!buttonElement) return;
 
     setButtonToLoadingState(buttonElement);
 
-    sendPOSTRequest(buttonElement.dataset.bookmarkUrl).then(() => {
+    sendPOSTRequest(buttonElement.dataset.starUrl).then(() => {
         const currentState = buttonElement.dataset.value;
         const isStarred = currentState === "star";
         const newStarStatus = isStarred ? "unstar" : "star";
 
-        setBookmarkButtonState(buttonElement, newStarStatus);
+        setStarredButtonState(buttonElement, newStarStatus);
 
         if (isEntryView()) {
             showToastNotification(currentState, buttonElement.dataset[isStarred ? "toastUnstar" : "toastStar"]);
@@ -1192,7 +1192,7 @@ function initializeKeyboardShortcuts() {
     keyboardHandler.on("A", markPageAsReadAction);
     keyboardHandler.on("s", () => handleSaveEntryAction());
     keyboardHandler.on("d", handleFetchOriginalContentAction);
-    keyboardHandler.on("f", () => handleBookmarkAction());
+    keyboardHandler.on("f", () => handleStarAction());
 
     // Feed actions
     keyboardHandler.on("F", goToFeedPage);
@@ -1227,7 +1227,7 @@ function initializeTouchHandler() {
 function initializeClickHandlers() {
     // Entry actions
     onClick(":is(a, button)[data-save-entry]", (event) => handleSaveEntryAction(event.target));
-    onClick(":is(a, button)[data-toggle-bookmark]", (event) => handleBookmarkAction(event.target));
+    onClick(":is(a, button)[data-toggle-starred]", (event) => handleStarAction(event.target));
     onClick(":is(a, button)[data-toggle-status]", (event) => handleEntryStatus("next", event.target));
     onClick(":is(a, button)[data-fetch-content-entry]", handleFetchOriginalContentAction);
     onClick(":is(a, button)[data-share-status]", handleEntryShareAction);

+ 2 - 2
internal/ui/ui.go

@@ -51,7 +51,7 @@ func Serve(router *mux.Router, store *storage.Storage, pool *worker.Pool) {
 	uiRouter.HandleFunc("/history/entry/{entryID}", handler.showReadEntryPage).Name("readEntry").Methods(http.MethodGet)
 	uiRouter.HandleFunc("/history/flush", handler.flushHistory).Name("flushHistory").Methods(http.MethodPost)
 
-	// Bookmark pages.
+	// Starred pages.
 	uiRouter.HandleFunc("/starred", handler.showStarredPage).Name("starred").Methods(http.MethodGet)
 	uiRouter.HandleFunc("/starred/entry/{entryID}", handler.showStarredEntryPage).Name("starredEntry").Methods(http.MethodGet)
 
@@ -104,7 +104,7 @@ func Serve(router *mux.Router, store *storage.Storage, pool *worker.Pool) {
 	uiRouter.HandleFunc("/entry/enclosure/{enclosureID}/save-progression", handler.saveEnclosureProgression).Name("saveEnclosureProgression").Methods(http.MethodPost)
 	uiRouter.HandleFunc("/entry/download/{entryID}", handler.fetchContent).Name("fetchContent").Methods(http.MethodPost)
 	uiRouter.HandleFunc("/proxy/{encodedDigest}/{encodedURL}", handler.mediaProxy).Name("proxy").Methods(http.MethodGet)
-	uiRouter.HandleFunc("/entry/bookmark/{entryID}", handler.toggleBookmark).Name("toggleBookmark").Methods(http.MethodPost)
+	uiRouter.HandleFunc("/entry/star/{entryID}", handler.toggleStarred).Name("toggleStarred").Methods(http.MethodPost)
 
 	// Share pages.
 	uiRouter.HandleFunc("/entry/share/{entryID}", handler.createSharedEntry).Name("shareEntry").Methods(http.MethodPost)