{ "version": "https://jsonfeed.org/version/1.1", "user_comment": "This feed allows you to read the posts from this site in any feed reader that supports the JSON Feed format. To add this feed to your reader, copy the following URL -- https://matoken.org/blog/tag/terminal/feed/json -- and add it your reader.", "home_page_url": "https://matoken.org/blog/tag/terminal", "feed_url": "https://matoken.org/blog/tag/terminal/feed/json", "language": "ja", "title": "terminal – matoken's blog", "description": "Is there no plan B?", "icon": "https://matoken.org/blog/wp-content/uploads/2025/03/cropped-1865f695c4eecc844385acef2f078255036adccd42c254580ea3844543ab56d9.jpeg", "items": [ { "id": "https://matoken.org/blog/?p=5191", "url": "https://matoken.org/blog/2026/01/27/mystify-term/", "title": "\u61d0\u304b\u3057\u3044\u611f\u3058\u306e\u30bf\u30fc\u30df\u30ca\u30eb\u30b9\u30af\u30ea\u30fc\u30f3\u30bb\u30fc\u30d0\u30fc\u306emystify-term", "content_html": "
\n
\n

\n
\n

\u53e4\u3044Windows \u3092\u4f7f\u3063\u3066\u3044\u305f\u65b9\u306f\u61d0\u304b\u3057\u304f\u611f\u3058\u308b\u304b\u3082\u3057\u308c\u306a\u3044\u30bf\u30fc\u30df\u30ca\u30eb\u30b9\u30af\u30ea\u30fc\u30f3\u30bb\u30fc\u30d0\u30fc\u306emystify-term \u3068\u3044\u3046\u3082\u306e\u3092\u898b\u304b\u3051\u305f\u306e\u3067\u8a66\u3057\u3066\u307f\u307e\u3057\u305f\uff0e

\n
\n
\n\n
\n

\n

\n
\n
\n

install

\n
\n
\n

c\u88fd\u3067\u4f9d\u5b58\u3082\u5c11\u306a\u3044\u306e\u3067make \u4e00\u767a\u306a\u611f\u3058\u3067\u3059\uff0eDebian sind amd64/Raspberry Pi bookworm armhf \u3068\u3082\u306b\u554f\u984c\u306a\u304f\u52d5\u304d\u307e\u3057\u305f\uff0e

\n
\n
\n
\n
$ git clone https://github.com/adsr/mystify-term\n$ cd mystify-term\n$ install mystify-term ~/bin/\n$ which mystify-term\n/home/matoken/bin/mystify-term\n$ mystify-term --help\nUsage:\n  mystify-term [options]\n\nOptions:\n  -h, --help                  Show this help\n  -v, --version               Show program version\n  -q, --polys=<int>           Set number of polygons (default=2, max=16)\n  -p, --points=<int>          Set number of points per polygon (default=4, max=16)\n  -t, --trails=<int>          Set number of trails lines (default=20, max=64)\n  -f, --fps=<int>             Set frames per second (default=60)\n  -e, --max-velocity=<float>  Set max velocity per point (default=1.00, min=0.01, max=10.00)\n  -s, --no-status             Hide status text\n  -i, --trail-incr=<int>      Render every nth trail (default=4, max=64)\n$ mystify-term --version\nmystify-term v0.1.0
\n
\n
\n
\n
\n
\n

\u5b9f\u884c\u4f8b

\n
\n
\n

\u3068\u308a\u3042\u3048\u305a\u30aa\u30d7\u30b7\u30e7\u30f3\u7121\u3057\u3067\u8d77\u52d5\u3057\u307e\u3059\uff0e\u61d0\u304b\u3057\u3044\u611f\u3058\u306e\u30b9\u30af\u30ea\u30fc\u30f3\u30bb\u30fc\u30d0\u30fc\u304c\u8d77\u52d5\u3057\u307e\u3059\uff0e

\n
\n
\n

\u30b9\u30af\u30ea\u30fc\u30f3\u30b7\u30e7\u30c3\u30c8\u306f\u3053\u3093\u306a\u611f\u3058\u3067\u3059\uff0e

\n
\n
\n

\"mystify

\n
\n
\n

UTF-8 \u306e\u56db\u89d2\u3092\u4f7f\u3063\u3066\u3044\u308b\u306e\u3067\uff0cUTF-8 \u304c\u4f7f\u3048\u306a\u3044\u3068\u3053\u3093\u306a\u611f\u3058\u306b\u306a\u3063\u305f\u308a\u3057\u307e\u3059\uff0e\u307e\u3042\u3053\u308c\u306f\u3053\u308c\u3067\uff0e

\n
\n
\n

\"mystify

\n
\n
\n

\u52d5\u3044\u3066\u3044\u308b\u69d8\u5b50\u306f\u4ee5\u4e0b\u306easciinema \u3092\uff0e

\n
\n

\n

\n
\n
\n

\u30ad\u30fc\u30d0\u30a4\u30f3\u30c9

\n
\n
\n

\u4e0b\u306e\u65b9\u306b\u3042\u308b\u3068\u304a\u308a\u4ee5\u4e0b\u306e\u30ad\u30fc\u30d0\u30a4\u30f3\u30c9\u3067\u64cd\u4f5c\u304c\u3067\u304d\u307e\u3059\uff0e

\n
\n
\n
\n
\n

p=pause, s=step, r=reinit, w=status, q=quit

\n
\n
\n
\n
\n
\n
p
\n
\n

\u4e00\u6642\u505c\u6b62/\u518d\u958b

\n
\n
s
\n
\n

\u505c\u6b62/\u30b3\u30de\u9001\u308a(p\u3067\u518d\u958b)

\n
\n
r
\n
\n

\u518d\u521d\u671f\u5316

\n
\n
w
\n
\n

\u30b9\u30c6\u30fc\u30bf\u30b9\u8868\u793a/\u975e\u8868\u793a

\n
\n
q
\n
\n

\u7d42\u4e86

\n
\n
\n
\n
\n
\n
\n

\u30b3\u30de\u30f3\u30c9\u30e9\u30a4\u30f3\u30aa\u30d7\u30b7\u30e7\u30f3

\n
\n
\n

\u30b9\u30bf\u30fc\u30bf\u30b9\u3092\u3044\u3058\u308c\u307e\u3059\u304c\uff0c -s, --no-status \u304f\u3089\u3044\u3067\u3042\u3068\u306f\u65e2\u5b9a\u5024\u3067\u3044\u3044\u304b\u306a\u3068\u8a00\u3046\u611f\u3058\uff0e

\n
\n
\n
\n
\n
\n
-h, --help                  Show this help
\n
\n
\n
\n
\n
\n

\u3053\u306e\u30d8\u30eb\u30d7\u3092\u8868\u793a

\n
\n
\n
\n
\n
\n
-v, --version               Show program version
\n
\n
\n
\n
\n
\n

\u30d0\u30fc\u30b8\u30e7\u30f3\u8868\u793a

\n
\n
\n
\n
\n
\n
-q, --polys=<int>           Set number of polygons (default=2, max=16)
\n
\n
\n
\n
\n
\n

\u30dd\u30ea\u30b4\u30f3\u6570

\n
\n
\n
\n
\n
\n
-p, --points=<int>          Set number of points per polygon (default=4, max=16)
\n
\n
\n
\n
\n
\n

\u30dd\u30a4\u30f3\u30c8\u6570(\u4f8b\u3048\u30703\u3067\u4e09\u89d2\u5f62\uff0c4\u3067\u56db\u89d2\u5f62)

\n
\n
\n
\n
\n
\n
-t, --trails=<int>          Set number of trails lines (default=20, max=64)
\n
\n
\n
\n
\n
\n

\u30c8\u30ec\u30a4\u30eb\u30e9\u30a4\u30f3\u306e\u6570

\n
\n
\n
\n
\n
\n
-f, --fps=<int>             Set frames per second (default=60)
\n
\n
\n
\n
\n
\n

1\u79d2\u3042\u305f\u308a\u306e\u30d5\u30ec\u30fc\u30e0\u6570

\n
\n
\n
\n
\n
\n
-e, --max-velocity=<float>  Set max velocity per point (default=1.00, min=0.01, max=10.00)
\n
\n
\n
\n
\n
\n

\u6700\u5927\u901f\u5ea6

\n
\n
\n
\n
\n
\n
-s, --no-status             Hide status text
\n
\n
\n
\n
\n
\n

\u30b9\u30c6\u30fc\u30bf\u30b9\u3092\u96a0\u3059

\n
\n
\n
\n
\n
\n
-i, --trail-incr=<int>      Render every nth trail (default=4, max=64)
\n
\n
\n
\n
\n
\n

n\u756a\u76ee\u306e\u30c8\u30ec\u30a4\u30eb\u3054\u3068\u306b\u63cf\u753b

\n
\n
\n
\n
\n

tmux \u306e\u30b9\u30af\u30ea\u30fc\u30f3\u30bb\u30fc\u30d0\u30fc\u306b\u8a2d\u5b9a

\n
\n
\n

\u30bf\u30fc\u30df\u30ca\u30eb\u30de\u30eb\u30c1\u30d7\u30ec\u30af\u30b5\u306etmux \u306e\u30b9\u30af\u30ea\u30fc\u30f3\u30bb\u30fc\u30d0\u30fc\u306b\u8a2d\u5b9a\u3057\u3066\u307f\u307e\u3059\uff0e

\n
\n
\n

\u307e\u305a\u306f\u8a2d\u5b9a\u30d5\u30a1\u30a4\u30eb\u306b\u4ee5\u4e0b\u3092\u8a18\u8ff0\u3057\u307e\u3059\uff0e

\n
\n
\n
\n
set -g lock-after-time 900 #\u30b9\u30af\u30ea\u30fc\u30f3\u30bb\u30fc\u30d0\u30fc\u304c\u8d77\u52d5\u3059\u308b\u307e\u3067\u306e\u79d2\u6570\nset -g lock-command \"mystify-term -s\" #\u30b9\u30af\u30ea\u30fc\u30f3\u30bb\u30fc\u30d0\u30fc\u30b3\u30de\u30f3\u30c9
\n
\n
\n
\n\n\n\n\n\n
\n
Note
\n
\n
\n

tmux \u306e\u8a2d\u5b9a\u30d5\u30a1\u30a4\u30eb\u306f

\n
\n
\n
\n
       ~/.tmux.conf\n       $XDG_CONFIG_HOME/tmux/tmux.conf\n       ~/.config/tmux/tmux.conf
\n
\n
\n
\n

byobu \u304b\u3089\u8d77\u52d5\u3057\u3066\u3044\u308b\u5834\u5408\u306f

\n
\n
\n
\n
       ~/.byobu/.tmux.conf
\n
\n
\n
\n
\n
\n

\u6b21\u56de\u8d77\u52d5\u6642\u304b\u3089\u53cd\u6620\u3055\u308c\u307e\u3059\u304c\uff0c\u73fe\u5728\u306etmux \u30bb\u30c3\u30b7\u30e7\u30f3\u306b\u53cd\u6620\u3057\u305f\u3044\u5834\u5408\u306f\u4ee5\u4e0b\u306e\u3088\u3046\u306b tmux source \u8a2d\u5b9a\u30d5\u30a1\u30a4\u30eb \u3068\u3057\u3066\u53cd\u6620\u3067\u304d\u307e\u3059\uff0e

\n
\n
\n
\n
$ tmux source ~/.byobu/.tmux.conf
\n
\n
\n
\n
\n
\n

SEE ALSO

\n
\n\n
\n
\n", "content_text": "\u53e4\u3044Windows \u3092\u4f7f\u3063\u3066\u3044\u305f\u65b9\u306f\u61d0\u304b\u3057\u304f\u611f\u3058\u308b\u304b\u3082\u3057\u308c\u306a\u3044\u30bf\u30fc\u30df\u30ca\u30eb\u30b9\u30af\u30ea\u30fc\u30f3\u30bb\u30fc\u30d0\u30fc\u306emystify-term \u3068\u3044\u3046\u3082\u306e\u3092\u898b\u304b\u3051\u305f\u306e\u3067\u8a66\u3057\u3066\u307f\u307e\u3057\u305f\uff0e\n\n\n\n\nadsr/mystify-term\n\n\n\n\n\n\n\ninstall\n\n\nc\u88fd\u3067\u4f9d\u5b58\u3082\u5c11\u306a\u3044\u306e\u3067make \u4e00\u767a\u306a\u611f\u3058\u3067\u3059\uff0eDebian sind amd64/Raspberry Pi bookworm armhf \u3068\u3082\u306b\u554f\u984c\u306a\u304f\u52d5\u304d\u307e\u3057\u305f\uff0e\n\n\n\n$ git clone https://github.com/adsr/mystify-term\n$ cd mystify-term\n$ install mystify-term ~/bin/\n$ which mystify-term\n/home/matoken/bin/mystify-term\n$ mystify-term --help\nUsage:\n mystify-term [options]\n\nOptions:\n -h, --help Show this help\n -v, --version Show program version\n -q, --polys=<int> Set number of polygons (default=2, max=16)\n -p, --points=<int> Set number of points per polygon (default=4, max=16)\n -t, --trails=<int> Set number of trails lines (default=20, max=64)\n -f, --fps=<int> Set frames per second (default=60)\n -e, --max-velocity=<float> Set max velocity per point (default=1.00, min=0.01, max=10.00)\n -s, --no-status Hide status text\n -i, --trail-incr=<int> Render every nth trail (default=4, max=64)\n$ mystify-term --version\nmystify-term v0.1.0\n\n\n\n\n\n\u5b9f\u884c\u4f8b\n\n\n\u3068\u308a\u3042\u3048\u305a\u30aa\u30d7\u30b7\u30e7\u30f3\u7121\u3057\u3067\u8d77\u52d5\u3057\u307e\u3059\uff0e\u61d0\u304b\u3057\u3044\u611f\u3058\u306e\u30b9\u30af\u30ea\u30fc\u30f3\u30bb\u30fc\u30d0\u30fc\u304c\u8d77\u52d5\u3057\u307e\u3059\uff0e\n\n\n\u30b9\u30af\u30ea\u30fc\u30f3\u30b7\u30e7\u30c3\u30c8\u306f\u3053\u3093\u306a\u611f\u3058\u3067\u3059\uff0e\n\n\n\n\n\nUTF-8 \u306e\u56db\u89d2\u3092\u4f7f\u3063\u3066\u3044\u308b\u306e\u3067\uff0cUTF-8 \u304c\u4f7f\u3048\u306a\u3044\u3068\u3053\u3093\u306a\u611f\u3058\u306b\u306a\u3063\u305f\u308a\u3057\u307e\u3059\uff0e\u307e\u3042\u3053\u308c\u306f\u3053\u308c\u3067\uff0e\n\n\n\n\n\n\u52d5\u3044\u3066\u3044\u308b\u69d8\u5b50\u306f\u4ee5\u4e0b\u306easciinema \u3092\uff0e\n\n\n\n\n\n\u30ad\u30fc\u30d0\u30a4\u30f3\u30c9\n\n\n\u4e0b\u306e\u65b9\u306b\u3042\u308b\u3068\u304a\u308a\u4ee5\u4e0b\u306e\u30ad\u30fc\u30d0\u30a4\u30f3\u30c9\u3067\u64cd\u4f5c\u304c\u3067\u304d\u307e\u3059\uff0e\n\n\n\n\np=pause, s=step, r=reinit, w=status, q=quit\n\n\n\n\n\np\n\n\u4e00\u6642\u505c\u6b62/\u518d\u958b\n\ns\n\n\u505c\u6b62/\u30b3\u30de\u9001\u308a(p\u3067\u518d\u958b)\n\nr\n\n\u518d\u521d\u671f\u5316\n\nw\n\n\u30b9\u30c6\u30fc\u30bf\u30b9\u8868\u793a/\u975e\u8868\u793a\n\nq\n\n\u7d42\u4e86\n\n\n\n\n\n\n\u30b3\u30de\u30f3\u30c9\u30e9\u30a4\u30f3\u30aa\u30d7\u30b7\u30e7\u30f3\n\n\n\u30b9\u30bf\u30fc\u30bf\u30b9\u3092\u3044\u3058\u308c\u307e\u3059\u304c\uff0c -s, --no-status \u304f\u3089\u3044\u3067\u3042\u3068\u306f\u65e2\u5b9a\u5024\u3067\u3044\u3044\u304b\u306a\u3068\u8a00\u3046\u611f\u3058\uff0e\n\n\n\n\n\n-h, --help Show this help\n\n\n\n\n\n\u3053\u306e\u30d8\u30eb\u30d7\u3092\u8868\u793a\n\n\n\n\n\n-v, --version Show program version\n\n\n\n\n\n\u30d0\u30fc\u30b8\u30e7\u30f3\u8868\u793a\n\n\n\n\n\n-q, --polys=<int> Set number of polygons (default=2, max=16)\n\n\n\n\n\n\u30dd\u30ea\u30b4\u30f3\u6570\n\n\n\n\n\n-p, --points=<int> Set number of points per polygon (default=4, max=16)\n\n\n\n\n\n\u30dd\u30a4\u30f3\u30c8\u6570(\u4f8b\u3048\u30703\u3067\u4e09\u89d2\u5f62\uff0c4\u3067\u56db\u89d2\u5f62)\n\n\n\n\n\n-t, --trails=<int> Set number of trails lines (default=20, max=64)\n\n\n\n\n\n\u30c8\u30ec\u30a4\u30eb\u30e9\u30a4\u30f3\u306e\u6570\n\n\n\n\n\n-f, --fps=<int> Set frames per second (default=60)\n\n\n\n\n\n1\u79d2\u3042\u305f\u308a\u306e\u30d5\u30ec\u30fc\u30e0\u6570\n\n\n\n\n\n-e, --max-velocity=<float> Set max velocity per point (default=1.00, min=0.01, max=10.00)\n\n\n\n\n\n\u6700\u5927\u901f\u5ea6\n\n\n\n\n\n-s, --no-status Hide status text\n\n\n\n\n\n\u30b9\u30c6\u30fc\u30bf\u30b9\u3092\u96a0\u3059\n\n\n\n\n\n-i, --trail-incr=<int> Render every nth trail (default=4, max=64)\n\n\n\n\n\nn\u756a\u76ee\u306e\u30c8\u30ec\u30a4\u30eb\u3054\u3068\u306b\u63cf\u753b\n\n\n\n\ntmux \u306e\u30b9\u30af\u30ea\u30fc\u30f3\u30bb\u30fc\u30d0\u30fc\u306b\u8a2d\u5b9a\n\n\n\u30bf\u30fc\u30df\u30ca\u30eb\u30de\u30eb\u30c1\u30d7\u30ec\u30af\u30b5\u306etmux \u306e\u30b9\u30af\u30ea\u30fc\u30f3\u30bb\u30fc\u30d0\u30fc\u306b\u8a2d\u5b9a\u3057\u3066\u307f\u307e\u3059\uff0e\n\n\n\u307e\u305a\u306f\u8a2d\u5b9a\u30d5\u30a1\u30a4\u30eb\u306b\u4ee5\u4e0b\u3092\u8a18\u8ff0\u3057\u307e\u3059\uff0e\n\n\n\nset -g lock-after-time 900 #\u30b9\u30af\u30ea\u30fc\u30f3\u30bb\u30fc\u30d0\u30fc\u304c\u8d77\u52d5\u3059\u308b\u307e\u3067\u306e\u79d2\u6570\nset -g lock-command \"mystify-term -s\" #\u30b9\u30af\u30ea\u30fc\u30f3\u30bb\u30fc\u30d0\u30fc\u30b3\u30de\u30f3\u30c9\n\n\n\n\n\n\nNote\n\n\n\ntmux \u306e\u8a2d\u5b9a\u30d5\u30a1\u30a4\u30eb\u306f\n\n\n\n ~/.tmux.conf\n $XDG_CONFIG_HOME/tmux/tmux.conf\n ~/.config/tmux/tmux.conf\n\n\n\nbyobu \u304b\u3089\u8d77\u52d5\u3057\u3066\u3044\u308b\u5834\u5408\u306f\n\n\n\n ~/.byobu/.tmux.conf\n\n\n\n\n\n\n\n\u6b21\u56de\u8d77\u52d5\u6642\u304b\u3089\u53cd\u6620\u3055\u308c\u307e\u3059\u304c\uff0c\u73fe\u5728\u306etmux \u30bb\u30c3\u30b7\u30e7\u30f3\u306b\u53cd\u6620\u3057\u305f\u3044\u5834\u5408\u306f\u4ee5\u4e0b\u306e\u3088\u3046\u306b tmux source \u8a2d\u5b9a\u30d5\u30a1\u30a4\u30eb \u3068\u3057\u3066\u53cd\u6620\u3067\u304d\u307e\u3059\uff0e\n\n\n\n$ tmux source ~/.byobu/.tmux.conf\n\n\n\n\n\nSEE ALSO\n\n\n\n\nattogram/bash-screensavers: Turn your idle shell into a visual playground with this collection of Bash screensav\u00aders", "date_published": "2026-01-27T05:48:08+09:00", "date_modified": "2026-01-27T05:48:10+09:00", "authors": [ { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" } ], "author": { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" }, "tags": [ "ScreenSaver", "terminal", "bookworm", "Debian", "Linux", "Raspberry Pi OS", "sid" ] }, { "id": "https://matoken.org/blog/?p=4741", "url": "https://matoken.org/blog/2025/11/27/tmux-3-6-release/", "title": "tmux 3.6 \u30ea\u30ea\u30fc\u30b9", "content_html": "

\n
\n

\u30bf\u30fc\u30df\u30ca\u30eb\u30de\u30eb\u30c1\u30d7\u30ec\u30af\u30b5\u306etmux 3.6 \u304c\u51fa\u3066\u3044\u307e\u3057\u305f\uff0e

\n
\n
\n\n
\n

\n
\n
\u65e9\u901f\u30d3\u30eb\u30c9\u3057\u3066\u307f\u307e\u3059\uff0e\u4eca\u56de\u306fgit \u30ea\u30dd\u30b8\u30c8\u30ea\u304b\u3089\u5c0e\u5165\u3057\u307e\u3059\uff0e
\n
\n
$ git pull\n$ git checkout 3.6\n$ ./autogen.sh\n$ ./configure --enable-sixel --prefix=$HOME/usr/local (1)\n$ make\n$ ./tmux -V\ntmux 3.6
\n
\n
\n
\n
    \n
  1. \n

    sixel \u3092\u6709\u52b9\u306b\u3057\uff0c$HOME/usr/local \u4ee5\u4e0b\u306b\u5c0e\u5165

    \n
  2. \n
\n
\n
\n
tmux \u304c\u8d77\u52d5\u3057\u306a\u3044?\u65e7tmux \u304c\u751f\u304d\u3066\u3044\u305f\u305b\u3044\u3067\u3057\u305f\uff0e
\n
\n
$ ./tmux\nopen terminal failed: not a terminal\n$ pgrep tmux\n14030\n$ tmux kill-server\n$ ./tmux\n$ ./tmux kill-server
\n
\n
\n
\n
intall
\n
\n
$ make install\n$ which tmux\n/home/matoken/local/bin/tmux\n$ tmux -V\ntmux 3.6
\n
\n
\n
\n

\"tmux

\n
\n
\n
\u74b0\u5883
\n
\n
$ tmux -V\ntmux 3.6\n$ dpkg-query -W autoconf automake pkg-config libevent-dev ncurses-bin\nautoconf        2.72-3.1\nautomake        1:1.18.1-3\nlibevent-dev    2.1.12-stable-10+b1\nncurses-bin     6.5+20251123-1\npkg-config:amd64        1.8.1-4\n$ lsb_release -dr\nDescription:    Debian GNU/Linux forky/sid\nRelease:        n/a\n$ arch\nx86_64
\n
\n
\n
\n
\u8ffd\u8a18
\n
\n
\n

Debian sid \u306btmux 3.6 \u304c\u964d\u308a\u3066\u304d\u307e\u3057\u305f\uff0esixel \u3082\u6709\u52b9\u306b\u306a\u3063\u3066\u3044\u307e\u3059\uff0e\u30d1\u30c3\u30b1\u30fc\u30b8\u540d\u306ba\u304c\u3064\u304f\u306e\u306f\u306a\u3093\u3067\u3060\u308d\u3046?tmux 3.5a \u304c\u5b58\u5728\u3057\u305f\u3088\u3046\u306btmux 3.6a \u304c\u30ea\u30ea\u30fc\u30b9\u3055\u308c\u305f\u3089\u5f53\u305f\u308a\u305d\u3046\u3060\u306a\u3068\u3082\uff0e

\n
\n
\n
\n
\n

$ /usr/bin/tmux -V
\ntmux 3.6
\n$ zgrep -B99 -m1 — – /usr/share/doc/tmux/NEWS.Debian.gz
\ntmux (3.6a-1) unstable; urgency=medium

\n
\n
\n
\n
Please restart tmux entirely after upgrading to 3.6: an old server and\na new client will not be fully compatible with each other and the new\nclient may hang.
\n
\n
\n
\n
\n
Note: if necessary the old client can be used via /proc/pid/exe to\ntalk to the old server, e.g. `/proc/$(pgrep \"tmux: server\")/exe attach'.
\n
\n
\n
\n
\n
 -- S\u00e9bastien Delafond <seb@debian.org>  Mon, 01 Dec 2025 16:44:38 +0100\n$ rmadison tmux\ntmux       | 3.1c-1+deb11u1 | oldoldstable              | source, amd64, arm64, armhf, i386\ntmux       | 3.1c-1+deb11u1 | oldoldstable-debug        | source\ntmux       | 3.3a-3         | oldstable                 | source, amd64, arm64, armel, armhf, i386, mips64el, mipsel, ppc64el, s390x\ntmux       | 3.5a-2~bpo12+1 | oldstable-backports       | source, amd64, arm64, armel, armhf, i386, mips64el, mipsel, ppc64el, s390x\ntmux       | 3.5a-2~bpo12+1 | oldstable-backports-debug | source\ntmux       | 3.5a-3         | stable                    | source, amd64, arm64, armel, armhf, i386, ppc64el, riscv64, s390x\ntmux       | 3.5a-3         | testing                   | source, amd64, arm64, armhf, i386, ppc64el, riscv64, s390x\ntmux       | 3.6a-2         | unstable                  | source, amd64, arm64, armhf, i386, ppc64el, riscv64, s390x\ntmux       | 3.6a-2         | unstable-debug            | source
\n
\n
\n
\n
\n
\n
\n", "content_text": "\u30bf\u30fc\u30df\u30ca\u30eb\u30de\u30eb\u30c1\u30d7\u30ec\u30af\u30b5\u306etmux 3.6 \u304c\u51fa\u3066\u3044\u307e\u3057\u305f\uff0e\n\n\n\n\nRelease tmux 3.6 \u00b7 tmux/tmux\n\n\nraw.githubusercontent.com/tmux/tmux/3.6/CHANGES\n\n\n3.6 questions and comments \u00b7 Issue #4699 \u00b7 tmux/tmux\n\n\n\n\n\n\u65e9\u901f\u30d3\u30eb\u30c9\u3057\u3066\u307f\u307e\u3059\uff0e\u4eca\u56de\u306fgit \u30ea\u30dd\u30b8\u30c8\u30ea\u304b\u3089\u5c0e\u5165\u3057\u307e\u3059\uff0e\n\n$ git pull\n$ git checkout 3.6\n$ ./autogen.sh\n$ ./configure --enable-sixel --prefix=$HOME/usr/local (1)\n$ make\n$ ./tmux -V\ntmux 3.6\n\n\n\n\n\nsixel \u3092\u6709\u52b9\u306b\u3057\uff0c$HOME/usr/local \u4ee5\u4e0b\u306b\u5c0e\u5165\n\n\n\n\ntmux \u304c\u8d77\u52d5\u3057\u306a\u3044?\u65e7tmux \u304c\u751f\u304d\u3066\u3044\u305f\u305b\u3044\u3067\u3057\u305f\uff0e\n\n$ ./tmux\nopen terminal failed: not a terminal\n$ pgrep tmux\n14030\n$ tmux kill-server\n$ ./tmux\n$ ./tmux kill-server\n\n\n\nintall\n\n$ make install\n$ which tmux\n/home/matoken/local/bin/tmux\n$ tmux -V\ntmux 3.6\n\n\n\n\n\n\n\u74b0\u5883\n\n$ tmux -V\ntmux 3.6\n$ dpkg-query -W autoconf automake pkg-config libevent-dev ncurses-bin\nautoconf 2.72-3.1\nautomake 1:1.18.1-3\nlibevent-dev 2.1.12-stable-10+b1\nncurses-bin 6.5+20251123-1\npkg-config:amd64 1.8.1-4\n$ lsb_release -dr\nDescription: Debian GNU/Linux forky/sid\nRelease: n/a\n$ arch\nx86_64\n\n\n\n\u8ffd\u8a18\n\n\nDebian sid \u306btmux 3.6 \u304c\u964d\u308a\u3066\u304d\u307e\u3057\u305f\uff0esixel \u3082\u6709\u52b9\u306b\u306a\u3063\u3066\u3044\u307e\u3059\uff0e\u30d1\u30c3\u30b1\u30fc\u30b8\u540d\u306ba\u304c\u3064\u304f\u306e\u306f\u306a\u3093\u3067\u3060\u308d\u3046?tmux 3.5a \u304c\u5b58\u5728\u3057\u305f\u3088\u3046\u306btmux 3.6a \u304c\u30ea\u30ea\u30fc\u30b9\u3055\u308c\u305f\u3089\u5f53\u305f\u308a\u305d\u3046\u3060\u306a\u3068\u3082\uff0e\n\n\n\n\n$ /usr/bin/tmux -V\ntmux 3.6\n$ zgrep -B99 -m1 — – /usr/share/doc/tmux/NEWS.Debian.gz\ntmux (3.6a-1) unstable; urgency=medium\n\n\n\nPlease restart tmux entirely after upgrading to 3.6: an old server and\na new client will not be fully compatible with each other and the new\nclient may hang.\n\n\n\n\nNote: if necessary the old client can be used via /proc/pid/exe to\ntalk to the old server, e.g. `/proc/$(pgrep \"tmux: server\")/exe attach'.\n\n\n\n\n -- S\u00e9bastien Delafond <seb@debian.org> Mon, 01 Dec 2025 16:44:38 +0100\n$ rmadison tmux\ntmux | 3.1c-1+deb11u1 | oldoldstable | source, amd64, arm64, armhf, i386\ntmux | 3.1c-1+deb11u1 | oldoldstable-debug | source\ntmux | 3.3a-3 | oldstable | source, amd64, arm64, armel, armhf, i386, mips64el, mipsel, ppc64el, s390x\ntmux | 3.5a-2~bpo12+1 | oldstable-backports | source, amd64, arm64, armel, armhf, i386, mips64el, mipsel, ppc64el, s390x\ntmux | 3.5a-2~bpo12+1 | oldstable-backports-debug | source\ntmux | 3.5a-3 | stable | source, amd64, arm64, armel, armhf, i386, ppc64el, riscv64, s390x\ntmux | 3.5a-3 | testing | source, amd64, arm64, armhf, i386, ppc64el, riscv64, s390x\ntmux | 3.6a-2 | unstable | source, amd64, arm64, armhf, i386, ppc64el, riscv64, s390x\ntmux | 3.6a-2 | unstable-debug | source", "date_published": "2025-11-27T19:05:18+09:00", "date_modified": "2025-12-08T18:39:55+09:00", "authors": [ { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" } ], "author": { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" }, "tags": [ "terminal", "tmux", "Debian", "Linux", "sid" ] }, { "id": "https://matoken.org/blog/?p=4683", "url": "https://matoken.org/blog/2025/08/12/try-zellijs-web-sharing-feature/", "title": "Zellij\u306e\u30a6\u30a7\u30d6\u5171\u6709\u6a5f\u80fd\u3092\u5c11\u3057\u8a66\u3059", "content_html": "
\n
\n
\n

\"zellij

\n
\n
\n

\u30bf\u30fc\u30df\u30ca\u30eb\u30de\u30eb\u30c1\u30d7\u30ec\u30af\u30b5\uff0c\u30ef\u30fc\u30af\u30b9\u30da\u30fc\u30b9\u306eZellij 0.43.0\u304c2025-08-05\u306b\u30ea\u30ea\u30fc\u30b9\u3055\u308c\u3066\u3044\u307e\u3057\u305f\uff0e

\n
\n\n
\n

\u6c17\u306b\u306a\u308b\u65b0\u6a5f\u80fd\u3068\u3057\u3066\u30a6\u30a7\u30d6\u30d6\u30e9\u30a6\u30b6\u3067Zellij\u30bb\u30c3\u30b7\u30e7\u30f3\u3092\u5171\u6709\u3067\u304d\u308b\u3088\u3046\u306b\u306a\u3063\u305f\u3088\u3046\u3067\u3059\uff0eTmate\u306e\u3088\u3046\u306a\u611f\u3058\u3067\u3057\u3087\u3046\u304b?

\n
\n\n

\n

\n
\n
\n

Zellij 0.43.0\u306e\u30d3\u30eb\u30c9

\n
\n
\n
\n
$ cargo install --locked zellij
\n
\n
\n
\n

\u3067\u3044\u3044\u306f\u305a\u3067\u3059\u304c\uff0csource\u304b\u3089\u3082

\n
\n
\n
\n
$ git clone https://github.com/zellij-org/zellij (1)\n$ cd zellij\n$ git checkout v0.43.0 (2)\n$ cargo xtask make -r (3)\n  :\nCould not find `protoc` installation and this build crate cannot proceed without (4)\nContthis knowledge. If `protoc` is installed and this crate had trouble finding\n    it, you can set the `PROTOC` environment variable with the specific path to your11 [1,328 kB]\n  :\n$ sudo apt install protobuf-compiler (5)\n$ cargo xtask make -r (6)\n$ ./target/release/zellij --version (7)\nzellij 0.43.0
\n
\n
\n
\n
    \n
  1. \n

    git \u3067source\u3092\u3082\u3089\u3063\u3066\u304f\u308b

    \n
  2. \n
  3. \n

    v0.43.0 branch\u3078

    \n
  4. \n
  5. \n

    build

    \n
  6. \n
  7. \n

    protoc\u304c\u898b\u3064\u304b\u3089\u306a\u3044\u30a8\u30e9\u30fc\u3067\u5931\u6557

    \n
  8. \n
  9. \n

    protoc\u306fDebian sid\u3067\u306fprotobuf-compiler\u306a\u306e\u3067\u5c0e\u5165

    \n
  10. \n
  11. \n

    \u518d\u5ea6build

    \n
  12. \n
  13. \n

    \u30d0\u30fc\u30b8\u30e7\u30f3\u306e\u78ba\u8a8d

    \n
  14. \n
\n
\n
\n

Web\u30b5\u30fc\u30d0\u6a5f\u80fd\u3092\u7121\u52b9\u306b\u3059\u308b\u30d3\u30eb\u30c9\u4f8b

\n
\n
\u30a6\u30a7\u30d6\u30b5\u30fc\u30d0\u6a5f\u80fd\u304c\u5fc5\u8981\u306a\u3044\u5834\u5408\u306f –no-web \u3092\u4ed8\u3051\u3066\u30d3\u30eb\u30c9\u3059\u308b
\n
\n
$ cargo xtask make -r --no-web\n$ ./target/release/zellij web\nThis version of Zellij was compiled without web server support, cannot run web server!
\n
\n
\n
\n
\n
\n
\n

CLI\u3067Web\u30b5\u30fc\u30d0\u3092\u8d77\u52d5

\n
\n
\n
\u30a6\u30a7\u30d6\u30b5\u30fc\u30d0\u7528\u30c8\u30fc\u30af\u30f3\u306e\u4f5c\u6210
\n
\n
$ ./target/release/zellij web --create-token\nCreated token successfully\n\ntoken_1: f964e7a4-0c8d-4652-b92f-23168161b3b4
\n
\n
\n
\n
\u30c8\u30fc\u30af\u30f3\u306e\u4e00\u89a7\u8868\u793a
\n
\n
$ ./target/release/zellij web --list-tokens\ntoken_1: created at 2025-08-11 21:19:18\ntoken_2: created at 2025-08-12 10:35:47
\n
\n
\n
\n
\u30c8\u30fc\u30af\u30f3\u306e\u524a\u9664
\n
\n
$ ./target/release/zellij web --revoke-token token_1\nSuccessfully revoked token.
\n
\n
\n
\n
Zellij\u30a6\u30a7\u30d6\u30b5\u30fc\u30d0\u8d77\u52d5
\n
\n
$ ./target/release/zellij web\nWeb Server started on 127.0.0.1 port 8082
\n
\n
\n
\n

\u30a6\u30a7\u30d6\u30d6\u30e9\u30a6\u30b6\u3067 http://127.0.0.1:8082/ \u306b\u63a5\u7d9a\u3057\u3066\u30c8\u30fc\u30af\u30f3\u3092\u5165\u529b\u3057\u3066\u30a6\u30a7\u30d6\u30d6\u30e9\u30a6\u30b6\u3067Zellij\u304c\u5229\u7528\u53ef\u80fd\uff0e

\n
\n
\n

\"zellij
\n\"zellij
\n\"zellij

\n
\n
\n

\u7d50\u69cb\u666e\u901a\u306b\u4f7f\u3048\u305d\u3046\u3067\u3059\uff0eZellij\u3067\u306f\u5bfe\u5fdc\u3057\u3066\u3044\u308bSixel\u306fWeb\u7248\u3067\u306f\u672a\u5bfe\u5fdc\u306e\u3088\u3046\u3067\u3059\uff0e
\nngrok\u7d4c\u7531\u3067Android\u306eFirefox\u3067\u3082\u8a66\u3057\u3066\u307f\u308b\u3068\u30e2\u30d0\u30a4\u30eb\u30d6\u30e9\u30a6\u30b6\u3067\u3082\u52d5\u4f5c\u3059\u308b\u3088\u3046\u3067\u3059\uff0e\u3067\u3082\u30ad\u30fc\u30dc\u30fc\u30c9\u3068\u306e\u76f8\u6027\u304c\u3042\u308a\u305d\u3046\uff0e
\nsource\u3092\u898b\u308b\u3068Xterm.js\u3092\u5229\u7528\u3057\u3066\u3044\u308b\u3088\u3046\u3067\u3059\uff0e

\n
\n
\n
\n
\n

Zellij\u4e0a\u3067\u30a6\u30a7\u30d6\u30b5\u30fc\u30d0\u3092\u8d77\u52d5

\n
\n
\n

Zellij\u8d77\u52d5\u4e2d\u306b Ctrl+o s \u3067\u8d77\u52d5\u3067\u304d\u307e\u3059\uff0e
\n\"zellij

\n
\n
\n
\n
\n

\u8a2d\u5b9a\u3067Zellij\u8d77\u52d5\u6642\u306b\u3044\u3064\u3082\u30a6\u30a7\u30d6\u30b5\u30fc\u30d0\u3092\u8d77\u52d5\u3059\u308b\u3088\u3046\u306b\u3059\u308b

\n
\n
\n
\u8a2d\u5b9a\u30d5\u30a1\u30a4\u30eb\u304c\u306a\u3044\u5834\u5408\u306f\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u3092\u4f5c\u6210\u3057\u3066\u66f8\u304d\u51fa\u3057
\n
\n
$ mkdir ~/.config/zellij\n$ zellij setup --dump-config > ~/.config/zellij/config.kdl
\n
\n
\n
\n
\u8a2d\u5b9a\u30d5\u30a1\u30a4\u30eb\u306b web_server true \u3092\u8ffd\u8a18
\n
\n
5$ echo '// WebServer\n> web_server true' | tee -a ~/.config/zellij/config.kdl
\n
\n
\n
\n
\n
\n

\u30c8\u30f3\u30cd\u30ea\u30f3\u30b0\u30b5\u30fc\u30d3\u30b9\u3067\u5916\u90e8\u304b\u3089\u5229\u7528

\n
\n
\n

\u30c8\u30f3\u30cd\u30ea\u30f3\u30b0\u30b5\u30fc\u30d3\u30b9\u306engrok\u3067Zellij\u306eport\u3092\u6307\u5b9a\u3059\u308b\u3053\u3068\u3067\u5916\u90e8\u4eee\u5229\u7528\u3059\u308b\u3053\u3068\u3082\u3067\u304d\u307e\u3057\u305f\uff0e

\n
\n
\n
\n
$ ngrok http 8082
\n
\n
\n
\n

\u597d\u307f\u306e\u985e\u4f3c\u30b5\u30fc\u30d3\u30b9\u3067\u3082\u304d\u3063\u3068\u5927\u4e08\u592b\u3067\u3059\uff0e

\n
\n
\n
\n
\n

\u304a\u308f\u308a\u306b

\n
\n
\n

Tmux\u30d5\u30a9\u30fc\u30af\u306eTmate\u306b\u3082\u540c\u3058\u3088\u3046\u306a\u6a5f\u80fd\u304c\u3042\u308a\u307e\u3059\u304c\uff0c\u3053\u3061\u3089\u306f\u30c8\u30f3\u30cd\u30ea\u30f3\u30b0\u30b5\u30fc\u30d3\u30b9\u3082\u542b\u307e\u308c\u3066\u3044\u305f\u308ahttpd\u3060\u3051\u3067\u306a\u304fsshd\u3082\u4f7f\u3048\u305f\u308a\u8aad\u307f\u53d6\u308a\u7528\u30bb\u30c3\u30b7\u30e7\u30f3\uff0c\u8aad\u307f\u66f8\u304d\u30bb\u30c3\u30b7\u30e7\u30f3\u304c\u9078\u3079\u305f\u308a\u3068\u4fbf\u5229\u3067\u3059\uff0e
\n\u3067\u3082Unux\u54f2\u5b66\u7684\u306b\u306f\u30d0\u30e9\u3051\u3066\u3044\u305f\u307b\u3046\u304c\u3044\u3044\u304b\u306a\u3068\u304b\uff0e\u305d\u308c\u306a\u3089Zellij-noweb\u306bWeb\u5171\u6709\u30a2\u30d7\u30ea+\u30c8\u30f3\u30cd\u30ea\u30f3\u30b0\u30b5\u30fc\u30d3\u30b9\u306e\u307b\u3046\u304c\u3044\u3044\u306e\u304b\u306a\u3068\u304b\u601d\u3063\u305f\u308a\u3082\uff0e
\n\u4f55\u306b\u305b\u3088\u9078\u629e\u80a2\u304c\u5897\u3048\u305f\u306e\u306f\u5b09\u3057\u3044\u3067\u3059\u306d\uff0e

\n
\n
\n
\u74b0\u5883
\n
\n
$ ./target/release/zellij --version\nzellij 0.43.0\n$ dpkg-query -W rustup\nrustup  1.27.1-4\n$ lsb_release -dr\nDescription:    Debian GNU/Linux forky/sid\nRelease:        n/a\n$ arch\nx86_64
\n
\n
\n
\n
\n", "content_text": "\u30bf\u30fc\u30df\u30ca\u30eb\u30de\u30eb\u30c1\u30d7\u30ec\u30af\u30b5\uff0c\u30ef\u30fc\u30af\u30b9\u30da\u30fc\u30b9\u306eZellij 0.43.0\u304c2025-08-05\u306b\u30ea\u30ea\u30fc\u30b9\u3055\u308c\u3066\u3044\u307e\u3057\u305f\uff0e\n\n\n\n\nZellij 0.43.0: web client, multiple pane actions, compact-bar tooltips\n\n\n\n\n\u6c17\u306b\u306a\u308b\u65b0\u6a5f\u80fd\u3068\u3057\u3066\u30a6\u30a7\u30d6\u30d6\u30e9\u30a6\u30b6\u3067Zellij\u30bb\u30c3\u30b7\u30e7\u30f3\u3092\u5171\u6709\u3067\u304d\u308b\u3088\u3046\u306b\u306a\u3063\u305f\u3088\u3046\u3067\u3059\uff0eTmate\u306e\u3088\u3046\u306a\u611f\u3058\u3067\u3057\u3087\u3046\u304b?\n\n\n\n\nThe Zellij Web Client – Share Sessions in the Browser\n\n\n\n\n\n\n\nZellij 0.43.0\u306e\u30d3\u30eb\u30c9\n\n\n\n$ cargo install --locked zellij\n\n\n\n\u3067\u3044\u3044\u306f\u305a\u3067\u3059\u304c\uff0csource\u304b\u3089\u3082\n\n\n\n$ git clone https://github.com/zellij-org/zellij (1)\n$ cd zellij\n$ git checkout v0.43.0 (2)\n$ cargo xtask make -r (3)\n :\nCould not find `protoc` installation and this build crate cannot proceed without (4)\nContthis knowledge. If `protoc` is installed and this crate had trouble finding\n it, you can set the `PROTOC` environment variable with the specific path to your11 [1,328 kB]\n :\n$ sudo apt install protobuf-compiler (5)\n$ cargo xtask make -r (6)\n$ ./target/release/zellij --version (7)\nzellij 0.43.0\n\n\n\n\n\ngit \u3067source\u3092\u3082\u3089\u3063\u3066\u304f\u308b\n\n\nv0.43.0 branch\u3078\n\n\nbuild\n\n\nprotoc\u304c\u898b\u3064\u304b\u3089\u306a\u3044\u30a8\u30e9\u30fc\u3067\u5931\u6557\n\n\nprotoc\u306fDebian sid\u3067\u306fprotobuf-compiler\u306a\u306e\u3067\u5c0e\u5165\n\n\n\u518d\u5ea6build\n\n\n\u30d0\u30fc\u30b8\u30e7\u30f3\u306e\u78ba\u8a8d\n\n\n\n\nWeb\u30b5\u30fc\u30d0\u6a5f\u80fd\u3092\u7121\u52b9\u306b\u3059\u308b\u30d3\u30eb\u30c9\u4f8b\n\n\u30a6\u30a7\u30d6\u30b5\u30fc\u30d0\u6a5f\u80fd\u304c\u5fc5\u8981\u306a\u3044\u5834\u5408\u306f –no-web \u3092\u4ed8\u3051\u3066\u30d3\u30eb\u30c9\u3059\u308b\n\n$ cargo xtask make -r --no-web\n$ ./target/release/zellij web\nThis version of Zellij was compiled without web server support, cannot run web server!\n\n\n\n\n\n\nCLI\u3067Web\u30b5\u30fc\u30d0\u3092\u8d77\u52d5\n\n\n\u30a6\u30a7\u30d6\u30b5\u30fc\u30d0\u7528\u30c8\u30fc\u30af\u30f3\u306e\u4f5c\u6210\n\n$ ./target/release/zellij web --create-token\nCreated token successfully\n\ntoken_1: f964e7a4-0c8d-4652-b92f-23168161b3b4\n\n\n\n\u30c8\u30fc\u30af\u30f3\u306e\u4e00\u89a7\u8868\u793a\n\n$ ./target/release/zellij web --list-tokens\ntoken_1: created at 2025-08-11 21:19:18\ntoken_2: created at 2025-08-12 10:35:47\n\n\n\n\u30c8\u30fc\u30af\u30f3\u306e\u524a\u9664\n\n$ ./target/release/zellij web --revoke-token token_1\nSuccessfully revoked token.\n\n\n\nZellij\u30a6\u30a7\u30d6\u30b5\u30fc\u30d0\u8d77\u52d5\n\n$ ./target/release/zellij web\nWeb Server started on 127.0.0.1 port 8082\n\n\n\n\u30a6\u30a7\u30d6\u30d6\u30e9\u30a6\u30b6\u3067 http://127.0.0.1:8082/ \u306b\u63a5\u7d9a\u3057\u3066\u30c8\u30fc\u30af\u30f3\u3092\u5165\u529b\u3057\u3066\u30a6\u30a7\u30d6\u30d6\u30e9\u30a6\u30b6\u3067Zellij\u304c\u5229\u7528\u53ef\u80fd\uff0e\n\n\n\n\n\n\n\n\u7d50\u69cb\u666e\u901a\u306b\u4f7f\u3048\u305d\u3046\u3067\u3059\uff0eZellij\u3067\u306f\u5bfe\u5fdc\u3057\u3066\u3044\u308bSixel\u306fWeb\u7248\u3067\u306f\u672a\u5bfe\u5fdc\u306e\u3088\u3046\u3067\u3059\uff0e\nngrok\u7d4c\u7531\u3067Android\u306eFirefox\u3067\u3082\u8a66\u3057\u3066\u307f\u308b\u3068\u30e2\u30d0\u30a4\u30eb\u30d6\u30e9\u30a6\u30b6\u3067\u3082\u52d5\u4f5c\u3059\u308b\u3088\u3046\u3067\u3059\uff0e\u3067\u3082\u30ad\u30fc\u30dc\u30fc\u30c9\u3068\u306e\u76f8\u6027\u304c\u3042\u308a\u305d\u3046\uff0e\nsource\u3092\u898b\u308b\u3068Xterm.js\u3092\u5229\u7528\u3057\u3066\u3044\u308b\u3088\u3046\u3067\u3059\uff0e\n\n\n\n\nZellij\u4e0a\u3067\u30a6\u30a7\u30d6\u30b5\u30fc\u30d0\u3092\u8d77\u52d5\n\n\nZellij\u8d77\u52d5\u4e2d\u306b Ctrl+o s \u3067\u8d77\u52d5\u3067\u304d\u307e\u3059\uff0e\n\n\n\n\n\n\u8a2d\u5b9a\u3067Zellij\u8d77\u52d5\u6642\u306b\u3044\u3064\u3082\u30a6\u30a7\u30d6\u30b5\u30fc\u30d0\u3092\u8d77\u52d5\u3059\u308b\u3088\u3046\u306b\u3059\u308b\n\n\n\u8a2d\u5b9a\u30d5\u30a1\u30a4\u30eb\u304c\u306a\u3044\u5834\u5408\u306f\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u3092\u4f5c\u6210\u3057\u3066\u66f8\u304d\u51fa\u3057\n\n$ mkdir ~/.config/zellij\n$ zellij setup --dump-config > ~/.config/zellij/config.kdl\n\n\n\n\u8a2d\u5b9a\u30d5\u30a1\u30a4\u30eb\u306b web_server true \u3092\u8ffd\u8a18\n\n5$ echo '// WebServer\n> web_server true' | tee -a ~/.config/zellij/config.kdl\n\n\n\n\n\n\u30c8\u30f3\u30cd\u30ea\u30f3\u30b0\u30b5\u30fc\u30d3\u30b9\u3067\u5916\u90e8\u304b\u3089\u5229\u7528\n\n\n\u30c8\u30f3\u30cd\u30ea\u30f3\u30b0\u30b5\u30fc\u30d3\u30b9\u306engrok\u3067Zellij\u306eport\u3092\u6307\u5b9a\u3059\u308b\u3053\u3068\u3067\u5916\u90e8\u4eee\u5229\u7528\u3059\u308b\u3053\u3068\u3082\u3067\u304d\u307e\u3057\u305f\uff0e\n\n\n\n$ ngrok http 8082\n\n\n\n\u597d\u307f\u306e\u985e\u4f3c\u30b5\u30fc\u30d3\u30b9\u3067\u3082\u304d\u3063\u3068\u5927\u4e08\u592b\u3067\u3059\uff0e\n\n\n\n\n\u304a\u308f\u308a\u306b\n\n\nTmux\u30d5\u30a9\u30fc\u30af\u306eTmate\u306b\u3082\u540c\u3058\u3088\u3046\u306a\u6a5f\u80fd\u304c\u3042\u308a\u307e\u3059\u304c\uff0c\u3053\u3061\u3089\u306f\u30c8\u30f3\u30cd\u30ea\u30f3\u30b0\u30b5\u30fc\u30d3\u30b9\u3082\u542b\u307e\u308c\u3066\u3044\u305f\u308ahttpd\u3060\u3051\u3067\u306a\u304fsshd\u3082\u4f7f\u3048\u305f\u308a\u8aad\u307f\u53d6\u308a\u7528\u30bb\u30c3\u30b7\u30e7\u30f3\uff0c\u8aad\u307f\u66f8\u304d\u30bb\u30c3\u30b7\u30e7\u30f3\u304c\u9078\u3079\u305f\u308a\u3068\u4fbf\u5229\u3067\u3059\uff0e\n\u3067\u3082Unux\u54f2\u5b66\u7684\u306b\u306f\u30d0\u30e9\u3051\u3066\u3044\u305f\u307b\u3046\u304c\u3044\u3044\u304b\u306a\u3068\u304b\uff0e\u305d\u308c\u306a\u3089Zellij-noweb\u306bWeb\u5171\u6709\u30a2\u30d7\u30ea+\u30c8\u30f3\u30cd\u30ea\u30f3\u30b0\u30b5\u30fc\u30d3\u30b9\u306e\u307b\u3046\u304c\u3044\u3044\u306e\u304b\u306a\u3068\u304b\u601d\u3063\u305f\u308a\u3082\uff0e\n\u4f55\u306b\u305b\u3088\u9078\u629e\u80a2\u304c\u5897\u3048\u305f\u306e\u306f\u5b09\u3057\u3044\u3067\u3059\u306d\uff0e\n\n\n\u74b0\u5883\n\n$ ./target/release/zellij --version\nzellij 0.43.0\n$ dpkg-query -W rustup\nrustup 1.27.1-4\n$ lsb_release -dr\nDescription: Debian GNU/Linux forky/sid\nRelease: n/a\n$ arch\nx86_64", "date_published": "2025-08-12T20:26:22+09:00", "date_modified": "2025-08-12T20:26:24+09:00", "authors": [ { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" } ], "author": { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" }, "tags": [ "multiprexer", "terminal", "zellij", "Debian", "Linux", "sid" ] }, { "id": "https://matoken.org/blog/?p=4613", "url": "https://matoken.org/blog/2025/06/20/try-chawan-a-terminal-web-browser-that-supports-images-javascript-css-etc/", "title": "\u753b\u50cf\uff0cJavaScript/CSS\u306a\u3069\u306b\u5bfe\u5fdc\u3059\u308b\u30bf\u30fc\u30df\u30ca\u30eb\u30a6\u30a7\u30d6\u30d6\u30e9\u30a6\u30b6\u306eChawan\u3092\u8a66\u3059", "content_html": "
\n
\n

\n
\n

Chawan\u3068\u3044\u3046\u30bf\u30fc\u30df\u30ca\u30eb\u30a6\u30a7\u30d6\u30d6\u30e9\u30a6\u30b6\u3092\u77e5\u308a\u307e\u3057\u305f\uff0e
\n\u30e1\u30e2\u30ea\u30bb\u30fc\u30d5\u306aNim\u3067\u5b9f\u88c5\u3055\u308c\u3066\u3044\u3066\u30e9\u30a4\u30bb\u30f3\u30b9\u306f\u30d1\u30d6\u30ea\u30c3\u30af\u30c9\u30e1\u30a4\u30f3\u3067\u3059\uff0e

\n
\n
\n

\u540c\u3058\u3088\u3046\u306b\u30bf\u30fc\u30df\u30ca\u30eb\u4e0a\u3067\u52d5\u4f5c\u3059\u308bw3m\u3084Lynx\u7cfb\u3068\u306e\u5927\u304d\u306a\u9055\u3044\u306fJavaScript\u3084CSS\u306b\u5bfe\u5fdc\u3057\u3066\u3044\u308b\u8fba\u308a\u3067\u3057\u3087\u3046\u304b\uff0eSixel\u3084Kitty\u306e\u30bf\u30fc\u30df\u30ca\u30eb\u753b\u50cf\u5f62\u5f0f\u306b\u3082\u5bfe\u5fdc\u3057\u3066\u3044\u307e\u3059\uff0e
\n\u5c11\u3057\u8a66\u3057\u3066\u307f\u307e\u3057\u305f\uff0e

\n
\n\n

\n
\n\n\n\n\n\n
\n
Note
\n
\n
\n

\u5c11\u3057\u7528\u9014\u304c\u9055\u3044\u307e\u3059\u304c\uff0cv8\u30a8\u30f3\u30b8\u30f3\u3092\u4f7f\u3063\u305f\u30b9\u30af\u30ec\u30a4\u30d4\u30f3\u30b0\u5411\u3051\u306e\u30d8\u30c3\u30c9\u30ec\u30b9\u30d6\u30e9\u30a6\u30b6\u306eLightpanda\u306a\u3093\u3066\u3082\u306e\u3082\u3042\u308a\u307e\u3059\uff0e

\n
\n\n
\n
\n
\n
\n
\n

Chawan\u306e\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb

\n
\n
\n

\u73fe\u5728\u306eChawan: 0.2.0\u306fLinux amd64\u306e\u9759\u7684\u30d0\u30a4\u30ca\u30eatarball\u3084Debian amd64\u306e.deb\u304c\u3042\u308a\u307e\u3059\uff0e
\n\u4e0d\u5b89\u5b9a\u306e\u30d1\u30c3\u30b1\u30fc\u30b8\u3068\u3057\u3066AUR/NixOS/AppImage\u304c\u3042\u308b\u3088\u3046\u3067\u3059\uff0e(\u3053\u3061\u3089\u306f\u4eca\u56de\u672a\u78ba\u8a8d)

\n
\n
\n

\u4ed6\u306e\u74b0\u5883\u3067\u306f\u30bb\u30eb\u30d5\u30d3\u30eb\u30c9\u304c\u5fc5\u8981\u305d\u3046\u3067\u3059\uff0e

\n
\n
\n

Debian\u30d1\u30c3\u30b1\u30fc\u30b8\u5229\u7528(amd64\u306e\u307f)

\n
\n

Debian sid amd64\u74b0\u5883\u306b.deb\u30d1\u30c3\u30b1\u30fc\u30b8\u3067\u5c0e\u5165\u3057\u3066\u307f\u307e\u3057\u305f\uff0e

\n
\n
\n
\n
$ wget -c https://chawan.net/dl/chawan-0-2-0-amd64.deb (1)\n$ sha256sum ./chawan-0-2-0-amd64.deb\nba3ff4e24a5bf09919caba1cdc4f50b0cbf862f8433f5ea43d5391c1e04eceda  ./chawan-0-2-0-amd64.deb\n$ sha512sum ./chawan-0-2-0-amd64.deb\ne941b880c179df8da7eb4cf7a8050c75ef8a1cdfe629aff8287893f4308071454bf7fb54b4054a5ab99330610b17eca12e7f23a71ffc956d613329365d3c7e17  ./chawan-0-2-0-amd64.deb\n$ sudo apt install ./chawan-0-2-0-amd64.deb (2)\n$ chawan (3)\nbash: chawan: command not found\n$ dpkg -L chawan | grep /bin/ (4)\n/usr/bin/cha\n/usr/bin/mancha\n$ cha\nChawan browser v0.2.0 (release, sandboxed)\nUsage: cha [options] [URL(s) or file(s)...]\nOptions:\n    --                          Interpret all following arguments as URLs\n    -c, --css <stylesheet>      Pass stylesheet (e.g. -c 'a{color: blue}')\n    -d, --dump                  Print page to stdout\n    -h, --help                  Print this usage message\n    -o, --opt <config>          Pass config options (e.g. -o 'page.q=\"quit()\"')\n    -r, --run <script/file>     Run passed script or file\n    -v, --version               Print version information\n    -C, --config <file>         Override config path\n    -I, --input-charset <enc>   Specify document charset\n    -M, --monochrome            Set color-mode to 'monochrome'\n    -O, --display-charset <enc> Specify display charset\n    -T, --type <type>           Specify content mime type\n    -V, --visual                Visual startup mode\n$ cha --version\nChawan browser v0.2.0 (release, sandboxed by seccomp-bpf)\n$ mancha\nUsage:\nmancha [-M path] [[-s] section] -k keyword\nmancha [-M path] [[-s] section] name\nmancha -l file\n$ mancha cha\n    :
\n
\n
\n
\n
    \n
  1. \n

    .deb\u3092\u5165\u624b

    \n
  2. \n
  3. \n

    \u30a4\u30f3\u30b9\u30c8\u30fc\u30eb

    \n
  4. \n
  5. \n

    chwan\u30b3\u30de\u30f3\u30c9\u306f\u306a\u304b\u3063\u305f

    \n
  6. \n
  7. \n

    \u30d0\u30a4\u30ca\u30ea\u3092\u63a2\u3059\u3068 cha \u3068 mancha \u304c\u898b\u3064\u304b\u3063\u305f

    \n
  8. \n
\n
\n
\n
\n

Debian sid amd64\u3067source\u304b\u3089build

\n
\n

source\u304b\u3089\u306ebuild\u3082\u8a66\u3057\u3066\u307f\u307e\u3059\uff0e

\n
\n
\n

\u30d1\u30c3\u30b1\u30fc\u30b8\u3067\u5c0e\u5165\u3057\u305fNim\u306f\u3061\u3087\u3063\u3068\u53e4\u305d\u3046\u3067\u3059\uff0e

\n
\n
\n
\n
$ /usr/bin/nim -V\nNim Compiler Version 1.6.14 [Linux: amd64]\nCompiled at 2024-04-25\nCopyright (c) 2006-2023 by Andreas Rumpf\n\nactive boot switches: -d:release
\n
\n
\n
\n

Nim 2.2.4\u3092\u8cb0\u3063\u3066\u304d\u3066PATH\u3092\u901a\u3057\u3066\u304a\u304d\u307e\u3059\uff0e

\n
\n\n
\n
\n
$ wget -c https://nim-lang.org/download/nim-2.2.4-linux_x64.tar.xz https://nim-lang.org/download/nim-2.2.4-linux_x64.tar.xz.sha256\n$ sha256sum -c nim-2.2.4-linux_x64.tar.xz.sha256\nnim-2.2.4-linux_x64.tar.xz: OK\n$ fuse-archive nim-2.2.4-linux_x64.tar.xz\nfuse-archive: Created mount point 'nim-2.2.4-linux_x64'\n$ export PATH=`pwd`/nim-2.2.4-linux_x64/nim-2.2.4/bin:$PATH\n$ which nim\n/home/matoken/Downloads/nim-2.2.4-linux_x64/nim-2.2.4/bin/nim\n$ nim -V\nNim Compiler Version 2.2.4 [Linux: amd64]\nCompiled at 2025-04-22\nCopyright (c) 2006-2025 by Andreas Rumpf\n\ngit hash: f7145dd26efeeeb6eeae6fff649db244d81b212d\nactive boot switches: -d:release
\n
\n
\n
\n

\u9069\u5f53\u306a\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u306b\u79fb\u52d5\u3057\u3066Chawan\u306esource\u3092\u8cb0\u3063\u3066\u304d\u3066build\u3057\u307e\u3059\uff0e

\n
\n
\n
\n
$ cd ~/src\n$ git clone https://git.sr.ht/~bptato/chawan && cd chawan\n$ sudo apt install libssh2-1-dev libssl-dev libbrotli-dev pkg-config make\n$ make\n$ ./cha\nChawan browser v0.3 (release, sandboxed)\nUsage: cha [options] [URL(s) or file(s)...]\nOptions:\n    --                          Interpret all following arguments as URLs\n    -c, --css <stylesheet>      Pass stylesheet (e.g. -c 'a{color: blue}')\n    -d, --dump                  Print page to stdout\n    -h, --help                  Print this usage message\n    -o, --opt <config>          Pass config options (e.g. -o 'page.q=\"quit()\"')\n    -r, --run <script/file>     Run passed script or file\n    -v, --version               Print version information\n    -C, --config <file>         Override config path\n    -I, --input-charset <enc>   Specify document charset\n    -M, --monochrome            Set color-mode to 'monochrome'\n    -O, --display-charset <enc> Specify display charset\n    -T, --type <type>           Specify content mime type\n    -V, --visual                Visual startup mode\n$ ./cha -v\nChawan browser v0.3 (release, sandboxed by seccomp-bpf)
\n
\n
\n
\n
\n

Raspberry Pi OS bookworm armhf

\n
\n

Single-Board Computer\u306eRaspberry Pi\u3067\u3082\u8a66\u3057\u305f\u3044\u306e\u3067\u3053\u3061\u3089\u3067\u3082build\u3092\u8a66\u3057\u307e\u3059\uff0e

\n
\n
\n

Linux armhf\u306eNim\u30d0\u30a4\u30ca\u30ea\u306f\u516c\u5f0f\u306b\u898b\u5f53\u305f\u3089\u306a\u3044\u306e\u3067\u3053\u3061\u3089\u306eNightly\u306e\u3082\u306e\u3092\u4f7f\u3044\u307e\u3057\u305f\uff0e

\n
\n\n
\n
\n
$ wget -c https://github.com/nim-lang/nightlies/releases/download/2025-04-22-version-2-2-f7145dd26efeeeb6eeae6fff649db244d81b212d/nim-2.2.4-linux_armv7l.tar.xz\n$ tar tvf nim-2.2.4-linux_armv7l.tar.xz\n$ tar xvf nim-2.2.4-linux_armv7l.tar.xz\n$ export PATH=$PATH:`pwd`/nim-2.2.4/bin\n$ which nim\n/home/matoken/Downloads/nim-2.2.4/bin/nim\n$ cd ~/src\n$ git clone https://git.sr.ht/~bptato/chawan && cd chawan\n$ sudo apt install libssh2-1-dev libssl-dev libbrotli-dev pkg-config make\n$ make\n$ ./cha --version\nChawan browser v0.3 (release, sandboxed by seccomp-bpf)
\n
\n
\n
\n\n\n\n\n\n
\n
Note
\n
\n
\n

\u624b\u5143\u306e\u74b0\u5883\u3067\u306f\u30d1\u30c3\u30b1\u30fc\u30b8\u5c0e\u5165\u6642\u306b\u4ee5\u4e0b\u306e\u3088\u3046\u306a\u4f9d\u5b58\u95a2\u4fc2\u306e\u30a8\u30e9\u30fc\u3068\u306a\u308a\u307e\u3057\u305f\uff0e

\n
\n
\n
\n
The following packages have unmet dependencies:\n zlib1g-dev : Depends: zlib1g (= 1:1.2.13.dfsg-1) but 1:1.2.13.dfsg-1+rpt1 is to be installed\nE: Unable to correct problems, you have held broken packages.
\n
\n
\n
\n

\u3068\u308a\u3042\u3048\u305a\u30d0\u30fc\u30b8\u30e7\u30f3\u3092\u6307\u5b9a\u3057\u3066\u5165\u308c\u76f4\u3057\u3066\u56de\u907f\u3067\u304d\u307e\u3057\u305f\uff0e

\n
\n
\n
\n
$ sudo apt install zlib1g=1:1.2.13.dfsg-1
\n
\n
\n
\n
\n
\n
\n
\n
\n

Chawan\u3092\u8a66\u3059

\n
\n
\n
\n
$ cha\nChawan browser v0.2.0 (release, sandboxed)\nUsage: cha [options] [URL(s) or file(s)...]\nOptions:\n    --                          Interpret all following arguments as URLs\n    -c, --css <stylesheet>      Pass stylesheet (e.g. -c 'a{color: blue}')\n    -d, --dump                  Print page to stdout\n    -h, --help                  Print this usage message\n    -o, --opt <config>          Pass config options (e.g. -o 'page.q=\"quit()\"')\n    -r, --run <script/file>     Run passed script or file\n    -v, --version               Print version information\n    -C, --config <file>         Override config path\n    -I, --input-charset <enc>   Specify document charset\n    -M, --monochrome            Set color-mode to 'monochrome'\n    -O, --display-charset <enc> Specify display charset\n    -T, --type <type>           Specify content mime type\n    -V, --visual                Visual startup mode
\n
\n
\n
\n

\u3068\u308a\u3042\u3048\u305a cha $URL \u3068\u3044\u3046\u611f\u3058\u3067url\u3092\u6307\u5b9a\u3057\u3066\u8d77\u52d5\u3059\u308b\u3068\u30a6\u30a7\u30d6\u30da\u30fc\u30b8\u304c\u8868\u793a\u3067\u304d\u307e\u3059\uff0e
\n\u65e2\u5b9a\u5024\u3067\u306fCSS\u306f\u8a8d\u8b58\u3057\u307e\u3059\u304c\uff0cJavaScript\u3084\u753b\u50cf\u306f\u4f7f\u3048\u307e\u305b\u3093\uff0e

\n
\n
\n

\u53f3\u30af\u30ea\u30c3\u30af\u304b\u3089\u306e\u30e1\u30fc\u30cb\u30e5\u30fc\u3084\u30b7\u30e7\u30fc\u30c8\u30ab\u30c3\u30c8\u3067\u6709\u52b9\u306b\u3059\u308b\u3053\u3068\u3082\u51fa\u6765\u307e\u3059\u304c\u9762\u5012\u306a\u306e\u3067\u8a2d\u5b9a\u30d5\u30a1\u30a4\u30eb\u3067\u8a2d\u5b9a\u3057\u307e\u3059\uff0e

\n
\n
\n
\u53f3\u30af\u30ea\u30c3\u30af\u306e\u30e1\u30cb\u30e5\u30fc
\n
\n
\u250c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2510\n\u2502 Select text              (v) \u2502\n\u2502 Copy selection           (y) \u2502\n\u2502 Previous buffer          (,) \u2502\n\u2502 Next buffer              (.) \u2502\n\u2502 Discard buffer           (D) \u2502\n\u2502 \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 \u2502\n\u2502 View image               (I) \u2502\n\u2502 Peek                     (u) \u2502\n\u2502 Copy link               (yu) \u2502\n\u2502 Copy image link         (yI) \u2502\n\u2502 Paste link             (M-p) \u2502\n\u2502 Reload                   (U) \u2502\n\u2502 \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 \u2502\n\u2502 Save link             (sC-m) \u2502\n\u2502 View source              (\\) \u2502\n\u2502 Edit source             (sE) \u2502\n\u2502 Save source             (sS) \u2502\n\u2502 \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 \u2502\n\u2502 Linkify URLs             (:) \u2502\n\u2502 Toggle images          (M-i) \u2502\n\u2502 Toggle JS & reload     (M-j) \u2502\n\u2502 Toggle cookie & reload (M-k) \u2502\n\u2502 \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 \u2502\n\u2502 Bookmark page          (M-a) \u2502\n\u2502 Open bookmarks         (M-b) \u2502\n\u2502 Open history           (C-h) \u2502\n\u2514\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2518
\n
\n
\n
\n

\u8a2d\u5b9a\u30d5\u30a1\u30a4\u30eb\u306f
\n~/.chawan/config.toml \u82e5\u3057\u304f\u306f ~/.config/chawan/config.toml \u304c\u4f7f\u3048\u308b\u3088\u3046\u3067\u3059\uff0e
\ncha-config(5) \u3092\u898b\u306a\u304c\u3089\u8a2d\u5b9a\u3059\u308b\u3068\u826f\u3055\u305d\u3046\u3067\u3059\uff0e

\n
\n
\n

\u3068\u308a\u3042\u3048\u305a\u753b\u50cf\u3068JavaScript\u3092\u6709\u52b9\u306b\u3059\u308b\u6700\u4f4e\u9650\u306e\u8a2d\u5b9a\u306f\u3053\u3093\u306a\u611f\u3058\u306e\u3088\u3046\u3067\u3059\uff0e

\n
\n
\n
\n
[buffer]\nimages = true\nscripting = true
\n
\n
\n
\n

\u305f\u3060\uff0cJavaScript\u306e\u8a2d\u5b9a\u306e scripting \u306f\u3053\u3053\u3067\u306f\u306a\u304fsite\u3054\u3068\u306e\u8a2d\u5b9a\u306e [siteconf] \u5185\u3067\u6709\u52b9\u306b\u3059\u308b\u306e\u3092\u5f37\u304f\u52e7\u3081\u307e\u3059\u3068\u306e\u3053\u3068\u306a\u306e\u3067\u3061\u3083\u3093\u3068\u5fc5\u8981\u306asite\u3060\u3051\u6709\u52b9\u306b\u3057\u305f\u307b\u3046\u304c\u826f\u3055\u305d\u3046\u3067\u3059\uff0e

\n
\n
\n

\u3053\u306e\u72b6\u614b\u3067Sixel\u3084Kitty\u306b\u5bfe\u5fdc\u3057\u305fXTerm\u306a\u3069\u306e\u7aef\u672b\u3067\u30a2\u30af\u30bb\u30b9\u3059\u308b\u3068\u3053\u3093\u306a\u611f\u3058\u3067\u8868\u793a\u3055\u308c\u307e\u3059\uff0e

\n
\n
\n
about:chawan \u30ad\u30fc\u30d0\u30a4\u30f3\u30c9\u306a\u3069\u3082\u78ba\u8a8d\u3067\u304d\u307e\u3059
\n

\"chawan

\n
\n\n\n
\n
https://tenki.jp/forecast/9/49/8820/46490/10days.html JavaScript\u3092On\u306b\u3057\u305f\u72b6\u614b\u30672\u9031\u9593\u5929\u6c17\u3092\u898b\u3088\u3046\u3068\u3059\u308b\u3068\u30b3\u30b1\u307e\u3059\uff0eJavaScript off\u3060\u3068\u8868\u793a\u3067\u304d\u307e\u3057\u305f\uff0e
\n

\"chawan

\n
\n\n\n
\n
Mastodon\u3084Misskey\u306fJavaScript\u3092\u6709\u52b9\u306b\u3057\u3066\u3082\u30c0\u30e1\u305d\u3046\u3067\u3059\uff0e\u3053\u306e\u8fba\u308a\u306f\u30b5\u30fc\u30c9\u30d1\u30fc\u30c6\u30a3\u306e\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u4f7f\u3063\u305f\u307b\u3046\u304c\u826f\u3055\u305d\u3046\u3067\u3059\uff0e\u3068\u601d\u3063\u305f\u3051\u3069 fedibird.com \u306f\u5927\u4e08\u592b\u305d\u3046\uff0e\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u306e\u8a2d\u5b9a\u304c\u9055\u3046\u306e\u3067\u3057\u3087\u3046\u304b?
\n

\"chawan
\n\"chawan

\n
\n
\n
Github\u306eReleases\u306eAssets\u3082\u4eca\u306fJavaScript\u304c\u5fc5\u9808\u306b\u306a\u3063\u3066\u3057\u307e\u3063\u3066\u3044\u308b\u306e\u3067\u3053\u308c\u306f\u3069\u3046\u3060\u308d\u3046\u3068\u601d\u3044\u307e\u3057\u305f\u304c\u99c4\u76ee\u3067\u3057\u305f\uff0e
\n

\"chawan

\n
\n
\n

\u3068\u3044\u3046\u611f\u3058\u3067\u5c11\u3057\u8a66\u3057\u305f\u611f\u3058\u3067\u306fCSS\u3092\u8a8d\u8b58\u3059\u308b\u306e\u3067\u898b\u305f\u76ee\u304cw3m\u306a\u3069\u3068\u6bd4\u3079\u3066\u5927\u5206\u3044\u3044\u611f\u3058\u3067\u3059\uff0e\u30ab\u30fc\u30bd\u30eb\u304c\u80cc\u666f\u3068\u540c\u3058\u306b\u306a\u308a\u5834\u6240\u304c\u308f\u304b\u3089\u306a\u304f\u306a\u3063\u3066\u3057\u307e\u3063\u305f\u308a\u3057\u307e\u3059\u304c\uff0c\u30dd\u30a4\u30f3\u30c6\u30a3\u30f3\u30b0\u30c7\u30d0\u30a4\u30b9\u304c\u4f7f\u3048\u308b\u5834\u5408\u306f\u30af\u30ea\u30c3\u30af\u3067\u30ab\u30fc\u30bd\u30eb\u304c\u305d\u306e\u5834\u6240\u306b\u79fb\u52d5\u3059\u308b\u306e\u3067\u30a2\u30f3\u30ab\u90e8\u5206\u3092\u30af\u30ea\u30c3\u30af&Enter\u3067\u30ea\u30f3\u30af\u5148\u306b\u79fb\u52d5\u3067\u304d\u307e\u3059\uff0e\u753b\u50cf\u304c\u4e00\u90e8\u3057\u304b\u8868\u793a\u3055\u308c\u306a\u3044\u3068\u304d key:[M-i] \u3067\u753b\u50cf\u3092off → \u518d\u5ea6 key:[M-i] \u3067\u753b\u50cf\u3092\u518d\u5ea6on \u3068\u3059\u308b\u3068\u8aad\u307f\u8fbc\u307e\u308c\u308b\u3053\u3068\u304c\u3042\u308a\u307e\u3059\uff0e

\n
\n
\n

\u56de\u7dda\u304c\u7d30\u3044\u5834\u5408\u30ea\u30e2\u30fc\u30c8\u306eVPS\u3067Chawan\u3092\u52d5\u304b\u3057\u3066\u7d50\u679c\u3060\u3051\u3092\u3082\u3089\u3046\u3088\u3046\u306b\u3059\u308b\u3068\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u6642\u9593\u304c\u77ed\u7e2e\u3055\u308c\u3066\u3044\u3044\u611f\u3058\u3067\u3059\uff0e\u305f\u3060\u3057\u52a0\u5897\u304c\u591a\u3044\u30b5\u30a4\u30c8\u3067\u30b9\u30af\u30ed\u30fc\u30eb\u3092\u591a\u7528\u3059\u308b\u5834\u5408\u306f\u3082\u305f\u3064\u304d\u307e\u3059\uff0e

\n
\n
\n

Sixel\u3067\u753b\u50cf\u304c\u5229\u7528\u3067\u304d\u308b\u6642\u306bSixel\u5bfe\u5fdctmux\u7d4c\u7531\u3067Chawan\u3092\u8d77\u52d5\u3059\u308b\u3068Chawan\u306eSixel\u753b\u50cf\u304c\u8868\u793a\u3055\u308c\u306a\u3044\u3088\u3046\u3067\u3059\uff0e\u540c\u3058\u7aef\u672b\u3067img2sixel\u306a\u3069\u306f\u554f\u984c\u306a\u3044\u306e\u3067Chawan\u5074\u306e\u554f\u984c\u3067\u3057\u3087\u3046\u304b?

\n
\n
\n

JavaScript\u306f\u601d\u3063\u305f\u3088\u308a\u52d5\u304b\u306a\u3044\u306a\u3068\u3044\u3046\u611f\u3058\u3067\u3059\u304cCSS\u304c\u601d\u3063\u305f\u3088\u308a\u52a9\u304b\u308a\u307e\u3059\uff0eJavaScript\u306b\u3064\u3044\u3066\u306fQuickJS-NG\u3092\u4f7f\u3063\u3066\u3044\u308b\u306e\u3067\u3053\u3061\u3089\u306b\u671f\u5f85\u3067\u3059\uff0eECMAScript\u306e\u6a5f\u80fd\u6e96\u62e0\u306e\u9032\u6357\u72b6\u6cc1\u306f\u3053\u3061\u3089

\n
\n
\n

\u305f\u3060\uff0c\u73fe\u6642\u70b9\u3067\u306fChawan\u306fLinux amd64\u74b0\u5883\u3067JavaScript/\u753b\u50cf\u6709\u52b9\u3067\u3082\u30e1\u30e2\u30ea\u5229\u7528\u91cf10MB\u524d\u5f8c\uff0e\u8272\u3005\u3068\u52d5\u304f\u3088\u3046\u306b\u306a\u308b\u3068\u3053\u306e\u8fba\u3082\u5897\u3048\u3066\u3044\u3063\u3066\u3057\u307e\u3046\u3067\u3057\u3087\u3046\u306d\u2026\u2026\uff0e

\n
\n
\n

\u3068\u3044\u3046\u611f\u3058\u3067\u8efd\u91cf\u3067\u898b\u305f\u76ee\u3082\u3044\u3044\u306e\u3067\u3053\u308c\u304b\u3089\u306b\u3082\u671f\u5f85\u3057\u3064\u3064w3m\u306a\u3069\u3068\u4f75\u7528\u3057\u3066\u3044\u3053\u3046\u3068\u601d\u3044\u307e\u3059\uff0e

\n
\n
\n
\n", "content_text": "Chawan\u3068\u3044\u3046\u30bf\u30fc\u30df\u30ca\u30eb\u30a6\u30a7\u30d6\u30d6\u30e9\u30a6\u30b6\u3092\u77e5\u308a\u307e\u3057\u305f\uff0e\n\u30e1\u30e2\u30ea\u30bb\u30fc\u30d5\u306aNim\u3067\u5b9f\u88c5\u3055\u308c\u3066\u3044\u3066\u30e9\u30a4\u30bb\u30f3\u30b9\u306f\u30d1\u30d6\u30ea\u30c3\u30af\u30c9\u30e1\u30a4\u30f3\u3067\u3059\uff0e\n\n\n\u540c\u3058\u3088\u3046\u306b\u30bf\u30fc\u30df\u30ca\u30eb\u4e0a\u3067\u52d5\u4f5c\u3059\u308bw3m\u3084Lynx\u7cfb\u3068\u306e\u5927\u304d\u306a\u9055\u3044\u306fJavaScript\u3084CSS\u306b\u5bfe\u5fdc\u3057\u3066\u3044\u308b\u8fba\u308a\u3067\u3057\u3087\u3046\u304b\uff0eSixel\u3084Kitty\u306e\u30bf\u30fc\u30df\u30ca\u30eb\u753b\u50cf\u5f62\u5f0f\u306b\u3082\u5bfe\u5fdc\u3057\u3066\u3044\u307e\u3059\uff0e\n\u5c11\u3057\u8a66\u3057\u3066\u307f\u307e\u3057\u305f\uff0e\n\n\n\n\nChawan: TUI web browser\n\n\nchawan: TUI Web Browser\n\n\n\nchawan – A TUI web browser.\n\n\n\n\n\n\n\n\n\n\n\nNote\n\n\n\n\u5c11\u3057\u7528\u9014\u304c\u9055\u3044\u307e\u3059\u304c\uff0cv8\u30a8\u30f3\u30b8\u30f3\u3092\u4f7f\u3063\u305f\u30b9\u30af\u30ec\u30a4\u30d4\u30f3\u30b0\u5411\u3051\u306e\u30d8\u30c3\u30c9\u30ec\u30b9\u30d6\u30e9\u30a6\u30b6\u306eLightpanda\u306a\u3093\u3066\u3082\u306e\u3082\u3042\u308a\u307e\u3059\uff0e\n\n\n\n\nLightpanda | The headless browser\n\n\n\n\n\n\n\n\n\n\nChawan\u306e\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\n\n\n\u73fe\u5728\u306eChawan: 0.2.0\u306fLinux amd64\u306e\u9759\u7684\u30d0\u30a4\u30ca\u30eatarball\u3084Debian amd64\u306e.deb\u304c\u3042\u308a\u307e\u3059\uff0e\n\u4e0d\u5b89\u5b9a\u306e\u30d1\u30c3\u30b1\u30fc\u30b8\u3068\u3057\u3066AUR/NixOS/AppImage\u304c\u3042\u308b\u3088\u3046\u3067\u3059\uff0e(\u3053\u3061\u3089\u306f\u4eca\u56de\u672a\u78ba\u8a8d)\n\n\n\u4ed6\u306e\u74b0\u5883\u3067\u306f\u30bb\u30eb\u30d5\u30d3\u30eb\u30c9\u304c\u5fc5\u8981\u305d\u3046\u3067\u3059\uff0e\n\n\nDebian\u30d1\u30c3\u30b1\u30fc\u30b8\u5229\u7528(amd64\u306e\u307f)\n\nDebian sid amd64\u74b0\u5883\u306b.deb\u30d1\u30c3\u30b1\u30fc\u30b8\u3067\u5c0e\u5165\u3057\u3066\u307f\u307e\u3057\u305f\uff0e\n\n\n\n$ wget -c https://chawan.net/dl/chawan-0-2-0-amd64.deb (1)\n$ sha256sum ./chawan-0-2-0-amd64.deb\nba3ff4e24a5bf09919caba1cdc4f50b0cbf862f8433f5ea43d5391c1e04eceda ./chawan-0-2-0-amd64.deb\n$ sha512sum ./chawan-0-2-0-amd64.deb\ne941b880c179df8da7eb4cf7a8050c75ef8a1cdfe629aff8287893f4308071454bf7fb54b4054a5ab99330610b17eca12e7f23a71ffc956d613329365d3c7e17 ./chawan-0-2-0-amd64.deb\n$ sudo apt install ./chawan-0-2-0-amd64.deb (2)\n$ chawan (3)\nbash: chawan: command not found\n$ dpkg -L chawan | grep /bin/ (4)\n/usr/bin/cha\n/usr/bin/mancha\n$ cha\nChawan browser v0.2.0 (release, sandboxed)\nUsage: cha [options] [URL(s) or file(s)...]\nOptions:\n -- Interpret all following arguments as URLs\n -c, --css <stylesheet> Pass stylesheet (e.g. -c 'a{color: blue}')\n -d, --dump Print page to stdout\n -h, --help Print this usage message\n -o, --opt <config> Pass config options (e.g. -o 'page.q=\"quit()\"')\n -r, --run <script/file> Run passed script or file\n -v, --version Print version information\n -C, --config <file> Override config path\n -I, --input-charset <enc> Specify document charset\n -M, --monochrome Set color-mode to 'monochrome'\n -O, --display-charset <enc> Specify display charset\n -T, --type <type> Specify content mime type\n -V, --visual Visual startup mode\n$ cha --version\nChawan browser v0.2.0 (release, sandboxed by seccomp-bpf)\n$ mancha\nUsage:\nmancha [-M path] [[-s] section] -k keyword\nmancha [-M path] [[-s] section] name\nmancha -l file\n$ mancha cha\n :\n\n\n\n\n\n.deb\u3092\u5165\u624b\n\n\n\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\n\n\nchwan\u30b3\u30de\u30f3\u30c9\u306f\u306a\u304b\u3063\u305f\n\n\n\u30d0\u30a4\u30ca\u30ea\u3092\u63a2\u3059\u3068 cha \u3068 mancha \u304c\u898b\u3064\u304b\u3063\u305f\n\n\n\n\n\nDebian sid amd64\u3067source\u304b\u3089build\n\nsource\u304b\u3089\u306ebuild\u3082\u8a66\u3057\u3066\u307f\u307e\u3059\uff0e\n\n\n\u30d1\u30c3\u30b1\u30fc\u30b8\u3067\u5c0e\u5165\u3057\u305fNim\u306f\u3061\u3087\u3063\u3068\u53e4\u305d\u3046\u3067\u3059\uff0e\n\n\n\n$ /usr/bin/nim -V\nNim Compiler Version 1.6.14 [Linux: amd64]\nCompiled at 2024-04-25\nCopyright (c) 2006-2023 by Andreas Rumpf\n\nactive boot switches: -d:release\n\n\n\nNim 2.2.4\u3092\u8cb0\u3063\u3066\u304d\u3066PATH\u3092\u901a\u3057\u3066\u304a\u304d\u307e\u3059\uff0e\n\n\n\n\nUnix installation – Nim Programming Language\n\n\n\n\n\n$ wget -c https://nim-lang.org/download/nim-2.2.4-linux_x64.tar.xz https://nim-lang.org/download/nim-2.2.4-linux_x64.tar.xz.sha256\n$ sha256sum -c nim-2.2.4-linux_x64.tar.xz.sha256\nnim-2.2.4-linux_x64.tar.xz: OK\n$ fuse-archive nim-2.2.4-linux_x64.tar.xz\nfuse-archive: Created mount point 'nim-2.2.4-linux_x64'\n$ export PATH=`pwd`/nim-2.2.4-linux_x64/nim-2.2.4/bin:$PATH\n$ which nim\n/home/matoken/Downloads/nim-2.2.4-linux_x64/nim-2.2.4/bin/nim\n$ nim -V\nNim Compiler Version 2.2.4 [Linux: amd64]\nCompiled at 2025-04-22\nCopyright (c) 2006-2025 by Andreas Rumpf\n\ngit hash: f7145dd26efeeeb6eeae6fff649db244d81b212d\nactive boot switches: -d:release\n\n\n\n\u9069\u5f53\u306a\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u306b\u79fb\u52d5\u3057\u3066Chawan\u306esource\u3092\u8cb0\u3063\u3066\u304d\u3066build\u3057\u307e\u3059\uff0e\n\n\n\n$ cd ~/src\n$ git clone https://git.sr.ht/~bptato/chawan && cd chawan\n$ sudo apt install libssh2-1-dev libssl-dev libbrotli-dev pkg-config make\n$ make\n$ ./cha\nChawan browser v0.3 (release, sandboxed)\nUsage: cha [options] [URL(s) or file(s)...]\nOptions:\n -- Interpret all following arguments as URLs\n -c, --css <stylesheet> Pass stylesheet (e.g. -c 'a{color: blue}')\n -d, --dump Print page to stdout\n -h, --help Print this usage message\n -o, --opt <config> Pass config options (e.g. -o 'page.q=\"quit()\"')\n -r, --run <script/file> Run passed script or file\n -v, --version Print version information\n -C, --config <file> Override config path\n -I, --input-charset <enc> Specify document charset\n -M, --monochrome Set color-mode to 'monochrome'\n -O, --display-charset <enc> Specify display charset\n -T, --type <type> Specify content mime type\n -V, --visual Visual startup mode\n$ ./cha -v\nChawan browser v0.3 (release, sandboxed by seccomp-bpf)\n\n\n\n\nRaspberry Pi OS bookworm armhf\n\nSingle-Board Computer\u306eRaspberry Pi\u3067\u3082\u8a66\u3057\u305f\u3044\u306e\u3067\u3053\u3061\u3089\u3067\u3082build\u3092\u8a66\u3057\u307e\u3059\uff0e\n\n\nLinux armhf\u306eNim\u30d0\u30a4\u30ca\u30ea\u306f\u516c\u5f0f\u306b\u898b\u5f53\u305f\u3089\u306a\u3044\u306e\u3067\u3053\u3061\u3089\u306eNightly\u306e\u3082\u306e\u3092\u4f7f\u3044\u307e\u3057\u305f\uff0e\n\n\n\n\nRelease Nightly build on 2025-04-22 for branch version-2-2 \u00b7 nim-lang/nightlies\n\n\n\n\n\n$ wget -c https://github.com/nim-lang/nightlies/releases/download/2025-04-22-version-2-2-f7145dd26efeeeb6eeae6fff649db244d81b212d/nim-2.2.4-linux_armv7l.tar.xz\n$ tar tvf nim-2.2.4-linux_armv7l.tar.xz\n$ tar xvf nim-2.2.4-linux_armv7l.tar.xz\n$ export PATH=$PATH:`pwd`/nim-2.2.4/bin\n$ which nim\n/home/matoken/Downloads/nim-2.2.4/bin/nim\n$ cd ~/src\n$ git clone https://git.sr.ht/~bptato/chawan && cd chawan\n$ sudo apt install libssh2-1-dev libssl-dev libbrotli-dev pkg-config make\n$ make\n$ ./cha --version\nChawan browser v0.3 (release, sandboxed by seccomp-bpf)\n\n\n\n\n\n\nNote\n\n\n\n\u624b\u5143\u306e\u74b0\u5883\u3067\u306f\u30d1\u30c3\u30b1\u30fc\u30b8\u5c0e\u5165\u6642\u306b\u4ee5\u4e0b\u306e\u3088\u3046\u306a\u4f9d\u5b58\u95a2\u4fc2\u306e\u30a8\u30e9\u30fc\u3068\u306a\u308a\u307e\u3057\u305f\uff0e\n\n\n\nThe following packages have unmet dependencies:\n zlib1g-dev : Depends: zlib1g (= 1:1.2.13.dfsg-1) but 1:1.2.13.dfsg-1+rpt1 is to be installed\nE: Unable to correct problems, you have held broken packages.\n\n\n\n\u3068\u308a\u3042\u3048\u305a\u30d0\u30fc\u30b8\u30e7\u30f3\u3092\u6307\u5b9a\u3057\u3066\u5165\u308c\u76f4\u3057\u3066\u56de\u907f\u3067\u304d\u307e\u3057\u305f\uff0e\n\n\n\n$ sudo apt install zlib1g=1:1.2.13.dfsg-1\n\n\n\n\n\n\n\n\n\n\nChawan\u3092\u8a66\u3059\n\n\n\n$ cha\nChawan browser v0.2.0 (release, sandboxed)\nUsage: cha [options] [URL(s) or file(s)...]\nOptions:\n -- Interpret all following arguments as URLs\n -c, --css <stylesheet> Pass stylesheet (e.g. -c 'a{color: blue}')\n -d, --dump Print page to stdout\n -h, --help Print this usage message\n -o, --opt <config> Pass config options (e.g. -o 'page.q=\"quit()\"')\n -r, --run <script/file> Run passed script or file\n -v, --version Print version information\n -C, --config <file> Override config path\n -I, --input-charset <enc> Specify document charset\n -M, --monochrome Set color-mode to 'monochrome'\n -O, --display-charset <enc> Specify display charset\n -T, --type <type> Specify content mime type\n -V, --visual Visual startup mode\n\n\n\n\u3068\u308a\u3042\u3048\u305a cha $URL \u3068\u3044\u3046\u611f\u3058\u3067url\u3092\u6307\u5b9a\u3057\u3066\u8d77\u52d5\u3059\u308b\u3068\u30a6\u30a7\u30d6\u30da\u30fc\u30b8\u304c\u8868\u793a\u3067\u304d\u307e\u3059\uff0e\n\u65e2\u5b9a\u5024\u3067\u306fCSS\u306f\u8a8d\u8b58\u3057\u307e\u3059\u304c\uff0cJavaScript\u3084\u753b\u50cf\u306f\u4f7f\u3048\u307e\u305b\u3093\uff0e\n\n\n\u53f3\u30af\u30ea\u30c3\u30af\u304b\u3089\u306e\u30e1\u30fc\u30cb\u30e5\u30fc\u3084\u30b7\u30e7\u30fc\u30c8\u30ab\u30c3\u30c8\u3067\u6709\u52b9\u306b\u3059\u308b\u3053\u3068\u3082\u51fa\u6765\u307e\u3059\u304c\u9762\u5012\u306a\u306e\u3067\u8a2d\u5b9a\u30d5\u30a1\u30a4\u30eb\u3067\u8a2d\u5b9a\u3057\u307e\u3059\uff0e\n\n\n\u53f3\u30af\u30ea\u30c3\u30af\u306e\u30e1\u30cb\u30e5\u30fc\n\n\u250c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2510\n\u2502 Select text (v) \u2502\n\u2502 Copy selection (y) \u2502\n\u2502 Previous buffer (,) \u2502\n\u2502 Next buffer (.) \u2502\n\u2502 Discard buffer (D) \u2502\n\u2502 \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 \u2502\n\u2502 View image (I) \u2502\n\u2502 Peek (u) \u2502\n\u2502 Copy link (yu) \u2502\n\u2502 Copy image link (yI) \u2502\n\u2502 Paste link (M-p) \u2502\n\u2502 Reload (U) \u2502\n\u2502 \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 \u2502\n\u2502 Save link (sC-m) \u2502\n\u2502 View source (\\) \u2502\n\u2502 Edit source (sE) \u2502\n\u2502 Save source (sS) \u2502\n\u2502 \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 \u2502\n\u2502 Linkify URLs (:) \u2502\n\u2502 Toggle images (M-i) \u2502\n\u2502 Toggle JS & reload (M-j) \u2502\n\u2502 Toggle cookie & reload (M-k) \u2502\n\u2502 \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 \u2502\n\u2502 Bookmark page (M-a) \u2502\n\u2502 Open bookmarks (M-b) \u2502\n\u2502 Open history (C-h) \u2502\n\u2514\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2518\n\n\n\n\u8a2d\u5b9a\u30d5\u30a1\u30a4\u30eb\u306f\n~/.chawan/config.toml \u82e5\u3057\u304f\u306f ~/.config/chawan/config.toml \u304c\u4f7f\u3048\u308b\u3088\u3046\u3067\u3059\uff0e\ncha-config(5) \u3092\u898b\u306a\u304c\u3089\u8a2d\u5b9a\u3059\u308b\u3068\u826f\u3055\u305d\u3046\u3067\u3059\uff0e\n\n\n\u3068\u308a\u3042\u3048\u305a\u753b\u50cf\u3068JavaScript\u3092\u6709\u52b9\u306b\u3059\u308b\u6700\u4f4e\u9650\u306e\u8a2d\u5b9a\u306f\u3053\u3093\u306a\u611f\u3058\u306e\u3088\u3046\u3067\u3059\uff0e\n\n\n\n[buffer]\nimages = true\nscripting = true\n\n\n\n\u305f\u3060\uff0cJavaScript\u306e\u8a2d\u5b9a\u306e scripting \u306f\u3053\u3053\u3067\u306f\u306a\u304fsite\u3054\u3068\u306e\u8a2d\u5b9a\u306e [siteconf] \u5185\u3067\u6709\u52b9\u306b\u3059\u308b\u306e\u3092\u5f37\u304f\u52e7\u3081\u307e\u3059\u3068\u306e\u3053\u3068\u306a\u306e\u3067\u3061\u3083\u3093\u3068\u5fc5\u8981\u306asite\u3060\u3051\u6709\u52b9\u306b\u3057\u305f\u307b\u3046\u304c\u826f\u3055\u305d\u3046\u3067\u3059\uff0e\n\n\n\u3053\u306e\u72b6\u614b\u3067Sixel\u3084Kitty\u306b\u5bfe\u5fdc\u3057\u305fXTerm\u306a\u3069\u306e\u7aef\u672b\u3067\u30a2\u30af\u30bb\u30b9\u3059\u308b\u3068\u3053\u3093\u306a\u611f\u3058\u3067\u8868\u793a\u3055\u308c\u307e\u3059\uff0e\n\n\nabout:chawan \u30ad\u30fc\u30d0\u30a4\u30f3\u30c9\u306a\u3069\u3082\u78ba\u8a8d\u3067\u304d\u307e\u3059\n\n\n\nhttps://chawan.net/\n\n\n\nhttps://teni.jp/\n\n\n\n\nhttps://tenki.jp/forecast/9/49/8820/46490/10days.html JavaScript\u3092On\u306b\u3057\u305f\u72b6\u614b\u30672\u9031\u9593\u5929\u6c17\u3092\u898b\u3088\u3046\u3068\u3059\u308b\u3068\u30b3\u30b1\u307e\u3059\uff0eJavaScript off\u3060\u3068\u8868\u793a\u3067\u304d\u307e\u3057\u305f\uff0e\n\n\n\nhttps://ja.wikipedia.org/wiki/%E8%8C%B6%E7%A2%97\n\n\n\nhttps://matoken.org/blog/\n\n\n\nMastodon\u3084Misskey\u306fJavaScript\u3092\u6709\u52b9\u306b\u3057\u3066\u3082\u30c0\u30e1\u305d\u3046\u3067\u3059\uff0e\u3053\u306e\u8fba\u308a\u306f\u30b5\u30fc\u30c9\u30d1\u30fc\u30c6\u30a3\u306e\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u4f7f\u3063\u305f\u307b\u3046\u304c\u826f\u3055\u305d\u3046\u3067\u3059\uff0e\u3068\u601d\u3063\u305f\u3051\u3069 fedibird.com \u306f\u5927\u4e08\u592b\u305d\u3046\uff0e\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u306e\u8a2d\u5b9a\u304c\u9055\u3046\u306e\u3067\u3057\u3087\u3046\u304b?\n\n\n\n\nGithub\u306eReleases\u306eAssets\u3082\u4eca\u306fJavaScript\u304c\u5fc5\u9808\u306b\u306a\u3063\u3066\u3057\u307e\u3063\u3066\u3044\u308b\u306e\u3067\u3053\u308c\u306f\u3069\u3046\u3060\u308d\u3046\u3068\u601d\u3044\u307e\u3057\u305f\u304c\u99c4\u76ee\u3067\u3057\u305f\uff0e\n\n\n\n\u3068\u3044\u3046\u611f\u3058\u3067\u5c11\u3057\u8a66\u3057\u305f\u611f\u3058\u3067\u306fCSS\u3092\u8a8d\u8b58\u3059\u308b\u306e\u3067\u898b\u305f\u76ee\u304cw3m\u306a\u3069\u3068\u6bd4\u3079\u3066\u5927\u5206\u3044\u3044\u611f\u3058\u3067\u3059\uff0e\u30ab\u30fc\u30bd\u30eb\u304c\u80cc\u666f\u3068\u540c\u3058\u306b\u306a\u308a\u5834\u6240\u304c\u308f\u304b\u3089\u306a\u304f\u306a\u3063\u3066\u3057\u307e\u3063\u305f\u308a\u3057\u307e\u3059\u304c\uff0c\u30dd\u30a4\u30f3\u30c6\u30a3\u30f3\u30b0\u30c7\u30d0\u30a4\u30b9\u304c\u4f7f\u3048\u308b\u5834\u5408\u306f\u30af\u30ea\u30c3\u30af\u3067\u30ab\u30fc\u30bd\u30eb\u304c\u305d\u306e\u5834\u6240\u306b\u79fb\u52d5\u3059\u308b\u306e\u3067\u30a2\u30f3\u30ab\u90e8\u5206\u3092\u30af\u30ea\u30c3\u30af&Enter\u3067\u30ea\u30f3\u30af\u5148\u306b\u79fb\u52d5\u3067\u304d\u307e\u3059\uff0e\u753b\u50cf\u304c\u4e00\u90e8\u3057\u304b\u8868\u793a\u3055\u308c\u306a\u3044\u3068\u304d key:[M-i] \u3067\u753b\u50cf\u3092off → \u518d\u5ea6 key:[M-i] \u3067\u753b\u50cf\u3092\u518d\u5ea6on \u3068\u3059\u308b\u3068\u8aad\u307f\u8fbc\u307e\u308c\u308b\u3053\u3068\u304c\u3042\u308a\u307e\u3059\uff0e\n\n\n\u56de\u7dda\u304c\u7d30\u3044\u5834\u5408\u30ea\u30e2\u30fc\u30c8\u306eVPS\u3067Chawan\u3092\u52d5\u304b\u3057\u3066\u7d50\u679c\u3060\u3051\u3092\u3082\u3089\u3046\u3088\u3046\u306b\u3059\u308b\u3068\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u6642\u9593\u304c\u77ed\u7e2e\u3055\u308c\u3066\u3044\u3044\u611f\u3058\u3067\u3059\uff0e\u305f\u3060\u3057\u52a0\u5897\u304c\u591a\u3044\u30b5\u30a4\u30c8\u3067\u30b9\u30af\u30ed\u30fc\u30eb\u3092\u591a\u7528\u3059\u308b\u5834\u5408\u306f\u3082\u305f\u3064\u304d\u307e\u3059\uff0e\n\n\nSixel\u3067\u753b\u50cf\u304c\u5229\u7528\u3067\u304d\u308b\u6642\u306bSixel\u5bfe\u5fdctmux\u7d4c\u7531\u3067Chawan\u3092\u8d77\u52d5\u3059\u308b\u3068Chawan\u306eSixel\u753b\u50cf\u304c\u8868\u793a\u3055\u308c\u306a\u3044\u3088\u3046\u3067\u3059\uff0e\u540c\u3058\u7aef\u672b\u3067img2sixel\u306a\u3069\u306f\u554f\u984c\u306a\u3044\u306e\u3067Chawan\u5074\u306e\u554f\u984c\u3067\u3057\u3087\u3046\u304b?\n\n\nJavaScript\u306f\u601d\u3063\u305f\u3088\u308a\u52d5\u304b\u306a\u3044\u306a\u3068\u3044\u3046\u611f\u3058\u3067\u3059\u304cCSS\u304c\u601d\u3063\u305f\u3088\u308a\u52a9\u304b\u308a\u307e\u3059\uff0eJavaScript\u306b\u3064\u3044\u3066\u306fQuickJS-NG\u3092\u4f7f\u3063\u3066\u3044\u308b\u306e\u3067\u3053\u3061\u3089\u306b\u671f\u5f85\u3067\u3059\uff0eECMAScript\u306e\u6a5f\u80fd\u6e96\u62e0\u306e\u9032\u6357\u72b6\u6cc1\u306f\u3053\u3061\u3089\n\n\n\u305f\u3060\uff0c\u73fe\u6642\u70b9\u3067\u306fChawan\u306fLinux amd64\u74b0\u5883\u3067JavaScript/\u753b\u50cf\u6709\u52b9\u3067\u3082\u30e1\u30e2\u30ea\u5229\u7528\u91cf10MB\u524d\u5f8c\uff0e\u8272\u3005\u3068\u52d5\u304f\u3088\u3046\u306b\u306a\u308b\u3068\u3053\u306e\u8fba\u3082\u5897\u3048\u3066\u3044\u3063\u3066\u3057\u307e\u3046\u3067\u3057\u3087\u3046\u306d\u2026\u2026\uff0e\n\n\n\u3068\u3044\u3046\u611f\u3058\u3067\u8efd\u91cf\u3067\u898b\u305f\u76ee\u3082\u3044\u3044\u306e\u3067\u3053\u308c\u304b\u3089\u306b\u3082\u671f\u5f85\u3057\u3064\u3064w3m\u306a\u3069\u3068\u4f75\u7528\u3057\u3066\u3044\u3053\u3046\u3068\u601d\u3044\u307e\u3059\uff0e", "date_published": "2025-06-20T05:52:39+09:00", "date_modified": "2025-06-20T06:27:31+09:00", "authors": [ { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" } ], "author": { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" }, "tags": [ "Chawan", "CSS", "JavaScript", "terminal", "TUI", "w3m", "Web browser", "bookworm", "Debian", "Linux", "Raspberry Pi OS", "sid" ] }, { "id": "https://matoken.org/blog/?p=4594", "url": "https://matoken.org/blog/2025/06/07/add-satellites-to-the-tracker/", "title": "terminal\u885b\u661f\u8ffd\u8de1\u30a2\u30d7\u30ea\u306etracker\u306b\u885b\u661f\u3092\u8ffd\u52a0", "content_html": "
\n
\n
\n

\u30bf\u30fc\u30df\u30ca\u30eb\u4e0a\u3067\u52d5\u4f5c\u3059\u308b\u885b\u661f\u8ffd\u8de1\uff0c\u8ecc\u9053\u4e88\u6e2c\u30bd\u30d5\u30c8\u30a6\u30a7\u30a2\u306etracker\u304c\u697d\u3057\u304f\u3066\u8272\u3005\u306a\u885b\u661f\u306e\u8ecc\u9053\u3092\u898b\u305f\u308a\u3057\u3066\u697d\u3057\u3093\u3067\u3044\u307e\u3059\uff0e

\n
\n\n
\n

\u3057\u304b\u3057\u8a2d\u5b9a\u3055\u308c\u305f\u885b\u661f\u3057\u304b\u898b\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u305b\u3093\uff0e
\n\u4efb\u610f\u306e\u885b\u661f\u3092\u767b\u9332\u3057\u3066\u307f\u307e\u3057\u305f\uff0e

\n
\n

\n
\n

source\u3092\u773a\u3081\u308b\u3068\u885b\u661f\u306fsource\u5185\u306b\u30cf\u30fc\u30c9\u30b3\u30fc\u30c9\u3055\u308c\u3066\u3044\u3066\uff0c\u305d\u308c\u3092\u5143\u306bCelesTrak\u304b\u3089\u8ecc\u9053\u30c7\u30fc\u30bf\u3092\u53d6\u5f97\u3057\u3066\u3044\u308b\u3088\u3046\u3067\u3059\uff0e
\n\u885b\u661f\u306e\u30bf\u30a4\u30d7\u306f2\u7a2e\u985e\u306e\u65b9\u6cd5\u3067\u767b\u9332\u3057\u3066\u3042\u308a\uff0cISS\u306a\u3069\u306f\u4efb\u610f\u306eYYYY-NNNAAA\u5f62\u5f0f\u306e(\u4f8b\u3048\u30701994-029AAB)\u56fd\u969b\u8b58\u5225\u5b50\u3067\u500b\u5225\u306e\u885b\u661f\u3092\u8a2d\u5b9a\uff0c\u82e5\u3057\u304f\u306fCelesTrak\u3067GROUP\u3067\u691c\u7d22\u3067\u304d\u308bgroup\u540d\u3067\u305d\u306e\u30b0\u30eb\u30fc\u30d7\u306e\u885b\u661f\u7fa4(\u4f8b\u3048\u3070Weather\u3067\u69d8\u3005\u306a\u6c17\u8c61\u885b\u661f)\u304c\u767b\u9332\u3057\u3066\u3042\u308a\u307e\u3059\uff0e

\n
\n
\n
\n
\n

\u500b\u5225\u306e\u885b\u661f\u3092\u8ffd\u52a0

\n
\n
\n

\u6642\u5225\u306e\u885b\u661f\u3092\u767b\u9332\u3057\u3066\u307f\u307e\u3059\uff0e

\n
\n
\n

\u307e\u305a\u5bfe\u8c61\u306e\u885b\u661f\u306e\u56fd\u969b\u8b58\u5225\u5b50\u3092\u8abf\u3079\u307e\u3059\uff0e
\n\u5148\u305a\u306fCelesTrak\u306e\u4ee5\u4e0b\u306e\u30da\u30fc\u30b8\u3067\u885b\u661f\u3092\u691c\u7d22\u3057\u307e\u3059\uff0e

\n
\n\n
\n

\u691c\u7d22\u7d50\u679c\u304b\u3089\u300cInternational Designator\u300d\u3092\u30e1\u30e2\u3057\u307e\u3059\uff0e

\n
\n
\n

\u4f8b\u3048\u3070\u300c\u3042\u3089\u305b\u300d\u3092\u767b\u9332\u3057\u305f\u3044\u5834\u5408\uff0c\u300cARASE\u300d\u3067\u691c\u7d22\uff0c\u691c\u7d22\u7d50\u679c\u3092\u898b\u308b\u3068\u56fd\u969b\u8b58\u5225\u5b50\u306f\u300c2016-080A\u300d\u306a\u306e\u3067\u3053\u308c\u3092\u30e1\u30e2\u3057\u3066\u304a\u304d\u307e\u3059\uff0e

\n
\n
\n

\u6b21\u306btracker\u306esource\u3092\u7de8\u96c6\u3057\u307e\u3059\uff0e
\n\u885b\u661f\u306e\u60c5\u5831\u306f src/satellite_group.rs \u306b\u66f8\u304b\u308c\u3066\u3044\u308b\u306e\u3067\u3053\u308c\u3092\u7de8\u96c6\u3057\u307e\u3059\uff0e
\npub enum SatelliteGroup { \u306e\u9069\u5f53\u306a\u5834\u6240\u306b\u885b\u661f\u540d\u3092\u767b\u9332\u3057\u307e\u3059\uff0e
\nfn cospar_id(&self) → Option<&str> { \u306e\u4e2d\u306b\u56fd\u969b\u8b58\u5225\u5b50\u3092\u767b\u9332\u3057\u307e\u3059\uff0e

\n
\n
\n

\u4eca\u56de\u306f\u4ee5\u4e0b\u306e\u3088\u3046\u306b\u3057\u307e\u3057\u305f\uff0e

\n
\n
\n
\n
$ git diff\ndiff --git a/src/satellite_group.rs b/src/satellite_group.rs\nindex 88bbce8..b895b54 100644\n--- a/src/satellite_group.rs\n+++ b/src/satellite_group.rs\n@@ -51,6 +51,7 @@ pub enum SatelliteGroup {\n     #[strum(to_string = \"Radar calibration\")]\n     RadarCalibration,\n     CubeSats,\n+    Arase,\n }\n\n impl SatelliteGroup {\n@@ -124,6 +125,7 @@ impl SatelliteGroup {\n             Self::Iss => Some(\"1998-067A\"),\n             Self::Css => Some(\"2021-035A\"),\n             Self::Dfh1 => Some(\"1970-034A\"),\n+            Self::Arase => Some(\"2016-080A\"),\n             _ => None,\n         }\n     }
\n
\n
\n
\n

build\u3057\u3066\u5b9f\u884c\u3057\u3066\u52d5\u4f5c\u78ba\u8a8d\u3092\u3057\u307e\u3059\uff0e

\n
\n
\n
\n
$ cargo build\n$ target/debug/tracker
\n
\n
\n
\n

\u3042\u3089\u305b\u306e\u6955\u5186\u8ecc\u9053\u304c\u8868\u793a\u3067\u304d\u308b\u3088\u3046\u306b\u306a\u308a\u307e\u3057\u305f :)

\n
\n
\n

\"tracker

\n
\n
\n
\n
\n

\u885b\u661f\u30b0\u30eb\u30fc\u30d7\u3092\u767b\u9332

\n
\n
\n

\u4e00\u3064\u4e00\u3064\u885b\u661f\u3092\u767b\u9332\u3057\u3066\u304f\u306e\u306f\u9762\u5012\u3067\u3059\uff0eCelesTrak\u306e\u4ee5\u4e0b\u306e\u30da\u30fc\u30b8\u304b\u3089\u597d\u307f\u306e\u30b0\u30eb\u30fc\u30d7\u3092\u63a2\u3057\u305f\u308a\uff0c

\n
\n\n
\n

\u4ee5\u4e0b\u306e\u30da\u30fc\u30b8\u304b\u3089\u8a72\u5f53\u306e\u885b\u661f\u306eCatalog Number\u304b\u3089\u691c\u7d22\u3057\u307e\u3059\uff0egroup\u306b\u5b58\u5728\u3059\u308b\u5834\u5408\u8868\u793a\u3055\u308c\u307e\u3059\uff0e

\n
\n\n
\n

group\u540d\u304c\u308f\u304b\u3063\u305f\u3089source\u3092\u3044\u3058\u308a\u307e\u3059\uff0e
\n\u4eca\u56de\u306f\u6700\u8fd1\u7b2c1\u5f3e\u306e\u885b\u661f\u7fa4\u306e\u6253\u3061\u4e0a\u3052\u306e\u3042\u3063\u305fAmazon\u306e\u4f4e\u8ecc\u9053\u901a\u4fe1\u885b\u661f\u30b5\u30fc\u30d3\u30b9\u306eProject Kuiper\u3060\u3068\u601d\u308f\u308c\u308bkuiper\u3067\u8a66\u3057\u3066\u307f\u307e\u3059\uff0e

\n
\n
\n

\u308f\u304b\u308a\u3084\u3059\u3044\u3088\u3046\u306b\u4e00\u65e6\u5143\u306b\u623b\u3057\u307e\u3059\uff0e

\n
\n
\n
\n
$ git reset --hard
\n
\n
\n
\n

\u4eca\u590f\u3082 src/satellite_group.rs \u3092\u7de8\u96c6\u3057\u307e\u3059\uff0e

\n
\n
\n
\n
$ git diff src/satellite_group.rs\ndiff --git a/src/satellite_group.rs b/src/satellite_group.rs\nindex 88bbce8..33c5d0b 100644\n--- a/src/satellite_group.rs\n+++ b/src/satellite_group.rs\n@@ -37,6 +37,9 @@ pub enum SatelliteGroup {\n     Galileo,\n     Beidou,\n\n+    // Communications Satellites\n+    Kuiper,\n+\n     // Scientific satellites\n     #[strum(to_string = \"Space & Earth Science\")]\n     SpaceEarthScience,\n@@ -141,6 +144,7 @@ impl SatelliteGroup {\n             Self::Glonass => Some(\"glo-ops\"),\n             Self::Galileo => Some(\"galileo\"),\n             Self::Beidou => Some(\"beidou\"),\n+            Self::Kuiper => Some(\"kuiper\"),\n             Self::SpaceEarthScience => Some(\"science\"),\n             Self::Geodetic => Some(\"geodetic\"),\n             Self::Engineering => Some(\"engineering\"),
\n
\n
\n
\n

build\u3057\u3066\u5b9f\u884c\u3057\u3066\u52d5\u4f5c\u78ba\u8a8d\u3092\u3057\u307e\u3059\uff0e

\n
\n
\n
\n
$ cargo build\n$ target/debug/tracker
\n
\n
\n
\n

\u307e\u30601\u56de\u306e\u6253\u3061\u4e0a\u3052\u3057\u304b\u7121\u3044\u306e\u30671\u3064\u306e\u8ecc\u9053\u3057\u304b\u306a\u3055\u305d\u3046\u3067\u3059\uff0e

\n
\n
\n

\"tracker

\n
\n
\n\n\n\n\n\n
\n
Note
\n
\n
\n

Project Kuiper\u306e\u6b21\u306e\u6253\u3061\u4e0a\u3052\u4e88\u5b9a\u65e5\u306f6/13\uff0e\u305d\u306e\u5f8c\u4eca\u5e74\u3060\u3051\u306748\u56de\u4e88\u5b9a\u304c\u3055\u308c\u3066\u3044\u305d\u3046\u3067\u8ffd\u3044\u4e0a\u3052\u304c\u3059\u3054\u3044\u3067\u3059\u306d\uff0eFCC\u3068\u306e\u517c\u306d\u5408\u3044\u306a\u3093\u3067\u3057\u3087\u3046\u304c\uff0e
\nhttps://nextspaceflight.com/launches/?search=kuiper

\n
\n
\n
\n
\n\n\n\n\n\n
\n
Note
\n
\n
\n

\u3061\u306a\u307f\u306bStarlink\u3082\u8a66\u3057\u305f\u3068\u3053\u308d7500\u6a5f\u4ee5\u4e0a\u3042\u308b\u306e\u3067\u6975\u4ee5\u5916\u306e\u5730\u56f3\u304c\u57cb\u3082\u308c\u3066\u3057\u307e\u3044\u307e\u3057\u305f\u2026\u2026\uff0e

\n
\n

\n\n
View on Mastodon
\n

\n

\n

\n
\n
\n

\u5f8c\u306fCelesTrak\u306egroup\u306b\u7121\u3044\u81ea\u5206\u3067\u9078\u3093\u3060\u885b\u661f\u7fa4(\u307f\u3061\u3073\u304d\u7fa4\u3068\u304b)\u3082\u767b\u9332\u3067\u304d\u308b\u3068\u3044\u3044\u306a\u3068\u601d\u3046\u306e\u3067\u3059\u304c\u5c11\u3057\u30ed\u30b8\u30c3\u30af\u3092\u3044\u3058\u3089\u306a\u3044\u3068\u3044\u3051\u306a\u305d\u3046\u3067\u3059\uff0e

\n
\n
\n
\n", "content_text": "\u30bf\u30fc\u30df\u30ca\u30eb\u4e0a\u3067\u52d5\u4f5c\u3059\u308b\u885b\u661f\u8ffd\u8de1\uff0c\u8ecc\u9053\u4e88\u6e2c\u30bd\u30d5\u30c8\u30a6\u30a7\u30a2\u306etracker\u304c\u697d\u3057\u304f\u3066\u8272\u3005\u306a\u885b\u661f\u306e\u8ecc\u9053\u3092\u898b\u305f\u308a\u3057\u3066\u697d\u3057\u3093\u3067\u3044\u307e\u3059\uff0e\n\n\n\n\nterminal\u885b\u661f\u8ffd\u8de1\u30a2\u30d7\u30ea\u306etracker \u2013 matoken’s blog\n\n\n\n\n\u3057\u304b\u3057\u8a2d\u5b9a\u3055\u308c\u305f\u885b\u661f\u3057\u304b\u898b\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u305b\u3093\uff0e\n\u4efb\u610f\u306e\u885b\u661f\u3092\u767b\u9332\u3057\u3066\u307f\u307e\u3057\u305f\uff0e\n\n\n\nsource\u3092\u773a\u3081\u308b\u3068\u885b\u661f\u306fsource\u5185\u306b\u30cf\u30fc\u30c9\u30b3\u30fc\u30c9\u3055\u308c\u3066\u3044\u3066\uff0c\u305d\u308c\u3092\u5143\u306bCelesTrak\u304b\u3089\u8ecc\u9053\u30c7\u30fc\u30bf\u3092\u53d6\u5f97\u3057\u3066\u3044\u308b\u3088\u3046\u3067\u3059\uff0e\n\u885b\u661f\u306e\u30bf\u30a4\u30d7\u306f2\u7a2e\u985e\u306e\u65b9\u6cd5\u3067\u767b\u9332\u3057\u3066\u3042\u308a\uff0cISS\u306a\u3069\u306f\u4efb\u610f\u306eYYYY-NNNAAA\u5f62\u5f0f\u306e(\u4f8b\u3048\u30701994-029AAB)\u56fd\u969b\u8b58\u5225\u5b50\u3067\u500b\u5225\u306e\u885b\u661f\u3092\u8a2d\u5b9a\uff0c\u82e5\u3057\u304f\u306fCelesTrak\u3067GROUP\u3067\u691c\u7d22\u3067\u304d\u308bgroup\u540d\u3067\u305d\u306e\u30b0\u30eb\u30fc\u30d7\u306e\u885b\u661f\u7fa4(\u4f8b\u3048\u3070Weather\u3067\u69d8\u3005\u306a\u6c17\u8c61\u885b\u661f)\u304c\u767b\u9332\u3057\u3066\u3042\u308a\u307e\u3059\uff0e\n\n\n\n\n\u500b\u5225\u306e\u885b\u661f\u3092\u8ffd\u52a0\n\n\n\u6642\u5225\u306e\u885b\u661f\u3092\u767b\u9332\u3057\u3066\u307f\u307e\u3059\uff0e\n\n\n\u307e\u305a\u5bfe\u8c61\u306e\u885b\u661f\u306e\u56fd\u969b\u8b58\u5225\u5b50\u3092\u8abf\u3079\u307e\u3059\uff0e\n\u5148\u305a\u306fCelesTrak\u306e\u4ee5\u4e0b\u306e\u30da\u30fc\u30b8\u3067\u885b\u661f\u3092\u691c\u7d22\u3057\u307e\u3059\uff0e\n\n\n\n\nCelesTrak: Search Satellite Catalog\n\n\n\n\n\u691c\u7d22\u7d50\u679c\u304b\u3089\u300cInternational Designator\u300d\u3092\u30e1\u30e2\u3057\u307e\u3059\uff0e\n\n\n\u4f8b\u3048\u3070\u300c\u3042\u3089\u305b\u300d\u3092\u767b\u9332\u3057\u305f\u3044\u5834\u5408\uff0c\u300cARASE\u300d\u3067\u691c\u7d22\uff0c\u691c\u7d22\u7d50\u679c\u3092\u898b\u308b\u3068\u56fd\u969b\u8b58\u5225\u5b50\u306f\u300c2016-080A\u300d\u306a\u306e\u3067\u3053\u308c\u3092\u30e1\u30e2\u3057\u3066\u304a\u304d\u307e\u3059\uff0e\n\n\n\u6b21\u306btracker\u306esource\u3092\u7de8\u96c6\u3057\u307e\u3059\uff0e\n\u885b\u661f\u306e\u60c5\u5831\u306f src/satellite_group.rs \u306b\u66f8\u304b\u308c\u3066\u3044\u308b\u306e\u3067\u3053\u308c\u3092\u7de8\u96c6\u3057\u307e\u3059\uff0e\npub enum SatelliteGroup { \u306e\u9069\u5f53\u306a\u5834\u6240\u306b\u885b\u661f\u540d\u3092\u767b\u9332\u3057\u307e\u3059\uff0e\nfn cospar_id(&self) → Option<&str> { \u306e\u4e2d\u306b\u56fd\u969b\u8b58\u5225\u5b50\u3092\u767b\u9332\u3057\u307e\u3059\uff0e\n\n\n\u4eca\u56de\u306f\u4ee5\u4e0b\u306e\u3088\u3046\u306b\u3057\u307e\u3057\u305f\uff0e\n\n\n\n$ git diff\ndiff --git a/src/satellite_group.rs b/src/satellite_group.rs\nindex 88bbce8..b895b54 100644\n--- a/src/satellite_group.rs\n+++ b/src/satellite_group.rs\n@@ -51,6 +51,7 @@ pub enum SatelliteGroup {\n #[strum(to_string = \"Radar calibration\")]\n RadarCalibration,\n CubeSats,\n+ Arase,\n }\n\n impl SatelliteGroup {\n@@ -124,6 +125,7 @@ impl SatelliteGroup {\n Self::Iss => Some(\"1998-067A\"),\n Self::Css => Some(\"2021-035A\"),\n Self::Dfh1 => Some(\"1970-034A\"),\n+ Self::Arase => Some(\"2016-080A\"),\n _ => None,\n }\n }\n\n\n\nbuild\u3057\u3066\u5b9f\u884c\u3057\u3066\u52d5\u4f5c\u78ba\u8a8d\u3092\u3057\u307e\u3059\uff0e\n\n\n\n$ cargo build\n$ target/debug/tracker\n\n\n\n\u3042\u3089\u305b\u306e\u6955\u5186\u8ecc\u9053\u304c\u8868\u793a\u3067\u304d\u308b\u3088\u3046\u306b\u306a\u308a\u307e\u3057\u305f :)\n\n\n\n\n\n\n\n\u885b\u661f\u30b0\u30eb\u30fc\u30d7\u3092\u767b\u9332\n\n\n\u4e00\u3064\u4e00\u3064\u885b\u661f\u3092\u767b\u9332\u3057\u3066\u304f\u306e\u306f\u9762\u5012\u3067\u3059\uff0eCelesTrak\u306e\u4ee5\u4e0b\u306e\u30da\u30fc\u30b8\u304b\u3089\u597d\u307f\u306e\u30b0\u30eb\u30fc\u30d7\u3092\u63a2\u3057\u305f\u308a\uff0c\n\n\n\n\nCelesTrak: Current GP Element Sets\n\n\n\n\n\u4ee5\u4e0b\u306e\u30da\u30fc\u30b8\u304b\u3089\u8a72\u5f53\u306e\u885b\u661f\u306eCatalog Number\u304b\u3089\u691c\u7d22\u3057\u307e\u3059\uff0egroup\u306b\u5b58\u5728\u3059\u308b\u5834\u5408\u8868\u793a\u3055\u308c\u307e\u3059\uff0e\n\n\n\n\nCelesTrak: Master GP Index\n\n\n\n\ngroup\u540d\u304c\u308f\u304b\u3063\u305f\u3089source\u3092\u3044\u3058\u308a\u307e\u3059\uff0e\n\u4eca\u56de\u306f\u6700\u8fd1\u7b2c1\u5f3e\u306e\u885b\u661f\u7fa4\u306e\u6253\u3061\u4e0a\u3052\u306e\u3042\u3063\u305fAmazon\u306e\u4f4e\u8ecc\u9053\u901a\u4fe1\u885b\u661f\u30b5\u30fc\u30d3\u30b9\u306eProject Kuiper\u3060\u3068\u601d\u308f\u308c\u308bkuiper\u3067\u8a66\u3057\u3066\u307f\u307e\u3059\uff0e\n\n\n\u308f\u304b\u308a\u3084\u3059\u3044\u3088\u3046\u306b\u4e00\u65e6\u5143\u306b\u623b\u3057\u307e\u3059\uff0e\n\n\n\n$ git reset --hard\n\n\n\n\u4eca\u590f\u3082 src/satellite_group.rs \u3092\u7de8\u96c6\u3057\u307e\u3059\uff0e\n\n\n\n$ git diff src/satellite_group.rs\ndiff --git a/src/satellite_group.rs b/src/satellite_group.rs\nindex 88bbce8..33c5d0b 100644\n--- a/src/satellite_group.rs\n+++ b/src/satellite_group.rs\n@@ -37,6 +37,9 @@ pub enum SatelliteGroup {\n Galileo,\n Beidou,\n\n+ // Communications Satellites\n+ Kuiper,\n+\n // Scientific satellites\n #[strum(to_string = \"Space & Earth Science\")]\n SpaceEarthScience,\n@@ -141,6 +144,7 @@ impl SatelliteGroup {\n Self::Glonass => Some(\"glo-ops\"),\n Self::Galileo => Some(\"galileo\"),\n Self::Beidou => Some(\"beidou\"),\n+ Self::Kuiper => Some(\"kuiper\"),\n Self::SpaceEarthScience => Some(\"science\"),\n Self::Geodetic => Some(\"geodetic\"),\n Self::Engineering => Some(\"engineering\"),\n\n\n\nbuild\u3057\u3066\u5b9f\u884c\u3057\u3066\u52d5\u4f5c\u78ba\u8a8d\u3092\u3057\u307e\u3059\uff0e\n\n\n\n$ cargo build\n$ target/debug/tracker\n\n\n\n\u307e\u30601\u56de\u306e\u6253\u3061\u4e0a\u3052\u3057\u304b\u7121\u3044\u306e\u30671\u3064\u306e\u8ecc\u9053\u3057\u304b\u306a\u3055\u305d\u3046\u3067\u3059\uff0e\n\n\n\n\n\n\n\n\nNote\n\n\n\nProject Kuiper\u306e\u6b21\u306e\u6253\u3061\u4e0a\u3052\u4e88\u5b9a\u65e5\u306f6/13\uff0e\u305d\u306e\u5f8c\u4eca\u5e74\u3060\u3051\u306748\u56de\u4e88\u5b9a\u304c\u3055\u308c\u3066\u3044\u305d\u3046\u3067\u8ffd\u3044\u4e0a\u3052\u304c\u3059\u3054\u3044\u3067\u3059\u306d\uff0eFCC\u3068\u306e\u517c\u306d\u5408\u3044\u306a\u3093\u3067\u3057\u3087\u3046\u304c\uff0e\nhttps://nextspaceflight.com/launches/?search=kuiper\n\n\n\n\n\n\n\n\n\nNote\n\n\n\n\u3061\u306a\u307f\u306bStarlink\u3082\u8a66\u3057\u305f\u3068\u3053\u308d7500\u6a5f\u4ee5\u4e0a\u3042\u308b\u306e\u3067\u6975\u4ee5\u5916\u306e\u5730\u56f3\u304c\u57cb\u3082\u308c\u3066\u3057\u307e\u3044\u307e\u3057\u305f\u2026\u2026\uff0e\n\n \nPost by @matoken\nView on Mastodon\n \n \n\n\n\n\n\n\u5f8c\u306fCelesTrak\u306egroup\u306b\u7121\u3044\u81ea\u5206\u3067\u9078\u3093\u3060\u885b\u661f\u7fa4(\u307f\u3061\u3073\u304d\u7fa4\u3068\u304b)\u3082\u767b\u9332\u3067\u304d\u308b\u3068\u3044\u3044\u306a\u3068\u601d\u3046\u306e\u3067\u3059\u304c\u5c11\u3057\u30ed\u30b8\u30c3\u30af\u3092\u3044\u3058\u3089\u306a\u3044\u3068\u3044\u3051\u306a\u305d\u3046\u3067\u3059\uff0e", "date_published": "2025-06-07T08:10:48+09:00", "date_modified": "2025-06-07T08:11:37+09:00", "authors": [ { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" } ], "author": { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" }, "tags": [ "satellite", "terminal", "tracker", "Debian", "Linux", "sid" ] }, { "id": "https://matoken.org/blog/?p=4576", "url": "https://matoken.org/blog/2025/05/31/terminal-based-real-time-satellite-tracking/", "title": "terminal\u885b\u661f\u8ffd\u8de1\u30a2\u30d7\u30ea\u306etracker", "content_html": "
\n

\u30bf\u30fc\u30df\u30ca\u30eb\u4e0a\u3067\u52d5\u4f5c\u3059\u308b\u885b\u661f\u8ffd\u8de1\uff0c\u8ecc\u9053\u4e88\u6e2c\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u898b\u3064\u3051\u305f\u306e\u3067\u8a66\u3057\u3066\u307f\u307e\u3057\u305f\uff0e

\n
\n
\n\n
\n

\n
\n

\u5c0e\u5165\u306fcargo\u30b3\u30de\u30f3\u30c9\u3067\u884c\u3044\u307e\u3057\u305f\uff0e

\n
\n
\n
\n
$ cargo install --git https://github.com/ShenMian/tracker\n$ which tracker\n/home/matoken/.cargo/bin/tracker
\n
\n
\n
\n\n\n\n\n\n
\n
Note
\n
\n
\n

Raspberry Pi OS bookworm armhf\u3067\u306fcargo\u306e\u30d0\u30fc\u30b8\u30e7\u30f3\u306e\u554f\u984c\u3067\u3046\u307e\u304f\u884c\u304d\u307e\u305b\u3093\u3067\u3057\u305f\uff0e

\n
\n
\n
\n
Caused by:\n  failed to parse the `edition` key\n\nCaused by:\n  this version of Cargo is older than the `2024` edition, and only supports `2015`, `2018`, and `2021` editions.
\n
\n
\n
\n
\n
\n

\u82e5\u3057\u304f\u306f\u3044\u304f\u3064\u304b\u306e\u74b0\u5883\u5411\u3051\u306b\u306freleases\u30da\u30fc\u30b8\u306b\u30d0\u30a4\u30ca\u30ea\u304c\u304a\u3044\u3066\u3042\u308b\u3088\u3046\u3067\u3059\uff0e(\u672a\u78ba\u8a8d)

\n
\n
\n
\n
tracker-linux-x86_64.tar.gz\ntracker-macos-aarch64.tar.gz\ntracker-macos-x86_64.tar.gz\ntracker-windows-x86_64.zip
\n
\n
\n
\n

\u8d77\u52d5\u3057\u307e\u3059\uff0e\u3082\u3057build\u306f\u6210\u529f\u3057\u305f\u306e\u306b\u30b3\u30de\u30f3\u30c9\u304c\u898b\u5f53\u305f\u3089\u306a\u3044\u5834\u5408\u306fPATH\u304c\u901a\u3063\u3066\u3044\u306a\u3044\u3068\u601d\u3046\u306e\u3067PATH\u3092\u901a\u3059\u304b ~/.cargo/bin/tracker \u3067\u8d77\u52d5\u3059\u308b\u304b\u3082\u3057\u308c\u307e\u305b\u3093\uff0e

\n
\n
\n
\n
$ tracker
\n
\n
\n
\n

\u64cd\u4f5c\u306f\u30de\u30a6\u30b9\u306e\u307f\u306e\u3088\u3046\u3067\u3059\uff0e
\n\u307e\u305a\u53f3\u4e0b\u306e\u300cSatellite groups\u300d\u304b\u3089\u597d\u307f\u306e\u30b0\u30eb\u30fc\u30d7\u3092\u30af\u30ea\u30c3\u30af\u3067\u9078\u3073\u307e\u3059\uff0e(\u8907\u6570\u9078\u629e\u53ef)
\n\u3059\u308b\u3068\u5c11\u3057\u7d4c\u3063\u3066\u304b\u3089\u30de\u30c3\u30d7\u306b\u885b\u661f(\u7fa4)\u304c\u30d7\u30ed\u30c3\u30c8\u3055\u308c\u308b\u306e\u3067\u597d\u307f\u306e\u885b\u661f\u3092\u30af\u30ea\u30c3\u30af\u3059\u308b\u3068\u4e88\u6e2c\u8ecc\u9053\u304c(\u304a\u305d\u3089\u304f\u3053\u306e\u5f8c\u306e\u5730\u74031\u5468\u5206)\u30de\u30c3\u30d7\u4e0a\u306b\uff0c\u305d\u308c\u3068\u53f3\u4e0a\u306e\u300cObject information\u300d\u304c\u8868\u793a\u3055\u308c\u307e\u3059\uff0e
\n\u4ee5\u4e0b\u306e\u753b\u50cf\u3067\u306fISS\u306e\u4e88\u60f3\u8ecc\u9053\u304c\u8868\u793a\u3055\u308c\u3066\u3044\u307e\u3059\uff0e

\n
\n
\n

\"tracker\"

\n
\n
\n

\u4ee5\u4e0b\u306fWrather\u3068Earth resources\u30b0\u30eb\u30fc\u30d7\u3092\u8868\u793a\u3057\u3066\u65e5\u672c\u306eALOS-2(\u3060\u3044\u30612\u53f7)\u306e\u8ecc\u9053\u3092\u8868\u793a\u3057\u3066\u3044\u307e\u3059\uff0e

\n
\n
\n

\"tracker

\n
\n
\n

\u9759\u6b62\u885b\u661f\u306e\u3072\u307e\u308f\u308a\u306a\u3069\u3092\u9078\u3076\u3068\u4e88\u60f3\u8ecc\u9053\u306f\u898b\u3048\u307e\u305b\u3093\uff0e

\n
\n
\n

\u8272\u3005\u3068\u885b\u661f\u3092\u773a\u3081\u3064\u3064\u305d\u306e\u885b\u661f\u306b\u3064\u3044\u3066\u8abf\u3079\u305f\u308a\u3059\u308b\u3068\u697d\u3057\u3044\u3067\u3059\uff0e
\n\u3053\u306e\u885b\u661f\u306f\u3082\u3046\u904b\u7528\u7d42\u308f\u3063\u3066\u5893\u5834\u8ecc\u9053\u3067\u3053\u3093\u306a\u52d5\u304d\u306a\u306e\u304b\u3068\u304b\uff0e

\n
\n
\n

\u82e5\u3057\u304f\u306f\u5c11\u3057\u5b9f\u7528\u7684\u306b\u3060\u3068\u4e0a\u306e\u753b\u50cf\u3060\u3068\u53f3\u4e0a\u306ePeriod\u304c90\u5206\u307b\u3069\u306a\u306e\u3067\u3057\u3070\u3089\u304f\u3059\u308b\u3068ISS\u304c\u65e5\u672c\u4e0a\u7a7a\u3092\u901a\u904e\u3059\u308b\u306e\u3067\u6674\u308c\u3066\u3044\u308c\u3070\u898b\u3048\u305d\u3046\u3068\u304b\u304c\u308f\u304b\u308a\u307e\u3059\uff0e

\n
\n
\n

\u30ea\u30a2\u30eb\u30bf\u30a4\u30e0\u3067\u885b\u661f\u306f\u9077\u79fb\u3057\u3066\u3044\u304f\u306e\u3067\u773a\u3081\u3066\u3044\u308b\u3060\u3051\u3067\u3082\u697d\u3057\u3044\u3067\u3059\uff0e

\n
\n
\n

\u30bf\u30fc\u30df\u30ca\u30eb\u3067\u52d5\u4f5c\u3059\u308b\u5929\u6587\u30bd\u30d5\u30c8\u30a6\u30a7\u30a2\u3060\u3068\u661f\u56f3\u306eastroterm\u3082\u304a\u3059\u3059\u3081\u3067\u3059\uff0e

\n
\n
\n\n
\n", "content_text": "\u30bf\u30fc\u30df\u30ca\u30eb\u4e0a\u3067\u52d5\u4f5c\u3059\u308b\u885b\u661f\u8ffd\u8de1\uff0c\u8ecc\u9053\u4e88\u6e2c\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u898b\u3064\u3051\u305f\u306e\u3067\u8a66\u3057\u3066\u307f\u307e\u3057\u305f\uff0e\n\n\n\n\nShenMian/tracker at terminaltrove\n\n\n\ntracker – A terminal-based real-time satellite tracking and orbit prediction application.\n\n\n\n\n\n\n\n\n\u5c0e\u5165\u306fcargo\u30b3\u30de\u30f3\u30c9\u3067\u884c\u3044\u307e\u3057\u305f\uff0e\n\n\n\n$ cargo install --git https://github.com/ShenMian/tracker\n$ which tracker\n/home/matoken/.cargo/bin/tracker\n\n\n\n\n\n\nNote\n\n\n\nRaspberry Pi OS bookworm armhf\u3067\u306fcargo\u306e\u30d0\u30fc\u30b8\u30e7\u30f3\u306e\u554f\u984c\u3067\u3046\u307e\u304f\u884c\u304d\u307e\u305b\u3093\u3067\u3057\u305f\uff0e\n\n\n\nCaused by:\n failed to parse the `edition` key\n\nCaused by:\n this version of Cargo is older than the `2024` edition, and only supports `2015`, `2018`, and `2021` editions.\n\n\n\n\n\n\n\n\u82e5\u3057\u304f\u306f\u3044\u304f\u3064\u304b\u306e\u74b0\u5883\u5411\u3051\u306b\u306freleases\u30da\u30fc\u30b8\u306b\u30d0\u30a4\u30ca\u30ea\u304c\u304a\u3044\u3066\u3042\u308b\u3088\u3046\u3067\u3059\uff0e(\u672a\u78ba\u8a8d)\n\n\n\ntracker-linux-x86_64.tar.gz\ntracker-macos-aarch64.tar.gz\ntracker-macos-x86_64.tar.gz\ntracker-windows-x86_64.zip\n\n\n\n\u8d77\u52d5\u3057\u307e\u3059\uff0e\u3082\u3057build\u306f\u6210\u529f\u3057\u305f\u306e\u306b\u30b3\u30de\u30f3\u30c9\u304c\u898b\u5f53\u305f\u3089\u306a\u3044\u5834\u5408\u306fPATH\u304c\u901a\u3063\u3066\u3044\u306a\u3044\u3068\u601d\u3046\u306e\u3067PATH\u3092\u901a\u3059\u304b ~/.cargo/bin/tracker \u3067\u8d77\u52d5\u3059\u308b\u304b\u3082\u3057\u308c\u307e\u305b\u3093\uff0e\n\n\n\n$ tracker\n\n\n\n\u64cd\u4f5c\u306f\u30de\u30a6\u30b9\u306e\u307f\u306e\u3088\u3046\u3067\u3059\uff0e\n\u307e\u305a\u53f3\u4e0b\u306e\u300cSatellite groups\u300d\u304b\u3089\u597d\u307f\u306e\u30b0\u30eb\u30fc\u30d7\u3092\u30af\u30ea\u30c3\u30af\u3067\u9078\u3073\u307e\u3059\uff0e(\u8907\u6570\u9078\u629e\u53ef)\n\u3059\u308b\u3068\u5c11\u3057\u7d4c\u3063\u3066\u304b\u3089\u30de\u30c3\u30d7\u306b\u885b\u661f(\u7fa4)\u304c\u30d7\u30ed\u30c3\u30c8\u3055\u308c\u308b\u306e\u3067\u597d\u307f\u306e\u885b\u661f\u3092\u30af\u30ea\u30c3\u30af\u3059\u308b\u3068\u4e88\u6e2c\u8ecc\u9053\u304c(\u304a\u305d\u3089\u304f\u3053\u306e\u5f8c\u306e\u5730\u74031\u5468\u5206)\u30de\u30c3\u30d7\u4e0a\u306b\uff0c\u305d\u308c\u3068\u53f3\u4e0a\u306e\u300cObject information\u300d\u304c\u8868\u793a\u3055\u308c\u307e\u3059\uff0e\n\u4ee5\u4e0b\u306e\u753b\u50cf\u3067\u306fISS\u306e\u4e88\u60f3\u8ecc\u9053\u304c\u8868\u793a\u3055\u308c\u3066\u3044\u307e\u3059\uff0e\n\n\n\n\n\n\u4ee5\u4e0b\u306fWrather\u3068Earth resources\u30b0\u30eb\u30fc\u30d7\u3092\u8868\u793a\u3057\u3066\u65e5\u672c\u306eALOS-2(\u3060\u3044\u30612\u53f7)\u306e\u8ecc\u9053\u3092\u8868\u793a\u3057\u3066\u3044\u307e\u3059\uff0e\n\n\n\n\n\n\u9759\u6b62\u885b\u661f\u306e\u3072\u307e\u308f\u308a\u306a\u3069\u3092\u9078\u3076\u3068\u4e88\u60f3\u8ecc\u9053\u306f\u898b\u3048\u307e\u305b\u3093\uff0e\n\n\n\u8272\u3005\u3068\u885b\u661f\u3092\u773a\u3081\u3064\u3064\u305d\u306e\u885b\u661f\u306b\u3064\u3044\u3066\u8abf\u3079\u305f\u308a\u3059\u308b\u3068\u697d\u3057\u3044\u3067\u3059\uff0e\n\u3053\u306e\u885b\u661f\u306f\u3082\u3046\u904b\u7528\u7d42\u308f\u3063\u3066\u5893\u5834\u8ecc\u9053\u3067\u3053\u3093\u306a\u52d5\u304d\u306a\u306e\u304b\u3068\u304b\uff0e\n\n\n\u82e5\u3057\u304f\u306f\u5c11\u3057\u5b9f\u7528\u7684\u306b\u3060\u3068\u4e0a\u306e\u753b\u50cf\u3060\u3068\u53f3\u4e0a\u306ePeriod\u304c90\u5206\u307b\u3069\u306a\u306e\u3067\u3057\u3070\u3089\u304f\u3059\u308b\u3068ISS\u304c\u65e5\u672c\u4e0a\u7a7a\u3092\u901a\u904e\u3059\u308b\u306e\u3067\u6674\u308c\u3066\u3044\u308c\u3070\u898b\u3048\u305d\u3046\u3068\u304b\u304c\u308f\u304b\u308a\u307e\u3059\uff0e\n\n\n\u30ea\u30a2\u30eb\u30bf\u30a4\u30e0\u3067\u885b\u661f\u306f\u9077\u79fb\u3057\u3066\u3044\u304f\u306e\u3067\u773a\u3081\u3066\u3044\u308b\u3060\u3051\u3067\u3082\u697d\u3057\u3044\u3067\u3059\uff0e\n\n\n\u30bf\u30fc\u30df\u30ca\u30eb\u3067\u52d5\u4f5c\u3059\u308b\u5929\u6587\u30bd\u30d5\u30c8\u30a6\u30a7\u30a2\u3060\u3068\u661f\u56f3\u306eastroterm\u3082\u304a\u3059\u3059\u3081\u3067\u3059\uff0e\n\n\n\n\nastroterm\u3067\u7aef\u672b\u4e0a\u3067\u661f\u56f3\u3092\u697d\u3057\u3080 \u2013 matoken’s blog", "date_published": "2025-05-31T07:11:21+09:00", "date_modified": "2025-05-31T07:11:22+09:00", "authors": [ { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" } ], "author": { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" }, "tags": [ "satellite", "terminal", "tracker", "Debian", "Linux", "sid" ] }, { "id": "https://matoken.org/blog/?p=4415", "url": "https://matoken.org/blog/2025/01/25/astroterm/", "title": "astroterm\u3067\u7aef\u672b\u4e0a\u3067\u661f\u56f3\u3092\u697d\u3057\u3080", "content_html": "
\n
\n

\n
\n

\u7aef\u672b\u3067\u52d5\u4f5c\u3059\u308b\u661f\u56f3\u76e4\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u898b\u3064\u3051\u307e\u3057\u305f\uff0e\u7aef\u672b\u3067\u3069\u306e\u304f\u3089\u3044\u4f7f\u3044\u7269\u306b\u306a\u308b\u3060\u308d\u3046\u304b\u3068\u601d\u3044\u3064\u3064\u8a66\u3057\u3066\u307f\u307e\u3057\u305f\uff0e

\n
\n\n

\n

\n
\n
\n

Releases\u306e\u30d0\u30a4\u30ca\u30ea\u3092\u5c0e\u5165

\n
\n
\n

GitHub\u306eRelseases\u304b\u3089Linux x86_64\u7248\u3092\u5229\u7528\u3057\u307e\u3057\u305f\uff0e

\n
\n
\n
\n
$ wget2 -c -v \\ (1)\nhttps://github.com/da-luce/astroterm/releases/download/v1.0.5/astroterm-linux-x86_64 \\\nhttps://github.com/da-luce/astroterm/releases/download/v1.0.5/astroterm-linux-x86_64.sha256\n$ sha256sum -c ./astroterm-linux-x86_64.sha256 (2)\nsha256sum: build/astroterm: No such file or directory\nbuild/astroterm: FAILED open or read\nsha256sum: WARNING: 1 listed file could not be read\n$ cat ./astroterm-linux-x86_64.sha256 (3)\nae1ce946d9da27f97e26de9ef6df8d068feb971a5aa7a76d4972b2673cddb495  build/astroterm\n$ cat ./astroterm-linux-x86_64.sha256 | sed -e 's/build\\/astroterm/astroterm-linux-x86_64/' | sha256sum -c (4)\nastroterm-linux-x86_64: OK\n$ chmod u+x ./astroterm-linux-x86_64 (5)\n$ ./astroterm-linux-x86_64 -v (6)\nastroterm 1.0.5
\n
\n
\n
\n
    \n
  1. \n

    \u5b9f\u884c\u30d5\u30a1\u30a4\u30eb\u3068\uff0c\u5bfe\u5fdc\u3057\u305fhash\u30d5\u30a1\u30a4\u30eb\u306e\u5165\u624b

    \n
  2. \n
  3. \n

    \u30cf\u30c3\u30b7\u30e5\u306e\u78ba\u8a8d\u306b\u5931\u6557

    \n
  4. \n
  5. \n

    \u30cf\u30c3\u30b7\u30e5\u30d5\u30a1\u30a4\u30eb\u306e\u4e2d\u3092\u898b\u308b\u3068\u30d5\u30a1\u30a4\u30eb\u540d\u304c\u9593\u9055\u3063\u3066\u3044\u308b

    \n
  6. \n
  7. \n

    \u30d5\u30a1\u30a4\u30eb\u540d\u90e8\u5206\u3092\u5dee\u3057\u66ff\u3048\u3066\u30cf\u30c3\u30b7\u30e5\u306e\u78ba\u8a8d

    \n
  8. \n
  9. \n

    \u5b9f\u884c\u6a29\u306e\u4ed8\u4e0e

    \n
  10. \n
  11. \n

    \u30d0\u30fc\u30b8\u30e7\u30f3\u306e\u78ba\u8a8d

    \n
  12. \n
\n
\n
\n
\n
\n

Raspberry Pi OS bookworm armhf\u3078\u306esource\u304b\u3089\u306e\u5c0e\u5165

\n
\n
\n
\n
$ wget -c https://github.com/da-luce/astroterm/archive/refs/tags/v1.0.6.tar.gz (1)\n$ tar tvf v1.0.6.tar.gz\n$ tar xvf v1.0.6.tar.gz (2)\n$ cd astroterm-1.0.6\n$ meson setup build (3)\n$ meson compile -C build\n$ build/astroterm -v\nastroterm 1.0.6\n$ install build/astroterm ~/bin/ (4)
\n
\n
\n
\n
    \n
  1. \n

    source\u306e\u5165\u624b

    \n
  2. \n
  3. \n

    source\u5c55\u958b

    \n
  4. \n
  5. \n

    build\u203b(meson\u306f1.4.0\u4ee5\u4e0a\u304c\u5fc5\u8981)

    \n
  6. \n
  7. \n

    \u597d\u307f\u306e\u5834\u6240\u306binstall

    \n
  8. \n
\n
\n
\n
\n
\n

\u5229\u7528\u4f8b

\n
\n
\n
help
\n
\n
$ ./astroterm-linux-x86_64 -h\nView stars, planets, and more, right in your terminal! ✨🪐\n\nUsage: astroterm [OPTION]...\n\n  -a, --latitude=<degrees>  Observer latitude [-90\u00b0, 90\u00b0] (default: 0.0)\n  -o, --longitude=<degrees> Observer longitude [-180\u00b0, 180\u00b0] (default: 0.0)\n  -d, --datetime=<yyyy-mm-ddThh:mm:ss>\n                            Observation datetime in UTC\n  -t, --threshold=<float>   Only render stars brighter than this magnitude (def\n                            ault: 5.0)\n  -l, --label-thresh=<float>\n                            Label stars brighter than this magnitude (default:\n                            0.25)\n  -f, --fps=<int>           Frames per second (default: 24)\n  -s, --speed=<float>       Animation speed multiplier (default: 1.0)\n  -c, --color               Enable terminal colors\n  -C, --constellations      Draw constellation stick figures. Note: a constella\n                            tion is only drawn if all stars in the figure are o\n                            ver the threshold\n  -g, --grid                Draw an azimuthal grid\n  -u, --unicode             Use unicode characters\n  -q, --quit-on-any         Quit on any keypress (default is to quit on 'q' or\n                            'ESC' only)\n  -m, --metadata            Display metadata\n  -r, --aspect-ratio=<float>\n                            Override the calculated terminal cell aspect ratio.\n                            Use this if your projection is not 'square.' A valu\n                            e around 2.0 works well for most cases\n  -h, --help                Print this help message\n  -i, --city=<city_name>    Use the latitude and longitude of the provided city\n                            . If the name contains multiple words, enclose the\n                            name in single or double quotes. For a list of avai\n                            lable cities, see: https://github.com/da-luce/astro\n                            term/blob/v1.0.5/data/cities.csv\n  -v, --version             Display version info and exit
\n
\n
\n
\n

\u65e2\u5b9a\u5024

\n
\n

\u30aa\u30d7\u30b7\u30e7\u30f3\u7121\u3057\u306e\u65e2\u5b9a\u5024\u3067\u5b9f\u884c\u3059\u308b\u3068\u73fe\u5728\u6642\u523b\u306e\u7d4c\u5ea60\uff0c\u7def\u5ea60\u306e\u6240\u8b02Null Island(\u5b9f\u969b\u306f\u30d6\u30a4\u304c\u6d6e\u304b\u3093\u3067\u3044\u308b\u3060\u3051\u3067\u5b58\u5728\u3057\u306a\u3044\u5cf6)\u3067\u306e\u661f\u56f3\u304c\u8868\u793a\u3055\u308c\u307e\u3059\uff0e\u30ea\u30a2\u30eb\u30bf\u30a4\u30e0\u306b\u661f\u56f3\u306f\u5909\u5316\u3057\u3066\u3044\u304d\u307e\u3059\uff0e
\n\u89e3\u50cf\u5ea6\u306b\u3088\u308a\u60c5\u5831\u91cf\u306f\u5909\u308f\u308a\u307e\u3059\uff0e\u4ee5\u4e0b\u306e\u30b9\u30af\u30ea\u30fc\u30f3\u30b7\u30e7\u30c3\u30c8\u306f49×107\u3067\u3059\uff0e

\n
\n
\n
\n
$ stty size\n49 107
\n
\n
\n
\n

\"astroterm

\n
\n
\n
\n

\u4efb\u610f\u306e\u5834\u6240

\n
\n

\u4efb\u610f\u306e\u5834\u6240\u3092\u6307\u5b9a\u3057\u305f\u3044\u5834\u5408\u306f\u7def\u5ea6\u7d4c\u5ea6\u3092\u30aa\u30d7\u30b7\u30e7\u30f3\u3067\u6307\u5b9a\uff0c\u3082\u3057\u304f\u306f\u90fd\u5e02\u3092\u6307\u5b9a\u3067\u304d\u307e\u3059\uff0e

\n
\n
\n
\u7def\u5ea6\u7d4c\u5ea6\u306e\u6307\u5b9a
\n
\n
  -a, --latitude=<degrees>  Observer latitude [-90\u00b0, 90\u00b0] (default: 0.0)\n  -o, --longitude=<degrees> Observer longitude [-180\u00b0, 180\u00b0] (default: 0.0)
\n
\n
\n
\n
USC\u306eKS\u30bb\u30f3\u30bf\u30fc(\u53d6\u308a\u58ca\u3057\u4e2d)\u304b\u3089\u306e\u661f\u56f3
\n
\n
$ ./astroterm-linux-x86_64 -a 31.252232 -o 131.078439
\n
\n
\n
\n
\u90fd\u5e02\u306e\u6307\u5b9a
\n
\n
-i, --city=<city_name>    Use the latitude and longitude of the provided city\n                            . If the name contains multiple words, enclose the\n                            name in single or double quotes. For a list of avai\n                            lable cities, see: https://github.com/da-luce/astro\n                            term/blob/v1.0.5/data/cities.csv
\n
\n
\n
\n
\u9e7f\u5150\u5cf6\u304b\u3089\u306e\u661f\u56f3
\n
\n
$ ./astroterm-linux-x86_64 -i kagoshima
\n
\n
\n
\n

\u90fd\u5e02\u306fsource\u5185\u306e data/cities.csv \u306b\u3042\u308a\u307e\u3059\uff0e2733\u5730\u70b9\u304c\u767b\u9332\u3055\u308c\u3066\u3044\u307e\u3059\uff0e\u5185\u65e5\u672c\u306f117\u5730\u70b9\u306e\u3088\u3046\u3067\u3059\uff0e

\n
\n
\n
\n
$ wc -l data/cities.csv\n2733 data/cities.csv\n$ grep ',JP,' data/cities.csv | wc -l\n117
\n
\n
\n
\n

csv\u30d5\u30a1\u30a4\u30eb\u3060\u3051\u3067\u306f\u3088\u304f\u308f\u304b\u3089\u306a\u3044\u306e\u3067uMap\u3092\u4f7f\u3044\u5730\u56f3(OpenStreetMap)\u306b\u30d7\u30ed\u30c3\u30c8\u3057\u3066\u307f\u307e\u3057\u305f\uff0e\u5229\u7528\u3057\u305f\u3044\u5730\u70b9\u306e\u8fd1\u304f\u306b\u3042\u308c\u3070\u4fbf\u5229\u3067\u3059\uff0e

\n
\n

\n

\u30d5\u30eb\u30b9\u30af\u30ea\u30fc\u30f3\u8868\u793a

\n
\n
\n

\u30e1\u30bf\u30c7\u30fc\u30bf

\n
\n
\n
  -m, --metadata            Display metadata
\n
\n
\n
\n

\u5de6\u4e0a\u306b\u30e1\u30bf\u30c7\u30fc\u30bf\u304c\u8868\u793a\u3055\u308c\u307e\u3059\uff0e

\n
\n
\n

\"astroterm

\n
\n
\n
\n

\u65e5\u6642\u306e\u6307\u5b9a

\n
\n

\u7279\u5b9a\u306e\u5e74\u6708\u65e5\u3092\u6307\u5b9a\u3067\u304d\u307e\u3059\uff0eUTC\u3067\u6307\u5b9a\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\uff0e

\n
\n
\n
\n
  -d, --datetime=<yyyy-mm-ddThh:mm:ss>\n                            Observation datetime in UTC
\n
\n
\n
\n
\u7686\u65e2\u65e5\u98df\u306e\u3068\u304d\u306e\u4f4d\u7f6e\u3084\u6642\u9593\u3092\u6307\u5b9a\u3057\u3066\u30b7\u30df\u30e5\u30ec\u30fc\u30b7\u30e7\u30f3\u3057\u3066\u307f\u308b
\n
\n
$ ./astroterm-linux-x86_64 -a -22.05 -o -4.07 -d 2006-03-29T08:38:00 -s 10 -m -cu
\n
\n
\n
\n
\n

\u901f\u5ea6

\n
\n
\n
  -s, --speed=<float>       Animation speed multiplier (default: 1.0)
\n
\n
\n
\n

-s \u3067\u5927\u304d\u306a\u5024\u3092\u6307\u5b9a\u3059\u308b\u3053\u3068\u3067\u661f\u56f3\u76e4\u306e\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u901f\u5ea6\u304c\u901f\u304f\u306a\u308a\u307e\u3059\uff0e-\u3082\u6307\u5b9a\u3067\u304d\u307e\u3059\uff0e

\n
\n
\n
\n

\u30ab\u30e9\u30fc

\n
\n

\u7aef\u672b\u30ab\u30e9\u30fc\u3092\u6709\u52b9\u306b\u3057\u307e\u3059\uff0e

\n
\n
\n
\n
  -c, --color               Enable terminal colors
\n
\n
\n
\n
\n

Unicode

\n
\n

Unicode\u3092\u6709\u52b9\u306b\u3057\u307e\u3059\uff0e\u70b9\u5b57\u30d5\u30a9\u30f3\u30c8\u3067\u661f\u3084\u7d75\u6587\u5b57\u3067\u592a\u967d\u3084\u6708\uff0c\u60d1\u661f\u306a\u3069\u306e\u8868\u793a\u304c\u3055\u308c\u308b\u306e\u3067\u89e3\u308a\u3084\u3059\u304f\u306a\u308a\u307e\u3059\uff0e

\n
\n
\n
\n
  -u, --unicode             Use unicode characters
\n
\n
\n
\n
\n
$ ./astroterm-linux-x86_64 -i kagoshima -m -s 100 -cu
\n
\n
\n
\n

\"astroterm

\n
\n
\n\n\n\n\n\n
\n
Note
\n
\n
\n

\u7aef\u672b\u304cUnicode\u3084\u7d75\u6587\u5b57\u306b\u5bfe\u5fdc\u3057\u3066\u3044\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\uff0e
\n\u4f8b\u3048\u3070 LC_ALL=C \u306b\u3059\u308b\u3068\u6587\u5b57\u5316\u3051\u3057\u3066\u3057\u307e\u3044\u307e\u3059\uff0eC.UTF-8, en_US.UTF-8, ja_JP.UTF-8 \u306a\u3069\u3060\u3068OK\uff0e

\n
\n
\n
\n
\n
\n

\u661f\u5ea7

\n
\n

\u661f\u5ea7\u3092\u8868\u73fe\u3057\u307e\u3059\uff0eUnicode\u306e\u6709\u7121\u3067\u5927\u5206\u898b\u305f\u76ee\u304c\u5909\u308f\u308a\u307e\u3059\uff0e

\n
\n
\n
\n
  -C, --constellations      Draw constellation stick figures. Note: a constella\n                            tion is only drawn if all stars in the figure are o\n                            ver the threshold
\n
\n
\n
\n
Unicode\u7121\u3057\u306e\u661f\u5ea7
\n

\"astroterm

\n
\n
\n
Unicode\u3042\u308a\u306e\u661f\u5ea7
\n

\"astroterm

\n
\n
\n
\n

\u7b49\u7d1a

\n
\n

\u6307\u5b9a\u3057\u305f\u7b49\u7d1a\u3088\u308a\u3082\u660e\u308b\u3044\u661f\u306e\u307f\u3092\u8868\u793a\u3057\u307e\u3059\uff0e

\n
\n
\n
\n
  -t, --threshold=<float>   Only render stars brighter than this magnitude (def\n                            ault: 5.0)
\n
\n
\n
\n
\n

\u30b0\u30ea\u30c3\u30c9

\n
\n

\u65b9\u4f4d\u89d2\u30b0\u30ea\u30c3\u30c9\u3092\u8868\u793a\u3057\u307e\u3059\uff0e\u4eca\u56de\u8a66\u3057\u305f\u89e3\u50cf\u5ea6\u3060\u3068\u661f\u304c\u5927\u5206\u6d88\u3048\u3066\u3057\u307e\u3046\u306e\u3067\u90aa\u9b54\u306a\u611f\u3058\u304c\u3057\u307e\u3059\uff0e

\n
\n
\n
\n
  -g, --grid                Draw an azimuthal grid
\n
\n
\n
\n
\n

demo

\n
\n

\u9e7f\u5150\u5cf6\u3067\u306e\u73fe\u5728\u304b\u3089\u306e\u661f\u56f3\u309210000\u500d\u306e\u901f\u5ea6\u3067\uff0e

\n
\n
\n
\n
$ ./astroterm-linux-x86_64 -i kagoshima -m -s 10000 -c -u -C -t 4
\n
\n
\n
\n

\n
\n

\u6848\u5916\u8868\u73fe\u304c\u8c4a\u304b\u3067\u7b49\u7d1a\u306e\u5927\u304d\u306a\u661f\u306e\u3042\u308b\u661f\u5ea7\u3084\u60d1\u661f\u306a\u3069\u306e\u89b3\u6e2c\u306b\u306f\u4f7f\u3048\u305d\u3046\u306a\u611f\u3058\u3067\u3059\uff0e

\n
\n
\n

\u3068\u306f\u3044\u3048GUI\u74b0\u5883\u3067\u3042\u308c\u3070Stellarium\u3084Kstars\u306a\u3069\u8272\u3005\u306a\u3082\u306e\u304c\u3042\u308a\u4f7f\u3044\u52dd\u624b\u3082\u3088\u3044\u306e\u3067\u305d\u3061\u3089\u306e\u307b\u3046\u304c\u5b9f\u7528\u7684\u3060\u3068\u601d\u3044\u307e\u3059\uff0e
\nDebian\u3067\u3042\u308c\u3070\u4ee5\u4e0b\u306eblends\u304c\u5929\u6587\u5411\u3051\u3067\u8208\u5473\u6df1\u3044\u30bd\u30d5\u30c8\u30a6\u30a7\u30a2\u304c\u305f\u304f\u3055\u3093\u3042\u308a\u307e\u3059\uff0e

\n
\n\n
\n

GNU\u306b\u3082GNU Astronomy Utilities\u306a\u3093\u3066\u3082\u306e\u304c\u3042\u308a\u307e\u3059\uff0e

\n
\n\n
\n
\n
\n
\n

\u74b0\u5883

\n
\n
\n

Debian sid amd64

\n
\n
\n
$ ./astroterm-linux-x86_64 -v\nastroterm 1.0.5\n$ lsb_release -dr\nDescription:    Debian GNU/Linux trixie/sid\nRelease:        n/a\n$ arch\nx86_64
\n
\n
\n
\n
\n

Raspberry Pi OS bookworm armhf

\n
\n
\n
$ astroterm -v\nastroterm 1.0.6\n$ dpkg-query -W meson gcc python libargtable2-dev libncurses-dev\ngcc     4:12.2.0-3+rpi1\nlibargtable2-dev        13-1.1\nlibncurses-dev:armhf    6.4-4\nmeson   1.6.1-1\npython  2.7.16-1\n$ lsb_release -dr\nNo LSB modules are available.\nDescription:    Raspbian GNU/Linux 12 (bookworm)\nRelease:        12\n$ arch\narmv7l
\n
\n
\n
\n
\n
\n", "content_text": "\u7aef\u672b\u3067\u52d5\u4f5c\u3059\u308b\u661f\u56f3\u76e4\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u898b\u3064\u3051\u307e\u3057\u305f\uff0e\u7aef\u672b\u3067\u3069\u306e\u304f\u3089\u3044\u4f7f\u3044\u7269\u306b\u306a\u308b\u3060\u308d\u3046\u304b\u3068\u601d\u3044\u3064\u3064\u8a66\u3057\u3066\u307f\u307e\u3057\u305f\uff0e\n\n\n\n\nda-luce/astroterm: A planetarium for your terminal! Explore stars, planets, constellations, and more, all rendered right in the command line\u2014no telescope required. ✨🪐\n\n\n\n\n\n\n\nReleases\u306e\u30d0\u30a4\u30ca\u30ea\u3092\u5c0e\u5165\n\n\nGitHub\u306eRelseases\u304b\u3089Linux x86_64\u7248\u3092\u5229\u7528\u3057\u307e\u3057\u305f\uff0e\n\n\n\n$ wget2 -c -v \\ (1)\nhttps://github.com/da-luce/astroterm/releases/download/v1.0.5/astroterm-linux-x86_64 \\\nhttps://github.com/da-luce/astroterm/releases/download/v1.0.5/astroterm-linux-x86_64.sha256\n$ sha256sum -c ./astroterm-linux-x86_64.sha256 (2)\nsha256sum: build/astroterm: No such file or directory\nbuild/astroterm: FAILED open or read\nsha256sum: WARNING: 1 listed file could not be read\n$ cat ./astroterm-linux-x86_64.sha256 (3)\nae1ce946d9da27f97e26de9ef6df8d068feb971a5aa7a76d4972b2673cddb495 build/astroterm\n$ cat ./astroterm-linux-x86_64.sha256 | sed -e 's/build\\/astroterm/astroterm-linux-x86_64/' | sha256sum -c (4)\nastroterm-linux-x86_64: OK\n$ chmod u+x ./astroterm-linux-x86_64 (5)\n$ ./astroterm-linux-x86_64 -v (6)\nastroterm 1.0.5\n\n\n\n\n\n\u5b9f\u884c\u30d5\u30a1\u30a4\u30eb\u3068\uff0c\u5bfe\u5fdc\u3057\u305fhash\u30d5\u30a1\u30a4\u30eb\u306e\u5165\u624b\n\n\n\u30cf\u30c3\u30b7\u30e5\u306e\u78ba\u8a8d\u306b\u5931\u6557\n\n\n\u30cf\u30c3\u30b7\u30e5\u30d5\u30a1\u30a4\u30eb\u306e\u4e2d\u3092\u898b\u308b\u3068\u30d5\u30a1\u30a4\u30eb\u540d\u304c\u9593\u9055\u3063\u3066\u3044\u308b\n\n\n\u30d5\u30a1\u30a4\u30eb\u540d\u90e8\u5206\u3092\u5dee\u3057\u66ff\u3048\u3066\u30cf\u30c3\u30b7\u30e5\u306e\u78ba\u8a8d\n\n\n\u5b9f\u884c\u6a29\u306e\u4ed8\u4e0e\n\n\n\u30d0\u30fc\u30b8\u30e7\u30f3\u306e\u78ba\u8a8d\n\n\n\n\n\n\nRaspberry Pi OS bookworm armhf\u3078\u306esource\u304b\u3089\u306e\u5c0e\u5165\n\n\n\n$ wget -c https://github.com/da-luce/astroterm/archive/refs/tags/v1.0.6.tar.gz (1)\n$ tar tvf v1.0.6.tar.gz\n$ tar xvf v1.0.6.tar.gz (2)\n$ cd astroterm-1.0.6\n$ meson setup build (3)\n$ meson compile -C build\n$ build/astroterm -v\nastroterm 1.0.6\n$ install build/astroterm ~/bin/ (4)\n\n\n\n\n\nsource\u306e\u5165\u624b\n\n\nsource\u5c55\u958b\n\n\nbuild\u203b(meson\u306f1.4.0\u4ee5\u4e0a\u304c\u5fc5\u8981)\n\n\n\u597d\u307f\u306e\u5834\u6240\u306binstall\n\n\n\n\n\n\n\u5229\u7528\u4f8b\n\n\nhelp\n\n$ ./astroterm-linux-x86_64 -h\nView stars, planets, and more, right in your terminal! ✨🪐\n\nUsage: astroterm [OPTION]...\n\n -a, --latitude=<degrees> Observer latitude [-90\u00b0, 90\u00b0] (default: 0.0)\n -o, --longitude=<degrees> Observer longitude [-180\u00b0, 180\u00b0] (default: 0.0)\n -d, --datetime=<yyyy-mm-ddThh:mm:ss>\n Observation datetime in UTC\n -t, --threshold=<float> Only render stars brighter than this magnitude (def\n ault: 5.0)\n -l, --label-thresh=<float>\n Label stars brighter than this magnitude (default:\n 0.25)\n -f, --fps=<int> Frames per second (default: 24)\n -s, --speed=<float> Animation speed multiplier (default: 1.0)\n -c, --color Enable terminal colors\n -C, --constellations Draw constellation stick figures. Note: a constella\n tion is only drawn if all stars in the figure are o\n ver the threshold\n -g, --grid Draw an azimuthal grid\n -u, --unicode Use unicode characters\n -q, --quit-on-any Quit on any keypress (default is to quit on 'q' or\n 'ESC' only)\n -m, --metadata Display metadata\n -r, --aspect-ratio=<float>\n Override the calculated terminal cell aspect ratio.\n Use this if your projection is not 'square.' A valu\n e around 2.0 works well for most cases\n -h, --help Print this help message\n -i, --city=<city_name> Use the latitude and longitude of the provided city\n . If the name contains multiple words, enclose the\n name in single or double quotes. For a list of avai\n lable cities, see: https://github.com/da-luce/astro\n term/blob/v1.0.5/data/cities.csv\n -v, --version Display version info and exit\n\n\n\n\u65e2\u5b9a\u5024\n\n\u30aa\u30d7\u30b7\u30e7\u30f3\u7121\u3057\u306e\u65e2\u5b9a\u5024\u3067\u5b9f\u884c\u3059\u308b\u3068\u73fe\u5728\u6642\u523b\u306e\u7d4c\u5ea60\uff0c\u7def\u5ea60\u306e\u6240\u8b02Null Island(\u5b9f\u969b\u306f\u30d6\u30a4\u304c\u6d6e\u304b\u3093\u3067\u3044\u308b\u3060\u3051\u3067\u5b58\u5728\u3057\u306a\u3044\u5cf6)\u3067\u306e\u661f\u56f3\u304c\u8868\u793a\u3055\u308c\u307e\u3059\uff0e\u30ea\u30a2\u30eb\u30bf\u30a4\u30e0\u306b\u661f\u56f3\u306f\u5909\u5316\u3057\u3066\u3044\u304d\u307e\u3059\uff0e\n\u89e3\u50cf\u5ea6\u306b\u3088\u308a\u60c5\u5831\u91cf\u306f\u5909\u308f\u308a\u307e\u3059\uff0e\u4ee5\u4e0b\u306e\u30b9\u30af\u30ea\u30fc\u30f3\u30b7\u30e7\u30c3\u30c8\u306f49×107\u3067\u3059\uff0e\n\n\n\n$ stty size\n49 107\n\n\n\n\n\n\n\n\u4efb\u610f\u306e\u5834\u6240\n\n\u4efb\u610f\u306e\u5834\u6240\u3092\u6307\u5b9a\u3057\u305f\u3044\u5834\u5408\u306f\u7def\u5ea6\u7d4c\u5ea6\u3092\u30aa\u30d7\u30b7\u30e7\u30f3\u3067\u6307\u5b9a\uff0c\u3082\u3057\u304f\u306f\u90fd\u5e02\u3092\u6307\u5b9a\u3067\u304d\u307e\u3059\uff0e\n\n\n\u7def\u5ea6\u7d4c\u5ea6\u306e\u6307\u5b9a\n\n -a, --latitude=<degrees> Observer latitude [-90\u00b0, 90\u00b0] (default: 0.0)\n -o, --longitude=<degrees> Observer longitude [-180\u00b0, 180\u00b0] (default: 0.0)\n\n\n\nUSC\u306eKS\u30bb\u30f3\u30bf\u30fc(\u53d6\u308a\u58ca\u3057\u4e2d)\u304b\u3089\u306e\u661f\u56f3\n\n$ ./astroterm-linux-x86_64 -a 31.252232 -o 131.078439\n\n\n\n\u90fd\u5e02\u306e\u6307\u5b9a\n\n-i, --city=<city_name> Use the latitude and longitude of the provided city\n . If the name contains multiple words, enclose the\n name in single or double quotes. For a list of avai\n lable cities, see: https://github.com/da-luce/astro\n term/blob/v1.0.5/data/cities.csv\n\n\n\n\u9e7f\u5150\u5cf6\u304b\u3089\u306e\u661f\u56f3\n\n$ ./astroterm-linux-x86_64 -i kagoshima\n\n\n\n\u90fd\u5e02\u306fsource\u5185\u306e data/cities.csv \u306b\u3042\u308a\u307e\u3059\uff0e2733\u5730\u70b9\u304c\u767b\u9332\u3055\u308c\u3066\u3044\u307e\u3059\uff0e\u5185\u65e5\u672c\u306f117\u5730\u70b9\u306e\u3088\u3046\u3067\u3059\uff0e\n\n\n\n$ wc -l data/cities.csv\n2733 data/cities.csv\n$ grep ',JP,' data/cities.csv | wc -l\n117\n\n\n\ncsv\u30d5\u30a1\u30a4\u30eb\u3060\u3051\u3067\u306f\u3088\u304f\u308f\u304b\u3089\u306a\u3044\u306e\u3067uMap\u3092\u4f7f\u3044\u5730\u56f3(OpenStreetMap)\u306b\u30d7\u30ed\u30c3\u30c8\u3057\u3066\u307f\u307e\u3057\u305f\uff0e\u5229\u7528\u3057\u305f\u3044\u5730\u70b9\u306e\u8fd1\u304f\u306b\u3042\u308c\u3070\u4fbf\u5229\u3067\u3059\uff0e\n\n\n\u30d5\u30eb\u30b9\u30af\u30ea\u30fc\u30f3\u8868\u793a\n\n\n\u30e1\u30bf\u30c7\u30fc\u30bf\n\n\n -m, --metadata Display metadata\n\n\n\n\u5de6\u4e0a\u306b\u30e1\u30bf\u30c7\u30fc\u30bf\u304c\u8868\u793a\u3055\u308c\u307e\u3059\uff0e\n\n\n\n\n\n\n\u65e5\u6642\u306e\u6307\u5b9a\n\n\u7279\u5b9a\u306e\u5e74\u6708\u65e5\u3092\u6307\u5b9a\u3067\u304d\u307e\u3059\uff0eUTC\u3067\u6307\u5b9a\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\uff0e\n\n\n\n -d, --datetime=<yyyy-mm-ddThh:mm:ss>\n Observation datetime in UTC\n\n\n\n\u7686\u65e2\u65e5\u98df\u306e\u3068\u304d\u306e\u4f4d\u7f6e\u3084\u6642\u9593\u3092\u6307\u5b9a\u3057\u3066\u30b7\u30df\u30e5\u30ec\u30fc\u30b7\u30e7\u30f3\u3057\u3066\u307f\u308b\n\n$ ./astroterm-linux-x86_64 -a -22.05 -o -4.07 -d 2006-03-29T08:38:00 -s 10 -m -cu\n\n\n\n\n\u901f\u5ea6\n\n\n -s, --speed=<float> Animation speed multiplier (default: 1.0)\n\n\n\n-s \u3067\u5927\u304d\u306a\u5024\u3092\u6307\u5b9a\u3059\u308b\u3053\u3068\u3067\u661f\u56f3\u76e4\u306e\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u901f\u5ea6\u304c\u901f\u304f\u306a\u308a\u307e\u3059\uff0e-\u3082\u6307\u5b9a\u3067\u304d\u307e\u3059\uff0e\n\n\n\n\u30ab\u30e9\u30fc\n\n\u7aef\u672b\u30ab\u30e9\u30fc\u3092\u6709\u52b9\u306b\u3057\u307e\u3059\uff0e\n\n\n\n -c, --color Enable terminal colors\n\n\n\n\nUnicode\n\nUnicode\u3092\u6709\u52b9\u306b\u3057\u307e\u3059\uff0e\u70b9\u5b57\u30d5\u30a9\u30f3\u30c8\u3067\u661f\u3084\u7d75\u6587\u5b57\u3067\u592a\u967d\u3084\u6708\uff0c\u60d1\u661f\u306a\u3069\u306e\u8868\u793a\u304c\u3055\u308c\u308b\u306e\u3067\u89e3\u308a\u3084\u3059\u304f\u306a\u308a\u307e\u3059\uff0e\n\n\n\n -u, --unicode Use unicode characters\n\n\n\n\n$ ./astroterm-linux-x86_64 -i kagoshima -m -s 100 -cu\n\n\n\n\n\n\n\n\n\nNote\n\n\n\n\u7aef\u672b\u304cUnicode\u3084\u7d75\u6587\u5b57\u306b\u5bfe\u5fdc\u3057\u3066\u3044\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\uff0e\n\u4f8b\u3048\u3070 LC_ALL=C \u306b\u3059\u308b\u3068\u6587\u5b57\u5316\u3051\u3057\u3066\u3057\u307e\u3044\u307e\u3059\uff0eC.UTF-8, en_US.UTF-8, ja_JP.UTF-8 \u306a\u3069\u3060\u3068OK\uff0e\n\n\n\n\n\n\n\n\u661f\u5ea7\n\n\u661f\u5ea7\u3092\u8868\u73fe\u3057\u307e\u3059\uff0eUnicode\u306e\u6709\u7121\u3067\u5927\u5206\u898b\u305f\u76ee\u304c\u5909\u308f\u308a\u307e\u3059\uff0e\n\n\n\n -C, --constellations Draw constellation stick figures. Note: a constella\n tion is only drawn if all stars in the figure are o\n ver the threshold\n\n\n\nUnicode\u7121\u3057\u306e\u661f\u5ea7\n\n\n\nUnicode\u3042\u308a\u306e\u661f\u5ea7\n\n\n\n\n\u7b49\u7d1a\n\n\u6307\u5b9a\u3057\u305f\u7b49\u7d1a\u3088\u308a\u3082\u660e\u308b\u3044\u661f\u306e\u307f\u3092\u8868\u793a\u3057\u307e\u3059\uff0e\n\n\n\n -t, --threshold=<float> Only render stars brighter than this magnitude (def\n ault: 5.0)\n\n\n\n\n\u30b0\u30ea\u30c3\u30c9\n\n\u65b9\u4f4d\u89d2\u30b0\u30ea\u30c3\u30c9\u3092\u8868\u793a\u3057\u307e\u3059\uff0e\u4eca\u56de\u8a66\u3057\u305f\u89e3\u50cf\u5ea6\u3060\u3068\u661f\u304c\u5927\u5206\u6d88\u3048\u3066\u3057\u307e\u3046\u306e\u3067\u90aa\u9b54\u306a\u611f\u3058\u304c\u3057\u307e\u3059\uff0e\n\n\n\n -g, --grid Draw an azimuthal grid\n\n\n\n\ndemo\n\n\u9e7f\u5150\u5cf6\u3067\u306e\u73fe\u5728\u304b\u3089\u306e\u661f\u56f3\u309210000\u500d\u306e\u901f\u5ea6\u3067\uff0e\n\n\n\n$ ./astroterm-linux-x86_64 -i kagoshima -m -s 10000 -c -u -C -t 4\n\n\n\n\n\n\u6848\u5916\u8868\u73fe\u304c\u8c4a\u304b\u3067\u7b49\u7d1a\u306e\u5927\u304d\u306a\u661f\u306e\u3042\u308b\u661f\u5ea7\u3084\u60d1\u661f\u306a\u3069\u306e\u89b3\u6e2c\u306b\u306f\u4f7f\u3048\u305d\u3046\u306a\u611f\u3058\u3067\u3059\uff0e\n\n\n\u3068\u306f\u3044\u3048GUI\u74b0\u5883\u3067\u3042\u308c\u3070Stellarium\u3084Kstars\u306a\u3069\u8272\u3005\u306a\u3082\u306e\u304c\u3042\u308a\u4f7f\u3044\u52dd\u624b\u3082\u3088\u3044\u306e\u3067\u305d\u3061\u3089\u306e\u307b\u3046\u304c\u5b9f\u7528\u7684\u3060\u3068\u601d\u3044\u307e\u3059\uff0e\nDebian\u3067\u3042\u308c\u3070\u4ee5\u4e0b\u306eblends\u304c\u5929\u6587\u5411\u3051\u3067\u8208\u5473\u6df1\u3044\u30bd\u30d5\u30c8\u30a6\u30a7\u30a2\u304c\u305f\u304f\u3055\u3093\u3042\u308a\u307e\u3059\uff0e\n\n\n\n\nDebian Astro Pure Blend\n\n\n\n\nGNU\u306b\u3082GNU Astronomy Utilities\u306a\u3093\u3066\u3082\u306e\u304c\u3042\u308a\u307e\u3059\uff0e\n\n\n\n\nGNU Astronomy Utilities – Gnuastro – – GNU Project – Free Software Foundation\n\n\n\n\n\n\n\n\u74b0\u5883\n\n\nDebian sid amd64\n\n\n$ ./astroterm-linux-x86_64 -v\nastroterm 1.0.5\n$ lsb_release -dr\nDescription: Debian GNU/Linux trixie/sid\nRelease: n/a\n$ arch\nx86_64\n\n\n\n\nRaspberry Pi OS bookworm armhf\n\n\n$ astroterm -v\nastroterm 1.0.6\n$ dpkg-query -W meson gcc python libargtable2-dev libncurses-dev\ngcc 4:12.2.0-3+rpi1\nlibargtable2-dev 13-1.1\nlibncurses-dev:armhf 6.4-4\nmeson 1.6.1-1\npython 2.7.16-1\n$ lsb_release -dr\nNo LSB modules are available.\nDescription: Raspbian GNU/Linux 12 (bookworm)\nRelease: 12\n$ arch\narmv7l", "date_published": "2025-01-25T08:20:27+09:00", "date_modified": "2025-01-25T14:52:22+09:00", "authors": [ { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" } ], "author": { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" }, "tags": [ "constellation", "star map", "terminal", "bookworm", "Debian", "Linux", "Raspberry Pi OS", "sid" ] }, { "id": "https://matoken.org/blog/?p=4336", "url": "https://matoken.org/blog/2025/01/02/ghostty-build-in-debian-sid/", "title": "Debian sid\u74b0\u5883\u3067Ghostty\u3092build", "content_html": "
\n

\"com.mitchellh.ghostty\"

\n
\n
\n

\u6700\u8fd11.0.0\u304c\u30ea\u30ea\u30fc\u30b9\u3055\u308c\u8a71\u984c\u306b\u306a\u3063\u3066\u3044\u308bGhostty\u3068\u3044\u3046\u30bf\u30fc\u30df\u30ca\u30eb\u30a8\u30df\u30e5\u30ec\u30fc\u30bf\u304c\u3042\u308a\u307e\u3059\uff0e\u6700\u8fd1Debian sid amd64\u74b0\u5883\u306eAlacritty\u306e\u4e0a\u3067Neovim+iBus Mozc\u3067\u65e5\u672c\u8a9e\u5165\u529b\u6642\u306b\u9045\u5ef6\u3057\u3066?\u65e5\u672c\u8a9e\u304c\u5165\u529b\u3055\u308c\u3066\u4f7f\u3044\u7269\u306b\u306a\u3089\u306a\u3044\u306e\u3082\u3042\u308a\u8a66\u3057\u3066\u307f\u3088\u3046\u3068\u601d\u3044\u307e\u3057\u305f\uff0e(mlterm\u3060\u3068\u5927\u4e08\u592b)

\n
\n
\n\n
\n
\n

Debian\u3067\u6b21\u56de\u306b\u52d5\u304f\u30d0\u30a4\u30ca\u30ea\u306f\u63d0\u4f9b\u3055\u308c\u3066\u3044\u307e\u305b\u3093\uff0eUbuntu\u306b\u3064\u3044\u3066\u306f\u7b2c\u4e09\u8005\u304c\u30d1\u30c3\u30b1\u30fc\u30b8\u3092\u63d0\u4f9b\u3055\u308c\u3066\u3044\u307e\u3059\uff0e(apt sources\u306f\u7121\u3044)

\n
\n
\n\n
\n
\n

\u6050\u3089\u304fUbuntu\u7248\u306fDebian\u3067\u3082\u52d5\u4f5c\u3059\u308b\u3068\u601d\u3044\u307e\u3059\u304csource\u304b\u3089Build\u3057\u3066\u307f\u307e\u3057\u305f\uff0e\u5c11\u3057\u5d4c\u3063\u305f\u306e\u3067\u30e1\u30e2\u3057\u3066\u304a\u304d\u307e\u3059\uff0e

\n
\n

\n
\n

\u624b\u9806\u306f\u4ee5\u4e0b\u306b\u66f8\u304b\u308c\u3066\u3044\u307e\u3059\uff0e

\n
\n
\n\n
\n
\n
\u95a2\u9023\u30d1\u30c3\u30b1\u30fc\u30b8\u306e\u5c0e\u5165
\n
\n
$ sudo apt install libgtk-4-dev libadwaita-1-dev git
\n
\n
\n
\n
zig\u306e\u5c0e\u5165
\n
\n
$ wget2 -c -v https://ziglang.org/download/0.13.0/zig-linux-x86_64-0.13.0.tar.xz \\\n              https://ziglang.org/download/0.13.0/zig-linux-x86_64-0.13.0.tar.xz.minisig\nzig-linux-x86_64-0.1 100% [============================================================================================================================================>]     325     --.-KB/s\nzig-linux-x86_64-0.1 100% [============================================================================================================================================>]   44.90M  761.78KB/s\n                          [Files: 2  Bytes: 44.90M [553.07KB/s] Redirects: 0  Todo: 0  Errors: 0\n$ minisign -Vm ./zig-linux-x86_64-0.13.0.tar.xz -P 'RWSGOq2NVecA2UPNdBUZykf1CCb147pkmdtYxgb3Ti+JO/wCYvhbAb/U'\nSignature and comment signature verified\nTrusted comment: timestamp:1717729444   file:zig-linux-x86_64-0.13.0.tar.xz     hashed
\n
\n
\n
\n
zig\u3092fuse-archive\u3067mount(\u3082\u3057\u304f\u306ftar xf\u3067\u5c55\u958b)
\n
\n
$ fuse-archive ./zig-linux-x86_64-0.13.0.tar.xz
\n
\n
\n
\n
Ghostty\u306esource\u5165\u624b
\n
\n
$ git clone https://github.com/ghostty-org/ghostty\n$ cd ghostty
\n
\n
\n
\n\n\n\n\n\n
\n
Note
\n
\n
\n

font\u306a\u3093\u304b\u3082\u540c\u68b1\u3055\u308c\u3066\u3044\u3066\u7d50\u69cb\u30b5\u30a4\u30ba\u304c\u5927\u304d\u304f --depth=1 \u3067\u3082clone\u306b\u5931\u6557\u3059\u308b\u306e\u3067\u30ea\u30e2\u30fc\u30c8\u3067clone\u3057\u3066rsync\u3057\u307e\u3057\u305f\uff0ereleases\u306esource archive\u304b\u3089\u5165\u624b\u3057\u3066\u3082\u3044\u3044\u304b\u3082\u3057\u308c\u307e\u305b\u3093\uff0e

\n
\n\n
\n
\n
\n
zig\u306bPATH\u3092\u901a\u3057\u3066Ghostty\u306ebuild
\n
\n
$ PATH=~/Downloads/zig-linux-x86_64-0.13.0/zig-linux-x86_64-0.13.0/:$PATH \\\n  zig build -Doptimize=ReleaseFast\n$ ls zig-out/bin/ghostty\nzig-out/bin/ghostty
\n
\n
\n
\n\n\n\n\n\n
\n
Note
\n
\n
\n

build\u6642\u306b\u4ee5\u4e0b\u306e\u30e1\u30c3\u30bb\u30fc\u30b8\u3067\u6570\u6642\u9593\u7d4c\u3063\u3066\u3082\u9032\u307e\u306a\u304f\u306a\u308a\u307e\u3057\u305f\uff0eCtrl+c\u3067\u4e2d\u65ad\u3057\u3066\u518d\u5ea6\u5b9f\u884c\u3059\u308b\u3053\u3068\u3067\u9032\u307f\u307e\u3057\u305f\uff0e\u6050\u3089\u304f\u56de\u7dda\u306e\u554f\u984c\uff0e

\n
\n
\n
\n
Compile Build Script\n\u2514\u2500 [53/46] Fetch Packages\n   \u251c\u2500 wuffs\n   \u2514\u2500 iterm2_themes
\n
\n
\n
\n
\n
\n
Ghostty\u3092\u5b9f\u884c\u2026\u2026 Segmentation fault
\n
\n
$ zig-out/bin/ghostty\ninfo: ghostty version=1.0.2-main+60611b8\ninfo: ghostty build optimize=ReleaseFast\ninfo: runtime=apprt.Runtime.gtk\ninfo: font_backend=font.main.Backend.fontconfig_freetype\ninfo: dependency harfbuzz=8.4.0\ninfo: dependency fontconfig=21402\ninfo: renderer=renderer.OpenGL\ninfo: libxev backend=main.Backend.io_uring\ninfo(os): setlocale from env result=ja_JP.UTF-8\ninfo(gtk): GTK version build=4.16.7 runtime=4.16.7\ninfo(config): creating template config file: path=/home/matoken/.config/ghostty/config\nwarning(config): error creating template config file err=error.FileNotFound\ninfo(config): default shell source=env value=/bin/bash\nwarning(sentry): crash report written to disk path=/home/matoken/.local/state/ghostty/crash/68ce5038-f588-4d61-ef88-4217099bbfc4.ghosttycrash\nEGL API version 1.5 found\n - Vendor: Mesa Project\n - Version: 1.5\n - Device: /dev/dri/renderD128, 226 128\n - Client APIs: OpenGL OpenGL_ES\n - Extensions:\n        EGL_ANDROID_blob_cache\n        EGL_ANDROID_native_fence_sync\n        EGL_ANGLE_sync_control_rate\n        EGL_CHROMIUM_sync_control\n        EGL_EXT_buffer_age\n        EGL_EXT_config_select_group\n        EGL_EXT_create_context_robustness\n        EGL_EXT_image_dma_buf_import\n        EGL_EXT_image_dma_buf_import_modifiers\n        EGL_EXT_pixel_format_float\n        EGL_EXT_query_reset_notification_strategy\n        EGL_EXT_surface_compression\n        EGL_EXT_swap_buffers_with_damage\n        EGL_IMG_context_priority\n        EGL_KHR_cl_event2\n        EGL_KHR_config_attribs\n        EGL_KHR_context_flush_control\n        EGL_KHR_create_context\n        EGL_KHR_create_context_no_error\n        EGL_KHR_fence_sync\n        EGL_KHR_get_all_proc_addresses\n        EGL_KHR_gl_colorspace\n        EGL_KHR_gl_renderbuffer_image\n        EGL_KHR_gl_texture_2D_image\n        EGL_KHR_gl_texture_3D_image\n        EGL_KHR_gl_texture_cubemap_image\n        EGL_KHR_image\n        EGL_KHR_image_base\n        EGL_KHR_image_pixmap\n        EGL_KHR_no_config_context\n        EGL_KHR_reusable_sync\n        EGL_KHR_surfaceless_context\n        EGL_KHR_swap_buffers_with_damage\n        EGL_KHR_wait_sync\n        EGL_MESA_configless_context\n        EGL_MESA_drm_image\n        EGL_MESA_gl_interop\n        EGL_MESA_image_dma_buf_export\n        EGL_MESA_query_driver\n        EGL_MESA_x11_native_visual_id\n        EGL_NOK_texture_from_pixmap\n        EGL_WL_bind_wayland_display\n - Selected fbconfig: R8G8B8A8, depth 0, stencil 0\n          high depth: none\nCreating EGL context version 3.2 (debug:no, forward:no, legacy:no, es:no)\nUsing OpenGL backend EGL\ninfo(gtk): libadwaita version build=1.6.2 runtime=1.6.2\nerror(gtk): Read method failed: GDBus.Error:org.freedesktop.DBus.Error.UnknownMethod: No such interface \u201corg.freedesktop.portal.Settings\u201d on object at path /org/freedesktop/portal/desktop\nCreating EGL context version 3.2 (debug:no, forward:no, legacy:no, es:no)\nOpenGL version: 4.6 (core)\nGLSL version: 4.60\nMax texture size: 16384\nEnabled features (use GDK_GL_DISABLE env var to disable):\n    debug: \u2713\n    unpack-subimage: \u2713\n    half-float: \u2713\n    sync: \u2713\n    base-instance: \u2713\n    buffer-storage: \u2713\nOpenGL version: 4.6 (core)\nGLSL version: 4.60\nMax texture size: 16384\nEnabled features (use GDK_GL_DISABLE env var to disable):\n    debug: \u2713\n    unpack-subimage: \u2713\n    half-float: \u2713\n    sync: \u2713\n    base-instance: \u2713\n    buffer-storage: \u2713\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.441: GtkImage 0x31a0b830 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.441: GtkImage 0x31a09b60 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.441: GtkImage 0x319c7740 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.442: GtkImage 0x31a79170 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.442: GtkImage 0x31a754f0 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.442: GtkImage 0x31a7b370 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.443: GtkImage 0x318aed70 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.443: GtkImage 0x31a812a0 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.443: GtkImage 0x31a80400 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.444: GtkImage 0x31a83150 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.444: GtkImage 0x319bb340 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.455: GtkImage 0x33e3da10 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.\nCreating EGL context version 3.3 (debug:no, forward:no, legacy:no, es:no)\nOpenGL version: 4.6 (core)\nGLSL version: 4.60\nMax texture size: 16384\nEnabled features (use GDK_GL_DISABLE env var to disable):\n    debug: \u2713\n    unpack-subimage: \u2713\n    half-float: \u2713\n    sync: \u2713\n    base-instance: \u2713\n    buffer-storage: \u2713\ninfo(grid): loaded OpenGL 4.6\ninfo(io_exec): found Ghostty resources dir: /home/matoken/src/ghostty/zig-out/share/ghostty\ninfo(io_exec): shell integration automatically injected shell=termio.shell_integration.Shell.bash\nwarning(gtk): unimplemented action=apprt.action.Action.Key.cell_size\nwarning(gtk): unimplemented action=apprt.action.Action.Key.size_limit\ninfo(io_exec): started subcommand path=/bin/sh pid=3475569\ninfo(io_exec): subcommand cgroup=-\nerror(gtk): Read method failed: GDBus.Error:org.freedesktop.DBus.Error.UnknownMethod: No such interface \u201corg.freedesktop.portal.Settings\u201d on object at path /org/freedesktop/portal/desktop\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.490: GtkImage 0x33e52760 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.498: GtkImage 0x31a7b370 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.498: GtkImage 0x342b77c0 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.498: GtkImage 0x342b84c0 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.498: GtkImage 0x31a7f490 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.498: GtkImage 0x31a80400 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.499: GtkImage 0x31a821f0 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.506: GtkImage 0x31a7b370 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.506: GtkImage 0x342b77c0 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.506: GtkImage 0x342b84c0 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.506: GtkImage 0x33e52760 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.506: GtkImage 0x31a7f490 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.506: GtkImage 0x31a80400 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.506: GtkImage 0x31a821f0 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.506: GtkImage 0x33e3da10 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.509: fb setup not supported (8cd6)\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.524: fb setup not supported (8cd6)\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.550: fb setup not supported (8cd6)\n\n(ghostty:3475525): GLib-GObject-CRITICAL **: 02:44:03.634: g_object_ref: assertion 'G_IS_OBJECT (object)' failed\n\n(ghostty:3475525): GLib-GObject-CRITICAL **: 02:44:03.634: g_object_ref: assertion 'G_IS_OBJECT (object)' failed\nSegmentation fault
\n
\n
\n
\n

Segmentation fault\u306b\u306a\u3063\u3066\u3057\u307e\u3044\u307e\u3059\uff0e\u30a8\u30e9\u30fc\u30e1\u30c3\u30bb\u30fc\u30b8\u3067\u691c\u7d22\u3057\u3066\u4ee5\u4e0b\u306eIssue\u3092\u898b\u3064\u3051\u307e\u3057\u305f\uff0e

\n
\n
\n
\n
\n

Dupe, best guess currently is a GTK bug. Please search to find similar discussions (not issues).

\n
\n
\n
\n— Fail to run binary on Debian/Cinnamon \u00b7 Issue #3370 \u00b7 ghostty-org/ghostty\n
\n
\n
\n

GTK\u306ebug\u3067\u306f\u3068\u306e\u3053\u3068\u3067\u3059\u304cUbuntu\u7248\u304c\u3042\u308b\u306e\u3067\u305d\u3061\u3089\u3067\u306f\u3069\u3046\u306a\u3063\u3066\u308b\u306e\u3060\u308d\u3046\u3068.deb\u3092\u5165\u624b\u3057\u3066\u8a66\u3057\u3066\u307f\u307e\u3059\uff0e

\n
\n
\n
Ubuntu\u5411\u3051Ghostty\u306e.deb\u3092\u5165\u624b\u3057\u3066archive\u3092mount\u3057\u3066\u5b9f\u884c
\n
\n
$ wget2 -c -v https://github.com/mkasberg/ghostty-ubuntu/releases/download/1.0.1-0-ppa1/ghostty_1.0.1-0.ppa1_amd64_24.10.deb (1)\n0 files                0% [<=>                                                                                                                                                                                          ]       0          B/s\n                          [Files: 0  Bytes: 0  [0 B/s] Redirects: 1  Todo: 0  Errors: 1\n$ fuse-archive ghostty_1.0.1-0.ppa1_amd64_24.10.deb (2)\nfuse-archive: Created mount point 'ghostty_1.0.1-0.ppa1_amd64_24.10'\n$ fuse-archive ghostty_1.0.1-0.ppa1_amd64_24.10/data.tar.zst ~/fuse/tmp (3)\nfuse-archive: Using existing mount point '/home/matoken/fuse/tmp'\n$ /home/matoken/fuse/tmp/usr/bin/ghostty (4)
\n
\n
\n
\n
    \n
  1. \n

    \u4e00\u756a\u74b0\u5883\u306e\u8fd1\u305d\u3046\u306aUbuntu 22.10 amd64\u7248\u3092\u5165\u624b

    \n
  2. \n
  3. \n

    fuse-archive\u3067mount(\u3082\u3057\u304f\u306funar\u30b3\u30de\u30f3\u30c9\u306a\u3069\u3067\u5c55\u958b)

    \n
  4. \n
  5. \n

    fuse-archive\u3067\u9069\u5f53\u306a\u5834\u6240\u306bdata.tar\u3092mount(\u3082\u3057\u304f\u306ftar xf\u306a\u3069\u3067\u5c55\u958b)

    \n
  6. \n
  7. \n

    Ghostty\u3092\u5b9f\u884c

    \n
  8. \n
\n
\n
\n

Ubuntu\u5411\u3051Ghostty\u306f\u8d77\u52d5\u3057\u307e\u3057\u305f\uff0e
\ndebian/patches\u3092\u8997\u304f\u30681\u3064patch\u304c\u3042\u308a\u307e\u3059\u304c\u95a2\u4fc2\u304c\u7121\u3055\u305d\u3046\uff0e\u8a66\u3057\u306b 000-libbz2.patch \u3092\u9069\u7528\u3057\u3066\u307f\u307e\u3057\u305f\u304c\u3084\u306f\u308a\u8d77\u52d5\u3067\u304d\u307e\u305b\u3093\uff0e
\nhttps://github.com/mkasberg/ghostty-ubuntu/tree/main/debian/patches

\n
\n
\n

reset\u3057\u3066\u3082\u3068\u306b\u623b\u3057\u3066\u4eca\u5ea6\u306f debian/rules \u3092\u53c2\u8003\u306b zig build \u3092\u8a66\u3057\u307e\u3057\u305f\u304c\u3053\u308c\u3082\u52d5\u4f5c\u5909\u308f\u3089\u305a\uff0e
\nhttps://github.com/mkasberg/ghostty-ubuntu/blob/main/debian/rules

\n
\n
\n

Ghostty\u306eIssue\u3092\u63a2\u3059\u3068\u307e\u3055\u306bDebian sid amd64\u3067\u306e\u56de\u7b54\u304c\u3042\u308a\u307e\u3057\u305f\uff0e
\n\u6700\u8fd1\u306epango\u306e\u66f4\u65b0\u3067\u5f15\u3063\u304b\u304b\u308b\u3088\u3046\u306b\u306a\u3063\u305f\u3088\u3046\u3067\u3059\uff0e\u4ee5\u4e0b\u306ebuild option\u3092\u6307\u5b9a\u3059\u308b\u3053\u3068\u3067\u56de\u907f\u3067\u304d\u308b\u3088\u3046\u3067\u3059\uff0e

\n
\n
\n
\n
\n

Upd: just build with -fsys=fontconfig parameter

\n
\n
\n
\n— Pull requests \u00b7 ghostty-org/ghostty\n
\n
\n
\n
-fsys=fontconfig \u3092\u4ed8\u4e0e\u3057\u3066build\u3057\u76f4\u3057
\n
\n
$ PATH=~/Downloads/zig-linux-x86_64-0.13.0/zig-linux-x86_64-0.13.0/:$PATH \\\n  zig build -Doptimize=ReleaseFast -fsys=fontconfig\n$ zig-out/bin/ghostty
\n
\n
\n
\n

\u52d5\u4f5c\u3059\u308b\u3088\u3046\u306b\u306a\u308a\u307e\u3057\u305f :)

\n
\n
\n

\"ghostty

\n
\n
\n
\u9069\u5f53\u306aPATH\u306e\u901a\u3063\u3066\u3044\u308b\u5834\u6240\u306bcp\u3057\u3066\u304a\u304f
\n
\n
$ rsync -av zig-out/* ~/usr/\n$ which ghostty\n/home/matoken/usr/bin/ghostty
\n
\n
\n
\n

\u3068\u3044\u3046\u3053\u3068\u3067\u6700\u8fd1\u306eDebian sid amd64\u74b0\u5883\u306a\u3069\u3067\u306f\u3057\u3070\u3089\u304f\u306fbuild\u30aa\u30d7\u30b7\u30e7\u30f3\u306b -fsys=fontconfig \u3092\u4ed8\u3051\u3066\u3042\u3052\u308b\u5fc5\u8981\u304c\u3042\u308a\u305d\u3046\u3067\u3059\uff0e

\n
\n
\n
\n
$ zig build -Doptimize=ReleaseFast
\n
\n
\n
\n

\u2193

\n
\n
\n
\n
$ zig build -Doptimize=ReleaseFast -fsys=fontconfig
\n
\n
\n
\n
\u74b0\u5883
\n
\n
$ zig-out/bin/ghostty --version\nGhostty 1.0.2-main+60611b8\n\nVersion\n  - version: 1.0.2-main+60611b8\n  - channel: tip\nBuild Config\n  - Zig version: 0.13.0\n  - build mode : builtin.OptimizeMode.ReleaseFast\n  - app runtime: apprt.Runtime.gtk\n  - font engine: font.main.Backend.fontconfig_freetype\n  - renderer   : renderer.OpenGL\n  - libxev     : main.Backend.io_uring\n  - GTK version:\n    build      : 4.16.7\n    runtime    : 4.16.7\n  - libadwaita : enabled\n    build      : 1.6.2\n    runtime    : 1.6.2\n  - libX11     : enabled\n$ dpkg-query -W libgtk-4-dev libadwaita-1-dev git\ngit     1:2.45.2-1.3\nlibadwaita-1-dev:amd64  1.6.2-1\nlibgtk-4-dev:amd64      4.16.7+ds-1\n$ dpkg-query -W libpango* gir1.2-pango-1.0 | grep -v i386\ngir1.2-pango-1.0:amd64  1.55.0+ds-3\nlibpango-1.0-0:amd64    1.55.0+ds-3\nlibpango1.0-dev:amd64   1.55.0+ds-3\nlibpango1.0-doc\nlibpangocairo-1.0-0:amd64       1.55.0+ds-3\nlibpangoft2-1.0-0:amd64 1.55.0+ds-3\nlibpangomm-1.4-1\nlibpangomm-1.4-1v5:amd64        2.46.4-1+b2\nlibpangomm-1.4-dev:amd64        2.46.4-1+b2\nlibpangomm-2.48-1\nlibpangomm-2.48-1t64:amd64      2.54.0-1\nlibpangoxft-1.0-0:amd64 1.55.0+ds-3\n$ lsb_release -dr\nDescription:    Debian GNU/Linux trixie/sid\nRelease:        n/a\n$ arch\nx86_64
\n
\n
\n", "content_text": "\u6700\u8fd11.0.0\u304c\u30ea\u30ea\u30fc\u30b9\u3055\u308c\u8a71\u984c\u306b\u306a\u3063\u3066\u3044\u308bGhostty\u3068\u3044\u3046\u30bf\u30fc\u30df\u30ca\u30eb\u30a8\u30df\u30e5\u30ec\u30fc\u30bf\u304c\u3042\u308a\u307e\u3059\uff0e\u6700\u8fd1Debian sid amd64\u74b0\u5883\u306eAlacritty\u306e\u4e0a\u3067Neovim+iBus Mozc\u3067\u65e5\u672c\u8a9e\u5165\u529b\u6642\u306b\u9045\u5ef6\u3057\u3066?\u65e5\u672c\u8a9e\u304c\u5165\u529b\u3055\u308c\u3066\u4f7f\u3044\u7269\u306b\u306a\u3089\u306a\u3044\u306e\u3082\u3042\u308a\u8a66\u3057\u3066\u307f\u3088\u3046\u3068\u601d\u3044\u307e\u3057\u305f\uff0e(mlterm\u3060\u3068\u5927\u4e08\u592b)\n\n\n\n\nGhostty\n\n\n\n\nDebian\u3067\u6b21\u56de\u306b\u52d5\u304f\u30d0\u30a4\u30ca\u30ea\u306f\u63d0\u4f9b\u3055\u308c\u3066\u3044\u307e\u305b\u3093\uff0eUbuntu\u306b\u3064\u3044\u3066\u306f\u7b2c\u4e09\u8005\u304c\u30d1\u30c3\u30b1\u30fc\u30b8\u3092\u63d0\u4f9b\u3055\u308c\u3066\u3044\u307e\u3059\uff0e(apt sources\u306f\u7121\u3044)\n\n\n\n\nBinaries and Packages – Install\n\n\n\nmkasberg/ghostty-ubuntu: Ubuntu (.deb) packages for Ghostty\n\n\n\n\n\n\n\n\u6050\u3089\u304fUbuntu\u7248\u306fDebian\u3067\u3082\u52d5\u4f5c\u3059\u308b\u3068\u601d\u3044\u307e\u3059\u304csource\u304b\u3089Build\u3057\u3066\u307f\u307e\u3057\u305f\uff0e\u5c11\u3057\u5d4c\u3063\u305f\u306e\u3067\u30e1\u30e2\u3057\u3066\u304a\u304d\u307e\u3059\uff0e\n\n\n\n\u624b\u9806\u306f\u4ee5\u4e0b\u306b\u66f8\u304b\u308c\u3066\u3044\u307e\u3059\uff0e\n\n\n\n\nBuild from Source – Install\n\n\n\n\n\u95a2\u9023\u30d1\u30c3\u30b1\u30fc\u30b8\u306e\u5c0e\u5165\n\n$ sudo apt install libgtk-4-dev libadwaita-1-dev git\n\n\n\nzig\u306e\u5c0e\u5165\n\n$ wget2 -c -v https://ziglang.org/download/0.13.0/zig-linux-x86_64-0.13.0.tar.xz \\\n https://ziglang.org/download/0.13.0/zig-linux-x86_64-0.13.0.tar.xz.minisig\nzig-linux-x86_64-0.1 100% [============================================================================================================================================>] 325 --.-KB/s\nzig-linux-x86_64-0.1 100% [============================================================================================================================================>] 44.90M 761.78KB/s\n [Files: 2 Bytes: 44.90M [553.07KB/s] Redirects: 0 Todo: 0 Errors: 0\n$ minisign -Vm ./zig-linux-x86_64-0.13.0.tar.xz -P 'RWSGOq2NVecA2UPNdBUZykf1CCb147pkmdtYxgb3Ti+JO/wCYvhbAb/U'\nSignature and comment signature verified\nTrusted comment: timestamp:1717729444 file:zig-linux-x86_64-0.13.0.tar.xz hashed\n\n\n\nzig\u3092fuse-archive\u3067mount(\u3082\u3057\u304f\u306ftar xf\u3067\u5c55\u958b)\n\n$ fuse-archive ./zig-linux-x86_64-0.13.0.tar.xz\n\n\n\nGhostty\u306esource\u5165\u624b\n\n$ git clone https://github.com/ghostty-org/ghostty\n$ cd ghostty\n\n\n\n\n\n\nNote\n\n\n\nfont\u306a\u3093\u304b\u3082\u540c\u68b1\u3055\u308c\u3066\u3044\u3066\u7d50\u69cb\u30b5\u30a4\u30ba\u304c\u5927\u304d\u304f --depth=1 \u3067\u3082clone\u306b\u5931\u6557\u3059\u308b\u306e\u3067\u30ea\u30e2\u30fc\u30c8\u3067clone\u3057\u3066rsync\u3057\u307e\u3057\u305f\uff0ereleases\u306esource archive\u304b\u3089\u5165\u624b\u3057\u3066\u3082\u3044\u3044\u304b\u3082\u3057\u308c\u307e\u305b\u3093\uff0e\n\n\n\n\n\u7d30\u3044\u56de\u7dda\u3067git clone\u306b\u5931\u6557 \u2013 matoken’s meme\n\n\n\n\n\n\n\n\nzig\u306bPATH\u3092\u901a\u3057\u3066Ghostty\u306ebuild\n\n$ PATH=~/Downloads/zig-linux-x86_64-0.13.0/zig-linux-x86_64-0.13.0/:$PATH \\\n zig build -Doptimize=ReleaseFast\n$ ls zig-out/bin/ghostty\nzig-out/bin/ghostty\n\n\n\n\n\n\nNote\n\n\n\nbuild\u6642\u306b\u4ee5\u4e0b\u306e\u30e1\u30c3\u30bb\u30fc\u30b8\u3067\u6570\u6642\u9593\u7d4c\u3063\u3066\u3082\u9032\u307e\u306a\u304f\u306a\u308a\u307e\u3057\u305f\uff0eCtrl+c\u3067\u4e2d\u65ad\u3057\u3066\u518d\u5ea6\u5b9f\u884c\u3059\u308b\u3053\u3068\u3067\u9032\u307f\u307e\u3057\u305f\uff0e\u6050\u3089\u304f\u56de\u7dda\u306e\u554f\u984c\uff0e\n\n\n\nCompile Build Script\n\u2514\u2500 [53/46] Fetch Packages\n \u251c\u2500 wuffs\n \u2514\u2500 iterm2_themes\n\n\n\n\n\n\n\nGhostty\u3092\u5b9f\u884c\u2026\u2026 Segmentation fault\n\n$ zig-out/bin/ghostty\ninfo: ghostty version=1.0.2-main+60611b8\ninfo: ghostty build optimize=ReleaseFast\ninfo: runtime=apprt.Runtime.gtk\ninfo: font_backend=font.main.Backend.fontconfig_freetype\ninfo: dependency harfbuzz=8.4.0\ninfo: dependency fontconfig=21402\ninfo: renderer=renderer.OpenGL\ninfo: libxev backend=main.Backend.io_uring\ninfo(os): setlocale from env result=ja_JP.UTF-8\ninfo(gtk): GTK version build=4.16.7 runtime=4.16.7\ninfo(config): creating template config file: path=/home/matoken/.config/ghostty/config\nwarning(config): error creating template config file err=error.FileNotFound\ninfo(config): default shell source=env value=/bin/bash\nwarning(sentry): crash report written to disk path=/home/matoken/.local/state/ghostty/crash/68ce5038-f588-4d61-ef88-4217099bbfc4.ghosttycrash\nEGL API version 1.5 found\n - Vendor: Mesa Project\n - Version: 1.5\n - Device: /dev/dri/renderD128, 226 128\n - Client APIs: OpenGL OpenGL_ES\n - Extensions:\n EGL_ANDROID_blob_cache\n EGL_ANDROID_native_fence_sync\n EGL_ANGLE_sync_control_rate\n EGL_CHROMIUM_sync_control\n EGL_EXT_buffer_age\n EGL_EXT_config_select_group\n EGL_EXT_create_context_robustness\n EGL_EXT_image_dma_buf_import\n EGL_EXT_image_dma_buf_import_modifiers\n EGL_EXT_pixel_format_float\n EGL_EXT_query_reset_notification_strategy\n EGL_EXT_surface_compression\n EGL_EXT_swap_buffers_with_damage\n EGL_IMG_context_priority\n EGL_KHR_cl_event2\n EGL_KHR_config_attribs\n EGL_KHR_context_flush_control\n EGL_KHR_create_context\n EGL_KHR_create_context_no_error\n EGL_KHR_fence_sync\n EGL_KHR_get_all_proc_addresses\n EGL_KHR_gl_colorspace\n EGL_KHR_gl_renderbuffer_image\n EGL_KHR_gl_texture_2D_image\n EGL_KHR_gl_texture_3D_image\n EGL_KHR_gl_texture_cubemap_image\n EGL_KHR_image\n EGL_KHR_image_base\n EGL_KHR_image_pixmap\n EGL_KHR_no_config_context\n EGL_KHR_reusable_sync\n EGL_KHR_surfaceless_context\n EGL_KHR_swap_buffers_with_damage\n EGL_KHR_wait_sync\n EGL_MESA_configless_context\n EGL_MESA_drm_image\n EGL_MESA_gl_interop\n EGL_MESA_image_dma_buf_export\n EGL_MESA_query_driver\n EGL_MESA_x11_native_visual_id\n EGL_NOK_texture_from_pixmap\n EGL_WL_bind_wayland_display\n - Selected fbconfig: R8G8B8A8, depth 0, stencil 0\n high depth: none\nCreating EGL context version 3.2 (debug:no, forward:no, legacy:no, es:no)\nUsing OpenGL backend EGL\ninfo(gtk): libadwaita version build=1.6.2 runtime=1.6.2\nerror(gtk): Read method failed: GDBus.Error:org.freedesktop.DBus.Error.UnknownMethod: No such interface \u201corg.freedesktop.portal.Settings\u201d on object at path /org/freedesktop/portal/desktop\nCreating EGL context version 3.2 (debug:no, forward:no, legacy:no, es:no)\nOpenGL version: 4.6 (core)\nGLSL version: 4.60\nMax texture size: 16384\nEnabled features (use GDK_GL_DISABLE env var to disable):\n debug: \u2713\n unpack-subimage: \u2713\n half-float: \u2713\n sync: \u2713\n base-instance: \u2713\n buffer-storage: \u2713\nOpenGL version: 4.6 (core)\nGLSL version: 4.60\nMax texture size: 16384\nEnabled features (use GDK_GL_DISABLE env var to disable):\n debug: \u2713\n unpack-subimage: \u2713\n half-float: \u2713\n sync: \u2713\n base-instance: \u2713\n buffer-storage: \u2713\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.441: GtkImage 0x31a0b830 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.441: GtkImage 0x31a09b60 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.441: GtkImage 0x319c7740 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.442: GtkImage 0x31a79170 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.442: GtkImage 0x31a754f0 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.442: GtkImage 0x31a7b370 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.443: GtkImage 0x318aed70 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.443: GtkImage 0x31a812a0 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.443: GtkImage 0x31a80400 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.444: GtkImage 0x31a83150 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.444: GtkImage 0x319bb340 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.455: GtkImage 0x33e3da10 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.\nCreating EGL context version 3.3 (debug:no, forward:no, legacy:no, es:no)\nOpenGL version: 4.6 (core)\nGLSL version: 4.60\nMax texture size: 16384\nEnabled features (use GDK_GL_DISABLE env var to disable):\n debug: \u2713\n unpack-subimage: \u2713\n half-float: \u2713\n sync: \u2713\n base-instance: \u2713\n buffer-storage: \u2713\ninfo(grid): loaded OpenGL 4.6\ninfo(io_exec): found Ghostty resources dir: /home/matoken/src/ghostty/zig-out/share/ghostty\ninfo(io_exec): shell integration automatically injected shell=termio.shell_integration.Shell.bash\nwarning(gtk): unimplemented action=apprt.action.Action.Key.cell_size\nwarning(gtk): unimplemented action=apprt.action.Action.Key.size_limit\ninfo(io_exec): started subcommand path=/bin/sh pid=3475569\ninfo(io_exec): subcommand cgroup=-\nerror(gtk): Read method failed: GDBus.Error:org.freedesktop.DBus.Error.UnknownMethod: No such interface \u201corg.freedesktop.portal.Settings\u201d on object at path /org/freedesktop/portal/desktop\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.490: GtkImage 0x33e52760 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.498: GtkImage 0x31a7b370 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.498: GtkImage 0x342b77c0 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.498: GtkImage 0x342b84c0 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.498: GtkImage 0x31a7f490 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.498: GtkImage 0x31a80400 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.499: GtkImage 0x31a821f0 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.506: GtkImage 0x31a7b370 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.506: GtkImage 0x342b77c0 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.506: GtkImage 0x342b84c0 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.506: GtkImage 0x33e52760 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.506: GtkImage 0x31a7f490 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.506: GtkImage 0x31a80400 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.506: GtkImage 0x31a821f0 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.506: GtkImage 0x33e3da10 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.509: fb setup not supported (8cd6)\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.524: fb setup not supported (8cd6)\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.550: fb setup not supported (8cd6)\n\n(ghostty:3475525): GLib-GObject-CRITICAL **: 02:44:03.634: g_object_ref: assertion 'G_IS_OBJECT (object)' failed\n\n(ghostty:3475525): GLib-GObject-CRITICAL **: 02:44:03.634: g_object_ref: assertion 'G_IS_OBJECT (object)' failed\nSegmentation fault\n\n\n\nSegmentation fault\u306b\u306a\u3063\u3066\u3057\u307e\u3044\u307e\u3059\uff0e\u30a8\u30e9\u30fc\u30e1\u30c3\u30bb\u30fc\u30b8\u3067\u691c\u7d22\u3057\u3066\u4ee5\u4e0b\u306eIssue\u3092\u898b\u3064\u3051\u307e\u3057\u305f\uff0e\n\n\n\n\nDupe, best guess currently is a GTK bug. Please search to find similar discussions (not issues).\n\n\n\n— Fail to run binary on Debian/Cinnamon \u00b7 Issue #3370 \u00b7 ghostty-org/ghostty\n\n\n\nGTK\u306ebug\u3067\u306f\u3068\u306e\u3053\u3068\u3067\u3059\u304cUbuntu\u7248\u304c\u3042\u308b\u306e\u3067\u305d\u3061\u3089\u3067\u306f\u3069\u3046\u306a\u3063\u3066\u308b\u306e\u3060\u308d\u3046\u3068.deb\u3092\u5165\u624b\u3057\u3066\u8a66\u3057\u3066\u307f\u307e\u3059\uff0e\n\n\nUbuntu\u5411\u3051Ghostty\u306e.deb\u3092\u5165\u624b\u3057\u3066archive\u3092mount\u3057\u3066\u5b9f\u884c\n\n$ wget2 -c -v https://github.com/mkasberg/ghostty-ubuntu/releases/download/1.0.1-0-ppa1/ghostty_1.0.1-0.ppa1_amd64_24.10.deb (1)\n0 files 0% [<=> ] 0 B/s\n [Files: 0 Bytes: 0 [0 B/s] Redirects: 1 Todo: 0 Errors: 1\n$ fuse-archive ghostty_1.0.1-0.ppa1_amd64_24.10.deb (2)\nfuse-archive: Created mount point 'ghostty_1.0.1-0.ppa1_amd64_24.10'\n$ fuse-archive ghostty_1.0.1-0.ppa1_amd64_24.10/data.tar.zst ~/fuse/tmp (3)\nfuse-archive: Using existing mount point '/home/matoken/fuse/tmp'\n$ /home/matoken/fuse/tmp/usr/bin/ghostty (4)\n\n\n\n\n\n\u4e00\u756a\u74b0\u5883\u306e\u8fd1\u305d\u3046\u306aUbuntu 22.10 amd64\u7248\u3092\u5165\u624b\n\n\nfuse-archive\u3067mount(\u3082\u3057\u304f\u306funar\u30b3\u30de\u30f3\u30c9\u306a\u3069\u3067\u5c55\u958b)\n\n\nfuse-archive\u3067\u9069\u5f53\u306a\u5834\u6240\u306bdata.tar\u3092mount(\u3082\u3057\u304f\u306ftar xf\u306a\u3069\u3067\u5c55\u958b)\n\n\nGhostty\u3092\u5b9f\u884c\n\n\n\n\nUbuntu\u5411\u3051Ghostty\u306f\u8d77\u52d5\u3057\u307e\u3057\u305f\uff0e\ndebian/patches\u3092\u8997\u304f\u30681\u3064patch\u304c\u3042\u308a\u307e\u3059\u304c\u95a2\u4fc2\u304c\u7121\u3055\u305d\u3046\uff0e\u8a66\u3057\u306b 000-libbz2.patch \u3092\u9069\u7528\u3057\u3066\u307f\u307e\u3057\u305f\u304c\u3084\u306f\u308a\u8d77\u52d5\u3067\u304d\u307e\u305b\u3093\uff0e\nhttps://github.com/mkasberg/ghostty-ubuntu/tree/main/debian/patches\n\n\nreset\u3057\u3066\u3082\u3068\u306b\u623b\u3057\u3066\u4eca\u5ea6\u306f debian/rules \u3092\u53c2\u8003\u306b zig build \u3092\u8a66\u3057\u307e\u3057\u305f\u304c\u3053\u308c\u3082\u52d5\u4f5c\u5909\u308f\u3089\u305a\uff0e\nhttps://github.com/mkasberg/ghostty-ubuntu/blob/main/debian/rules\n\n\nGhostty\u306eIssue\u3092\u63a2\u3059\u3068\u307e\u3055\u306bDebian sid amd64\u3067\u306e\u56de\u7b54\u304c\u3042\u308a\u307e\u3057\u305f\uff0e\n\u6700\u8fd1\u306epango\u306e\u66f4\u65b0\u3067\u5f15\u3063\u304b\u304b\u308b\u3088\u3046\u306b\u306a\u3063\u305f\u3088\u3046\u3067\u3059\uff0e\u4ee5\u4e0b\u306ebuild option\u3092\u6307\u5b9a\u3059\u308b\u3053\u3068\u3067\u56de\u907f\u3067\u304d\u308b\u3088\u3046\u3067\u3059\uff0e\n\n\n\n\nUpd: just build with -fsys=fontconfig parameter\n\n\n\n— Pull requests \u00b7 ghostty-org/ghostty\n\n\n\n-fsys=fontconfig \u3092\u4ed8\u4e0e\u3057\u3066build\u3057\u76f4\u3057\n\n$ PATH=~/Downloads/zig-linux-x86_64-0.13.0/zig-linux-x86_64-0.13.0/:$PATH \\\n zig build -Doptimize=ReleaseFast -fsys=fontconfig\n$ zig-out/bin/ghostty\n\n\n\n\u52d5\u4f5c\u3059\u308b\u3088\u3046\u306b\u306a\u308a\u307e\u3057\u305f :)\n\n\n\n\n\n\u9069\u5f53\u306aPATH\u306e\u901a\u3063\u3066\u3044\u308b\u5834\u6240\u306bcp\u3057\u3066\u304a\u304f\n\n$ rsync -av zig-out/* ~/usr/\n$ which ghostty\n/home/matoken/usr/bin/ghostty\n\n\n\n\u3068\u3044\u3046\u3053\u3068\u3067\u6700\u8fd1\u306eDebian sid amd64\u74b0\u5883\u306a\u3069\u3067\u306f\u3057\u3070\u3089\u304f\u306fbuild\u30aa\u30d7\u30b7\u30e7\u30f3\u306b -fsys=fontconfig \u3092\u4ed8\u3051\u3066\u3042\u3052\u308b\u5fc5\u8981\u304c\u3042\u308a\u305d\u3046\u3067\u3059\uff0e\n\n\n\n$ zig build -Doptimize=ReleaseFast\n\n\n\n\u2193\n\n\n\n$ zig build -Doptimize=ReleaseFast -fsys=fontconfig\n\n\n\n\u74b0\u5883\n\n$ zig-out/bin/ghostty --version\nGhostty 1.0.2-main+60611b8\n\nVersion\n - version: 1.0.2-main+60611b8\n - channel: tip\nBuild Config\n - Zig version: 0.13.0\n - build mode : builtin.OptimizeMode.ReleaseFast\n - app runtime: apprt.Runtime.gtk\n - font engine: font.main.Backend.fontconfig_freetype\n - renderer : renderer.OpenGL\n - libxev : main.Backend.io_uring\n - GTK version:\n build : 4.16.7\n runtime : 4.16.7\n - libadwaita : enabled\n build : 1.6.2\n runtime : 1.6.2\n - libX11 : enabled\n$ dpkg-query -W libgtk-4-dev libadwaita-1-dev git\ngit 1:2.45.2-1.3\nlibadwaita-1-dev:amd64 1.6.2-1\nlibgtk-4-dev:amd64 4.16.7+ds-1\n$ dpkg-query -W libpango* gir1.2-pango-1.0 | grep -v i386\ngir1.2-pango-1.0:amd64 1.55.0+ds-3\nlibpango-1.0-0:amd64 1.55.0+ds-3\nlibpango1.0-dev:amd64 1.55.0+ds-3\nlibpango1.0-doc\nlibpangocairo-1.0-0:amd64 1.55.0+ds-3\nlibpangoft2-1.0-0:amd64 1.55.0+ds-3\nlibpangomm-1.4-1\nlibpangomm-1.4-1v5:amd64 2.46.4-1+b2\nlibpangomm-1.4-dev:amd64 2.46.4-1+b2\nlibpangomm-2.48-1\nlibpangomm-2.48-1t64:amd64 2.54.0-1\nlibpangoxft-1.0-0:amd64 1.55.0+ds-3\n$ lsb_release -dr\nDescription: Debian GNU/Linux trixie/sid\nRelease: n/a\n$ arch\nx86_64", "date_published": "2025-01-02T07:08:00+09:00", "date_modified": "2025-01-02T06:46:34+09:00", "authors": [ { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" } ], "author": { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" }, "tags": [ "3370", "Ghostty", "terminal", "terminal emulator", "zig", "Debian", "Linux", "sid" ] }, { "id": "https://matoken.org/blog/?p=4170", "url": "https://matoken.org/blog/2024/10/22/convert-terminal-results-to-html-with-terminal-to-html-command/", "title": "terminal-to-html\u30b3\u30de\u30f3\u30c9\u3067\u7aef\u672b\u306e\u7d50\u679c\u3092HTML\u306b\u5909\u63db\u3059\u308b", "content_html": "

\n
\n

\u5148\u65e5 aha \u3068\u3044\u3046\u30b3\u30de\u30f3\u30c9\u3092\u8a66\u3057\u307e\u3057\u305f\u304c\uff0c\u4eca\u56de terminal-to-html \u3068\u3044\u3046\u4f3c\u305f\u30b3\u30de\u30f3\u30c9\u3092\u8a66\u3057\u3066\u307f\u307e\u3057\u305f\uff0e

\n
\n
\n\n
\n

\n
\n
\u5c0e\u5165\u3068help
\n
\n
$ go install github.com/buildkite/terminal-to-html/v3/cmd/terminal-to-html@latest\n$ which terminal-to-html\n/home/matoken/go/bin/terminal-to-html\n$ terminal-to-html --help\nterminal-to-html - turn ANSI in to HTML\n\nSTDIN/STDOUT USAGE:\n  cat input.raw | terminal-to-html [arguments...] > out.html\n\nWEBSERVICE USAGE:\n  terminal-to-html --http :6060 &\n  curl --data-binary \"@input.raw\" http://localhost:6060/terminal > out.html\n\nOPTIONS:\n  --http value              HTTP service mode (eg --http :6060), endpoint is /terminal\n  --preview                 wrap output in HTML & CSS so it can be easily viewed directly in a browser (default: false)\n  --log-stats-to-stderr     Logs a JSON object to stderr containing resource and processing statistics after successfully processing (default: false)\n  --buffer-max-lines value  Sets a limit on the number of lines to hold in the screen buffer (and also limits the possible window height), allowing the renderer to operate in a streaming fashion and enabling the processing of large inputs. Setting to 0 disables the limit, causing the renderer to buffer the entire screen before producing any output (default: 300)\n  --window-max-cols value   Sets an upper bound on the window width (which may change based on input). Window size mainly affects cursor movement sequences (default: 400)\n  --window-cols value       Sets the initial window width. Window size mainly affects cursor movement sequences (default: 160)\n  --window-lines value      Sets the initial window height. Window size mainly affects cursor movement sequences (default: 100)\n  --help, -h                show help\n  --version, -v             print the version
\n
\n
\n
\n

\u65e9\u901f\u5b9f\u884c\u3057\u3066\u307f\u307e\u3059\uff0e\u65e2\u5b9a\u5024\u3067\u306f\u30d8\u30c3\u30c0\u30fc\u3084\u30d5\u30c3\u30bf\u30fc\u306f\u4ed8\u304b\u306a\u3044\u3088\u3046\u3067\u3059\uff0e

\n
\n
\n
\n
$ cowsay hello terminal | terminal-to-html\n ________________\n&lt; hello terminal &gt;\n ----------------\n        \\   ^__^\n         \\  (oo)\\_______\n            (__)\\       )\\&#47;\\\n                ||----w |\n                ||     ||
\n
\n
\n
\n

\u6b21\u306b --preview option \u3092\u8a66\u3057\u307e\u3059\uff0eHTML \u3068 CSS \u3067\u30e9\u30c3\u30d7\u3057\u3066\u304f\u308c\u307e\u3059\uff0eaha \u30b3\u30de\u30f3\u30c9\u3067\u306f\u8868\u73fe\u3055\u308c\u306a\u304b\u3063\u305f cow \u306e\u3057\u3063\u307d\u306e\u70b9\u6ec5\u3082\u518d\u73fe\u3067\u304d\u3066\u3044\u307e\u3059\uff0e
\n\u3057\u304b\u3057\u3053\u3053\u306b HTML \u3092\u8cbc\u308a\u4ed8\u3051\u305f\u3089 WprdPress \u3068\u5e72\u6e09\u3057\u3066\u8272\u30b3\u30fc\u30c9\u304c\u4e0b\u90e8\u306e\u30bf\u30b0\u306b\u306a\u3063\u305f\u308a\u6539\u884c\u304c\u5165\u3063\u3066\u3057\u307e\u3063\u305f\u308a\u3068\u3072\u3069\u3044\u3053\u3068\u306b\u306a\u3063\u305f\u306e\u3067\u3068\u308a\u3042\u3048\u305a\u9759\u6b62\u753b\u3067\u3059\uff0e\u3061\u306a\u307f\u306b Asciidoctor Reveal.js \u3078\u306f\u7dba\u9e97\u306b\u8cbc\u308a\u4ed8\u3051\u3067\u304d\u307e\u3057\u305f\uff0e

\n
\n
\n
\n
$ unbuffer apt moo moo | terminal-to-html --preview | xsel
\n
\n
\n
\n

\"terminal

\n
\n
\n

\u6b21\u306b\u30a6\u30a7\u30d6\u30b5\u30fc\u30d3\u30b9\u3068\u3057\u3066\u52d5\u304b\u3057\u3066\u307f\u307e\u3059\uff0ehttp \u7d4c\u7531\u3067\u5909\u63db\u304c\u3067\u304d\u307e\u3059\uff0e

\n
\n
\n
\n
$ terminal-to-html --http :6060 &\n$ cowsay hello > input.raw\n$ curl --data-binary \"@input.raw\" http://localhost:6060/terminal\n _______\n&lt; hello &gt;\n -------\n        \\   ^__^\n         \\  (oo)\\_______\n            (__)\\       )\\&#47;\\\n                ||----w |\n                ||     ||\n$ kill %1\n$ terminal-to-html --preview --http :6060 &\n$ curl --data-binary \"@input.raw\" http://localhost:6060/terminal | head\n  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current\n                                 Dload  Upload   Total   Spent    Left  Speed\n100     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0\n1<!DOCTYPE html>\n0<html>\n1       <head>\n5               <meta charset=\"UTF-8\">\n6               <title>terminal-to-html Preview</title>\n                <style>.term-container {\n   background: #171717;\n1  border-radius: 5px;\n0  color: white;\n0 10005  100   151  6211k  95994 --:--:-- --:--:-- --:--:-- 9917k\ncurl: Failed writing body
\n
\n
\n
\n

aha \u306e\u65b9\u304c HTML \u5909\u63db\u306e\u30aa\u30d7\u30b7\u30e7\u30f3\u304c\u591a\u3044\u3051\u3069\uff0cterminal-to-html \u306f http server \u6628\u65e5\u304c\u5408\u3063\u305f\u308a\u3068\u30e6\u30cb\u30fc\u30af\u306a\u90e8\u5206\u3082\uff0e\u597d\u307f\u3067\u4f7f\u3044\u5206\u3051\u308b\u3068\u826f\u3055\u305d\u3046\u3067\u3059\uff0e

\n
\n
\n
\u74b0\u5883
\n
\n
$ terminal-to-html --version\nterminal-to-html version 3.16.3\n$ dpkg-query -W golang curl\ncurl    8.10.1-2\ngolang:amd64    2:1.23~2\n$ lsb_release -dr\nDescription:    Debian GNU/Linux trixie/sid\nRelease:        n/a\n$ arch\nx86_64
\n
\n
\n", "content_text": "\u5148\u65e5 aha \u3068\u3044\u3046\u30b3\u30de\u30f3\u30c9\u3092\u8a66\u3057\u307e\u3057\u305f\u304c\uff0c\u4eca\u56de terminal-to-html \u3068\u3044\u3046\u4f3c\u305f\u30b3\u30de\u30f3\u30c9\u3092\u8a66\u3057\u3066\u307f\u307e\u3057\u305f\uff0e\n\n\n\n\nbuildkite/terminal-to-html: Converts arbitrary shell output (with ANSI) into beautifully rendered HTML\n\n\n\u30b3\u30de\u30f3\u30c9\u7d50\u679c\u306a\u3069\u3092html\u306b\u5909\u63db\u3057\u3066\u304f\u308c\u308baha \u2013 matoken’s meme\n\n\n\n\n\n\u5c0e\u5165\u3068help\n\n$ go install github.com/buildkite/terminal-to-html/v3/cmd/terminal-to-html@latest\n$ which terminal-to-html\n/home/matoken/go/bin/terminal-to-html\n$ terminal-to-html --help\nterminal-to-html - turn ANSI in to HTML\n\nSTDIN/STDOUT USAGE:\n cat input.raw | terminal-to-html [arguments...] > out.html\n\nWEBSERVICE USAGE:\n terminal-to-html --http :6060 &\n curl --data-binary \"@input.raw\" http://localhost:6060/terminal > out.html\n\nOPTIONS:\n --http value HTTP service mode (eg --http :6060), endpoint is /terminal\n --preview wrap output in HTML & CSS so it can be easily viewed directly in a browser (default: false)\n --log-stats-to-stderr Logs a JSON object to stderr containing resource and processing statistics after successfully processing (default: false)\n --buffer-max-lines value Sets a limit on the number of lines to hold in the screen buffer (and also limits the possible window height), allowing the renderer to operate in a streaming fashion and enabling the processing of large inputs. Setting to 0 disables the limit, causing the renderer to buffer the entire screen before producing any output (default: 300)\n --window-max-cols value Sets an upper bound on the window width (which may change based on input). Window size mainly affects cursor movement sequences (default: 400)\n --window-cols value Sets the initial window width. Window size mainly affects cursor movement sequences (default: 160)\n --window-lines value Sets the initial window height. Window size mainly affects cursor movement sequences (default: 100)\n --help, -h show help\n --version, -v print the version\n\n\n\n\u65e9\u901f\u5b9f\u884c\u3057\u3066\u307f\u307e\u3059\uff0e\u65e2\u5b9a\u5024\u3067\u306f\u30d8\u30c3\u30c0\u30fc\u3084\u30d5\u30c3\u30bf\u30fc\u306f\u4ed8\u304b\u306a\u3044\u3088\u3046\u3067\u3059\uff0e\n\n\n\n$ cowsay hello terminal | terminal-to-html\n ________________\n&lt; hello terminal &gt;\n ----------------\n \\ ^__^\n \\ (oo)\\_______\n (__)\\ )\\&#47;\\\n ||----w |\n || ||\n\n\n\n\u6b21\u306b --preview option \u3092\u8a66\u3057\u307e\u3059\uff0eHTML \u3068 CSS \u3067\u30e9\u30c3\u30d7\u3057\u3066\u304f\u308c\u307e\u3059\uff0eaha \u30b3\u30de\u30f3\u30c9\u3067\u306f\u8868\u73fe\u3055\u308c\u306a\u304b\u3063\u305f cow \u306e\u3057\u3063\u307d\u306e\u70b9\u6ec5\u3082\u518d\u73fe\u3067\u304d\u3066\u3044\u307e\u3059\uff0e\n\u3057\u304b\u3057\u3053\u3053\u306b HTML \u3092\u8cbc\u308a\u4ed8\u3051\u305f\u3089 WprdPress \u3068\u5e72\u6e09\u3057\u3066\u8272\u30b3\u30fc\u30c9\u304c\u4e0b\u90e8\u306e\u30bf\u30b0\u306b\u306a\u3063\u305f\u308a\u6539\u884c\u304c\u5165\u3063\u3066\u3057\u307e\u3063\u305f\u308a\u3068\u3072\u3069\u3044\u3053\u3068\u306b\u306a\u3063\u305f\u306e\u3067\u3068\u308a\u3042\u3048\u305a\u9759\u6b62\u753b\u3067\u3059\uff0e\u3061\u306a\u307f\u306b Asciidoctor Reveal.js \u3078\u306f\u7dba\u9e97\u306b\u8cbc\u308a\u4ed8\u3051\u3067\u304d\u307e\u3057\u305f\uff0e\n\n\n\n$ unbuffer apt moo moo | terminal-to-html --preview | xsel\n\n\n\n\n\n\n\u6b21\u306b\u30a6\u30a7\u30d6\u30b5\u30fc\u30d3\u30b9\u3068\u3057\u3066\u52d5\u304b\u3057\u3066\u307f\u307e\u3059\uff0ehttp \u7d4c\u7531\u3067\u5909\u63db\u304c\u3067\u304d\u307e\u3059\uff0e\n\n\n\n$ terminal-to-html --http :6060 &\n$ cowsay hello > input.raw\n$ curl --data-binary \"@input.raw\" http://localhost:6060/terminal\n _______\n&lt; hello &gt;\n -------\n \\ ^__^\n \\ (oo)\\_______\n (__)\\ )\\&#47;\\\n ||----w |\n || ||\n$ kill %1\n$ terminal-to-html --preview --http :6060 &\n$ curl --data-binary \"@input.raw\" http://localhost:6060/terminal | head\n % Total % Received % Xferd Average Speed Time Time Time Current\n Dload Upload Total Spent Left Speed\n100 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0\n1<!DOCTYPE html>\n0<html>\n1 <head>\n5 <meta charset=\"UTF-8\">\n6 <title>terminal-to-html Preview</title>\n <style>.term-container {\n background: #171717;\n1 border-radius: 5px;\n0 color: white;\n0 10005 100 151 6211k 95994 --:--:-- --:--:-- --:--:-- 9917k\ncurl: Failed writing body\n\n\n\naha \u306e\u65b9\u304c HTML \u5909\u63db\u306e\u30aa\u30d7\u30b7\u30e7\u30f3\u304c\u591a\u3044\u3051\u3069\uff0cterminal-to-html \u306f http server \u6628\u65e5\u304c\u5408\u3063\u305f\u308a\u3068\u30e6\u30cb\u30fc\u30af\u306a\u90e8\u5206\u3082\uff0e\u597d\u307f\u3067\u4f7f\u3044\u5206\u3051\u308b\u3068\u826f\u3055\u305d\u3046\u3067\u3059\uff0e\n\n\n\u74b0\u5883\n\n$ terminal-to-html --version\nterminal-to-html version 3.16.3\n$ dpkg-query -W golang curl\ncurl 8.10.1-2\ngolang:amd64 2:1.23~2\n$ lsb_release -dr\nDescription: Debian GNU/Linux trixie/sid\nRelease: n/a\n$ arch\nx86_64", "date_published": "2024-10-22T07:33:58+09:00", "date_modified": "2024-10-22T08:09:16+09:00", "authors": [ { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" } ], "author": { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" }, "tags": [ "171717", "aha", "terminal", "terminal-to-html", "Debian", "Linux", "sid" ] }, { "id": "https://matoken.org/blog/?p=4107", "url": "https://matoken.org/blog/2024/10/05/tmux-3-5-release/", "title": "tmux 3.5 release", "content_html": "

\n
\n

tmux 3.5 \u304c\u30ea\u30ea\u30fc\u30b9\u3055\u308c\u307e\u3057\u305f\u3002

\n
\n
\n\n
\n

\n
\n

\u65e9\u901fbuild \u3057\u307e\u3059\u3002

\n
\n
\n
\n
$ sudo apt build-dep tmux (1)\n$ sudo apt install libjemalloc-dev (2)\n$ git clone https://github.com/tmux/tmux\n$ cd tmux\n$ git checkout 3.5\n$ ./configure --enable-sixel \\ (3)\n              --enable-jemalloc \\ (4)\n              --prefix=$HOME/local (5)\n$ make\n$ make install\n$ which tmux\n/home/matoken/local/bin/tmux\n$ tmux -V\ntmux 3.5
\n
\n
\n
\n
    \n
  1. \n

    tmux \u306e build \u306b\u5fc5\u8981\u306a\u30d1\u30c3\u30b1\u30fc\u30b8\u3092\u5c0e\u5165

    \n
  2. \n
  3. \n

    tmux 3.5 \u3067\u65b0\u3057\u304f\u5229\u7528\u3067\u304d\u308b\u3088\u3046\u306b\u306a\u3063\u305f --enable-jemalloc \u306e\u305f\u3081\u306e\u30d1\u30c3\u30b1\u30fc\u30b8\u5c0e\u5165

    \n
  4. \n
  5. \n

    sixel \u3092\u6709\u52b9\u306b\u3059\u308b

    \n
  6. \n
  7. \n

    jemalloc \u3092\u6709\u52b9\u306b\u3059\u308b

    \n
  8. \n
  9. \n

    \u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u5834\u6240\u3092\u6307\u5b9a

    \n
  10. \n
\n
\n
\n

\u6570\u65e5\u4f7f\u3063\u3066\u3044\u307e\u3059\u304c\u554f\u984c\u7121\u3055\u305d\u3046\u3067\u3059\u3002

\n
\n
\n

\u3057\u304b\u3057\u3001tmux 3.5 \u306f\u65e9\u304b\u3063\u305f\u3067\u3059\u306d\u3002\u305d\u3046\u3044\u3048\u3070 GNU screen 5.0.0 \u3082\u6700\u8fd1\u51fa\u307e\u3057\u305f\u3002

\n
\n
\n\n\n\n\n\n
\n
Note
\n
\n
\n
\n
\n

tmux 3.3a: 2022-01-09
\ntmux 3.4: 2024-02-13
\nGNU screen 5.0.0: 2024-08-29
\ntmux 3.5: 2024-09-27

\n
\n
\n
\n
\n
\n
\n
\u74b0\u5883
\n
\n
$ tmux -V\ntmux 3.5\n$ lsb_release -dr\nDescription:    Debian GNU/Linux trixie/sid\nRelease:        n/a\n$ arch\nx86_64
\n
\n
\n", "content_text": "tmux 3.5 \u304c\u30ea\u30ea\u30fc\u30b9\u3055\u308c\u307e\u3057\u305f\u3002\n\n\n\n\nRelease tmux 3.5 \u00b7 tmux/tmux\n\n\nCHANGES file\n\n\n\n\n\n\u65e9\u901fbuild \u3057\u307e\u3059\u3002\n\n\n\n$ sudo apt build-dep tmux (1)\n$ sudo apt install libjemalloc-dev (2)\n$ git clone https://github.com/tmux/tmux\n$ cd tmux\n$ git checkout 3.5\n$ ./configure --enable-sixel \\ (3)\n --enable-jemalloc \\ (4)\n --prefix=$HOME/local (5)\n$ make\n$ make install\n$ which tmux\n/home/matoken/local/bin/tmux\n$ tmux -V\ntmux 3.5\n\n\n\n\n\ntmux \u306e build \u306b\u5fc5\u8981\u306a\u30d1\u30c3\u30b1\u30fc\u30b8\u3092\u5c0e\u5165\n\n\ntmux 3.5 \u3067\u65b0\u3057\u304f\u5229\u7528\u3067\u304d\u308b\u3088\u3046\u306b\u306a\u3063\u305f --enable-jemalloc \u306e\u305f\u3081\u306e\u30d1\u30c3\u30b1\u30fc\u30b8\u5c0e\u5165\n\n\nsixel \u3092\u6709\u52b9\u306b\u3059\u308b\n\n\njemalloc \u3092\u6709\u52b9\u306b\u3059\u308b\n\n\n\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u5834\u6240\u3092\u6307\u5b9a\n\n\n\n\n\u6570\u65e5\u4f7f\u3063\u3066\u3044\u307e\u3059\u304c\u554f\u984c\u7121\u3055\u305d\u3046\u3067\u3059\u3002\n\n\n\u3057\u304b\u3057\u3001tmux 3.5 \u306f\u65e9\u304b\u3063\u305f\u3067\u3059\u306d\u3002\u305d\u3046\u3044\u3048\u3070 GNU screen 5.0.0 \u3082\u6700\u8fd1\u51fa\u307e\u3057\u305f\u3002\n\n\n\n\n\nNote\n\n\n\n\n\ntmux 3.3a: 2022-01-09\ntmux 3.4: 2024-02-13\nGNU screen 5.0.0: 2024-08-29\ntmux 3.5: 2024-09-27\n\n\n\n\n\n\n\n\n\u74b0\u5883\n\n$ tmux -V\ntmux 3.5\n$ lsb_release -dr\nDescription: Debian GNU/Linux trixie/sid\nRelease: n/a\n$ arch\nx86_64", "date_published": "2024-10-05T05:51:00+09:00", "date_modified": "2024-10-05T04:56:57+09:00", "authors": [ { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" } ], "author": { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" }, "tags": [ "terminal", "tmux", "Debian", "Linux", "sid", "\u672a\u5206\u985e" ] }, { "id": "https://matoken.org/blog/?p=3954", "url": "https://matoken.org/blog/2024/01/05/sixel-with-ttyd/", "title": "ttyd \u3067Sixel", "content_html": "
\n

\u4ee5\u524d\u8a66\u3057\u305f\u30bf\u30fc\u30df\u30ca\u30eb\u3092Web\u3067\u5171\u6709\u3067\u304d\u308bttyd \u306eSixel \u306e\u5bfe\u5fdc\u72b6\u6cc1\u3092\u78ba\u8a8d\u3057\u3066\u307f\u308b\u30681\u3064\u524d\u306e\u30ea\u30ea\u30fc\u30b9\u306e 1,7.3 \u3067\u5bfe\u5fdc\u3057\u3066\u3044\u308b\u3088\u3046\u306a\u306e\u3067\u5c11\u3057\u8a66\u3057\u3066\u307f\u307e\u3057\u305f\uff0e

\n
\n
\n
Release 1.7.3 \u00b7 tsl0922/ttyd
\n
\n
\n

Sixel support is off by default now, use -t enableSixel=true to enable it.

\n
\n
\n
\n
\n\n
\n

\n
\n

\u4ee5\u524d\u8a66\u3057\u305f\u6642\u306e\u8a18\u4e8b\uff0e
\n* \u7aef\u672b\u3092Web\u5171\u6709\u3067\u304d\u308bttyd \u2013 matoken\u2019s meme

\n
\n
\n

\u30aa\u30f3\u30e9\u30a4\u30f3\u3067ttyd \u3092\u4f7f\u3044\u30d7\u30ec\u30bc\u30f3\u30c6\u30fc\u30b7\u30e7\u30f3\u3092\u8a66\u307f\u305f\u6642\u306e\u30b9\u30e9\u30a4\u30c9\uff0e
\n* Terminal\u3068\u30a6\u30a7\u30d6\u30d6\u30e9\u30a6\u30b6\u3067\u30d7\u30ec\u30bc\u30f3\u30c6\u30fc\u30b7\u30e7\u30f3\u306e\u8a66\u307f – Speaker Deck

\n
\n
\n

GitHub \u306eRelease \u306bbinary \u304c\u3042\u308b\u3051\u3069source \u304b\u3089Build \u3057\u3066\u307f\u307e\u3057\u305f\uff0e

\n
\n
\n
build
\n
\n
$ sudo apt install build-essential cmake git libjson-c-dev libwebsockets-dev\n$ git clone https://github.com/tsl0922/ttyd.git\n$ cd ttyd && mkdir build && cd build\n$ cmake ..\n$ make && make install\n$ ./ttyd --version\nttyd version 1.7.4-fd280fe\n$ ./ttyd\nttyd is a tool for sharing terminal over the web\n\nUSAGE:\n    ttyd [options] <command> [<arguments...>]\n\nVERSION:\n    1.7.4-fd280fe\n\nOPTIONS:\n    -p, --port              Port to listen (default: 7681, use `0` for random port)\n    -i, --interface         Network interface to bind (eg: eth0), or UNIX domain socket path (eg: /var/run/ttyd.sock)\n    -U, --socket-owner      User owner of the UNIX domain socket file, when enabled (eg: user:group)\n    -c, --credential        Credential for basic authentication (format: username:password)\n    -H, --auth-header       HTTP Header name for auth proxy, this will configure ttyd to let a HTTP reverse proxy handle authentication\n    -u, --uid               User id to run with\n    -g, --gid               Group id to run with\n    -s, --signal            Signal to send to the command when exit it (default: 1, SIGHUP)\n    -w, --cwd               Working directory to be set for the child program\n    -a, --url-arg           Allow client to send command line arguments in URL (eg: http://localhost:7681?arg=foo&arg=bar)\n    -W, --writable          Allow clients to write to the TTY (readonly by default)\n    -t, --client-option     Send option to client (format: key=value), repeat to add more options\n    -T, --terminal-type     Terminal type to report, default: xterm-256color\n    -O, --check-origin      Do not allow websocket connection from different origin\n    -m, --max-clients       Maximum clients to support (default: 0, no limit)\n    -o, --once              Accept only one client and exit on disconnection\n    -B, --browser           Open terminal with the default system browser\n    -I, --index             Custom index.html path\n    -b, --base-path         Expected base path for requests coming from a reverse proxy (eg: /mounted/here, max length: 128)\n    -P, --ping-interval     Websocket ping interval(sec) (default: 5)\n    -6, --ipv6              Enable IPv6 support\n    -S, --ssl               Enable SSL\n    -C, --ssl-cert          SSL certificate file path\n    -K, --ssl-key           SSL key file path\n    -A, --ssl-ca            SSL CA file path for client certificate verification\n    -d, --debug             Set log level (default: 7)\n    -v, --version           Print the version and exit\n    -h, --help              Print this text and exit\n\nVisit https://github.com/tsl0922/ttyd to get more information and report bugs.
\n
\n
\n
\n
ttyd \u3067bash \u3092\u8d77\u52d5
\n
\n
$ ttyd -p 8080 --writable -t enableSixel=true /bin/bash
\n
\n
\n
\n\n\n\n\n\n\n\n
\n
Note
\n
\n
\n
    \n
  • 1.7.4 \u304b\u3089 --readonly \u30aa\u30d7\u30b7\u30e7\u30f3\u304c --writable \u306b\u5909\u66f4\u306b\u306a\u3063\u3066\u3044\u307e\u3059\uff0e
  • \n
  • -t enableSixel=true \u3067Sixel \u3092\u6709\u52b9\u306b\u51fa\u6765\u307e\u3059\uff0e
  • \n
\n
\n
\n
\n
\n
Sixel \u3067\u753b\u50cf\u8868\u793a
\n

\"ttyd

\n
\n
\n
sayaka \u3061\u3083\u3093\u3092\u8d77\u52d5
\n

\"ttyd

\n
\n
\n
\u74b0\u5883
\n
\n
$ ./ttyd -v\nttyd version 1.7.4-fd280fe\n$ dpkg-query -W build-essential cmake git libjson-c-dev libwebsockets-dev\nbuild-essential 12.10\ncmake   3.28.1-1\ngit     1:2.43.0-1\nlibjson-c-dev:amd64     0.17-1\nlibwebsockets-dev:amd64 4.3.3-1\n$ lsb_release -a\nNo LSB modules are available.\nDistributor ID: Debian\nDescription:    Debian GNU/Linux trixie/sid\nRelease:        n/a\nCodename:       trixie\n$ arch\nx86_64
\n
\n
\n", "content_text": "\u4ee5\u524d\u8a66\u3057\u305f\u30bf\u30fc\u30df\u30ca\u30eb\u3092Web\u3067\u5171\u6709\u3067\u304d\u308bttyd \u306eSixel \u306e\u5bfe\u5fdc\u72b6\u6cc1\u3092\u78ba\u8a8d\u3057\u3066\u307f\u308b\u30681\u3064\u524d\u306e\u30ea\u30ea\u30fc\u30b9\u306e 1,7.3 \u3067\u5bfe\u5fdc\u3057\u3066\u3044\u308b\u3088\u3046\u306a\u306e\u3067\u5c11\u3057\u8a66\u3057\u3066\u307f\u307e\u3057\u305f\uff0e\n\n\nRelease 1.7.3 \u00b7 tsl0922/ttyd\n\n\nSixel support is off by default now, use -t enableSixel=true to enable it.\n\n\n\n\n\nttyd – Share your terminal over the web\ntsl0922/ttyd: Share your terminal over the web\n\n\n\n\n\u4ee5\u524d\u8a66\u3057\u305f\u6642\u306e\u8a18\u4e8b\uff0e\n* \u7aef\u672b\u3092Web\u5171\u6709\u3067\u304d\u308bttyd \u2013 matoken\u2019s meme\n\n\n\u30aa\u30f3\u30e9\u30a4\u30f3\u3067ttyd \u3092\u4f7f\u3044\u30d7\u30ec\u30bc\u30f3\u30c6\u30fc\u30b7\u30e7\u30f3\u3092\u8a66\u307f\u305f\u6642\u306e\u30b9\u30e9\u30a4\u30c9\uff0e\n* Terminal\u3068\u30a6\u30a7\u30d6\u30d6\u30e9\u30a6\u30b6\u3067\u30d7\u30ec\u30bc\u30f3\u30c6\u30fc\u30b7\u30e7\u30f3\u306e\u8a66\u307f – Speaker Deck\n\n\nGitHub \u306eRelease \u306bbinary \u304c\u3042\u308b\u3051\u3069source \u304b\u3089Build \u3057\u3066\u307f\u307e\u3057\u305f\uff0e\n\n\nbuild\n\n$ sudo apt install build-essential cmake git libjson-c-dev libwebsockets-dev\n$ git clone https://github.com/tsl0922/ttyd.git\n$ cd ttyd && mkdir build && cd build\n$ cmake ..\n$ make && make install\n$ ./ttyd --version\nttyd version 1.7.4-fd280fe\n$ ./ttyd\nttyd is a tool for sharing terminal over the web\n\nUSAGE:\n ttyd [options] <command> [<arguments...>]\n\nVERSION:\n 1.7.4-fd280fe\n\nOPTIONS:\n -p, --port Port to listen (default: 7681, use `0` for random port)\n -i, --interface Network interface to bind (eg: eth0), or UNIX domain socket path (eg: /var/run/ttyd.sock)\n -U, --socket-owner User owner of the UNIX domain socket file, when enabled (eg: user:group)\n -c, --credential Credential for basic authentication (format: username:password)\n -H, --auth-header HTTP Header name for auth proxy, this will configure ttyd to let a HTTP reverse proxy handle authentication\n -u, --uid User id to run with\n -g, --gid Group id to run with\n -s, --signal Signal to send to the command when exit it (default: 1, SIGHUP)\n -w, --cwd Working directory to be set for the child program\n -a, --url-arg Allow client to send command line arguments in URL (eg: http://localhost:7681?arg=foo&arg=bar)\n -W, --writable Allow clients to write to the TTY (readonly by default)\n -t, --client-option Send option to client (format: key=value), repeat to add more options\n -T, --terminal-type Terminal type to report, default: xterm-256color\n -O, --check-origin Do not allow websocket connection from different origin\n -m, --max-clients Maximum clients to support (default: 0, no limit)\n -o, --once Accept only one client and exit on disconnection\n -B, --browser Open terminal with the default system browser\n -I, --index Custom index.html path\n -b, --base-path Expected base path for requests coming from a reverse proxy (eg: /mounted/here, max length: 128)\n -P, --ping-interval Websocket ping interval(sec) (default: 5)\n -6, --ipv6 Enable IPv6 support\n -S, --ssl Enable SSL\n -C, --ssl-cert SSL certificate file path\n -K, --ssl-key SSL key file path\n -A, --ssl-ca SSL CA file path for client certificate verification\n -d, --debug Set log level (default: 7)\n -v, --version Print the version and exit\n -h, --help Print this text and exit\n\nVisit https://github.com/tsl0922/ttyd to get more information and report bugs.\n\n\n\nttyd \u3067bash \u3092\u8d77\u52d5\n\n$ ttyd -p 8080 --writable -t enableSixel=true /bin/bash\n\n\n\n\n\n\n\nNote\n\n\n\n\n1.7.4 \u304b\u3089 --readonly \u30aa\u30d7\u30b7\u30e7\u30f3\u304c --writable \u306b\u5909\u66f4\u306b\u306a\u3063\u3066\u3044\u307e\u3059\uff0e\n-t enableSixel=true \u3067Sixel \u3092\u6709\u52b9\u306b\u51fa\u6765\u307e\u3059\uff0e\n\n\n\n\n\n\n\n\nSixel \u3067\u753b\u50cf\u8868\u793a\n\n\n\nsayaka \u3061\u3083\u3093\u3092\u8d77\u52d5\n\n\n\n\u74b0\u5883\n\n$ ./ttyd -v\nttyd version 1.7.4-fd280fe\n$ dpkg-query -W build-essential cmake git libjson-c-dev libwebsockets-dev\nbuild-essential 12.10\ncmake 3.28.1-1\ngit 1:2.43.0-1\nlibjson-c-dev:amd64 0.17-1\nlibwebsockets-dev:amd64 4.3.3-1\n$ lsb_release -a\nNo LSB modules are available.\nDistributor ID: Debian\nDescription: Debian GNU/Linux trixie/sid\nRelease: n/a\nCodename: trixie\n$ arch\nx86_64", "date_published": "2024-01-05T05:28:20+09:00", "date_modified": "2024-01-05T05:29:06+09:00", "authors": [ { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" } ], "author": { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" }, "tags": [ "sayaka", "sixel", "terminal", "ttyd", "Debian", "Linux", "sid", "\u672a\u5206\u985e" ] }, { "id": "https://matoken.org/blog/?p=3940", "url": "https://matoken.org/blog/2023/11/14/sixel-in-vscodium/", "title": "VSCodium \u3067\u3082Sixel", "content_html": "
\n

Microsoft VS Code \u3082\u8a2d\u5b9a\u3092\u6709\u52b9\u306b\u3059\u308b\u3053\u3068\u3067Sixel \u304c\u4f7f\u3048\u308b\u3068\u3044\u3046\u3053\u3068\u3067\uff0cCodium \u3067\u8a66\u3057\u3066\u307f\u307e\u3057\u305f\uff0e

\n
\n
\n\n
\n

\n
\n

\u3053\u3061\u3089\u3092\u898b\u308b\u3068V1.79 \u4ee5\u964d\u3067 terminal.integrated.experimentalImageSupport \u3092 true \u306b\u3059\u308b\u3053\u3068\u3067\u52d5\u304f\u3088\u3046\u3067\u3059\uff0e

\n
\n
\n
\n
\n

Visual Studio Code
\nStatus: Supported
\nMust be enabled with “terminal.integrated.experimentalImageSupport”: true.

\n
\n
\n

Uses xterm.js with xterm-addon-image, related PR: https://github.com/microsoft/vscode/pull/182442

\n
\n\n
\n
\n\u2014 https://www.arewesixelyet.com/#visual-studio-code
\n
\n
\n

\u30c1\u30a7\u30c3\u30af\u3092\u4ed8\u3051\u3066 true \u306b\u3057\u307e\u3059\uff0e

\n
\n
\n
terminal.integrated.enableImages
\n
\n
\n

Integrated: Enable Images
\n\u30bf\u30fc\u30df\u30ca\u30eb\u3067\u30a4\u30e1\u30fc\u30b8\u306e\u30b5\u30dd\u30fc\u30c8\u3092\u6709\u52b9\u306b\u3057\u307e\u3059\u3002\u3053\u308c\u306f\u3001 Terminal \u203a Integrated: Gpu Acceleration \u304c\u6709\u52b9\u306b\u306a\u3063\u3066\u3044\u308b\u5834\u5408\u306b\u306e\u307f\u6a5f\u80fd\u3057\u307e\u3059\u3002Linux \u3068 macOS \u3067\u306f\u3001sixel \u3068 iTerm \u306e\u4e21\u65b9\u306e\u30a4\u30f3\u30e9\u30a4\u30f3 \u30a4\u30e1\u30fc\u30b8 \u30d7\u30ed\u30c8\u30b3\u30eb\u304c\u30b5\u30dd\u30fc\u30c8\u3055\u308c\u3066\u3044\u307e\u3059\u3002ConPTY \u304c\u30b7\u30fc\u30b1\u30f3\u30b9\u3092\u901a\u904e\u3059\u308b\u3068\u3001Windows \u306e\u30b5\u30dd\u30fc\u30c8\u304c\u81ea\u52d5\u7684\u306b\u70b9\u706f\u3057\u307e\u3059\u3002\u73fe\u5728\u3001\u30a6\u30a3\u30f3\u30c9\u30a6\u306e\u518d\u8aad\u307f\u8fbc\u307f/\u518d\u63a5\u7d9a\u306e\u9593\u306b\u30a4\u30e1\u30fc\u30b8\u306f\u5fa9\u5143\u3055\u308c\u307e\u305b\u3093\u3002

\n
\n
\n
\n
\n\n\n\n\n\n\n\n
\n
Note
\n
\n
\n

`\u3053\u308c\u306f\u3001 Terminal \u203a Integrated: Gpu Acceleration \u304c\u6709\u52b9\u306b\u306a\u3063\u3066\u3044\u308b\u5834\u5408\u306b\u306e\u307f\u6a5f\u80fd\u3057\u307e\u3059\u3002 \u3068\u3044\u3046\u3053\u3068\u3067\u78ba\u8a8d\u3059\u308b\u3068 `auto \u306b\u306a\u3063\u3066\u3044\u307e\u3057\u305f\uff0e

\n
\n
\n
terminal.integrated.gpuAcceleration
\n
\n
\n

Integrated: Gpu Acceleration
\n\u30bf\u30fc\u30df\u30ca\u30eb\u3067 GPU \u3092\u5229\u7528\u3057\u3066\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u3092\u884c\u3046\u304b\u3069\u3046\u304b\u3092\u5236\u5fa1\u3057\u307e\u3059\u3002

\n
\n
\n
\n
\n

\u3061\u306a\u307f\u306b\uff0c\u624b\u5143\u306e\u74b0\u5883\u306fiGPU\u306eHD Graphics 620 \u3067\u3059\uff0e

\n
\n
\n
\n
$ lspci|grep VGA\n00:02.0 VGA compatible controller: Intel Corporation HD Graphics 620 (rev 02)
\n
\n
\n
\n
\n
\n

\u52d5\u304d\u307e\u3057\u305f :)

\n
\n
\n

\"codium

\n
\n
\n

\u4eca\u74b0\u5883\u304c\u306a\u3044\u306e\u3067\u672a\u78ba\u8a8d\u3067\u3059\u304c\uff0cVSCode \u3067\u3082\u540c\u3058\u624b\u9806\u3067Sixel \u3092\u8a66\u305b\u305d\u3046\u3067\u3059\uff0e

\n
\n
\n
\u74b0\u5883
\n
\n
$ codium --version\n1.84.2\n5a21cd9bd26def06f1b56c50933f812884617855\nx64\n$ lsb_release -dr\nNo LSB modules are available.\nDescription:    Debian GNU/Linux trixie/sid\nRelease:        n/a\n$ arch\nx86_64
\n
\n
\n", "content_text": "Microsoft VS Code \u3082\u8a2d\u5b9a\u3092\u6709\u52b9\u306b\u3059\u308b\u3053\u3068\u3067Sixel \u304c\u4f7f\u3048\u308b\u3068\u3044\u3046\u3053\u3068\u3067\uff0cCodium \u3067\u8a66\u3057\u3066\u307f\u307e\u3057\u305f\uff0e\n\n\n\nVSCodium – Open Source Binaries of VSCode\n\n\n\n\n\u3053\u3061\u3089\u3092\u898b\u308b\u3068V1.79 \u4ee5\u964d\u3067 terminal.integrated.experimentalImageSupport \u3092 true \u306b\u3059\u308b\u3053\u3068\u3067\u52d5\u304f\u3088\u3046\u3067\u3059\uff0e\n\n\n\n\nVisual Studio Code\nStatus: Supported\nMust be enabled with “terminal.integrated.experimentalImageSupport”: true.\n\n\nUses xterm.js with xterm-addon-image, related PR: https://github.com/microsoft/vscode/pull/182442\n\n\nFrom release 1.79: https://code.visualstudio.com/updates/v1_79#_images-in-the-terminal\n\n\n\n\u2014 https://www.arewesixelyet.com/#visual-studio-code\n\n\n\u30c1\u30a7\u30c3\u30af\u3092\u4ed8\u3051\u3066 true \u306b\u3057\u307e\u3059\uff0e\n\n\nterminal.integrated.enableImages\n\n\nIntegrated: Enable Images\n\u30bf\u30fc\u30df\u30ca\u30eb\u3067\u30a4\u30e1\u30fc\u30b8\u306e\u30b5\u30dd\u30fc\u30c8\u3092\u6709\u52b9\u306b\u3057\u307e\u3059\u3002\u3053\u308c\u306f\u3001 Terminal \u203a Integrated: Gpu Acceleration \u304c\u6709\u52b9\u306b\u306a\u3063\u3066\u3044\u308b\u5834\u5408\u306b\u306e\u307f\u6a5f\u80fd\u3057\u307e\u3059\u3002Linux \u3068 macOS \u3067\u306f\u3001sixel \u3068 iTerm \u306e\u4e21\u65b9\u306e\u30a4\u30f3\u30e9\u30a4\u30f3 \u30a4\u30e1\u30fc\u30b8 \u30d7\u30ed\u30c8\u30b3\u30eb\u304c\u30b5\u30dd\u30fc\u30c8\u3055\u308c\u3066\u3044\u307e\u3059\u3002ConPTY \u304c\u30b7\u30fc\u30b1\u30f3\u30b9\u3092\u901a\u904e\u3059\u308b\u3068\u3001Windows \u306e\u30b5\u30dd\u30fc\u30c8\u304c\u81ea\u52d5\u7684\u306b\u70b9\u706f\u3057\u307e\u3059\u3002\u73fe\u5728\u3001\u30a6\u30a3\u30f3\u30c9\u30a6\u306e\u518d\u8aad\u307f\u8fbc\u307f/\u518d\u63a5\u7d9a\u306e\u9593\u306b\u30a4\u30e1\u30fc\u30b8\u306f\u5fa9\u5143\u3055\u308c\u307e\u305b\u3093\u3002\n\n\n\n\n\n\n\n\nNote\n\n\n\n`\u3053\u308c\u306f\u3001 Terminal \u203a Integrated: Gpu Acceleration \u304c\u6709\u52b9\u306b\u306a\u3063\u3066\u3044\u308b\u5834\u5408\u306b\u306e\u307f\u6a5f\u80fd\u3057\u307e\u3059\u3002 \u3068\u3044\u3046\u3053\u3068\u3067\u78ba\u8a8d\u3059\u308b\u3068 `auto \u306b\u306a\u3063\u3066\u3044\u307e\u3057\u305f\uff0e\n\n\nterminal.integrated.gpuAcceleration\n\n\nIntegrated: Gpu Acceleration\n\u30bf\u30fc\u30df\u30ca\u30eb\u3067 GPU \u3092\u5229\u7528\u3057\u3066\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u3092\u884c\u3046\u304b\u3069\u3046\u304b\u3092\u5236\u5fa1\u3057\u307e\u3059\u3002\n\n\n\n\n\u3061\u306a\u307f\u306b\uff0c\u624b\u5143\u306e\u74b0\u5883\u306fiGPU\u306eHD Graphics 620 \u3067\u3059\uff0e\n\n\n\n$ lspci|grep VGA\n00:02.0 VGA compatible controller: Intel Corporation HD Graphics 620 (rev 02)\n\n\n\n\n\n\n\n\n\u52d5\u304d\u307e\u3057\u305f :)\n\n\n\n\n\n\u4eca\u74b0\u5883\u304c\u306a\u3044\u306e\u3067\u672a\u78ba\u8a8d\u3067\u3059\u304c\uff0cVSCode \u3067\u3082\u540c\u3058\u624b\u9806\u3067Sixel \u3092\u8a66\u305b\u305d\u3046\u3067\u3059\uff0e\n\n\n\u74b0\u5883\n\n$ codium --version\n1.84.2\n5a21cd9bd26def06f1b56c50933f812884617855\nx64\n$ lsb_release -dr\nNo LSB modules are available.\nDescription: Debian GNU/Linux trixie/sid\nRelease: n/a\n$ arch\nx86_64", "date_published": "2023-11-14T17:52:19+09:00", "date_modified": "2023-11-14T17:52:22+09:00", "authors": [ { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" } ], "author": { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" }, "tags": [ "codium", "sixel", "terminal", "Debian", "Linux", "sid" ] }, { "id": "https://matoken.org/blog/?p=3921", "url": "https://matoken.org/blog/2023/10/31/sayaka-chang_which_supports_misskey/", "title": "misskey \u30af\u30e9\u30a4\u30a2\u30f3\u30c8 sayaka \u3061\u3083\u3093", "content_html": "
\n

\u300ctwitter \u30af\u30e9\u30a4\u30a2\u30f3\u30c8 sayaka \u3061\u3083\u3093\u300d\u304c\uff0c\u300cmisskey \u30af\u30e9\u30a4\u30a2\u30f3\u30c8 sayaka \u3061\u3083\u3093\u300d \u306b\u306a\u3063\u3066\u3044\u305f\u306e\u3067\u8a66\u3057\u3066\u307f\u307e\u3057\u305f\uff0e

\n
\n

\n
\n

sayaka \u3061\u3083\u3093\u306f\u30bf\u30fc\u30df\u30ca\u30eb\u306b\u7279\u5316\u3057\u305f\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u3067\uff0cSIXEL \u306b\u3082\u5bfe\u5fdc\u3057\u3066\u3044\u308b\u306e\u3067\u30a2\u30a4\u30b3\u30f3\u3084\u753b\u50cf\u3064\u304d\u3067\u30bf\u30a4\u30e0\u30e9\u30a4\u30f3\u3092\u6d41\u3059\u3053\u3068\u304c\u3067\u304d\u3066\u4fbf\u5229\u3067\u3059\uff0e
\n\u4ee5\u524d\u306fTwitter \u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u3067\u3059\u304c\uff0c3.7.0 (2023/10/09) \u304b\u3089Twitter \u3078\u306e\u63a5\u7d9a\u6a5f\u80fd\u3092\u5ec3\u6b62\u3057\u3066Misskey \u5bfe\u5fdc\u958b\u59cb\u3057\u305f\u3088\u3046\u3067\u3059\uff0e(–record \u306a\u3069\u3067\u4fdd\u5b58\u3057\u3066\u3044\u305f\u30d5\u30a1\u30a4\u30eb\u3092 –play \u3067\u518d\u751f\u3059\u308b\u3053\u3068\u306f\u3067\u304d\u308b\uff0e\u203b\u8981configure option )

\n
\n
\n

\u30e1\u30fc\u30eb\u8cfc\u8aad\u3057\u3066\u3044\u305fISSUE \u3067site \u898b\u306b\u884c\u3063\u3066\u6c17\u3065\u304d\u307e\u3057\u305f\uff0e

\n
\n
\n

\u65e9\u901fbuild \u3057\u307e\u3059\uff0e

\n
\n
\n
\n
$ git clone https://github.com/isaki68k/sayaka\n$ cd sayaka\n$ sudo apt install libbsd-dev libwebp-dev libgif-dev libwslay1 libwslay-dev libmbedtls-dev libssl-dev bmake build-essential\n$ ./configure\n$ bmake -DRELEASE sayaka\n$ install src/sayaka ~/bin/\n$ sayaka\nsayaka: No command option specified.\nusage: sayaka [<options>...]\n   command option:\n        --local <server> : show <server>'s local timeline.\n        --play : read JSON from stdin.\n   other options:\n        --color <n> : color mode { 2 .. 256 or x68k }. default 256.\n        --font <width>x<height> : font size. default 7x14\n        --full-url : display full URL even if the URL is abbreviated. (twitter)\n        --light / --dark : Use light/dark theme. (default: auto detect)\n        --no-color : disable all text color sequences\n        --no-image : force disable (SIXEL) images.\n        --force-sixel : force enable SIXEL images.\n        --jis / --eucjp : Set output encoding.\n        --progress: show startup progress (for very slow machines).\n        --protect : don't display protected user's tweet. (twitter)\n        --record <file> : record JSON to file.\n        --record-all <file> : record all received JSON to file.\n        --timeout-image <msec>\n        --version\n        --x68k : preset options for x68k (with SIXEL kernel).\n\n        -4 / -6                         --ciphers <ciphers>\n        --debug       <0-2>             --debug-format\n        --debug-http  <0-2>             --debug-image <0-1>\n        --debug-sixel <0-2>             --debug-show  <0-2>\n        --mathalpha                     --no-combine\n        --max-cont <n>                  --max-image-cols <n>\n        --ormode <on|off> (default off) --palette <on|off> (default on)
\n
\n
\n
\n\n\n\n\n\n\n\n
\n
Note
\n
\nLinux \u74b0\u5883\u3060\u3068make(GNU Make)\u3067\u306f\u306a\u304fbmake(bsd make) \u3092\u4f7f\u3044\u307e\u3059\uff0e
\n
\n
\n

\u73fe\u5728\u306f\u6307\u5b9a\u3057\u305fMisskey \u30b5\u30fc\u30d0\u306e\u30ed\u30fc\u30ab\u30eb\u30bf\u30a4\u30e0\u30e9\u30a4\u30f3\u306e\u8868\u793a\u304c\u3067\u304d\u307e\u3059\uff0e\u8a8d\u8a3c\u306a\u3069\u306f\u5fc5\u8981\u3042\u308a\u307e\u305b\u3093\uff0eMisskey \u30b5\u30fc\u30d0\u306b\u3064\u3044\u3066\u306f\u4ee5\u4e0b\u306e\u30da\u30fc\u30b8\u3092\u53c2\u8003\u306b\u3059\u308b\u3068\u826f\u3055\u305d\u3046\u3067\u3059\uff0e

\n
\n
\n\n
\n
\n
\n
$ sayaka --local <servername>
\n
\n
\n
\n

\u52d5\u4f5c\u78ba\u8a8d\u306b\u306f\u6d41\u91cf\u306e\u591a\u3044 misskey.io \u304c\u826f\u3055\u305d\u3046\uff0e

\n
\n
\n
\n
$ sayaka --local misskey.io
\n
\n
\n
\n\n\n\n\n\n\n\n
\n
Tip
\n
\n
\n
\u30b5\u30fc\u30d0\u306b https:// \u3092\u4ed8\u3051\u308b\u3068\u30db\u30b9\u30c8\u540d\u306e\u89e3\u6c7a\u306b\u5931\u6557\u3057\u307e\u3059
\n
\n
$ sayaka --local https://misskey.yukineko.me/\nReady...mbedtls_net_connect_nonblock https:443 - NET - Failed to get an IP address for the given hostname\nsayaka: WebSocket connection failed
\n
\n
\n
\n
\n
\n\n\n\n\n\n\n\n
\n
Tip
\n
\n
\n
\u30ed\u30fc\u30ab\u30eb\u30bf\u30a4\u30e0\u30e9\u30a4\u30f3\u3092\u7121\u52b9\u306b\u3057\u3066\u3044\u308b\u30b5\u30fc\u30d0\u3060\u3068\u4f55\u3082\u6d41\u308c\u3066\u304d\u307e\u305b\u3093\uff0e
\n
\n
$ sayaka --local misskey.yukineko.me\nReady...Connected
\n
\n
\n
\n
\n
\n

\u5927\u91cf\u306b\u6d41\u308c\u3066\u304d\u307e\u3059 :)

\n
\n
\n

\"misskey.io

\n
\n
\n

NSFW\u753b\u50cf\u306f\u65e2\u5b9a\u5024\u3067\u306f\u307c\u304b\u3055\u308c\u307e\u3059\uff0e\u8868\u793a\u3057\u305f\u3044\u5834\u5408\u306f --show-nsfw \u30aa\u30d7\u30b7\u30e7\u30f3\u3092\u4ed8\u3051\u308b\u3068\u8868\u793a\u3055\u308c\u307e\u3059\uff0e
\nCW \u6295\u7a3f\u306f\u65e2\u5b9a\u5024\u3067\u306f\u5c55\u958b\u3055\u308c\u307e\u305b\u3093\uff0e\u8868\u793a\u3057\u305f\u3044\u3068\u304d\u306f --show-cw \u30aa\u30d7\u30b7\u30e7\u30f3\u3092\u4ed8\u3051\u308b\u3068\u8868\u793a\u3055\u308c\u307e\u3059\uff0e

\n
\n
\n
\n
$ sayaka --show-nsfw --show-cw --local misskey.io
\n
\n
\n
\n

\u753b\u50cf\u304c\u8868\u793a\u3055\u308c\u306a\u3044\u5834\u5408\u306f\u7aef\u672b\u304cSIXEL \u306b\u5bfe\u5fdc\u3057\u3066\u3044\u308b\u304b\u78ba\u8a8d\u3057\u307e\u3057\u3087\u3046\uff0e\u305d\u3046\u3044\u3048\u3070\u6700\u8fd1\u306f Microsoft Visual Studio Code \u3082\u5bfe\u5fdc\u3057\u3066\u3044\u308b\u3088\u3046\u3067\u3059\uff0e(\u8981\u8a2d\u5b9a\u5909\u66f4\u203b\u672a\u691c\u8a3c)

\n
\n
\n\n
\n
\n

laptop \u306a\u3093\u304b\u3067\u30b5\u30b9\u30da\u30f3\u30c9\u3057\u305f\u308a\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u304c\u5207\u308c\u308b\u3068\u7d42\u4e86\u3059\u308b\u306e\u3067\u7121\u9650\u30eb\u30fc\u30d7\u306e\u4e2d\u306b\u5165\u308c\u305f\u308a\uff0e

\n
\n
\n
\n
$ while true; do sayaka --show-cw --show-nsfw --local nijimiss.moe --local misskey.io ; sleep 30; done
\n
\n
\n
\n
\u74b0\u5883
\n
\n
$ sayaka --version\nsayaka version 3.7.2 (2023/10/19)\n$ dpkg-query -W libbsd-dev libwebp-dev libgif-dev libwslay1 libwslay-dev libmbedtls-dev libssl-dev bmake build-essential\nbmake   20200710-16\nbuild-essential 12.10\nlibbsd-dev:amd64        0.11.7-4\nlibgif-dev:amd64        5.2.1-2.5\nlibmbedtls-dev:amd64    2.28.5-1\nlibssl-dev:amd64        3.0.12-1\nlibwebp-dev:amd64       1.3.2-0.3\nlibwslay-dev:amd64      1.1.1-4\nlibwslay1:amd64 1.1.1-4\n$ lsb_release -a\nNo LSB modules are available.\nDistributor ID: Debian\nDescription:    Debian GNU/Linux trixie/sid\nRelease:        n/a\nCodename:       trixie\n$ arch\nx86_64
\n
\n
\n", "content_text": "\u300ctwitter \u30af\u30e9\u30a4\u30a2\u30f3\u30c8 sayaka \u3061\u3083\u3093\u300d\u304c\uff0c\u300cmisskey \u30af\u30e9\u30a4\u30a2\u30f3\u30c8 sayaka \u3061\u3083\u3093\u300d \u306b\u306a\u3063\u3066\u3044\u305f\u306e\u3067\u8a66\u3057\u3066\u307f\u307e\u3057\u305f\uff0e\n\n\n\nsayaka \u3061\u3083\u3093\u306f\u30bf\u30fc\u30df\u30ca\u30eb\u306b\u7279\u5316\u3057\u305f\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u3067\uff0cSIXEL \u306b\u3082\u5bfe\u5fdc\u3057\u3066\u3044\u308b\u306e\u3067\u30a2\u30a4\u30b3\u30f3\u3084\u753b\u50cf\u3064\u304d\u3067\u30bf\u30a4\u30e0\u30e9\u30a4\u30f3\u3092\u6d41\u3059\u3053\u3068\u304c\u3067\u304d\u3066\u4fbf\u5229\u3067\u3059\uff0e\n\u4ee5\u524d\u306fTwitter \u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u3067\u3059\u304c\uff0c3.7.0 (2023/10/09) \u304b\u3089Twitter \u3078\u306e\u63a5\u7d9a\u6a5f\u80fd\u3092\u5ec3\u6b62\u3057\u3066Misskey \u5bfe\u5fdc\u958b\u59cb\u3057\u305f\u3088\u3046\u3067\u3059\uff0e(–record \u306a\u3069\u3067\u4fdd\u5b58\u3057\u3066\u3044\u305f\u30d5\u30a1\u30a4\u30eb\u3092 –play \u3067\u518d\u751f\u3059\u308b\u3053\u3068\u306f\u3067\u304d\u308b\uff0e\u203b\u8981configure option )\n\n\n\u30e1\u30fc\u30eb\u8cfc\u8aad\u3057\u3066\u3044\u305fISSUE \u3067site \u898b\u306b\u884c\u3063\u3066\u6c17\u3065\u304d\u307e\u3057\u305f\uff0e\n\n\n\u65e9\u901fbuild \u3057\u307e\u3059\uff0e\n\n\n\n$ git clone https://github.com/isaki68k/sayaka\n$ cd sayaka\n$ sudo apt install libbsd-dev libwebp-dev libgif-dev libwslay1 libwslay-dev libmbedtls-dev libssl-dev bmake build-essential\n$ ./configure\n$ bmake -DRELEASE sayaka\n$ install src/sayaka ~/bin/\n$ sayaka\nsayaka: No command option specified.\nusage: sayaka [<options>...]\n command option:\n --local <server> : show <server>'s local timeline.\n --play : read JSON from stdin.\n other options:\n --color <n> : color mode { 2 .. 256 or x68k }. default 256.\n --font <width>x<height> : font size. default 7x14\n --full-url : display full URL even if the URL is abbreviated. (twitter)\n --light / --dark : Use light/dark theme. (default: auto detect)\n --no-color : disable all text color sequences\n --no-image : force disable (SIXEL) images.\n --force-sixel : force enable SIXEL images.\n --jis / --eucjp : Set output encoding.\n --progress: show startup progress (for very slow machines).\n --protect : don't display protected user's tweet. (twitter)\n --record <file> : record JSON to file.\n --record-all <file> : record all received JSON to file.\n --timeout-image <msec>\n --version\n --x68k : preset options for x68k (with SIXEL kernel).\n\n -4 / -6 --ciphers <ciphers>\n --debug <0-2> --debug-format\n --debug-http <0-2> --debug-image <0-1>\n --debug-sixel <0-2> --debug-show <0-2>\n --mathalpha --no-combine\n --max-cont <n> --max-image-cols <n>\n --ormode <on|off> (default off) --palette <on|off> (default on)\n\n\n\n\n\n\n\nNote\n\n\nLinux \u74b0\u5883\u3060\u3068make(GNU Make)\u3067\u306f\u306a\u304fbmake(bsd make) \u3092\u4f7f\u3044\u307e\u3059\uff0e\n\n\n\n\n\n\u73fe\u5728\u306f\u6307\u5b9a\u3057\u305fMisskey \u30b5\u30fc\u30d0\u306e\u30ed\u30fc\u30ab\u30eb\u30bf\u30a4\u30e0\u30e9\u30a4\u30f3\u306e\u8868\u793a\u304c\u3067\u304d\u307e\u3059\uff0e\u8a8d\u8a3c\u306a\u3069\u306f\u5fc5\u8981\u3042\u308a\u307e\u305b\u3093\uff0eMisskey \u30b5\u30fc\u30d0\u306b\u3064\u3044\u3066\u306f\u4ee5\u4e0b\u306e\u30da\u30fc\u30b8\u3092\u53c2\u8003\u306b\u3059\u308b\u3068\u826f\u3055\u305d\u3046\u3067\u3059\uff0e\n\n\n\n\u30b5\u30fc\u30d0\u30fc\u4e00\u89a7\n\n\n\n\n$ sayaka --local <servername>\n\n\n\n\u52d5\u4f5c\u78ba\u8a8d\u306b\u306f\u6d41\u91cf\u306e\u591a\u3044 misskey.io \u304c\u826f\u3055\u305d\u3046\uff0e\n\n\n\n$ sayaka --local misskey.io\n\n\n\n\n\n\n\nTip\n\n\n\n\u30b5\u30fc\u30d0\u306b https:// \u3092\u4ed8\u3051\u308b\u3068\u30db\u30b9\u30c8\u540d\u306e\u89e3\u6c7a\u306b\u5931\u6557\u3057\u307e\u3059\n\n$ sayaka --local https://misskey.yukineko.me/\nReady...mbedtls_net_connect_nonblock https:443 - NET - Failed to get an IP address for the given hostname\nsayaka: WebSocket connection failed\n\n\n\n\n\n\n\n\n\n\n\n\nTip\n\n\n\n\u30ed\u30fc\u30ab\u30eb\u30bf\u30a4\u30e0\u30e9\u30a4\u30f3\u3092\u7121\u52b9\u306b\u3057\u3066\u3044\u308b\u30b5\u30fc\u30d0\u3060\u3068\u4f55\u3082\u6d41\u308c\u3066\u304d\u307e\u305b\u3093\uff0e\n\n$ sayaka --local misskey.yukineko.me\nReady...Connected\n\n\n\n\n\n\n\n\n\u5927\u91cf\u306b\u6d41\u308c\u3066\u304d\u307e\u3059 :)\n\n\n\n\n\nNSFW\u753b\u50cf\u306f\u65e2\u5b9a\u5024\u3067\u306f\u307c\u304b\u3055\u308c\u307e\u3059\uff0e\u8868\u793a\u3057\u305f\u3044\u5834\u5408\u306f --show-nsfw \u30aa\u30d7\u30b7\u30e7\u30f3\u3092\u4ed8\u3051\u308b\u3068\u8868\u793a\u3055\u308c\u307e\u3059\uff0e\nCW \u6295\u7a3f\u306f\u65e2\u5b9a\u5024\u3067\u306f\u5c55\u958b\u3055\u308c\u307e\u305b\u3093\uff0e\u8868\u793a\u3057\u305f\u3044\u3068\u304d\u306f --show-cw \u30aa\u30d7\u30b7\u30e7\u30f3\u3092\u4ed8\u3051\u308b\u3068\u8868\u793a\u3055\u308c\u307e\u3059\uff0e\n\n\n\n$ sayaka --show-nsfw --show-cw --local misskey.io\n\n\n\n\u753b\u50cf\u304c\u8868\u793a\u3055\u308c\u306a\u3044\u5834\u5408\u306f\u7aef\u672b\u304cSIXEL \u306b\u5bfe\u5fdc\u3057\u3066\u3044\u308b\u304b\u78ba\u8a8d\u3057\u307e\u3057\u3087\u3046\uff0e\u305d\u3046\u3044\u3048\u3070\u6700\u8fd1\u306f Microsoft Visual Studio Code \u3082\u5bfe\u5fdc\u3057\u3066\u3044\u308b\u3088\u3046\u3067\u3059\uff0e(\u8981\u8a2d\u5b9a\u5909\u66f4\u203b\u672a\u691c\u8a3c)\n\n\n\nSixel \u60c5\u5831 – \u30c0\u30e1\u51fa\u3057 Blog\nAre We Sixel Yet?\n\n\n\nlaptop \u306a\u3093\u304b\u3067\u30b5\u30b9\u30da\u30f3\u30c9\u3057\u305f\u308a\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u304c\u5207\u308c\u308b\u3068\u7d42\u4e86\u3059\u308b\u306e\u3067\u7121\u9650\u30eb\u30fc\u30d7\u306e\u4e2d\u306b\u5165\u308c\u305f\u308a\uff0e\n\n\n\n$ while true; do sayaka --show-cw --show-nsfw --local nijimiss.moe --local misskey.io ; sleep 30; done\n\n\n\n\u74b0\u5883\n\n$ sayaka --version\nsayaka version 3.7.2 (2023/10/19)\n$ dpkg-query -W libbsd-dev libwebp-dev libgif-dev libwslay1 libwslay-dev libmbedtls-dev libssl-dev bmake build-essential\nbmake 20200710-16\nbuild-essential 12.10\nlibbsd-dev:amd64 0.11.7-4\nlibgif-dev:amd64 5.2.1-2.5\nlibmbedtls-dev:amd64 2.28.5-1\nlibssl-dev:amd64 3.0.12-1\nlibwebp-dev:amd64 1.3.2-0.3\nlibwslay-dev:amd64 1.1.1-4\nlibwslay1:amd64 1.1.1-4\n$ lsb_release -a\nNo LSB modules are available.\nDistributor ID: Debian\nDescription: Debian GNU/Linux trixie/sid\nRelease: n/a\nCodename: trixie\n$ arch\nx86_64", "date_published": "2023-10-31T19:28:22+09:00", "date_modified": "2023-10-31T19:28:24+09:00", "authors": [ { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" } ], "author": { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" }, "tags": [ "misskey", "sayaka", "sixel", "terminal", "Debian", "Linux", "sid" ] }, { "id": "https://matoken.org/blog/?p=3914", "url": "https://matoken.org/blog/2023/08/04/try-black-box-terminal-emulatr/", "title": "Sixel\u5bfe\u5fdcTerminal\u306eBlack Box\u3092\u5c11\u3057\u8a66\u3059", "content_html": "
\n
\n
\n

Black Box \u3068\u3044\u3046\u30bf\u30fc\u30df\u30ca\u30eb\u30a8\u30df\u30e5\u30ec\u30fc\u30bf\u3092\u5c11\u3057\u8a66\u3057\u3066\u307f\u307e\u3057\u305f\uff0e

\n
\n\n

\n
\n\n\n\n\n\n\n\n
\n
Note
\n
\n
\n

Black box \u3068\u3044\u3048\u3070(X11 window manager \u306eBlackbox \u3092\u601d\u3044\u53d7\u3051\u3079\u307e\u3059\u304c\u591a\u5206\u95a2\u4fc2\u306f\u306a\u3044\uff0cBlack Box \u306f\u4e3b\u306bVala \u3067\u66f8\u304b\u308c\u3066\u3044\u308b\u3088\u3046\u3067\u3059\uff0eVala \u3067\u51fa\u6765\u305fTerminal \u3068\u3044\u3046\u3068\u8efd\u91cf\u306avala-terminal \u3068\u3044\u3046\u3082\u306e\u3092armhf \u74b0\u5883\u3067\u4f7f\u3063\u3066\u3044\u305f\u3053\u3068\u304c\u3042\u308a\u307e\u3057\u305f\u304c\u3053\u308c\u3082\u7279\u306b\u95a2\u4fc2\u306f\u306a\u3055\u305d\u3046\u3067\u3059\uff0e(vala-terminal \u306f\u958b\u767a\u304c\u6b62\u307e\u3063\u3066\u3044\u305d\u3046\u3067Debian \u304b\u3089\u3082drop \u3057\u3066\u3044\u308b\u3088\u3046\u3067\u3059\uff0e)

\n
\n\n
\n
\n
\n
\n
\n

\u5c0e\u5165

\n
\n
\n

flatpack \u304b\u3089\u5c0e\u5165\u304b\u30bb\u30eb\u30d5\u30d3\u30eb\u30c9\u306b\u306a\u308b\u3088\u3046\u3067\u3059\uff0e

\n
\n
\n
\n
$ flatpak install flathub com.raggesilver.BlackBox\nLooking for matches\u2026\nRequired runtime for com.raggesilver.BlackBox/x86_64/stable (runtime/org.gnome.Platform/x86_64/44) found in remote flathub\nDo you want to install it? [Y/n]:\n\ncom.raggesilver.BlackBox permissions:\n    ipc     fallback-x11     wayland     x11    devices    file access [1]    dbus access [2]\n\n    [1] host\n    [2] org.freedesktop.Flatpak\n\n\n        ID                                        Branch           Op           Remote            Download\n 1. [\u2713] com.raggesilver.BlackBox.Locale           stable           i            flathub             9.3 kB / 290.9 kB\n 2. [\u2713] org.gnome.Platform.Locale                 44               i            flathub           101.3 kB / 340.5 MB\n 3. [\u2713] org.gnome.Platform                        44               i            flathub           248.4 MB / 323.4 MB\n 4. [\u2713] com.raggesilver.BlackBox                  stable           i            flathub           555.3 kB / 746.4 kB\n\nInstallation complete.\n$ flatpak info com.raggesilver.BlackBox\n\nBlack Box - A beautiful GTK 4 terminal\n\n          ID: com.raggesilver.BlackBox\n         Ref: app/com.raggesilver.BlackBox/x86_64/stable\n        Arch: x86_64\n      Branch: stable\n     Version: 0.14.0\n     License: GPL-3.0-or-later\n      Origin: flathub\n  Collection: org.flathub.Stable\nInstallation: system\n   Installed: 2.7 MB\n     Runtime: org.gnome.Platform/x86_64/44\n         Sdk: org.gnome.Sdk/x86_64/44\n\n      Commit: 9cf004e5bf5dfc847db69e6c3f9dcd2d27a8541d815a537af553a4d47545a583\n      Parent: 1a3b7c86da1c662d5e793b03b83e9b02a4c151aea33fb03f07caaca1e576708a\n     Subject: Remove session-bus permission (b58d6d98)\n        Date: 2023-07-17 23:14:18 +0000
\n
\n
\n
\n

flatpack \u306f\u7d50\u69cb\u4f9d\u5b58\u95a2\u4fc2\u304c\u591a\u3044\u3067\u3059\u306d\uff0e
\n\u3067\u3082\u30bb\u30eb\u30d5\u30d3\u30eb\u30c9\u3059\u308b\u306b\u306f\u3082\u3063\u3068\u5927\u91cf\u306e\u30c7\u30a3\u30b9\u30af\u304c\u5fc5\u8981\u3060\u3068\u601d\u3044\u307e\u3059\u2026\u2026\uff0e\u3068\u308a\u3042\u3048\u305a\u306fflatpack \u3067\uff0e

\n
\n
\n
\n
\n

flatpack\u7248\u8d77\u52d5

\n
\n
\n
\n
$ flatpak run com.raggesilver.BlackBox
\n
\n
\n
\n

\"BlackBox

\n
\n
\n
\n
\n

Sixel

\n
\n
\n

Sixel \u306b\u5bfe\u5fdc\u3057\u3066\u3044\u308b\u3088\u3046\u306a\u306e\u3067\u8a66\u3057\u3066\u307f\u307e\u3059\uff0eSixel \u306b\u5bfe\u5fdc\u3057\u305f\u7aef\u672b\u306a\u3089\u7aef\u672b\u5185\u3067\u753b\u50cf\u304c\u8868\u793a\u53ef\u80fd\u3067\u3059\uff0eX \u306a\u3069\u304c\u7121\u304f\u3066\u3082\u5bfe\u5fdc\u7aef\u672b\u3067\u3042\u308c\u3070\u753b\u50cf\u3092\u8868\u793a\u3067\u304d\u307e\u3059\uff0e
\nimg2sixel \u3067\u753b\u50cf\u8868\u793a\u2026\u2026\u3055\u308c\u307e\u305b\u3093\uff0e\u306a\u3093\u3067\u3060\u308d\u3046\u3068\u601d\u3063\u305f\u3089\u65e2\u5b9a\u5024\u3067\u306f\u7121\u52b9\u306b\u306a\u3063\u3066\u3044\u3066\u8a2d\u5b9a\u5909\u66f4\u3067\u52d5\u4f5c\u3057\u307e\u3057\u305f\uff0e

\n
\n
\n
\n
\n

\u300cPrefarence\u300d\u2192\u300cAdvanced\u300d\u2192\u300cExperimental\u300d\u2192\u300cSixel Support\u300d

\n
\n
\n
\n
\n

\"BlackBox

\n
\n
\n

Sixel \u3067\u753b\u50cf\u51fa\u305b\u307e\u3059\uff0e

\n
\n
\n

\"BlackBox

\n
\n
\n
neofeth –slxel
\n

\"BlackBox

\n
\n
\n

Sixel \u306e\u6d3b\u7528\u306b\u3064\u3044\u3066\u306f\u4ee5\u4e0b\u306e\u3042\u305f\u308a\u3092\uff0e

\n
\n\n
\n
\n
\n

sudo/ssh\u74b0\u5883\u3067\u306e\u30d8\u30c3\u30c0\u30fc\u30d0\u30fc\u306e\u8272

\n
\n
\n

\u901a\u5e38\u6642\uff0csudo\u5229\u7528\u6642\uff0cssh\u63a5\u7d9a\u6642\u3067\u30d8\u30c3\u30c0\u30fc\u30d0\u30fc\u306e\u8272\u304c\u5909\u308f\u308a\u307e\u3059\uff0e(\u5c11\u3057\u30bf\u30a4\u30e0\u30e9\u30b0\u3042\u308a)

\n
\n
\n
\u901a\u5e38\u6642
\n

\"BlackBox

\n
\n
\n
sudo \u5b9f\u884c\u6642
\n

\"BlackBox

\n
\n
\n
ssh \u63a5\u7d9a\u6642
\n

\"BlackBox

\n
\n
\n
\n
\n

Black Box\u975e\u30a2\u30af\u30c6\u30a3\u30d6\u6642\u306b\u7d42\u4e86\u3057\u305f\u30d7\u30ed\u30bb\u30b9\u306e\u901a\u77e5

\n
\n
\n

Black Box \u975e\u30a2\u30af\u30c6\u30a3\u30d6\u6642\u306b\u7d42\u4e86\u3057\u305f\u30d7\u30ed\u30bb\u30b9\u306f\u30c7\u30b9\u30af\u30c8\u30c3\u30d7\u306b\u901a\u77e5\u304c\u6765\u307e\u3059\uff0e
\n\u901a\u77e5\u306f\u4e00\u5b9a\u6642\u9593\u3067\u6d88\u3048\u3066\u3057\u307e\u3046\u306e\u3067PC\u304b\u3089\u76ee\u3092\u8a71\u3057\u3066\u3044\u308b\u5834\u5408\u306f\u6c17\u3065\u3051\u307e\u305b\u3093\uff0e

\n
\n
\n

\"BlackBox

\n
\n
\n
\u74b0\u5883
\n
\n
$ flatpak info com.raggesilver.BlackBox\n\nBlack Box - A beautiful GTK 4 terminal\n\n          ID: com.raggesilver.BlackBox\n         Ref: app/com.raggesilver.BlackBox/x86_64/stable\n        Arch: x86_64\n      Branch: stable\n     Version: 0.14.0\n     License: GPL-3.0-or-later\n      Origin: flathub\n  Collection: org.flathub.Stable\nInstallation: system\n   Installed: 2.7 MB\n     Runtime: org.gnome.Platform/x86_64/44\n         Sdk: org.gnome.Sdk/x86_64/44\n\n      Commit: 9cf004e5bf5dfc847db69e6c3f9dcd2d27a8541d815a537af553a4d47545a583\n      Parent: 1a3b7c86da1c662d5e793b03b83e9b02a4c151aea33fb03f07caaca1e576708a\n     Subject: Remove session-bus permission (b58d6d98)\n        Date: 2023-07-17 23:14:18 +0000\n$ dpkg-query -W flatpak libsixel-bin\nflatpak 1.14.4-2\nlibsixel-bin    1.10.3-3\n$ lsb_release -dr\nNo LSB modules are available.\nDescription:    Debian GNU/Linux trixie/sid\nRelease:        n/a\n$ arch\nx86_64
\n
\n
\n
\n
\n", "content_text": "Black Box \u3068\u3044\u3046\u30bf\u30fc\u30df\u30ca\u30eb\u30a8\u30df\u30e5\u30ec\u30fc\u30bf\u3092\u5c11\u3057\u8a66\u3057\u3066\u307f\u307e\u3057\u305f\uff0e\n\n\n\nPaulo Queiroz / Black Box \u00b7 GitLab\n\n\nTerminal App ‘Black Box’ 0.14 Release Adds New Color Schemes and Lets You Rename Tabs\n\n\n\n\n\n\n\n\n\n\n\nNote\n\n\n\nBlack box \u3068\u3044\u3048\u3070(X11 window manager \u306eBlackbox \u3092\u601d\u3044\u53d7\u3051\u3079\u307e\u3059\u304c\u591a\u5206\u95a2\u4fc2\u306f\u306a\u3044\uff0cBlack Box \u306f\u4e3b\u306bVala \u3067\u66f8\u304b\u308c\u3066\u3044\u308b\u3088\u3046\u3067\u3059\uff0eVala \u3067\u51fa\u6765\u305fTerminal \u3068\u3044\u3046\u3068\u8efd\u91cf\u306avala-terminal \u3068\u3044\u3046\u3082\u306e\u3092armhf \u74b0\u5883\u3067\u4f7f\u3063\u3066\u3044\u305f\u3053\u3068\u304c\u3042\u308a\u307e\u3057\u305f\u304c\u3053\u308c\u3082\u7279\u306b\u95a2\u4fc2\u306f\u306a\u3055\u305d\u3046\u3067\u3059\uff0e(vala-terminal \u306f\u958b\u767a\u304c\u6b62\u307e\u3063\u3066\u3044\u305d\u3046\u3067Debian \u304b\u3089\u3082drop \u3057\u3066\u3044\u308b\u3088\u3046\u3067\u3059\uff0e)\n\n\n\nfreesmartphone/vala-terminal: A terminal program based on libvte and written in Vala. Designed with mobile devices in mind.\nvala-terminal – Debian Package Tracker\n\n\n\n\n\n\n\n\n\n\n\u5c0e\u5165\n\n\nflatpack \u304b\u3089\u5c0e\u5165\u304b\u30bb\u30eb\u30d5\u30d3\u30eb\u30c9\u306b\u306a\u308b\u3088\u3046\u3067\u3059\uff0e\n\n\n\n$ flatpak install flathub com.raggesilver.BlackBox\nLooking for matches\u2026\nRequired runtime for com.raggesilver.BlackBox/x86_64/stable (runtime/org.gnome.Platform/x86_64/44) found in remote flathub\nDo you want to install it? [Y/n]:\n\ncom.raggesilver.BlackBox permissions:\n ipc fallback-x11 wayland x11 devices file access [1] dbus access [2]\n\n [1] host\n [2] org.freedesktop.Flatpak\n\n\n ID Branch Op Remote Download\n 1. [\u2713] com.raggesilver.BlackBox.Locale stable i flathub 9.3 kB / 290.9 kB\n 2. [\u2713] org.gnome.Platform.Locale 44 i flathub 101.3 kB / 340.5 MB\n 3. [\u2713] org.gnome.Platform 44 i flathub 248.4 MB / 323.4 MB\n 4. [\u2713] com.raggesilver.BlackBox stable i flathub 555.3 kB / 746.4 kB\n\nInstallation complete.\n$ flatpak info com.raggesilver.BlackBox\n\nBlack Box - A beautiful GTK 4 terminal\n\n ID: com.raggesilver.BlackBox\n Ref: app/com.raggesilver.BlackBox/x86_64/stable\n Arch: x86_64\n Branch: stable\n Version: 0.14.0\n License: GPL-3.0-or-later\n Origin: flathub\n Collection: org.flathub.Stable\nInstallation: system\n Installed: 2.7 MB\n Runtime: org.gnome.Platform/x86_64/44\n Sdk: org.gnome.Sdk/x86_64/44\n\n Commit: 9cf004e5bf5dfc847db69e6c3f9dcd2d27a8541d815a537af553a4d47545a583\n Parent: 1a3b7c86da1c662d5e793b03b83e9b02a4c151aea33fb03f07caaca1e576708a\n Subject: Remove session-bus permission (b58d6d98)\n Date: 2023-07-17 23:14:18 +0000\n\n\n\nflatpack \u306f\u7d50\u69cb\u4f9d\u5b58\u95a2\u4fc2\u304c\u591a\u3044\u3067\u3059\u306d\uff0e\n\u3067\u3082\u30bb\u30eb\u30d5\u30d3\u30eb\u30c9\u3059\u308b\u306b\u306f\u3082\u3063\u3068\u5927\u91cf\u306e\u30c7\u30a3\u30b9\u30af\u304c\u5fc5\u8981\u3060\u3068\u601d\u3044\u307e\u3059\u2026\u2026\uff0e\u3068\u308a\u3042\u3048\u305a\u306fflatpack \u3067\uff0e\n\n\n\n\nflatpack\u7248\u8d77\u52d5\n\n\n\n$ flatpak run com.raggesilver.BlackBox\n\n\n\n\n\n\n\n\nSixel\n\n\nSixel \u306b\u5bfe\u5fdc\u3057\u3066\u3044\u308b\u3088\u3046\u306a\u306e\u3067\u8a66\u3057\u3066\u307f\u307e\u3059\uff0eSixel \u306b\u5bfe\u5fdc\u3057\u305f\u7aef\u672b\u306a\u3089\u7aef\u672b\u5185\u3067\u753b\u50cf\u304c\u8868\u793a\u53ef\u80fd\u3067\u3059\uff0eX \u306a\u3069\u304c\u7121\u304f\u3066\u3082\u5bfe\u5fdc\u7aef\u672b\u3067\u3042\u308c\u3070\u753b\u50cf\u3092\u8868\u793a\u3067\u304d\u307e\u3059\uff0e\nimg2sixel \u3067\u753b\u50cf\u8868\u793a\u2026\u2026\u3055\u308c\u307e\u305b\u3093\uff0e\u306a\u3093\u3067\u3060\u308d\u3046\u3068\u601d\u3063\u305f\u3089\u65e2\u5b9a\u5024\u3067\u306f\u7121\u52b9\u306b\u306a\u3063\u3066\u3044\u3066\u8a2d\u5b9a\u5909\u66f4\u3067\u52d5\u4f5c\u3057\u307e\u3057\u305f\uff0e\n\n\n\n\n\u300cPrefarence\u300d\u2192\u300cAdvanced\u300d\u2192\u300cExperimental\u300d\u2192\u300cSixel Support\u300d\n\n\n\n\n\n\n\nSixel \u3067\u753b\u50cf\u51fa\u305b\u307e\u3059\uff0e\n\n\n\n\n\nneofeth –slxel\n\n\n\nSixel \u306e\u6d3b\u7528\u306b\u3064\u3044\u3066\u306f\u4ee5\u4e0b\u306e\u3042\u305f\u308a\u3092\uff0e\n\n\n\nSixel Graphics\u3092\u6d3b\u7528\u3057\u305f\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u5fa1\u7d39\u4ecb – Qiita\n\u9577\u7de8\u307e\u3068\u3081\u30fbSixel Graphics\u5fa9\u6d3b\u3078\u306e\u52d5\u304d(1) – Togetter\n\n\n\n\n\nsudo/ssh\u74b0\u5883\u3067\u306e\u30d8\u30c3\u30c0\u30fc\u30d0\u30fc\u306e\u8272\n\n\n\u901a\u5e38\u6642\uff0csudo\u5229\u7528\u6642\uff0cssh\u63a5\u7d9a\u6642\u3067\u30d8\u30c3\u30c0\u30fc\u30d0\u30fc\u306e\u8272\u304c\u5909\u308f\u308a\u307e\u3059\uff0e(\u5c11\u3057\u30bf\u30a4\u30e0\u30e9\u30b0\u3042\u308a)\n\n\n\u901a\u5e38\u6642\n\n\n\nsudo \u5b9f\u884c\u6642\n\n\n\nssh \u63a5\u7d9a\u6642\n\n\n\n\n\nBlack Box\u975e\u30a2\u30af\u30c6\u30a3\u30d6\u6642\u306b\u7d42\u4e86\u3057\u305f\u30d7\u30ed\u30bb\u30b9\u306e\u901a\u77e5\n\n\nBlack Box \u975e\u30a2\u30af\u30c6\u30a3\u30d6\u6642\u306b\u7d42\u4e86\u3057\u305f\u30d7\u30ed\u30bb\u30b9\u306f\u30c7\u30b9\u30af\u30c8\u30c3\u30d7\u306b\u901a\u77e5\u304c\u6765\u307e\u3059\uff0e\n\u901a\u77e5\u306f\u4e00\u5b9a\u6642\u9593\u3067\u6d88\u3048\u3066\u3057\u307e\u3046\u306e\u3067PC\u304b\u3089\u76ee\u3092\u8a71\u3057\u3066\u3044\u308b\u5834\u5408\u306f\u6c17\u3065\u3051\u307e\u305b\u3093\uff0e\n\n\n\n\n\n\u74b0\u5883\n\n$ flatpak info com.raggesilver.BlackBox\n\nBlack Box - A beautiful GTK 4 terminal\n\n ID: com.raggesilver.BlackBox\n Ref: app/com.raggesilver.BlackBox/x86_64/stable\n Arch: x86_64\n Branch: stable\n Version: 0.14.0\n License: GPL-3.0-or-later\n Origin: flathub\n Collection: org.flathub.Stable\nInstallation: system\n Installed: 2.7 MB\n Runtime: org.gnome.Platform/x86_64/44\n Sdk: org.gnome.Sdk/x86_64/44\n\n Commit: 9cf004e5bf5dfc847db69e6c3f9dcd2d27a8541d815a537af553a4d47545a583\n Parent: 1a3b7c86da1c662d5e793b03b83e9b02a4c151aea33fb03f07caaca1e576708a\n Subject: Remove session-bus permission (b58d6d98)\n Date: 2023-07-17 23:14:18 +0000\n$ dpkg-query -W flatpak libsixel-bin\nflatpak 1.14.4-2\nlibsixel-bin 1.10.3-3\n$ lsb_release -dr\nNo LSB modules are available.\nDescription: Debian GNU/Linux trixie/sid\nRelease: n/a\n$ arch\nx86_64", "date_published": "2023-08-04T06:22:00+09:00", "date_modified": "2023-08-04T05:03:18+09:00", "authors": [ { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" } ], "author": { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" }, "tags": [ "sixel", "terminal", "vala", "Debian", "Linux", "sid" ] }, { "id": "http://matoken.org/blog/?p=3591", "url": "https://matoken.org/blog/2022/04/12/word-movement-using-alt-key-of-mlterm/", "title": "mlterm\u306eAlt key\u3092\u4f7f\u3063\u305f\u5358\u8a9e\u79fb\u52d5", "content_html": "
\n

\u5358\u8a9e\u5358\u4f4d\u3067\u306e\u79fb\u52d5\u306f Esc \u2192 f/b \u53ef\u80fd\u3067\u3059\uff0e\u3057\u304b\u3057Esc\u62bc\u3057\u76f4\u3057\u304c\u5fc5\u8981\u306a\u306e\u3067\u305f\u304f\u3055\u3093\u79fb\u52d5\u3059\u308b\u306e\u306b\u306f\u4e0d\u5411\u304d\u3067\u3059\uff0c
\nsakura\u3067\u306fAlt + f/b(\u2192\u2190) \u3067Alt key\u62bc\u3057\u3063\u3071\u306a\u3057\u3067\u79fb\u52d5\u3067\u304d\u3066\u4fbf\u5229\u3060\u3063\u305f\uff0e\u306e\u3067\u3059\u304c\uff0c\u624b\u5143\u306emlterm\u3067\u306f\u79fb\u52d5\u3067\u304d\u307e\u305b\u3093\uff0e
\nmlterm\u3067Alt+a/f\u3092\u62bc\u3059\u3068\u300c\u00e1\u00e6\u300d\u306e\u30a2\u30af\u30bb\u30f3\u30c8\u6587\u5b57\u304c\u5165\u529b\u3055\u308c\u308b\u3057\u307e\u3044\u624b\u7656\u3067\u5165\u529b\u3057\u3066\u3057\u307e\u3044\u6d88\u3057\u3066\u66f8\u304d\u76f4\u3059\u3068\u3044\u3063\u305f\u3053\u3068\u3092\u3057\u3066\u3044\u307e\u3057\u305f\uff0e

\n
\n

\n
\n

\u4ee5\u4e0b\u306e\u30da\u30fc\u30b8\u306b\u3088\u308b\u3068mlterm\u3082Alt+f/b\u3067\u5358\u8a9e\u79fb\u52d5\u3059\u308b\u3088\u3046\u3067\u3059\uff0e

\n
\n
\n\n
\n
\n

\u3046\u307e\u304f\u884c\u304b\u306a\u3044\u3053\u3068\u3092Twitter\u306b\u66f8\u3044\u305f\u3089\u6559\u3048\u3066\u3082\u3089\u3044\u307e\u3057\u305f\uff0e

\n
\n
\n

\u89e3\u6c7a\u6e08\u304b\u3082\u3057\u308c\u307e\u305b\u3093\u304c\u3001~/.mlterm/main \u306b mod_meta_mode = esc \u3068\u8a2d\u5b9a\u3044\u305f\u3060\u3051\u308c\u3070\u3001Alt + f/b \u3067\u5358\u8a9e\u79fb\u52d5\u3067\u304d\u308b\u306e\u3067\u306f\u306a\u3044\u304b\u3068\u601d\u3044\u307e\u3059\u3002\u5206\u304b\u308a\u306b\u304f\u304f\u3066\u7533\u3057\u8a33\u306a\u3044\u3067\u3059\u3002

\n

\u2014 arakiken (@arakiken) 2022\u5e744\u67089>\u65e5

\n

\n
\n
mlterm/doc/ja/README.ja \u3088\u308a
\n
\n
\n
\n
o mod_meta_mode  (none/esc/*8bit*) (#)\n  Meta \u30ad\u30fc\u3092\u62bc\u4e0b\u3057\u305f\u6642\u306e\u6319\u52d5
\n
\n
\n
\n
\n
\n

\u3068\u3044\u3046\u3053\u3068\u3067

\n
\n
\n
\n
$ echo \"mod_meta_mode = esc\" | tee -a ~/.mlterm/main
\n
\n
\n
\n

\u3068\u3057\u3066mlterm\u3092\u518d\u8d77\u52d5\u3059\u308b\u3053\u3068\u3067Alt + f/b\u3067\u306e\u5358\u8a9e\u79fb\u52d5\u304c\u5b9f\u73fe\u3067\u304d\u307e\u3057\u305f :)

\n
\n
\n
\u74b0\u5883
\n
\n
$ dpkg-query -W mlterm*\nmlterm  3.9.0-1+b1\nmlterm-common   3.9.0-1+b1\nmlterm-im-m17nlib\nmlterm-im-scim\nmlterm-im-uim\nmlterm-tiny     3.9.0-1+b1\nmlterm-tools    3.9.0-1+b1\n$ lsb_release -dr\nDescription:    Debian GNU/Linux bookworm/sid\nRelease:        unstable\n$ arch\nx86_64
\n
\n
\n", "content_text": "\u5358\u8a9e\u5358\u4f4d\u3067\u306e\u79fb\u52d5\u306f Esc \u2192 f/b \u53ef\u80fd\u3067\u3059\uff0e\u3057\u304b\u3057Esc\u62bc\u3057\u76f4\u3057\u304c\u5fc5\u8981\u306a\u306e\u3067\u305f\u304f\u3055\u3093\u79fb\u52d5\u3059\u308b\u306e\u306b\u306f\u4e0d\u5411\u304d\u3067\u3059\uff0c\nsakura\u3067\u306fAlt + f/b(\u2192\u2190) \u3067Alt key\u62bc\u3057\u3063\u3071\u306a\u3057\u3067\u79fb\u52d5\u3067\u304d\u3066\u4fbf\u5229\u3060\u3063\u305f\uff0e\u306e\u3067\u3059\u304c\uff0c\u624b\u5143\u306emlterm\u3067\u306f\u79fb\u52d5\u3067\u304d\u307e\u305b\u3093\uff0e\nmlterm\u3067Alt+a/f\u3092\u62bc\u3059\u3068\u300c\u00e1\u00e6\u300d\u306e\u30a2\u30af\u30bb\u30f3\u30c8\u6587\u5b57\u304c\u5165\u529b\u3055\u308c\u308b\u3057\u307e\u3044\u624b\u7656\u3067\u5165\u529b\u3057\u3066\u3057\u307e\u3044\u6d88\u3057\u3066\u66f8\u304d\u76f4\u3059\u3068\u3044\u3063\u305f\u3053\u3068\u3092\u3057\u3066\u3044\u307e\u3057\u305f\uff0e\n\n\n\n\u4ee5\u4e0b\u306e\u30da\u30fc\u30b8\u306b\u3088\u308b\u3068mlterm\u3082Alt+f/b\u3067\u5358\u8a9e\u79fb\u52d5\u3059\u308b\u3088\u3046\u3067\u3059\uff0e\n\n\n\nGNOME\u7aef\u672b\u306eALT\u306b\u3064\u3044\u3066\n\n\n\n\u3046\u307e\u304f\u884c\u304b\u306a\u3044\u3053\u3068\u3092Twitter\u306b\u66f8\u3044\u305f\u3089\u6559\u3048\u3066\u3082\u3089\u3044\u307e\u3057\u305f\uff0e\n\n\n\u89e3\u6c7a\u6e08\u304b\u3082\u3057\u308c\u307e\u305b\u3093\u304c\u3001~/.mlterm/main \u306b mod_meta_mode = esc \u3068\u8a2d\u5b9a\u3044\u305f\u3060\u3051\u308c\u3070\u3001Alt + f/b \u3067\u5358\u8a9e\u79fb\u52d5\u3067\u304d\u308b\u306e\u3067\u306f\u306a\u3044\u304b\u3068\u601d\u3044\u307e\u3059\u3002\u5206\u304b\u308a\u306b\u304f\u304f\u3066\u7533\u3057\u8a33\u306a\u3044\u3067\u3059\u3002\n\u2014 arakiken (@arakiken) 2022\u5e744\u67089>\u65e5\n\n\nmlterm/doc/ja/README.ja \u3088\u308a\n\n\n\no mod_meta_mode (none/esc/*8bit*) (#)\n Meta \u30ad\u30fc\u3092\u62bc\u4e0b\u3057\u305f\u6642\u306e\u6319\u52d5\n\n\n\n\n\n\u3068\u3044\u3046\u3053\u3068\u3067\n\n\n\n$ echo \"mod_meta_mode = esc\" | tee -a ~/.mlterm/main\n\n\n\n\u3068\u3057\u3066mlterm\u3092\u518d\u8d77\u52d5\u3059\u308b\u3053\u3068\u3067Alt + f/b\u3067\u306e\u5358\u8a9e\u79fb\u52d5\u304c\u5b9f\u73fe\u3067\u304d\u307e\u3057\u305f :)\n\n\n\u74b0\u5883\n\n$ dpkg-query -W mlterm*\nmlterm 3.9.0-1+b1\nmlterm-common 3.9.0-1+b1\nmlterm-im-m17nlib\nmlterm-im-scim\nmlterm-im-uim\nmlterm-tiny 3.9.0-1+b1\nmlterm-tools 3.9.0-1+b1\n$ lsb_release -dr\nDescription: Debian GNU/Linux bookworm/sid\nRelease: unstable\n$ arch\nx86_64", "date_published": "2022-04-12T06:08:28+09:00", "date_modified": "2022-04-12T06:14:37+09:00", "authors": [ { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" } ], "author": { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" }, "tags": [ "mlterm", "terminal", "Debian", "Linux", "sid" ] }, { "id": "http://matoken.org/blog/?p=3582", "url": "https://matoken.org/blog/2022/04/08/use-twemoji-with-mlterm/", "title": "mlterm\u3067Twemoji\u5229\u7528", "content_html": "
\n

\u6700\u8fd1\u7aef\u672b\u30bd\u30d5\u30c8\u30a6\u30a7\u30a2\u3092mlterm\u306b\u5207\u308a\u66ff\u3048\u3088\u3046\u3068\u8a2d\u5b9a\u3057\u3066\u3044\u307e\u3059\uff0e\u4eca\u56de\u306f\u7d75\u6587\u5b57\u306bTwitter Emoji\u306eTwemoji\u3092\u4f7f\u3063\u3066\u307f\u307e\u3057\u305f\uff0e

\n
\n
\n\n
\n

\n
\n

3.4.2\u3067\u5165\u3063\u305f\u3088\u3046\u3067\uff0c\u3053\u306e\u3068\u304d\u306fgemoji\u3092\u4f7f\u3063\u3066\u3044\u305f\u3088\u3046\u3067\u3059\u304c\uff0c\u4eca\u898b\u308b\u3068\u753b\u50cf\u304c\u898b\u5f53\u305f\u308a\u307e\u305b\u3093\uff0e

\n
\n
\n
[Mlterm-dev-en mlterm 3.4.2 released]
\n
\n
\n\n
\n
\n
\n
\n

\u4ee5\u4e0b\u306e\u30da\u30fc\u30b8\u3092\u53c2\u8003\u306bTwemoji\u3092\u4f7f\u3063\u3066\u307f\u307e\u3057\u305f\uff0e

\n
\n
\n\n
\n
\n
\n
$ git -C ~/src/ clone --depth 1 https://github.com/twitter/twemoji.git (1)\n$ ln -s ~/src/twemoji/assets/72x72 ~/.mlterm/emoji (2)
\n
\n
\n
\n
    \n
  1. \u9069\u5f53\u306a\u5834\u6240\u306bTwemoji\u3092clone
  2. \n
  3. ~/.mlterm/emoji \u306b\u30b7\u30f3\u30dc\u30ea\u30c3\u30af\u30ea\u30f3\u30af
  4. \n
\n
\n
\n

\u3053\u306e\u72b6\u614b\u3067mlterm\u3092\u65b0\u898f\u306b\u8d77\u52d5\u3057\u3066\u307f\u308b\u3068\u7d75\u6587\u5b57\u304cTwemoji\u306b\u306a\u308a\u30ab\u30e9\u30d5\u30eb\u306b\u306a\u308a\u307e\u3057\u305f :)

\n
\n
\n

\"mlterm

\n
\n
\n
\u74b0\u5883
\n
\n
$ dpkg-query -W mlterm*\nmlterm  3.9.0-1\nmlterm-common   3.9.0-1\nmlterm-im-ibus  3.9.0-1\nmlterm-tools    3.9.0-1\n$ lsb_release -dr\nDescription:    Debian GNU/Linux 11 (bullseye)\nRelease:        11\n$ arch\nx86_64
\n
\n
\n", "content_text": "\u6700\u8fd1\u7aef\u672b\u30bd\u30d5\u30c8\u30a6\u30a7\u30a2\u3092mlterm\u306b\u5207\u308a\u66ff\u3048\u3088\u3046\u3068\u8a2d\u5b9a\u3057\u3066\u3044\u307e\u3059\uff0e\u4eca\u56de\u306f\u7d75\u6587\u5b57\u306bTwitter Emoji\u306eTwemoji\u3092\u4f7f\u3063\u3066\u307f\u307e\u3057\u305f\uff0e\n\n\n\nmlterm\ntwitter/twemoji: Emoji for everyone. https://twemoji.twitter.com/\n\n\n\n\n3.4.2\u3067\u5165\u3063\u305f\u3088\u3046\u3067\uff0c\u3053\u306e\u3068\u304d\u306fgemoji\u3092\u4f7f\u3063\u3066\u3044\u305f\u3088\u3046\u3067\u3059\u304c\uff0c\u4eca\u898b\u308b\u3068\u753b\u50cf\u304c\u898b\u5f53\u305f\u308a\u307e\u305b\u3093\uff0e\n\n\n[Mlterm-dev-en mlterm 3.4.2 released]\n\n\n\nSupport colorful emoji with the use of http://github.com/github/gemoji.\n(Copy images/emoji/unicode/*.png in https://github.com/github/gemoji/archive/master.zip\nto ~/.mlterm/emoji/ in advance.)\n\n\n\n\n\n\u4ee5\u4e0b\u306e\u30da\u30fc\u30b8\u3092\u53c2\u8003\u306bTwemoji\u3092\u4f7f\u3063\u3066\u307f\u307e\u3057\u305f\uff0e\n\n\n\nmlterm \u60c5\u5831 – \u30c0\u30e1\u51fa\u3057 Blog\n\n\n\n\n$ git -C ~/src/ clone --depth 1 https://github.com/twitter/twemoji.git (1)\n$ ln -s ~/src/twemoji/assets/72x72 ~/.mlterm/emoji (2)\n\n\n\n\n\u9069\u5f53\u306a\u5834\u6240\u306bTwemoji\u3092clone\n~/.mlterm/emoji \u306b\u30b7\u30f3\u30dc\u30ea\u30c3\u30af\u30ea\u30f3\u30af\n\n\n\n\u3053\u306e\u72b6\u614b\u3067mlterm\u3092\u65b0\u898f\u306b\u8d77\u52d5\u3057\u3066\u307f\u308b\u3068\u7d75\u6587\u5b57\u304cTwemoji\u306b\u306a\u308a\u30ab\u30e9\u30d5\u30eb\u306b\u306a\u308a\u307e\u3057\u305f :)\n\n\n\n\n\n\u74b0\u5883\n\n$ dpkg-query -W mlterm*\nmlterm 3.9.0-1\nmlterm-common 3.9.0-1\nmlterm-im-ibus 3.9.0-1\nmlterm-tools 3.9.0-1\n$ lsb_release -dr\nDescription: Debian GNU/Linux 11 (bullseye)\nRelease: 11\n$ arch\nx86_64", "date_published": "2022-04-08T00:06:08+09:00", "date_modified": "2022-04-08T00:09:33+09:00", "authors": [ { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" } ], "author": { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" }, "tags": [ "emoji", "mlterm", "terminal", "bullseye", "Debian", "Linux" ] }, { "id": "http://matoken.org/blog/?p=3265", "url": "https://matoken.org/blog/2021/06/14/termmaze3d/", "title": "AWK\u88fdFPS\u30b2\u30fc\u30e0\u306e\u300cTERMMAZE3D\u300d", "content_html": "
\n

TERMMAZE3D \u3068\u3044\u3046\u7aef\u672b\u4e0a\u3067\u52d5\u4f5c\u3059\u308bAWK\u88fd\u306eFPS\u30b2\u30fc\u30e0\u3092\u898b\u3064\u3051\u305f\u306e\u3067\u904a\u3093\u3067\u307f\u307e\u3057\u305f\uff0e

\n
\n
\n\n
\n
\n

\n
\n
\n

\u307e\u305a\u306f\u4f9d\u5b58\u30b3\u30de\u30f3\u30c9\u3092\u5c0e\u5165\u3057\u307e\u3059\uff0e

\n
\n
\n
\n
\n

Requirements
\ngawk or awk (except mawk)
\nGNU coreutils or equivalent BSD command (dd, echo, sleep, stty)

\n
\n
\n
\n
\n

Linux\u74b0\u5883\u3067\u306fGNU Coreutils + GNU awk\uff0c*bsd\u74b0\u5883\u3067\u306fdd, echo, sleep, stty + nawk \u3042\u305f\u308a\u3067\u3057\u3087\u3046\u304b\uff0e\u4eca\u56de\u306fDebian bullseye \u74b0\u5883\u306a\u306e\u3067\u3053\u3093\u306a\u611f\u3058\u3067\uff0eGNU Coreutils, GNU awk \u3068\u30ea\u30dd\u30b8\u30c8\u30ea\u3092clone \u3059\u308b\u305f\u3081\u306bgit \u3092\u5c0e\u5165\u3057\u307e\u3059\uff0e

\n
\n
\n
\n
$ sudo apt install coreutils gawk git
\n
\n
\n
\n

source \u3092clone \u3057\u307e\u3059\uff0e

\n
\n
\n
\n
$ git clone https://github.com/mikkun/termmaze3d (1)\n$ cd termmaze3d\n$ ./termmaze3d.awk (2)
\n
\n
\n
\n
    \n
  1. TERMMAZE3D\u3092clone
  2. \n
  3. \u5b9f\u884c
  4. \n
\n
\n
\n

\u3082\u3057\uff0c\u5b9f\u884c\u6642\u306b\u771f\u3063\u9ed2\u306a\u753b\u9762\u306b\u306a\u3063\u3066\u3057\u307e\u3046\u5834\u5408\u306fawk\u304c mawk \u306b\u5411\u3044\u3066\u3044\u308b\u3068\u601d\u3046\u306e\u3067\u6b21\u306e\u30da\u30fc\u30b8\u3092\u53c2\u8003\u306bgawk\u306b\u5207\u308a\u66ff\u3048\u308b\u304b\uff0c $ gawk -f ./termmaze3d.awk \u306e\u3088\u3046\u306b gawk \u30b3\u30de\u30f3\u30c9\u3092\u76f4\u306b\u53e9\u304f\u3068\u3044\u3044\u3067\u3059\uff0e
\n\u7aef\u672b\u30b5\u30a4\u30ba\u306f80×22\u3068\u6bd4\u8f03\u7684\u5c0f\u3055\u3044\u306e\u3067\u30d5\u30a9\u30f3\u30c8\u30b5\u30a4\u30ba\u3092\u8abf\u6574\u3059\u308b\u3068\u3044\u3044\u611f\u3058\u306b\u306a\u308a\u307e\u3059\uff0e

\n
\n
\n\n
\n
\n

\u30b2\u30fc\u30e0\u306f\u6bce\u56de\u81ea\u52d5\u751f\u6210\u3055\u308c\u308b\u30de\u30c3\u30d7\u306e\u4e2d\u3092\u6b69\u304d\u56de\u3063\u3066\u30bf\u30a4\u30e0\u30a2\u30c3\u30d7\u3059\u308b\u524d\u306b\u5b9d\u7269\u30925\u3064\u96c6\u3081\u308b\u3068\u30af\u30ea\u30a2\u3067\u3059\uff0e\u8d64\u3044\u6575\u304c\u51fa\u3066\u304d\u307e\u3059\u304c\u5f53\u305f\u308b\u3068\u30bf\u30a4\u30e0\u304c\u6e1b\u3063\u3066\u3044\u304d\u307e\u3059\uff0e k key\u3067\u653b\u6483\u3057\u305f\u308a\u9003\u3052\u307e\u3057\u3087\u3046\uff0e

\n
\n
\n

\u4ee5\u4e0b\u30d7\u30ec\u30a4\u52d5\u753b\u3067\u3059\uff0e

\n
\n
\n


\n(backup)

\n
\n
\n

awk\u3067\u3067\u304d\u305f\u30b2\u30fc\u30e0\u3068\u3044\u3048\u3070\u4ee5\u524d awkaster \u3068\u3044\u3046\u3082\u306e\u3082\u3042\u308a\u307e\u3057\u305f\uff0e\u540c\u4f5c\u8005\u306e\u30c6\u30c8\u30ea\u30b9\u30e9\u30a4\u30af\u306aAWKTC\u3082AWK\u88fd\u3067\u3059\uff0e\u8208\u5473\u306e\u3042\u308b\u65b9\u306f\u3053\u308c\u3089\u3082\u904a\u3093\u3067\u307f\u308b\u3068\u3044\u3044\u304b\u3082\u3057\u308c\u307e\u305b\u3093\uff0e

\n
\n
\n\n
\n
\n
\u74b0\u58831
\n
\n
$ git log --oneline\n16e844a (HEAD -> main, tag: v1.0.0, origin/main, origin/HEAD) :tada: Initial co\n$ dpkg-query -W gawk coreutils git\ncoreutils       8.32-4+b1\ngawk    1:5.1.0-1\ngit     1:2.30.2-1\n$ lsb_release -dr\nDescription:    Debian GNU/Linux 11 (bullseye)\nRelease:        11\n$ arch\nx86_64
\n
\n
\n
\n
\u74b0\u58832
\n
\n
$ git log --oneline\n16e844a (HEAD -> main, tag: v1.0.0, origin/main, origin/HEAD) :tada: Initial co\n$ dpkg-query -W gawk coreutils git\ncoreutils       8.30-3\ngawk    1:4.2.1+dfsg-1\ngit     1:2.20.1-2+deb10u3\n$ lsb_release -dr\nDescription:    Raspbian GNU/Linux 10 (buster)\nRelease:        10\n$ arch\narmv7l
\n
\n
\n", "content_text": "TERMMAZE3D \u3068\u3044\u3046\u7aef\u672b\u4e0a\u3067\u52d5\u4f5c\u3059\u308bAWK\u88fd\u306eFPS\u30b2\u30fc\u30e0\u3092\u898b\u3064\u3051\u305f\u306e\u3067\u904a\u3093\u3067\u307f\u307e\u3057\u305f\uff0e\n\n\n\nmikkun/termmaze3d: Pseudo-3D first-person shooter written in AWK\n\n\n\n\n\n\n\u307e\u305a\u306f\u4f9d\u5b58\u30b3\u30de\u30f3\u30c9\u3092\u5c0e\u5165\u3057\u307e\u3059\uff0e\n\n\n\n\nRequirements\ngawk or awk (except mawk)\nGNU coreutils or equivalent BSD command (dd, echo, sleep, stty)\n\n\n\n\nLinux\u74b0\u5883\u3067\u306fGNU Coreutils + GNU awk\uff0c*bsd\u74b0\u5883\u3067\u306fdd, echo, sleep, stty + nawk \u3042\u305f\u308a\u3067\u3057\u3087\u3046\u304b\uff0e\u4eca\u56de\u306fDebian bullseye \u74b0\u5883\u306a\u306e\u3067\u3053\u3093\u306a\u611f\u3058\u3067\uff0eGNU Coreutils, GNU awk \u3068\u30ea\u30dd\u30b8\u30c8\u30ea\u3092clone \u3059\u308b\u305f\u3081\u306bgit \u3092\u5c0e\u5165\u3057\u307e\u3059\uff0e\n\n\n\n$ sudo apt install coreutils gawk git\n\n\n\nsource \u3092clone \u3057\u307e\u3059\uff0e\n\n\n\n$ git clone https://github.com/mikkun/termmaze3d (1)\n$ cd termmaze3d\n$ ./termmaze3d.awk (2)\n\n\n\n\nTERMMAZE3D\u3092clone\n\u5b9f\u884c\n\n\n\n\u3082\u3057\uff0c\u5b9f\u884c\u6642\u306b\u771f\u3063\u9ed2\u306a\u753b\u9762\u306b\u306a\u3063\u3066\u3057\u307e\u3046\u5834\u5408\u306fawk\u304c mawk \u306b\u5411\u3044\u3066\u3044\u308b\u3068\u601d\u3046\u306e\u3067\u6b21\u306e\u30da\u30fc\u30b8\u3092\u53c2\u8003\u306bgawk\u306b\u5207\u308a\u66ff\u3048\u308b\u304b\uff0c $ gawk -f ./termmaze3d.awk \u306e\u3088\u3046\u306b gawk \u30b3\u30de\u30f3\u30c9\u3092\u76f4\u306b\u53e9\u304f\u3068\u3044\u3044\u3067\u3059\uff0e\n\u7aef\u672b\u30b5\u30a4\u30ba\u306f80×22\u3068\u6bd4\u8f03\u7684\u5c0f\u3055\u3044\u306e\u3067\u30d5\u30a9\u30f3\u30c8\u30b5\u30a4\u30ba\u3092\u8abf\u6574\u3059\u308b\u3068\u3044\u3044\u611f\u3058\u306b\u306a\u308a\u307e\u3059\uff0e\n\n\n\nDebian/Ubuntu\u3067awk\u3092\u5207\u308a\u66ff\u3048\u308b \u2013 matoken\u2019s meme\n\n\n\n\u30b2\u30fc\u30e0\u306f\u6bce\u56de\u81ea\u52d5\u751f\u6210\u3055\u308c\u308b\u30de\u30c3\u30d7\u306e\u4e2d\u3092\u6b69\u304d\u56de\u3063\u3066\u30bf\u30a4\u30e0\u30a2\u30c3\u30d7\u3059\u308b\u524d\u306b\u5b9d\u7269\u30925\u3064\u96c6\u3081\u308b\u3068\u30af\u30ea\u30a2\u3067\u3059\uff0e\u8d64\u3044\u6575\u304c\u51fa\u3066\u304d\u307e\u3059\u304c\u5f53\u305f\u308b\u3068\u30bf\u30a4\u30e0\u304c\u6e1b\u3063\u3066\u3044\u304d\u307e\u3059\uff0e k key\u3067\u653b\u6483\u3057\u305f\u308a\u9003\u3052\u307e\u3057\u3087\u3046\uff0e\n\n\n\u4ee5\u4e0b\u30d7\u30ec\u30a4\u52d5\u753b\u3067\u3059\uff0e\n\n\n\n(backup)\n\n\nawk\u3067\u3067\u304d\u305f\u30b2\u30fc\u30e0\u3068\u3044\u3048\u3070\u4ee5\u524d awkaster \u3068\u3044\u3046\u3082\u306e\u3082\u3042\u308a\u307e\u3057\u305f\uff0e\u540c\u4f5c\u8005\u306e\u30c6\u30c8\u30ea\u30b9\u30e9\u30a4\u30af\u306aAWKTC\u3082AWK\u88fd\u3067\u3059\uff0e\u8208\u5473\u306e\u3042\u308b\u65b9\u306f\u3053\u308c\u3089\u3082\u904a\u3093\u3067\u307f\u308b\u3068\u3044\u3044\u304b\u3082\u3057\u308c\u307e\u305b\u3093\uff0e\n\n\n\nawk \u88fd 3D\u30b7\u30e5\u30fc\u30c6\u30a3\u30f3\u30b0\u30b2\u30fc\u30e0 awkaster \u3067\u904a\u3093\u3067\u307f\u305f \u2013 matoken\u2019s meme\nmikkun/AWKTC: AWKTC is Workable Klutzy Time-wasting Command\n\n\n\n\u74b0\u58831\n\n$ git log --oneline\n16e844a (HEAD -> main, tag: v1.0.0, origin/main, origin/HEAD) :tada: Initial co\n$ dpkg-query -W gawk coreutils git\ncoreutils 8.32-4+b1\ngawk 1:5.1.0-1\ngit 1:2.30.2-1\n$ lsb_release -dr\nDescription: Debian GNU/Linux 11 (bullseye)\nRelease: 11\n$ arch\nx86_64\n\n\n\n\u74b0\u58832\n\n$ git log --oneline\n16e844a (HEAD -> main, tag: v1.0.0, origin/main, origin/HEAD) :tada: Initial co\n$ dpkg-query -W gawk coreutils git\ncoreutils 8.30-3\ngawk 1:4.2.1+dfsg-1\ngit 1:2.20.1-2+deb10u3\n$ lsb_release -dr\nDescription: Raspbian GNU/Linux 10 (buster)\nRelease: 10\n$ arch\narmv7l", "date_published": "2021-06-14T00:20:14+09:00", "date_modified": "2021-06-14T00:25:56+09:00", "authors": [ { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" } ], "author": { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" }, "tags": [ "awk", "game", "gawk", "terminal", "bullseye", "Debian", "Linux", "Raspberry Pi", "Raspbian Buster" ] }, { "id": "http://matoken.org/blog/?p=3149", "url": "https://matoken.org/blog/2021/03/27/try-terminal-dashboard-wtf/", "title": "\u30bf\u30fc\u30df\u30ca\u30eb\u30c0\u30c3\u30b7\u30e5\u30dc\u30fc\u30c9\u306eWTF\u3092\u5c11\u3057\u8a66\u3059", "content_html": "
\n

WTF\u3068\u3044\u3046Go\u88fd\u306e\u30bf\u30fc\u30df\u30ca\u30eb\u30c0\u30c3\u30b7\u30e5\u30dc\u30fc\u30c9\u3092\u898b\u304b\u3051\u305f\u306e\u3067\u5c11\u3057\u8a66\u3057\u3066\u307f\u307e\u3057\u305f\uff0e

\n
\n
\n\n
\n
\n

\u5c0e\u5165\u306fLinux\u306eamd64/armv6/arm64\uff0cmacOS\u306eamd64/arm64\u306fGitHub release\u30da\u30fc\u30b8\u306b\u3042\u308b\u306e\u3067\u305d\u308c\u3092\u4f7f\u3046\u306e\u304c\u624b\u3063\u53d6\u308a\u65e9\u3044\u3067\u3059\uff0e
\n\u4eca\u56de\u306farmv6\u3092Raspberry Pi 3 Model B\u306eRaspberry Pi OS armhf\u3067\u8a66\u3057\u307e\u3057\u305f\uff0e

\n
\n
\n
\n
$ wget https://github.com/wtfutil/wtf/releases/download/v0.36.0/wtf_0.36.0_linux_armv6.tar.gz https://github.com/wtfutil/wtf/releases/download/v0.36.0/wtf_0.36.0_checksums.txt (1)\n$ sha256sum -c ./wtf_0.36.0_checksums.txt 2>&1 | grep wtf_0.36.0_linux_armv6.tar.gz: (2)\nwtf_0.36.0_linux_armv6.tar.gz: OK\n$ tar tvf ./wtf_0.36.0_linux_armv6.tar.gz (3)\n-rw-r--r-- ccummer/staff 34534 2021-03-23 19:20 wtf_0.36.0_linux_armv6/CHANGELOG.md\n-rw-r--r-- ccummer/staff 14878 2018-12-01 01:13 wtf_0.36.0_linux_armv6/LICENSE.md\n-rw-r--r-- ccummer/staff 39700 2021-03-20 13:46 wtf_0.36.0_linux_armv6/README.md\n-rwxr-xr-x ccummer/staff 41615360 2021-03-23 19:35 wtf_0.36.0_linux_armv6/wtfutil\n$ tar xf ./wtf_0.36.0_linux_armv6.tar.gz (4)\n$ wtf_0.36.0_linux_armv6/wtfutil (5)
\n
\n
\n
\n
    \n
  1. Releases \u30da\u30fc\u30b8\u304b\u3089\u6700\u65b0\u306e\u30d0\u30a4\u30ca\u30ea\u3068\u30c1\u30a7\u30c3\u30af\u30b5\u30e0\u30d5\u30a1\u30a4\u30eb\u3092\u5165\u624b
  2. \n
  3. \u30c1\u30a7\u30c3\u30af\u30b5\u30e0\u30d5\u30a1\u30a4\u30eb\u306e\u4e2d\u3092\u898b\u308b\u3068\u6841\u6570\u7684\u306bsha256\u306e\u3088\u3046\u3060\u3063\u305f\u306e\u3067\uff0csha256sum\u3067\u30c1\u30a7\u30c3\u30af\u30b5\u30e0\u3092\u78ba\u8a8d
  4. \n
  5. \u30a2\u30fc\u30ab\u30a4\u30d6\u306e\u78ba\u8a8d
  6. \n
  7. \u30a2\u30fc\u30ab\u30a4\u30d6\u306e\u5c55\u958b
  8. \n
  9. WTF\u8d77\u52d5
  10. \n
\n
\n
\n

\u30d0\u30a4\u30ca\u30ea\u30a2\u30fc\u30ab\u30a4\u30d6\u3092\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3057\u3066\u5c55\u958b\u3057\u307e\u3057\u305f\uff0e
\nwtf_0.36.0_linux_armv6/wtfutil \u3092\u5b9f\u884c\u3059\u308b\u3068\u65e2\u5b9a\u5024\u3067\u8d77\u52d5\u3057\u307e\u3059\uff0e\u3057\u304b\u3057\u5a18\u306e\u8a2d\u5b9a\u3060\u3068\u30bf\u30fc\u30df\u30ca\u30eb\u30b5\u30a4\u30ba\u56fa\u5b9a\u3060\u3063\u305f\u308a\u3042\u307e\u308a\u5b09\u3057\u304f\u3042\u308a\u307e\u305b\u3093\uff0e

\n
\n
\n

\u30ea\u30dd\u30b8\u30c8\u30ea\u306e _sample_configs \u4ee5\u4e0b\u306b\u30b5\u30f3\u30d7\u30eb\u304c\u3042\u308b\u306e\u3067\u3053\u308c\u3092\u6307\u5b9a\u3057\u3066\u8d77\u52d5\u3057\u3066\u307f\u307e\u3059\uff0e

\n
\n
\n

\u8a2d\u5b9a\u30d5\u30a1\u30a4\u30eb\u306f\u65e2\u5b9a\u5024\u306f ~/.config/wtf/config.yml \u3092\u4f7f\u3044\u307e\u3059\uff0e\u5b58\u5728\u3057\u306a\u3044\u5834\u5408\u306f\u30c7\u30d5\u30a9\u30eb\u30c8\u306e\u3082\u306e\u304c\u751f\u6210\u3055\u308c\u307e\u3059\uff0e\u82e5\u3057\u304f\u306f wtf \u306e -c, --config= \u30aa\u30d7\u30b7\u30e7\u30f3\u3067\u6307\u5b9a\u3057\u305f\u8a2d\u5b9a\u30d5\u30a1\u30a4\u30eb\u3092\u6307\u5b9a\u3067\u304d\u307e\u3059\uff0e

\n
\n
\n
\n
$ wtf_0.36.0_linux_armv6/wtfutil --config=../src/wtf/_sample_configs/sample_config.yml
\n
\n
\n
\n

\"wtf

\n
\n
\n

wtf\u30ea\u30dd\u30b8\u30c8\u30ea\u306e _sample_configs/sample_config.yml \u3092\u6307\u5b9a\u3057\u3066\u8d77\u52d5\u3059\u308b\u3068\u3053\u3093\u306a\u611f\u3058\u3067\u30bf\u30fc\u30df\u30ca\u30eb\u30b5\u30a4\u30ba\u306b\u3082\u8ffd\u5f93\u3057\u3066\u3044\u3044\u611f\u3058\u3067\u3059\uff0e

\n
\n
\n

\"wtf

\n
\n
\n
\n
diff --git a/_sample_configs/sample_config.yml b/_sample_configs/sample_config.yml\nindex e16690a0..fa3bf5c0 100644\n--- a/_sample_configs/sample_config.yml\n+++ b/_sample_configs/sample_config.yml\n@@ -73,10 +73,21 @@ wtf:\n         width: 1\n       refreshInterval: 15\n       sort: \"alphabetical\"\n+    feedreader:\n+      enabled: true\n+      feeds:\n+        - https://nitter.matoken.org/matoken1/rss\n+      feedLimit: 10\n+      position:\n+        top: 1\n+        left: 3\n+        height: 1\n+        width: 1\n+      updateInterval: 14400\n     battery:\n       type: power\n       title: \"\"\u26a1\"\"\n-      enabled: true\n+      enabled: false\n       position:\n         top: 1\n         left: 3
\n
\n
\n
\n

Raspberry Pi\u306f\u96fb\u6e90\u30b9\u30c6\u30fc\u30bf\u30b9\u306f\u898b\u3048\u306a\u3044\u306e\u3067\u7121\u52b9\u306b\u3057\u3066\u4ee3\u308f\u308a\u306bfeedreader\u3092\u6709\u52b9\u306b\u3057\u3066Nitter\u7d4c\u7531\u3067Twitter\u306eRSS\u30d5\u30a3\u30fc\u30c9\u3092\u8868\u793a\u3057\u3066\u307f\u307e\u3057\u305f\uff0e

\n
\n
\n

\u65e5\u672c\u8a9e\u3084\u7d75\u6587\u5b57\u3082\u5d29\u308c\u305a\u8868\u793a\u3067\u304d\u3066\u826f\u3055\u305d\u3046\u3067\u3059\u306d\uff0e

\n
\n
\n

\u305d\u306e\u4ed6\u306b\u3082\u305f\u304f\u3055\u3093\u306e\u30e2\u30b8\u30e5\u30fc\u30eb\u304c\u3042\u308b\u3088\u3046\u3067\u3059\uff0e\u3053\u3061\u3089\u306e\u30da\u30fc\u30b8\u304b\u3089\u78ba\u8a8d\u3067\u304d\u307e\u3059\uff0e(Nitter\u3092\u901a\u3055\u306a\u304f\u3066\u3082Twitter\u30e2\u30b8\u30e5\u30fc\u30eb\u3082\u3042\u3063\u305f)

\n
\n
\n\n
\n
\n

\u81ea\u5206\u306e\u7528\u9014\u306b\u5408\u308f\u305b\u3066\u8a2d\u5b9a\u3057\u3066\u3044\u304f\u3068\u4fbf\u5229\u305d\u3046\u3067\u3059\uff0e

\n
\n
\n
\u74b0\u5883
\n
\n
$ wtf_0.36.0_linux_armv6/wtfutil --version\n0.36.0 (2021-03-23T10:33:30Z)\n$ lsb_release -dr\nDescription:    Raspbian GNU/Linux 10 (buster)\nRelease:        10\n$ uname -m\narmv7l\n$ cat /proc/device-tree/model ;echo\nRaspberry Pi 3 Model B Rev 1.2
\n
\n
\n", "content_text": "WTF\u3068\u3044\u3046Go\u88fd\u306e\u30bf\u30fc\u30df\u30ca\u30eb\u30c0\u30c3\u30b7\u30e5\u30dc\u30fc\u30c9\u3092\u898b\u304b\u3051\u305f\u306e\u3067\u5c11\u3057\u8a66\u3057\u3066\u307f\u307e\u3057\u305f\uff0e\n\n\n\nWTF – the terminal dashboard – WTF – the terminal dashboard\nReleases \u00b7 wtfutil/wtf\n\n\n\n\u5c0e\u5165\u306fLinux\u306eamd64/armv6/arm64\uff0cmacOS\u306eamd64/arm64\u306fGitHub release\u30da\u30fc\u30b8\u306b\u3042\u308b\u306e\u3067\u305d\u308c\u3092\u4f7f\u3046\u306e\u304c\u624b\u3063\u53d6\u308a\u65e9\u3044\u3067\u3059\uff0e\n\u4eca\u56de\u306farmv6\u3092Raspberry Pi 3 Model B\u306eRaspberry Pi OS armhf\u3067\u8a66\u3057\u307e\u3057\u305f\uff0e\n\n\n\n$ wget https://github.com/wtfutil/wtf/releases/download/v0.36.0/wtf_0.36.0_linux_armv6.tar.gz https://github.com/wtfutil/wtf/releases/download/v0.36.0/wtf_0.36.0_checksums.txt (1)\n$ sha256sum -c ./wtf_0.36.0_checksums.txt 2>&1 | grep wtf_0.36.0_linux_armv6.tar.gz: (2)\nwtf_0.36.0_linux_armv6.tar.gz: OK\n$ tar tvf ./wtf_0.36.0_linux_armv6.tar.gz (3)\n-rw-r--r-- ccummer/staff 34534 2021-03-23 19:20 wtf_0.36.0_linux_armv6/CHANGELOG.md\n-rw-r--r-- ccummer/staff 14878 2018-12-01 01:13 wtf_0.36.0_linux_armv6/LICENSE.md\n-rw-r--r-- ccummer/staff 39700 2021-03-20 13:46 wtf_0.36.0_linux_armv6/README.md\n-rwxr-xr-x ccummer/staff 41615360 2021-03-23 19:35 wtf_0.36.0_linux_armv6/wtfutil\n$ tar xf ./wtf_0.36.0_linux_armv6.tar.gz (4)\n$ wtf_0.36.0_linux_armv6/wtfutil (5)\n\n\n\n\nReleases \u30da\u30fc\u30b8\u304b\u3089\u6700\u65b0\u306e\u30d0\u30a4\u30ca\u30ea\u3068\u30c1\u30a7\u30c3\u30af\u30b5\u30e0\u30d5\u30a1\u30a4\u30eb\u3092\u5165\u624b\n\u30c1\u30a7\u30c3\u30af\u30b5\u30e0\u30d5\u30a1\u30a4\u30eb\u306e\u4e2d\u3092\u898b\u308b\u3068\u6841\u6570\u7684\u306bsha256\u306e\u3088\u3046\u3060\u3063\u305f\u306e\u3067\uff0csha256sum\u3067\u30c1\u30a7\u30c3\u30af\u30b5\u30e0\u3092\u78ba\u8a8d\n\u30a2\u30fc\u30ab\u30a4\u30d6\u306e\u78ba\u8a8d\n\u30a2\u30fc\u30ab\u30a4\u30d6\u306e\u5c55\u958b\nWTF\u8d77\u52d5\n\n\n\n\u30d0\u30a4\u30ca\u30ea\u30a2\u30fc\u30ab\u30a4\u30d6\u3092\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3057\u3066\u5c55\u958b\u3057\u307e\u3057\u305f\uff0e\nwtf_0.36.0_linux_armv6/wtfutil \u3092\u5b9f\u884c\u3059\u308b\u3068\u65e2\u5b9a\u5024\u3067\u8d77\u52d5\u3057\u307e\u3059\uff0e\u3057\u304b\u3057\u5a18\u306e\u8a2d\u5b9a\u3060\u3068\u30bf\u30fc\u30df\u30ca\u30eb\u30b5\u30a4\u30ba\u56fa\u5b9a\u3060\u3063\u305f\u308a\u3042\u307e\u308a\u5b09\u3057\u304f\u3042\u308a\u307e\u305b\u3093\uff0e\n\n\n\u30ea\u30dd\u30b8\u30c8\u30ea\u306e _sample_configs \u4ee5\u4e0b\u306b\u30b5\u30f3\u30d7\u30eb\u304c\u3042\u308b\u306e\u3067\u3053\u308c\u3092\u6307\u5b9a\u3057\u3066\u8d77\u52d5\u3057\u3066\u307f\u307e\u3059\uff0e\n\n\n\u8a2d\u5b9a\u30d5\u30a1\u30a4\u30eb\u306f\u65e2\u5b9a\u5024\u306f ~/.config/wtf/config.yml \u3092\u4f7f\u3044\u307e\u3059\uff0e\u5b58\u5728\u3057\u306a\u3044\u5834\u5408\u306f\u30c7\u30d5\u30a9\u30eb\u30c8\u306e\u3082\u306e\u304c\u751f\u6210\u3055\u308c\u307e\u3059\uff0e\u82e5\u3057\u304f\u306f wtf \u306e -c, --config= \u30aa\u30d7\u30b7\u30e7\u30f3\u3067\u6307\u5b9a\u3057\u305f\u8a2d\u5b9a\u30d5\u30a1\u30a4\u30eb\u3092\u6307\u5b9a\u3067\u304d\u307e\u3059\uff0e\n\n\n\n$ wtf_0.36.0_linux_armv6/wtfutil --config=../src/wtf/_sample_configs/sample_config.yml\n\n\n\n\n\n\nwtf\u30ea\u30dd\u30b8\u30c8\u30ea\u306e _sample_configs/sample_config.yml \u3092\u6307\u5b9a\u3057\u3066\u8d77\u52d5\u3059\u308b\u3068\u3053\u3093\u306a\u611f\u3058\u3067\u30bf\u30fc\u30df\u30ca\u30eb\u30b5\u30a4\u30ba\u306b\u3082\u8ffd\u5f93\u3057\u3066\u3044\u3044\u611f\u3058\u3067\u3059\uff0e\n\n\n\n\n\n\ndiff --git a/_sample_configs/sample_config.yml b/_sample_configs/sample_config.yml\nindex e16690a0..fa3bf5c0 100644\n--- a/_sample_configs/sample_config.yml\n+++ b/_sample_configs/sample_config.yml\n@@ -73,10 +73,21 @@ wtf:\n width: 1\n refreshInterval: 15\n sort: \"alphabetical\"\n+ feedreader:\n+ enabled: true\n+ feeds:\n+ - https://nitter.matoken.org/matoken1/rss\n+ feedLimit: 10\n+ position:\n+ top: 1\n+ left: 3\n+ height: 1\n+ width: 1\n+ updateInterval: 14400\n battery:\n type: power\n title: \"\"\n- enabled: true\n+ enabled: false\n position:\n top: 1\n left: 3\n\n\n\nRaspberry Pi\u306f\u96fb\u6e90\u30b9\u30c6\u30fc\u30bf\u30b9\u306f\u898b\u3048\u306a\u3044\u306e\u3067\u7121\u52b9\u306b\u3057\u3066\u4ee3\u308f\u308a\u306bfeedreader\u3092\u6709\u52b9\u306b\u3057\u3066Nitter\u7d4c\u7531\u3067Twitter\u306eRSS\u30d5\u30a3\u30fc\u30c9\u3092\u8868\u793a\u3057\u3066\u307f\u307e\u3057\u305f\uff0e\n\n\n\u65e5\u672c\u8a9e\u3084\u7d75\u6587\u5b57\u3082\u5d29\u308c\u305a\u8868\u793a\u3067\u304d\u3066\u826f\u3055\u305d\u3046\u3067\u3059\u306d\uff0e\n\n\n\u305d\u306e\u4ed6\u306b\u3082\u305f\u304f\u3055\u3093\u306e\u30e2\u30b8\u30e5\u30fc\u30eb\u304c\u3042\u308b\u3088\u3046\u3067\u3059\uff0e\u3053\u3061\u3089\u306e\u30da\u30fc\u30b8\u304b\u3089\u78ba\u8a8d\u3067\u304d\u307e\u3059\uff0e(Nitter\u3092\u901a\u3055\u306a\u304f\u3066\u3082Twitter\u30e2\u30b8\u30e5\u30fc\u30eb\u3082\u3042\u3063\u305f)\n\n\n\nHome – WTF – the terminal dashboard\n\n\n\n\u81ea\u5206\u306e\u7528\u9014\u306b\u5408\u308f\u305b\u3066\u8a2d\u5b9a\u3057\u3066\u3044\u304f\u3068\u4fbf\u5229\u305d\u3046\u3067\u3059\uff0e\n\n\n\u74b0\u5883\n\n$ wtf_0.36.0_linux_armv6/wtfutil --version\n0.36.0 (2021-03-23T10:33:30Z)\n$ lsb_release -dr\nDescription: Raspbian GNU/Linux 10 (buster)\nRelease: 10\n$ uname -m\narmv7l\n$ cat /proc/device-tree/model ;echo\nRaspberry Pi 3 Model B Rev 1.2", "date_published": "2021-03-27T23:13:52+09:00", "date_modified": "2021-03-27T23:13:52+09:00", "authors": [ { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" } ], "author": { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" }, "tags": [ "dashboard", "terminal", "WTF", "Linux", "Raspberry Pi", "Raspbian Buster" ] }, { "id": "http://matoken.org/blog/?p=3052", "url": "https://matoken.org/blog/2021/03/06/build-the-latest-version-3-5-0-of-twitter-client-sayaka-on-linux/", "title": "Twitter\u30af\u30e9\u30a4\u30a2\u30f3\u30c8sayaka\u3061\u3083\u3093\u306e\u6700\u65b0\u7248(3.5.0)\u3092Linux\u3067\u30d3\u30eb\u30c9\u3059\u308b", "content_html": "
\n

\u8ffd\u8a182021-03-09)
\nRaspberry Pi OS buster armhf \u53ca\u3073 Ubuntu 21.04 (development branch) amd64\u3067\u3082\u540c\u69d8\u306b\u30d3\u30eb\u30c9\u3067\u304d\u307e\u3057\u305f :)

\n

\u30bf\u30fc\u30df\u30ca\u30eb\u3067\u52d5\u4f5c\u3059\u308bTwitter\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u3068\u3057\u3066sayaka\u3061\u3083\u3093\u3068\u3044\u3046\u3082\u306e\u304c\u3042\u308a\u307e\u3059\uff0eNetBSD\u306e\u5165\u3063\u305fSHARP X68030\u3067\u3082\u52d5\u4f5c\u3059\u308b\u3068\u3044\u3046\u8efd\u91cf\u306a\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u3067\uff0cSIXEL\u3067\u753b\u50cf\u304c\u8868\u793a\u3067\u304d\u305f\u308a\u30b9\u30c8\u30ea\u30fc\u30e0\u30e2\u30fc\u30c9\u304c\u3042\u3063\u3066\u30cf\u30c3\u30b7\u30e5\u30bf\u30b0\u306a\u3069\u3092\u5782\u308c\u6d41\u3059\u306e\u306b\u4fbf\u5229\u306b\u4f7f\u3063\u3066\u3044\u307e\u3059\uff0e

\n
\n
\n

\u4eca\u65e5\u30aa\u30fc\u30d7\u30f3\u30bd\u30fc\u30b9\u30ab\u30f3\u30d5\u30a1\u30ec\u30f3\u30b92021 Online/Spring 2\u65e5\u76ee\u304c\u3042\u3063\u3066 @ebijun\u3055\u3093\u306e\u300cNetBSD\u306e\u3054\u7d39\u4ecb\u300d \u3092\u8996\u8074\u3057\u3066\u3044\u305f\u306e\u3067\u3059\u304c\uff0c\u65b0\u3057\u3044\u30d0\u30fc\u30b8\u30e7\u30f3\u306e 3.5.0 \u304c\u30ea\u30ea\u30fc\u30b9\u3055\u308c\u305f\u3068\u306e\u3053\u3068\u3067\u8a66\u3057\u3066\u307f\u307e\u3057\u305f\uff0e

\n
\n
\n
isaki68k/sayaka
\n
\n
twitter \u30af\u30e9\u30a4\u30a2\u30f3\u30c8 sayaka \u3061\u3083\u3093 version 3.5.0 (2021/03/03)\n\u30bf\u30fc\u30df\u30ca\u30eb\u306b\u7279\u5316\u3057\u305f twitter \u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u3067\u3059\u3002\n\n\u30d5\u30a3\u30eb\u30bf\u30b9\u30c8\u30ea\u30fc\u30e0\u306e\u5782\u308c\u6d41\u3057\u304c\u51fa\u6765\u307e\u3059\u3002\n\u30d5\u30a3\u30eb\u30bf\u30b9\u30c8\u30ea\u30fc\u30e0\u306b\u3088\u308b\u7591\u4f3c\u30db\u30fc\u30e0\u30bf\u30a4\u30e0\u30e9\u30a4\u30f3\u304c\u8868\u793a\u3067\u304d\u307e\u3059\u3002\nmlterm \u306a\u3069\u306e SIXEL \u5bfe\u5fdc\u30bf\u30fc\u30df\u30ca\u30eb\u7528\u3067\u3059\u3002\nX68030/25MHz\u3001\u30e1\u30e2\u30ea12MB \u3067\u3082\u5feb\u9069(?)\u52d5\u4f5c\u3002\n\u66f4\u65b0\u5c65\u6b74\n3.5.0 (2021/03/03) \u2026 C++ \u306b\u79fb\u884c\u3057 vala \u7248\u5ec3\u6b62\u3002 \u753b\u50cf\u306f\u73fe\u5728\u306e\u3068\u3053\u308d JPEG, PNG \u306e\u307f\u5bfe\u5fdc\u3002 \u30bf\u30fc\u30df\u30ca\u30eb\u80cc\u666f\u8272\u306e\u81ea\u52d5\u53d6\u5f97\u3092\u5b9f\u88c5\u3002 --protect\u3001--support-evs \u30aa\u30d7\u30b7\u30e7\u30f3\u5ec3\u6b62\u3002 --noimg \u30aa\u30d7\u30b7\u30e7\u30f3\u3092\u5ec3\u6b62 (--no-image \u306b\u5909\u66f4)\u3002 userstream \u6642\u4ee3\u306e\u9332\u753b\u30c7\u30fc\u30bf\u306e\u518d\u751f\u6a5f\u80fd\u5ec3\u6b62\u3002
\n
\n
\n
\n
\n
\n

watch\u3057\u3066\u305f\u3051\u3069\u30e1\u30fc\u30eb\u5c4a\u3044\u3066\u3044\u306a\u3044\u3088\u3046\u3067\u3059?

\n
\n
\n

\"sayaka

\n
\n
\n
\n
\n

\u73fe\u5728\u306e\u30d0\u30fc\u30b7\u30e7\u30f3\u3092\u78ba\u8a8d\u3057\u3066\u307f\u307e\u3059\uff0e1\u3064\u524d\u306e\u30d0\u30fc\u30b8\u30e7\u30f3\u307d\u3044\u3067\u3059\u306d\uff0e

\n
\n
\n
\n
$ sayaka --version\nsayaka.vala 3.4.6 (2020/11/10)
\n
\n
\n
\n

\u30d3\u30eb\u30c9\u3092\u8a66\u307f\u307e\u3059\uff0e

\n
\n
\n
\n
$ git clone https://github.com/isaki68k/sayaka/ (1)\n$ cd sayaka\n$ git checkout 3.5.0\nHEAD is now at 958f630 ver 3.5.0 (2021/03/03)\n$ ./configure (2)
\n
\n
\n
\n
    \n
  1. sayaka\u306esource\u3092clone
  2. \n
  3. configure
  4. \n
\n
\n
\n

\u8db3\u308a\u306a\u3044\u3082\u306e\u304c\u30d1\u30c3\u30b1\u30fc\u30b8\u540d\u3067\u8868\u793a\u3055\u308c\u3066\u52a9\u304b\u308a\u307e\u3059 :)

\n
\n
\n
\n
configure: error: *** mbedtls not found.\n        On Ubuntu, sudo apt install libmbedtls-dev
\n
\n
\n
\n
\n
configure: error: *** mbedtls not found.\n        On Ubuntu, sudo apt install libmbedtls-dev
\n
\n
\n
\n

./configure \u304c\u901a\u3063\u305f\u3089make\u2026\u2026\u5931\u6557\u3067\u3059\uff0e

\n
\n
\n
\n
$ make\n(cd src; make all)\nmake[1]: Entering directory '/home/matoken/src/sayaka/src'\nMakefile:3: *** missing separator.  Stop.\nmake[1]: Leaving directory '/home/matoken/src/sayaka/src'\nmake: *** [Makefile:2: all] Error 2
\n
\n
\n
\n

\u5fc5\u8981\u306a\u3082\u306e\u3092\u3088\u304f\u898b\u308b\u3068\uff0cGNU make\u3067\u306f\u306a\u304f BSD make \u304c\u5fc5\u8981\u3068\u306a\u3063\u3066\u3044\u307e\u3057\u305f\uff0e(3.4.6\u3092\u78ba\u8a8d\u3059\u308b\u3068\u3053\u306e\u3068\u304d\u306fGNU make\u306a\u306e\u3067\u4eca\u56de\u5909\u308f\u3063\u305f\u3088\u3046\u3067\u3059)

\n
\n
\n
\n
\u5fc5\u8981\u306a\u3082\u306e\nC++17 compiler\njpeg (libjpeg)\nlibpng\nmbedtls (2.9.0 or later?)\nBSD make (not GNU make)
\n
\n
\n
\n

BSD make\u3092\u5c0e\u5165\u3057\u3066GNU make\u3067\u306f\u306a\u304fBSD make\u3092\u4f7f\u3044\u307e\u3059\uff0e

\n
\n
\n
\n
$ sudo apt install bmake (1)\n$ bmake sayaka (2)\n$ src/sayaka --version (3)\nsayaka version 3.5.0 (2021/03/03)\n$ install src/sayaka ~/bin/ (4)
\n
\n
\n
\n
    \n
  1. BSD make\u3092\u5c0e\u5165
  2. \n
  3. BSD make\u3067sayaka\u3092make
  4. \n
  5. \u51fa\u6765\u4e0a\u304c\u3063\u305fsayaka\u3092\u53e9\u3044\u3066\u307f\u308b
  6. \n
  7. sayaka\u3092\u9069\u5f53\u306a\u5834\u6240( ~/bin )\u306b\u30b3\u30d4\u30fc\u306binstall
  8. \n
\n
\n
\n

\u3068\u3044\u3046\u3053\u3068\u3067sayaka 3.5.0 \u306b\u3067\u304d\u307e\u3057\u305f :)

\n
\n
\n

\u79c1\u306fmlterm\u7b49\u306eSIXEL\u5bfe\u5fdc\u7aef\u672b\u3067\u691c\u7d22\u3057\u305f\u3044\u30ad\u30fc\u30ef\u30fc\u30c9\u3092\u7e4b\u3052\u3066\u3044\u3063\u3066\u30c7\u30b9\u30af\u30c8\u30c3\u30d7\u306e\u6a2a\u306b\u304a\u3044\u3066\u304a\u304f\u3068\u3044\u3063\u305f\u611f\u3058\u3067\u4f7f\u3063\u3066\u3044\u307e\u3059\uff0e

\n
\n
\n

mlterm+sayaka\u3068youtube-dl+ffplay \u3067 #osc21on.spring pic.twitter.com/fjyOk0NNKJ

\n

\u2014 matoken (@matoken1) March 6, 2021

\n

\n
\n
\u74b0\u5883
\n
\n
$ sayaka --version\nsayaka version 3.5.0 (2021/03/03)\n$ ldd src/sayaka | cut -f1 -d\"(\" | cut -f3 -d\" \" | xargs -n1 apt-file search | cut -f1 -d: | uniq | xargs dpkg-query -W | grep amd64\nlibbsd0:amd64   0.11.3-1\nlibc6:amd64     2.31-9\nlibgcc-s1:amd64 10.2.1-6\nlibjpeg62-turbo:amd64   1:2.0.6-2\nlibmbedcrypto3:amd64    2.16.9-0.1\nlibmbedtls12:amd64      2.16.9-0.1\nlibmbedx509-0:amd64     2.16.9-0.1\nlibmd0:amd64    1.0.3-3\nlibpng16-16:amd64       1.6.37-3\nlibstdc++6:amd64        10.2.1-6\nzlib1g:amd64    1:1.2.11.dfsg-2\n$ dpkg-query -W bmake build-essential\nbmake   20200710-7\nbuild-essential 12.9\n$ lsb_release -dr\nDescription:    Debian GNU/Linux bullseye/sid\nRelease:        unstable\n$ uname -m\nx86_64
\n
\n
\n", "content_text": "\u8ffd\u8a182021-03-09)\nRaspberry Pi OS buster armhf \u53ca\u3073 Ubuntu 21.04 (development branch) amd64\u3067\u3082\u540c\u69d8\u306b\u30d3\u30eb\u30c9\u3067\u304d\u307e\u3057\u305f :)\n\u30bf\u30fc\u30df\u30ca\u30eb\u3067\u52d5\u4f5c\u3059\u308bTwitter\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u3068\u3057\u3066sayaka\u3061\u3083\u3093\u3068\u3044\u3046\u3082\u306e\u304c\u3042\u308a\u307e\u3059\uff0eNetBSD\u306e\u5165\u3063\u305fSHARP X68030\u3067\u3082\u52d5\u4f5c\u3059\u308b\u3068\u3044\u3046\u8efd\u91cf\u306a\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u3067\uff0cSIXEL\u3067\u753b\u50cf\u304c\u8868\u793a\u3067\u304d\u305f\u308a\u30b9\u30c8\u30ea\u30fc\u30e0\u30e2\u30fc\u30c9\u304c\u3042\u3063\u3066\u30cf\u30c3\u30b7\u30e5\u30bf\u30b0\u306a\u3069\u3092\u5782\u308c\u6d41\u3059\u306e\u306b\u4fbf\u5229\u306b\u4f7f\u3063\u3066\u3044\u307e\u3059\uff0e\n\n\n\u4eca\u65e5\u30aa\u30fc\u30d7\u30f3\u30bd\u30fc\u30b9\u30ab\u30f3\u30d5\u30a1\u30ec\u30f3\u30b92021 Online/Spring 2\u65e5\u76ee\u304c\u3042\u3063\u3066 @ebijun\u3055\u3093\u306e\u300cNetBSD\u306e\u3054\u7d39\u4ecb\u300d \u3092\u8996\u8074\u3057\u3066\u3044\u305f\u306e\u3067\u3059\u304c\uff0c\u65b0\u3057\u3044\u30d0\u30fc\u30b8\u30e7\u30f3\u306e 3.5.0 \u304c\u30ea\u30ea\u30fc\u30b9\u3055\u308c\u305f\u3068\u306e\u3053\u3068\u3067\u8a66\u3057\u3066\u307f\u307e\u3057\u305f\uff0e\n\n\nisaki68k/sayaka\n\ntwitter \u30af\u30e9\u30a4\u30a2\u30f3\u30c8 sayaka \u3061\u3083\u3093 version 3.5.0 (2021/03/03)\n\u30bf\u30fc\u30df\u30ca\u30eb\u306b\u7279\u5316\u3057\u305f twitter \u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u3067\u3059\u3002\n\n\u30d5\u30a3\u30eb\u30bf\u30b9\u30c8\u30ea\u30fc\u30e0\u306e\u5782\u308c\u6d41\u3057\u304c\u51fa\u6765\u307e\u3059\u3002\n\u30d5\u30a3\u30eb\u30bf\u30b9\u30c8\u30ea\u30fc\u30e0\u306b\u3088\u308b\u7591\u4f3c\u30db\u30fc\u30e0\u30bf\u30a4\u30e0\u30e9\u30a4\u30f3\u304c\u8868\u793a\u3067\u304d\u307e\u3059\u3002\nmlterm \u306a\u3069\u306e SIXEL \u5bfe\u5fdc\u30bf\u30fc\u30df\u30ca\u30eb\u7528\u3067\u3059\u3002\nX68030/25MHz\u3001\u30e1\u30e2\u30ea12MB \u3067\u3082\u5feb\u9069(?)\u52d5\u4f5c\u3002\n\u66f4\u65b0\u5c65\u6b74\n3.5.0 (2021/03/03) \u2026 C++ \u306b\u79fb\u884c\u3057 vala \u7248\u5ec3\u6b62\u3002 \u753b\u50cf\u306f\u73fe\u5728\u306e\u3068\u3053\u308d JPEG, PNG \u306e\u307f\u5bfe\u5fdc\u3002 \u30bf\u30fc\u30df\u30ca\u30eb\u80cc\u666f\u8272\u306e\u81ea\u52d5\u53d6\u5f97\u3092\u5b9f\u88c5\u3002 --protect\u3001--support-evs \u30aa\u30d7\u30b7\u30e7\u30f3\u5ec3\u6b62\u3002 --noimg \u30aa\u30d7\u30b7\u30e7\u30f3\u3092\u5ec3\u6b62 (--no-image \u306b\u5909\u66f4)\u3002 userstream \u6642\u4ee3\u306e\u9332\u753b\u30c7\u30fc\u30bf\u306e\u518d\u751f\u6a5f\u80fd\u5ec3\u6b62\u3002\n\n\n\n\n\nwatch\u3057\u3066\u305f\u3051\u3069\u30e1\u30fc\u30eb\u5c4a\u3044\u3066\u3044\u306a\u3044\u3088\u3046\u3067\u3059?\n\n\n\n\n\n\n\n\u73fe\u5728\u306e\u30d0\u30fc\u30b7\u30e7\u30f3\u3092\u78ba\u8a8d\u3057\u3066\u307f\u307e\u3059\uff0e1\u3064\u524d\u306e\u30d0\u30fc\u30b8\u30e7\u30f3\u307d\u3044\u3067\u3059\u306d\uff0e\n\n\n\n$ sayaka --version\nsayaka.vala 3.4.6 (2020/11/10)\n\n\n\n\u30d3\u30eb\u30c9\u3092\u8a66\u307f\u307e\u3059\uff0e\n\n\n\n$ git clone https://github.com/isaki68k/sayaka/ (1)\n$ cd sayaka\n$ git checkout 3.5.0\nHEAD is now at 958f630 ver 3.5.0 (2021/03/03)\n$ ./configure (2)\n\n\n\n\nsayaka\u306esource\u3092clone\nconfigure\n\n\n\n\u8db3\u308a\u306a\u3044\u3082\u306e\u304c\u30d1\u30c3\u30b1\u30fc\u30b8\u540d\u3067\u8868\u793a\u3055\u308c\u3066\u52a9\u304b\u308a\u307e\u3059 :)\n\n\n\nconfigure: error: *** mbedtls not found.\n On Ubuntu, sudo apt install libmbedtls-dev\n\n\n\n\nconfigure: error: *** mbedtls not found.\n On Ubuntu, sudo apt install libmbedtls-dev\n\n\n\n./configure \u304c\u901a\u3063\u305f\u3089make\u2026\u2026\u5931\u6557\u3067\u3059\uff0e\n\n\n\n$ make\n(cd src; make all)\nmake[1]: Entering directory '/home/matoken/src/sayaka/src'\nMakefile:3: *** missing separator. Stop.\nmake[1]: Leaving directory '/home/matoken/src/sayaka/src'\nmake: *** [Makefile:2: all] Error 2\n\n\n\n\u5fc5\u8981\u306a\u3082\u306e\u3092\u3088\u304f\u898b\u308b\u3068\uff0cGNU make\u3067\u306f\u306a\u304f BSD make \u304c\u5fc5\u8981\u3068\u306a\u3063\u3066\u3044\u307e\u3057\u305f\uff0e(3.4.6\u3092\u78ba\u8a8d\u3059\u308b\u3068\u3053\u306e\u3068\u304d\u306fGNU make\u306a\u306e\u3067\u4eca\u56de\u5909\u308f\u3063\u305f\u3088\u3046\u3067\u3059)\n\n\n\n\u5fc5\u8981\u306a\u3082\u306e\nC++17 compiler\njpeg (libjpeg)\nlibpng\nmbedtls (2.9.0 or later?)\nBSD make (not GNU make)\n\n\n\nBSD make\u3092\u5c0e\u5165\u3057\u3066GNU make\u3067\u306f\u306a\u304fBSD make\u3092\u4f7f\u3044\u307e\u3059\uff0e\n\n\n\n$ sudo apt install bmake (1)\n$ bmake sayaka (2)\n$ src/sayaka --version (3)\nsayaka version 3.5.0 (2021/03/03)\n$ install src/sayaka ~/bin/ (4)\n\n\n\n\nBSD make\u3092\u5c0e\u5165\nBSD make\u3067sayaka\u3092make\n\u51fa\u6765\u4e0a\u304c\u3063\u305fsayaka\u3092\u53e9\u3044\u3066\u307f\u308b\nsayaka\u3092\u9069\u5f53\u306a\u5834\u6240( ~/bin )\u306b\u30b3\u30d4\u30fc\u306binstall\n\n\n\n\u3068\u3044\u3046\u3053\u3068\u3067sayaka 3.5.0 \u306b\u3067\u304d\u307e\u3057\u305f :)\n\n\n\u79c1\u306fmlterm\u7b49\u306eSIXEL\u5bfe\u5fdc\u7aef\u672b\u3067\u691c\u7d22\u3057\u305f\u3044\u30ad\u30fc\u30ef\u30fc\u30c9\u3092\u7e4b\u3052\u3066\u3044\u3063\u3066\u30c7\u30b9\u30af\u30c8\u30c3\u30d7\u306e\u6a2a\u306b\u304a\u3044\u3066\u304a\u304f\u3068\u3044\u3063\u305f\u611f\u3058\u3067\u4f7f\u3063\u3066\u3044\u307e\u3059\uff0e\n\n\nmlterm+sayaka\u3068youtube-dl+ffplay \u3067 #osc21on.spring pic.twitter.com/fjyOk0NNKJ\n\u2014 matoken (@matoken1) March 6, 2021\n\n\n\u74b0\u5883\n\n$ sayaka --version\nsayaka version 3.5.0 (2021/03/03)\n$ ldd src/sayaka | cut -f1 -d\"(\" | cut -f3 -d\" \" | xargs -n1 apt-file search | cut -f1 -d: | uniq | xargs dpkg-query -W | grep amd64\nlibbsd0:amd64 0.11.3-1\nlibc6:amd64 2.31-9\nlibgcc-s1:amd64 10.2.1-6\nlibjpeg62-turbo:amd64 1:2.0.6-2\nlibmbedcrypto3:amd64 2.16.9-0.1\nlibmbedtls12:amd64 2.16.9-0.1\nlibmbedx509-0:amd64 2.16.9-0.1\nlibmd0:amd64 1.0.3-3\nlibpng16-16:amd64 1.6.37-3\nlibstdc++6:amd64 10.2.1-6\nzlib1g:amd64 1:1.2.11.dfsg-2\n$ dpkg-query -W bmake build-essential\nbmake 20200710-7\nbuild-essential 12.9\n$ lsb_release -dr\nDescription: Debian GNU/Linux bullseye/sid\nRelease: unstable\n$ uname -m\nx86_64", "date_published": "2021-03-06T22:32:34+09:00", "date_modified": "2021-03-09T23:13:54+09:00", "authors": [ { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" } ], "author": { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" }, "tags": [ "CLI", "sayaka", "terminal", "Twitter", "Debian", "Linux", "sid" ] }, { "id": "http://matoken.org/blog/?p=1987", "url": "https://matoken.org/blog/2018/07/11/ascii-runner-game-to-play-on-the-terminal/", "title": "\u7aef\u672b\u4e0a\u3067\u904a\u3079\u308b\u969c\u5bb3\u7269\u907f\u3051\u30b2\u30fc\u30e0\u306eascii runner", "content_html": "

\n

\u7aef\u672b\u4e0a\u3067\u904a\u3076\u969c\u5bb3\u7269\u3092\u30b9\u30da\u30fc\u30b9\u30d0\u30fc\u3067\u30b8\u30e3\u30f3\u30d7\u3057\u3066\u907f\u3051\u308b\u30b2\u30fc\u30e0\uff0e\u81ea\u30ad\u30e3\u30e9\u306e4\u672c\u8db3\u306e\u751f\u304d\u7269\u306e\u52d5\u304d\u304c\u30b3\u30df\u30ab\u30eb\u3067\u3059\uff0e\u3067\u3082\u6848\u5916\u96e3\u3057\u3044\uff0e
\nmacOS/Linux \u306eamd64 \u3060\u3063\u305f\u3089\u30d0\u30a4\u30ca\u30ea\u3084\u30d1\u30c3\u30b1\u30fc\u30b8\u304c\u3042\u308b\u306e\u3067\u305d\u308c\u3092\u4f7f\u3046\u306e\u304c\u826f\u3044\u3067\u3059\uff0e
\nbuild\u3059\u308b\u5834\u5408\u306f\u3053\u3093\u306a\u611f\u3058\u3067(\u7d50\u69cb\u6642\u9593\u639b\u304b\u3063\u305f)

\n
\r\n
$\u00a0sudo\u00a0apt\u00a0install\u00a0haskell-stack\r\n$\u00a0git\u00a0clone\u00a0https://github.com/smallhadroncollider/ascii-runner\r\n$\u00a0cd\u00a0ascii-runner\r\n$\u00a0stack\u00a0build\r\n$\u00a0stack\u00a0install\r\n$\u00a0runner\u00a0
\n\n", "content_text": "\u7aef\u672b\u4e0a\u3067\u904a\u3076\u969c\u5bb3\u7269\u3092\u30b9\u30da\u30fc\u30b9\u30d0\u30fc\u3067\u30b8\u30e3\u30f3\u30d7\u3057\u3066\u907f\u3051\u308b\u30b2\u30fc\u30e0\uff0e\u81ea\u30ad\u30e3\u30e9\u306e4\u672c\u8db3\u306e\u751f\u304d\u7269\u306e\u52d5\u304d\u304c\u30b3\u30df\u30ab\u30eb\u3067\u3059\uff0e\u3067\u3082\u6848\u5916\u96e3\u3057\u3044\uff0e\nmacOS/Linux \u306eamd64 \u3060\u3063\u305f\u3089\u30d0\u30a4\u30ca\u30ea\u3084\u30d1\u30c3\u30b1\u30fc\u30b8\u304c\u3042\u308b\u306e\u3067\u305d\u308c\u3092\u4f7f\u3046\u306e\u304c\u826f\u3044\u3067\u3059\uff0e\nbuild\u3059\u308b\u5834\u5408\u306f\u3053\u3093\u306a\u611f\u3058\u3067(\u7d50\u69cb\u6642\u9593\u639b\u304b\u3063\u305f)\n\r\n$\u00a0sudo\u00a0apt\u00a0install\u00a0haskell-stack\r\n$\u00a0git\u00a0clone\u00a0https://github.com/smallhadroncollider/ascii-runner\r\n$\u00a0cd\u00a0ascii-runner\r\n$\u00a0stack\u00a0build\r\n$\u00a0stack\u00a0install\r\n$\u00a0runner\u00a0\n\nsmallhadroncollider/ascii-runner: An infinite runner in your terminal", "date_published": "2018-07-11T05:02:04+09:00", "date_modified": "2018-07-11T05:04:28+09:00", "authors": [ { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" } ], "author": { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" }, "tags": [ "game", "terminal", "Debian", "Linux", "sid" ] }, { "id": "http://matoken.org/blog/?p=1983", "url": "https://matoken.org/blog/2018/07/05/record-operation-on-terminal-in-svg-format-termtosvg/", "title": "\u7aef\u672b\u3067\u306e\u64cd\u4f5c\u3092SVG\u5f62\u5f0f\u3067\u8a18\u9332\u3059\u308b termtosvg", "content_html": "\n

ttyrec/play\u307f\u305f\u3044\u306b\u7aef\u672b\u64cd\u4f5c\u3092\u9332\u753b\u51fa\u6765\u308b\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\uff0e\u518d\u751f\u306f\u30a6\u30a7\u30d6\u30d6\u30e9\u30a6\u30b6\u306a\u3069\u3067\u3067\u304d\u307e\u3059\uff0e

\n

\u5c0e\u5165\u306fpip\u3067

\n
\n
$ pip3 install termtosvg\r\n$ termtosvg -h\r\nusage: termtosvg [output_file] [--font FONT] [--theme THEME] [--help] [--verbose]\r\nRecord a terminal session and render an SVG animation on the fly\r\n\r\npositional arguments:\r\n  output_file    optional filename of the SVG animation; if missing, a random\r\n                 filename will be automatically generated\r\n\r\noptional arguments:\r\n  -h, --help     show this help message and exit\r\n  --font FONT    font to specify in the CSS portion of the SVG animation\r\n                 (DejaVu Sans Mono, Monaco...). If the font is not installed\r\n                 on the viewer's machine, the browser will display a default\r\n                 monospaced font instead.\r\n  --theme THEME  color theme used to render the terminal session (circus,\r\n                 classic-dark, classic-light, dracula, isotope, marrakesh,\r\n                 material, monokai, solarized-dark, solarized-light, zenburn)\r\n  -v, --verbose  increase log messages verbosity\r\n\r\nSee also 'termtosvg record --help' and 'termtosvg render --help'\r\n
\n
\n

\u5c0e\u5165\u5f8c\u5b9f\u884c\u3059\u308b\u3068\u305d\u306e\u307e\u307e\u7aef\u672b\u306b\u623b\u3063\u3066exit\u3059\u308b\u307e\u3067\u306e\u64cd\u4f5c\u3092\u8a18\u9332\u3057\u3066\u304f\u308c\u308b\uff0eexit\u3059\u308b\u3068SVG\u3092\u66f8\u304d\u51fa\u3057\u3066\u305d\u306e\u30d5\u30a1\u30a4\u30eb\u540d\u3092\u6559\u3048\u3066\u304f\u308c\u308b\uff0e

\n
\n
mk@T430s:~ (551)$ termtosvg\r\nRecording started, enter "exit" command or Control-D to end\r\nmk@T430s:~ (554)$ cowsay -f duck "hello termtosvg!"\r\n __________________\r\n< hello termtosvg! >\r\n ------------------\r\n \\\r\n  \\\r\n   \\ >()_\r\n      (__)__ _\r\nmk@T430s:~ (555)$ cowsay -f duck "hello termtosvg!"|lolcat\r\n __________________\r\n< hello termtosvg! >\r\n ------------------\r\n \\\r\n  \\\r\n   \\ >()_\r\n      (__)__ _\r\nmk@T430s:~ (556)$ exit\r\nRecording ended, SVG animation is /tmp/termtosvg_vpd7hh0z.svg\r\n
\n
\n

\u51fa\u6765\u4e0a\u304c\u3063\u305f\u30d5\u30a1\u30a4\u30eb\u306fSVG\u306a\u306e\u3067\u4e2d\u3092\u898b\u3066\u30b3\u30d4\u30da\u3068\u304b\u51fa\u6765\u306a\u304f\u306f\u306a\u3044\uff0e

\n
\n
$ xmllint --format /tmp/termtosvg_vpd7hh0z.svg|head\r\n<?xml version="1.0" encoding="utf-8"?>\r\n<svg xmlns="http://www.w3.org/2000/svg" xmlns:ev="http://www.w3.org/2001/xml-events" xmlns:xlink="http://www.w3.org/1999/xlink" baseProfile="full" height="408" version="1.1" width="640">\r\n  <defs>\r\n    <style type="text/css"><![CDATA[* {font-family: "DejaVu Sans Mono", monospace; font-style: normal; font-size: 14px}\r\ntext {dominant-baseline: text-before-edge}\r\n.bold {font-weight: bold}\r\n.background {fill: #002b36}]]></style>\r\n    <g id="1">\r\n      <text fill="#93a1a1" lengthAdjust="spacingAndGlyphs" textLength="144" x="0">mk@T430s:~ (554)$ </text>\r\n      <text fill="#002b36" lengthAdjust="spacingAndGlyphs" textLength="8" x="144"> </text>\r\n
\n
\n

\u4ee5\u4e0b\u306bexample\u304c\u3042\u308b

\n\n

\u30b5\u30fc\u30d0\u306b\u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u3057\u3066\u5171\u6709\u3060\u3068asciinema\u304c\u4fbf\u5229\u3060\u3051\u3069\u3053\u308c\u306f\u3053\u308c\u3067\u30d5\u30a1\u30a4\u30eb\u4e00\u500b\u306a\u306e\u3067\u4fbf\u5229\u305d\u3046\u3067\u3059\uff0e
\nPython\u88fd\u3067\u30e9\u30a4\u30bb\u30f3\u30b9\u306fBSD 3-Clause License\u3067\u3059\uff0e

\n\n", "content_text": "nbedos/termtosvg: Record terminal sessions as SVG animations\n\nttyrec/play\u307f\u305f\u3044\u306b\u7aef\u672b\u64cd\u4f5c\u3092\u9332\u753b\u51fa\u6765\u308b\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\uff0e\u518d\u751f\u306f\u30a6\u30a7\u30d6\u30d6\u30e9\u30a6\u30b6\u306a\u3069\u3067\u3067\u304d\u307e\u3059\uff0e\n\u5c0e\u5165\u306fpip\u3067\n\n$ pip3 install termtosvg\r\n$ termtosvg -h\r\nusage: termtosvg [output_file] [--font FONT] [--theme THEME] [--help] [--verbose]\r\nRecord a terminal session and render an SVG animation on the fly\r\n\r\npositional arguments:\r\n output_file optional filename of the SVG animation; if missing, a random\r\n filename will be automatically generated\r\n\r\noptional arguments:\r\n -h, --help show this help message and exit\r\n --font FONT font to specify in the CSS portion of the SVG animation\r\n (DejaVu Sans Mono, Monaco...). If the font is not installed\r\n on the viewer's machine, the browser will display a default\r\n monospaced font instead.\r\n --theme THEME color theme used to render the terminal session (circus,\r\n classic-dark, classic-light, dracula, isotope, marrakesh,\r\n material, monokai, solarized-dark, solarized-light, zenburn)\r\n -v, --verbose increase log messages verbosity\r\n\r\nSee also 'termtosvg record --help' and 'termtosvg render --help'\r\n\n\n\u5c0e\u5165\u5f8c\u5b9f\u884c\u3059\u308b\u3068\u305d\u306e\u307e\u307e\u7aef\u672b\u306b\u623b\u3063\u3066exit\u3059\u308b\u307e\u3067\u306e\u64cd\u4f5c\u3092\u8a18\u9332\u3057\u3066\u304f\u308c\u308b\uff0eexit\u3059\u308b\u3068SVG\u3092\u66f8\u304d\u51fa\u3057\u3066\u305d\u306e\u30d5\u30a1\u30a4\u30eb\u540d\u3092\u6559\u3048\u3066\u304f\u308c\u308b\uff0e\n\nmk@T430s:~ (551)$ termtosvg\r\nRecording started, enter "exit" command or Control-D to end\r\nmk@T430s:~ (554)$ cowsay -f duck "hello termtosvg!"\r\n __________________\r\n< hello termtosvg! >\r\n ------------------\r\n \\\r\n \\\r\n \\ >()_\r\n (__)__ _\r\nmk@T430s:~ (555)$ cowsay -f duck "hello termtosvg!"|lolcat\r\n __________________\r\n< hello termtosvg! >\r\n ------------------\r\n \\\r\n \\\r\n \\ >()_\r\n (__)__ _\r\nmk@T430s:~ (556)$ exit\r\nRecording ended, SVG animation is /tmp/termtosvg_vpd7hh0z.svg\r\n\n\n\u51fa\u6765\u4e0a\u304c\u3063\u305f\u30d5\u30a1\u30a4\u30eb\u306fSVG\u306a\u306e\u3067\u4e2d\u3092\u898b\u3066\u30b3\u30d4\u30da\u3068\u304b\u51fa\u6765\u306a\u304f\u306f\u306a\u3044\uff0e\n\n$ xmllint --format /tmp/termtosvg_vpd7hh0z.svg|head\r\n<?xml version="1.0" encoding="utf-8"?>\r\n<svg xmlns="http://www.w3.org/2000/svg" xmlns:ev="http://www.w3.org/2001/xml-events" xmlns:xlink="http://www.w3.org/1999/xlink" baseProfile="full" height="408" version="1.1" width="640">\r\n <defs>\r\n <style type="text/css"><![CDATA[* {font-family: "DejaVu Sans Mono", monospace; font-style: normal; font-size: 14px}\r\ntext {dominant-baseline: text-before-edge}\r\n.bold {font-weight: bold}\r\n.background {fill: #002b36}]]></style>\r\n <g id="1">\r\n <text fill="#93a1a1" lengthAdjust="spacingAndGlyphs" textLength="144" x="0">mk@T430s:~ (554)$ </text>\r\n <text fill="#002b36" lengthAdjust="spacingAndGlyphs" textLength="8" x="144"> </text>\r\n\n\n\u4ee5\u4e0b\u306bexample\u304c\u3042\u308b\n\ntermtosvg/examples.md at 0.3.0 \u00b7 nbedos/termtosvg\n\n\u30b5\u30fc\u30d0\u306b\u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u3057\u3066\u5171\u6709\u3060\u3068asciinema\u304c\u4fbf\u5229\u3060\u3051\u3069\u3053\u308c\u306f\u3053\u308c\u3067\u30d5\u30a1\u30a4\u30eb\u4e00\u500b\u306a\u306e\u3067\u4fbf\u5229\u305d\u3046\u3067\u3059\uff0e\nPython\u88fd\u3067\u30e9\u30a4\u30bb\u30f3\u30b9\u306fBSD 3-Clause License\u3067\u3059\uff0e\n\n\u7aef\u672b\u64cd\u4f5c\u3092 Web \u3067\u5171\u6709\u51fa\u6765\u308b asciinema \u2013 matoken’s meme\nttyrec: a tty recorder", "date_published": "2018-07-05T07:40:54+09:00", "date_modified": "2018-07-05T07:41:39+09:00", "authors": [ { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" } ], "author": { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" }, "tags": [ "SVG", "terminal", "termtosvg", "Debian", "Linux", "sid" ] } ] }