[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: bug#34520: delete-matching-lines should report how many lines it del
From: |
Richard Stallman |
Subject: |
Re: bug#34520: delete-matching-lines should report how many lines it deleted |
Date: |
Sat, 02 Mar 2019 22:04:06 -0500 |
[[[ To any NSA and FBI agents reading my email: please consider ]]]
[[[ whether defending the US Constitution against all enemies, ]]]
[[[ foreign or domestic, requires you to follow Snowden's example. ]]]
You wrote:
======================================================================
Here is an experimental but extensible implementation
that handles the case of formatting the recently added message
taking into account grammatical number of its argument:
(defvar i18n-translations-hash (make-hash-table :test 'equal))
(defun i18n-add-translation (_language-environment from to)
(puthash from to i18n-translations-hash))
(i18n-add-translation
"English"
"Deleted %d matching lines"
(lambda (format-string count)
(if (= count 1)
"Deleted %d matching line"
"Deleted %d matching lines")))
(defun i18n-get-translation (format-string &rest args)
(pcase (gethash format-string i18n-translations-hash)
((and (pred functionp) f) (apply f format-string args))
((and (pred stringp) s) s)
(_ format-string)))
(advice-add 'message :around
(lambda (orig-fun format-string &rest args)
(apply orig-fun (apply 'i18n-get-translation format-string
args) args))
'((name . message-i18n)))
======================================================================
It seems pretty good. When installing it, it should not use
`advice-add'. Rather, `message' should call a list of functions.
--
Dr Richard Stallman
President, Free Software Foundation (https://gnu.org, https://fsf.org)
Internet Hall-of-Famer (https://internethalloffame.org)
- Re: bug#34520: delete-matching-lines should report how many lines it deleted,
Richard Stallman <=
- Re: Emacs i18n (was: bug#34520: delete-matching-lines should report how many lines it deleted), Eli Zaretskii, 2019/03/03
- Re: Emacs i18n, Juri Linkov, 2019/03/03
- Re: Emacs i18n, Clément Pit-Claudel, 2019/03/21
- Re: Emacs i18n, Eli Zaretskii, 2019/03/21
- Re: Emacs i18n, Clément Pit-Claudel, 2019/03/21
- Re: Emacs i18n, Jean-Christophe Helary, 2019/03/21
- Re: Emacs i18n, Clément Pit-Claudel, 2019/03/21