Hatena::ブログ(Diary)

こんなに月も紅いのに このページをアンテナに追加 RSSフィード

2013年1月28日(月)

Porting z.sh for NYAOS 3.x

z.sh(https://github.com/rupa/z)のNYAOS移植版

今まで移動してきたディレクトリ絶対パスで保存しておき、部分一致でもってザックリ検索して移動できる感じの物


インストール

1. _nya に以下を追加

# コマンド名を変更する場合 (default z)
# set _Z_CMD=j

# データファイル保存先を変更する場合 (default ~/_z).
# set _Z_DATA=C:/_z

# 'nyaos.prompt'関数に自分で追加する場合
# set _Z_NO_PROMPT_COMMAND=1

# 特定のディレクトリを保存しないようにする場合
# set _Z_EXCLUDE_DIRS=C:\;D:\;E:\

# 'nyaos.complete'関数に自分で追加する場合
# set _Z_NO_COMPLETE=1

# 'complete-or-list'機能が割り当てられているキーを変更している場合 (default TAB;CTRL_I).
# set _Z_TAB=CTRL_T;CTRL_A

# 'backward-delete-char'機能が割り当てられているキーを変更している場合 (default BACKSPACE).
# set _Z_BACKSPACE=CTRL_H

source z.lua

2. '_Z_NO_PROMPT_COMMAND=1'の場合、以下を'nyaos.prompt'関数に追加

_z('--add', nyaos.eval('pwd'))

3. 'set _Z_NO_COMPLETE=1'の場合、以下を'nyaos.complete'関数に追加

return _z('--complete', BASESTRING)

使い方


Global alias for NYAOS 3.x

zshのグローバルエイリアスNYAOS移植版

コマンド以外にも適用されるエイリアスなのですが、誤爆も多く使い辛いです…


インストール

1. _nya に以下を追加

source galias.lua

使い方

  • 'galias L "| less"'
  • 'galias T "| tail"'
  • 'ungalias L'

Abbreviations for NYAOS 3.x

zshのabbreviationsのNYAOS移植版

和訳すると略語展開、galiasに近いがコマンドライン上で展開が行われる


インストール

1. _nya に以下を追加

# 展開を行うキーを指定
set _ABBREV_EXPAND=TAB;CTRL_I

# 展開とそのキー自身を挿入するキーを指定
# set _ABBREV_EXPAND_INSERT=SPACE;RETURN;CTRL_M

# 展開を行わずにスペースを挿入するキーを指定
# set _ABBREV_NO_EXPAND=CTRL_X

# 'backward-delete-char'機能が割り当てられているキーを変更している場合 (default BACKSPACE).
# set _ABBREV_BACKSPACE=CTRL_H

source abbreviations.lua

使い方

  • 'abbrev L "| less"'
  • 'cat _nya L' で展開キーを押す
  • 'unabbrev L'

Complete by command for NYAOS 3.x

コマンド毎に指定できる補完機能

_nya_git.luaではz.luaとの連携に問題があり1から作り直した

  • キャッシュの使用は各コマンドに任せる(z.luaはbasestringによって動的に生成している)
  • 他ファイルでも宣言できるようグローバル化(なので早めに読み込んだ方が良い)
  • 'C:\Program Files\Mercurial\hg.exe'の様なのも'hg.exe'として関数を呼ばれる

インストール

1. _nya に以下を追加

source complete_by.lua

使い方

  • 'git ' でcomplete-or-listに指定されているキーを押す