zsh-users
 help / color / mirror / code / Atom feed
From: Sebastian Gniazdowski <sgniazdowski@gmail.com>
To: Zsh Users <zsh-users@zsh.org>
Subject: Announcement of Zplugin ver. 300 commits
Date: Thu, 4 Feb 2016 17:29:17 +0100	[thread overview]
Message-ID: <CAKc7PVCucxzH29gkOw1PjCgjuoxtti0xkOO1vJpWL9VKCiTjLg@mail.gmail.com> (raw)

Hello,
nearly 300 commits have been added to Zplugin. The project is about
tracing what plugins do. An answer to injecting naive *.plugin.zsh
code into session. The feature base is very large, but one example can
say much:

to use Oh-My-Zsh sessions, one needs their libs/git.zsh. Snippet
feature allows to source that code:

zplugin snippet http://github.com/robbyrussell/oh-my-zsh/raw/master/lib/git.zsh

Now it's possible to load most of OMZ themes. However, what has
actually happened during the source? The feature, Dtrace, allows to
tell:
https://asciinema.org/a/79tig2hyjq61r6o3ww7hl5uti

% zplg dtrace
% zplugin snippet
http://github.com/robbyrussell/oh-my-zsh/raw/master/lib/git.zsh
% zplg dstop
% zplg dreport
Plugin report for _dtrace/_dtrace
---------------------------------

Functions created:
git_commits_ahead git_current_branch
git_prompt_ahead  git_prompt_behind
git_prompt_info   git_prompt_long_sha
git_prompt_remote git_prompt_short_sha
git_prompt_status git_remote_status
parse_git_dirty

Variables added or redefined:
POST_1_7_2_GIT  [     "" -> scalar ]

% zplg dunload
Deleting function git_commits_ahead
Deleting function git_current_branch
Deleting function git_prompt_ahead
Deleting function git_prompt_behind
Deleting function git_prompt_info
Deleting function git_prompt_long_sha
Deleting function git_prompt_remote
Deleting function git_prompt_short_sha
Deleting function git_prompt_status
Deleting function git_remote_status
Deleting function parse_git_dirty
Unsetting variable POST_1_7_2_GIT
dtrace report saved to $LASTREPORT


That's what Zplugin does. Tracks and reports, and unloads – zstyles,
bindkeys, aliases, zle widgets, PATH and FPATH elements, options,
variables. Plugins are tracked without Dtrace, it's their standard
mode of operation, unless "light" load is done, provided for trusted
code loading (like z-sy-h ;) and saving few CPU cycles. Naive code
cannot survive Zplugin eyes, hopefully. Tested 43 plugins and few OMZ
themes (some of them don't work because they use git _plugin_, that's
OMZ issue that they don't provide enough in lib/git.zsh).

https://github.com/psprint/zplugin

Best regards,
Sebastian Gniazdowski


             reply	other threads:[~2016-02-04 16:29 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-02-04 16:29 Sebastian Gniazdowski [this message]
2016-02-08 19:21 ` Sebastian Gniazdowski

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CAKc7PVCucxzH29gkOw1PjCgjuoxtti0xkOO1vJpWL9VKCiTjLg@mail.gmail.com \
    --to=sgniazdowski@gmail.com \
    --cc=zsh-users@zsh.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.vuxu.org/mirror/zsh/

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).