oh-my-fish/lib
Fabian Homborg 131c8d74e5 lib/git/git_is_touched: Speed up (#706)
* lib/git/git_is_touched: Speed up

This used to use `git status --porcelain`, which by necessity needs to
check the entire repo for all kinds of changes, just to figure out if
there are any.

Instead, we now use git commands that can exit early.

In large repos, this can be faster by a factor of 15 or so.

Fixes #624.

* Fix return status

`git diff` also returns 1 if there *is* a diff.
2019-06-07 12:14:11 -07:00
..
completions %%% United States of the Fish → Wahoo + OMF %%% 2015-08-27 00:20:13 +09:00
git lib/git/git_is_touched: Speed up (#706) 2019-06-07 12:14:11 -07:00
autoload.fish Normalize redirection syntax (#459) 2016-12-17 20:26:46 -06:00
prompt_segments.fish %%% United States of the Fish → Wahoo + OMF %%% 2015-08-27 00:20:13 +09:00
README.md docs: improve headers, use flag emojis for translations (#370) 2016-07-24 01:25:01 -03:00
require.fish Put conf_file loop outside of init_file loop (#666) 2019-01-10 19:57:14 -02:00

Core Library

Oh My Fish Documentation


require [--no-bundle] <name>...

require [--no-bundle] --path <path>...

Does initialization of Oh My Fish compatible packages:

  • Autoload function and completion paths
  • Source key bindings
  • Require dependencies from bundle
  • Source init.fish file

require support packages in the following directory structure:

functions/
completions/
bundle
init.fish
key_bindings.fish

When using the form require <name>..., the search path for packages is
$OMF_CONFIG and $OMF_PATH. It's also possible to require directories
using --path switch. To ignore dependency loading you can also use
--no-bundle switch

This function is the base of Oh My Fish framework, being responsible for
the major part of framework's own startup code.

autoload [-e] <path>...

Manipulate autoloading path components.

All paths ending with completions are correctly added to or erased from
$fish_complete_path.

To add paths to autoload:

autoload $mypath $mypath/completions

To erase paths from autoload:

autoload -e $mypath $mypath/completions