Am 20.08.25 um 18:50 schrieb Mark Levedahl: > git-gui invokes some long running commands using "nice git $cmd" if nice > is found and works, otherwise just "git $cmd". The current code is more > complex than needed; lets simplify it. > > Signed-off-by: Mark Levedahl <mlevedahl@xxxxxxxxx> > --- > updates from v1: > - _which does not return a list, _nice must be a list to handle path > with spaces (should have been in v1, was in another patch - oops) > - Address Kristoffer Haugsbakk's comments > > git-gui.sh | 30 +++++++----------------------- > 1 file changed, 7 insertions(+), 23 deletions(-) > > diff --git a/git-gui.sh b/git-gui.sh > index 4528b22..be0b8d9 100755 > --- a/git-gui.sh > +++ b/git-gui.sh > @@ -578,21 +578,6 @@ proc open_cmd_pipe {cmd path} { > return [open |$run r] > } > > -proc _lappend_nice {cmd_var} { > - global _nice > - upvar $cmd_var cmd > - > - if {![info exists _nice]} { > - set _nice [_which nice] > - if {[catch {safe_exec [list $_nice git version]}]} { > - set _nice {} > - } > - } > - if {$_nice ne {}} { > - lappend cmd $_nice > - } > -} > - > proc git {args} { > git_redir $args {} > } > @@ -626,15 +611,14 @@ proc git_read {cmd {redir {}}} { > return [safe_open_command $cmdp $redir] > } > > -proc git_read_nice {cmd} { > - global _git > - set opt [list] > - > - _lappend_nice opt > - > - set cmdp [concat [list $_git] $cmd] > +set _nice [list [_which nice]] > +if {[catch {safe_exec [list {*}$_nice git version]}]} { > + set _nice {} > +} > > - return [safe_open_command [concat $opt $cmdp]] > +proc git_read_nice {cmd} { > + set cmdp [list {*}$::_nice $::_git {*}$cmd] > + return [safe_open_command $cmdp] > } > > proc git_write {cmd} { Thank you, that saves quite a few lines. A difference is that `nice` was looked up only when needed and now it's on every startup. Personally, I don't mind this change. It should not have a noticable effect on the responsiveness. Queued with an apostrophe in "let's". -- Hannes