2023/04/01(土)C++でJSONを読み書き

はてブ数 2023/03/31 22:04 つーさ
JSON読み書き用の個人的なライブラリとして、
また単純なプログラミングの興味としてC++でJSONをparse/serializeするやつをいじる熱がちょっと再燃して
https://github.com/ttsuki/nanojson などいじっていた。

あんまり巷のライブラリを検索したりはしてなかったんだけど、
ふとC++ JSONでググると、nlohmann/json を解説してくれてるQiita記事とかが出てきた。

nlohmann/jsonは、あー名前は見たことあるかも、と思って、記事読んでみると、
ADLでto_json探すのとか、名前空間汚したくなければシリアライザクラスの特殊化しろとか、
割と同じところにいきついていて、まぁ、普通に考えるとそうなるんだわなぁというconfidenceと引き換えに熱が冷めた。

C++でJSONを読み書きしたかったのだが、
C++でJSONをかっこよく読み書きできるようにしたくなってしまった、のは良くなくて、というかそもそも、
C++でJSONを読み書きしたかったわけではないはずだ。(どういう意味か?)

新年度ですね。新規性のあることをせねばなぁ。

2023/03/03(金)CapsLockキーをCtrlにするやつ

はてブ数 2023/03/02 18:55 つーさ
SysInternals Ctrl2cap のかわり capsctrl.reg 自分用。(本編終わり)

なんとなく、メインマシンのWindowsをクリーンインストールした。

最新devチャの Windows11 25300 のISOをとってきて中身をUSBメモリにコピーしてインストール。
Build 25300.rs_prerelease.230210-1451。さっぱり。インストールしたてのWindowsは気持ちさくさく動く感あるね。

SysInternals Ctrl2cap を /install して再起動したらキーボード何にもきかなくなってしまった。
ログインパスワード入れられないー。実際にはもう一度Windows再インストールからやったけど、
On-Screen Keyboard使えば、マウスポチポチして入れた……。

再現検証と思ってもういっかい、Ctrl2cap入れて再起動したら再発したので、一応FeedbackHubに投げた。
もう使えないのかなこれ。まぁ、👆のレジストリの書き換えすれば別にカーネルモードのフィルタドライバなんか入れる必要ないからいいんだけど。

2022/10/20(木)JOYSOUND全国採点GP まとめ

はてブ数 2022/10/19 18:17 ゲーム日記::JOYSOUNDつーさ

自分のJOYSOUND全国採点GPの記録をまとめていました。

https://ttsuki.dev/joysound-gp/JOYSOUND全国GP.xls

カラオケにそれなりに行くようになって、記録をつけ始めたのが2019年の10月から、コロナの営業休止期間中とかもありましたが、それらは無視してほぼちょうど3年になりました。記録をつけていると多少なりとも成長が見えて自己満足。

ちなみに、元データはうたスキサイトから、毎月初に前月分を手動でコピペして、文字列置換でどうにかしています。 いましたが、いい加減、編集ページを作った際に自動処理するようにしました。

## 前使っていたやつ
cat 202302.txt | tr -d '\r' \
  | tr '\n' '\a' \
  | sed -E -e 's@[0-9]{4}/[0-9]{2}\a\a@@g' \
      -e 's@\a\a\a@\n@g' -e 's@\a\a@\t@g' \
      -e 's@\t/?([0-9\.]+)(人|位| 点)@\t\1@g' \
      -e 's@^([0-9]+)/([0-9]+)/([0-9]+)@\1年\2月\3日@gm' \
  | tee a.txt

ジョイサウンドのページが1回でコピペできるようになったので楽になりましたね

今まで、Excelのピボットテーブルにしたやつを使っていた*1のですが公開できるようにHTMLにしました。無駄に、クライアントサイドレンダリングなど実装しています。ついでに https://ttsuki.dev/joysound-gp/#/水樹奈々 フィルタとパーマネントURL生成もつけたり。

あまり、JavaScriptとかCSSの知識アップデートしてなかったけど、今時の環境はなかなか便利ですね。ブログのCSSも見直そうかなぁ

2022/10/17(月)夜明け前のココア -AiRY RX MiX- (ジムノペディ第1番remix)

はてブ数 2022/10/17 13:25 音楽::リミックスつーさ
2012年1月に作ったジムノペディ第1番焼き直し(2016年8月)をstereo tools通しただけのやつ


MP3(6.74MB) (MIDIファイルは 前回記事 にあります)

原曲: ジムノペディ 第1番 / エリック・サティ

せっかくシンセサイザー買ったのに何ら楽曲制作に有効利用できてないのもどかしいね

さんくらにもあげた (同じモノです)


ジムノペディの遅さとシンプルさはLoFiやChillともすごいよく合うのでそういうのもいつか。
というか、ジムノペディの第1番は、原題?が、 Lent et Douloureux 「遅さと痛み」なので、
テンポの速いリミックスはちょっと冒涜が過ぎてるのかなぁとかはちょっぴり思う。

2022/10/05(水)ブログを復活させた

はてブ数 2022/10/04 22:47 サイト運営::未分類つーさ

なにも書かなくなってしまったし、メンテされてないサーバを放置するのは危険だしと思って、閉めていましたが、しばしば、まとまったことが書ける場所がない*1ことを苦しく思ったりしてたので、立て直しました。

このサイトは、相変わらず、QNAP TS-219P+の上で動いています。気づけば10年モノの筐体ですが、壊れないものですね。(フラグ

時代はコンテナですが、10年モノのARM32bit筐体にコンテナなどのるはずもなくベアメタルにお送りしております。*2

以前は、諸々のサーバソフトウェアなどは、NAS上でソースからビルドしてた*3のですが、そのしんどさに負けて、逆にメンテナンス不能に陥っていたので、今回はEntwareに乗ることにしました。もうmakeなんてしない(希望)。

  • apache 2.4の新しめのにあげた。

  • mod_md
    前は cron が壊れて、よくTLS証明書が賞味期限切れになっていましたが、今は時代が進んでmod_mdという便利なものがあるらしいので使ってみることにした。一回、本番レートリミットを勘違いしていて踏み越えて、一週間の禊をしました。 https://crt.sh で tu3.jp とか引くと恥ずかしい。

  • MySQLからPostgreSQLに移行した。
    PerlからMySQLにつなぐためのDBDバイナリがopkgで提供されてないかもだった。 cpanmもあっさり通らなかったのと、個人的にはぽすぐれ派なので移行しました。 mysqldump --compatible で持ってけるのかと思ったら、全然いけなかったのでDataGripの力をかりました。DataGripつよい。

  • mod_proxy_fcgi
    FastCGIが使いたいがmod_fcgidもapxsもopkgで提供されてないかもだった。一瞬、ここへ来てソースからビルドなの……?という考えがよぎったが mod_proxy_fcgi というのがあるらしいのでそれを使ってみることにしました。受ける側の立て方がよくわかってなくて変な立て方してるせいか、ちょいちょいフリーズするような。 504が出たらそゆことでイカよろしくー*4

ttsuki.dev も用意していく

2020/03/02(月)Vagrant / CentOS 8 / gcc 9 (Visual Studio からの remote build/debug) / apache / ffmpeg / nginx-rtmp-module 環境構築メモ

はてブ数 2020/02/29 01:05 つーさ

自分のためのメモ

「ffmpegを呼び出してライブストリームをごにょごにょして独自形式のコンテナにMuxしてhttpでストリーミングするアプリケーション」を作りたくなったので、 Visual Studio で、C++ コンソールアプリケーション(Linux) としてプロジェクトを作って、CentOS 8上でリモートビルドしてApache に載せてCGIとして動かしてみるために、 vagrant で VMを用意して、CentOS 8 上に、g++ と apache と ffmpeg を準備します。

WSLは、そのうち……(ずっと、そのうち……って言ってる気がする)

続きを読む

2020/03/01(日)2月 JOYSOUND全国採点GP まとめ

はてブ数 2020/03/01 23:00 ゲーム日記::JOYSOUNDつーさ

連ツイにするのめんどくなったのでこっちに書くことにした。 先月分はTwitter

全国採点GP BEST10: 最終848位/102,595人 980.52点

全国採点GP BEST10: 最終848位/102,595人 980.52点

  • 1位 素敵だね featured in FINAL FANTASY X / RIKKI 99.487 点
  • 2位 青空 / Lia 99.281 点
  • 3位 春宵情歌(Sweet Lovers Rock Mix) / 木之本桜(丹下桜) 98.767 点
  • 4位 Be Myself〈Best remix〉/ 丹下桜 98.424 点
  • 5位 津軽海峡・冬景色《本人映像》 / 石川さゆり 98.420 点
  • 6位 Rumbling hearts / 栗林みな実 97.835 点
  • 7位 Brand new Days / 高町なのは (田村ゆかり)、フェイト・T・ハラオウン (水樹奈々) 97.483 点
  • 8位 しあわせの魔法 / 木之本桜(丹下桜) 97.062 点
  • 9位 Snow Rain Ver.Blessing Wind / 八神はやて(植田佳奈)&リインフォース(小林沙苗) 96.985 点
  • 10位 純心 / 井上昌己 96.776 点

BEST10 は、初めて 3桁代の順位が出た。点が出やすい曲を発掘できたのが多分にある。ほんとは、好きな曲だけでBEST10固めたい。

マイ採点(スコア) 2020年02月のりれき

マイ採点(スコア) 2020年02月のりれき

続きを読む

2019/07/13(土)Cygwin php + PhpStorm Xdebug で、PHPなWebアプリをブレークポイント仕掛けてデバッグする

はてブ数 2019/07/12 23:21 つーさ

忘れる前にメモ。

まだcygwinなんか使ってるの? WSLにしたら? という心の声も聞こえるが、 postgresもphpも入れるだけで動くし慣れ親しんでいるのもあって、開発環境としては手軽なので。でも、vagrantやdockerが手軽に使えるようになってきて、世の中の人からみたらきっと少数派になりつつあるのだろう。

Cygwin に postgres 入れて、 php アプリの開発環境にしている。

$ php -S localhost:8000

で動く built-in server で、xdebug で PhpStorm から ブレークポイントしたい話。

XdebugのPre-built なバイナリは、PHP公式ビルド向けしかない。

急がば回れ。 PHP公式ビルド入れるかで入れた。ら、pdo_pgsql を有効にするとセグる。うーん、よくわかんない。

急がば回れ。その2。Xdebugソースからcygwin用にソースからビルドすればいいんじゃね?

https://github.com/xdebug/xdebug から、clone して、readmeのとおりに rebuild.sh すると、コンパイルエラーで止まる。ググると、 https://stackoverflow.com/questions/29752441/mac-xdebug-make-warning-incompatible-pointer-types-initializing-jmp-buf-ak が引っかかったので、

#ifdef HAVE_SIGSETJMP
#       define SETJMP(a) sigsetjmp(a, 0)
#       define LONGJMP(a,b) siglongjmp(a, b)
#       define JMP_BUF sigjmp_buf
#else
#       define SETJMP(a) setjmp(a)
#       define LONGJMP(a,b) longjmp(a, b)
#       define JMP_BUF jmp_buf
#endif

を、 xdebug_handler_dbgp.c の上の方に書いて、1032行目を

JMP_BUF          *original_bailout = EG(bailout);

にしたら、makeできた。make installした。

cygwin の php は、 /etc/php.d/ の下にある ini を読んでくれるので、

/etc/php.d/xdebug.iniを作って、

[Xdebug]
zend_extension="xdebug.so"
xdebug.remote_enable=1
xdebug.remote_port="9000"

と書いたら、phpinfo に xdebug 出てきた。

後は、PhpStorm のマニュアル https://pleiades.io/help/phpstorm/creating-php-web-application-debug-configuration.html に書いてあるとおりに進めたら、なんかデバッグブレークできた。

めでたしめでたし。