Có ba lớp tùy chọn riêng biệt: máy chủ, phiên và cửa sổ. Các lớp này là độc quyền: mỗi tùy chọn chỉ thuộc về một trong các lớp. Không bao giờ có bất kỳ sự kế thừa giữa các lớp tùy chọn.
Chỉ có một cấp tùy chọn máy chủ, do đó không có sự kế thừa ở đó (mặc dù bạn có thể có nhiều máy chủ độc lập bằng cách sử dụng cờ -L
hoặc -S
dòng lệnh).
Mỗi tùy chọn phiên và cửa sổ sử dụng phân cấp hai cấp: tùy chọn phiên toàn cầu (cửa sổ) cung cấp các giá trị mặc định cho các tùy chọn phiên (cửa sổ) không được đặt. Các tùy chọn phiên và cửa sổ đều không được đặt ban đầu, vì vậy các phiên / cửa sổ mới sẽ tự động sử dụng các giá trị tùy chọn phiên / cửa sổ chung.
Khi tùy chọn phiên được đặt ( set-option
), giá trị được đặt mới sẽ ghi đè giá trị toàn cục cho phiên đó. Để quay lại sử dụng giá trị toàn cục, bỏ đặt tùy chọn ( set-option -u
). Thay đổi đối với các giá trị tùy chọn phiên toàn cầu sẽ ảnh hưởng đến tất cả các phiên trong đó tùy chọn đó hiện không được đặt. Ý tưởng tương tự áp dụng cho các tùy chọn cửa sổ (ngoại trừ cài đặt tùy chọn cửa sổ ghi đè giá trị cho một cửa sổ riêng lẻ thay vì một phiên riêng lẻ).
Ví dụ: để tìm giá trị hiệu quả cho base-index
tùy chọn phiên cho một phiên cụ thể:
- Kiểm tra
base-index
tùy chọn của phiên (tức là những gì bạn nhận được từ tmux -t «target-session» show-options base-index
* ).
- Nếu phiên có
base-index
giá trị, sau đó sử dụng nó.
- Nếu giá trị của phiên không được đặt, thì hãy sử dụng giá trị toàn cầu (nghĩa là những gì bạn nhận được từ đó
tmux show-options -g base-index
).
Tương tự, để tìm giá trị hiệu quả cho mode-keys
tùy chọn cửa sổ cho một cửa sổ cụ thể:
- Kiểm tra
mode-keys
tùy chọn của cửa sổ (tức là những gì bạn nhận được từ tmux -t «target-window» show-options -w mode-keys
** ).
- Nếu cửa sổ có
mode-keys
giá trị, sau đó sử dụng nó.
- Nếu giá trị của cửa sổ không được đặt, thì hãy sử dụng giá trị toàn cầu (nghĩa là những gì bạn nhận được từ
tmux show-options -gw mode-keys
).
* Các phiên bản cũ hơn của tmux không chấp nhận đối số tên tùy chọn cho show-options
. Với những phiên bản đó, bạn sẽ phải làm một cái gì đó như grep cho nó : tmux -t target show-options | grep '^base-index '
.
** Điều này giống như tmux show-window-options base-index
, nếu bạn thích điều đó tốt hơn. Lệnh liên quan cho các tùy chọn cửa sổ toàn cầu là tmux show-window-options -g base-index
.
Đây là một sơ đồ:
.---------------.
( server options )
`---------------'
===========================================================
.----------------------.
( global session options ) base-index 1
`---------+--+---------' visual-bell on
--/ \--
--/ \--
+-----/-----+ +-----\-----+
| session X | | session Y |
+-----------+ +-----------+
base-index 0 visual-bell off
effective values for X:
base-index 0 (set)
visual-bell on (global)
effective values for Y:
base-index 1 (global)
visual-bell off (set)
===========================================================
.---------------------.
( global window options ) pane-base-index 1
`---------+++---------' mode-keys emacs
---/ | \---
--/ | \---
---/ | \---
---/ | \---
+-------/----+ +------+-----+ +------\-----+
| window X.0 | | window X.1 | | window Y.0 |
+------------+ +------------+ +------------+
pane-base-index 0 mode-keys vi
mode-keys vi
effective values for X.0:
pane-base-index 0 (set)
mode-keys vi (set)
effective values for X.1:
pane-base-index 1 (global)
mode-keys emacs (global)
effective values for Y.0:
pane-base-index 1 (global)
mode-keys vi (set)
show -s
. Tuy nhiên, từ góc độ sử dụng, các tùy chọn máy chủ không cần thiết IMHO.