-
Notifications
You must be signed in to change notification settings - Fork 98
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
Support Zsh plugin standard? #104
Comments
I've created a PR with partial implementation (the most important parts) of the standard: #124. |
Hi @psprint, I've forked zgen (see zgenom). I'd like to support the
|
jandamm
added a commit
to jandamm/zgenom
that referenced
this issue
Dec 11, 2020
1. Standardized $0 Handling - Yes 2. Functions Directory - Yes 3. Binaries Directory - Sort of* 4. Unload Function - Doesn't apply 5. @zsh-plugin-run-on-unload Call - Doesn't apply 6. @zsh-plugin-run-on-update Call - No 7. Plugin Manager Activity Indicator - Yes 8. Global Parameter ZPFX - Yes 9. Global Parameter holding capabilities - Yes \* I don't think it is a good idea to automatically add every `bin` folder to the PATH. If the user wants this `zgenom bin <repo>` does so. Closes #27 Closes tarjoilija/zgen#104 Closes tarjoilija/zgen#124
jandamm
added a commit
to jandamm/zgenom
that referenced
this issue
Dec 16, 2020
1. Standardized $0 Handling - Yes 2. Functions Directory - Yes 3. Binaries Directory - Sort of* 4. Unload Function - Doesn't apply 5. @zsh-plugin-run-on-unload Call - Doesn't apply 6. @zsh-plugin-run-on-update Call - No 7. Plugin Manager Activity Indicator - Yes 8. Global Parameter ZPFX - Yes 9. Global Parameter holding capabilities - Yes \* I don't think it is a good idea to automatically add every `bin` folder to the PATH. If the user wants this `zgenom bin <repo>` does so. Closes #27 Closes tarjoilija/zgen#104 Closes tarjoilija/zgen#124
forivall
pushed a commit
to forivall/zgen
that referenced
this issue
Aug 8, 2023
This solves the issue that some plugins use `compdef` but zgenom does `compinit` after loading all plugins.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Hello!
There's attempt of mine to write down and clarify Zsh plugin standard. It follows Oh-My-Zsh unwritten standard, but solves a few issues like:
*_argzero
options likeno_function_argzero
.For a plugin manager, a short list of needed changes is:
ZERO
parameter at plugin load time, equal to path to sourced script ($0
from within the script).LOADED_PLUGINS
array to hold strings "user/plugin" of loaded plugins and the plugin being currently loaded.ZPFX
to a prefix-like directory (/usr
,/usr/local
,/opt
are examples of such directories). Zplug and Zplugin can do build-hooks and run Makefiles, providingZPFX
allows consistent and short hook-code.*_unload
function if it's provided, if user requests plugin unload.Zgen architecture is about generating script with sequence of
source
commands. With above commands, the script could look like:I've sent a patch to Zsh and it was accepted, it uses
realloc()
for array appends and is faster than previous code anywhere in 10 to 1000 times, so I think there's no pain of lowering zgen's excellent performance. ZERO will release programmers' will to do tricks. So for example zgen could issue:$ZPFX
hints that despite performance-centered architecture of Zgen, it can still do build-time (installation, update) hooks and make use of$ZPFX
(to run e.g.make PREFIX=$ZPFX install
).Does this make sense to you? Maybe you have ideas for extensions or modifications for the standard? It is located here:
http://zdharma.org/Zsh-100-Commits-Club/Zsh-Plugin-Standard.html
PRs can be submitted here.
The text was updated successfully, but these errors were encountered: