以前試したターミナルをWebで共有できるttyd のSixel の対応状況を確認してみると1つ前のリリースの 1,7.3 で対応しているようなので少し試してみました.
Sixel support is off by default now, use -t enableSixel=true to enable it.
以前試したターミナルをWebで共有できるttyd のSixel の対応状況を確認してみると1つ前のリリースの 1,7.3 で対応しているようなので少し試してみました.
Sixel support is off by default now, use -t enableSixel=true to enable it.
Microsoft VS Code も設定を有効にすることでSixel が使えるということで,Codium で試してみました.
「twitter クライアント sayaka ちゃん」が,「misskey クライアント sayaka ちゃん」 になっていたので試してみました.
Black Box というターミナルエミュレータを少し試してみました.
単語単位での移動は Esc → f/b 可能です.しかしEsc押し直しが必要なのでたくさん移動するのには不向きです,
sakuraではAlt + f/b(→←) でAlt key押しっぱなしで移動できて便利だった.のですが,手元のmltermでは移動できません.
mltermでAlt+a/fを押すと「áæ」のアクセント文字が入力されるしまい手癖で入力してしまい消して書き直すといったことをしていました.
最近端末ソフトウェアをmltermに切り替えようと設定しています.今回は絵文字にTwitter EmojiのTwemojiを使ってみました.
TERMMAZE3D という端末上で動作するAWK製のFPSゲームを見つけたので遊んでみました.
WTFというGo製のターミナルダッシュボードを見かけたので少し試してみました.
導入はLinuxのamd64/armv6/arm64,macOSのamd64/arm64はGitHub releaseページにあるのでそれを使うのが手っ取り早いです.
今回はarmv6をRaspberry Pi 3 Model BのRaspberry Pi OS armhfで試しました.
$ 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)
$ sha256sum -c ./wtf_0.36.0_checksums.txt 2>&1 | grep wtf_0.36.0_linux_armv6.tar.gz: (2)
wtf_0.36.0_linux_armv6.tar.gz: OK
$ tar tvf ./wtf_0.36.0_linux_armv6.tar.gz (3)
-rw-r--r-- ccummer/staff 34534 2021-03-23 19:20 wtf_0.36.0_linux_armv6/CHANGELOG.md
-rw-r--r-- ccummer/staff 14878 2018-12-01 01:13 wtf_0.36.0_linux_armv6/LICENSE.md
-rw-r--r-- ccummer/staff 39700 2021-03-20 13:46 wtf_0.36.0_linux_armv6/README.md
-rwxr-xr-x ccummer/staff 41615360 2021-03-23 19:35 wtf_0.36.0_linux_armv6/wtfutil
$ tar xf ./wtf_0.36.0_linux_armv6.tar.gz (4)
$ wtf_0.36.0_linux_armv6/wtfutil (5)
バイナリアーカイブをダウンロードして展開しました.
wtf_0.36.0_linux_armv6/wtfutil
を実行すると既定値で起動します.しかし娘の設定だとターミナルサイズ固定だったりあまり嬉しくありません.
リポジトリの _sample_configs
以下にサンプルがあるのでこれを指定して起動してみます.
設定ファイルは既定値は ~/.config/wtf/config.yml
を使います.存在しない場合はデフォルトのものが生成されます.若しくは wtf の -c, --config=
オプションで指定した設定ファイルを指定できます.
$ wtf_0.36.0_linux_armv6/wtfutil --config=../src/wtf/_sample_configs/sample_config.yml
wtfリポジトリの _sample_configs/sample_config.yml
を指定して起動するとこんな感じでターミナルサイズにも追従していい感じです.
diff --git a/_sample_configs/sample_config.yml b/_sample_configs/sample_config.yml
index e16690a0..fa3bf5c0 100644
--- a/_sample_configs/sample_config.yml
+++ b/_sample_configs/sample_config.yml
@@ -73,10 +73,21 @@ wtf:
width: 1
refreshInterval: 15
sort: "alphabetical"
+ feedreader:
+ enabled: true
+ feeds:
+ - https://nitter.matoken.org/matoken1/rss
+ feedLimit: 10
+ position:
+ top: 1
+ left: 3
+ height: 1
+ width: 1
+ updateInterval: 14400
battery:
type: power
title: "⚡️"
- enabled: true
+ enabled: false
position:
top: 1
left: 3
Raspberry Piは電源ステータスは見えないので無効にして代わりにfeedreaderを有効にしてNitter経由でTwitterのRSSフィードを表示してみました.
日本語や絵文字も崩れず表示できて良さそうですね.
その他にもたくさんのモジュールがあるようです.こちらのページから確認できます.(Nitterを通さなくてもTwitterモジュールもあった)
自分の用途に合わせて設定していくと便利そうです.
$ wtf_0.36.0_linux_armv6/wtfutil --version 0.36.0 (2021-03-23T10:33:30Z) $ lsb_release -dr Description: Raspbian GNU/Linux 10 (buster) Release: 10 $ uname -m armv7l $ cat /proc/device-tree/model ;echo Raspberry Pi 3 Model B Rev 1.2
追記2021-03-09)
Raspberry Pi OS buster armhf 及び Ubuntu 21.04 (development branch) amd64でも同様にビルドできました :)
ターミナルで動作するTwitterクライアントとしてsayakaちゃんというものがあります.NetBSDの入ったSHARP X68030でも動作するという軽量なクライアントで,SIXELで画像が表示できたりストリームモードがあってハッシュタグなどを垂れ流すのに便利に使っています.
今日オープンソースカンファレンス2021 Online/Spring 2日目があって @ebijunさんの「NetBSDのご紹介」 を視聴していたのですが,新しいバージョンの 3.5.0 がリリースされたとのことで試してみました.
twitter クライアント sayaka ちゃん version 3.5.0 (2021/03/03) ターミナルに特化した twitter クライアントです。 フィルタストリームの垂れ流しが出来ます。 フィルタストリームによる疑似ホームタイムラインが表示できます。 mlterm などの SIXEL 対応ターミナル用です。 X68030/25MHz、メモリ12MB でも快適(?)動作。 更新履歴 3.5.0 (2021/03/03) … C++ に移行し vala 版廃止。 画像は現在のところ JPEG, PNG のみ対応。 ターミナル背景色の自動取得を実装。 --protect、--support-evs オプション廃止。 --noimg オプションを廃止 (--no-image に変更)。 userstream 時代の録画データの再生機能廃止。
watchしてたけどメール届いていないようです?
現在のバーションを確認してみます.1つ前のバージョンぽいですね.
$ sayaka --version
sayaka.vala 3.4.6 (2020/11/10)
ビルドを試みます.
$ git clone https://github.com/isaki68k/sayaka/ (1)
$ cd sayaka
$ git checkout 3.5.0
HEAD is now at 958f630 ver 3.5.0 (2021/03/03)
$ ./configure (2)
足りないものがパッケージ名で表示されて助かります :)
configure: error: *** mbedtls not found.
On Ubuntu, sudo apt install libmbedtls-dev
configure: error: *** mbedtls not found.
On Ubuntu, sudo apt install libmbedtls-dev
./configure
が通ったらmake……失敗です.
$ make
(cd src; make all)
make[1]: Entering directory '/home/matoken/src/sayaka/src'
Makefile:3: *** missing separator. Stop.
make[1]: Leaving directory '/home/matoken/src/sayaka/src'
make: *** [Makefile:2: all] Error 2
必要なものをよく見ると,GNU makeではなく BSD make が必要となっていました.(3.4.6を確認するとこのときはGNU makeなので今回変わったようです)
必要なもの C++17 compiler jpeg (libjpeg) libpng mbedtls (2.9.0 or later?) BSD make (not GNU make)
BSD makeを導入してGNU makeではなくBSD makeを使います.
$ sudo apt install bmake (1)
$ bmake sayaka (2)
$ src/sayaka --version (3)
sayaka version 3.5.0 (2021/03/03)
$ install src/sayaka ~/bin/ (4)
ということでsayaka 3.5.0 にできました :)
私はmlterm等のSIXEL対応端末で検索したいキーワードを繋げていってデスクトップの横においておくといった感じで使っています.
mlterm+sayakaとyoutube-dl+ffplay で #osc21on.spring pic.twitter.com/fjyOk0NNKJ
— matoken (@matoken1) March 6, 2021
$ sayaka --version sayaka version 3.5.0 (2021/03/03) $ ldd src/sayaka | cut -f1 -d"(" | cut -f3 -d" " | xargs -n1 apt-file search | cut -f1 -d: | uniq | xargs dpkg-query -W | grep amd64 libbsd0:amd64 0.11.3-1 libc6:amd64 2.31-9 libgcc-s1:amd64 10.2.1-6 libjpeg62-turbo:amd64 1:2.0.6-2 libmbedcrypto3:amd64 2.16.9-0.1 libmbedtls12:amd64 2.16.9-0.1 libmbedx509-0:amd64 2.16.9-0.1 libmd0:amd64 1.0.3-3 libpng16-16:amd64 1.6.37-3 libstdc++6:amd64 10.2.1-6 zlib1g:amd64 1:1.2.11.dfsg-2 $ dpkg-query -W bmake build-essential bmake 20200710-7 build-essential 12.9 $ lsb_release -dr Description: Debian GNU/Linux bullseye/sid Release: unstable $ uname -m x86_64
端末上で遊ぶ障害物をスペースバーでジャンプして避けるゲーム.自キャラの4本足の生き物の動きがコミカルです.でも案外難しい.
macOS/Linux のamd64 だったらバイナリやパッケージがあるのでそれを使うのが良いです.
buildする場合はこんな感じで(結構時間掛かった)
$ sudo apt install haskell-stack $ git clone https://github.com/smallhadroncollider/ascii-runner $ cd ascii-runner $ stack build $ stack install $ runner