Jaki jest Twój cel? Czy otwierasz kilka plików jednocześnie? Lub zarządzanie wieloma już otwartymi plikami?
viam0Zah
A może chcesz zobaczyć wiele plików jednocześnie? Ponieważ Emacs utrzymuje wszystkie te pliki „otwarte” (w pewnym sensie są ładowane, ale nie są „otwarte” w sensie „deskryptor pliku jest otwarty”).
Kiedy ładujesz plik do Emacsa za pomocą find-file ( Ctrl-xCtrl-fdomyślnie powiązany ), zostaje on umieszczony w „buforze”. Dopóki nie zabijesz bufora, pozostaje on w pamięci, nie musisz go ponownie ładować.
Dostęp do już załadowanych plików (buforów) można uzyskać za pomocą przełącznika na bufor (powiązany z Ctrl-xb). Naciśnij klawisze, a następnie wpisz nazwę bufora, na który chcesz się przełączyć (domyślnie jest to basename dla każdego załadowanego pliku).
Możesz także nacisnąć, Ctrl-xCtrl-baby uzyskać listę aktualnie istniejących buforów. I kliknij dowolny bufor tam za pomocą myszy, aby przejść do niego (IIRC, rzadko używaj myszy z Emacsem ;-))
Możesz także podzielić ekran na dwie (lub więcej) części, aby zobaczyć różne pliki (bufory) Ctrl-x2. Początkowo pokazuje to ten sam bufor dwukrotnie. Przełącz na inny bufor w jednym z okien, aby zobaczyć inny plik.
Cx 3 może być również użyty do podzielenia ekranu na dwa, Cx 0, aby pokazać tylko jeden bufor na raz.
Rémi
3
Cx bi Cx Cb są tym, czego chcesz. Rozważ też wypróbowanie iswitchb lub ido. Odkąd zacząłem używać tych, chciałbym, aby każdy używany program mógł przełączać tabulatory / okna / dokumenty tak szybko i wygodnie jak emacs. Często mam 50 plików lub więcej otwartych w emacsie, możesz szybko znaleźć ten, który chcesz za pomocą iswitchb lub ido.
Ponadto, jeśli używasz graficznej wersji emacsa, możesz zrobić ctrl-x 5 b, aby otworzyć istniejący bufor w nowym oknie (zwanym ramką w emacs-speak) lub ctrl-x 5 f, aby załadować nowy plik w nowym oknie.
cx 5b działa również w tty, ale przełączanie ramek jest denerwujące w trybie tty :)
Justin Smith
@Justin Thanks. Nigdy nie grałem z ramkami w tty. Czy jest korzyść z używania wielu buforów?
KeithB
Możesz używać ramek vs okien w taki sam sposób, w jaki używasz obszarów roboczych vs. okien w menedżerze okien systemu Linux - tj. do pracy na elisp kod ramka 1 ma dwa okna, jedno z plikiem informacyjnym dla elisp, drugie z ielm do interaktywnego wypróbowania kodu, ramka 2 ma tylko jedno okno z dowolnym edytowanym plikiem (dzięki czemu można uzyskać jak najwięcej widocznych wierszy jak to możliwe, nie jest podświetlony). Przy przyzwoitym kluczowaniu dla innej klatki może to być bardzo produktywne ustawienie, jeśli z jakiegoś powodu nie chcesz uruchamiać X.
Justin Smith
0
Możesz łatwo otwierać wiele plików jednocześnie (lub działać na nich w inny sposób).
Służy C-x ddo odwiedzania katalogu (folderu), który zawiera listę wszystkich jego plików i podkatalogów.
Zaznacz pliki, które chcesz otworzyć (lub działać w inny sposób). Możesz oznaczać pliki pojedynczo lub w grupach na podstawie różnych cech, w tym wzorców nazw plików. Zobacz menu paska menu Mark i Regexp - pokazuje niektóre dostępne możliwości znakowania, a także skróty klawiaturowe.
Na przykład:
% m zaznacza pliki, których nazwy pasują do wyrażenia regularnego.
% g oznacza pliki, których zawartość jest zgodna z wyrażeniem regularnym.
* * oznacza pliki wykonywalne.
Aby otworzyć wszystkie zaznaczone pliki na raz, musisz załadować standardową bibliotekę dired-x.el. Zrób M-x load-library dired-xlub włóż (require 'dired-x)plik inicjujący.
Następnie możesz użyć F( dired-do-find-marked-files), aby odwiedzić wszystkie zaznaczone pliki jednocześnie. Użyj, C-x C-baby zobaczyć listę otwartych buforów, gdzie możesz wybierać spośród tych buforów plików.
Odpowiedzi:
Kiedy ładujesz plik do Emacsa za pomocą find-file ( Ctrl-x Ctrl-fdomyślnie powiązany ), zostaje on umieszczony w „buforze”. Dopóki nie zabijesz bufora, pozostaje on w pamięci, nie musisz go ponownie ładować.
Dostęp do już załadowanych plików (buforów) można uzyskać za pomocą przełącznika na bufor (powiązany z Ctrl-x b). Naciśnij klawisze, a następnie wpisz nazwę bufora, na który chcesz się przełączyć (domyślnie jest to basename dla każdego załadowanego pliku).
Możesz także nacisnąć, Ctrl-x Ctrl-baby uzyskać listę aktualnie istniejących buforów. I kliknij dowolny bufor tam za pomocą myszy, aby przejść do niego (IIRC, rzadko używaj myszy z Emacsem ;-))
Możesz także podzielić ekran na dwie (lub więcej) części, aby zobaczyć różne pliki (bufory) Ctrl-x 2. Początkowo pokazuje to ten sam bufor dwukrotnie. Przełącz na inny bufor w jednym z okien, aby zobaczyć inny plik.
źródło
Cx bi Cx Cb są tym, czego chcesz. Rozważ też wypróbowanie iswitchb lub ido. Odkąd zacząłem używać tych, chciałbym, aby każdy używany program mógł przełączać tabulatory / okna / dokumenty tak szybko i wygodnie jak emacs. Często mam 50 plików lub więcej otwartych w emacsie, możesz szybko znaleźć ten, który chcesz za pomocą iswitchb lub ido.
źródło
Ponadto, jeśli używasz graficznej wersji emacsa, możesz zrobić ctrl-x 5 b, aby otworzyć istniejący bufor w nowym oknie (zwanym ramką w emacs-speak) lub ctrl-x 5 f, aby załadować nowy plik w nowym oknie.
źródło
Możesz łatwo otwierać wiele plików jednocześnie (lub działać na nich w inny sposób).
Służy
C-x d
do odwiedzania katalogu (folderu), który zawiera listę wszystkich jego plików i podkatalogów.Zaznacz pliki, które chcesz otworzyć (lub działać w inny sposób). Możesz oznaczać pliki pojedynczo lub w grupach na podstawie różnych cech, w tym wzorców nazw plików. Zobacz menu paska menu Mark i Regexp - pokazuje niektóre dostępne możliwości znakowania, a także skróty klawiaturowe.
Na przykład:
% m
zaznacza pliki, których nazwy pasują do wyrażenia regularnego.% g
oznacza pliki, których zawartość jest zgodna z wyrażeniem regularnym.* *
oznacza pliki wykonywalne.Aby otworzyć wszystkie zaznaczone pliki na raz, musisz załadować standardową bibliotekę
dired-x.el
. ZróbM-x load-library dired-x
lub włóż(require 'dired-x)
plik inicjujący.Następnie możesz użyć
F
(dired-do-find-marked-files
), aby odwiedzić wszystkie zaznaczone pliki jednocześnie. Użyj,C-x C-b
aby zobaczyć listę otwartych buforów, gdzie możesz wybierać spośród tych buforów plików.źródło