tsutsu3

小さな道具をつくっています。

ここにあるものはすべて、自分自身が必要として作り始めたものです。無理なくメンテナンスを続けられる規模に保っています。各プロジェクトのページからソースコード、ドキュメント、ダウンロード先を確認できます。

pi-hole-client

version
1.10.0
status
安定
platform
Android
license
MIT

Pi-hole の非公式 Android クライアントです。見やすいダッシュボードでサーバーの状態や利用状況を確認し、ワンタップでブロックを一時停止・再開できます。

詳細なグラフやランキング、リアルタイムのクエリログからネットワークの動きを把握できます。許可リスト・ブロックリスト・adlist の管理や、gravity の更新もアプリ内で行えます。

複数サーバーの切り替えに対応しています。Pi-hole v6 API を中心に、v5 の主要機能にも対応し、スマートフォンとタブレットに最適化した Material You デザインを採用しています。

Android で動作する Pi-hole client の統計画面

Markdown Named CodeBlocks

version
1.1.0
status
安定
packages
2
license
MIT

Markdown のコードブロックに名前をつけて、VS Code のプレビューに表示する拡張機能です。言語名のあとにファイル名を書くと、ブロックの上にキャプションとして表示されます。

描画は markdown-it-named-code-blocks が担当しています。npm に別途公開している markdown-it プラグインなので、エディタの外でも markdown-it が動く環境なら利用することができます。

example.md
```js:src/app.js
console.log("hello");
```
npm i markdown-it-named-code-blocks

linkify-it-py

version
2.2.0
status
安定
python
3.10+
license
MIT

プレーンテキストから URL とメールアドレスを見つけるライブラリです。Unicode に対応しています。JavaScript の linkify-it を移植したもので、markdown-it-py の自動リンク処理にも使われています。

スキームのない example.com のようなホスト名も検出します。上流のテストスイートをそのまま移植しているため、オリジナルと同じ挙動になります。

デモページで、ブラウザから試すこともできます。

example.py
from linkify_it import LinkifyIt

linkify = LinkifyIt()

linkify.match("Site tsutsu3.com")
# [linkify_it.main.Match({
#     'schema': '',
#     'index': 5,
#     'last_index': 16,
#     'raw': 'tsutsu3.com',
#     'text': 'tsutsu3.com',
#     'url': 'http://tsutsu3.com'
# })]
pip install linkify-it-py

git-when

version
0.1.0
status
安定
platform
Linux / macOS / Windows
license
MIT

Git リポジトリの履歴を読み込み、コミットが行われた曜日と時間帯を表示するコマンドラインツールです。ディレクトリを 1 つ以上指定すると、その配下にあるすべてのリポジトリを検出します。

ターミナルのヒートマップ、README やスライドに使える静的 SVG、CSV データ、オフラインで動作する単一ファイルの HTML レポートを出力できます。HTML レポートでは、リポジトリや作成者、年、表示をブラウザ上で切り替えられます。

HTML 出力はデモレポートで確認できます。

terminal
$ git-when .
$ git-when ~/work ~/src --format html --out git-when.html
曜日×時間帯のコミットヒートマップを表示した git-when の HTML レポート
wget -qO- https://raw.githubusercontent.com/tsutsu3/git-when/main/install.sh | sh