tmux Зміст Поєднання клавіш | Функціональність | Зноски | Джерела | Навігаційне менюbxr.su/o/usr.bin/tmux/tmux.sourceforge.nettmuxtmux/tmuxtmux source codeTmux manualОфіційна сторінка tmuxоригіналуtmux FAQ
Програмне забезпечення за алфавітомПрограмне забезпечення для Unix
віртуальних консолейінтерфейсом командного рядкаGNU Screenліцензію BSDGNU GPL v3sshсокет
tmux
Перейти до навігації
Перейти до пошуку
tmux з трьома панелями | |
| Тип | мультиплексор для віртуальних консолей |
|---|---|
| Розробник | Ніколас Марріотт (Nicholas Marriott) |
| Перший випуск | 20 вересня 2009 року |
| Стабільний випуск | 2.1 (20 жовтня 2015) |
| Версії | 2.7 (22 березня 2018)[1] |
| Репозиторій | bxr.su/o/usr.bin/tmux/ |
| Операційна система | UNIX-подібні |
| GNU фреймворк | Ncurses[2] |
| Написано на | C |
| Ліцензія | BSD |
tmux.sourceforge.net | |
tmux у Вікісховищі? | |
tmux — це програма мултиплексор віртуальних консолей, дозволяє легко перемикатись між кількома програмами в одному терміналі, від'єднуватись від програм, залишаючи їх у фоні, і приєднувати їх до іншого терміналу і багато іншого. Він є зручним інструментом для одночасного керування багатьма програмами з інтерфейсом командного рядка. tmux є альтернативою GNU Screen, проте розробляється активніше і використовує ліцензію BSD на відміну від GNU GPL v3 у GNU screen. При запуску tmux створює нову сесію з одним вікном і відображає його на екрані. Внизу екрану відображається лінія статусу з інформацією про поточну сесію, вона також використовується для введення інтерактивних команд.
Cесія tmux — це сукупність «псевдо-терміналів» під управлінням tmux, кожна сесія має одне або кілька «вікон» приєднаних до неї, вікно може бути розділене на кілька прямокутних «панелей», у кожній з яких міститься псевдо-термінал. Будь-яка кількість екземплярів tmux може приєднатись до однієї сесії і будь-яка кількість вікон може знаходитись у ній. tmux виходить при завершення всіх сесій.
Cесії tmux є стійкими і можуть пережити випадкові роз'єднання (наприклад роз'єднання ssh) або навмисне від'єднання (за допомогою комбінації клавіш CTRL+b d). Знову приєднатись до сесії можна за допомогою команди tmux attach.
tmux відображає сесії за допомогою клієнта і всі сесії управляються за допомогою єдиного сервера, клієнт і сервер є окремими процесами, комунікація яких відбувається через сокет, що міститься в директорії /tmp.
Зміст
1 Поєднання клавіш
2 Функціональність
3 Зноски
4 Джерела
Поєднання клавіш |
tmux може керуватись з підєднаного клієнта, використовуючи комбінації клавіш, що починаються з префікса, стандартний префікс C+b (Ctrl+b), після якого натискається командна клавіша, клавіша-модифікатор (переважно Alt) позначена M
| Комбінація | Опис |
|---|---|
| C-b | Надіслати клієнтові команду-префікс |
| C-o | Перемкнутись на наступну панель у поточному вікні |
| C-z | Призупинити tmux |
| ! | Винести панель у окреме вікно |
| " | Розділити поточну панель горизонтально навпіл |
| # | Перелічити всі буфери вставлення |
| $ | Перейменувати поточну сесію |
| % | Розділити поточну панель вертикально навпіл |
| & | Знищити поточне вікно |
| ' | Вибрати вікно, ввівши його індекс |
| , | Перейменувати поточне вікно |
| - | Видалити останній скопійований у буфер текст |
| . | Перенести поточне вікно, інтерактивно вказавши індекс |
| 0 — 9 | Вибрати вікно з вказаним індексом |
| : | Викликати командний рядок tmux |
| ; | Повернутись до попередньої панелі |
| = | Інтерактивно вибрати, який буфер вставити |
| ? | Показати всі поєднання клавіш |
| D | Інтерактивно обрати, який клієнт від'єднати |
| [ | Перейти у режим копіювання, щоб копіювати текст або переглядати історію |
| ] | Вставити останній скопійований буфер |
| c | Створити нове вікно |
| d | Відєднати поточний клієнт |
| f | Ввести текст для пошуку в поточному вікні |
| i | Показати інформацію про поточне вікно |
| l | Перейти до попередньо відкритого вікна вікна |
| n | Перейти до наступного вікна |
| o | Перейти до наступної панелі в поточному вікні |
| p | перейти до попереднього вікна |
| q | Тимчасово показати індекси панелей |
| r | Примусово оновити поточний клієнт |
| s | Інтерактивно обрати нову сесію для клієнта |
| L | Повернутись до попередньої підєднаної сесії |
| t | Показати час у поточній панелі |
| w | Інтерактивно обрати вікно |
| x | Знищити поточну панель |
| Поміняти місцями поточну панель з попередньою | |
| Поміняти місцями поточну панель з наступною | |
| ~ | Показати попередні повідомлення від tmux |
| Page Up | Увійти в режим копіювання і піднятись на один екран вверх |
| Клавіші «Вверх», «Вниз», «Вліво», «Вправо» | Переміщення між панелями |
| M-n | Переміститись до наступного вікна з сигналом або маркером активності |
| M-p | Переміститись до попереднього вікна з сигналом або маркером активності |
| M-o | Поміняти місцями панелі поточного вікна у зворотньому напрямку |
| C + «Вверх», «Вниз», «Вліво», «Вправо» | Змінити розмір поточної панелі з кроком розміром 1 клітинка |
| M + «Вверх», «Вниз», «Вліво», «Вправо» | Змінити розмір поточної панелі з кроком розміром 5 клітинок |
Всі комбінації клавіш можна змінити за допомогю команд bind-key і unbind-key. Щоб зробити зміни постійними, їх можна зберегти у конфігураційному файлі .tmux.conf у домашній директорії користувача.
Функціональність |
tmux володіє тим самим функціоналом що і GNU Screen, проте має багато додаткових можливостей, серед них можна виділити наступні:
- Використання клієнт-серверної архітектури, де кожен сервер використовує єдиний сокет і володіє багатьма сесіями, до яких можуть приєднуватись скільки завгодно клієнтів;
- Кращий командний інтерфейс, що дозволяє виконувати більшість команд tmux прямо з терміналу, це полегшує написання скриптів для tmux;
- tmux має багато буферів обміну;
- tmux може автоматично перейменовувати імена вікон відповідно до запущених у них програм;
- можливість використання клавіатурних схем vi та emacs;
- Можливість обмежити розмір вікна;
- Можливість пошуку по тексту у вікні;
- У tmux є поняття «вікно» і «панель», тоді як у GNU screen є тільки вікна. Кожне вікно може містити кілька панелей;
- Статусна лінія tmux легша для сприйняття і використання;
Вихідний коди tmux більше відповідає сучасним стандартам, відповідно полегшуючи розширення;- tmux обмежує розмір вікон розмірами терміналу.
Зноски |
↑ tmux/tmux
↑ tmux source code
Джерела |
Nicholas Marriott. Tmux manual. Процитовано 27 квітня 2014 року.
Офіційна сторінка tmux. Архів оригіналу за 9 січень 2012. Процитовано 27 квітня 2014 року.
Nicholas Marriott. tmux FAQ. Процитовано 27 квітня 2014 року.
Категорії:
- Програмне забезпечення за алфавітом
- Програмне забезпечення для Unix
(window.RLQ=window.RLQ||[]).push(function()mw.config.set("wgPageParseReport":"limitreport":"cputime":"0.404","walltime":"0.509","ppvisitednodes":"value":4019,"limit":1000000,"ppgeneratednodes":"value":0,"limit":1500000,"postexpandincludesize":"value":38839,"limit":2097152,"templateargumentsize":"value":12113,"limit":2097152,"expansiondepth":"value":25,"limit":40,"expensivefunctioncount":"value":12,"limit":500,"unstrip-depth":"value":0,"limit":20,"unstrip-size":"value":2278,"limit":5000000,"entityaccesscount":"value":15,"limit":400,"timingprofile":["100.00% 468.889 1 -total"," 92.27% 432.658 1 Шаблон:Infobox_software"," 79.52% 372.863 1 Шаблон:Картка"," 48.14% 225.700 15 Шаблон:Wikidata"," 44.43% 208.346 82 Шаблон:Картка/рядок"," 20.42% 95.752 11 Шаблон:If1"," 20.19% 94.672 2 Шаблон:InfoboxImage"," 5.74% 26.913 1 Шаблон:Release_date"," 5.54% 25.956 3 Шаблон:Cite_web"," 3.97% 18.624 1 Шаблон:Wikidata/p373"],"scribunto":"limitreport-timeusage":"value":"0.202","limit":"10.000","limitreport-memusage":"value":5782286,"limit":52428800,"limitreport-logs":"Loaded datatype commonsMedia of P154 from wikidata, consider passing datatype argument to formatProperty call or to Wikidata/confignLoaded datatype wikibase-item of P170 from wikidata, consider passing datatype argument to formatProperty call or to Wikidata/confignLoaded datatype wikibase-item of P112 from wikidata, consider passing datatype argument to formatProperty call or to Wikidata/confignLoaded datatype wikibase-item of P178 from wikidata, consider passing datatype argument to formatProperty call or to Wikidata/confignLoaded datatype wikibase-item of P178 from wikidata, consider passing datatype argument to formatProperty call or to Wikidata/confignLoaded datatype string of P348 from wikidata, consider passing datatype argument to formatProperty call or to Wikidata/confignLoaded datatype string of P348 from wikidata, consider passing datatype argument to formatProperty call or to Wikidata/confignLoaded datatype wikibase-item of P400 from wikidata, consider passing datatype argument to formatProperty call or to Wikidata/confignLoaded datatype wikibase-item of P306 from wikidata, consider passing datatype argument to formatProperty call or to Wikidata/confignLoaded datatype wikibase-item of P1414 from wikidata, consider passing datatype argument to formatProperty call or to Wikidata/confignLoaded datatype wikibase-item of P277 from wikidata, consider passing datatype argument to formatProperty call or to Wikidata/confignLoaded datatype wikibase-item of P275 from wikidata, consider passing datatype argument to formatProperty call or to Wikidata/confignLoaded datatype url of P2078 from wikidata, consider passing datatype argument to formatProperty call or to Wikidata/confign","cachereport":"origin":"mw1319","timestamp":"20190406232713","ttl":3600,"transientcontent":true););"@context":"https://schema.org","@type":"Article","name":"Tmux","url":"https://uk.wikipedia.org/wiki/Tmux","sameAs":"http://www.wikidata.org/entity/Q1935361","mainEntity":"http://www.wikidata.org/entity/Q1935361","author":"@type":"Organization","name":"u0423u0447u0430u0441u043du0438u043au0438 u043fu0440u043eu0435u043au0442u0456u0432 u0412u0456u043au0456u043cu0435u0434u0456u0430","publisher":"@type":"Organization","name":"u0424u043eu043du0434 u0412u0456u043au0456u043cu0435u0434u0456u0430","logo":"@type":"ImageObject","url":"https://www.wikimedia.org/static/images/wmf-hor-googpub.png","datePublished":"2014-04-27T13:00:10Z","dateModified":"2019-02-17T12:56:25Z","image":"https://upload.wikimedia.org/wikipedia/commons/a/af/Tmux-powerline.png"(window.RLQ=window.RLQ||[]).push(function()mw.config.set("wgBackendResponseTime":642,"wgHostname":"mw1319"););