ZEN

ZEN (ZSH Extended Network) is a collection of scripts, functions, ZLE widget of some unofficial completions functions. The goal of ZEN is to manage some stuff related to ZSH that can't be include in the official upstream.

You can see ZEN like a CPAN for ZSH.

Actual version: 0.2

Changelog

  • Bug #43: zen inutilisable sur un zsh 4.26 (rhel5U3)
  • Bug #56: no_unset is contagious
  • Feature #24: Manage completion functions
  • Feature #27: Create zenlint
  • Feature #30: zen should be multiple repositories aware
  • Feature #31: Create a script or a function to report an issue
  • Feature #37: zenlint must check the usage of zmodload
  • Feature #38: Manage namespaces (kind of scripts)
  • Feature #39: Add -t option in zen
  • Feature #40: Create a manpage for zen

Features

  • Manage functions, scripts, completions, ZLE widgets
  • Multiple repositories
  • Dependencies and version aware (hower, dependencies can't refer to a specific version)
  • The core is written in pure ZSH, once you have executed the bootstrap, you don't need any third tool. (For example, we use the ztcp module to download files from ZEN repositories)

Restrictions

  • A repository MUST use HTTP transport protocol. HTTPs is not yet supported
  • A recent ZSH version is required (4.3.x)

Install

To install ZEN, just download the bootstrap and execute it.

[..]
% zsh ./bootstrap.zsh

You also need to add the following lines in your zsh configuration file:

fpath=(
        $fpath
        /export/home/asyd/.zen/zsh/scripts
        /export/home/asyd/.zen/zsh/zle )
autoload -U zen

Usage

Update catalogs

By default, only the official zen repository is configured.

% zen update

Search a script

% zen search zle
T |              Package | Description
------------------------------------------------------------------------------------------------------
Z |  dirname-current-arg | replace current argument by its parent directory
Z |   insert-root-prefix | Insert sudo or pfexec in the beginning of the line
Z |     next-file-nocomp | replace current argument by the next file as if you were
Z | previous-file-nocomp | replace current argument by the previous file as if you were

Install a script

ZEN automatically manage the dependencies, as well as standard packaging softwares.

% zen install Z insert-root-prefix
% autoload -U insert-root-prefix

Contrib

If you want to send your scripts, create a bug in our redmine. For the moment, you need to subscribe. A mailing list is also available.

 
zen.txt · Last modified: 2011/08/18 09:42 by jessew