nyagos
記念すべき「令和元年」最初のリリースになります。括目せよ!(しなくてよい) (#233) \\host-name\share-name を補完できるようになった 宿願である2年越し issue の補完を実装しました。 仕事を VMWare 上の Windows で行うことが多いのですが、ソースを…
連休前の話ですが、NYAGOS 4.4.3_0 公開したので、更新内容をご説明します。 (#116) readline: Ctrl-Z,Ctrl-_ による操作取り消しを実装 3年前に issue を起案してた UNDO をようやく実装しました。やってみたら、意外と簡単でした。まぁ、技術的に難しいと…
UNCパスの補完機能の強化のためにコンピューター名一覧を出したいんだが、違うそうじゃない - 標準愚痴出力 記事を書いたら、自己解決する法則でもあるのかなぁ。 // +build run package main import ( "fmt" "unsafe" "golang.org/x/sys/windows" ) const R…
補完の際、Windowsでは空白を打ち消す文字の定番が決まってないのでパス全体を引用符で囲む。すると ~\Program Filesは "~\Program Files" みたいになるが、~ が先頭でなくなってしまうので、 ~ を%USERPROFILE% に変換できなくなってしまう。 かといって、~…
4.4.2_0(報告記事リンク)を出して間もないのですが、看過できない不具合がありましたので、修正版を公開しました。 Release 4.4.2_1 · zetamatta/nyagos(ダウンロードページ) 修正点は以下の2点 diskfree: 行末の空白を削除 これは大した問題ではなく、…
Release 4.4.2_0 · zetamatta/nyagos まだまだ修正する気満々だったのですが、リリースバイナリに未反映の修正がたまりすぎると不具合が発生した時、マスターと開発版をまた別管理しなくちゃいけなくなったります。それは避けたいので、4月になったし、いい…
Ctrl-C kills nyagos.exe itself when more runs without redirect · Issue #342 · zetamatta/nyagos more が Ctrl-C で nyagos ごと死んでしまうという不具合です。これは常に発生しているわけではなくて、nyagos の中から nyagos を呼んで、その中の more …
(2019.03.20 追記:Windows7 の Chrome では Unicode の合字が表示されないので、合字を画像に変えました) という文字を nyagos に貼り付けると、文字化けするだけでなく、カーソル位置もおかしくなるという問題 Zero width char deletion problem? · Issu…
文字の幅については nyagos において頭が痛い問題です。 mattn/go-runewidth でカーソルを戻す時に発行するバックスペースの個数を算出しています。ですが、Windows のコンソールでの実際の文字幅は Unicode の規格のものと微妙に違うので、文字によってはカ…
~\Share\Program Files というパスを補完する場合を考えよう。 bash だと ~/Share/Program\ Files と補完する。 UNIX だとワード単位で独立した引数としてコマンドに引き渡されるので「/home/USERNAME/Share/Program Files」をそのまま引き渡すことができる…
nyagos は lua53.dll → GopherLua への切り替えの際、組み込み言語のインターフェイスをある分離して、切り替えられるようにしたのですが、それを利用して、mattn 先生が開発された、Go製スクリプト言語 anko を組み込んだ anko-nyagos を試験的に作成してみ…
ビルドバッチ(make.cmd)でかすぎ。簡略化する ソース、どこから読んだらいいか分からん。整理する 残イシュー多すぎ。はよ片付けろ CMD.EXE依存エイリアス撲滅(mklinkやren) セマンティックバージョニング対応は 4.5 以降から。具体的には 4.5.x_y を v5.x.y…
あまりにソースのサブフォルダーが多くて、改造しようという人が迷いそうなので、ちょっとだけ整理した(でも、まだ多い) Cmd/ … ビルド結果置き場 Doc/ … ドキュメント Etc/ … ビルド時に参照する設定ファイル置き場など(旧Misc/) alias/ … エイリアス機…
日本では馴染みがないのだが、ヨーロッパのキーボードには AltGR というキーがあるようだ。用途としては、英語圏にない文字等を入力する時にシフト的に用いるようだ。 それが入力できなくなったという issue を起案いただいた。 [regression] AltGR issue ・…
nyagos の依存パッケージである zetamatta/go-texts/mbcs に不具合があったので、それをちゃんと import するよう、go modules を設定してみた。 そのメモ。間違っている箇所があればご指摘歓迎 go-texts 側 go modules を使用するモードに切り替える set GO…
現在の補完APIは Lua 側の負担が重いので、bash と同じくらいにお手軽な新補完APIを試作中してます。以下は git のサブコマンドを補完する例: nyagos.complete_for["git"] = function(args) if #args == 2 then local base = args[#args] local len = strin…
これな Stopping OpenSSH with Ctrl-C on password prompt, Escape sequences and etc. are disabled. · Issue #353 · zetamatta/nyagos 症状 nyagos から OpenSSH を起動して、パスワードプロンプトで Ctrl-C を押下すると、nyagos に復帰してこなくなる(…
症状 ls causes downloading online files on the DropBox folder · Issue #350 · zetamatta/nyagos nyagos と VMware と DropBox - 標準愚痴出力 DropBox のフォルダーを \\vmware-host\Shared Folders\経由で VM から参照できるようにすると、仮想マシン内…
Release 4.4.0_beta · zetamatta/nyagos Linux サポート(実験レベル) ドライブ毎のカレントディレクトリが子プロセスに継承されなかった問題を修正 ライブラリ "zetamatta/go-getch" のかわりに "mattn/go-tty" を使うようにした msvcrt.dll を(直接syscall…
もうさすがにネタ切れかなと毎年思いつつも、頼んでもないのに忘れた頃に大改造してしまうニッチな和製コマンドラインシェル、それが NYAGOS (Nihongo Yet Another GOing Shell) NYAGOS とは(復習) Windows向けの UNIX風コマンドラインシェルです。 C++ で…
nyagos では、子プロセスのバッチファイルが変更した環境変数を取り込むのに @call バッチファイル 引数1 引数2 … @set ERRORLEVEL_=%ERRORLEVEL% @(cd & set) > 一時ファイル名 @exit /b %ERRORLEVEL_% といった踏み台バッチを毎回作っていた。 これはこ…
多分理解されないと思うけど、あの「入力が数字から始まっていたら、即実行中ではなく記憶しておき、runとタイプされると数字順に実行する」という「古代 8bit BASIC」のシステム、 意外とコマンドラインシェルで便利かもね。nyagos の Lua で書いてみたけど…
Release 4.3.3_3 zetamatta/nyagos (#310) copy と move の宛先でショートカットをサポート (#313 reopened) git blame FILES | type | gvim - & で gvim が空バッファで始まってしまう問題を修正 壊れたジャンクションに対する rmdir ができなかった問題を…
(qrunch.io より転記) これな type and more supports UTF16 (if it contains '\000' ...) Issue #267 zetamatta/nyagos 当初は「とりあえず書いてみた」という感じの issue で、そのうちニーズがない割に面倒なので、やめようかな…と思っていました。 が、…
nyagos内蔵Luaで「lua_e "for line in io.lines() do print(line) end" < FILE」が FILE から読み込めない - 標準愚痴出力 ファイルまわりはシェル本体との密接な連携が必要なので、結局、io.* 以下の関数を全部自前バージョンで置き換えることにした。 最初…
nyagos 4.3 で、バッチファイルに Lua を組み込んで実行する際、内蔵Lua が 5.3 から 5.1 になったため、ラベルの文法がなくなって @setlocal & set "ARGS=%*" & nyagos.exe --norc -e "_,_,b=io.input([[%~f0]]):read('*l','*l','*a');assert(loadstring('\…
nyagos内蔵Lua が 5.1 になったので前の 5.3 向けの方法が使えなくなった donyagos.cmd @setlocal & set "ARGS=%*" & nyagos.exe --norc -e "_,_,b=io.input([[%~f0]]):read('*l','*l','*a');assert(loadstring('\n'..b,[[%~f0]]))()" @endlocal & exit /b %…
「cd -h」とすると、それまでたどったディレクトリが一覧で出るよ。もし「-2 C:\Users\hymko」とか表示されたら「cd -2」でそこへ移動できるよ! <DESKTOP-LGGUCRA:~/go/src/github.com> $ cd -h -3 C:\Users\hymko -2 C:\Users\hymko\go\src\github.com\zetamatta\nyagos -1 C:\Users\hymko\go\sr</desktop-lggucra:~/go/src/github.com>…
続・nyagos で lua53.dll のかわりに GopherLua を使おう - Qiitaより転載 続・nyagos で lua53.dll のかわりに GopherLua を使おう 「nyagos で lua53.dll のかわりに GopherLua を使おう - Qiita」の続き: β2 を出しました。 Release 4.3_beta2 · zetamat…
2018/04/25 付け記事:nyagos で lua53.dll のかわりに GopherLua を使おう - Qiitaより転載 nyagos で lua53.dll のかわりに GopherLua を使おう Using GopherLua instead of lua53.dll · Issue #300 · zetamatta/nyagos lua53.dll にはいくつか問題があり…