Ratpoison - Arch Linux 中文维基

跳至內容

# Ratpoison

出自 Arch Linux 中文维基

本文或本節內容已經過時。

原因： 請提供模板的第一個位置參數以概括原因。 (在Talk:Ratpoison討論)
翻譯狀態：

- 本文（或部分內容）譯自 Ratpoison，最近一次同步於 2016-02-01，若英文版本有所更改，則您可以幫助同步與翻譯更改的內容。
- 您可以在 ArchWiki 的對應頁面找到本文翻譯的原始修訂歷史。
- 本文可能與英文原文存在出入。

這篇文章或章節的翻譯質量不佳。

原因：Last updated in 2016（在 Talk:Ratpoison# 中討論）

Ratpoison是一個用C語言編寫的平鋪式窗口管理器，它允許用戶不用滑鼠就能管理應用程式。它的界面收到GNU Screen的啟發。

## 安裝

Ratpoison可以通過ratpoison包 或者是ratpoison-gitAUR[損壞的連結：package not found] （開發版本）安裝。

## 配置

為了讓Ratpoison成為你的窗口管理器，你必須新建/編輯文件`~/.xinitrc`.

.xinitrc的一個例子:

    # The black/white grid as background doesn't suit my taste.
    xsetroot -solid black &
    # Ratpoison is compatible with xcompmgr! now you can have real transparency
    xcompmgr -c -f -D 5 &
    #fire up ratpoison!
    exec /usr/bin/ratpoison

## 使用Ratpoison

在X11啟動後你會看到黑色的屏幕背景還有右上角它彈出的一個文本框"Welcome to Ratpoison"。現在按下`Ctrl+t`，再輸入`?`來獲取快捷鍵列表。如果你習慣使用GNU screen，你將馬上感到它非常熟悉。 你可以自定義快捷鍵，你甚至可以覆蓋`~/.ratpoisonrc`中已存在的快捷鍵

例如:

    # Overriding CTRL+t 'c' to start aterm instead of xterm
    bind c exec aterm

    bind f exec firefox

如果使用上述配置，當你按下`Ctrl+t` 然後`f`後, ratpoison將啟動firefox.

這是另一個我正在用的.ratpoisonrc配置:

    exec xsetroot -cursor_name left_ptr
    startup_message off

    escape C-z

    # Make a screenshot
    alias sshot exec import -window root ~/screenshot-$(date +%F).jpg
    definekey top M-C-Print sshot

    #virtual desks
    gnewbg one
    gnewbg two

    definekey top M-l exec ratpoison -c "select -" -c "gprev" -c "next"
    definekey top M-h exec ratpoison -c "select -" -c "gnext" -c "next"

    #switch between windows
    definekey top M-j next
    definekey top M-k prev

    #apps
    unbind c
    bind c exec urxvt -tr
    #bind c exec aterm

    bind g exec gftp
    bind f exec firefox

## 小貼士

### Java Swing應用程式

Java Swing GUI應用程式不認為ratpoison是平鋪式窗口管理器, 且不正確地像ratpoison配置的那樣全屏顯示。不過有一種方法可以讓它認為自己在平鋪式管理器中並且正確的全屏。

首先安裝`wmname` package， 然後將這一行加入你的`.ratpoisonrc`中:

    ~/.ratpoisonrc

    exec wmname LG3D

啊哈！Java Swing應用現在可以正確全屏了。

### 多個虛擬桌面

默認情況下，ratpoison只有一個虛擬桌面，但是用一個叫做rpws(默認安裝）的腳本，你可以有多個虛擬桌面。

只要更改你的.ratpoisonrc，然後加入:

    ~/.ratpoisonrc

    exec /usr/bin/rpws init 6 -k

這樣就會創建6個虛擬桌面。默認地，你可以進入通過按下`Alt+F1` 來進入1號虛擬桌面, `Alt+F2` 來進入2號虛擬桌面，以此類推。

你也可以這樣添加快捷鍵:

    bind C-1 exec rpws 1
    bind C-2 exec rpws 2
    ...

這樣允許你通過`Ctrl+t` `Ctrl+1` 進入它們(假定`Ctrl+t` 是你的escape鍵)

### Urxvt和xterm

Urxvt和xter，因為它們被默認安裝，發送重調大小的信號給窗口管理器。這個在大多數窗口管理器中起作用，但是在ratpoison中無效。結果就是URxvt/xterm通過更改字號調整自己的大小，而不是將自己調整成全屏，有無法填充空格的機率很高。有兩種方法改變這個現狀。請看下文。

#### 安裝打過補丁的URxvt

如果你使用URxvt,軟體包rxvt-unicode-fontspacing-noinc-vteclear-secondarywheelAUR除其他改動外，還不發送重調大小的信號給窗口管理器。如果你安裝這個版本的URxvt而不是默認版本，URxvt就會在ratpoison中正常調整大小。

#### 配置邊緣

我們可以使用xterm/URxvt默認的邊框設置工具將ratpoison的邊框設置為0。

    ~/.Xresources

    urxvt*internalBorder: 8 #change urxvt to xterm if necessary. Using the font terminus in urxvt at 14px size, 8 is the correct number here.

    ~/.ratpoisonrc

    set border 0

### 自啟動

當ratpoison啟動時自啟動應用的例子。文件 `~/.ratpoisonrc`中的內容會在ratpoison啟動時執行。

    Launch urxvt with a tmux session

    exec urxvt -e bash -c "tmux -q has-session && exec tmux attach-session -d || exec tmux new-session -n$USER -s$USER@$HOSTNAME"

    Launch optimized chromium

    exec bash -c 'pidof chromium &>/dev/null || exec /usr/bin/chromium --disk-cache-dir=~/tmp/cache'

### 壁紙和透明度

通過xcompmgr還有nitrogen設置透明的例子. 首先啟動nitrogen然後設置你希望設置成壁紙的壁紙。然後把這個加入到你的.ratpoisonrc中去

    Wallpaper and transparency

    exec xcompmgr -c -f -D 5 &
    exec nitrogen --restore

## 有用的快捷鍵

`Ctrl+t` `!` <程序名稱> 啟動某個程序
`Ctrl+t` `?` 顯示快捷鍵設置
`Ctrl+t` `c` 啟動一個x terminal
`Ctrl+t` `n` 切換到下一個窗口
`Ctrl+t` `p` 切換到之前的窗口
`Ctrl+t` `1`-`9` 切換到1-9號窗口
`Ctrl+t` `k` 關閉當前窗口
`Ctrl+t` `Shift+k` 殺死當前窗口
`Ctrl+t` `s`,`Shift+s` 將當前布局改為豎直布局或水平布局
`Ctrl+t` `Tab`, `←`, `↑`, `→`, `↓` 切換到下一個，左邊的，頂部的，右邊的，頂部的框架.
`Ctrl+t` `Shift+q` 將當前框架指定為唯一
`Ctrl+t` `:` 執行一個ratpoison命令

## 焦點跟隨滑鼠

Arch linux的ratpoison包同時在/usr/share/ratpoison中安裝了編譯腳本，sloppy.c。它能被用來在ratpoison中啟動焦點跟隨滑鼠。為了啟動它，你可以:

    # cd /usr/share/ratpoison/
    # gcc -o sloppy sloppy.c -lX11
    # ./sloppy

想要自啟動，你可以將下列行加入~/.ratpoisonrc

    exec /usr/share/ratpoison/sloppy

## Ratpoison和顯示管理器

許多display managers (例如 LightDM) 在 `/usr/share/xsessions/`中確認可用的會話，並且大多數窗口管理器和桌面環境會在那建立一個.desktop文件。然而ratpoison卻會在`/etc/X11/sessions/`裡創建。 為了讓顯示管理器識別ratpoison，你需要將`/etc/X11/sessions/ratpoison.desktop` 拷貝至`/usr/share/xsessions/ratpoison.desktop`. 如果 `/usr/share/xsessions`不存在，你需要在root下建立

## 更多連結

- The Ratpoison wiki
- X11 Keys in Ratpoison[失效連結 2020-08-04 ⓘ]
- Ratpoison config sample[失效連結 2021-11-15 ⓘ]
- Share your Ratpoison (experience) forum thread
- Collection of scripts for the Ratpoison window manager
- Stumpwm - a successor to Ratpoison written in Common lisp

分類：​

- 使用「模板:過時」標記的頁面或章節
- 平鋪式窗口管理器
- 包含損壞的軟體包連結的頁面
- 包含失效連結的頁面

隱藏分類：​

- 使用「模板:糟糕的翻譯」標記的頁面或章節

Ratpoison
新增話題