diff options
author | Bert Wesarg <bert.wesarg@googlemail.com> | 2011-10-14 10:14:51 +0200 |
---|---|---|
committer | Pat Thoyts <patthoyts@users.sourceforge.net> | 2011-10-18 09:27:28 +0100 |
commit | e9144d5555133a76addb4829dca0e7a9684e1ed4 (patch) | |
tree | 61389229b5143154938e935cf82fbafbcaf91d06 | |
parent | 0a0243d7333a5c0de107170d02f667c37fb4dc54 (diff) | |
download | git-e9144d5555133a76addb4829dca0e7a9684e1ed4.tar.gz |
git-gui: add regexp search mode to the searchbar
It's off by default, but can be enabled via the config gui.search.regexp.
Signed-off-by: Bert Wesarg <bert.wesarg@googlemail.com>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
-rw-r--r-- | lib/search.tcl | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/lib/search.tcl b/lib/search.tcl index 461c66d1a0..9268ec325b 100644 --- a/lib/search.tcl +++ b/lib/search.tcl @@ -7,6 +7,8 @@ field w field ctext field searchstring {} +field regexpsearch +field default_regexpsearch field casesensitive field default_casesensitive field searchdirn -forwards @@ -19,6 +21,7 @@ constructor new {i_w i_text args} { set w $i_w set ctext $i_text + set default_regexpsearch [is_config_true gui.search.regexp] if {[is_config_true gui.search.smartcase]} { set default_casesensitive 0 } else { @@ -30,10 +33,13 @@ constructor new {i_w i_text args} { entry $w.ent -textvariable ${__this}::searchstring -background lightgreen ${NS}::button $w.bn -text [mc Next] -command [cb find_next] ${NS}::button $w.bp -text [mc Prev] -command [cb find_prev] - ${NS}::checkbutton $w.cs -text [mc Case-Sensitive] \ + ${NS}::checkbutton $w.re -text [mc RegExp] \ + -variable ${__this}::regexpsearch -command [cb _incrsearch] + ${NS}::checkbutton $w.cs -text [mc Case] \ -variable ${__this}::casesensitive -command [cb _incrsearch] pack $w.l -side left pack $w.cs -side right + pack $w.re -side right pack $w.bp -side right pack $w.bn -side right pack $w.ent -side left -expand 1 -fill x @@ -52,6 +58,7 @@ constructor new {i_w i_text args} { method show {} { if {![visible $this]} { grid $w + set regexpsearch $default_regexpsearch set casesensitive $default_casesensitive } focus -force $w.ent @@ -106,6 +113,9 @@ method _do_search {start {mlenvar {}} {dir {}} {endbound {}}} { upvar $mlenvar mlen lappend cmd -count mlen } + if {$regexpsearch} { + lappend cmd -regexp + } if {!$casesensitive} { lappend cmd -nocase } |