Aliasy i tmux


12

Aliasy zdefiniowane w .bash_aliasesi .bashrcnie działają w tmux.

Czy można to zmienić w niektórych konfiguracjach, aby działały aliasy tmux?


2
Czy na pewno masz problem tmux? Korzystam z tmuxa około roku i nie widziałem żadnych problemów z aliasami. Spróbuj dodać set -xna początku .bashrci uruchom tmuxpolecenie source ~/.bashrc. Być może znajdziesz jakieś błędy, a to rozwiąże twój problem.
pędzi

Odpowiedzi:


9

tmuxUruchamia shell logowania domyślnie, więc ~/.bashrcnie będzie wykonywany (które następnie kolejno źródła ~/.bash_aliases. Trzeba źródła ~/.bashrcz listy ~/.bash_profile. Patrz INVOCATIONsekcja man bash.


19

(Odpowiedź Chrisa Downa zawiera właściwe wyjaśnienie, ale nie dobre obejście)

Twój problem wynika z połączenia błędu projektowania basha i błędu projektowania tmux.

Domyślnie tmux uruchamia powłokę logowania w każdym oknie. To nie ma sensu: jeśli ustawiłeś tmux jako powłokę logowania, musisz ustawić default-commandopcję na coś innego niż tmux; a jeśli nie ustawiłeś tmux jako powłoki logowania, musisz ustawić default-commandopcję unikania uruchamiania powłoki logowania w tmuxie. Więc wypowiedz to w swoim, ~/.tmux.confaby powiedzieć Tmuxowi, aby uruchomił zwykłą powłokę:

set-option -g default-command $SHELL

Wtedy .bashrczostaniesz przeczytany. Jest jeszcze jeden problem z bash, który nie ma tutaj znaczenia, jeśli skonfigurujesz tmux zgodnie z zaleceniami powyżej, ale który pojawi się ponownie, jeśli zalogujesz się w trybie tekstowym (na konsoli tekstowej lub przez SSH). Bash czyta ~/.bash_profilew powłokach logowania i ~/.bashrcw interaktywnych powłokach, ale tylko wtedy, gdy nie są one powłokami logowania. Aby czytać ~/.bashrcrównież w powłokach logowania, jeśli są interaktywne, dodaj to do ~/.bash_profile:

case $- in *i*) . ~/.bashrc;; esac

+! Ostatnią część zajęło naprawienie moich aliasów i monitu PS1, ale tak się stało!
Michael Durrant
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.