mirror of
https://github.com/fish-shell/fish-shell
synced 2024-12-27 05:13:10 +00:00
Attempt to delay looking up command-not-found until the first not-found command to speed up startup
This commit is contained in:
parent
2628da4a59
commit
978066a6de
1 changed files with 16 additions and 13 deletions
|
@ -221,21 +221,24 @@ function __fish_config_interactive -d "Initializations that should be performed
|
|||
commandline -f repaint
|
||||
end
|
||||
|
||||
# If the ubuntu command-not-found package can be found, add a handler for it
|
||||
# The first time a command is not found, look for command-not-found
|
||||
# This is not cheap so we try to avoid doing it during startup
|
||||
function fish_command_not_found_setup --on-event fish_command_not_found
|
||||
# Remove fish_command_not_found_setup so we only execute this once
|
||||
functions --erase fish_command_not_found_setup
|
||||
|
||||
# First check in /usr/lib, this is where modern Ubuntus place this command
|
||||
if test -f /usr/lib/command-not-found
|
||||
function fish_command_not_found_handler --on-event fish_command_not_found
|
||||
/usr/lib/command-not-found $argv
|
||||
end
|
||||
else
|
||||
# Ubuntu Feisty places this command in the regular path instead
|
||||
if which command-not-found > /dev/null 2> /dev/null
|
||||
# First check in /usr/lib, this is where modern Ubuntus place this command
|
||||
if test -f /usr/lib/command-not-found
|
||||
function fish_command_not_found_handler --on-event fish_command_not_found
|
||||
command-not-found $argv
|
||||
/usr/lib/command-not-found $argv
|
||||
end
|
||||
else
|
||||
# Ubuntu Feisty places this command in the regular path instead
|
||||
if type -p command-not-found > /dev/null 2> /dev/null
|
||||
function fish_command_not_found_handler --on-event fish_command_not_found
|
||||
command-not-found $argv
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
|
|
Loading…
Reference in a new issue