NYAGOS 4.4.7 のバージョンアップ内容(予告)

こんな感じになる予定です。 (1)cd,pushd とその補完で、bash のような %CDPATH% をサポート Go開発者の人ならば nyagos.envadd("CDPATH", "~\\go\\src\\github.com\\zetamatta", "~\\go\\src\\bitbucket.org\\zetamatta") とかやっておくと、自分のレポ…

Go をバージョンアップする PowerShell スクリプト

次の Go 1.15 に備えて: Go のダウンロードページをクロールして、最新の go*.windows-amd64.zip を探す(β版は対象外) 現在インストールされているものよりも新しくなければ終了 ZIP ファイルをダウンロード $GOROOT を C:\go → C:\go1.14.4 のようにリネ…

NYAGOS 4.4.6_2 を公開しました。

Release 4.4.6_2 · zetamatta/nyagos 修正点は以下だけになります。 Fix: Ctrl-C を押下すると、Ctrl-D のようにシェルが終了してしまう不具合を修正 (4.4.6_0 で #383 修正時に発生) #383 は「ターミナルがクラッシュした時、一行入力関数がエラーを返して…

nyagos の自動アップデート機能(まだ道半ば)

自動アップデート機能なんてものは nyagos 自身に組み込むべきではないので、別の実行ファイルにする。だが、Goで組むとすぐ数メガバイトいってしまって望ましくない。 ということで、PowerShell で試作してみた。 今のところ、ZIPをダウンロードしてくるだ…

なんか、前に Go の GUI を検討したファイルが出てきたのでリサイクル

go

fyne-io/fyne: Cross platform GUI in Go based on Material Design サンプルを自分の WIndows10 でビルド・実行した時の表示: ちょっとフォントがアレかな?(設定かオプションで直るかな?) 実行ファイルのサイズ $ ls -ltr -rw-a-- 369 Jan 1 2019 fyne…

Windows の FileID とは

Windows は i-node がないから、2つのファイル名の同一性のチェックが面倒だ。 「.」や「..」を解決して 相対パスを絶対パス化して 英大文字・小文字を統一 といったことをせにゃならん。それでもなお、ジャンクションとか、ドライブ文字へのディレクトリア…

Go 1.14.4 で直ったという、Windows で O_CREATE | O_TRUNC で既存のファイル開くと読み取り専用なってしまうバグとは

os: opening an existing file with O_CREATE|O_TRUNC and permission 0 changes file to be read-only on Windows [1.14 backport] · Issue #39158 · golang/go 「あれ?これ nyagos のリダイレクトで発生するんじゃね?」と思ったが、発生しなかった。 ど…

nyagos のリリース手順 - make.cmd の秘密(備忘録)

nyagos にはビルドスクリプト: make.cmd というものがあります。 これ、中身は PowerShell で、機能過多なので普通のバッチファイルか Makefile などに変えてスリムなものに戻したいと思っているのですが、まだちょっと無理な状況です。 というわけで、まだ…

(リリース予告)NYAGOS 4.4.6_1

(2020.05.31 追記) リリースしました → Release 4.4.6_1 · zetamatta/nyagos ちょっと看過しづらい不具合がたまってきたので、近々、修正版(4.4.6_1)を公開する予定です。 今回の修正には新機能(WindowsTerminal 対応や、CDPATH )は含みません (masterブ…

Windows Terminal で Ctrl-H が Backspace と認識されないケースについて調べてみた(5/24追記あり)

nyagos では大丈夫なんだけど、コンソール版 vim.exe だと、Ctrl-H をタイプすると Backspace と認識されず豆腐(□)が表示される。 ちょっとしたコードを書いて、違いを比較してみた。 package main import ( "fmt" "github.com/zetamatta/go-console/getch…

WindowsTerminal の起動シェルに nyagos を指定する

(2020.05.24 追記:nyagos向け設定行で、起動ディレクトリを %USERPROFILE% で指定するようにした) Windows Terminal 1.0 が出たようですね! フォントがなかなかよいけど、どうせサロゲートペアな Unicode は表示できないんでしょ…と思ってたら、表示でき…

NYAGOS 4.4.6_0 を公開しました。

度重なる延期でお待たせしました。 Release 4.4.6_0 · zetamatta/nyagos 前回:(リリース予告)NYAGOS 4.4.6_0 - 標準愚痴出力 での案内以降の追加変更は以下のとおりです。 start の後のタブキーは(which と同様に)コマンド名補完をするようにした コマ…

Bitbucket の Mercurial Support が 2020年7月1日で終了すると聞いた俺たちは

Bitbucket の Mercurial レポジトリとその Downloads ページに上げたバイナリパッケージのバックアップをとらねばと思ったのはよいが https://bitbucket.org/zetamatta/nyaos3000/downloads/ https://bitbucket.org/zetamatta/nyaos3000/downloads/ > 64フ…

(リリース予告)NYAGOS 4.4.6_0

現在、まだ手元で試験運用中ですが、次の nyagos では次のような修正が盛り込まれる予定です。公開時期は未定ですが、特に不具合が発覚しなければ連休明けくらいが無難かなと考えています。 なお、master ブランチにはすでにマージされているので、使ってみ…

xnhttpd に静的コンテンツ&markdownテキストの発信機能をつけました

前回:CGIをローカルテストするための簡易ウェブサーバー xnhttpd をGoで書きました で実装した CGIテスト用ウェブサーバー xnhttpd に、静的コンテンツや markdown を発信する機能を実装しました。 zetamatta/xnhttpd: Tiny Web Server to test CGI on loca…

CGIをローカルテストするための簡易ウェブサーバー xnhttpd をGoで書きました

これな zetamatta/xnhttpd: Tiny Web Server to test CGI on localhost. 今は昔、wifky という 1ファイルで動作するPerl製 WikiEngine を開発していました。当時は、AN Httpd でローカルテストしてからサーバーにアップするということをしていたのですが、…

Goの reflect で Perlでいうところの「sorted keys %HASH」的なことをする

Go

とある slack で reflect のよい使用例についての話題が出てました。 reflect を使用したいというケースは、encoding とか O/R mapper 以外となると、ほとんどの場合「interface で済むんじゃね?さもなければプログラマがよく Go 言語を理解していないんじ…

Qiitaの自分の記事を全部ダウンロードして、GitHubに転載してみた。

Qiitaで不祥事があって退会者が結構出てるみたい。 LGTMがもったいないから、自分はすぐ退会しようとは思わないけど、一応、備えはしとこう。 ということで、一応、自分の記事を全部ダウンロードして、GitHub にアップしてみた。 zetamatta/my-qiita-article…

Windows で git diff の結果を patch.exe で使う

「git 互換 patch」で検索すると、次のようなページがすぐ見つかる。 Git - パッチ互換のdiffを作成する | git Tutorial こうか! $ git show --no-prefix 5f682fb657439fe518475e6effc6e7e30b1dfd33 > patch.1 だが、Windows では、このパッチを適用すると …

%PATH%が長すぎる時

%PATH%が長すぎて、これ以上フォルダーを追加できないけど、いちいちコマンド毎に alias の設定もやってられない場合: nyagos.envadd("NYAGOSPATH", "C:\\Program Files\\Oracle\\VirtualBox") とか nyagos.envadd("NYAGOSPATH", "~\\Share\\Program Files\\…

nyagos 4.4.5_3~4 を公開しました。

ちょっと、立て続けですが、4.4.5_3~4 を公開しています(4.4.5_3 でちょっと失敗したので、_4 をすぐリリースした的な) 一番、すぐ直したかったのはコレ echo $(gawk "BEGIN{ print \"\x22\x22\" }") で二重引用符が出ない不具合を修正 プロセスの出力結…

%DATE% の展開をサポートした。

nyagos で %date% の展開ができないというご指摘を耳にした。 もともと %CD% とか %ERRORLEVEL% みたいに「本当は環境変数ちがうけど、環境変数みたいに展開できる動的変数」はサポートしていたんだけど、%DATE% や %TIME% は未対応だった。 というわけで実…

その名も fcopy 、不屈のコピーだ

go

最近の Windows はファイルのコピーがたいへんだ。 以下のバッチファイルはビルドしたファイルを C:\Program Files\xxxxx にコピーするだけの代物。だが… C:\Program Files\xxxxx に書き込むには管理者権限が必要 PowerShell で管理者モードに昇格 管理者モ…

Windows のバージョンナンバーを得る Go パッケージを作成しました。

go

zetamatta/go-windows-osversion 仕様は簡単で、readme にあるように osversion.Query() を呼べば、OS のバージョン情報を格納した構造体へのポインタが帰ってきます。 ( Windows 以外の OS だと、バージョンナンバーはどれもゼロになります) どういうこと…

Visual Studio の作る「My Project」というフォルダー は awk 泣かせである

なぜなら svn status -q | gawk "{ print $2 }" が My の部分で見事に切れる。だが、 svn status -q | gawk "{ $1 = \"\" ; print $0 }" 以上のように $1 をつぶしてやるという方法もあるのだ。覚えておこうな!>未来の自分 未来の自分より これ、$1 と $2 …

Windows 8 系で scoop を入れる

だが、PowerShell のバージョンが古いので、そのままでは入らない。 PS C:\Users\Administrator> Get-Host | Select-Object Version Version ------- 4.0 Download Windows Management Framework 5.1 from Official Microsoft Download Center より、OS の種…

最近、nyagosのために作った関数を切り売っています

go-windows10-ansi Enable Windows10's native ansi-escape-sequences Windows10 ネイティブのエスケープシーケンスを有効にする go-windows-shortcut Make or read shortcut-files on Windows Windows のショートカット(*.lnk)を作る go-windows-consolei…

バックグラウンドワーカーからダイアログのデータを更新する

(2020.02.25 追記あり) 通常は BackgroundWorker からダイアログのコントロールを操作することはできない。だが、Delegate を経由すれば、可能になる。 Public Class Form1 '*** UIスレッドで実行される関数 *** Private Sub AddRow(color1 As Color, objs…

コマンドプロンプトでフォントサイズから全角・半角を区別する試み

go

現在のコマンドプロンプトでの文字列のピクセルサイズを測る API(gdi.dll のGetTextExtentPoint32W)を呼ぶパッケージを作成した。 zetamatta/go-windows-consolefontpixel これを使って、引数のテキストの長さを測るプログラムを書いた。 package main imp…

パッケージマネージャの「scoop」経由で kaoriya版 vim をインストールしてみました

前回:パッケージマネージャの「scoop」経由で nyagos をインストールしてみましたからの続き scoop install vim でインストールされる素の vim × skk.vim × git のコミットログ編集をすると、やはり日本語が厳しい。 (そりゃ SKK の辞書は EUC-JP で、コミ…