{"thread":{"id":"9106","subject":"[PATCH] Internationalization of git-gui","startedAt":"2007-07-19T10:56:57Z","lastAt":"2007-07-22T01:12:39Z","messageCount":17,"participants":["Christian Stimming","Johannes Schindelin","Shawn O. Pearce","Paolo Ciarrocchi","Junio C Hamano","Sam Ravnborg","Xudong Guan","しらいしななこ"],"isPatch":true,"patchVersion":1,"patchTotal":null},"messages":[{"id":"47851","messageId":"20070719125657.8utk85ynuow4ow48@webmail.tu-harburg.de","threadId":"9106","inReplyTo":null,"subject":"[PATCH] Internationalization of git-gui","fromName":"Christian Stimming","fromEmail":"stimming@tuhh.de","sentAt":"2007-07-19T10:56:57Z","receivedAt":"2007-07-19T10:56:57Z","isPatch":true,"sender":{"key":"stimming@tuhh.de","avatar":"https://avatars.githubusercontent.com/u/227778?v=4"},"body":"This is an initial patch of how internationalization (i18n) in git  \ncould be done, starting with the git-gui application (because I need  \nthat one in German to convince my workplace of switching to git).\n\nDoes this implementation look okay? If yes, I'd happily i18n'ize the  \nrest of git-gui and provide a full German translation as well.\n\nThanks,\n\nChristian Stimming\n\n\n>From ea66070d95061e623cb5430fe88efea653e511e0 Mon Sep 17 00:00:00 2001\nFrom: Christian Stimming <stimming@tuhh.de>\nDate: Thu, 19 Jul 2007 12:48:08 +0200\nSubject: [PATCH] Initialize msgcat (gettext).\n\n---\n git-gui/git-gui.sh |    6 ++++++\n 1 files changed, 6 insertions(+), 0 deletions(-)\n\ndiff --git a/git-gui/git-gui.sh b/git-gui/git-gui.sh\nindex 2077261..c56a3f1 100755\n--- a/git-gui/git-gui.sh\n+++ b/git-gui/git-gui.sh\n@@ -108,6 +108,12 @@ if {$idx ne {}} {\n }\n unset -nocomplain oguirel idx fd\n \n+## Internationalization (i18n) through gettext. See\n+## http://www.gnu.org/software/gettext/manual/html_node/Tcl.html\n+package require msgcat\n+::msgcat::mcload [file join $oguilib msgs]\n+proc _ {s} {return [::msgcat::mc $s]}\n+\n ######################################################################\n ##\n ## read only globals\n-- \n1.5.3.rc2.4.g726f9\n\n\n\n>From 154d29786bdda205357595e22b3385d7cdb77453 Mon Sep 17 00:00:00 2001\nFrom: Christian Stimming <stimming@tuhh.de>\nDate: Thu, 19 Jul 2007 12:49:09 +0200\nSubject: [PATCH] Mark strings for translation\n\n---\n git-gui/git-gui.sh |  154 ++++++++++++++++++++++++++--------------------------\n 1 files changed, 77 insertions(+), 77 deletions(-)\n\ndiff --git a/git-gui/git-gui.sh b/git-gui/git-gui.sh\nindex c56a3f1..45b7ef1 100755\n--- a/git-gui/git-gui.sh\n+++ b/git-gui/git-gui.sh\n@@ -1618,18 +1618,18 @@ set ui_comm {}\n # -- Menu Bar\n #\n menu .mbar -tearoff 0\n-.mbar add cascade -label Repository -menu .mbar.repository\n-.mbar add cascade -label Edit -menu .mbar.edit\n+.mbar add cascade -label [_ Repository] -menu .mbar.repository\n+.mbar add cascade -label [_ Edit] -menu .mbar.edit\n if {[is_enabled branch]} {\n-\t.mbar add cascade -label Branch -menu .mbar.branch\n+\t.mbar add cascade -label [_ Branch] -menu .mbar.branch\n }\n if {[is_enabled multicommit] || [is_enabled singlecommit]} {\n-\t.mbar add cascade -label Commit -menu .mbar.commit\n+\t.mbar add cascade -label [_ Commit] -menu .mbar.commit\n }\n if {[is_enabled transport]} {\n-\t.mbar add cascade -label Merge -menu .mbar.merge\n-\t.mbar add cascade -label Fetch -menu .mbar.fetch\n-\t.mbar add cascade -label Push -menu .mbar.push\n+\t.mbar add cascade -label [_ Merge] -menu .mbar.merge\n+\t.mbar add cascade -label [_ Fetch] -menu .mbar.fetch\n+\t.mbar add cascade -label [_ Push] -menu .mbar.push\n }\n . configure -menu .mbar\n \n@@ -1638,75 +1638,75 @@ if {[is_enabled transport]} {\n menu .mbar.repository\n \n .mbar.repository add command \\\n-\t-label {Browse Current Branch} \\\n+\t-label [_ {Browse Current Branch}] \\\n \t-command {browser::new $current_branch}\n trace add variable current_branch write \".mbar.repository entryconf [.mbar.repository index last] -label \\\"Browse \\$current_branch\\\" ;#\"\n .mbar.repository add separator\n \n .mbar.repository add command \\\n-\t-label {Visualize Current Branch} \\\n+\t-label [_ {Visualize Current Branch}]  \\\n \t-command {do_gitk $current_branch}\n trace add variable current_branch write \".mbar.repository entryconf [.mbar.repository index last] -label \\\"Visualize \\$current_branch\\\" ;#\"\n .mbar.repository add command \\\n-\t-label {Visualize All Branches} \\\n+\t-label [_ {Visualize All Branches}] \\\n \t-command {do_gitk --all}\n .mbar.repository add separator\n \n if {[is_enabled multicommit]} {\n-\t.mbar.repository add command -label {Database Statistics} \\\n+\t.mbar.repository add command -label [_ {Database Statistics}] \\\n \t\t-command do_stats\n \n-\t.mbar.repository add command -label {Compress Database} \\\n+\t.mbar.repository add command -label [_ {Compress Database}] \\\n \t\t-command do_gc\n \n-\t.mbar.repository add command -label {Verify Database} \\\n+\t.mbar.repository add command -label [_ {Verify Database}] \\\n \t\t-command do_fsck_objects\n \n \t.mbar.repository add separator\n \n \tif {[is_Cygwin]} {\n \t\t.mbar.repository add command \\\n-\t\t\t-label {Create Desktop Icon} \\\n+\t\t\t-label [_ {Create Desktop Icon}] \\\n \t\t\t-command do_cygwin_shortcut\n \t} elseif {[is_Windows]} {\n \t\t.mbar.repository add command \\\n-\t\t\t-label {Create Desktop Icon} \\\n+\t\t\t-label [_ {Create Desktop Icon}] \\\n \t\t\t-command do_windows_shortcut\n \t} elseif {[is_MacOSX]} {\n \t\t.mbar.repository add command \\\n-\t\t\t-label {Create Desktop Icon} \\\n+\t\t\t-label [_ {Create Desktop Icon}] \\\n \t\t\t-command do_macosx_app\n \t}\n }\n \n-.mbar.repository add command -label Quit \\\n+.mbar.repository add command -label [_ Quit] \\\n \t-command do_quit \\\n \t-accelerator $M1T-Q\n \n # -- Edit Menu\n #\n menu .mbar.edit\n-.mbar.edit add command -label Undo \\\n+.mbar.edit add command -label [_ Undo] \\\n \t-command {catch {[focus] edit undo}} \\\n \t-accelerator $M1T-Z\n-.mbar.edit add command -label Redo \\\n+.mbar.edit add command -label [_ Redo] \\\n \t-command {catch {[focus] edit redo}} \\\n \t-accelerator $M1T-Y\n .mbar.edit add separator\n-.mbar.edit add command -label Cut \\\n+.mbar.edit add command -label [_ Cut] \\\n \t-command {catch {tk_textCut [focus]}} \\\n \t-accelerator $M1T-X\n-.mbar.edit add command -label Copy \\\n+.mbar.edit add command -label [_ Copy] \\\n \t-command {catch {tk_textCopy [focus]}} \\\n \t-accelerator $M1T-C\n-.mbar.edit add command -label Paste \\\n+.mbar.edit add command -label [_ Paste] \\\n \t-command {catch {tk_textPaste [focus]; [focus] see insert}} \\\n \t-accelerator $M1T-V\n-.mbar.edit add command -label Delete \\\n+.mbar.edit add command -label [_ Delete] \\\n \t-command {catch {[focus] delete sel.first sel.last}} \\\n \t-accelerator Del\n .mbar.edit add separator\n-.mbar.edit add command -label {Select All} \\\n+.mbar.edit add command -label [_ {Select All}] \\\n \t-command {catch {[focus] tag add sel 0.0 end}} \\\n \t-accelerator $M1T-A\n \n@@ -1715,29 +1715,29 @@ menu .mbar.edit\n if {[is_enabled branch]} {\n \tmenu .mbar.branch\n \n-\t.mbar.branch add command -label {Create...} \\\n+\t.mbar.branch add command -label [_ {Create...}] \\\n \t\t-command branch_create::dialog \\\n \t\t-accelerator $M1T-N\n \tlappend disable_on_lock [list .mbar.branch entryconf \\\n \t\t[.mbar.branch index last] -state]\n \n-\t.mbar.branch add command -label {Checkout...} \\\n+\t.mbar.branch add command -label [_ {Checkout...}] \\\n \t\t-command branch_checkout::dialog \\\n \t\t-accelerator $M1T-O\n \tlappend disable_on_lock [list .mbar.branch entryconf \\\n \t\t[.mbar.branch index last] -state]\n \n-\t.mbar.branch add command -label {Rename...} \\\n+\t.mbar.branch add command -label [_ {Rename...}] \\\n \t\t-command branch_rename::dialog\n \tlappend disable_on_lock [list .mbar.branch entryconf \\\n \t\t[.mbar.branch index last] -state]\n \n-\t.mbar.branch add command -label {Delete...} \\\n+\t.mbar.branch add command -label [_ {Delete...}] \\\n \t\t-command branch_delete::dialog\n \tlappend disable_on_lock [list .mbar.branch entryconf \\\n \t\t[.mbar.branch index last] -state]\n \n-\t.mbar.branch add command -label {Reset...} \\\n+\t.mbar.branch add command -label [_ {Reset...}] \\\n \t\t-command merge::reset_hard\n \tlappend disable_on_lock [list .mbar.branch entryconf \\\n \t\t[.mbar.branch index last] -state]\n@@ -1749,7 +1749,7 @@ if {[is_enabled multicommit] || [is_enabled singlecommit]} {\n \tmenu .mbar.commit\n \n \t.mbar.commit add radiobutton \\\n-\t\t-label {New Commit} \\\n+\t\t-label [_ {New Commit}] \\\n \t\t-command do_select_commit_type \\\n \t\t-variable selected_commit_type \\\n \t\t-value new\n@@ -1757,7 +1757,7 @@ if {[is_enabled multicommit] || [is_enabled singlecommit]} {\n \t\t[list .mbar.commit entryconf [.mbar.commit index last] -state]\n \n \t.mbar.commit add radiobutton \\\n-\t\t-label {Amend Last Commit} \\\n+\t\t-label [_ {Amend Last Commit}] \\\n \t\t-command do_select_commit_type \\\n \t\t-variable selected_commit_type \\\n \t\t-value amend\n@@ -1766,40 +1766,40 @@ if {[is_enabled multicommit] || [is_enabled singlecommit]} {\n \n \t.mbar.commit add separator\n \n-\t.mbar.commit add command -label Rescan \\\n+\t.mbar.commit add command -label [_ Rescan] \\\n \t\t-command do_rescan \\\n \t\t-accelerator F5\n \tlappend disable_on_lock \\\n \t\t[list .mbar.commit entryconf [.mbar.commit index last] -state]\n \n-\t.mbar.commit add command -label {Add To Commit} \\\n+\t.mbar.commit add command -label [_ {Add To Commit}] \\\n \t\t-command do_add_selection\n \tlappend disable_on_lock \\\n \t\t[list .mbar.commit entryconf [.mbar.commit index last] -state]\n \n-\t.mbar.commit add command -label {Add Existing To Commit} \\\n+\t.mbar.commit add command -label [_ {Add Existing To Commit}] \\\n \t\t-command do_add_all \\\n \t\t-accelerator $M1T-I\n \tlappend disable_on_lock \\\n \t\t[list .mbar.commit entryconf [.mbar.commit index last] -state]\n \n-\t.mbar.commit add command -label {Unstage From Commit} \\\n+\t.mbar.commit add command -label [_ {Unstage From Commit}] \\\n \t\t-command do_unstage_selection\n \tlappend disable_on_lock \\\n \t\t[list .mbar.commit entryconf [.mbar.commit index last] -state]\n \n-\t.mbar.commit add command -label {Revert Changes} \\\n+\t.mbar.commit add command -label [_ {Revert Changes}] \\\n \t\t-command do_revert_selection\n \tlappend disable_on_lock \\\n \t\t[list .mbar.commit entryconf [.mbar.commit index last] -state]\n \n \t.mbar.commit add separator\n \n-\t.mbar.commit add command -label {Sign Off} \\\n+\t.mbar.commit add command -label [_ {Sign Off}] \\\n \t\t-command do_signoff \\\n \t\t-accelerator $M1T-S\n \n-\t.mbar.commit add command -label Commit \\\n+\t.mbar.commit add command -label [_ Commit] \\\n \t\t-command do_commit \\\n \t\t-accelerator $M1T-Return\n \tlappend disable_on_lock \\\n@@ -1810,11 +1810,11 @@ if {[is_enabled multicommit] || [is_enabled singlecommit]} {\n #\n if {[is_enabled branch]} {\n \tmenu .mbar.merge\n-\t.mbar.merge add command -label {Local Merge...} \\\n+\t.mbar.merge add command -label [_ {Local Merge...}] \\\n \t\t-command merge::dialog\n \tlappend disable_on_lock \\\n \t\t[list .mbar.merge entryconf [.mbar.merge index last] -state]\n-\t.mbar.merge add command -label {Abort Merge...} \\\n+\t.mbar.merge add command -label [_ {Abort Merge...}] \\\n \t\t-command merge::reset_hard\n \tlappend disable_on_lock \\\n \t\t[list .mbar.merge entryconf [.mbar.merge index last] -state]\n@@ -1827,28 +1827,28 @@ if {[is_enabled transport]} {\n \tmenu .mbar.fetch\n \n \tmenu .mbar.push\n-\t.mbar.push add command -label {Push...} \\\n+\t.mbar.push add command -label [_ {Push...}] \\\n \t\t-command do_push_anywhere \\\n \t\t-accelerator $M1T-P\n-\t.mbar.push add command -label {Delete...} \\\n+\t.mbar.push add command -label [_ {Delete...}] \\\n \t\t-command remote_branch_delete::dialog\n }\n \n if {[is_MacOSX]} {\n \t# -- Apple Menu (Mac OS X only)\n \t#\n-\t.mbar add cascade -label Apple -menu .mbar.apple\n+\t.mbar add cascade -label [_ Apple] -menu .mbar.apple\n \tmenu .mbar.apple\n \n-\t.mbar.apple add command -label \"About [appname]\" \\\n+\t.mbar.apple add command -label [format [_ \"About %s\"] [appname]] \\\n \t\t-command do_about\n-\t.mbar.apple add command -label \"Options...\" \\\n+\t.mbar.apple add command -label [_ \"Options...\"] \\\n \t\t-command do_options\n } else {\n \t# -- Edit Menu\n \t#\n \t.mbar.edit add separator\n-\t.mbar.edit add command -label {Options...} \\\n+\t.mbar.edit add command -label [_ {Options...}] \\\n \t\t-command do_options\n \n \t# -- Tools Menu\n@@ -1870,9 +1870,9 @@ if {[is_MacOSX]} {\n \t\t\trescan ui_ready\n \t\t}\n \t}\n-\t.mbar add cascade -label Tools -menu .mbar.tools\n+\t.mbar add cascade -label [_ Tools] -menu .mbar.tools\n \tmenu .mbar.tools\n-\t.mbar.tools add command -label \"Migrate\" \\\n+\t.mbar.tools add command -label [_ \"Migrate\"] \\\n \t\t-command do_miga\n \tlappend disable_on_lock \\\n \t\t[list .mbar.tools entryconf [.mbar.tools index last] -state]\n@@ -1881,11 +1881,11 @@ if {[is_MacOSX]} {\n \n # -- Help Menu\n #\n-.mbar add cascade -label Help -menu .mbar.help\n+.mbar add cascade -label [_ Help] -menu .mbar.help\n menu .mbar.help\n \n if {![is_MacOSX]} {\n-\t.mbar.help add command -label \"About [appname]\" \\\n+\t.mbar.help add command -label [format [_ \"About %s\"] [appname]] \\\n \t\t-command do_about\n }\n \n@@ -1922,7 +1922,7 @@ if {[file isfile $doc_path]} {\n }\n \n if {$browser ne {}} {\n-\t.mbar.help add command -label {Online Documentation} \\\n+\t.mbar.help add command -label [_ {Online Documentation}] \\\n \t\t-command [list exec $browser $doc_url &]\n }\n unset browser doc_path doc_url\n@@ -2167,12 +2167,12 @@ label $ui_coml \\\n proc trace_commit_type {varname args} {\n \tglobal ui_coml commit_type\n \tswitch -glob -- $commit_type {\n-\tinitial       {set txt {Initial Commit Message:}}\n-\tamend         {set txt {Amended Commit Message:}}\n-\tamend-initial {set txt {Amended Initial Commit Message:}}\n-\tamend-merge   {set txt {Amended Merge Commit Message:}}\n-\tmerge         {set txt {Merge Commit Message:}}\n-\t*             {set txt {Commit Message:}}\n+\tinitial       {set txt [_ {Initial Commit Message:}]}\n+\tamend         {set txt [_ {Amended Commit Message:}]}\n+\tamend-initial {set txt [_ {Amended Initial Commit Message:}]}\n+\tamend-merge   {set txt [_ {Amended Merge Commit Message:}]}\n+\tmerge         {set txt [_ {Merge Commit Message:}]}\n+\t*             {set txt [_ {Commit Message:}]}\n \t}\n \t$ui_coml conf -text $txt\n }\n@@ -2201,23 +2201,23 @@ pack .vpane.lower.commarea.buffer -side left -fill y\n set ctxm .vpane.lower.commarea.buffer.ctxm\n menu $ctxm -tearoff 0\n $ctxm add command \\\n-\t-label {Cut} \\\n+\t-label [_ {Cut}] \\\n \t-command {tk_textCut $ui_comm}\n $ctxm add command \\\n-\t-label {Copy} \\\n+\t-label [_ {Copy}] \\\n \t-command {tk_textCopy $ui_comm}\n $ctxm add command \\\n-\t-label {Paste} \\\n+\t-label [_ {Paste}] \\\n \t-command {tk_textPaste $ui_comm}\n $ctxm add command \\\n-\t-label {Delete} \\\n+\t-label [_ {Delete}] \\\n \t-command {$ui_comm delete sel.first sel.last}\n $ctxm add separator\n $ctxm add command \\\n-\t-label {Select All} \\\n+\t-label [_ {Select All}] \\\n \t-command {focus $ui_comm;$ui_comm tag add sel 0.0 end}\n $ctxm add command \\\n-\t-label {Copy All} \\\n+\t-label [_ {Copy All}] \\\n \t-command {\n \t\t$ui_comm tag add sel 0.0 end\n \t\ttk_textCopy $ui_comm\n@@ -2225,7 +2225,7 @@ $ctxm add command \\\n \t}\n $ctxm add separator\n $ctxm add command \\\n-\t-label {Sign Off} \\\n+\t-label [_ {Sign Off}] \\\n \t-command do_signoff\n bind_button3 $ui_comm \"tk_popup $ctxm %X %Y\"\n \n@@ -2275,7 +2275,7 @@ pack .vpane.lower.diff.header.path -fill x\n set ctxm .vpane.lower.diff.header.ctxm\n menu $ctxm -tearoff 0\n $ctxm add command \\\n-\t-label {Copy} \\\n+\t-label [_ {Copy}] \\\n \t-command {\n \t\tclipboard clear\n \t\tclipboard append \\\n@@ -2343,19 +2343,19 @@ $ui_diff tag raise sel\n set ctxm .vpane.lower.diff.body.ctxm\n menu $ctxm -tearoff 0\n $ctxm add command \\\n-\t-label {Refresh} \\\n+\t-label [_ {Refresh}] \\\n \t-command reshow_diff\n lappend diff_actions [list $ctxm entryconf [$ctxm index last] -state]\n $ctxm add command \\\n-\t-label {Copy} \\\n+\t-label [_ {Copy}] \\\n \t-command {tk_textCopy $ui_diff}\n lappend diff_actions [list $ctxm entryconf [$ctxm index last] -state]\n $ctxm add command \\\n-\t-label {Select All} \\\n+\t-label [_ {Select All}] \\\n \t-command {focus $ui_diff;$ui_diff tag add sel 0.0 end}\n lappend diff_actions [list $ctxm entryconf [$ctxm index last] -state]\n $ctxm add command \\\n-\t-label {Copy All} \\\n+\t-label [_ {Copy All}] \\\n \t-command {\n \t\t$ui_diff tag add sel 0.0 end\n \t\ttk_textCopy $ui_diff\n@@ -2364,44 +2364,44 @@ $ctxm add command \\\n lappend diff_actions [list $ctxm entryconf [$ctxm index last] -state]\n $ctxm add separator\n $ctxm add command \\\n-\t-label {Apply/Reverse Hunk} \\\n+\t-label [_ {Apply/Reverse Hunk}] \\\n \t-command {apply_hunk $cursorX $cursorY}\n set ui_diff_applyhunk [$ctxm index last]\n lappend diff_actions [list $ctxm entryconf $ui_diff_applyhunk -state]\n $ctxm add separator\n $ctxm add command \\\n-\t-label {Decrease Font Size} \\\n+\t-label [_ {Decrease Font Size}] \\\n \t-command {incr_font_size font_diff -1}\n lappend diff_actions [list $ctxm entryconf [$ctxm index last] -state]\n $ctxm add command \\\n-\t-label {Increase Font Size} \\\n+\t-label [_ {Increase Font Size}] \\\n \t-command {incr_font_size font_diff 1}\n lappend diff_actions [list $ctxm entryconf [$ctxm index last] -state]\n $ctxm add separator\n $ctxm add command \\\n-\t-label {Show Less Context} \\\n+\t-label [_ {Show Less Context}] \\\n \t-command {if {$repo_config(gui.diffcontext) >= 1} {\n \t\tincr repo_config(gui.diffcontext) -1\n \t\treshow_diff\n \t}}\n lappend diff_actions [list $ctxm entryconf [$ctxm index last] -state]\n $ctxm add command \\\n-\t-label {Show More Context} \\\n+\t-label [_ {Show More Context}] \\\n \t-command {if {$repo_config(gui.diffcontext) < 99} {\n \t\tincr repo_config(gui.diffcontext)\n \t\treshow_diff\n \t}}\n lappend diff_actions [list $ctxm entryconf [$ctxm index last] -state]\n $ctxm add separator\n-$ctxm add command -label {Options...} \\\n+$ctxm add command -label [_ {Options...}] \\\n \t-command do_options\n bind_button3 $ui_diff \"\n \tset cursorX %x\n \tset cursorY %y\n \tif {\\$ui_index eq \\$current_diff_side} {\n-\t\t$ctxm entryconf $ui_diff_applyhunk -label {Unstage Hunk From Commit}\n+\t\t$ctxm entryconf $ui_diff_applyhunk -label [_ {Unstage Hunk From Commit}]\n \t} else {\n-\t\t$ctxm entryconf $ui_diff_applyhunk -label {Stage Hunk For Commit}\n+\t\t$ctxm entryconf $ui_diff_applyhunk -label [_ {Stage Hunk For Commit}]\n \t}\n \ttk_popup $ctxm %X %Y\n \"\n-- \n1.5.3.rc2.4.g726f9\n\n\n\n>From 3ff00ecdabb82448b95ad3b9e738441236c0eb11 Mon Sep 17 00:00:00 2001\nFrom: Christian Stimming <stimming@tuhh.de>\nDate: Thu, 19 Jul 2007 12:49:11 +0200\nSubject: [PATCH] Enclose strings in quotes, not in braces, so that xgettext finds them\n\n---\n git-gui/git-gui.sh |  104 ++++++++++++++++++++++++++--------------------------\n 1 files changed, 52 insertions(+), 52 deletions(-)\n\ndiff --git a/git-gui/git-gui.sh b/git-gui/git-gui.sh\nindex 45b7ef1..5eef35d 100755\n--- a/git-gui/git-gui.sh\n+++ b/git-gui/git-gui.sh\n@@ -1638,43 +1638,43 @@ if {[is_enabled transport]} {\n menu .mbar.repository\n \n .mbar.repository add command \\\n-\t-label [_ {Browse Current Branch}] \\\n+\t-label [_ \"Browse Current Branch\"] \\\n \t-command {browser::new $current_branch}\n trace add variable current_branch write \".mbar.repository entryconf [.mbar.repository index last] -label \\\"Browse \\$current_branch\\\" ;#\"\n .mbar.repository add separator\n \n .mbar.repository add command \\\n-\t-label [_ {Visualize Current Branch}]  \\\n+\t-label [_ \"Visualize Current Branch\"]  \\\n \t-command {do_gitk $current_branch}\n trace add variable current_branch write \".mbar.repository entryconf [.mbar.repository index last] -label \\\"Visualize \\$current_branch\\\" ;#\"\n .mbar.repository add command \\\n-\t-label [_ {Visualize All Branches}] \\\n+\t-label [_ \"Visualize All Branches\"] \\\n \t-command {do_gitk --all}\n .mbar.repository add separator\n \n if {[is_enabled multicommit]} {\n-\t.mbar.repository add command -label [_ {Database Statistics}] \\\n+\t.mbar.repository add command -label [_ \"Database Statistics\"] \\\n \t\t-command do_stats\n \n-\t.mbar.repository add command -label [_ {Compress Database}] \\\n+\t.mbar.repository add command -label [_ \"Compress Database\"] \\\n \t\t-command do_gc\n \n-\t.mbar.repository add command -label [_ {Verify Database}] \\\n+\t.mbar.repository add command -label [_ \"Verify Database\"] \\\n \t\t-command do_fsck_objects\n \n \t.mbar.repository add separator\n \n \tif {[is_Cygwin]} {\n \t\t.mbar.repository add command \\\n-\t\t\t-label [_ {Create Desktop Icon}] \\\n+\t\t\t-label [_ \"Create Desktop Icon\"] \\\n \t\t\t-command do_cygwin_shortcut\n \t} elseif {[is_Windows]} {\n \t\t.mbar.repository add command \\\n-\t\t\t-label [_ {Create Desktop Icon}] \\\n+\t\t\t-label [_ \"Create Desktop Icon\"] \\\n \t\t\t-command do_windows_shortcut\n \t} elseif {[is_MacOSX]} {\n \t\t.mbar.repository add command \\\n-\t\t\t-label [_ {Create Desktop Icon}] \\\n+\t\t\t-label [_ \"Create Desktop Icon\"] \\\n \t\t\t-command do_macosx_app\n \t}\n }\n@@ -1706,7 +1706,7 @@ menu .mbar.edit\n \t-command {catch {[focus] delete sel.first sel.last}} \\\n \t-accelerator Del\n .mbar.edit add separator\n-.mbar.edit add command -label [_ {Select All}] \\\n+.mbar.edit add command -label [_ \"Select All\"] \\\n \t-command {catch {[focus] tag add sel 0.0 end}} \\\n \t-accelerator $M1T-A\n \n@@ -1715,29 +1715,29 @@ menu .mbar.edit\n if {[is_enabled branch]} {\n \tmenu .mbar.branch\n \n-\t.mbar.branch add command -label [_ {Create...}] \\\n+\t.mbar.branch add command -label [_ \"Create...\"] \\\n \t\t-command branch_create::dialog \\\n \t\t-accelerator $M1T-N\n \tlappend disable_on_lock [list .mbar.branch entryconf \\\n \t\t[.mbar.branch index last] -state]\n \n-\t.mbar.branch add command -label [_ {Checkout...}] \\\n+\t.mbar.branch add command -label [_ \"Checkout...\"] \\\n \t\t-command branch_checkout::dialog \\\n \t\t-accelerator $M1T-O\n \tlappend disable_on_lock [list .mbar.branch entryconf \\\n \t\t[.mbar.branch index last] -state]\n \n-\t.mbar.branch add command -label [_ {Rename...}] \\\n+\t.mbar.branch add command -label [_ \"Rename...\"] \\\n \t\t-command branch_rename::dialog\n \tlappend disable_on_lock [list .mbar.branch entryconf \\\n \t\t[.mbar.branch index last] -state]\n \n-\t.mbar.branch add command -label [_ {Delete...}] \\\n+\t.mbar.branch add command -label [_ \"Delete...\"] \\\n \t\t-command branch_delete::dialog\n \tlappend disable_on_lock [list .mbar.branch entryconf \\\n \t\t[.mbar.branch index last] -state]\n \n-\t.mbar.branch add command -label [_ {Reset...}] \\\n+\t.mbar.branch add command -label [_ \"Reset...\"] \\\n \t\t-command merge::reset_hard\n \tlappend disable_on_lock [list .mbar.branch entryconf \\\n \t\t[.mbar.branch index last] -state]\n@@ -1749,7 +1749,7 @@ if {[is_enabled multicommit] || [is_enabled singlecommit]} {\n \tmenu .mbar.commit\n \n \t.mbar.commit add radiobutton \\\n-\t\t-label [_ {New Commit}] \\\n+\t\t-label [_ \"New Commit\"] \\\n \t\t-command do_select_commit_type \\\n \t\t-variable selected_commit_type \\\n \t\t-value new\n@@ -1757,7 +1757,7 @@ if {[is_enabled multicommit] || [is_enabled singlecommit]} {\n \t\t[list .mbar.commit entryconf [.mbar.commit index last] -state]\n \n \t.mbar.commit add radiobutton \\\n-\t\t-label [_ {Amend Last Commit}] \\\n+\t\t-label [_ \"Amend Last Commit\"] \\\n \t\t-command do_select_commit_type \\\n \t\t-variable selected_commit_type \\\n \t\t-value amend\n@@ -1772,30 +1772,30 @@ if {[is_enabled multicommit] || [is_enabled singlecommit]} {\n \tlappend disable_on_lock \\\n \t\t[list .mbar.commit entryconf [.mbar.commit index last] -state]\n \n-\t.mbar.commit add command -label [_ {Add To Commit}] \\\n+\t.mbar.commit add command -label [_ \"Add To Commit\"] \\\n \t\t-command do_add_selection\n \tlappend disable_on_lock \\\n \t\t[list .mbar.commit entryconf [.mbar.commit index last] -state]\n \n-\t.mbar.commit add command -label [_ {Add Existing To Commit}] \\\n+\t.mbar.commit add command -label [_ \"Add Existing To Commit\"] \\\n \t\t-command do_add_all \\\n \t\t-accelerator $M1T-I\n \tlappend disable_on_lock \\\n \t\t[list .mbar.commit entryconf [.mbar.commit index last] -state]\n \n-\t.mbar.commit add command -label [_ {Unstage From Commit}] \\\n+\t.mbar.commit add command -label [_ \"Unstage From Commit\"] \\\n \t\t-command do_unstage_selection\n \tlappend disable_on_lock \\\n \t\t[list .mbar.commit entryconf [.mbar.commit index last] -state]\n \n-\t.mbar.commit add command -label [_ {Revert Changes}] \\\n+\t.mbar.commit add command -label [_ \"Revert Changes\"] \\\n \t\t-command do_revert_selection\n \tlappend disable_on_lock \\\n \t\t[list .mbar.commit entryconf [.mbar.commit index last] -state]\n \n \t.mbar.commit add separator\n \n-\t.mbar.commit add command -label [_ {Sign Off}] \\\n+\t.mbar.commit add command -label [_ \"Sign Off\"] \\\n \t\t-command do_signoff \\\n \t\t-accelerator $M1T-S\n \n@@ -1810,11 +1810,11 @@ if {[is_enabled multicommit] || [is_enabled singlecommit]} {\n #\n if {[is_enabled branch]} {\n \tmenu .mbar.merge\n-\t.mbar.merge add command -label [_ {Local Merge...}] \\\n+\t.mbar.merge add command -label [_ \"Local Merge...\"] \\\n \t\t-command merge::dialog\n \tlappend disable_on_lock \\\n \t\t[list .mbar.merge entryconf [.mbar.merge index last] -state]\n-\t.mbar.merge add command -label [_ {Abort Merge...}] \\\n+\t.mbar.merge add command -label [_ \"Abort Merge...\"] \\\n \t\t-command merge::reset_hard\n \tlappend disable_on_lock \\\n \t\t[list .mbar.merge entryconf [.mbar.merge index last] -state]\n@@ -1827,10 +1827,10 @@ if {[is_enabled transport]} {\n \tmenu .mbar.fetch\n \n \tmenu .mbar.push\n-\t.mbar.push add command -label [_ {Push...}] \\\n+\t.mbar.push add command -label [_ \"Push...\"] \\\n \t\t-command do_push_anywhere \\\n \t\t-accelerator $M1T-P\n-\t.mbar.push add command -label [_ {Delete...}] \\\n+\t.mbar.push add command -label [_ \"Delete...\"] \\\n \t\t-command remote_branch_delete::dialog\n }\n \n@@ -1848,7 +1848,7 @@ if {[is_MacOSX]} {\n \t# -- Edit Menu\n \t#\n \t.mbar.edit add separator\n-\t.mbar.edit add command -label [_ {Options...}] \\\n+\t.mbar.edit add command -label [_ \"Options...\"] \\\n \t\t-command do_options\n \n \t# -- Tools Menu\n@@ -1922,7 +1922,7 @@ if {[file isfile $doc_path]} {\n }\n \n if {$browser ne {}} {\n-\t.mbar.help add command -label [_ {Online Documentation}] \\\n+\t.mbar.help add command -label [_ \"Online Documentation\"] \\\n \t\t-command [list exec $browser $doc_url &]\n }\n unset browser doc_path doc_url\n@@ -2167,12 +2167,12 @@ label $ui_coml \\\n proc trace_commit_type {varname args} {\n \tglobal ui_coml commit_type\n \tswitch -glob -- $commit_type {\n-\tinitial       {set txt [_ {Initial Commit Message:}]}\n-\tamend         {set txt [_ {Amended Commit Message:}]}\n-\tamend-initial {set txt [_ {Amended Initial Commit Message:}]}\n-\tamend-merge   {set txt [_ {Amended Merge Commit Message:}]}\n-\tmerge         {set txt [_ {Merge Commit Message:}]}\n-\t*             {set txt [_ {Commit Message:}]}\n+\tinitial       {set txt [_ \"Initial Commit Message:\"]}\n+\tamend         {set txt [_ \"Amended Commit Message:\"]}\n+\tamend-initial {set txt [_ \"Amended Initial Commit Message:\"]}\n+\tamend-merge   {set txt [_ \"Amended Merge Commit Message:\"]}\n+\tmerge         {set txt [_ \"Merge Commit Message:\"]}\n+\t*             {set txt [_ \"Commit Message:\"]}\n \t}\n \t$ui_coml conf -text $txt\n }\n@@ -2201,23 +2201,23 @@ pack .vpane.lower.commarea.buffer -side left -fill y\n set ctxm .vpane.lower.commarea.buffer.ctxm\n menu $ctxm -tearoff 0\n $ctxm add command \\\n-\t-label [_ {Cut}] \\\n+\t-label [_ Cut] \\\n \t-command {tk_textCut $ui_comm}\n $ctxm add command \\\n-\t-label [_ {Copy}] \\\n+\t-label [_ Copy] \\\n \t-command {tk_textCopy $ui_comm}\n $ctxm add command \\\n-\t-label [_ {Paste}] \\\n+\t-label [_ Paste] \\\n \t-command {tk_textPaste $ui_comm}\n $ctxm add command \\\n-\t-label [_ {Delete}] \\\n+\t-label [_ Delete] \\\n \t-command {$ui_comm delete sel.first sel.last}\n $ctxm add separator\n $ctxm add command \\\n-\t-label [_ {Select All}] \\\n+\t-label [_ \"Select All\"] \\\n \t-command {focus $ui_comm;$ui_comm tag add sel 0.0 end}\n $ctxm add command \\\n-\t-label [_ {Copy All}] \\\n+\t-label [_ \"Copy All\"] \\\n \t-command {\n \t\t$ui_comm tag add sel 0.0 end\n \t\ttk_textCopy $ui_comm\n@@ -2225,7 +2225,7 @@ $ctxm add command \\\n \t}\n $ctxm add separator\n $ctxm add command \\\n-\t-label [_ {Sign Off}] \\\n+\t-label [_ \"Sign Off\"] \\\n \t-command do_signoff\n bind_button3 $ui_comm \"tk_popup $ctxm %X %Y\"\n \n@@ -2275,7 +2275,7 @@ pack .vpane.lower.diff.header.path -fill x\n set ctxm .vpane.lower.diff.header.ctxm\n menu $ctxm -tearoff 0\n $ctxm add command \\\n-\t-label [_ {Copy}] \\\n+\t-label [_ Copy] \\\n \t-command {\n \t\tclipboard clear\n \t\tclipboard append \\\n@@ -2343,19 +2343,19 @@ $ui_diff tag raise sel\n set ctxm .vpane.lower.diff.body.ctxm\n menu $ctxm -tearoff 0\n $ctxm add command \\\n-\t-label [_ {Refresh}] \\\n+\t-label [_ Refresh] \\\n \t-command reshow_diff\n lappend diff_actions [list $ctxm entryconf [$ctxm index last] -state]\n $ctxm add command \\\n-\t-label [_ {Copy}] \\\n+\t-label [_ Copy] \\\n \t-command {tk_textCopy $ui_diff}\n lappend diff_actions [list $ctxm entryconf [$ctxm index last] -state]\n $ctxm add command \\\n-\t-label [_ {Select All}] \\\n+\t-label [_ \"Select All\"] \\\n \t-command {focus $ui_diff;$ui_diff tag add sel 0.0 end}\n lappend diff_actions [list $ctxm entryconf [$ctxm index last] -state]\n $ctxm add command \\\n-\t-label [_ {Copy All}] \\\n+\t-label [_ \"Copy All\"] \\\n \t-command {\n \t\t$ui_diff tag add sel 0.0 end\n \t\ttk_textCopy $ui_diff\n@@ -2364,36 +2364,36 @@ $ctxm add command \\\n lappend diff_actions [list $ctxm entryconf [$ctxm index last] -state]\n $ctxm add separator\n $ctxm add command \\\n-\t-label [_ {Apply/Reverse Hunk}] \\\n+\t-label [_ \"Apply/Reverse Hunk\"] \\\n \t-command {apply_hunk $cursorX $cursorY}\n set ui_diff_applyhunk [$ctxm index last]\n lappend diff_actions [list $ctxm entryconf $ui_diff_applyhunk -state]\n $ctxm add separator\n $ctxm add command \\\n-\t-label [_ {Decrease Font Size}] \\\n+\t-label [_ \"Decrease Font Size\"] \\\n \t-command {incr_font_size font_diff -1}\n lappend diff_actions [list $ctxm entryconf [$ctxm index last] -state]\n $ctxm add command \\\n-\t-label [_ {Increase Font Size}] \\\n+\t-label [_ \"Increase Font Size\"] \\\n \t-command {incr_font_size font_diff 1}\n lappend diff_actions [list $ctxm entryconf [$ctxm index last] -state]\n $ctxm add separator\n $ctxm add command \\\n-\t-label [_ {Show Less Context}] \\\n+\t-label [_ \"Show Less Context\"] \\\n \t-command {if {$repo_config(gui.diffcontext) >= 1} {\n \t\tincr repo_config(gui.diffcontext) -1\n \t\treshow_diff\n \t}}\n lappend diff_actions [list $ctxm entryconf [$ctxm index last] -state]\n $ctxm add command \\\n-\t-label [_ {Show More Context}] \\\n+\t-label [_ \"Show More Context\"] \\\n \t-command {if {$repo_config(gui.diffcontext) < 99} {\n \t\tincr repo_config(gui.diffcontext)\n \t\treshow_diff\n \t}}\n lappend diff_actions [list $ctxm entryconf [$ctxm index last] -state]\n $ctxm add separator\n-$ctxm add command -label [_ {Options...}] \\\n+$ctxm add command -label [_ \"Options...\"] \\\n \t-command do_options\n bind_button3 $ui_diff \"\n \tset cursorX %x\n-- \n1.5.3.rc2.4.g726f9\n\n\n\n>From 9b7ef0f5d5627e65e5ab354cf99c8939770416d9 Mon Sep 17 00:00:00 2001\nFrom: Christian Stimming <stimming@tuhh.de>\nDate: Thu, 19 Jul 2007 12:50:19 +0200\nSubject: [PATCH] Initial German translation for testing of i18n.\n\n---\n git-gui/po/de.po |  249 ++++++++++++++++++++++++++++++++++++++++++++++++++++++\n 1 files changed, 249 insertions(+), 0 deletions(-)\n create mode 100644 git-gui/po/de.po\n\ndiff --git a/git-gui/po/de.po b/git-gui/po/de.po\nnew file mode 100644\nindex 0000000..7a74329\n--- /dev/null\n+++ b/git-gui/po/de.po\n@@ -0,0 +1,249 @@\n+# Translation of git-gui to German.\n+# Copyright (C) 2007 Linux Thorvalds\n+# This file is distributed under the same license as the git package.\n+# Christian Stimming <stimming@tuhh.de>, 2007\n+#\n+msgid \"\"\n+msgstr \"\"\n+\"Project-Id-Version: git-gui\\n\"\n+\"Report-Msgid-Bugs-To: \\n\"\n+\"POT-Creation-Date: 2007-07-18 18:27+0200\\n\"\n+\"PO-Revision-Date: 2007-07-19 11:45+0200\\n\"\n+\"Last-Translator: Christian Stimming <stimming@tuhh.de>\\n\"\n+\"Language-Team: German\\n\"\n+\"MIME-Version: 1.0\\n\"\n+\"Content-Type: text/plain; charset=UTF-8\\n\"\n+\"Content-Transfer-Encoding: 8bit\\n\"\n+\n+#: git-gui.sh:1622\n+msgid \"Repository\"\n+msgstr \"\"\n+\n+#: git-gui.sh:1623\n+msgid \"Edit\"\n+msgstr \"Bearbeiten\"\n+\n+#: git-gui.sh:1625\n+msgid \"Branch\"\n+msgstr \"\"\n+\n+#: git-gui.sh:1628 git-gui.sh:1803\n+msgid \"Commit\"\n+msgstr \"\"\n+\n+#: git-gui.sh:1631\n+msgid \"Merge\"\n+msgstr \"\"\n+\n+#: git-gui.sh:1632\n+msgid \"Fetch\"\n+msgstr \"\"\n+\n+#: git-gui.sh:1633\n+msgid \"Push\"\n+msgstr \"\"\n+\n+#: git-gui.sh:1642\n+msgid \"Browse Current Branch\"\n+msgstr \"\"\n+\n+#: git-gui.sh:1648\n+msgid \"Visualize Current Branch\"\n+msgstr \"\"\n+\n+#: git-gui.sh:1652\n+msgid \"Visualize All Branches\"\n+msgstr \"\"\n+\n+#: git-gui.sh:1657\n+msgid \"Database Statistics\"\n+msgstr \"\"\n+\n+#: git-gui.sh:1660\n+msgid \"Compress Database\"\n+msgstr \"\"\n+\n+#: git-gui.sh:1663\n+msgid \"Verify Database\"\n+msgstr \"\"\n+\n+#: git-gui.sh:1670 git-gui.sh:1674 git-gui.sh:1678\n+msgid \"Create Desktop Icon\"\n+msgstr \"\"\n+\n+#: git-gui.sh:1683\n+msgid \"Quit\"\n+msgstr \"Beenden\"\n+\n+#: git-gui.sh:1690\n+msgid \"Undo\"\n+msgstr \"Rückgängig\"\n+\n+#: git-gui.sh:1693\n+msgid \"Redo\"\n+msgstr \"\"\n+\n+#: git-gui.sh:1697 git-gui.sh:2205\n+msgid \"Cut\"\n+msgstr \"Ausschneiden\"\n+\n+#: git-gui.sh:1700 git-gui.sh:2208 git-gui.sh:2279 git-gui.sh:2351\n+msgid \"Copy\"\n+msgstr \"Kopieren\"\n+\n+#: git-gui.sh:1703 git-gui.sh:2211\n+msgid \"Paste\"\n+msgstr \"Einfügen\"\n+\n+#: git-gui.sh:1706 git-gui.sh:2214\n+msgid \"Delete\"\n+msgstr \"Löschen\"\n+\n+#: git-gui.sh:1710 git-gui.sh:2218 git-gui.sh:2355\n+msgid \"Select All\"\n+msgstr \"\"\n+\n+#: git-gui.sh:1719\n+msgid \"Create...\"\n+msgstr \"\"\n+\n+#: git-gui.sh:1725\n+msgid \"Checkout...\"\n+msgstr \"\"\n+\n+#: git-gui.sh:1731\n+msgid \"Rename...\"\n+msgstr \"\"\n+\n+#: git-gui.sh:1736 git-gui.sh:1834\n+msgid \"Delete...\"\n+msgstr \"Löschen...\"\n+\n+#: git-gui.sh:1741\n+msgid \"Reset...\"\n+msgstr \"\"\n+\n+#: git-gui.sh:1753\n+msgid \"New Commit\"\n+msgstr \"\"\n+\n+#: git-gui.sh:1761\n+msgid \"Amend Last Commit\"\n+msgstr \"\"\n+\n+#: git-gui.sh:1770\n+msgid \"Rescan\"\n+msgstr \"Neu laden\"\n+\n+#: git-gui.sh:1776\n+msgid \"Add To Commit\"\n+msgstr \"\"\n+\n+#: git-gui.sh:1781\n+msgid \"Add Existing To Commit\"\n+msgstr \"\"\n+\n+#: git-gui.sh:1787\n+msgid \"Unstage From Commit\"\n+msgstr \"\"\n+\n+#: git-gui.sh:1792\n+msgid \"Revert Changes\"\n+msgstr \"\"\n+\n+#: git-gui.sh:1799 git-gui.sh:2229\n+msgid \"Sign Off\"\n+msgstr \"\"\n+\n+#: git-gui.sh:1814\n+msgid \"Local Merge...\"\n+msgstr \"\"\n+\n+#: git-gui.sh:1818\n+msgid \"Abort Merge...\"\n+msgstr \"\"\n+\n+#: git-gui.sh:1831\n+msgid \"Push...\"\n+msgstr \"\"\n+\n+#: git-gui.sh:1841\n+msgid \"Apple\"\n+msgstr \"Apple\"\n+\n+#: git-gui.sh:1844 git-gui.sh:1889\n+#, tcl-format\n+msgid \"About %s\"\n+msgstr \"\"\n+\n+#: git-gui.sh:1846 git-gui.sh:1852 git-gui.sh:2397\n+msgid \"Options...\"\n+msgstr \"\"\n+\n+#: git-gui.sh:1874\n+msgid \"Tools\"\n+msgstr \"Werkzeuge\"\n+\n+#: git-gui.sh:1876\n+msgid \"Migrate\"\n+msgstr \"\"\n+\n+#: git-gui.sh:1885\n+msgid \"Help\"\n+msgstr \"Hilfe\"\n+\n+#: git-gui.sh:1926\n+msgid \"Online Documentation\"\n+msgstr \"\"\n+\n+#: git-gui.sh:2171\n+msgid \"Initial Commit Message:\"\n+msgstr \"\"\n+\n+#: git-gui.sh:2172\n+msgid \"Amended Commit Message:\"\n+msgstr \"\"\n+\n+#: git-gui.sh:2173\n+msgid \"Amended Initial Commit Message:\"\n+msgstr \"\"\n+\n+#: git-gui.sh:2174\n+msgid \"Amended Merge Commit Message:\"\n+msgstr \"\"\n+\n+#: git-gui.sh:2175\n+msgid \"Merge Commit Message:\"\n+msgstr \"\"\n+\n+#: git-gui.sh:2176\n+msgid \"Commit Message:\"\n+msgstr \"\"\n+\n+#: git-gui.sh:2221 git-gui.sh:2359\n+msgid \"Copy All\"\n+msgstr \"Alle kopieren\"\n+\n+#: git-gui.sh:2347\n+msgid \"Refresh\"\n+msgstr \"Aktualisieren\"\n+\n+#: git-gui.sh:2368\n+msgid \"Apply/Reverse Hunk\"\n+msgstr \"\"\n+\n+#: git-gui.sh:2374\n+msgid \"Decrease Font Size\"\n+msgstr \"Schriftgröße verkleinern\"\n+\n+#: git-gui.sh:2378\n+msgid \"Increase Font Size\"\n+msgstr \"Schriftgröße vergrößern\"\n+\n+#: git-gui.sh:2383\n+msgid \"Show Less Context\"\n+msgstr \"\"\n+\n+#: git-gui.sh:2390\n+msgid \"Show More Context\"\n+msgstr \"\"\n-- \n1.5.3.rc2.4.g726f9\n\n\n\n>From a91dc11906f6ced938dc79bded2fa46fcc147524 Mon Sep 17 00:00:00 2001\nFrom: Christian Stimming <stimming@tuhh.de>\nDate: Thu, 19 Jul 2007 12:50:32 +0200\nSubject: [PATCH] Makefile rules for message catalog generation and installation.\n\n---\n git-gui/Makefile |   17 ++++++++++++++++-\n 1 files changed, 16 insertions(+), 1 deletions(-)\n\ndiff --git a/git-gui/Makefile b/git-gui/Makefile\nindex 1bac6fe..f6a6ce3 100644\n--- a/git-gui/Makefile\n+++ b/git-gui/Makefile\n@@ -103,6 +103,19 @@ $(patsubst %.sh,%,$(SCRIPT_SH)) : % : %.sh\n $(GITGUI_BUILT_INS): git-gui\n \t$(QUIET_BUILT_IN)rm -f $@ && ln git-gui $@\n \n+XGETTEXT   ?= xgettext\n+msgsdir    ?= $(libdir)/msgs\n+msgsdir_SQ  = $(subst ','\\'',$(msgsdir))\n+PO_TEMPLATE = po/git-gui.pot\n+ALL_LINGUAS = de\n+\n+$(PO_TEMPLATE): $(SCRIPT_SH) $(ALL_LIBFILES)\n+\t$(XGETTEXT) -k_ -LTcl -o $@ $(SCRIPT_SH) $(ALL_LIBFILES)\n+update-po:: $(PO_TEMPLATE)\n+\t( cd po ; for A in *.po ; do echo Updating $${A} ; msgmerge -U $${A} ../$(PO_TEMPLATE) ; done )\n+catalogs:: $(PO_TEMPLATE)\n+\t( cd po ; for A in $(ALL_LINGUAS) ; do echo Generating catalog $${A} ; msgfmt --statistics --tcl $${A}.po -l $${A} -d . ; done )\n+\n lib/tclIndex: $(ALL_LIBFILES)\n \t$(QUIET_INDEX)if echo \\\n \t  $(foreach p,$(PRELOAD_FILES),source $p\\;) \\\n@@ -136,7 +149,7 @@ GIT-GUI-VARS: .FORCE-GIT-GUI-VARS\n \t\techo 1>$@ \"$$VARS\"; \\\n \tfi\n \n-all:: $(ALL_PROGRAMS) lib/tclIndex\n+all:: $(ALL_PROGRAMS) lib/tclIndex catalogs\n \n install: all\n \t$(QUIET)$(INSTALL_D0)'$(DESTDIR_SQ)$(gitexecdir_SQ)' $(INSTALL_D1)\n@@ -145,6 +158,8 @@ install: all\n \t$(QUIET)$(INSTALL_D0)'$(DESTDIR_SQ)$(libdir_SQ)' $(INSTALL_D1)\n \t$(QUIET)$(INSTALL_R0)lib/tclIndex $(INSTALL_R1) '$(DESTDIR_SQ)$(libdir_SQ)'\n \t$(QUIET)$(foreach p,$(ALL_LIBFILES), $(INSTALL_R0)$p $(INSTALL_R1) '$(DESTDIR_SQ)$(libdir_SQ)' &&) true\n+\t$(QUIET)$(INSTALL_D0)'$(DESTDIR_SQ)$(msgsdir_SQ)' $(INSTALL_D1)\n+\t$(QUIET)$(foreach p,$(ALL_LINGUAS), $(INSTALL_R0)po/$p.msg $(INSTALL_R1) '$(DESTDIR_SQ)$(msgsdir_SQ)' &&) true\n \n dist-version:\n \t@mkdir -p $(TARDIR)\n-- \n1.5.3.rc2.4.g726f9\n\n"},{"id":"47853","messageId":"Pine.LNX.4.64.0707191323510.14781@racer.site","threadId":"9106","inReplyTo":"20070719125657.8utk85ynuow4ow48@webmail.tu-harburg.de","subject":"Re: [PATCH] Internationalization of git-gui","fromName":"Johannes Schindelin","fromEmail":"johannes.schindelin@gmx.de","sentAt":"2007-07-19T12:25:18Z","receivedAt":"2007-07-19T12:25:18Z","isPatch":true,"sender":{"key":"johannes.schindelin@gmx.de","avatar":"https://avatars.githubusercontent.com/u/127790?v=4"},"body":"Hi,\n\nOn Thu, 19 Jul 2007, Christian Stimming wrote:\n\n> Does this implementation look okay?\n\nThis is valuable work, but unfortunately, it does not follow the \nrecommendation in Documentation/SubmittingPatches at all.\n\nFor starters, please send the patches inlined, one per mail.  And you \nmight want to Cc the maintainer of git-gui (Shawn Pearce), too...\n\nCiao,\nDscho\n"},{"id":"47922","messageId":"20070720045510.GL32566@spearce.org","threadId":"9106","inReplyTo":"Pine.LNX.4.64.0707191323510.14781@racer.site","subject":"Re: [PATCH] Internationalization of git-gui","fromName":"Shawn O. Pearce","fromEmail":"spearce@spearce.org","sentAt":"2007-07-20T04:55:10Z","receivedAt":"2007-07-20T04:55:10Z","isPatch":true,"sender":{"key":"spearce@spearce.org","avatar":"https://avatars.githubusercontent.com/u/34844?v=4"},"body":"Johannes Schindelin <Johannes.Schindelin@gmx.de> wrote:\n> On Thu, 19 Jul 2007, Christian Stimming wrote:\n> \n> > Does this implementation look okay?\n> \n> This is valuable work, but unfortunately, it does not follow the \n> recommendation in Documentation/SubmittingPatches at all.\n> \n> For starters, please send the patches inlined, one per mail.  And you \n> might want to Cc the maintainer of git-gui (Shawn Pearce), too...\n\nI agree that internationalization of git-gui is worth doing.\nI've thought about working on it, but haven't yet because nobody\nelse has seemed interested in having it done.  Apparently someone\nis, so patches towards that end are most welcome.\n\n-- \nShawn.\n"},{"id":"47975","messageId":"4d8e3fd30707201032m1f9a0fe2jc74d2bea6c55f6ab@mail.gmail.com","threadId":"9106","inReplyTo":"20070720045510.GL32566@spearce.org","subject":"Re: [PATCH] Internationalization of git-gui","fromName":"Paolo Ciarrocchi","fromEmail":"paolo.ciarrocchi@gmail.com","sentAt":"2007-07-20T17:32:24Z","receivedAt":"2007-07-20T17:32:24Z","isPatch":true,"sender":{"key":"paolo.ciarrocchi@gmail.com","avatar":null},"body":"On 7/20/07, Shawn O. Pearce <spearce@spearce.org> wrote:\n> Johannes Schindelin <Johannes.Schindelin@gmx.de> wrote:\n> > On Thu, 19 Jul 2007, Christian Stimming wrote:\n> >\n> > > Does this implementation look okay?\n> >\n> > This is valuable work, but unfortunately, it does not follow the\n> > recommendation in Documentation/SubmittingPatches at all.\n> >\n> > For starters, please send the patches inlined, one per mail.  And you\n> > might want to Cc the maintainer of git-gui (Shawn Pearce), too...\n>\n> I agree that internationalization of git-gui is worth doing.\n> I've thought about working on it, but haven't yet because nobody\n> else has seemed interested in having it done.  Apparently someone\n> is, so patches towards that end are most welcome.\n\nHi Shawn,\nI volunteer to translate all the git-gui messages in Italian.\n\nJust let me if you are interested and please give me an hint on how to\nproduce the translation so that you can incorporate it.\n\nThanks.\n\nRegards,\n\n-- \nPaolo\n\"Tutto cio' che merita di essere fatto,merita di essere fatto bene\"\nPhilip Stanhope IV conte di Chesterfield\n"},{"id":"47979","messageId":"7vodi7vtct.fsf@assigned-by-dhcp.cox.net","threadId":"9106","inReplyTo":"4d8e3fd30707201032m1f9a0fe2jc74d2bea6c55f6ab@mail.gmail.com","subject":"Re: [PATCH] Internationalization of git-gui","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2007-07-20T18:10:42Z","receivedAt":"2007-07-20T18:10:42Z","isPatch":true,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"\"Paolo Ciarrocchi\" <paolo.ciarrocchi@gmail.com> writes:\n\n> I volunteer to translate all the git-gui messages in Italian.\n>\n> Just let me if you are interested and please give me an hint on how to\n> produce the translation so that you can incorporate it.\n\nAh, am I expected to volunteer for Japanese part?\n\nUnless yashi, yoshifuji, or nanako3 volunteer, although I do not\nmind doing that myself, that is (if there are any Japanese\npeople I forgot, I apologize).  I wonder how many people outside\nEnglish zone are regularly on the list...\n"},{"id":"47984","messageId":"Pine.LNX.4.64.0707201937080.14781@racer.site","threadId":"9106","inReplyTo":"7vodi7vtct.fsf@assigned-by-dhcp.cox.net","subject":"Re: [PATCH] Internationalization of git-gui","fromName":"Johannes Schindelin","fromEmail":"johannes.schindelin@gmx.de","sentAt":"2007-07-20T18:38:27Z","receivedAt":"2007-07-20T18:38:27Z","isPatch":true,"sender":{"key":"johannes.schindelin@gmx.de","avatar":"https://avatars.githubusercontent.com/u/127790?v=4"},"body":"Hi,\n\nOn Fri, 20 Jul 2007, Junio C Hamano wrote:\n\n> \"Paolo Ciarrocchi\" <paolo.ciarrocchi@gmail.com> writes:\n> \n> > I volunteer to translate all the git-gui messages in Italian.\n> >\n> > Just let me if you are interested and please give me an hint on how to\n> > produce the translation so that you can incorporate it.\n> \n> Ah, am I expected to volunteer for Japanese part?\n> \n> Unless yashi, yoshifuji, or nanako3 volunteer, although I do not\n> mind doing that myself, that is (if there are any Japanese\n> people I forgot, I apologize).\n\nAccording to http://en.wikipedia.org/wiki/Japan, you forgot roughly \n127,433,490 people ;-)\n\n> I wonder how many people outside English zone are regularly on the \n> list...\n\nHere is one, but Christian already volunteered for the German part, I \nunderstand...\n\nCiao,\nDscho\n"},{"id":"47986","messageId":"4d8e3fd30707201147l1f1797f8vefc712b2d3ae0f19@mail.gmail.com","threadId":"9106","inReplyTo":"Pine.LNX.4.64.0707201937080.14781@racer.site","subject":"Re: [PATCH] Internationalization of git-gui","fromName":"Paolo Ciarrocchi","fromEmail":"paolo.ciarrocchi@gmail.com","sentAt":"2007-07-20T18:47:48Z","receivedAt":"2007-07-20T18:47:48Z","isPatch":true,"sender":{"key":"paolo.ciarrocchi@gmail.com","avatar":null},"body":"On 7/20/07, Johannes Schindelin <Johannes.Schindelin@gmx.de> wrote:\n[...]\n> > I wonder how many people outside English zone are regularly on the\n> > list...\n\nI tried to verify the results of the survey I sent out last year:\n    http://git.or.cz/gitwiki/GitSurvey\nunfortunately that page seems to be full of spam.\n\nCiao,\n-- \nPaolo\n"},{"id":"47987","messageId":"20070720190209.GA22964@uranus.ravnborg.org","threadId":"9106","inReplyTo":"7vodi7vtct.fsf@assigned-by-dhcp.cox.net","subject":"Re: [PATCH] Internationalization of git-gui","fromName":"Sam Ravnborg","fromEmail":"sam@ravnborg.org","sentAt":"2007-07-20T19:02:09Z","receivedAt":"2007-07-20T19:02:09Z","isPatch":true,"sender":{"key":"sam@ravnborg.org","avatar":"https://gravatar.com/avatar/168a912606ed0742d840bb365e3cc21db390c36531a58341dc7a069cc1f15f62?d=mp&s=160"},"body":"On Fri, Jul 20, 2007 at 11:10:42AM -0700, Junio C Hamano wrote:\n> I wonder how many people outside\n> English zone are regularly on the list...\n\n>From a scandinavian country (Denmark) but really I would never use\na translated version. So some decent amount of pressure would\nbe needed to convince me to add danish :-)\n\n\tSam\n"},{"id":"47988","messageId":"Pine.LNX.4.64.0707202005090.14781@racer.site","threadId":"9106","inReplyTo":"4d8e3fd30707201147l1f1797f8vefc712b2d3ae0f19@mail.gmail.com","subject":"Re: [PATCH] Internationalization of git-gui","fromName":"Johannes Schindelin","fromEmail":"johannes.schindelin@gmx.de","sentAt":"2007-07-20T19:06:03Z","receivedAt":"2007-07-20T19:06:03Z","isPatch":true,"sender":{"key":"johannes.schindelin@gmx.de","avatar":"https://avatars.githubusercontent.com/u/127790?v=4"},"body":"Hi,\n\nOn Fri, 20 Jul 2007, Paolo Ciarrocchi wrote:\n\n> On 7/20/07, Johannes Schindelin <Johannes.Schindelin@gmx.de> wrote:\n> [...]\n> > > I wonder how many people outside English zone are regularly on the\n> > > list...\n> \n> I tried to verify the results of the survey I sent out last year:\n>    http://git.or.cz/gitwiki/GitSurvey\n> unfortunately that page seems to be full of spam.\n\nNo longer.  FWIW you can do it yourself: if you are logged in, there is a \n\"restore\" link to the far right on the \"Info\" page of every wiki page.\n\nHth,\nDscho\n"},{"id":"47989","messageId":"20070720191650.GA7334@xguan-laptop","threadId":"9106","inReplyTo":"7vodi7vtct.fsf@assigned-by-dhcp.cox.net","subject":"Re: [PATCH] Internationalization of git-gui","fromName":"Xudong Guan","fromEmail":"xudong.guan@gmail.com","sentAt":"2007-07-20T19:16:50Z","receivedAt":"2007-07-20T19:16:50Z","isPatch":true,"sender":{"key":"xudong.guan@gmail.com","avatar":null},"body":"On 11:10 Fri 20 Jul     , Junio C Hamano wrote:\n> I wonder how many people outside\n> English zone are regularly on the list...\n\nI am a Chinese, subscribed today.\n\nXudong\n"},{"id":"48025","messageId":"200707210815.l6L8F2Da032066@mi0.bluebottle.com","threadId":"9106","inReplyTo":"7vodi7vtct.fsf@assigned-by-dhcp.cox.net","subject":"Re: [PATCH] Internationalization of git-gui","fromName":"しらいしななこ","fromEmail":"nanako3@bluebottle.com","sentAt":"2007-07-21T08:12:11Z","receivedAt":"2007-07-21T08:12:11Z","isPatch":true,"sender":{"key":"nanako3@lavabit.com","avatar":"https://gravatar.com/avatar/3777b9e201c5883a62b1a6fdf7c53f2d712d1d80989146063ea861e33aad72a8?d=mp&s=160"},"body":"Quoting Junio C Hamano <gitster@pobox.com>:\n\n> \"Paolo Ciarrocchi\" <paolo.ciarrocchi@gmail.com> writes:\n>\n>> I volunteer to translate all the git-gui messages in Italian.\n>>\n>> Just let me if you are interested and please give me an hint on how to\n>> produce the translation so that you can incorporate it.\n>\n> Ah, am I expected to volunteer for Japanese part?\n>\n> Unless yashi, yoshifuji, or nanako3 volunteer, although I do not\n> mind doing that myself, that is (if there are any Japanese\n> people I forgot, I apologize).  I wonder how many people outside\n> English zone are regularly on the list...\n\nI can help.  What's involved?\n\n-- \nNanako Shiraishi\nhttp://ivory.ap.teacup.com/nanako3/\n\n----------------------------------------------------------------------\nFree pop3 email with a spam filter.\nhttp://www.bluebottle.com/tag/5\n"},{"id":"48026","messageId":"7vr6n2upwv.fsf@assigned-by-dhcp.cox.net","threadId":"9106","inReplyTo":"200707210815.l6L8F2Da032066@mi0.bluebottle.com","subject":"Re: [PATCH] Internationalization of git-gui","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2007-07-21T08:22:40Z","receivedAt":"2007-07-21T08:22:40Z","isPatch":true,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"しらいしななこ  <nanako3@bluebottle.com> writes:\n\n> Quoting Junio C Hamano <gitster@pobox.com>:\n>\n>> Ah, am I expected to volunteer for Japanese part?\n>>\n>> Unless yashi, yoshifuji, or nanako3 volunteer, although I do not\n>> mind doing that myself,...\n>\n> I can help.  What's involved?\n\nWonderful.\n\nAs Johannes announced the 'mob' stuff, I think it would be\neasiest to work there as others --- for this type of work, there\nprobably won't be much stepping on each other's toes involved as\nlong as there are not more than one translator per language.\n\nWhat's involved to get a new language 'xy' started is roughly:\n\n - Run 'make' once, to get po/git-gui.pot generated;\n\n - Copy po/git-gui.pot to po/xy.po;\n\n - Update the placeholder strings at the beginning of the\n   po/xy.po file appropriately.\n\n - Add 'xy' to the list of languages to ALL_LINGUAS list in the\n   Makefile.\n\nAfter that, add translations to the (initially empty) string on\nthe lines that begin with 'msgstr'.  Set of msgid's need to be\nkept in sync with the source as the translated software evolve,\nbut gettext framework hopefully will take care of most of the\nchore.\n\nI'll get on the 'mob' bandwagon and try to push out something\nlike the attached patch, so that you do not necessarily have to\nhave the whole gettext toolchain.\n\n-- >8 --\n\nThis gets the ball started for Japanese translation, but as I am\nlazy, I only translated three words.  I took credit by placing\nmy name on the \"Last-Translator\" line, but shifted most of the\nremaining work to Nana, who showed interest on the list, by\nnaming her at the beginnign of the file ;-)\n\nSigned-off-by: Junio C Hamano <gitster@pobox.com>\n---\n Makefile |    2 +-\n po/ja.po |  250 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++\n 2 files changed, 251 insertions(+), 1 deletions(-)\n create mode 100644 po/ja.po\n\ndiff --git a/Makefile b/Makefile\nindex f6a6ce3..85d2c00 100644\n--- a/Makefile\n+++ b/Makefile\n@@ -107,7 +107,7 @@ XGETTEXT   ?= xgettext\n msgsdir    ?= $(libdir)/msgs\n msgsdir_SQ  = $(subst ','\\'',$(msgsdir))\n PO_TEMPLATE = po/git-gui.pot\n-ALL_LINGUAS = de\n+ALL_LINGUAS = de ja\n \n $(PO_TEMPLATE): $(SCRIPT_SH) $(ALL_LIBFILES)\n \t$(XGETTEXT) -k_ -LTcl -o $@ $(SCRIPT_SH) $(ALL_LIBFILES)\ndiff --git a/po/ja.po b/po/ja.po\nnew file mode 100644\nindex 0000000..abfd4f1\n--- /dev/null\n+++ b/po/ja.po\n@@ -0,0 +1,250 @@\n+# Translation of git-gui to Japanese\n+# Copyright (C) 2007 Shawn Pearce\n+# This file is distributed under the same license as the git-gui package.\n+# しらいし ななこ <nanako3@bluebottle.com>, 2007.\n+#\n+#, fuzzy\n+msgid \"\"\n+msgstr \"\"\n+\"Project-Id-Version: git-gui\\n\"\n+\"Report-Msgid-Bugs-To: \\n\"\n+\"POT-Creation-Date: 2007-07-21 01:23-0700\\n\"\n+\"PO-Revision-Date: 2007-07-21 01:23-0700\\n\"\n+\"Last-Translator: Junio C Hamano <gitster@pobox.com>\\n\"\n+\"Language-Team: Japanese\\n\"\n+\"MIME-Version: 1.0\\n\"\n+\"Content-Type: text/plain; charset=UTF-8\\n\"\n+\"Content-Transfer-Encoding: 8bit\\n\"\n+\n+#: git-gui.sh:1656\n+msgid \"Repository\"\n+msgstr \"レポジトリ\"\n+\n+#: git-gui.sh:1657\n+msgid \"Edit\"\n+msgstr \"編集\"\n+\n+#: git-gui.sh:1659\n+msgid \"Branch\"\n+msgstr \"分岐\"\n+\n+#: git-gui.sh:1662 git-gui.sh:1840\n+msgid \"Commit\"\n+msgstr \"\"\n+\n+#: git-gui.sh:1665\n+msgid \"Merge\"\n+msgstr \"\"\n+\n+#: git-gui.sh:1666\n+msgid \"Fetch\"\n+msgstr \"\"\n+\n+#: git-gui.sh:1667\n+msgid \"Push\"\n+msgstr \"\"\n+\n+#: git-gui.sh:1676\n+msgid \"Browse Current Branch's Files\"\n+msgstr \"\"\n+\n+#: git-gui.sh:1685\n+msgid \"Visualize Current Branch's History\"\n+msgstr \"\"\n+\n+#: git-gui.sh:1689\n+msgid \"Visualize All Branch History\"\n+msgstr \"\"\n+\n+#: git-gui.sh:1694\n+msgid \"Database Statistics\"\n+msgstr \"\"\n+\n+#: git-gui.sh:1697\n+msgid \"Compress Database\"\n+msgstr \"\"\n+\n+#: git-gui.sh:1700\n+msgid \"Verify Database\"\n+msgstr \"\"\n+\n+#: git-gui.sh:1707 git-gui.sh:1711 git-gui.sh:1715\n+msgid \"Create Desktop Icon\"\n+msgstr \"\"\n+\n+#: git-gui.sh:1720\n+msgid \"Quit\"\n+msgstr \"\"\n+\n+#: git-gui.sh:1727\n+msgid \"Undo\"\n+msgstr \"\"\n+\n+#: git-gui.sh:1730\n+msgid \"Redo\"\n+msgstr \"\"\n+\n+#: git-gui.sh:1734 git-gui.sh:2249\n+msgid \"Cut\"\n+msgstr \"\"\n+\n+#: git-gui.sh:1737 git-gui.sh:2252 git-gui.sh:2323 git-gui.sh:2395\n+msgid \"Copy\"\n+msgstr \"\"\n+\n+#: git-gui.sh:1740 git-gui.sh:2255\n+msgid \"Paste\"\n+msgstr \"\"\n+\n+#: git-gui.sh:1743 git-gui.sh:2258\n+msgid \"Delete\"\n+msgstr \"\"\n+\n+#: git-gui.sh:1747 git-gui.sh:2262 git-gui.sh:2399\n+msgid \"Select All\"\n+msgstr \"\"\n+\n+#: git-gui.sh:1756\n+msgid \"Create...\"\n+msgstr \"\"\n+\n+#: git-gui.sh:1762\n+msgid \"Checkout...\"\n+msgstr \"\"\n+\n+#: git-gui.sh:1768\n+msgid \"Rename...\"\n+msgstr \"\"\n+\n+#: git-gui.sh:1773 git-gui.sh:1871\n+msgid \"Delete...\"\n+msgstr \"\"\n+\n+#: git-gui.sh:1778\n+msgid \"Reset...\"\n+msgstr \"\"\n+\n+#: git-gui.sh:1790\n+msgid \"New Commit\"\n+msgstr \"\"\n+\n+#: git-gui.sh:1798\n+msgid \"Amend Last Commit\"\n+msgstr \"\"\n+\n+#: git-gui.sh:1807\n+msgid \"Rescan\"\n+msgstr \"\"\n+\n+#: git-gui.sh:1813\n+msgid \"Add To Commit\"\n+msgstr \"\"\n+\n+#: git-gui.sh:1818\n+msgid \"Add Existing To Commit\"\n+msgstr \"\"\n+\n+#: git-gui.sh:1824\n+msgid \"Unstage From Commit\"\n+msgstr \"\"\n+\n+#: git-gui.sh:1829\n+msgid \"Revert Changes\"\n+msgstr \"\"\n+\n+#: git-gui.sh:1836 git-gui.sh:2273\n+msgid \"Sign Off\"\n+msgstr \"\"\n+\n+#: git-gui.sh:1851\n+msgid \"Local Merge...\"\n+msgstr \"\"\n+\n+#: git-gui.sh:1856\n+msgid \"Abort Merge...\"\n+msgstr \"\"\n+\n+#: git-gui.sh:1868\n+msgid \"Push...\"\n+msgstr \"\"\n+\n+#: git-gui.sh:1878\n+msgid \"Apple\"\n+msgstr \"\"\n+\n+#: git-gui.sh:1881 git-gui.sh:1928\n+#, tcl-format\n+msgid \"About %s\"\n+msgstr \"\"\n+\n+#: git-gui.sh:1883 git-gui.sh:1889 git-gui.sh:2441\n+msgid \"Options...\"\n+msgstr \"\"\n+\n+#: git-gui.sh:1913\n+msgid \"Tools\"\n+msgstr \"\"\n+\n+#: git-gui.sh:1915\n+msgid \"Migrate\"\n+msgstr \"\"\n+\n+#: git-gui.sh:1924\n+msgid \"Help\"\n+msgstr \"\"\n+\n+#: git-gui.sh:1965\n+msgid \"Online Documentation\"\n+msgstr \"\"\n+\n+#: git-gui.sh:2215\n+msgid \"Initial Commit Message:\"\n+msgstr \"\"\n+\n+#: git-gui.sh:2216\n+msgid \"Amended Commit Message:\"\n+msgstr \"\"\n+\n+#: git-gui.sh:2217\n+msgid \"Amended Initial Commit Message:\"\n+msgstr \"\"\n+\n+#: git-gui.sh:2218\n+msgid \"Amended Merge Commit Message:\"\n+msgstr \"\"\n+\n+#: git-gui.sh:2219\n+msgid \"Merge Commit Message:\"\n+msgstr \"\"\n+\n+#: git-gui.sh:2220\n+msgid \"Commit Message:\"\n+msgstr \"\"\n+\n+#: git-gui.sh:2265 git-gui.sh:2403\n+msgid \"Copy All\"\n+msgstr \"\"\n+\n+#: git-gui.sh:2391\n+msgid \"Refresh\"\n+msgstr \"\"\n+\n+#: git-gui.sh:2412\n+msgid \"Apply/Reverse Hunk\"\n+msgstr \"\"\n+\n+#: git-gui.sh:2418\n+msgid \"Decrease Font Size\"\n+msgstr \"\"\n+\n+#: git-gui.sh:2422\n+msgid \"Increase Font Size\"\n+msgstr \"\"\n+\n+#: git-gui.sh:2427\n+msgid \"Show Less Context\"\n+msgstr \"\"\n+\n+#: git-gui.sh:2434\n+msgid \"Show More Context\"\n+msgstr \"\"\n-- \n1.5.3.rc2.22.g69a9b\n"},{"id":"48038","messageId":"Pine.LNX.4.64.0707211415500.14781@racer.site","threadId":"9106","inReplyTo":"7vr6n2upwv.fsf@assigned-by-dhcp.cox.net","subject":"Re: [PATCH] Internationalization of git-gui","fromName":"Johannes Schindelin","fromEmail":"johannes.schindelin@gmx.de","sentAt":"2007-07-21T13:21:08Z","receivedAt":"2007-07-21T13:21:08Z","isPatch":true,"sender":{"key":"johannes.schindelin@gmx.de","avatar":"https://avatars.githubusercontent.com/u/127790?v=4"},"body":"Hi,\n\nOn Sat, 21 Jul 2007, Junio C Hamano wrote:\n\n> As Johannes announced the 'mob' stuff, I think it would be easiest to \n> work there as others --- for this type of work, there probably won't be \n> much stepping on each other's toes involved as long as there are not \n> more than one translator per language.\n\nAlready merged into git-gui-i18n's master.\n\nCiao,\nDscho\n"},{"id":"48052","messageId":"4d8e3fd30707211157l1be243basfb259082b7aa8160@mail.gmail.com","threadId":"9106","inReplyTo":"7vr6n2upwv.fsf@assigned-by-dhcp.cox.net","subject":"Re: [PATCH] Internationalization of git-gui","fromName":"Paolo Ciarrocchi","fromEmail":"paolo.ciarrocchi@gmail.com","sentAt":"2007-07-21T18:57:18Z","receivedAt":"2007-07-21T18:57:18Z","isPatch":true,"sender":{"key":"paolo.ciarrocchi@gmail.com","avatar":null},"body":"On 7/21/07, Junio C Hamano <gitster@pobox.com> wrote:\n\npaolo@paolo-desktop:~/git-gui-i18n$ ls\ngit-gui.sh  GIT-VERSION-GEN  lib  Makefile  po\n\n\n>  - Run 'make' once, to get po/git-gui.pot generated;\n\npaolo@paolo-desktop:~/git-gui-i18n$ make\nGITGUI_VERSION = 0.8.GITGUI\n    * new locations or Tcl/Tk interpreter\n    GEN git-gui\n    BUILTIN git-citool\n    INDEX lib/\n\npaolo@paolo-desktop:~/git-gui-i18n$ ls po/\nde.msg  de.po  glossary.csv  ja.msg  ja.po\n\nThere is \"po/git-gui.pot\" file in my repository.\n\nAm I doing something wrong?\n\nThanks!\n\nCiao,\n-- \nPaolo\n\"Tutto cio' che merita di essere fatto,merita di essere fatto bene\"\nPhilip Stanhope IV conte di Chesterfield\n"},{"id":"48060","messageId":"Pine.LNX.4.64.0707212224480.14781@racer.site","threadId":"9106","inReplyTo":"4d8e3fd30707211157l1be243basfb259082b7aa8160@mail.gmail.com","subject":"Re: [PATCH] Internationalization of git-gui","fromName":"Johannes Schindelin","fromEmail":"johannes.schindelin@gmx.de","sentAt":"2007-07-21T21:25:28Z","receivedAt":"2007-07-21T21:25:28Z","isPatch":true,"sender":{"key":"johannes.schindelin@gmx.de","avatar":"https://avatars.githubusercontent.com/u/127790?v=4"},"body":"Hi,\n\nOn Sat, 21 Jul 2007, Paolo Ciarrocchi wrote:\n\n> On 7/21/07, Junio C Hamano <gitster@pobox.com> wrote:\n> \n> paolo@paolo-desktop:~/git-gui-i18n$ ls\n> git-gui.sh  GIT-VERSION-GEN  lib  Makefile  po\n> \n> \n> >  - Run 'make' once, to get po/git-gui.pot generated;\n> \n> paolo@paolo-desktop:~/git-gui-i18n$ make\n> GITGUI_VERSION = 0.8.GITGUI\n>    * new locations or Tcl/Tk interpreter\n>    GEN git-gui\n>    BUILTIN git-citool\n>    INDEX lib/\n> \n> paolo@paolo-desktop:~/git-gui-i18n$ ls po/\n> de.msg  de.po  glossary.csv  ja.msg  ja.po\n> \n> There is \"po/git-gui.pot\" file in my repository.\n\nMy fault.  I was rebasing Junio's patch on top of Christian's new series.  \nAlas, the PO_TEMPLATE was no longer created by default.\n\nShould be fixed now.\n\nThanks,\nDscho\n"},{"id":"48066","messageId":"7vvecdtlf1.fsf@assigned-by-dhcp.cox.net","threadId":"9106","inReplyTo":"Pine.LNX.4.64.0707212224480.14781@racer.site","subject":"Re: [PATCH] Internationalization of git-gui","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2007-07-21T22:57:22Z","receivedAt":"2007-07-21T22:57:22Z","isPatch":true,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Johannes Schindelin <Johannes.Schindelin@gmx.de> writes:\n\n>> paolo@paolo-desktop:~/git-gui-i18n$ ls po/\n>> de.msg  de.po  glossary.csv  ja.msg  ja.po\n>> \n>> There is \"po/git-gui.pot\" file in my repository.\n>\n> My fault.  I was rebasing Junio's patch on top of Christian's new series.  \n> Alas, the PO_TEMPLATE was no longer created by default.\n>\n> Should be fixed now.\n\nNote that if everybody agrees that the division of labor between\nthe developer, the i18n coordinator and translators I suggested\nin the earlier message is the way to go, po/git-gui.pot should\nbe managed by the i18n coordinator and revision tracked in-tree.\nSimple \"make\" should not try to update it for ordinary people,\nbut we can have a \"i18n coordinator only\" maintenance target to\nupdate it.\n\nThat way, translators do not have to touch anything other than\ntheir own po/xx.po files.\n"},{"id":"48082","messageId":"Pine.LNX.4.64.0707220212280.14781@racer.site","threadId":"9106","inReplyTo":"7vvecdtlf1.fsf@assigned-by-dhcp.cox.net","subject":"Re: [PATCH] Internationalization of git-gui","fromName":"Johannes Schindelin","fromEmail":"johannes.schindelin@gmx.de","sentAt":"2007-07-22T01:12:39Z","receivedAt":"2007-07-22T01:12:39Z","isPatch":true,"sender":{"key":"johannes.schindelin@gmx.de","avatar":"https://avatars.githubusercontent.com/u/127790?v=4"},"body":"Hi,\n\nOn Sat, 21 Jul 2007, Junio C Hamano wrote:\n\n> Johannes Schindelin <Johannes.Schindelin@gmx.de> writes:\n> \n> >> paolo@paolo-desktop:~/git-gui-i18n$ ls po/\n> >> de.msg  de.po  glossary.csv  ja.msg  ja.po\n> >> \n> >> There is \"po/git-gui.pot\" file in my repository.\n> >\n> > My fault.  I was rebasing Junio's patch on top of Christian's new series.  \n> > Alas, the PO_TEMPLATE was no longer created by default.\n> >\n> > Should be fixed now.\n> \n> Note that if everybody agrees that the division of labor between\n> the developer, the i18n coordinator and translators I suggested\n> in the earlier message is the way to go, po/git-gui.pot should\n> be managed by the i18n coordinator and revision tracked in-tree.\n> Simple \"make\" should not try to update it for ordinary people,\n> but we can have a \"i18n coordinator only\" maintenance target to\n> update it.\n> \n> That way, translators do not have to touch anything other than\n> their own po/xx.po files.\n\nDone.\n\nCiao,\nDscho\n"}]}