[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Internationalize Emacs's messages (swahili)
From: |
Eli Zaretskii |
Subject: |
Re: Internationalize Emacs's messages (swahili) |
Date: |
Sat, 26 Dec 2020 10:26:58 +0200 |
> From: Daniel Brooks <db48x@db48x.net>
> Cc: Zhu Zihao <all_but_last@163.com>, bugs@gnu.support, dimech@gmx.com,
> abrochard@gmx.com, emacs-devel@gnu.org, rms@gnu.org
> Date: Fri, 25 Dec 2020 22:06:15 -0800
>
> As a concrete example of what I see in my head when I talk about this,
> here's some code that generates a moderately complex message, which I
> have taken from todo-mode.el:
>
> (let ((pl (> (length deleted) 1))
> (names (mapconcat (lambda (f) (concat "\"" f "\"")) deleted ", ")))
> (message (concat "File" (if pl "s" "") " %s ha" (if pl "ve" "s")
> " been deleted and removed from\n"
> "the list of category completion files")
> names))
Thanks for pointing this out. I've now fixed this and other similar
places in todo-mode.el on the master branch by using 'ngettext'. The
diffs are below.
commit cf1d7034445e7896c34f88256e5d7f2674a4f7ee
Author: Eli Zaretskii <eliz@gnu.org>
AuthorDate: Sat Dec 26 10:23:04 2020 +0200
Commit: Eli Zaretskii <eliz@gnu.org>
CommitDate: Sat Dec 26 10:23:04 2020 +0200
Fix messages with plural forms in todo-mode.el
* lisp/calendar/todo-mode.el (todo-move-item, todo-item-undone)
(todo-category-completions): Use 'ngettext' instead of hard-coding
plural forms by hand.
diff --git a/lisp/calendar/todo-mode.el b/lisp/calendar/todo-mode.el
index 3975a9b..637df85 100644
--- a/lisp/calendar/todo-mode.el
+++ b/lisp/calendar/todo-mode.el
@@ -2745,9 +2745,10 @@ todo-move-item
(setq ov (make-overlay (save-excursion (todo-item-start))
(save-excursion (todo-item-end))))
(overlay-put ov 'face 'todo-search))
- (let* ((pl (if (and marked (> (cdr marked) 1)) "s" ""))
- (cat+file (todo-read-category (concat "Move item" pl
- " to category: ")
+ (let* ((num (if (not marked) 1 (cdr marked)))
+ (cat+file (todo-read-category
+ (ngettext "Move item to category: "
+ "Move items to category: " num)
nil file)))
(while (and (equal (car cat+file) cat1)
(equal (cdr cat+file) file1))
@@ -2974,7 +2975,7 @@ todo-item-undone
(interactive)
(let* ((cat (todo-current-category))
(marked (assoc cat todo-categories-with-marks))
- (pl (if (and marked (> (cdr marked) 1)) "s" "")))
+ (num (if (not marked) 1 (cdr marked))))
(when (or marked (todo-done-item-p))
(let ((buffer-read-only)
(opoint (point))
@@ -2982,6 +2983,9 @@ todo-item-undone
(first 'first)
(item-count 0)
(diary-count 0)
+ (omit-prompt (ngettext "Omit comment from restored item? "
+ "Omit comments from restored items? "
+ num))
start end item ov npoint undone)
(and marked (goto-char (point-min)))
(catch 'done
@@ -3013,10 +3017,7 @@ todo-item-undone
(if (eq first 'first)
(setq first
(if (eq todo-undo-item-omit-comment 'ask)
- (when (todo-y-or-n-p
- (concat "Omit comment" pl
- " from restored item"
- pl "? "))
+ (when (todo-y-or-n-p omit-prompt)
'omit)
(when todo-undo-item-omit-comment 'omit)))
t)
@@ -5782,11 +5783,13 @@ todo-category-completions
(delete f todo-category-completions-files))
(push f deleted)))
(when deleted
- (let ((pl (> (length deleted) 1))
+ (let ((ndeleted (length deleted))
(names (mapconcat (lambda (f) (concat "\"" f "\"")) deleted ", ")))
- (message (concat "File" (if pl "s" "") " %s ha" (if pl "ve" "s")
- " been deleted and removed from\n"
- "the list of category completion files")
+ (message (concat
+ (ngettext "File %s has been deleted and removed from\n"
+ "Files %s have been deleted and removed from\n"
+ ndeleted)
+ "the list of category completion files")
names))
(put 'todo-category-completions-files 'custom-type
`(set ,@(todo--files-type-list)))
- Re: Internationalize Emacs's messages (swahili), (continued)
- Re: Internationalize Emacs's messages (swahili), Eli Zaretskii, 2020/12/23
- Re: Internationalize Emacs's messages (swahili), Zhu Zihao, 2020/12/23
- Re: Internationalize Emacs's messages (swahili), Eli Zaretskii, 2020/12/24
- Re: Internationalize Emacs's messages (swahili), Daniel Brooks, 2020/12/25
- Re: Internationalize Emacs's messages (swahili), Stefan Monnier, 2020/12/25
- Re: Internationalize Emacs's messages (swahili), Daniel Brooks, 2020/12/25
- Re: Internationalize Emacs's messages (swahili), Stefan Monnier, 2020/12/25
- Re: Internationalize Emacs's messages (swahili), Daniel Brooks, 2020/12/25
- Re: Internationalize Emacs's messages (swahili), Richard Stallman, 2020/12/27
- Re: Internationalize Emacs's messages (swahili), Daniel Brooks, 2020/12/26
- Re: Internationalize Emacs's messages (swahili),
Eli Zaretskii <=
- Re: Internationalize Emacs's messages (swahili), tomas, 2020/12/26
- Re: Internationalize Emacs's messages (swahili), Tomas Hlavaty, 2020/12/26
- Re: Internationalize Emacs's messages (swahili), Eli Zaretskii, 2020/12/26
- Re: Internationalize Emacs's messages (swahili), Daniel Brooks, 2020/12/26
- Re: Internationalize Emacs's messages (swahili), Lars Ingebrigtsen, 2020/12/26
- Re: Internationalize Emacs's messages (swahili), Daniel Brooks, 2020/12/26
- Re: Internationalize Emacs's messages (swahili), Eli Zaretskii, 2020/12/26
- Re: Internationalize Emacs's messages (swahili), Daniel Brooks, 2020/12/26
- Re: Internationalize Emacs's messages (swahili), Tomas Hlavaty, 2020/12/26
- Re: Internationalize Emacs's messages (swahili), Daniel Brooks, 2020/12/26