nyagos 4.4.5_0 を公開しました。

4.4.4_4 は欠番になりました。今回の修正は、パッチリリースというには、少し修正が多めになりましたので。

今回の修正は、~/.nyagos の簡素化がメインです。

  • Lua関数: nyagos.dirname() を実装

これは UNIX の dirname 相当を行うための関数です。

$ lua_e "print(nyagos.dirname('C:/User/hymko/Share'))"
C:\User\hymko

みたいに使います。実は nyagos.dirname('A')nyagos.pathjoin('A','..') と等価なのは秘密です。

  • C-o で複数ファイル選択をサポート(Space,BackSpace,Shift-H/J/K/L,Ctrl-Left/Right/Down/Up)

f:id:zetamatta:20190901102126p:plain

ごらんのとおり、複数ファイル選択ができるようになりました。

  • Alt-Y(引用符つきペースト)で、改行前後に引用符を置くようにした

これは git status でリストされた修正ファイルをマウス操作でコマンドラインにペーストする時、空白が含まれたファイル名も扱えるようにするための修正です。 (Visual Studio だと、My Project なんていう名前のフォルダーがあって、これが難儀なんですよね)

  • C-o で表示される選択肢がディレクトリの時、末尾に \ (Linux では /) をつけるようにした。

これで選択後に TAB を1回打鍵するのが省けます。

  • nyagos.envadd("ENVNAME","DIR") と nyagos.envdel("ENVNAME","PATTERN") を実装

.nyagos での%PATH% の追加/削除の支援関数です。こんな感じで使います。

nyagos.envdel("PATH",
    "Oracle","Lenovo","Skype",
    "chocolatey","TypeScript","WindowsApps",
    "Wbem","dotnet")

これは %PATH% から OracleLenovo といったキーワードを含むフォルダーを削除します。長過ぎる %PATH% は誤動作を引き起こすこともあるので、いつも Lua 関数を作って短くしていたのですが、いい加減定番コードなので本体にツール関数として内蔵させた方がよいのではないかということで実装してみました。

nyagos.envadd("PATH",
    "C:\\go\\bin",
    "C:\\TDM-GCC-64\\bin",
    "%ProgramFiles%\\Git\\bin",
    "%ProgramFiles%\\Git\\cmd",
    "%ProgramFiles%\\Git\\cmd",
    "%ProgramFiles%\\Git\\usr\\bin",
    "%ProgramFiles(x86)%\\Git\\bin",
    "%ProgramFiles(x86)%\\Git\\cmd",
    "%ProgramFiles(x86)%\\Git\\usr\\bin",
    "%ProgramFiles%\\Subversion\\bin",
    "%ProgramFiles(x86)%\\Subversion\\bin",
    "~\\Share\\Program Files\\idmanager",
    "%VBOX_MSI_INSTALL_PATH%",
    "~\\Share\\bin",
    "~\\Share\\cmds")

こちらは逆に %PATH% にフォルダーを追加します。こちらは少々機能追加してありまして、%~% というワードを環境変数、~\ をホームディレクトリ名に展開するといったことを行います。また、ディレクトリとして存在しない場合は追加を行いませんので、.nyagos を DropBox などで共有化して、各PCでありえるケースをとにかく書くといったことも可能になります。

  • nyagos.pathjoin() で %ENVNAME% と ~\,~/ を展開するようにした

これは文字通りです。いちいち nyagos.env.ENVNAME とかいちいち書くの面倒なので。

以上になります。