2019年4月25日木曜日

ssh -Y ほげほげ emacs

 Beelink S1やRaspberry PiへはMacのターミナルからsshで接続している。
 フォントも好みのものにしているし、基本的には満足なのだけど、二点ほど気に入らないところがある。commandキーをmetaキーに割り当てられないのだ1。AquaEmacsではcommandキーをmetaキーにしているし、キーの配置的にやはりmetaキーはcommandキーのところであって欲しい。
 なのでひんぱんに使うmeta + pを押すたび、印刷のダイヤログが立ち上がってしまう。何をやっておるのか。
 もうひとつはクリップボードの共有ができないということ。
 そこで「ssh -Y」
 Beelink S1で動かしたEmacsをMacBook AirのXQuartz2に表示して使おうというのだ。
 Ubuntuのときはこの手が使えなかった。なぜか、「ssh -Y」が効かなかった。しかし、FreeBSDではできたはず——なのに、どうしてか、「ssh -Y ほげほげ emacs」でエラーになる。xauthがなんとかかんとか。
 うーむ。

 manをあさったり、ググったり。
 不思議なことにFreeBSDならいろいろいじる気になる。なぜだろう。Ubuntuではそこまでやる気になれなかった。調べた結果——わからない。ちゃんと設定しているように見える。
 ふと、/etc/sshd.confのmanを見ていてXauthの設定があることに気づいた。
 そういえば、エラーメッセージにもxauthなんとか、とでていたな。
 そもそもxauthはインストールされているのか?
 されてなかった。
 そういうオチかい!

sudo pkg install xauth

 そういうオチだった。
 いれたら動くようになった。

 これでクリップボードも共有できるし、commandキーをmetaキーとしても使える。なんだ、xauthをいれてやれば、よかったのか。Ubuntuもそうだったのかな? Ubuntuは今や動かないけれど、RaspberryPiを調べてみると——あれ? xauthは入っている。
 しかも昔、RaspberryPiは「ssh -Y」が使えていた
 それなのに今は使えない。
 xauthのエラーメッセージがでる。
 うーむ、謎だ。

Footnotes:

1

optionキーにしか、割り当てられない模様。

2

MacOSで動くXサーバ。