2019-03-01から1ヶ月間の記事一覧
Ctrl-C kills nyagos.exe itself when more runs without redirect · Issue #342 · zetamatta/nyagos more が Ctrl-C で nyagos ごと死んでしまうという不具合です。これは常に発生しているわけではなくて、nyagos の中から nyagos を呼んで、その中の more …
前回 → Windows でジャンクション作れない - 標準愚痴出力 完成品→ https://github.com/nyaosorg/go-windows-junction 「DeviceIoControl用の構造体」を作るのに、Microsoft ご本家の Go 言語パッケージ Microsoft/go-winio: Win32 IO-related utilities for…
【次回】 | 【完成品】 junction_go.run: package main import ( "os" "unsafe" "errors" "golang.org/x/sys/windows" "golang.org/x/xerrors" ) const ( _MAXIMUM_REPARSE_DATA_BUFFER_SIZE = 16384 _FSCTL_SET_REPARSE_POINT = 589988 _INVALID_HANDLE_VAL…
もうパッケージの多くが、Go 1.12 名指しになってるのに! go.mod を騙し騙しで調整し、Go 1.12 で追加された関数の使用を我慢しつづけてきたが、さすがにもう待てん! というわけで、Go 1.12 をビルド時にダウンロードさせるようにした(→ appveyer.yml: do…
自分のプロダクトが依存しているパッケージ T についてプルリクエストが来ているようですが、まだマージされていません。 その修正の影響がどの程度こちらに影響にあるかあらかじめ検証したいと思いますが、go.mod にその修正をどう書くのが正解か、よくわか…
setlocal call :"%1" endlocal exit /b :"install" powershell "start-process -FilePath 'cmd.exe' -ArgumentList ('/s /c '+[char]34+((get-wmiobject win32_networkconnection | %%{ 'net use '+$_.LocalName+' '+[char]34+$_.RemoteName+[char]34 }) -jo…
(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…
一般ユーザでは C:\Program Files 以下へファイルをコピーすることはできないので、管理者権限で自分自身を起動しなおすようにする。 make.cmd setlocal set "EXE=%~dp0\bin\Release\HogeHoge.exe" call :"%1" endlocal exit /b :"install" powershell Start…
あまりにソースのサブフォルダーが多くて、改造しようという人が迷いそうなので、ちょっとだけ整理した(でも、まだ多い) Cmd/ … ビルド結果置き場 Doc/ … ドキュメント Etc/ … ビルド時に参照する設定ファイル置き場など(旧Misc/) alias/ … エイリアス機…
Go 1.12 で、実行したプロセスの ERRORLEVEL を得るためのメソッド:"os".ProcessState.ExitCode() が追加されたので、対応の準備をすすめていて気づいたのだけれども… 昔の Go言語だと、0 以外の ERRORLEVEL を受け取ると、"os/exec".Cmd.Run() で fmt.Erro…