Merge branch 'master' of git://ozlabs.org/~paulus/gitk
* 'master' of git://ozlabs.org/~paulus/gitk: gitk: Update .po files gitk: l10n: Add Catalan translation gitk: Fix typo in Russian translation gitk: Remove tcl-format flag from a message that shouldn't have it gitk: Pass --invert-grep option down to "git log" gitk: Synchronize config file writes gitk: Report errors in saving config file gitk: Only write changed configuration variables gitk: Enable mouse horizontal scrolling in diff pane gitk: Default wrcomcmd to use --pretty=email
This commit is contained in:
commit
92e625d3a3
132
gitk-git/gitk
132
gitk-git/gitk
@ -2516,6 +2516,13 @@ proc makewindow {} {
|
||||
} else {
|
||||
bindall <ButtonRelease-4> "allcanvs yview scroll -5 units"
|
||||
bindall <ButtonRelease-5> "allcanvs yview scroll 5 units"
|
||||
bind $ctext <Button> {
|
||||
if {"%b" eq 6} {
|
||||
$ctext xview scroll -5 units
|
||||
} elseif {"%b" eq 7} {
|
||||
$ctext xview scroll 5 units
|
||||
}
|
||||
}
|
||||
if {[tk windowingsystem] eq "aqua"} {
|
||||
bindall <MouseWheel> {
|
||||
set delta [expr {- (%D)}]
|
||||
@ -2776,33 +2783,87 @@ proc doprogupdate {} {
|
||||
}
|
||||
}
|
||||
|
||||
proc config_check_tmp_exists {tries_left} {
|
||||
global config_file_tmp
|
||||
|
||||
if {[file exists $config_file_tmp]} {
|
||||
incr tries_left -1
|
||||
if {$tries_left > 0} {
|
||||
after 100 [list config_check_tmp_exists $tries_left]
|
||||
} else {
|
||||
error_popup "There appears to be a stale $config_file_tmp\
|
||||
file, which will prevent gitk from saving its configuration on exit.\
|
||||
Please remove it if it is not being used by any existing gitk process."
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
proc config_init_trace {name} {
|
||||
global config_variable_changed config_variable_original
|
||||
|
||||
upvar #0 $name var
|
||||
set config_variable_changed($name) 0
|
||||
set config_variable_original($name) $var
|
||||
}
|
||||
|
||||
proc config_variable_change_cb {name name2 op} {
|
||||
global config_variable_changed config_variable_original
|
||||
|
||||
upvar #0 $name var
|
||||
if {$op eq "write" &&
|
||||
(![info exists config_variable_original($name)] ||
|
||||
$config_variable_original($name) ne $var)} {
|
||||
set config_variable_changed($name) 1
|
||||
}
|
||||
}
|
||||
|
||||
proc savestuff {w} {
|
||||
global viewname viewfiles viewargs viewargscmd viewperm nextviewnum
|
||||
global use_ttk
|
||||
global stuffsaved
|
||||
global config_file config_file_tmp
|
||||
global config_variables
|
||||
global config_variables config_variable_changed
|
||||
global viewchanged
|
||||
|
||||
upvar #0 viewname current_viewname
|
||||
upvar #0 viewfiles current_viewfiles
|
||||
upvar #0 viewargs current_viewargs
|
||||
upvar #0 viewargscmd current_viewargscmd
|
||||
upvar #0 viewperm current_viewperm
|
||||
upvar #0 nextviewnum current_nextviewnum
|
||||
upvar #0 use_ttk current_use_ttk
|
||||
|
||||
if {$stuffsaved} return
|
||||
if {![winfo viewable .]} return
|
||||
catch {
|
||||
if {[file exists $config_file_tmp]} {
|
||||
file delete -force $config_file_tmp
|
||||
set remove_tmp 0
|
||||
if {[catch {
|
||||
set try_count 0
|
||||
while {[catch {set f [open $config_file_tmp {WRONLY CREAT EXCL}]}]} {
|
||||
if {[incr try_count] > 50} {
|
||||
error "Unable to write config file: $config_file_tmp exists"
|
||||
}
|
||||
after 100
|
||||
}
|
||||
set f [open $config_file_tmp w]
|
||||
set remove_tmp 1
|
||||
if {$::tcl_platform(platform) eq {windows}} {
|
||||
file attributes $config_file_tmp -hidden true
|
||||
}
|
||||
if {[file exists $config_file]} {
|
||||
source $config_file
|
||||
}
|
||||
foreach var_name $config_variables {
|
||||
upvar #0 $var_name var
|
||||
puts $f [list set $var_name $var]
|
||||
upvar 0 $var_name old_var
|
||||
if {!$config_variable_changed($var_name) && [info exists old_var]} {
|
||||
puts $f [list set $var_name $old_var]
|
||||
} else {
|
||||
puts $f [list set $var_name $var]
|
||||
}
|
||||
}
|
||||
|
||||
puts $f "set geometry(main) [wm geometry .]"
|
||||
puts $f "set geometry(state) [wm state .]"
|
||||
puts $f "set geometry(topwidth) [winfo width .tf]"
|
||||
puts $f "set geometry(topheight) [winfo height .tf]"
|
||||
if {$use_ttk} {
|
||||
if {$current_use_ttk} {
|
||||
puts $f "set geometry(pwsash0) \"[.tf.histframe.pwclist sashpos 0] 1\""
|
||||
puts $f "set geometry(pwsash1) \"[.tf.histframe.pwclist sashpos 1] 1\""
|
||||
} else {
|
||||
@ -2812,15 +2873,43 @@ proc savestuff {w} {
|
||||
puts $f "set geometry(botwidth) [winfo width .bleft]"
|
||||
puts $f "set geometry(botheight) [winfo height .bleft]"
|
||||
|
||||
array set view_save {}
|
||||
array set views {}
|
||||
if {![info exists permviews]} { set permviews {} }
|
||||
foreach view $permviews {
|
||||
set view_save([lindex $view 0]) 1
|
||||
set views([lindex $view 0]) $view
|
||||
}
|
||||
puts -nonewline $f "set permviews {"
|
||||
for {set v 0} {$v < $nextviewnum} {incr v} {
|
||||
if {$viewperm($v)} {
|
||||
puts $f "{[list $viewname($v) $viewfiles($v) $viewargs($v) $viewargscmd($v)]}"
|
||||
for {set v 1} {$v < $current_nextviewnum} {incr v} {
|
||||
if {$viewchanged($v)} {
|
||||
if {$current_viewperm($v)} {
|
||||
set views($current_viewname($v)) [list $current_viewname($v) $current_viewfiles($v) $current_viewargs($v) $current_viewargscmd($v)]
|
||||
} else {
|
||||
set view_save($current_viewname($v)) 0
|
||||
}
|
||||
}
|
||||
}
|
||||
# write old and updated view to their places and append remaining to the end
|
||||
foreach view $permviews {
|
||||
set view_name [lindex $view 0]
|
||||
if {$view_save($view_name)} {
|
||||
puts $f "{$views($view_name)}"
|
||||
}
|
||||
unset views($view_name)
|
||||
}
|
||||
foreach view_name [array names views] {
|
||||
puts $f "{$views($view_name)}"
|
||||
}
|
||||
puts $f "}"
|
||||
close $f
|
||||
file rename -force $config_file_tmp $config_file
|
||||
set remove_tmp 0
|
||||
} err]} {
|
||||
puts "Error saving config: $err"
|
||||
}
|
||||
if {$remove_tmp} {
|
||||
file delete -force $config_file_tmp
|
||||
}
|
||||
set stuffsaved 1
|
||||
}
|
||||
@ -3977,6 +4066,7 @@ set known_view_options {
|
||||
{committer t15 . "--committer=*" {mc "Committer:"}}
|
||||
{loginfo t15 .. "--grep=*" {mc "Commit Message:"}}
|
||||
{allmatch b .. "--all-match" {mc "Matches all Commit Info criteria"}}
|
||||
{igrep b .. "--invert-grep" {mc "Matches none Commit Info criteria"}}
|
||||
{changes_l l + {} {mc "Changes to Files:"}}
|
||||
{pickaxe_s r0 . {} {mc "Fixed String"}}
|
||||
{pickaxe_t r1 . "--pickaxe-regex" {mc "Regular Expression"}}
|
||||
@ -4238,7 +4328,7 @@ proc allviewmenus {n op args} {
|
||||
|
||||
proc newviewok {top n {apply 0}} {
|
||||
global nextviewnum newviewperm newviewname newishighlight
|
||||
global viewname viewfiles viewperm selectedview curview
|
||||
global viewname viewfiles viewperm viewchanged selectedview curview
|
||||
global viewargs viewargscmd newviewopts viewhlmenu
|
||||
|
||||
if {[catch {
|
||||
@ -4259,6 +4349,7 @@ proc newviewok {top n {apply 0}} {
|
||||
incr nextviewnum
|
||||
set viewname($n) $newviewname($n)
|
||||
set viewperm($n) $newviewopts($n,perm)
|
||||
set viewchanged($n) 1
|
||||
set viewfiles($n) $files
|
||||
set viewargs($n) $newargs
|
||||
set viewargscmd($n) $newviewopts($n,cmd)
|
||||
@ -4271,6 +4362,7 @@ proc newviewok {top n {apply 0}} {
|
||||
} else {
|
||||
# editing an existing view
|
||||
set viewperm($n) $newviewopts($n,perm)
|
||||
set viewchanged($n) 1
|
||||
if {$newviewname($n) ne $viewname($n)} {
|
||||
set viewname($n) $newviewname($n)
|
||||
doviewmenu .bar.view 5 [list showview $n] \
|
||||
@ -4293,7 +4385,7 @@ proc newviewok {top n {apply 0}} {
|
||||
}
|
||||
|
||||
proc delview {} {
|
||||
global curview viewperm hlview selectedhlview
|
||||
global curview viewperm hlview selectedhlview viewchanged
|
||||
|
||||
if {$curview == 0} return
|
||||
if {[info exists hlview] && $hlview == $curview} {
|
||||
@ -4302,6 +4394,7 @@ proc delview {} {
|
||||
}
|
||||
allviewmenus $curview delete
|
||||
set viewperm($curview) 0
|
||||
set viewchanged($curview) 1
|
||||
showview 0
|
||||
}
|
||||
|
||||
@ -11237,6 +11330,7 @@ proc prefspage_general {notebook} {
|
||||
${NS}::label $page.maxwidthl -text [mc "Maximum graph width (lines)"]
|
||||
spinbox $page.maxwidth -from 0 -to 100 -width 4 -textvariable maxwidth
|
||||
grid $page.spacer $page.maxwidthl $page.maxwidth -sticky w
|
||||
#xgettext:no-tcl-format
|
||||
${NS}::label $page.maxpctl -text [mc "Maximum graph width (% of pane)"]
|
||||
spinbox $page.maxpct -from 1 -to 100 -width 4 -textvariable maxgraphpct
|
||||
grid x $page.maxpctl $page.maxpct -sticky w
|
||||
@ -11936,7 +12030,7 @@ if { [info exists ::env(GIT_TRACE)] } {
|
||||
}
|
||||
|
||||
# defaults...
|
||||
set wrcomcmd "git diff-tree --stdin -p --pretty"
|
||||
set wrcomcmd "git diff-tree --stdin -p --pretty=email"
|
||||
|
||||
set gitencoding {}
|
||||
catch {
|
||||
@ -12109,6 +12203,7 @@ catch {
|
||||
}
|
||||
source $config_file
|
||||
}
|
||||
config_check_tmp_exists 50
|
||||
|
||||
set config_variables {
|
||||
mainfont textfont uifont tabstop findmergefiles maxgraphpct maxwidth
|
||||
@ -12122,6 +12217,10 @@ set config_variables {
|
||||
linehoveroutlinecolor mainheadcirclecolor workingfilescirclecolor
|
||||
indexcirclecolor circlecolors linkfgcolor circleoutlinecolor
|
||||
}
|
||||
foreach var $config_variables {
|
||||
config_init_trace $var
|
||||
trace add variable $var write config_variable_change_cb
|
||||
}
|
||||
|
||||
parsefont mainfont $mainfont
|
||||
eval font create mainfont [fontflags mainfont]
|
||||
@ -12249,6 +12348,7 @@ set highlight_related [mc "None"]
|
||||
set highlight_files {}
|
||||
set viewfiles(0) {}
|
||||
set viewperm(0) 0
|
||||
set viewchanged(0) 0
|
||||
set viewargs(0) {}
|
||||
set viewargscmd(0) {}
|
||||
|
||||
@ -12307,6 +12407,7 @@ if {$cmdline_files ne {} || $revtreeargs ne {} || $revtreeargscmd ne {}} {
|
||||
set viewargs(1) $revtreeargs
|
||||
set viewargscmd(1) $revtreeargscmd
|
||||
set viewperm(1) 0
|
||||
set viewchanged(1) 0
|
||||
set vdatemode(1) 0
|
||||
addviewmenu 1
|
||||
.bar.view entryconf [mca "Edit view..."] -state normal
|
||||
@ -12322,6 +12423,7 @@ if {[info exists permviews]} {
|
||||
set viewargs($n) [lindex $v 2]
|
||||
set viewargscmd($n) [lindex $v 3]
|
||||
set viewperm($n) 1
|
||||
set viewchanged($n) 0
|
||||
addviewmenu $n
|
||||
}
|
||||
}
|
||||
|
File diff suppressed because it is too large
Load Diff
1354
gitk-git/po/ca.po
Normal file
1354
gitk-git/po/ca.po
Normal file
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
1058
gitk-git/po/es.po
1058
gitk-git/po/es.po
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue
Block a user