patch 8.2.1544: cannot translate messages in a Vim script
Problem: Cannot translate messages in a Vim script.
Solution: Add gettext(). Try it out for a few messages in the options
window.
diff --git a/runtime/doc/eval.txt b/runtime/doc/eval.txt
index e0c8473..f1b6992 100644
--- a/runtime/doc/eval.txt
+++ b/runtime/doc/eval.txt
@@ -2546,6 +2546,7 @@
gettabwinvar({tabnr}, {winnr}, {name} [, {def}])
any {name} in {winnr} in tab page {tabnr}
gettagstack([{nr}]) Dict get the tag stack of window {nr}
+gettext({text}) String lookup translation of {text}
getwininfo([{winid}]) List list of info about each window
getwinpos([{timeout}]) List X and Y coord in pixels of the Vim window
getwinposx() Number X coord in pixels of the Vim window
@@ -5827,6 +5828,19 @@
Can also be used as a |method|: >
GetWinnr()->gettagstack()
+
+gettext({text}) *gettext()*
+ Translate {text} if possible.
+ This is mainly for use in the distributed Vim scripts. When
+ generating message translations the {text} is extracted by
+ xgettext, the translator can add the translated message in the
+ .po file and Vim will lookup the translation when gettext() is
+ called.
+ For {text} double quoted strings are preferred, because
+ xgettext does not understand escaping in single quoted
+ strings.
+
+
getwininfo([{winid}]) *getwininfo()*
Returns information about windows as a |List| with Dictionaries.
diff --git a/runtime/doc/usr_41.txt b/runtime/doc/usr_41.txt
index 10e53ba..81474c7 100644
--- a/runtime/doc/usr_41.txt
+++ b/runtime/doc/usr_41.txt
@@ -628,6 +628,7 @@
execute() execute an Ex command and get the output
win_execute() like execute() but in a specified window
trim() trim characters from a string
+ gettext() lookup message translation
List manipulation: *list-functions*
get() get an item without error for wrong index