Skip to content

Commit

Permalink
perf(startup): skip load of fifc rules when in interactive shell
Browse files Browse the repository at this point in the history
  • Loading branch information
phanen committed Apr 7, 2024
1 parent 2ee5bee commit 64433fa
Show file tree
Hide file tree
Showing 2 changed files with 55 additions and 54 deletions.
107 changes: 54 additions & 53 deletions conf.d/fifc.fish
Original file line number Diff line number Diff line change
@@ -1,62 +1,63 @@
# Keybindings
for mode in default insert
if not set --query --universal fifc_keybinding
if status is-interactive
# Keybindings
set -qU fifc_keybinding
or set -U fifc_keybinding \t

set -qU fifc_open_keybinding
or set -U fifc_open_keybinding ctrl-o

for mode in default insert
bind --mode $mode \t _fifc
else
bind --mode $mode $fifc_keybinding _fifc
end
end

if not set --query --universal fifc_open_keybinding
set --universal fifc_open_keybinding ctrl-o
end


# Private
set -gx _fifc_comp_count 0
set -gx _fifc_unordered_comp
set -gx _fifc_ordered_comp
# Only load fifc rules when fish is launched fzf
else if set -q _fifc_launched_by_fzf
# Private
set -gx _fifc_comp_count 0
set -gx _fifc_unordered_comp
set -gx _fifc_ordered_comp

# Set sources
fifc \
-n 'test "$fifc_group" = "directories"' \
-s _fifc_source_directories
fifc \
-n 'test "$fifc_group" = "files"' \
-s _fifc_source_files
fifc \
-n 'test "$fifc_group" = processes' \
-s 'ps -ax -o pid=,command='

# Builtin preview/open commands
fifc \
-n 'test "$fifc_group" = "options"' \
-p _fifc_preview_opt \
-o _fifc_open_opt
fifc \
-n 'test \( -n "$fifc_desc" -o -z "$fifc_commandline" \); and type -q -f -- "$fifc_candidate"' \
-r '^(?!\\w+\\h+)' \
-p _fifc_preview_cmd \
-o _fifc_open_cmd
fifc \
-n 'test -n "$fifc_desc" -o -z "$fifc_commandline"' \
-r '^(functions)?\\h+' \
-p _fifc_preview_fn \
-o _fifc_open_fn
fifc \
-n 'test -f "$fifc_candidate"' \
-p _fifc_preview_file \
-o _fifc_open_file
fifc \
-n 'test -d "$fifc_candidate"' \
-p _fifc_preview_dir \
-o _fifc_open_dir
fifc \
-n 'test "$fifc_group" = processes -a (ps -p (_fifc_parse_pid "$fifc_candidate") &>/dev/null)' \
-p _fifc_preview_process \
-o _fifc_open_process \
-e '^\\h*([0-9]+)'
# Set sources
fifc \
-n 'test "$fifc_group" = "directories"' \
-s _fifc_source_directories
fifc \
-n 'test "$fifc_group" = "files"' \
-s _fifc_source_files
fifc \
-n 'test "$fifc_group" = processes' \
-s 'ps -ax -o pid=,command='

# Builtin preview/open commands
fifc \
-n 'test "$fifc_group" = "options"' \
-p _fifc_preview_opt \
-o _fifc_open_opt
fifc \
-n 'test \( -n "$fifc_desc" -o -z "$fifc_commandline" \); and type -q -f -- "$fifc_candidate"' \
-r '^(?!\\w+\\h+)' \
-p _fifc_preview_cmd \
-o _fifc_open_cmd
fifc \
-n 'test -n "$fifc_desc" -o -z "$fifc_commandline"' \
-r '^(functions)?\\h+' \
-p _fifc_preview_fn \
-o _fifc_open_fn
fifc \
-n 'test -f "$fifc_candidate"' \
-p _fifc_preview_file \
-o _fifc_open_file
fifc \
-n 'test -d "$fifc_candidate"' \
-p _fifc_preview_dir \
-o _fifc_open_dir
fifc \
-n 'test "$fifc_group" = processes -a (ps -p (_fifc_parse_pid "$fifc_candidate") &>/dev/null)' \
-p _fifc_preview_process \
-o _fifc_open_process \
-e '^\\h*([0-9]+)'
end

# Fisher
function _fifc_uninstall --on-event fifc_uninstall
Expand Down
2 changes: 1 addition & 1 deletion functions/_fifc.fish
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ function _fifc
set fifc_fzf_query (string trim --chars '\'' -- "$fifc_fzf_query")

set -l fzf_cmd "
fzf \
_fifc_launched_by_fzf=1 SHELL=fish fzf \
-d \t \
--exact \
--tiebreak=length \
Expand Down

0 comments on commit 64433fa

Please sign in to comment.