【rlwrap】Ocamlの対話式コンパイラで矢印キーを使う方法

はじめに

Ocamlを対話式コンパイラ形式で起動する。

$ ocaml
    Ocaml version 4.12.0
#

矢印キーを用いて、テキストカーソルを移動させたり、過去に入力した内容を表示させることが出来ない。

# 1 + 2;;
- : int = 3
# ^[[A

この問題はrlwrapを用いることで解決できる。

rlwrap

rlwrapをインストールする。

$ sudo apt install rlwrap

rlwrapを使ってOcamlを起動する。

$ rlwrap ocaml
    Ocaml version 4.12.0
#

↑キーを押して過去に入力した内容を表示出来ることを確認する。

# 1 + 2;;
- : int = 3
# 1 + 2;;

rlwrap ocamlと入力するのは面倒なので、bash設定ファイルにエイリアスを設定する。

echo "alias ocaml='rlwrap ocaml'" >> ~/.bashrc
source ~/.bashrc

【Ubuntu】マウスホイールのスクロール量の調節【imwheel】

やったこと

Ubuntuを使っていて、マウスホイールのスクロール速度が遅いと思ったので、imwheelを使ってスクロール量を調節した。

imwheelとは 

imwheel はマウスホイールの挙動をプログラムごとに調整するツールです。マウスホイールの入力をキーボードの入力にマッピングしたり、マウスホイールの速度を上げたりすることができます。修飾キーもサポートしています。

wiki.archlinux.jp

imwheelのインストール

次のコマンドでインストールできる。

$ sudo apt install imwheel

次のコマンドでimwheelを実行できる。

$ imwheel
INFO: imwheel started (pid=6368)

imwheelを実行すると、マウスホイールのスクロール速度が速くなった。

imwheelの設定ファイル

imwheelのデフォルトの設定は/etc/X11/imwheel/imwheelrcに書かれている(公式のドキュメントではetc/X11/imwheelrcに設定ファイルがあるらしいが、私の環境では/etc/X11/imwheel/imwheelrcにあった)。 この設定ファイルを編集することで、imwheelが変更するマウスホイールの挙動を細かく設定できる。ただし、このファイルを編集すると全ユーザの設定が変更されるため、今回は~/.imwheelrcを作成・編集する(~/.imwheelrcの内容は1ユーザにしか適用されない)。

スクロール量を変更

imwheelrcを編集してスクロール量を変更する。

# chromeのみに適用
"chrome"
None, Up,   Button4, 5
None, Down, Button5, 5

# 全てのプログラムに適用
".*"
None, Up,   Button4, 10
None, Down, Button5, 10

上の行の設定の方が優先度が高く設定されるため、全てのプログラムに適用する".*"は、他の設定を上書きしないように最後に書く。

imwheelの設定を適用

次のコマンドで、imwheelを再起動して設定を適用させる。

$ imwheel -k

おまけ

imwheelの設定をGUIで行えるプログラムを、公開してくれている人がいたので使ってみる。

www.nicknorton.net


次のコマンドを入力すると、imwheelの設定画面が表示される。

$ bash <(curl -s http://www.nicknorton.net/mousewheel.sh)


設定画面のMouse wheel speedを変更し、Applyを押すと設定が適用される。

imwheelの設定画面