tmux
كل اختصار في tmux يجب أن يسبقه بادئة (prefix)، الافتراضية هي
C-b
ولكن يمكن تغييرها, انظر مثال الاعدادات ادناه.
نتعامل مع tmux كثلاث طبقات:
1. الجلسات (Sessions)
الأمر | الوصف |
---|---|
tmux | إنشاء جلسة جديدة وتُرقم تلقائيا |
tmux new -s (name) | إنشاء جلسة جديدة من خارج tmux باسم أو :new من داخل الجلسة |
<prefix> $ | إعادة تسمية الجلسة |
<prefix> d | فصل الجلسة الحالية (تظل موجودة ولا تُغلق) |
tmux ls | عرض قائمة الجلسات |
<prefix> s | عرض قائمة الجلسات من داخل tmux |
tmux a | توصيل بآخر جلسة |
tmux a -t (number/name) | توصيل جلسة برقم او اسم محدد |
<prefix> w | عرض كل الجلسات والنوافذ ثم الإرفاق بأي منها |
tmux kill-session | إنهاء آخر جلسة |
tmux kill-session -t (number/name) | إنهاء جلسة محددة |
tmux kill-server | إنهاء جميع الجلسات |
2. النوافذ (Windows / Tabs)
الأمر | الوصف |
---|---|
<prefix> c | إنشاء نافذة جديدة |
<prefix> (number) | الانتقال إلى نافذة محددة |
<prefix> n | الانتقال إلى النافذة التالية |
<prefix> p | الانتقال إلى النافذة السابقة |
<prefix> , | إعادة تسمية النافذة |
<prefix> & | إغلاق النافذة مع كل الأجزاء (panes) بداخلها |
3. الأجزاء (Panes)
الأمر | الوصف |
---|---|
<prefix> % | فتح جزء عمودي |
<prefix> " | فتح جزء أفقي |
<prefix> q (number) | الانتقال بين الأجزاء |
<prefix> (arrow key) | الانتقال بين الأجزاء |
<prefix> C-(arrow key) | تغيير حجم الجزء الحالي في اتجاه السهم |
<prefix> alt-(arrow key) | تغيير حجم الجزء الحالي في اتجاه السهم بخطوات أكبر |
<prefix> ({/}) | التبديل بين الأجزاء |
<prefix> z | تكبير وتصغير الجزء |
<prefix> ! | إنشاء نافذة جديدة من الجزء الحالي |
<prefix> alt-(1-5) | إعادة ترتيب الأجزاء في تخطيطات جاهزة |
<prefix> x | إغلاق الجزء، أو فقط الخروج من الشيل |
4. الصناديق (Popover)
لا تأتي مفعلة افتراضيا وتُفعل يدويا. يمكن وضع اختصار لكل برنامج، انظر المثال في إعدادات tmux
أدناه
وضع النسخ
- الدخول في وضع النسخ:
<prefix> [
. - تحريك المؤشر: يمكن التحرك لموضع بداية النسخ بالأسهم، أو
C-p
(previous) للسطر السابق,C-n
(next) للسطر التالي,C-f
(forward) للحرف التالي,C-b
(backward) للحرف السابق. - بدء التحديد:
C-Space
ثم التحرك بالأسهم. - النسخ إلى مخزن tmux: تختلف بحسب النظام،
A-w
,C-w
,Enter
. - اللصق من مخزن tmux:
<prefix> ]
.
النسخ إلى حافظة النظام يحتاج إعداد، انظر ملف الإعدادات في القسم التالي والذي ينسخ باستخدام C-c
.
إعدادات tmux
يمكن تعديل إعدادات tmux من خلال الملف ~/.config/tmux/tmux.conf
.
bash
nano ~/.config/tmux/tmux.conf
بعد التعديل، يجب إعادة تحميل الإعدادات بالأمر:
bash
tmux source ~/.config/tmux/tmux.conf
أمثلة على الإعدادات:
sh
# fix tmux colors
set-option -sa terminal-overrides ",xterm*:Tc"
# enable mouse usage
set -g mouse on
# enable copy to system clipboard
bind-key -T copy-mode C-c send-keys -X copy-pipe-and-cancel "xclip -i -selection clipboard"
# enable popups
bind-key p display-popup -E "tmux"
# change <prefix> to C-Space instead of C-b
unbind C-b
set -g prefix C-Space
bind C-Space send-prefix
# Vim style pane selection
# bind h select-pane -L
# bind j select-pane -D
# bind k select-pane -U
# bind l select-pane -R
# Start windows and panes at 1, not 0
set -g base-index 1
set -g pane-base-index 1
set-window-option -g pane-base-index 1
set-option -g renumber-windows on
# Use Alt-arrow keys without prefix key to switch panes
# bind -n M-Left select-pane -L
# bind -n M-Right select-pane -R
# bind -n M-Up select-pane -U
# bind -n M-Down select-pane -D
# Shift arrow to switch windows
# bind -n S-Left previous-window
# bind -n S-Right next-window
# Shift Alt vim keys to switch windows
# bind -n M-H previous-window
# bind -n M-L next-window
مدير إضافات tmux
يمكن استخدام tpm لإدارة الإضافات والثيمات في tmux. تُضاف الإضافات إلى ملف إعادات tmux ويمكن تثبيت الإضافات المعرفة بإعادة تحميل ملف الإعدادات باستخدام tmux source-file ~/.config/tmux/tmux.conf
أو من داخل tmux
باستخدام <prefix> I
. الروابط التالية لأهم الإضافات
- tpm ﻹدارة الإضافات
- tmux-resurrect and tmux-continuum لحفظ واسترداد الجلسات
- tokyo-night-tmux سمة toky لـtmux.