group-telegram.com/misha_writes_code/169
Last Update:
Мой рабочий сетап - vim + tmux, причем я очень сильно люблю tmux - все через него делаю. Поэтому у меня всегда на компе открыто штук 10-15 tmux сессий.
И меня все время раздражало, что во всех панелях (окнах) одна и та же общая история команд. Хочется, чтобы при переключении к другой сессии была и история команд той сессии. Иначе крайне трудно втянуться в какой-то процесс, который начал неделю назад, особенно если там нужно собирать сложный проект, в котором аргументов командной строки больше, чем школьников в столовке на 2 перемене.
Причем я только сегодня решил с этим что-то сделать, до этого просто молча злился и забивал.
Так вот, нашел как это починить: https://stackoverflow.com/questions/55816863/how-can-i-make-all-tmux-panes-have-their-own-unique-shell-history.
Можно добавить просто
if [[ $TMUX_PANE ]]; then
HISTFILE=$HOME/.bash_history_tmux_${TMUX_PANE:1}
fi
в .zshrc или .bashrc. И история каждой панели будет сохраняться в отдельный файлик. Лучше сразу в папку какую-то класть, чтобы home не засорять.
Самое крутое, что панели в tmux имеют сквозное индексирование и в разных сессиях панели разные (
CTRL+a
q
показывает локальные id). Поэтому автоматически получаешь разные истории команд для разных сессий, а не только для панелей.Думаю, что при перезагрузке компьютера сессии начнут нумероваться с нуля и к ним примапятся не те истории, но это ничего. Пока я очень доволен - качество жизни выросло в 1000 раз.
BY Миша пишет код
Warning: Undefined variable $i in /var/www/group-telegram/post.php on line 260
Share with your friend now:
group-telegram.com/misha_writes_code/169