From 3441de5b9cbc93ebfea0e70bf28b32e2eecba5bd Mon Sep 17 00:00:00 2001 From: Paul Mackerras Date: Tue, 27 Aug 2019 08:12:34 +1000 Subject: gitk: Make web links clickable This makes gitk look for http or https URLs in the commit description and make the URLs clickable. Clicking on them will invoke an external web browser with the URL. The web browser command is by default "xdg-open" on Linux, "open" on MacOS, and "cmd /c start" on Windows. The command can be changed in the preferences window, and it can include parameters as well as the command name. If it is set to the empty string then URLs will no longer be made clickable. Signed-off-by: Paul Mackerras diff --git a/gitk b/gitk index a14d7a1..5b1d898 100755 --- a/gitk +++ b/gitk @@ -7016,6 +7016,7 @@ proc commit_descriptor {p} { # append some text to the ctext widget, and make any SHA1 ID # that we know about be a clickable link. +# Also look for URLs of the form "http[s]://..." and make them web links. proc appendwithlinks {text tags} { global ctext linknum curview @@ -7032,6 +7033,18 @@ proc appendwithlinks {text tags} { setlink $linkid link$linknum incr linknum } + set wlinks [regexp -indices -all -inline -line \ + {https?://[^[:space:]]+} $text] + foreach l $wlinks { + set s2 [lindex $l 0] + set e2 [lindex $l 1] + set url [string range $text $s2 $e2] + incr e2 + $ctext tag delete link$linknum + $ctext tag add link$linknum "$start + $s2 c" "$start + $e2 c" + setwlink $url link$linknum + incr linknum + } } proc setlink {id lk} { @@ -7064,6 +7077,18 @@ proc setlink {id lk} { } } +proc setwlink {url lk} { + global ctext + global linkfgcolor + global web_browser + + if {$web_browser eq {}} return + $ctext tag conf $lk -foreground $linkfgcolor -underline 1 + $ctext tag bind $lk <1> [list browseweb $url] + $ctext tag bind $lk {linkcursor %W 1} + $ctext tag bind $lk {linkcursor %W -1} +} + proc appendshortlink {id {pre {}} {post {}}} { global ctext linknum @@ -7098,6 +7123,16 @@ proc linkcursor {w inc} { } } +proc browseweb {url} { + global web_browser + + if {$web_browser eq {}} return + # Use eval here in case $web_browser is a command plus some arguments + if {[catch {eval exec $web_browser [list $url] &} err]} { + error_popup "[mc "Error starting web browser:"] $err" + } +} + proc viewnextline {dir} { global canv linespc @@ -11488,7 +11523,7 @@ proc create_prefs_page {w} { proc prefspage_general {notebook} { global NS maxwidth maxgraphpct showneartags showlocalchanges global tabstop limitdiffs autoselect autosellen extdifftool perfile_attrs - global hideremotes want_ttk have_ttk maxrefs + global hideremotes want_ttk have_ttk maxrefs web_browser set page [create_prefs_page $notebook.general] @@ -11539,6 +11574,13 @@ proc prefspage_general {notebook} { pack configure $page.extdifff.l -padx 10 grid x $page.extdifff $page.extdifft -sticky ew + ${NS}::entry $page.webbrowser -textvariable web_browser + ${NS}::frame $page.webbrowserf + ${NS}::label $page.webbrowserf.l -text [mc "Web browser" ] + pack $page.webbrowserf.l -side left + pack configure $page.webbrowserf.l -padx 10 + grid x $page.webbrowserf $page.webbrowser -sticky ew + ${NS}::label $page.lgen -text [mc "General options"] grid $page.lgen - -sticky w -pady 10 ${NS}::checkbutton $page.want_ttk -variable want_ttk \ @@ -12310,6 +12352,7 @@ if {[tk windowingsystem] eq "win32"} { set bgcolor SystemWindow set fgcolor SystemWindowText set selectbgcolor SystemHighlight + set web_browser "cmd /c start" } else { set uicolor grey85 set uifgcolor black @@ -12317,6 +12360,11 @@ if {[tk windowingsystem] eq "win32"} { set bgcolor white set fgcolor black set selectbgcolor gray85 + if {[tk windowingsystem] eq "aqua"} { + set web_browser "open" + } else { + set web_browser "xdg-open" + } } set diffcolors {red "#00a000" blue} set diffcontext 3 @@ -12390,6 +12438,7 @@ set config_variables { filesepbgcolor filesepfgcolor linehoverbgcolor linehoverfgcolor linehoveroutlinecolor mainheadcirclecolor workingfilescirclecolor indexcirclecolor circlecolors linkfgcolor circleoutlinecolor + web_browser } foreach var $config_variables { config_init_trace $var -- cgit v0.10.2-6-g49f6 From beffae768aff87ddd690c987a561e8ec61cf3c71 Mon Sep 17 00:00:00 2001 From: YanKe Date: Sat, 11 Mar 2017 03:00:00 +0800 Subject: gitk: Add Chinese (zh_CN) translation Signed-off-by: YanKe Signed-off-by: Paul Mackerras diff --git a/po/zh_CN.po b/po/zh_CN.po new file mode 100644 index 0000000..17b7f89 --- /dev/null +++ b/po/zh_CN.po @@ -0,0 +1,1367 @@ +# Translation of gitk to Simplified Chinese. +# +# Translators: +# YanKe , 2017 + +msgid "" +msgstr "" +"Project-Id-Version: Git Chinese Localization Project\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-02-28 23:11+0800\n" +"PO-Revision-Date: 2017-03-11 02:27+0800\n" +"Last-Translator: YanKe \n" +"Language-Team: Chinese\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: zh_CN\n" + +#: gitk:140 +msgid "Couldn't get list of unmerged files:" +msgstr "不能获取未合并文件列表:" + +#: gitk:212 gitk:2403 +msgid "Color words" +msgstr "着色显示差异" + +#: gitk:217 gitk:2403 gitk:8249 gitk:8282 +msgid "Markup words" +msgstr "标记显示差异" + +#: gitk:324 +msgid "Error parsing revisions:" +msgstr "解析版本错误:" + +#: gitk:380 +msgid "Error executing --argscmd command:" +msgstr "运行 --argscmd命令出错" + +#: gitk:393 +msgid "No files selected: --merge specified but no files are unmerged." +msgstr "没有选中文件:--指定merge参数但没有未合并的文件。" + +#: gitk:396 +msgid "" +"No files selected: --merge specified but no unmerged files are within file " +"limit." +msgstr "没有选中文件:--指定merge参数但没有未合并的文件在文件中" + +#: gitk:418 gitk:566 +msgid "Error executing git log:" +msgstr "执行git log命令出错:" + +#: gitk:436 gitk:582 +msgid "Reading" +msgstr "读取中" + +#: gitk:496 gitk:4549 +msgid "Reading commits..." +msgstr "提交记录读取中..." + +#: gitk:499 gitk:1641 gitk:4552 +msgid "No commits selected" +msgstr "未选中任何提交" + +#: gitk:1449 gitk:4069 gitk:12583 +msgid "Command line" +msgstr "命令行" + +#: gitk:1515 +msgid "Can't parse git log output:" +msgstr "不能解析git log输出:" + +#: gitk:1744 +msgid "No commit information available" +msgstr "无可用提交信息" + +#: gitk:1907 gitk:1936 gitk:4339 gitk:9789 gitk:11388 gitk:11668 +msgid "OK" +msgstr "确定" + +#: gitk:1938 gitk:4341 gitk:9225 gitk:9304 gitk:9434 gitk:9520 gitk:9791 +#: gitk:11389 gitk:11669 +msgid "Cancel" +msgstr "取消" + +#: gitk:2087 +msgid "&Update" +msgstr "更新" + +#: gitk:2088 +msgid "&Reload" +msgstr "重新加载" + +#: gitk:2089 +msgid "Reread re&ferences" +msgstr "重新读取引用" + +#: gitk:2090 +msgid "&List references" +msgstr "列出引用(分支以及tag)" + +#: gitk:2092 +msgid "Start git &gui" +msgstr "启动git gui客户端" + +#: gitk:2094 +msgid "&Quit" +msgstr "退出" + +#: gitk:2086 +msgid "&File" +msgstr "文件" + +#: gitk:2098 +msgid "&Preferences" +msgstr "偏好设置" + +#: gitk:2097 +msgid "&Edit" +msgstr "编辑" + +#: gitk:2102 +msgid "&New view..." +msgstr "新视图..." + +#: gitk:2103 +msgid "&Edit view..." +msgstr "编辑视图..." + +#: gitk:2104 +msgid "&Delete view" +msgstr "删除视图" + +#: gitk:2106 +msgid "&All files" +msgstr "所有文件" + +#: gitk:2101 +msgid "&View" +msgstr "视图" + +#: gitk:2111 gitk:2121 +msgid "&About gitk" +msgstr "关于gitk" + +#: gitk:2112 gitk:2126 +msgid "&Key bindings" +msgstr "快捷键" + +#: gitk:2110 gitk:2125 +msgid "&Help" +msgstr "帮助" + +#: gitk:2203 gitk:8681 +msgid "SHA1 ID:" +msgstr "SHA1 ID:" + +#: gitk:2247 +msgid "Row" +msgstr "行" + +#: gitk:2285 +msgid "Find" +msgstr "查找" + +#: gitk:2313 +msgid "commit" +msgstr "提交" + +#: gitk:2317 gitk:2319 gitk:4711 gitk:4734 gitk:4758 gitk:6779 gitk:6851 +#: gitk:6936 +msgid "containing:" +msgstr "包含:" + +#: gitk:2320 gitk:3550 gitk:3555 gitk:4787 +msgid "touching paths:" +msgstr "影响路径:" + +#: gitk:2321 gitk:4801 +msgid "adding/removing string:" +msgstr "增加/删除字符串:" + +#: gitk:2322 gitk:4803 +msgid "changing lines matching:" +msgstr "改变行匹配:" + +#: gitk:2331 gitk:2333 gitk:4790 +msgid "Exact" +msgstr "精确匹配" + +#: gitk:2333 gitk:4878 gitk:6747 +msgid "IgnCase" +msgstr "忽略大小写" + +#: gitk:2333 gitk:4760 gitk:4876 gitk:6743 +msgid "Regexp" +msgstr "正则" + +#: gitk:2335 gitk:2336 gitk:4898 gitk:4928 gitk:4935 gitk:6872 gitk:6940 +msgid "All fields" +msgstr "所有字段" + +#: gitk:2336 gitk:4895 gitk:4928 gitk:6810 +msgid "Headline" +msgstr "标题" + +#: gitk:2337 gitk:4895 gitk:6810 gitk:6940 gitk:7413 +msgid "Comments" +msgstr "提交注释" + +#: gitk:2337 gitk:4895 gitk:4900 gitk:4935 gitk:6810 gitk:7348 gitk:8859 +#: gitk:8874 +msgid "Author" +msgstr "作者" + +#: gitk:2337 gitk:4895 gitk:6810 gitk:7350 +msgid "Committer" +msgstr "提交者" + +#: gitk:2371 +msgid "Search" +msgstr "搜索" + +#: gitk:2379 +msgid "Diff" +msgstr "差异" + +#: gitk:2381 +msgid "Old version" +msgstr "老版本" + +#: gitk:2383 +msgid "New version" +msgstr "新版本" + +#: gitk:2386 +msgid "Lines of context" +msgstr "Diff上下文显示行数" + +#: gitk:2396 +msgid "Ignore space change" +msgstr "忽略空格修改" + +#: gitk:2400 gitk:2402 gitk:7983 gitk:8235 +msgid "Line diff" +msgstr "按行显示差异" + +#: gitk:2467 +msgid "Patch" +msgstr "补丁" + +#: gitk:2469 +msgid "Tree" +msgstr "树" + +#: gitk:2639 gitk:2660 +msgid "Diff this -> selected" +msgstr "比较从当前提交到选中提交的差异" + +#: gitk:2640 gitk:2661 +msgid "Diff selected -> this" +msgstr "比较从选中提交到当前提交的差异" + +#: gitk:2641 gitk:2662 +msgid "Make patch" +msgstr "制作补丁" + +#: gitk:2642 gitk:9283 +msgid "Create tag" +msgstr "创建tag" + +#: gitk:2643 +msgid "Copy commit summary" +msgstr "复制提交摘要" + +#: gitk:2644 gitk:9414 +msgid "Write commit to file" +msgstr "写入提交到文件" + +#: gitk:2645 +msgid "Create new branch" +msgstr "创建新分支" + +#: gitk:2646 +msgid "Cherry-pick this commit" +msgstr "在此提交运用补丁(cherry-pick)命令" + +#: gitk:2647 +msgid "Reset HEAD branch to here" +msgstr "将分支头(HEAD)重置到此处" + +#: gitk:2648 +msgid "Mark this commit" +msgstr "标记此提交" + +#: gitk:2649 +msgid "Return to mark" +msgstr "返回到标记" + +#: gitk:2650 +msgid "Find descendant of this and mark" +msgstr "查找本次提交的子提交并标记" + +#: gitk:2651 +msgid "Compare with marked commit" +msgstr "和已标记的提交作比较" + +#: gitk:2652 gitk:2663 +msgid "Diff this -> marked commit" +msgstr "比较从当前提交到已标记提交的差异" + +#: gitk:2653 gitk:2664 +msgid "Diff marked commit -> this" +msgstr "比较从已标记提交到当前提交的差异" + +#: gitk:2654 +msgid "Revert this commit" +msgstr "撤销(revert)此提交" + +#: gitk:2670 +msgid "Check out this branch" +msgstr "检出(checkout)此分支" + +#: gitk:2671 +msgid "Rename this branch" +msgstr "重命名(Rename)此分支" + +#: gitk:2672 +msgid "Remove this branch" +msgstr "删除(Remove)此分支" + +#: gitk:2673 +msgid "Copy branch name" +msgstr "复制分支名称" + +#: gitk:2680 +msgid "Highlight this too" +msgstr "高亮此处" + +#: gitk:2681 +msgid "Highlight this only" +msgstr "只高亮此处" + +#: gitk:2682 +msgid "External diff" +msgstr "外部diff" + +#: gitk:2683 +msgid "Blame parent commit" +msgstr "Blame父提交" + +#: gitk:2684 +msgid "Copy path" +msgstr "复制路径" + +#: gitk:2691 +msgid "Show origin of this line" +msgstr "显示此行原始提交" + +#: gitk:2692 +msgid "Run git gui blame on this line" +msgstr "在此行运行git gui客户端的blame" + +#: gitk:3036 +msgid "About gitk" +msgstr "关于gitk" + +#: gitk:3038 +msgid "" +"\n" +"Gitk - a commit viewer for git\n" +"\n" +"Copyright © 2005-2016 Paul Mackerras\n" +"\n" +"Use and redistribute under the terms of the GNU General Public License" +msgstr "\nGitk — 一个git的提交查看器\n\n© 2005-2016 Paul Mackerras\n\n在GNU许可证下使用以及分发" + +#: gitk:3046 gitk:3113 gitk:10004 +msgid "Close" +msgstr "关闭" + +#: gitk:3067 +msgid "Gitk key bindings" +msgstr "Gitk快捷键" + +#: gitk:3070 +msgid "Gitk key bindings:" +msgstr "Gitk快捷键:" + +#: gitk:3072 +#, tcl-format +msgid "<%s-Q>\t\tQuit" +msgstr "<%s-Q>\t\t退出" + +#: gitk:3073 +#, tcl-format +msgid "<%s-W>\t\tClose window" +msgstr "<%s-W>\t\t关闭窗口" + +#: gitk:3074 +msgid "\t\tMove to first commit" +msgstr "\t\t移动到第一次提交" + +#: gitk:3075 +msgid "\t\tMove to last commit" +msgstr "\t\t移动到最后一次提交" + +#: gitk:3076 +msgid ", p, k\tMove up one commit" +msgstr ", p, k\t移动到上一次提交" + +#: gitk:3077 +msgid ", n, j\tMove down one commit" +msgstr ", n, j\t移动到下一次提交" + +#: gitk:3078 +msgid ", z, h\tGo back in history list" +msgstr ", z, h\t历史列表的上一项" + +#: gitk:3079 +msgid ", x, l\tGo forward in history list" +msgstr ", x, l\t历史列表的下一项" + +#: gitk:3080 +#, tcl-format +msgid "<%s-n>\tGo to n-th parent of current commit in history list" +msgstr "<%s-n>\t在历史列表中前往本次提交的第n个父提交" + +#: gitk:3081 +msgid "\tMove up one page in commit list" +msgstr "\t上一页提交列表" + +#: gitk:3082 +msgid "\tMove down one page in commit list" +msgstr "\t下一页提交列表" + +#: gitk:3083 +#, tcl-format +msgid "<%s-Home>\tScroll to top of commit list" +msgstr "<%s-Home>\t滚动到提交列表顶部" + +#: gitk:3084 +#, tcl-format +msgid "<%s-End>\tScroll to bottom of commit list" +msgstr "<%s-End>\t滚动到提交列表底部" + +#: gitk:3085 +#, tcl-format +msgid "<%s-Up>\tScroll commit list up one line" +msgstr "<%s-Up>\t向上滚动一行提交列表" + +#: gitk:3086 +#, tcl-format +msgid "<%s-Down>\tScroll commit list down one line" +msgstr "<%s-Down>\t向下滚动一行提交列表" + +#: gitk:3087 +#, tcl-format +msgid "<%s-PageUp>\tScroll commit list up one page" +msgstr "<%s-PageUp>\t向上滚动一页提交列表" + +#: gitk:3088 +#, tcl-format +msgid "<%s-PageDown>\tScroll commit list down one page" +msgstr "<%s-PageDown>\t向下滚动一页提交列表" + +#: gitk:3089 +msgid "\tFind backwards (upwards, later commits)" +msgstr "\t向后查找(向上的,更晚的提交)" + +#: gitk:3090 +msgid "\tFind forwards (downwards, earlier commits)" +msgstr "\t向前查找(向下的,更早的提交)" + +#: gitk:3091 +msgid ", b\tScroll diff view up one page" +msgstr ", b\t向上滚动diff视图一页" + +#: gitk:3092 +msgid "\tScroll diff view up one page" +msgstr "\t向上滚动diff视图一页" + +#: gitk:3093 +msgid "\t\tScroll diff view down one page" +msgstr "\t\t向下滚动diff视图一页" + +#: gitk:3094 +msgid "u\t\tScroll diff view up 18 lines" +msgstr "u\t\t向上滚动diff视图18行" + +#: gitk:3095 +msgid "d\t\tScroll diff view down 18 lines" +msgstr "d\t\t向下滚动diff视图18行" + +#: gitk:3096 +#, tcl-format +msgid "<%s-F>\t\tFind" +msgstr "<%s-F>\t\t查找" + +#: gitk:3097 +#, tcl-format +msgid "<%s-G>\t\tMove to next find hit" +msgstr "<%s-G>\t\t移动到下一次查找命中" + +#: gitk:3098 +msgid "\tMove to next find hit" +msgstr "\t\t移动到下一次查找命中" + +#: gitk:3099 +msgid "g\t\tGo to commit" +msgstr "g\t\t转到提交" + +#: gitk:3100 +msgid "/\t\tFocus the search box" +msgstr "/\t\t选中搜索框" + +#: gitk:3101 +msgid "?\t\tMove to previous find hit" +msgstr "?\t\t移动到上一次查找命中" + +#: gitk:3102 +msgid "f\t\tScroll diff view to next file" +msgstr "f\t\t滚动diff视图到下一个文件" + +#: gitk:3103 +#, tcl-format +msgid "<%s-S>\t\tSearch for next hit in diff view" +msgstr "<%s-S>\t\t在diff视图中查找下一此命中" + +#: gitk:3104 +#, tcl-format +msgid "<%s-R>\t\tSearch for previous hit in diff view" +msgstr "<%s-R>\t\t在diff视图中查找上一次命中" + +#: gitk:3105 +#, tcl-format +msgid "<%s-KP+>\tIncrease font size" +msgstr "<%s-KP+>\t增大字体大小" + +#: gitk:3106 +#, tcl-format +msgid "<%s-plus>\tIncrease font size" +msgstr "<%s-plus>\t增大字体大小" + +#: gitk:3107 +#, tcl-format +msgid "<%s-KP->\tDecrease font size" +msgstr "<%s-KP->\t减小字体大小" + +#: gitk:3108 +#, tcl-format +msgid "<%s-minus>\tDecrease font size" +msgstr "<%s-minus>\t减小字体大小" + +#: gitk:3109 +msgid "\t\tUpdate" +msgstr "\t\t更新" + +#: gitk:3574 gitk:3583 +#, tcl-format +msgid "Error creating temporary directory %s:" +msgstr "创建临时目录出错%s:" + +#: gitk:3596 +#, tcl-format +msgid "Error getting \"%s\" from %s:" +msgstr "从%s获取\"%s\"出错:" + +#: gitk:3659 +msgid "command failed:" +msgstr "执行命令失败:" + +#: gitk:3808 +msgid "No such commit" +msgstr "无此提交" + +#: gitk:3822 +msgid "git gui blame: command failed:" +msgstr "git gui blame:执行命令失败:" + +#: gitk:3853 +#, tcl-format +msgid "Couldn't read merge head: %s" +msgstr "不能读取合并头(merge head):%s" + +#: gitk:3861 +#, tcl-format +msgid "Error reading index: %s" +msgstr "读取索引出错:%s" + +#: gitk:3886 +#, tcl-format +msgid "Couldn't start git blame: %s" +msgstr "不能执行git blame:%s" + +#: gitk:3889 gitk:6778 +msgid "Searching" +msgstr "搜索中" + +#: gitk:3921 +#, tcl-format +msgid "Error running git blame: %s" +msgstr "运行git blame出错:%s" + +#: gitk:3949 +#, tcl-format +msgid "That line comes from commit %s, which is not in this view" +msgstr "此行来自提交%s,不在此视图中" + +#: gitk:3963 +msgid "External diff viewer failed:" +msgstr "外部diff查看器失败:" + +#: gitk:4067 +msgid "All files" +msgstr "所有文件" + +#: gitk:4091 +msgid "View" +msgstr "视图" + +#: gitk:4094 +msgid "Gitk view definition" +msgstr "Gitk视图定义" + +#: gitk:4098 +msgid "Remember this view" +msgstr "记住此视图" + +#: gitk:4099 +msgid "References (space separated list):" +msgstr "引用(空格切分的列表):" + +#: gitk:4100 +msgid "Branches & tags:" +msgstr "分支和tags" + +#: gitk:4101 +msgid "All refs" +msgstr "所有引用" + +#: gitk:4102 +msgid "All (local) branches" +msgstr "所有(本地)分支" + +#: gitk:4103 +msgid "All tags" +msgstr "所有tag" + +#: gitk:4104 +msgid "All remote-tracking branches" +msgstr "所有远程跟踪分支" + +#: gitk:4105 +msgid "Commit Info (regular expressions):" +msgstr "提交信息 (正则表达式):" + +#: gitk:4106 +msgid "Author:" +msgstr "作者:" + +#: gitk:4107 +msgid "Committer:" +msgstr "提交者:" + +#: gitk:4108 +msgid "Commit Message:" +msgstr "提交信息:" + +#: gitk:4109 +msgid "Matches all Commit Info criteria" +msgstr "匹配所有提交信息标准" + +#: gitk:4110 +msgid "Matches no Commit Info criteria" +msgstr "匹配无提交信息标准" + +#: gitk:4111 +msgid "Changes to Files:" +msgstr "文件修改列表:" + +#: gitk:4112 +msgid "Fixed String" +msgstr "固定字符串" + +#: gitk:4113 +msgid "Regular Expression" +msgstr "正则表达式:" + +#: gitk:4114 +msgid "Search string:" +msgstr "搜索字符串:" + +#: gitk:4115 +msgid "" +"Commit Dates (\"2 weeks ago\", \"2009-03-17 15:27:38\", \"March 17, 2009 " +"15:27:38\"):" +msgstr "提交日期 (\"2星期之前\", \"2009-03-17 15:27:38\", \"5月 17, 2009 15:27:38\"):" + +#: gitk:4116 +msgid "Since:" +msgstr "自:" + +#: gitk:4117 +msgid "Until:" +msgstr "到:" + +#: gitk:4118 +msgid "Limit and/or skip a number of revisions (positive integer):" +msgstr "限制 且/或 跳过一定数量的版本(正整数):" + +#: gitk:4119 +msgid "Number to show:" +msgstr "显示数量:" + +#: gitk:4120 +msgid "Number to skip:" +msgstr "跳过数量:" + +#: gitk:4121 +msgid "Miscellaneous options:" +msgstr "其他选项:" + +#: gitk:4122 +msgid "Strictly sort by date" +msgstr "严格按日期整理" + +#: gitk:4123 +msgid "Mark branch sides" +msgstr "标记分支边界" + +#: gitk:4124 +msgid "Limit to first parent" +msgstr "限制到第一个父提交" + +#: gitk:4125 +msgid "Simple history" +msgstr "简易历史" + +#: gitk:4126 +msgid "Additional arguments to git log:" +msgstr "git log命令的额外参数:" + +#: gitk:4127 +msgid "Enter files and directories to include, one per line:" +msgstr "输入文件和文件夹来引用,每行一个:" + +#: gitk:4128 +msgid "Command to generate more commits to include:" +msgstr "命令产生更多的提交来引用:" + +#: gitk:4252 +msgid "Gitk: edit view" +msgstr "Gitk: 编辑视图" + +#: gitk:4260 +msgid "-- criteria for selecting revisions" +msgstr "-- 用来选择版本的规则" + +#: gitk:4265 +msgid "View Name" +msgstr "视图名称" + +#: gitk:4340 +msgid "Apply (F5)" +msgstr "应用(F5)" + +#: gitk:4378 +msgid "Error in commit selection arguments:" +msgstr "提交选择参数错误:" + +#: gitk:4433 gitk:4486 gitk:4948 gitk:4962 gitk:6232 gitk:12524 gitk:12525 +msgid "None" +msgstr "无" + +#: gitk:5045 gitk:5050 +msgid "Descendant" +msgstr "子提交" + +#: gitk:5046 +msgid "Not descendant" +msgstr "非子提交" + +#: gitk:5053 gitk:5058 +msgid "Ancestor" +msgstr "父提交" + +#: gitk:5054 +msgid "Not ancestor" +msgstr "非父提交" + +#: gitk:5348 +msgid "Local changes checked in to index but not committed" +msgstr "已添加到索引但未提交的修改" + +#: gitk:5384 +msgid "Local uncommitted changes, not checked in to index" +msgstr "未添加到索引且未提交的修改" + +#: gitk:7158 +msgid "and many more" +msgstr "更多" + +#: gitk:7161 +msgid "many" +msgstr "很多" + +#: gitk:7352 +msgid "Tags:" +msgstr "Tags:" + +#: gitk:7369 gitk:7375 gitk:8854 +msgid "Parent" +msgstr "父节点" + +#: gitk:7380 +msgid "Child" +msgstr "子节点" + +#: gitk:7389 +msgid "Branch" +msgstr "分支" + +#: gitk:7392 +msgid "Follows" +msgstr "之后的tag" + +#: gitk:7395 +msgid "Precedes" +msgstr "之前的tag" + +#: gitk:7990 +#, tcl-format +msgid "Error getting diffs: %s" +msgstr "获取差异错误:%s" + +#: gitk:8679 +msgid "Goto:" +msgstr "转到:" + +#: gitk:8700 +#, tcl-format +msgid "Short SHA1 id %s is ambiguous" +msgstr "短格式的SHA1提交号%s不明确、有歧义" + +#: gitk:8707 +#, tcl-format +msgid "Revision %s is not known" +msgstr "版本%s未知" + +#: gitk:8717 +#, tcl-format +msgid "SHA1 id %s is not known" +msgstr "提交号(SHA1 id)%s未知" + +#: gitk:8719 +#, tcl-format +msgid "Revision %s is not in the current view" +msgstr "版本%s不在当前视图中" + +#: gitk:8861 gitk:8876 +msgid "Date" +msgstr "日期" + +#: gitk:8864 +msgid "Children" +msgstr "子节点" + +#: gitk:8927 +#, tcl-format +msgid "Reset %s branch to here" +msgstr "重置分支%s到此处" + +#: gitk:8929 +msgid "Detached head: can't reset" +msgstr "分离的头(head):不能重置(reset)" + +#: gitk:9034 gitk:9040 +msgid "Skipping merge commit " +msgstr "跳过合并提交" + +#: gitk:9049 gitk:9054 +msgid "Error getting patch ID for " +msgstr "获取补丁ID出错" + +#: gitk:9050 gitk:9055 +msgid " - stopping\n" +msgstr " — 停止中\n" + +#: gitk:9060 gitk:9063 gitk:9071 gitk:9085 gitk:9094 +msgid "Commit " +msgstr "提交" + +#: gitk:9064 +msgid "" +" is the same patch as\n" +" " +msgstr " 是相同的补丁(patch)\n " + +#: gitk:9072 +msgid "" +" differs from\n" +" " +msgstr " 差异来自\n " + +#: gitk:9074 +msgid "" +"Diff of commits:\n" +"\n" +msgstr "提交的差异(Diff):\n\n" + +#: gitk:9086 gitk:9095 +#, tcl-format +msgid " has %s children - stopping\n" +msgstr "有%s子节点 — 停止中\n" + +#: gitk:9114 +#, tcl-format +msgid "Error writing commit to file: %s" +msgstr "写入提交到文件出错:%s" + +#: gitk:9120 +#, tcl-format +msgid "Error diffing commits: %s" +msgstr "比较提交差异出错:%s" + +#: gitk:9166 +msgid "Top" +msgstr "顶部" + +#: gitk:9167 +msgid "From" +msgstr "从" + +#: gitk:9172 +msgid "To" +msgstr "到" + +#: gitk:9196 +msgid "Generate patch" +msgstr "生成补丁(patch)" + +#: gitk:9198 +msgid "From:" +msgstr "从:" + +#: gitk:9207 +msgid "To:" +msgstr "到:" + +#: gitk:9216 +msgid "Reverse" +msgstr "反向(Reverse)" + +#: gitk:9218 gitk:9428 +msgid "Output file:" +msgstr "输出文件:" + +#: gitk:9224 +msgid "Generate" +msgstr "生成" + +#: gitk:9262 +msgid "Error creating patch:" +msgstr "创建补丁(patch)出错:" + +#: gitk:9285 gitk:9416 gitk:9504 +msgid "ID:" +msgstr "ID:" + +#: gitk:9294 +msgid "Tag name:" +msgstr "Tag名称:" + +#: gitk:9297 +msgid "Tag message is optional" +msgstr "Tag信息是可选的" + +#: gitk:9299 +msgid "Tag message:" +msgstr "Tag信息:" + +#: gitk:9303 gitk:9474 +msgid "Create" +msgstr "创建" + +#: gitk:9321 +msgid "No tag name specified" +msgstr "未指定tag名称" + +#: gitk:9325 +#, tcl-format +msgid "Tag \"%s\" already exists" +msgstr "Tag\"%s\"已经存在" + +#: gitk:9335 +msgid "Error creating tag:" +msgstr "创建tag出错:" + +#: gitk:9425 +msgid "Command:" +msgstr "命令:" + +#: gitk:9433 +msgid "Write" +msgstr "写入" + +#: gitk:9451 +msgid "Error writing commit:" +msgstr "写入提交出错:" + +#: gitk:9473 +msgid "Create branch" +msgstr "创建分支" + +#: gitk:9489 +#, tcl-format +msgid "Rename branch %s" +msgstr "重命名分支%s" + +#: gitk:9490 +msgid "Rename" +msgstr "重命名" + +#: gitk:9514 +msgid "Name:" +msgstr "名称:" + +#: gitk:9538 +msgid "Please specify a name for the new branch" +msgstr "请指定新分支的名称" + +#: gitk:9543 +#, tcl-format +msgid "Branch '%s' already exists. Overwrite?" +msgstr "分支\"%s\"已经存在。覆盖它?" + +#: gitk:9587 +msgid "Please specify a new name for the branch" +msgstr "请重新指定新分支的名称" + +#: gitk:9650 +#, tcl-format +msgid "Commit %s is already included in branch %s -- really re-apply it?" +msgstr "提交%s已经存在于分支%s。确定重新应用它?" + +#: gitk:9655 +msgid "Cherry-picking" +msgstr "打补丁中(Cherry-picking)" + +#: gitk:9664 +#, tcl-format +msgid "" +"Cherry-pick failed because of local changes to file '%s'.\n" +"Please commit, reset or stash your changes and try again." +msgstr "打补丁(Cherry-pick)失败,因为本地修改了文件\"%s\"。\n请提交(commit)、重置(reset)或暂存(stash)修改后重试。" + +#: gitk:9670 +msgid "" +"Cherry-pick failed because of merge conflict.\n" +"Do you wish to run git citool to resolve it?" +msgstr "打补丁(Cherry-pick)失败因为合并冲突。\n你是否希望运行git citool 来解决冲突?" + +#: gitk:9686 gitk:9744 +msgid "No changes committed" +msgstr "无已经提交的修改" + +#: gitk:9713 +#, tcl-format +msgid "Commit %s is not included in branch %s -- really revert it?" +msgstr "提交%s不包含在分支%s中,确认回滚(revert)它?" + +#: gitk:9718 +msgid "Reverting" +msgstr "回滚中(Reverting)" + +#: gitk:9726 +#, tcl-format +msgid "" +"Revert failed because of local changes to the following files:%s Please " +"commit, reset or stash your changes and try again." +msgstr "回滚(revert)失败,因为如下的本地文件修改:%s\n请提交(commit)、重置(reset)或者暂存(stash)改变后重试。" + +#: gitk:9730 +msgid "" +"Revert failed because of merge conflict.\n" +" Do you wish to run git citool to resolve it?" +msgstr "回滚(revert)失败,因为合并冲突。\n你是否希望运行git citool来解决冲突?" + +#: gitk:9773 +msgid "Confirm reset" +msgstr "确认重置(reset)" + +#: gitk:9775 +#, tcl-format +msgid "Reset branch %s to %s?" +msgstr "重置(reset)分支%s到%s?" + +#: gitk:9777 +msgid "Reset type:" +msgstr "重置(reset)类型:" + +#: gitk:9780 +msgid "Soft: Leave working tree and index untouched" +msgstr "软性:离开工作树,索引未改变" + +#: gitk:9783 +msgid "Mixed: Leave working tree untouched, reset index" +msgstr "混合:离开工作树(未改变),索引重置" + +#: gitk:9786 +msgid "" +"Hard: Reset working tree and index\n" +"(discard ALL local changes)" +msgstr "硬性:重置工作树和索引\n(丢弃所有的本地修改)" + +#: gitk:9803 +msgid "Resetting" +msgstr "重置中(Resetting)" + +#: gitk:9876 +#, tcl-format +msgid "A local branch named %s exists already" +msgstr "本地分支%s已经存在" + +#: gitk:9884 +msgid "Checking out" +msgstr "检出中(Checking out)" + +#: gitk:9943 +msgid "Cannot delete the currently checked-out branch" +msgstr "不能删除当前检出(checkout)分支" + +#: gitk:9949 +#, tcl-format +msgid "" +"The commits on branch %s aren't on any other branch.\n" +"Really delete branch %s?" +msgstr "在分支%s上的提交不在其他任何分支上。\n确认删除分支%s?" + +#: gitk:9980 +#, tcl-format +msgid "Tags and heads: %s" +msgstr "Tags和头指针(heads):%s" + +#: gitk:9997 +msgid "Filter" +msgstr "过滤器" + +#: gitk:10293 +msgid "" +"Error reading commit topology information; branch and preceding/following " +"tag information will be incomplete." +msgstr "读取提交拓扑信息出错;分支和之前/之后的tag信息将不能完成。" + +#: gitk:11270 +msgid "Tag" +msgstr "标签(Tag)" + +#: gitk:11274 +msgid "Id" +msgstr "Id" + +#: gitk:11357 +msgid "Gitk font chooser" +msgstr "Gitk字体选择" + +#: gitk:11374 +msgid "B" +msgstr "粗体" + +#: gitk:11377 +msgid "I" +msgstr "斜体" + +#: gitk:11495 +msgid "Commit list display options" +msgstr "提交列表展示选项" + +#: gitk:11498 +msgid "Maximum graph width (lines)" +msgstr "最大图宽度(行数)" + +#: gitk:11502 +#, no-tcl-format +msgid "Maximum graph width (% of pane)" +msgstr "最大图宽度(%窗口百分比)" + +#: gitk:11505 +msgid "Show local changes" +msgstr "显示本地修改" + +#: gitk:11508 +msgid "Auto-select SHA1 (length)" +msgstr "自动选择SHA1(长度)" + +#: gitk:11512 +msgid "Hide remote refs" +msgstr "隐藏远程引用" + +#: gitk:11516 +msgid "Diff display options" +msgstr "差异(Diff)展示选项" + +#: gitk:11518 +msgid "Tab spacing" +msgstr "制表符宽度" + +#: gitk:11521 +msgid "Display nearby tags/heads" +msgstr "显示临近的tags/heads" + +#: gitk:11524 +msgid "Maximum # tags/heads to show" +msgstr "最大tags/heads展示数量" + +#: gitk:11527 +msgid "Limit diffs to listed paths" +msgstr "diff中列出文件限制" + +#: gitk:11530 +msgid "Support per-file encodings" +msgstr "单独文件编码支持" + +#: gitk:11536 gitk:11683 +msgid "External diff tool" +msgstr "外部差异(diff)工具" + +#: gitk:11537 +msgid "Choose..." +msgstr "选择..." + +#: gitk:11542 +msgid "General options" +msgstr "常规选项" + +#: gitk:11545 +msgid "Use themed widgets" +msgstr "使用主题小部件" + +#: gitk:11547 +msgid "(change requires restart)" +msgstr "(需重启生效)" + +#: gitk:11549 +msgid "(currently unavailable)" +msgstr "(当前不可用)" + +#: gitk:11560 +msgid "Colors: press to choose" +msgstr "颜色:点击来选择" + +#: gitk:11563 +msgid "Interface" +msgstr "界面" + +#: gitk:11564 +msgid "interface" +msgstr "界面" + +#: gitk:11567 +msgid "Background" +msgstr "背景" + +#: gitk:11568 gitk:11598 +msgid "background" +msgstr "背景" + +#: gitk:11571 +msgid "Foreground" +msgstr "前景" + +#: gitk:11572 +msgid "foreground" +msgstr "前景" + +#: gitk:11575 +msgid "Diff: old lines" +msgstr "差异(Diff):老代码行" + +#: gitk:11576 +msgid "diff old lines" +msgstr "差异(diff)老代码行" + +#: gitk:11580 +msgid "Diff: new lines" +msgstr "差异(Diff):新代码行" + +#: gitk:11581 +msgid "diff new lines" +msgstr "差异(diff)新代码行" + +#: gitk:11585 +msgid "Diff: hunk header" +msgstr "差异(Diff):补丁片段头信息" + +#: gitk:11587 +msgid "diff hunk header" +msgstr "差异(diff)补丁片段头信息" + +#: gitk:11591 +msgid "Marked line bg" +msgstr "已标记代码行背景" + +#: gitk:11593 +msgid "marked line background" +msgstr "已标记代码行背景" + +#: gitk:11597 +msgid "Select bg" +msgstr "选择背景" + +#: gitk:11606 +msgid "Fonts: press to choose" +msgstr "字体:点击来选择" + +#: gitk:11608 +msgid "Main font" +msgstr "主字体" + +#: gitk:11609 +msgid "Diff display font" +msgstr "差异(Diff)显示字体" + +#: gitk:11610 +msgid "User interface font" +msgstr "用户界面字体" + +#: gitk:11632 +msgid "Gitk preferences" +msgstr "Gitk偏好设置" + +#: gitk:11641 +msgid "General" +msgstr "常规" + +#: gitk:11642 +msgid "Colors" +msgstr "颜色" + +#: gitk:11643 +msgid "Fonts" +msgstr "字体" + +#: gitk:11693 +#, tcl-format +msgid "Gitk: choose color for %s" +msgstr "Gitk:选择颜色用于%s" + +#: gitk:12206 +msgid "" +"Sorry, gitk cannot run with this version of Tcl/Tk.\n" +" Gitk requires at least Tcl/Tk 8.4." +msgstr "对不起,gitk不能运行在当前版本的Tcl/Tk中。\nGitk运行需要最低版本为Tcl/Tk8.4。" + +#: gitk:12416 +msgid "Cannot find a git repository here." +msgstr "在此位置未发现git仓库。" + +#: gitk:12463 +#, tcl-format +msgid "Ambiguous argument '%s': both revision and filename" +msgstr "不明确有歧义的参数\"%s\":版本和文件名称" + +#: gitk:12475 +msgid "Bad arguments to gitk:" +msgstr "运行gitk参数错误:" -- cgit v0.10.2-6-g49f6 From d7cc4fb0018e247cb5a05cbe55057bc70d3455af Mon Sep 17 00:00:00 2001 From: Paul Wise Date: Thu, 21 Mar 2019 15:05:32 +0800 Subject: gitk: Use right colour for remote refs in the "Tags and heads" dialog Makes it easier to see which refs are local and which refs are remote. Adds consistency with the remote background colour in the graph display. Signed-off-by: Paul Wise Signed-off-by: Paul Mackerras diff --git a/gitk b/gitk index 5b1d898..5c6db3d 100755 --- a/gitk +++ b/gitk @@ -3404,6 +3404,8 @@ set rectmask { } image create bitmap reficon-H -background black -foreground "#00ff00" \ -data $rectdata -maskdata $rectmask +image create bitmap reficon-R -background black -foreground "#ffddaa" \ + -data $rectdata -maskdata $rectmask image create bitmap reficon-o -background black -foreground "#ddddff" \ -data $rectdata -maskdata $rectmask @@ -10057,6 +10059,7 @@ proc sel_reflist {w x y} { set n [lindex $ref 0] switch -- [lindex $ref 1] { "H" {selbyid $headids($n)} + "R" {selbyid $headids($n)} "T" {selbyid $tagids($n)} "o" {selbyid $otherrefids($n)} } @@ -10086,7 +10089,11 @@ proc refill_reflist {} { foreach n [array names headids] { if {[string match $reflistfilter $n]} { if {[commitinview $headids($n) $curview]} { - lappend refs [list $n H] + if {[string match "remotes/*" $n]} { + lappend refs [list $n R] + } else { + lappend refs [list $n H] + } } else { interestedin $headids($n) {run refill_reflist} } -- cgit v0.10.2-6-g49f6 From 9ea831a2a6845251b1f322a128d3d35e8b3774c9 Mon Sep 17 00:00:00 2001 From: Gabriele Mazzotta Date: Sat, 23 Mar 2019 18:00:36 +0100 Subject: gitk: Do not mistake unchanged lines for submodule changes Unchanged lines are prefixed with a white-space, thus unchanged lines starting with either " <" or " >" are mistaken for submodule changes. Check if a line starts with either " <" or " >" only if we are listing the changes of a submodule. Signed-off-by: Gabriele Mazzotta Signed-off-by: Paul Mackerras diff --git a/gitk b/gitk index 5c6db3d..abe4805 100755 --- a/gitk +++ b/gitk @@ -8228,11 +8228,11 @@ proc parseblobdiffline {ids line} { } else { $ctext insert end "$line\n" filesep } - } elseif {![string compare -length 3 " >" $line]} { + } elseif {$currdiffsubmod != "" && ![string compare -length 3 " >" $line]} { set $currdiffsubmod "" set line [encoding convertfrom $diffencoding $line] $ctext insert end "$line\n" dresult - } elseif {![string compare -length 3 " <" $line]} { + } elseif {$currdiffsubmod != "" && ![string compare -length 3 " <" $line]} { set $currdiffsubmod "" set line [encoding convertfrom $diffencoding $line] $ctext insert end "$line\n" d0 -- cgit v0.10.2-6-g49f6