tech

700 件の記事

2026

ABEMA の番組表を Omarchy のバーに出すウィジェットを作った

ABEMA の全チャンネルで「いま何が放送中か」を、バーのアイコンから 1 枚のパネルで見られるようにした。番組をクリックするとそのまま ABEMA で開く。 リポジトリ: https://github.com/polidog/omarchy-abematv なぜ作ろうと思ったのか? 自分でもわからないんだ・・・なんと…

tehilim に「PHPStan で戻り値を検査できる生 SQL」を入れた

自作の PHP 向け DB ツールキット tehilim に、生 SQL を書いて実行し、その戻り値を PHPStan で検査できる仕組みを入れた。この記事はその設計メモと、途中で踏んだ CI の罠、Copilot レビューとのやり取りの記録。 tehilim とは Prisma 風のスキーマファイルから、型付きのクエ…

マージ済みブランチを安全に削除する git dmb を作った

開発を続けていると、ローカルリポジトリにマージ済みのブランチが溜まっていく。 ひとつずつ確認して削除するのは地味に面倒だが、雑なワンライナーでまとめて消すのも少し怖い。 そこで、マージ済みのローカルブランチを安全に削除する Git サブコマンド、git dmb を作った。dmb は Delete Merged Bran…

Omarchyのバーから直接SNSに投稿できるプラグインを作った

BlueskyとMisskeyに一言書きたいだけなのに、ブラウザを開いて、タブを探して、書いて、そのままタイムラインを眺めて15分溶かす。 このムーブを1日に何回もやっていることに気づいて、いい加減どうにかしたくなった。 というわけで omarchy-plugin-social-poster というOmarchyのシェ…

Omarchy の環境を「レシピ」として公開する omasushi を作った

Omarchy を使い始めてから、マシンが増えるたびに同じことをやっている自分に気づいた。AUR からいつものパッケージを入れて、omarchy plugin add を何回か叩いて、フォントを設定して、kitty と tmux と nvim の設定を持ってきて、Claude Code のスキルを ~/.claude/…

令和版のSLコマンドを作った

SLコマンドをは昔から有名なコマンドとしてある。 sl コマンドは、LinuxやUnix系OSでファイル一覧を表示する ls コマンドを打ち間違えた(タイポした)ときに、端末画面を蒸気機関車が走り抜ける有名なジョークコマンドです。 とWikipediaにも書かれている。 しかし、いまや時代は令和。 ふと、SLコマンドだ…

PHP の Hello World を strace したら 2335 行出てきた話

echo "Hello"; だけの PHP スクリプトを strace にかけたら、ログが 2335 行になった。 C で同じことをすると 35 行。この 66 倍の差はどこから来るのか、というのが今回の話。 結論から言うと、犯人の 6 割は PHP ではなくバージョン管理ツールの shim で、 さらにその原因は自分…

Let's note に Omarchy を入れたら起動しなかった話

古い Let's note に Omarchy(DHH の Arch + Hyprland セットアップ)を入れてみたところ、ログイン後に画面が真っ黒になって起動しない。原因を調べていったら、最終的に「ハードウェアの限界」という結論にたどり着いたので、その調査過程を記録しておく。 症状 インストール自体は完了する ログ…

Omarchy環境でHerdrのprefixキーを押したら日本語入力から英語入力に切り替える

コーディングエージェントな時代になって LazyVim を使うようになり、ターミナルマルチプレクサも tmux だったり zellij だったりを渡り歩いてきた。 zellij でもそんなに不満はなかったんだけど、Herdr を試してみたら「これいいじゃん」ってなって乗り換えた。 ただ一つだけストレスがあった。 日本語…

Claude Code Channels でコンテキストをリセットする方法

Claude Code Channels で Discord から Bot を動かせるようになったが、一つだけ問題があった。それはコンテキストをリセットできないということだ。 通常 Claude Code を使っていれば /clear コマンドでコンテキストをクリアできる。しかし Discord から /clear コ…

RelayerというPHPのフレームワークを作った

以前、usePHPというライブラリを作っているという記事を書いた。 その後、仕事が忙しくてなかなか開発を進められなかったが、やっと最近時間ができてusePHPの開発を進めることができた。 usePHPはReactのようなUIに関するライブラリであって、それ単体だけで使うことはちょっと難しい。 一応Router機能がある…

設計ナイト2026に登壇してきた

設計ナイト2026に登壇してきた。 スポンサーセッション以外で登壇するのは久しぶりでちょっと緊張した。 伝えたかったことはなにか? AIがコードを書く時代になり、プログラミングが職人芸から大量生産の時代へと変わった。 だからこそ、ジェネレーティブプログラミングや2000年代のドメイン分析・プロダクトラインといった分野に…

ghqのかわりにgh-q入れた話

macを再インストールして環境構築しているときにgit+sshでGitHubの認証をするのももういやだなぁと思い gh コマンド、つまりGitHub CLIベースにしていこうと思った。 しかしそれにあたって一つだけ問題が発生した。それは長年愛用しているghqコマンドが使えなくなるということだ。 代替案をどうしようか悩ん…

git-wtを使い始めた

なんだかんだgit worktreeめんどくさくて使ってなかったんだけど、流石に仕事量的にgit worktree使わないと回らなくなったんでgit-wtをいれることにした。 使い始めてみたら結構満足している。 .envのコピー機能がある $ git config wt.copyignored true って書いておけ…

curaq-tuiを作った

CuraQという最高に素晴らしいサービスがある。 CuraQ 自分はリリース当初に、車での移動中にAndroid端末からあとで読みたい記事を片っ端から登録して、帰宅後に一気に読んだ最高の体験をしてからすっかりファンになってしまった。 そんな素晴らしいサービスだが、やはり不満なところもでてくる。 完全にニッチで誰も欲しが…

FloqというGTDライクなcliで使えるタスク管理ツールを作った

ずっとCLIでタスク管理をしたいと思っていた。朝思いついて、Claude Codeで作ってある程度形にできたので紹介する。 Floq polidog/floq 読み方は フロック です。(たぶん) 名前に思い入れもなくて、短い名前がよかったのとClaude Codeが「 Flow + q -(流れ、GTDの処理フロー)…

usePHPというライブラリを作っている

ここ数年PHPを使った開発を避けるようにしてきた。 理由は簡単で、Vercel + Nextjs(App Router)が結構強力な存在だったから。 ここ数年PHPを使わない理由 PHPでバックエンド作ってAPI仕様書を用意して、フロントエンド側として独立して開発みたいなの一見良さそうに見えるけど結構ツラミがある AP…

polidog/slack-shellというツールを作った

polidog/slack-shell というツールを作った。 ターミナルからSlackを操作するツール。 なぜ作ったのか? 去年開発環境をMacからOmarchyに移してからマウスを使うことが少なくなってきた。 しかしやっぱりSlackはどうしてもマウス操作をすることが多々ある。 さらに一昨日から分割キーボードを使い…

2025

LazyVimで日本語のスペルチェックを無効化する

LazyVimで日本語の文章を書いていたら、スペルチェックでテキストがほぼすべて真っ赤になっていた。 日本語にスペルチェックはいらないので、オフにする方法を調べた。 結論として、spelllang に cjk を追加すればOK。 日本語のスペルチェックをオフにする(グローバル設定) ~/.config/nvim/lua…

OmarchyでGoogle Chromeを使ってWebアプリを起動する

OmarchyでGoogleカレンダーのショートカットを Ctrl + Shift + C で起動できるようにキーバインドを設定した。 ブラウザはChromiumを使っている。 基本的にはChromiumを使って個人のGoogleアカウントでGmailやGoogleカレンダーを利用している。 でも、ショートカットキーで…

OmarchyでChromeを常に新しいウィンドウで開く方法

Omarchyには大体満足しているが、一つだけ気に入らないことがあった。 Super+Shift+BでChromeを起動できるのだが、すでにChromeが起動していた場合、そのワークスペースに移動されてしまう。これが結構不快で、Hyprlandを使っているならタブではなくウィンドウをたくさん表示する方が便利だと感じてい…