Ubuntu 18.04 の Workspace を今まで通りにする

Ubuntu 18.04 Desktop ではデスクトップ環境が GNOME に変わりました。
いろいろと良いところもあるのですが、今まで愛用していた Workspace の仕様が変わって
使いづらくなっていたので、今まで (Ubuntu 14.04/16.04) と同じ挙動にする方法を調べました。

### Ubuntu 18.04 の Workspace

Ubuntu 18.04 の Workspace はデフォルトで動的に数が変わるようになっています。
常に空の Workspace が一つあり、そこにウィンドウを配置すると更に空の Workspace が追加されるようになっています。
**そして Workspace は上下方向にしか展開されません。**
この記事では以前のバージョンの Ubuntu Desktop のように、Workspace 数を固定し、
上下左右に展開できるように変更する方法を紹介します。

### 今までと同じ挙動に戻す方法

**Workspace Grid** という GNOME の拡張機能を使えば従来と同じように上下左右に展開できる Workspace を実現できます。
まず、ブラウザから GNOME の拡張機能をインストールできるようにするために、`chrome-gnome-shell` をインストールします。

```
$ sudo apt update
$ sudo apt install -y chrome-gnome-shell
```

更にブラウザ側にも拡張機能を追加します。
https://extensions.gnome.org にアクセスすると以下のような画面が出てくるので、
`Click here to install browser extension` をクリックしてブラウザに拡張機能を追加してください。

![image.png](https://qiita-image-store.s3.amazonaws.com/0/88293/f247d088-0a00-00b7-518f-4c9f13c37fe2.png)

次に GNOME の拡張機能である Workspace Grid をインストールします。
https://extensions.gnome.org/extension/484/workspace-grid/ にアクセスして右上の ON/OFF スイッチを ON にしてインストールしてください。

![cap3.png](https://qiita-image-store.s3.amazonaws.com/0/88293/bc92325b-4c85-2792-b798-28d5339ed4b0.png)

[また、Workspace のサムネイルを正しく表示するために User Themes 拡張機能もインストールします。](https://github.com/zakkak/workspace-grid#quirks--known-issues)
https://extensions.gnome.org/extension/19/user-themes/ にアクセスして同じように有効化します。

次に、Workspace の設定を変更するために `gnome-tweak-tool` をインストールし、起動します。

```
$ sudo apt install -y gnome-tweak-tool
$ gnome-tweaks
```

まず、左の `Workspace` を選んで、`Static Workspaces` にチェックを入れます。
これで Workspace の数が固定になります。

![cap1.png](https://qiita-image-store.s3.amazonaws.com/0/88293/13c43afc-10dd-9958-df2b-0feab134fcdc.png)

次に左の `Extensions` から `Workspace Grid` の設定マークを選び、`Number of rows of workspaces`(縦方向の数) と `Number of columns of workspaces`(横方向の数) を好きな数に設定します。

![cap2.png](https://qiita-image-store.s3.amazonaws.com/0/88293/064c9be2-e50c-589e-23ca-4ac232f612fc.png)

これで今までの Ubuntu と同じ挙動の Workspace が設定できました。

Workspace 切り替えのときに出てくる Workspace1, Workspace2, ... みたいな表示が気に入らない人は変えることができます。
変えるためには `dconf-editor` をインストールして以下のコマンドを打ちます。

```
$ sudo apt install -y dconf-editor
$ dconf-editor /org/gnome/desktop/wm/preferences/workspace-names
```

`Use default value` を OFF にして Custom value にリスト形式で記述すると Workspace の名前を変えることができます。
以下の例は各 Workspace に 1, 2, 3, 4 と名前をつける場合です。
編集したら右下のチェックボタンを押すのを忘れないようにしてください。

![cap4.png](https://qiita-image-store.s3.amazonaws.com/0/88293/780dff95-da1d-6169-e990-a63b6c29a0f8.png)

Workspaceの移動はデフォルトで`Ctrl+Alt+矢印キー`でできますが、変更する場合は以下のコマンドを使います。以下は`Ctrl+Alt+hjkl`で左下上右に移動するように変更する例です。

```
$ gsettings set org.gnome.desktop.wm.keybindings switch-to-workspace-left  "['<Ctrl><Alt>h']"
$ gsettings set org.gnome.desktop.wm.keybindings switch-to-workspace-down    "['<Ctrl><Alt>j']"
$ gsettings set org.gnome.desktop.wm.keybindings switch-to-workspace-up   "['<Ctrl><Alt>k']"
$ gsettings set org.gnome.desktop.wm.keybindings switch-to-workspace-right "['<Ctrl><Alt>l']"
$ gsettings set org.gnome.desktop.wm.keybindings move-to-workspace-left "['<Shift><Ctrl><Alt>h']"
$ gsettings set org.gnome.desktop.wm.keybindings move-to-workspace-down  "['<Shift><Ctrl><Alt>j']"
$ gsettings set org.gnome.desktop.wm.keybindings move-to-workspace-up   "['<Shift><Ctrl><Alt>k']"
$ gsettings set org.gnome.desktop.wm.keybindings move-to-workspace-right "['<Shift><Ctrl><Alt>l']"
```

以上で説明は終わりです。
何か不明点やうまくいかないところなどあればコメントでお願いします。