2023-01-01から1年間の記事一覧
例えば、 Volta で以下のように Node.js バージョンを管理していたとする。 # global $ node -v v20.10.0 # project-a $ node -v v18.19.0 ここで、 pnpm を公式サイトにあるようにインストールしたとする。 $ volta install pnpm $ pnpm --version 8.11.0 $…
Windows 標準の OpenSSH サーバーで建てた SSH サーバーに対してアクセスしようとしたらいろいろ詰まったのでメモしておきます。 Windows 標準の OpenSSH サーバー自体は、設定から可能なのでそれをやった後の話。 前提条件: Windows 11 もしくはそれと同等…
SteamVR 2.0 になった位のタイミングで SteamVR のオーバーレイメニューを開いて視界を移動させると、謎の間隔で視界の中央に来るようになってしまったので、やめさせる方法。 といってもこれは SteamVR の機能としてあるわけでは無く、 XSOverlay のアップ…
Windows だと diff コマンドがそもそも入っていなかったり、オリジナルの diff コマンドのパラメータ覚えてなかったりで、 git diff の形式で差分が見たいケースがあるとき。 そういうときは、次のようにすると何の関係の無いファイル同士でも差分が見られる…
System.CommandLine という Microsoft による .NET のコマンドラインライブラリがあります。 これを使うと (一生プレビュー版ではあるものの) わりと簡単にコマンドラインアプリを作れるのですが、今回はそれについての記事です。 各サブコマンドを定義後、…
ATOK お使いでしょうか。 Google IME よりは優秀だと思っていた時期もあったんですが、最近はそうでもないですね。 ところで、 ATOK にはいくつかの契約形態があります。例えば、 ATOK Passport プレミアムプラン (月額) ATOK Passport プレミアムプラン (年…
Unity で UXML を動的に生成したいことってありますよね?わたしはあります。 例えば、 UXML で記述できる HTML もどきは仕様が古すぎて、 HTML Living Standard っぽく記述した物をトランスパイルするとか......。 ということで、その方法のメモ。 とはいっ…
Cloudflare Pages 便利ですよね。 push するだけでビルドするのはよくありますが、そこから Cloudflare がもつ世界中のサーバーに投げてくれるのはとても良いです。 ところで、 Preview Deployment として反映されているものにもドメインを割り当てたいと思…
先週は忙しすぎて死んでいた......。 ということで、本題の話。 Storybook を GitHub Actions で動かしたいとき、サンプルに npx wait-on tcp:6006 として他プロセスのサーバーが起動するのを待つ、というものがあるんですが、それが Node.js 18 だと一生終…
GitHub で認識できないけど JSON の拡張である hujson を GitHub 上で表示されると、シンタックスハイライトが効きません。 でもこいつは JSON なので、 JSON として認識させて、かつシンタックスハイライトもして欲しい! という場合は、 .gitattributes を…
SwitchBot 、便利ですよね。 そこそこ安くて、かつ一応 SwitchBot にロックインされるということもないので、わたしも使っています。 ところで、 SwitchBot の温湿度計やプラグでは、 API 経由で各種値が取得できます。 今回はそれらを VictoriaMetrics とい…
VPS へ SSH した~い!けど Cloudflare 通してるので生 IP だしたくないし覚えてもな~い! というときに便利かもしれない Tailscale を入れてみましょう。 ということで、インストールしていきましょう。 公式的にはスクリプトがあるんですが、 sudo じゃな…
Web サービスリニューアルしたいことってありますよね? ただ、一度に一気にリニューアルすると、想定していない不具合が出てきたり、今の運用どうするの?っていう問題があったりします。 そこで、 Cloudflare Workers を使って段階的に移行する方法を紹介…
嬉しいことにわたしが持っているいくつかのリポジトリについて、 Issue をちらほらたててもらえるのですが、どれがすでに見たものか、などが分からないことが出てきました。 そこで、ラベルでうまいこと管理しようと思ったのですが、個人でかなりの数のリポ…
海外の大手 CMS に Contentful があるんですが、 API ドキュメントがびみょーに分かりにくいのでメモ。 例えば、ある Entry に対してデータを作成したい場合、こんな感じでリクエストを投げてね、とあります。 import { createClient, Environment } from "c…
React で children で渡ってきた子コンポーネントのうち、テキスト部分だけ取り出したいこと、ありますよね? そういうときに便利なのが React Children Utilities です。 こんな感じで使えます。 import Children from "react-children-utilities"; type Pr…
Cloudflare Pages の Web UI から、 PNPM + Astro なウェブサイトをデプロイするぞ! ということで、やり方のメモ。 やり方は、リポジトリを接続した後、以下のように設定すれば良い。 ビルドコマンド: # pnpm のインストールと、依存のインストール&ビル…
iOS で WebView を使っている場合、何らかの理由で WebView のプロセスが死んだ場合は webViewWebContentProcessDidTerminate が呼ばれるんですが、原因が分からず、なんとも困った感じになります。 ということで、頑張ってなんでクラッシュしたのかの大まか…
いまさら JavaScript なんて書けるか!ということで、 Contentful JavaScript SDK を TypeScript で使います。 まずはライブラリのインストール: $ pnpm add contentful いれたあと、以下のようにライブラリを定義すると良い。 import contentful from "con…
このたびアップロードよりダウンロードのほうが多いであろうファイルについて、 Cloudflare R2 へ移行したので、その方法のメモ。 ただし、 S3 を使っているなら公式のマイグレーションツールを使った方がおそらく良いので、そちらを使うべし。 まずは、 Was…
たまにはちょっと気分転換として、わたしの開発環境の紹介でも書いてみようかな、という気分だったので、 普段わたしが使っているテキストエディターである、 Visual Studio Code に入れている拡張機能について紹介しようと思います。 Programming Language …
わたしは趣味で Blender のアドオンを作っているのですが、そのときにうさみみハリケーンでメモリの状態を確認して、そこからアドオンを作る、ということをやっています。 そこで、特定のバイト列が存在するかどうかを調べたいことがあるのですが、ちょっと…
最近ゼロランタイム CSS-in-JS を触っていることがあるのですが、今回はラクスさんのブログで紹介していた macaron についての記事です。 macaron は、 styled-components などの CSS-in-JS とは異なり、ビルド時に静的な CSS を吐き出すいわゆるゼロランタ…
React で、子コンポーネントの関数を何らかの理由で呼び出したい場合、 useImperativeHandle を使います。 import React, { useImperativeHandle } from "react"; const SomeComponent = React.forwardRef((props, ref) => { useImperativeHandle(ref, () =>…
公式ドキュメントにちらっと書いてはいるけど、 script setup を使っていても、 named export したい! ということでやり方。 <script lang="ts" setup> type Colors = (typeof COLORS)[number]; type Props = { color: Colors; }; defineProps<Props>(); </script> <script lang="ts"> const COLORS = ["red", "…
pybind11 は C++ と Python とで良い感じにやり取りができる C++ ライブラリです。 少し前の記事の記事でも紹介したとおり、わりと使いやすいライブラリです。 ただ、絶妙にドキュメントが足りなかったりして困るケースがあるので、今回はそれの補完用のメモ…
macOS で 1Password 経由で SSH 接続したかったのですが、うまく行かなかったのでメモ。 基本的なやり方は、公式ドキュメントを参照: SSH agent | 1Password Developer 設定後、 ssh -T git@github.com とするが、一向に繋がらない。 エラーとしては以下の…
だいぶ前に Cloudflare Tunnels でやっていたのをプレビュー用に Localhost のサーバーをインターネットに公開する手順を書いたのですが、 その後再設定するときの手順。 ただし、その後 Cloudflare Tunnels の設定方法が変わってマイグレーションする必要が…
趣味で取りました。 サイト構成としては以下の通り: Next.js TailwindCSS Vercel 基本キャッシュは Vercel がうまいことやってくれているので、 Next.js だけパフォーマンスなり変えていく感じになります。 で、やったこととしては以下の通り。 lang=ja の…
最近 Visual Studio 以外でも C++ プロジェクト触れると便利よねーということで、 CMakeLists.txt から C++ プロジェクトを生成していることが多いです。 ただ、そのとき、おそらく Visual Studio に依存していると思う Post Build Event についてどうすれば…