-
Notifications
You must be signed in to change notification settings - Fork 806
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
init: rewrite init process #260
Conversation
Wow, just the code looks so much better and more efficient! Great job with this, @derekstavis! |
I have no issues when running this change. Everything appears to be working excellently without errors, and it starts up drastically faster. Like, it's amazing. Great work on all of this! |
What is the progress on this? Are we reaching merging time? |
17e5fd4
to
82ab4e4
Compare
I have updated this branch to reflect the changes introduced by |
fa93faf
to
2402175
Compare
@oh-my-fish/docs please review docs - It was done using Google Translate |
what do you mean? |
Sorry for my brevity, I was on mobile. This PR touches translated docs. I've done an automatic translation from English to other languages using Google Translate. I'm pinging @oh-my-fish/docs team to review the changes contained on this PR, so it can be merged with correct docs. |
@derekstavis, thanks for your explanation! I can translate the changes to Russian, is it needed? |
a3001c7
to
3002aa5
Compare
3002aa5
to
119f089
Compare
119f089
to
45671ac
Compare
d0e8fe4
to
ce8f803
Compare
7a49259
to
b52007f
Compare
Now use pure globbing to generate 100% valid function and completion paths, effectively splitting the init process in two steps, one which paths are added, and other when initialization is done (sourcing init). This initialization code introduces a new interface for `init.fish` hook, which deprecates the previously used event model. The new interface injects three variables into `init.fish`: path, package and bundle. This variables can be used by the package to autoload paths, use bundled files, etc. Also supports key bindings by sourcing $OMF_CONFIG/key_bindings.fish and also key_bindings.fish in packages (plugins and themes) root directories. This is done when fish_user_key_bindings is called.
Now use pure globbing to generate 100% valid function and
completion paths, effectively splitting the init process in two
steps, one which paths are added, and other when initialization
is done (sourcing init).
This initialization code introduces a new interface for
init.fish
hook, which deprecates the previously used eventmodel. The new interface injects three variables into
init.fish
:path, package and bundle. This variables can be used by the
package to autoload paths, use bundled files, etc.
Also supports key bindings by sourcing
$OMF_CONFIG/key_bindings.fish and also key_bindings.fish in
packages (plugins and themes) root directories. This is done
when fish_user_key_bindings is called.