From bb196e2619652f02f3459ad9464a18ccdebe3ebf Mon Sep 17 00:00:00 2001 From: Bert Wesarg Date: Fri, 14 Oct 2011 21:25:21 +0200 Subject: [PATCH] git-gui: new config to control staging of untracked files The default is the current "ask". Signed-off-by: Bert Wesarg Signed-off-by: Pat Thoyts --- git-gui.sh | 1 + lib/index.tcl | 14 +++++++++++++- lib/option.tcl | 18 ++++++++++++++++++ 3 files changed, 32 insertions(+), 1 deletion(-) diff --git a/git-gui.sh b/git-gui.sh index e5dd8bc1f2..7eeec52281 100755 --- a/git-gui.sh +++ b/git-gui.sh @@ -859,6 +859,7 @@ set font_descs { {fontui font_ui {mc "Main Font"}} {fontdiff font_diff {mc "Diff/Console Font"}} } +set default_config(gui.stageuntracked) ask ###################################################################### ## diff --git a/lib/index.tcl b/lib/index.tcl index 014acf9319..45094c2672 100644 --- a/lib/index.tcl +++ b/lib/index.tcl @@ -367,7 +367,19 @@ proc do_add_all {} { } } if {[llength $untracked_paths]} { - set reply [ask_popup [mc "Stage also untracked files?"]] + set reply 0 + switch -- [get_config gui.stageuntracked] { + no { + set reply 0 + } + yes { + set reply 1 + } + ask - + default { + set reply [ask_popup [mc "Stage also untracked files?"]] + } + } if {$reply} { set paths [concat $paths $untracked_paths] } diff --git a/lib/option.tcl b/lib/option.tcl index 3807c8d283..719103a422 100644 --- a/lib/option.tcl +++ b/lib/option.tcl @@ -156,6 +156,7 @@ proc do_options {} { {i-0..99 gui.commitmsgwidth {mc "Commit Message Text Width"}} {t gui.newbranchtemplate {mc "New Branch Name Template"}} {c gui.encoding {mc "Default File Contents Encoding"}} + {s gui.stageuntracked {mc "Staging of untracked files"} {list "yes" "no" "ask"}} } { set type [lindex $option 0] set name [lindex $option 1] @@ -208,6 +209,23 @@ proc do_options {} { } pack $w.$f.$optid -side top -anchor w -fill x } + s { + set opts [eval [lindex $option 3]] + ${NS}::frame $w.$f.$optid + ${NS}::label $w.$f.$optid.l -text "$text:" + if {$use_ttk} { + ttk::combobox $w.$f.$optid.v \ + -textvariable ${f}_config_new($name) \ + -values $opts -state readonly + } else { + eval tk_optionMenu $w.$f.$optid.v \ + ${f}_config_new($name) \ + $opts + } + pack $w.$f.$optid.l -side left -anchor w -fill x + pack $w.$f.$optid.v -side right -anchor e -padx 5 + pack $w.$f.$optid -side top -anchor w -fill x + } } } } -- 2.11.4.GIT