git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH 06/15] Add glossary that can be converted into a po file for each language.

From
Johannes Schindelin <johannes.schindelin@gmx.de>
Date
Sep 2, 2007, 16:32 UTC
Message-ID
<Pine.LNX.4.64.0709021731560.28586@racer.site>
In-Reply-To
<Pine.LNX.4.64.0709021719380.28586@racer.site>
From: Christian Stimming <stimming@tuhh.de>
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
---
 po/glossary/Makefile             |    9 +++++++
 po/glossary/git-gui-glossary.txt |   34 ++++++++++++++++++++++++++
 po/glossary/txt-to-pot.sh        |   48 ++++++++++++++++++++++++++++++++++++++
 3 files changed, 91 insertions(+), 0 deletions(-)
 create mode 100644 po/glossary/Makefile
 create mode 100644 po/glossary/git-gui-glossary.txt
 create mode 100755 po/glossary/txt-to-pot.sh
diff --git a/po/glossary/Makefile b/po/glossary/Makefile
new file mode 100644
index 0000000..749aa2e
--- /dev/null
+++ b/po/glossary/Makefile
@@ -0,0 +1,9 @@
+PO_TEMPLATE = git-gui-glossary.pot
+
+ALL_POFILES = $(wildcard *.po)
+
+$(PO_TEMPLATE): $(subst .pot,.txt,$(PO_TEMPLATE))
+	./txt-to-pot.sh $< > $@
+
+update-po:: git-gui-glossary.pot
+	$(foreach p, $(ALL_POFILES), echo Updating $p ; msgmerge -U $p $(PO_TEMPLATE) ; )
diff --git a/po/glossary/git-gui-glossary.txt b/po/glossary/git-gui-glossary.txt
new file mode 100644
index 0000000..bb55aa8
--- /dev/null
+++ b/po/glossary/git-gui-glossary.txt
@@ -0,0 +1,34 @@
+"English Term (Dear translator: This file will never be visible to the user!)"	"English Definition (Dear translator: This file will never be visible to the user! It should only serve as a tool for you, the translator. Nothing more.)"
+"amend"	""
+"annotate"	""
+"branch [noun]"	"A 'branch' is an active line of development."
+"branch [verb]"	""
+"checkout [noun]"	""
+"checkout [verb]"	"The action of updating the working tree to a revision which was stored in the object database."
+"commit [noun]"	"A single point in the git history."
+"commit [verb]"	"The action of storing a new snapshot of the project's state in the git history."
+"diff [noun]"	""
+"diff [verb]"	""
+"fast forward merge"	"A fast-forward is a special type of merge where you have a revision and you are merging another branch's changes that happen to be a descendant of what you have."
+"fetch"	"Fetching a branch means to get the branch's head from a remote repository, to find out which objects are missing from the local object database, and to get them, too."
+"index (in git-gui: staging area)"	"A collection of files. The index is a stored version of your working tree."
+"merge [noun]"	"A successful merge results in the creation of a new commit representing the result of the merge."
+"merge [verb]"	"To bring the contents of another branch into the current branch."
+"message"	""
+"pull"	"Pulling a branch means to fetch it and merge it."
+"push"	"Pushing a branch means to get the branch's head ref from a remote repository, and ... (well, can someone please explain it for mere mortals?)"
+"redo"	""
+"repository"	"A collection of refs (?) together with an object database containing all objects which are reachable from the refs... (oops, you've lost me here. Again, please an explanation for mere mortals?)"
+"reset"	""
+"revert"	""
+"revision"	"A particular state of files and directories which was stored in the object database."
+"sign off"	""
+"staging area"	""
+"status"	""
+"tag [noun]"	"A ref pointing to a tag or commit object"
+"tag [verb]"	""
+"tracking branch"	"A regular git branch that is used to follow changes from another repository."
+"undo"	""
+"update"	""
+"verify"	""
+"working copy, working tree"	"The tree of actual checked out files."
diff --git a/po/glossary/txt-to-pot.sh b/po/glossary/txt-to-pot.sh
new file mode 100755
index 0000000..49bf7c5
--- /dev/null
+++ b/po/glossary/txt-to-pot.sh
@@ -0,0 +1,48 @@
+#!/bin/sh
+# This is a very, _very_, simple script to convert a tab-separated
+# .txt file into a .pot/.po.
+# Its not clever but it took me 2 minutes to write :)
+# Michael Twomey <michael.twomey@ireland.sun.com>
+# 23 March 2001
+# with slight GnuCash modifications by Christian Stimming <stimming@tuhh.de>
+# 19 Aug 2001, 23 Jul 2007
+
+#check args
+if [ $# -eq 0 ]
+then
+	cat <<!
+Usage: `basename $0` git-gui-glossary.txt > git-gui-glossary.pot
+!
+	exit 1;
+fi
+
+GLOSSARY_CSV="$1";
+
+if [ ! -f "$GLOSSARY_CSV" ]
+then
+	echo "Can't find $GLOSSARY_CSV.";
+	exit 1;
+fi
+
+cat <<!
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR Free Software Foundation, Inc.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"POT-Creation-Date: `date +'%Y-%m-%d %H:%M%z'`\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=CHARSET\n"
+"Content-Transfer-Encoding: ENCODING\n"
+
+!
+
+#Yes this is the most simple awk script you've ever seen :)
+awk -F'\t' '{if ($2 != "") print "#. "$2; print "msgid "$1; print "msgstr \"\"\n"}' \
+$GLOSSARY_CSV
-- 
1.5.3.2.g46909
Previous: Johannes SchindelinNext: Johannes Schindelin
Message 9 of 21 in “i18n support for git-gui”
  1. 00/15 i18n support for git-guiJohannes Schindelin, Sep 2, 2007
  2. 01/15 Mark strings for translation.Johannes Schindelin, Sep 2, 2007
  3. Johannes SchindelinSep 2, 2007
  4. 02/15 Makefile rules for translation catalog generation and installation.Johannes Schindelin, Sep 2, 2007
  5. 02/15 Makefile rules for translation catalog generation and installation.Johannes Schindelin, Sep 2, 2007
  6. 03/15 git-gui po/README: Guide to translatorsJohannes Schindelin, Sep 2, 2007
  7. 04/15 Add po/git-gui.potJohannes Schindelin, Sep 2, 2007
  8. 05/15 Ignore po/*.msgJohannes Schindelin, Sep 2, 2007
  9. 06/15 Add glossary that can be converted into a po file for each language.Johannes Schindelin, Sep 2, 2007
  10. 07/15 Add glossary translation template into git.Johannes Schindelin, Sep 2, 2007
  11. 08/15 German translation for git-guiJohannes Schindelin, Sep 2, 2007
  12. 09/15 Initial Chinese translation for git-guiJohannes Schindelin, Sep 2, 2007
  13. 10/15 Japanese translation of git-guiJohannes Schindelin, Sep 2, 2007
  14. 11/15 Italian translation of git-guiJohannes Schindelin, Sep 2, 2007
  15. 12/15 git-gui: initial version of russian translationJohannes Schindelin, Sep 2, 2007
  16. 13/15 Hungarian translation of git-guiJohannes Schindelin, Sep 2, 2007
  17. 14/15 German glossary for translationJohannes Schindelin, Sep 2, 2007
  18. 15/15 git-gui: Added initial version of po/glossary/zh_cn.poJohannes Schindelin, Sep 2, 2007
  19. Johannes SchindelinSep 2, 2007
  20. Shawn O. PearceSep 3, 2007
  21. Johannes SchindelinSep 3, 2007

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.