2015年2月28日 星期六

鍵盤切換分頁的古典終端機 rxvt

在 rxvt-unicode-256color 裡面測試 256 色 1990 年代中期, kde 才剛起步, gnome 還沒出現。 終端機模擬器 rxvt 出現的時間可能更早, 所以它的設定採用底層 X Window 的古老方式。 但是社群不斷幫它增加功能, 後來不僅支援 unicode 跟 256 色, 甚至還可以用鍵盤切換分頁。

rxvt 有很多個版本; 我們直接選擇最強大的 (支援中文的) unicode 系列、 256 色版: apt-get install rxvt-unicode-256color 上圖顯示的是 256 色測試 ( github 上的程式碼)

假設你已設定好 中文顯示 中文輸入 的環境。 根據 這則超有用的留言, 我下 fc-list -f '%{family}\n' :lang=zh 在我的系統裡看見:

...
AR PL UKai TW
AR PL UMing TW
...

又根據 1 2, 可以用 ':pixelsize=24' 指定字體大小。 所以可以這樣啟動 urxvt: urxvt -fg green -bg black -fn 'xft:AR PL UKai TW:pixelsize=24'

如果成功的話, 就可以把這些值寫入設定檔 ~/.Xresources 裡面:

URxvt*.foreground: green
URxvt*.background: black
URxvt*.geometry: 70x20
URxvt*.font: xft:AR PL UKai TW:pixelsize=24

然後 xrdb -merge ~/.Xresources 載入設定。 之後再下 urxvt 指令, 就不需要再指定命令列參數了。 登出後失效。 如果要永久生效, 還必須把這指令寫進設定檔。 以 KDE 桌面為例, 先編輯一下應用程式選單, 加入 urxvt (預設好像不會出現在 KDE 程式選單裡面), 然後建一個 shell script 叫做 ~/.kde/env/load_xrdb.sh 內容如下:

#!/bin/bash
xrdb -merge ~/.Xresources

並且開放執行權限: chmod u+x ~/.kde/env/load_xrdb (根據 這一頁, 檔名必須為 *.sh 且第一句必須為 #!/bin/bash)

[2019/12/18] urxvt 的分頁 (tab) 功能需要外掛。 在 這一頁 找到程式碼, 把它抓回來放到正確的位置:

mkdir -p ~/.urxvt/ext
wget -O ~/.urxvt/ext/tabbed https://raw.githubusercontent.com/gryf/tabbed/master/tabbed
echo 'URxvt*.perl-ext: tabbed' >> ~/.Xresources
xrdb -merge ~/.Xresources

此後新開啟的 urxvt 視窗上方就會出現一列文字模式的分頁。 按 「shift-下箭頭」 可以新增分頁; 「shift-左箭頭」 及 「shift-右箭頭」 可以切換分頁。 也可以用 「ctrl-1」、「ctrl-2」、 ... 「ctrl-9」 直接跳到第 n 個分頁, 手指完全不必離開鍵盤! 其次, 視窗最左上角 (比 「New」 新增分頁還左上) 的選單有一個 「以分頁附加到...」 的選項。 例如你可以把它變成 firefox/chromium/dillo 瀏覽器視窗的一個分頁。 (這個功能沒有了)

Archlinux 詳盡的 wiki 還有更多功能介紹。 透明視窗我試的結果失敗。 以後若再試出有趣的東西, 會補在這裡。

因為在安裝 debian 7.8 的過程當中, 發現 roxterm 怪怪的, 視窗會自動縮小。 所以才回頭把多年前用過的 rxvt 找出來用。 另外, 我確實也有一點蒐集終端機軟體的僻好啦 :-)

3 則留言:

  1. 我是比較習慣用 tmux 或 gnu screen 來開分頁,因為每個終端機的快捷鍵都不太一樣。

    回覆刪除
  2. tab in firefox 好像不能用了?覺得這功能蠻神奇的,想試一試,但沒找到那個選單,也搜尋不到相關的資料。

    回覆刪除
  3. 真的! 連基本的 tab 功能也都需要另外手動下載外掛才能用。 已更新文章。 至於 tab in firefox 搜尋了一下,竟然只有我的文章在談.. 我是從平行宇宙掉進來的嗎 orz

    回覆刪除

因為垃圾留言太多,現在改為審核後才發佈,請耐心等候一兩天。