標準愚痴出力

個人的なIT作業ログです。もしかしたら一般的に参考になることが書いているかもしれません(弱気

2020-01-01から1年間の記事一覧

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 …

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 で、コミ…

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

昨年2019年の6月末に ironsand さんが scoop という Windows のパッケージマネージャに nyagos 4.4.5_2 を登録してくださいました(ありがとうございました)。 今頃になりましたが、どんなものか、試してみました。 (1)scoop をインストールする インス…

*_test.go を使わないテストコードとかサンプルコード

go

以下はどこかの記事を読んで知った方法なのだが、どこだったかわからなくなってしまったので、改めてここに記す(つまり、自分が考えついた方法ではない) *_test.go を使わないテストコードとかサンプルコードを書きたい時どうするか。 普通は別フォルダー…

Lua で名前付き関数パラメータ

lua

Luaでは「関数のパラメータがテーブルコンストラクター1個の時、関数コールの丸括弧を省略できる」という書式があります。 これはつまり function f(a) for key,val in pairs(a) do print(key.."="..val) end end f( { param1="12345" , param2="abcdef" } …

バッチファイルで「改行しない echo」

DOSコマンドで、好きな形式に「パスのコピー」する - Qiitaより echo -n MESSAGE 相当の改行しない echo は SET /P ="MESSAGE" < NUL で実現できるようだ。 この SET は本来 SET /P VAR=PROMPT という形式で、PROMPT を表示した後、ユーザが入力した値を環境…

素の Lua で setenv

lua

環境変数を参照する場合は os.getenv が使えるが、設定するための os.setenv 相当のものはない。 が、os.execute で自分自身を呼び出せば、無理やり設定することも可能だ(ただし、起動時のみ) --- LANG=C を設定したい時: if os.getenv("LANG") ~= "C" th…

IsNil を書いてみた

go

型が違っても nil 判定ができる関数を作ってみた。 package main import ( "fmt" "reflect" ) func IsNil(p interface{}) bool { if p == nil { return true } value := reflect.ValueOf(p) switch value.Kind() { case reflect.Ptr, reflect.Map, reflect.S…