1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

ubuntuのターミナル(gnome-terminal)を指定の場所に指定サイズで表示

Posted at

背景・やりたいこと

開発環境はマルチモニタ。片方はターミナルで埋め尽くしたい。
具体的には以下のように左右上下に4つのウインドウを起動・配置したい。

Image from Gyazo

方法(tmux断念して標準のgnome-terminalで実現)

最初に考えたのはスクリーンを4分割して表示。

残念ながらWindows Terminalのように簡単操作(ctrl + alt + プラス(orマイナス))で分割できるターミナルソフトはLinuxにはない模様。

Microsoftさん、Linuxに移植してーーー。
Microsoftさん、Linuxに移植してーーー。
Microsoftさん、Linuxに移植してーーー。

現状、Linuxで代表的なのはtmuxの模様。

ちょっと頑張ってみたけど、使い勝手が悪いと判断しました。理由は以下。前者が100%ではないけど頻繁に発生するので致命的。

  • ウインドウのリサイズ・移動で乱れる(というか真っ黒になってしまう。ウインドウの下の方でチカチカ。操作も回復も不能)
  • コピペ操作が面倒。機能しないときもある。

結局、(スクリーンの分割ができない以外は特に不満はない)標準のターミナル(gnome-termina)を4つ起動するというシンプルな作戦に変更。

手間取ったのはは配置。都度、配置しなおすのは面倒なので自動化したい。
ただ、ターミナルの設定で指定できるのはウインドウサイズ(列数x行数)だけで、表示位置は指定できない。

調べたら、ターミナルをコマンドラインで起動して--geometryオプションでサイズと表示位置を指定できた。

--geometryオプション

$ man gnome-terminal
OPTIONS
       --geometry=GEOMETRY
                 X geometry specification (see "X" man page), can be specified once per window to be opened.

GEOMETRYの指定方法は、Xのmanページに記載されている。

$ man X
GEOMETRY SPECIFICATIONS
 -geometry WIDTHxHEIGHT+XOFF+YOFF (where  WIDTH,  HEIGHT, XOFF, and YOFF are numbers) for specifying ...

要するに以下のようにすれば良い。

/usr/bin/gnome-terminal --geometry=WxH+X+Y --window-with-profile=<name> &

--window-with-profileって何?

別ウインドウで起動させるために必要だったので指定。(これを指定しないと同じターミナルウインドウ内の別タブで表示されてしまう)

名前は、Terminalの設定画面(メニュー > 編集 > Preference)で任意に指定できる。

Image from Gyazo

geometry値の取得方法

WxHの部分は前述した設定画面の列数と行数に対応しています。
+X+Yの部分は、Xは0が左端なんですが、Y値が謎(0が最上部かと思ったら当方環境では686という変な値 ※1)

取得方法は色々とあると思いますが、当方はdevilspie2の設定時に取得する方法を確立していたので、その方法で取得しました。

[Ubuntu]devilspie2でウインドウサイズと位置を調整 - Qiita

※1:たぶんサイズの違うマルチモニタで大きい方がメインモニタになってるから

1
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?