2019-10-15 (Tu) [長年日記]
_ selection がおかしい
自前改造版 emacs からコピーして端末等にペーストできない。 というのが発端。
逆は問題ない。
そして、emacs からでも手動で
(gui-set-selection 'CLIPBOARD "foo")
した場合は問題ない。
挙動をよく見ると、上のコードだとただの文字列だけど、コピーした場合は プロパティが付いてる。
そのせい? と思ってプロパティを捨てるようにしてみた (buffer-substring
→ buffer-substring-no-properties
) けど、それでもダメ。
そして、手動でも
(gui-set-selection 'CLIPBOARD "foo")
(gui-set-selection 'PRIMARY "foo")
だとダメなことがわかった。
primary を操作することで clipboard がクリアされてる……? なんでだろう… GNOME の時は問題なかったのに。
で。
原因はわからなかったけど、
https://github.com/swaywm/wlroots/issues/1367#issuecomment-442403454
↑これを見た感じ、wayland は protocol を決めてはいるし、 その上に primary selection をどう流すかも xml で定義してるけど、 じゃぁ具体的にそれをどう処理するのか、についてはディスプレイサーバに 任されてるんだな、と思った。 そして Wayfire の場合は wlroots に委ねてる部分が多い。
つまり、GNOME, KDE, Wayfire, その他いろんなサーバがあって (KDE は 3種類くらいあったか、確か)、 全部同じと思っちゃいけない、ってことだな。
同じ protocol に対応してるはずなのに、挙動が同じであることを期待できない。 これはこれで面倒な世界だな…
(primary selection がそういう話なのかどうかはよく解ってないけど、 でもこの先、解釈の違いで違う挙動になることはあるよね、きっと)
_ そして systemd に思いを馳せる
https://postd.cc/why-i-dislike-systemd/
先日↑これを読んでた。
で、なんとなく、wayland って似てるのかな、と思った。 根本的な設計思想というかなんと言うか。
- systemd: unit file に項目増やして対応
- wayland: protocol 増やして対応
どっちもすごく flat な感じがするんだよね。
必要になったら必要なだけ増やしちゃえ! みたいな。
wayland はこの先どうするんだろうな。 ディスプレイサーバごとに新しい機能に対応して古い機能を捨てていくのか。 ちゃんと捨てていけるのかな…
_ Re:ステージ!
そういや、このゲームのタイトルを私が何故混乱してるかとういと、 アプリのアイコンにリステップって書いてあるからなんだよね…
まぁそれはいいとして。
カナリア Normal フルコンに向けて奮闘中。
ただ何度もプレイしてるだけではどうにもなりそうにない。 特に左行ったり右行ったり中央から左右に分離したり。 あの辺りがどうにもなりそうにない。
プレイ中の動画を録って研究するしかなさそう。