読者です 読者をやめる 読者になる 読者になる

tellme.tokyo

テルミー東京

zplug では Collaborators を募集しています

zplug Zsh

github.com

zplug は A next-generation plugin manager for zsh と謳い、絶賛開発中の zsh 向けのプラグインマネージャです。設計当初の目標通りフルスタックなツールになってきており、もはや zsh で書かれたというだけの、単なるパッケージマネージャとして使うことができるほどの機能を持ちはじめています。

どんな機能があるか、どんな使い方ができるかなどは公式の README をご覧ください。最近では、ドキュメントの多言語化にも取り組んでおり、日本語版の README も追加しました。お気に入りの機能として特筆すると、例えば C 言語で書かれたツールの管理もできます:

# インストール、アップデートに反応してビルドが走る
zplug "jhawthorn/fzy", \
    as:command, \
    rename-to:fzy, \
    hook-build:"
    {
        make
        sudo make install
    }"

現在、zplug では @b4b4r07@NigoroJr さんの2人で開発・メンテナンスしております。@zplug-man は bot メンバーです。zplug ではコミュニケーション用に Slack を導入しており、Slack から zplug-man に作業させたりしています。

そんな zplug では Collaborators を募集しています。記述する言語は Shell Script (zsh) です。zsh では黒魔術みたいな記述がたくさん出てきます。例えば:

if (( $#unclassified_plugins == 0 )); then
    # If $tags[use] is a regular file,
    # expect to expand to $tags[dir]/*.zsh
    unclassified_plugins+=( "$tags[dir]"/${~tags[use]}(N.) )
    if (( $#unclassified_plugins == 0 )); then
        # For brace
        unclassified_plugins+=( $(
        zsh -c "$_ZPLUG_CONFIG_SUBSHELL; echo $tags[dir]/$tags[use](N.)" \
            2> >(__zplug::io::log::capture)
        ) )
    fi
    # Add the parent directory to fpath
    load_fpaths+=( $tags[dir]/_*(N.:h) )

しかし、Slack で気軽に質問してもらえれば、なんでも答えます。まずは Slack に Join してみましょう!

次のマイナーバージョンアップは v2.3 です (下の gif は開発中の DEMO)。

バグレポートがあると嬉しいです。コラボレーター、コントリビューター、よろしくお願いします。ぜひ、使ってみてください。