あふwで Cygwin のシンボリックリンクを辿れるようにする

あふwCygwin の symlink を透過的に扱えるようなスクリプトを書いた。

https://raw.github.com/m4i/afx-tools/master/follow-symlink.js

使い方はソースのヘッダ参照。以下に抜粋しました。

/**
 * あふw で Cygwinシンボリックリンクを扱うためのスクリプト
 *
 * Version: 1.0
 * License: MIT
 * URI: https://github.com/m4i/afx-tools
 *
 * 利用例
 *
 * 1. このファイルを AFXW.EXE と同じディレクトリに置く
 * 2. 同じディレクトリに AFXW.KEY というファイルを作成し以下の内容を記述する
 * ----
 * [KEYCUST]
 * ON=1
 * [NORMAL]
 * K0000="0913:0013"
 * K0001="1913:1013"
 * K0002="2913:2013"
 * K0003="0969:0069"
 * K0004="0986:0086"
 * K0005="0013&SCRIPT $~/follow-symlink.js ENTER "$F""
 * K0006="1013&SCRIPT $~/follow-symlink.js SHIFT-ENTER "$F""
 * K0007="2013&SCRIPT $~/follow-symlink.js CTRL-ENTER "$F""
 * K0008="0069&SCRIPT $~/follow-symlink.js E "$F"
 * K0009="0086&SCRIPT $~/follow-symlink.js V "$F"
 * ----
 *
 * これで Cygwinシンボリックリンクにカーソルを合わせて
 * ENTER, S-ENTER, C-ENTER, E, V キーを押下したときに、
 * 通常のファイルと同じような動作になります。
 *
 * 他にも色々とできますので詳しくは
 * USAGE, AFXWCFG.TXT, AFXWKEY.TXT を読んでください
 */

var USAGE = [
'Usage: &SCRIPT /path/to/follow-symlink.js [command] "$F"                    ',
'                                                                            ',
'Commands:                                                                   ',
'  ENTER                 ENTER をエミュレートする                            ',
'  ENTER-CD              symlink は &CD。それ以外は "ENTER" と同じ           ',
'  SHIFT-ENTER           SHIFT + ENTER をエミュレートする                    ',
'  CTRL-ENTER            CTRL + ENTER をエミュレートする                     ',
'  E                     E キーをエミュレートする                            ',
'  V                     V キーをエミュレートする                            ',
'  &EXEC/&CD/&CLIP/...   ファイルを引数にあふの内部命令を実行する            ',
'  (任意の文字列)        ファイルを引数に任意のプログラムを実行する          ',
'  (なし)                ファイルを実行ファイルとして実行する                ',
''
];