Chcę przejść na Emacsa z Vima i jedną rzeczą, która mnie powstrzymuje, jest to, że Emacs otwiera osobne okno, gdy działa pod X. Czy mogę uzyskać takie samo zachowanie dla Emacsa, jak wtedy, gdy nie działa pod X? Oznacza to, że chcę, aby Emacs rozpoczął sesję w tym samym terminalu, w którym został uruchomiony.
Daj mi znać, jeśli pytanie nie jest jasne. Z góry dziękuję!
Możesz preferować uruchamianie emacsa jako,
emacs --daemon
a następnie przy użyciuemacsclient -t
do edycji plików. Dzięki temu Emacs jest ładowany w tle, dzięki czemu możesz używać Emacsa bardziej jak vi. Sesje edycyjne rozpoczną się natychmiast, a „wyjście” przez Cx Cc po prostu zamknie bieżące połączenie. To jest bardzo miłe.źródło
Chociaż odpowiedź na twoje pytanie, zaryzykuję stwierdzenie, że nie jest to sposób, w jaki zwykły użytkownik używa emacsa. W przeciwieństwie do vima, emacs ma na ogół dłuższy czas uruchamiania i tak czy inaczej, cały czas działa z wieloma otwartymi buforami. Więc jeśli chcesz zrobić coś z emacsem w terminalu, wywołujesz
emacsclient -nw
(zakładając, że serwer emacsa został uruchomiony). Sprawdź, jak zacząć korzystać z EmacsClient, aby uzyskać szczegółowe informacje.źródło
Jeśli używasz bash, zawsze możesz dodać następujące elementy do swojego .bashrc
alias emacs = "emacs -nw"
To zaoszczędziło mi dużo pisania (i przekleństw, kiedy zapomniałem wpisać przełączniki).
źródło
Łącząc powyższe odpowiedzi Dicka Kenny'ego i Alberto Zaccagniego, otrzymujesz następującą konfigurację, której używam
.bashrc
:Spróbuje połączyć się z działającym demonem emacs. Jeśli żaden nie jest uruchomiony, uruchomi nowy, a następnie połączy się przy użyciu bieżącego okna terminala.
Z dokumentów:
źródło