Настройка Tmux - использование, установка, плагины

Поделиться
HTML-код
  • Опубликовано: 21 ноя 2024

Комментарии • 89

  • @PurpleSchool
    @PurpleSchool  2 года назад +2

    💬 Telegram канал с полезными советами: t.me/purple_code_channel

  • @RomanZharov
    @RomanZharov 2 месяца назад +2

    Спасибо за видео! Если у кого то не заработало ctrl b sift I - нужно сначала нажать ctrl b, отпустить их, а только потом shift I

    • @PurpleSchool
      @PurpleSchool  2 месяца назад

      @@RomanZharov 👍

    • @ponycod
      @ponycod 13 дней назад +1

      Спасибо, я всю неделю мучаюсь, он еще на маке сидит и не понятно, ctrl для windows или именно маковский control😂

    • @RomanZharov
      @RomanZharov 13 дней назад

      @@ponycod в видео именно маковский ctrl - для виндовс не подскажу, тк сам на маке

  • @vpetevotov
    @vpetevotov 3 месяца назад +2

    Спасибо, Антон! Пользуюсь похожим сетапом уже годы, но никак руки не доходили пересмотреть конфиги и что-то улучшить)

    • @PurpleSchool
      @PurpleSchool  3 месяца назад

      @@vpetevotov пожалуйста!

  • @sergeideisling6958
    @sergeideisling6958 8 месяцев назад +2

    Очень круто и супер полезно, все настроил и радуюсь)))

  • @vladsamsonov9752
    @vladsamsonov9752 2 года назад +5

    Антон, спасибо большое, что делитесь своим опытом и качественным контентом!

  • @fitter2boss72
    @fitter2boss72 Год назад

    перешел на tmux с session много лет назад и даже н знал о плагинах )). Спасибо.

  • @СергейКурганов-о2э
    @СергейКурганов-о2э 2 года назад +1

    Ох ты, клёвая вещь, я даже не слышал о такой. Обязательно заюзаю.

  • @Max.Kozlov
    @Max.Kozlov 2 года назад +4

    Ух ты! Какой потрясный монтаж!

    • @PurpleSchool
      @PurpleSchool  2 года назад

      Спасибо, я старался)

  • @tomanderson5893
    @tomanderson5893 2 месяца назад

    А можно пожалуйста еще видео, как вы работаете с Astronvim, как переключаетесь между окнами, как настраивается и управляется автоподстановка, как пользоваться сниппетами, а то пока это очень сложно дается. Видел такие видео зарубежных авторов, но там мало, что понятно, был бы очень признателен вам. А за это видео огромное спасибо

  • @GoldoEb
    @GoldoEb 2 года назад +6

    У tmux есть раздражающая особенность, связанная с тем как окна в сессии наследуют переменные окружения.
    КОРОТКО
    Видимо, tmux-сервер не хранит переменные окружения для каждой сессии.
    Было бы удобно, если бы окна внутри сессии имели общие переменные окружения, которые наследуются от сервера и обновляются на стороне сервера с каждым новым подключением из новой терминальной сессии.
    Как, например, сделано в другом терминальном мультиплексоре - screen.
    ПОДРОБНО
    Tmux - это клиент-серверное приложение. Сервер tmux может быть долгоживущим. То есть он может быть запущен на удаленной постоянно включенной машине и хранить сессии, к которым пользователь может подключаться с клиентских машин.
    Проблема заключается в том, что новые окна в tmux наследуют переменные окружения от текущей терминальной сессии, из которой было совершено подключение к сессии tmux.
    А ранее открытые окна в tmux-сессии будут хранить переменные окружения той терминальной сессии, из которой они были открыты.
    Эта особенность "изоляции" окон друг от друга и от сервера в рамках одной tmux-сессии вызывает проблемы с изменяемыми при каждом подключении (или со временем) переменными среды.
    Например, переменная среды DISPLAY, которая отвечает за выбор инстанса X-server'a в Линукс, с помощью которого будут открываться графические приложения из консоли.
    При подключении к удаленной машине по ssh с опцией поддержки X.org, создаётся новый инстанс X-сервера, имя которого передаётся в эту переменную. Проблема в том, что старые окна tmux хранят имя сервера от предыдущего подключения, соответственно при попытке запустить графическое приложение в старых окнах получишь ошибку.
    В то же время, если создать новое окно в рамках старой сессии tmux, то оно получит новые переменные окружения и всё будет работать хорошо.
    Похожая ситуация с переменной KRB5CCNAME, которая хранит путь до тикета аутентификации Kerberos.
    В итоге для того, чтобы полноценно пользоваться открытии в предыдущей сессии окнами, нужно делать export переменных окружения от новой терминальной сессии в каждом окне сессии tmux.

    • @PurpleSchool
      @PurpleSchool  2 года назад +1

      Спасибо большое за такое подробное дополнение!

  • @splarv
    @splarv 2 месяца назад

    1. Зачем использовать screen-256color, если это другой мульиплексор? У tmux есть свой terminfo. tmux-256color.
    2. Tmux по умолчанию не использует ctrl-a, потому что это префикс исторический использовал первый мультиплексор screen. Чтобы не путаться и можно было бы делать вложенные мультиплексоры. Типа на своей машине запускаешь tmux, заходишь удалённо на другую машину, а там уже screen или наоборот. Удобнее ли а или b? С одной стороны правая рука обычно на мыше, одной левой удобнее использовать ctrl-a и потом нужную кнопку. С другой стороны, часто всё равно приходится руку с мышки убирать. А ctl-b находится ровно посрединне между правой и левой рукой, для её нажатия удобно использовать любую.
    3. На capslock удобно делать переключатель русского. Есть в линуксе, macos и в putty. Под виндами так настроить сложнее.

  • @ArtemJouravsky
    @ArtemJouravsky Год назад +1

    Префикс C-a любят кмк по привычке, это префикс для SCREEN. На самом деле, C-b прекрасен т.к. не конфликтует с С-a в консоли, где он удобен для перехода в начало строки (комбинация Emacs).
    Да, да, можно нажимать C-a a... Но два нажатия не одно нажатие.

  • @AleksandrMaltsev-jm8ph
    @AleksandrMaltsev-jm8ph Год назад +1

    Tmux бомба! Ждём астровим!

  • @antonshustikov7974
    @antonshustikov7974 3 месяца назад

    Супер контент! А как в терминале вы табом переключаетесь по папкам? Где такая настройка?

    • @PurpleSchool
      @PurpleSchool  3 месяца назад

      @@antonshustikov7974 tab - выбор из вариантов. У меня стоит плагин fzf

  • @forester063
    @forester063 2 года назад

    Tmuxp и можно сессии заменить на заранее написанный ямл конфиг, где описать свой флоу. Плюсом можно стартовые команды для каждого элемента прописать, к примеру окружение инициализировать. И много других плюшек имеется

    • @PurpleSchool
      @PurpleSchool  2 года назад

      Совершенно верно 👍

  • @adamk.kozlevitch6668
    @adamk.kozlevitch6668 10 месяцев назад +1

    а можно как-то экспортировать сессии и окна, ну и импортировать потом? переезжаешь на другое рабочее место к примеру? у меня штук 8 сессий с 4-6 окнами...

    • @PurpleSchool
      @PurpleSchool  10 месяцев назад

      Вроде модно перетащить ту папку, где он их хранит. Так же есть плагин, который позволяет в JSON описать все и он будет применяться при старте

  • @sergeymaksimov3441
    @sergeymaksimov3441 Год назад

    Спасибо большое за видео! Очень полезная инфа. Начал пользоваться tmux сразу после просмотрa!
    Подскажите, пожалуйста, по поводу быстрого переключения между окнами. Например у меня в одном окне nvim а в другом раннер тестов. И мне постоянно надо переключаться между ними.
    Быстрый способ судя по видео, это Ctrl + a + 1 и Ctrl + a + 2. Но какая-то это не очень удобная штука для пальцев. Ctrl (на месте Capslock) я жму мизинцем, "a" жму безымянным пальцем. А каким пальцем нажать на 1 и 2? Кисть неестественно выгибается :( Уж тогда проще прыгать через Ctrl + a + n, как по мне.
    Часто ли вам приходится переключаться между двумя окнами в таком режиме, и какое сочетание используете? И как у вас пальцы с этим справляются?

    • @PurpleSchool
      @PurpleSchool  Год назад +1

      Использую как раз их. Тебе не нужно нажимать все одновременно. Напиваешься ctrl + a, отпускаешь, возвращаешь руки в нормальное положение и нажимаешь цифру. Точно нажатия комбинации префикса, он ждёт следующей клавиши сколько угодно.

  • @yyanasolyah
    @yyanasolyah Год назад

    Привет! спасибо за видео!
    Такой вопрос, у вас были проблемы с копированием и вставкой, когда вы открывали nvim внутри tmux?
    получается у меня текст скопированный из вне, не вставляется в nvim внутри tmux, но когда просто открыт nvim без tmux, то всё отлично работает

    • @PurpleSchool
      @PurpleSchool  Год назад

      Привет! Проблем не было. Использовал как дефолтный, так и кодифицированный конфиг.

  • @AibekSadraliev
    @AibekSadraliev Год назад

    Привет!
    Антон, спасибо большое за уроки!
    Подскажите пожалуйста:
    Можно попросить курс по тестированию (unit) react приложений: redux, router, react-i118n, rtk query. В интернете нет толковых уроков по тому как тестировать, Можно сделать платной - готов приобрести.
    Спасибо!

    • @PurpleSchool
      @PurpleSchool  Год назад

      Привет, тестами на фронте не часто занимался, подумаю.

  • @limonred5283
    @limonred5283 Год назад

    супер

  • @Vjacheslav_Italianc
    @Vjacheslav_Italianc 10 месяцев назад

    @PurpleSchool | Anton Larichev или кто-нибудь, подскажите: на 3:50 ты говоришь нажать Ctrl-b + Шифт-i
    У меня на Ubuntu не начинается установка. Какой это набор для Ubuntu? Спасибо заранее🙏🤝🙏🤝

    • @PurpleSchool
      @PurpleSchool  10 месяцев назад

      Посмотри документацию tpm

    • @СергейВласов-ю8ш
      @СергейВласов-ю8ш 7 месяцев назад

      Внимательно проверьте куда склонирован репозитория с tpm. Путь указан в конфигурационном файле run '~/.tmux/plugins/tpm/tpm' . У меня была аналогичная проблема, я по невнимательности сделал git clone в home и долго не мог разобраться почему не работает.

  • @timnotfoolen1632
    @timnotfoolen1632 Год назад

    на каких клавишах у вас стоит переключения языка? не первый раз вижу что в tmux вешают c+a и в самой системе перенос ctrl -> caps. Вы об этом так же упоминали. так же есть практика ставить переключения языка на caps. Собственно в этом месте у меня возникает конфликт. Как вы переключаете язык?

    • @PurpleSchool
      @PurpleSchool  Год назад

      Стандартно cmd + space (точнее это было стандартом в старой MacOS).

  • @СергейТ-т8э
    @СергейТ-т8э 2 года назад +1

    Что за тема у nvim? Напишите пожалуйста.

  • @golden_smiles
    @golden_smiles Год назад

    привет подскажи пожалуйста как замапить капс на контрол, как ты упоминул при переназначении (макОС)?

    • @PurpleSchool
      @PurpleSchool  Год назад +1

      В настройках есть пункт - специальные клавиши.

  • @dicover1
    @dicover1 4 месяца назад

    как скачать на виндоус 10, я не понимаю

  • @nikitoshi4699
    @nikitoshi4699 2 года назад

    А есть у tmux возможность одновременно вводить команды в нескольких сплитах?

    • @PurpleSchool
      @PurpleSchool  2 года назад

      Не находил такой возможности, но и пока не понимаю применимости)

  • @КонстантинБойченко-ч3ч
    @КонстантинБойченко-ч3ч 5 месяцев назад

    Возникла проблема почему-то при подключении к сессиям tmux'а перестают работать комбинации клавиш Ctrl + l и Ctrl + c, в обычном эмуляторе всё ок, но внутри тимукса не работают, в чем может быть проблема? К примеру хочу нажатием Ctrl + l в командной строке вызвать команду clear, приходится в ручную писать

    • @PurpleSchool
      @PurpleSchool  5 месяцев назад

      Нужно сделать настройки, чтобы эти комбинации вызывали нужные команды в tmux.config

  • @GoldoEb
    @GoldoEb 2 года назад

    Есть ещё проект ohmytmux. Представляет собой готовые конфиги с удобными хоткеями и оформлением.

  • @vistar8
    @vistar8 4 месяца назад

    Что такое клавиша "префикс"?

    • @PurpleSchool
      @PurpleSchool  4 месяца назад

      @@vistar8 зависит от вашей настройки, какую клавишу настроите, та и будет префиксом

  • @vitalibirulia
    @vitalibirulia Год назад +1

    Отказался от Tmux, т.к он привносит небольшую задержку. Это хорошо ощущается, если монитор больше 100гц. Сейчас исп. терминальный клиент Kitty, он отлично задействует GPU, работает очень быстро и в нем есть сплиты (Layout). Считать это заменой tmux нельзя, но сплиты - это то, что я больше всего исп. в tmux

    • @sylabulus
      @sylabulus 9 месяцев назад

      Так tmux это консольное приложение, а kitty - сам терминал. Что мешает tmux в kitty запустить?

    • @vitalibirulia
      @vitalibirulia 9 месяцев назад

      @@sylabulus запустить можно, но работать это будет так себе. Особенно если запустить в такой сессии nvim. Перемещение по большим файлам с подсветкой будет заметно тормознутее.
      Опять же, это почувствуешь на мониторе, который выдает больше 60 гц. Я исп. tmux в основном для менеджмента окон. В kitty есть возможность создавать их тоже, не такая богатая как с исп tmux, но мне хватает.

  • @cyrilanisimov
    @cyrilanisimov 10 месяцев назад

    На линуксе тоже есть Brew

    • @PurpleSchool
      @PurpleSchool  10 месяцев назад

      Да, вышел, что удобно

  • @erxweo
    @erxweo 2 года назад

    Привет
    Столкнулся с такой проблемой, которой не было во vue, а именно если хочешь использовать отдельный файлик с миксинами то нужно держать все модульные файлы стилей вместе с этим файликом или вручную подключать в каждом файле с учетом вложенности, иначе "undefined mixin" во vue легко настроить чтобы он сам их подхватывал и подключал без @import. Может кто знает как сделать, чтобы и модульные стили лежали рядом с компонентом и можно было в них глобальные миксины подключить по какому-то абсолютному пути

  • @pavel_panchenko
    @pavel_panchenko 2 года назад

    Добрый день. Подскажите почему не срабатывает комбинация Ctrl b Shift I ?

    • @PurpleSchool
      @PurpleSchool  2 года назад

      А префикс не менял? Она может не работать если строка инициализации tpm находиться не в конце или её вообще нет. Посмотри доку.

    • @ggalliosha
      @ggalliosha 2 года назад

      Возможно ты пытаешься скомбинировать все 4 клавиши. Попробуй сначала Ctrl+b, затем Shift+i

    • @pavel_panchenko
      @pavel_panchenko 2 года назад

      @@PurpleSchool все другие команды срабатывают после префикса ctrl b. Конфиг добавил ваш. Но установка плагинов не срабатывает

    • @PurpleSchool
      @PurpleSchool  2 года назад

      Очень странно, у меня такое было, когда не установлен был tpm или не активирован

    • @ruslan_muntai
      @ruslan_muntai 2 года назад +1

      Если скопировал данный конфиг, то нужно жать уже не Ctrl+b а Ctrl+а

  • @YanYan-cn8zv
    @YanYan-cn8zv Год назад

    Подскажите пожалуйста, как выйти из tmux чтобы все вкладки и сессии сохранились? А то я прописываю в сессии и в одной из открытых вкладок exit и закрывается только вкладка (что логично), а мне надо выйти чтобы все вкладки и сессии остались.

  • @GLUCKKKKKKKKKK
    @GLUCKKKKKKKKKK Год назад

    Что за терминал вы используете?

  • @act0r399
    @act0r399 2 года назад

    слшуай, я вот пытаюсь поменять тему на другую, меняю, абсолютно ничего не происходит... как это можно исправить?
    устанавливал, делал всё что только знаю)

    • @PurpleSchool
      @PurpleSchool  2 года назад

      Вот тут инструкция: astronvim.github.io/Recipes/colorscheme

    • @act0r399
      @act0r399 Год назад

      @@PurpleSchool я нашел ответ, нужно просто вызвать у tmux команду kill-server и потом уже выбирать новую тему. Ну и тем более ты мне скинул тему по astrovim, а не tmux)))

  • @Кискисыч
    @Кискисыч Месяц назад +1

    Arch > macOS

  • @Anatoly8818
    @Anatoly8818 Год назад

    Каждый раз при запуске tmux создается новая сессия, а я хочу работать с уже созданными... как?)

    • @PurpleSchool
      @PurpleSchool  Год назад +1

      Если они запущены, то нужно tmux attach. Если хотите сохранить сессии меду перезапусками, указан плагин в видео.

  • @BumatuHe
    @BumatuHe 2 года назад +2

    Все эти инструмениы нкжны и удобны не для локальноц работы а для работы на сервере удаленно. Влогинился 1 раз а дальше пошел через tmux все делать

    • @PurpleSchool
      @PurpleSchool  2 года назад

      На сервере да, но на практике на сервер ты не так часто руками что-то должен конфигурировать. Всё что делаешь руками нужно сразу автоматизировать через ansible

    • @bjdsn
      @bjdsn 2 года назад

      Локально тоже удобно, например tmux + vim на каждую репу

    • @BumatuHe
      @BumatuHe 2 года назад

      @@PurpleSchool причем тут настраивать ;)))) я говорю про разработку прям на выделеном сервере разработки? Или вы думаете что всегда были писи для разработки. Было время когда все делалось только через терминалы;)))))

    • @PurpleSchool
      @PurpleSchool  2 года назад

      У меня был PC с черно-белым экраном, но все вычисления всё-равно было локально.

  • @monJamaica
    @monJamaica 2 года назад

    Навигировать?!

  • @ruslansmirnov9006
    @ruslansmirnov9006 Год назад

    window manager'ы и layout manager'ы - фсё? повыходили из чата? лет 5 назад пиарили так как будто усирались буквально; все эти compiz и openbox... все? теперь tmux? а что будет еще через 5 лет? очередная залупа в попытке создать видимость профессиональной отрасли "для своих"?
    все показанное аналогично практически делается испокон веков (со времен ДОСа) через двухпанельные файл менеджеры и сохранение сессий в npp
    сохранять сессии терминалов? не встречал такой потребности, зачем? там же введены пароли, история команд и т.д.
    для этого есть во первых .bat скрипты, во вторых специальные оболочки, такие как R script и R studio, либо специально настроенные редакторы типа Sublime с подключенными терминалами, и все сессии там тоже прекрасно будут сохраняться
    короче, левая туфта; ненужная, лочащая админов на свою инфраструктуру, слепленная воедино (например, vim - это фактически файл енеджер + терминал + редактор + линтер + grep в одной утилите; зачем?) (tmux - это по сути редактор + терминал + оконный менеджер; зачем?) чтобы привыкнуть с таким трудом и потом обнаружить через 5-8 лет что она deprecated?