chcę mieć podobnego narzędzia w Emacs jako następujące w vimNie można skutecznie wyszukiwać w Emacs
:g/search/
aby uzyskać listę meczów.
Jak uzyskać listę meczów w Emacs?
chcę mieć podobnego narzędzia w Emacs jako następujące w vimNie można skutecznie wyszukiwać w Emacs
:g/search/
aby uzyskać listę meczów.
Jak uzyskać listę meczów w Emacs?
M-x occur
?
Od the manual:
M-x occur
Prompt dla regexp, i wyświetli listę pokazując każdą linię w buforze zawierającym mecz dla niego. Dopasowany tekst jest podświetlany za pomocą twarzy
match
. Aby ograniczyć wyszukiwanie do części bufora, zawęź je do tej części (zobacz Zawężanie). Argument liczbowyn
określa, że linie kontekstun
mają być wyświetlane przed i za każdą pasującą linią. Domyślna liczba linii kontekstowych jest określona przez zmiennąlist-matching-lines-default-context-lines
.W buforze
*Occur*
można kliknąć każdą pozycję lub przenieść tam i wpisaćRET
, aby przejść do odpowiedniej pozycji w przeszukiwanym buforze.o
iC-o
wyświetlają dopasowanie w innym oknie;C-o
go nie wybiera. Alternatywnie możesz użyć poleceniaC-x `
(next-error
), aby odwiedzać wystąpienia jeden po drugim (patrz Tryb kompilacji).Wpisanie
e
w buforze*Occur*
powoduje przełączenie do trybu edycji zdarzeń, w którym zmiany wprowadzone w tych wpisach są również stosowane do tekstu w buforze wyjściowym. WpiszC-c C-c
, aby powrócić do trybu Wystąp.Komenda
M-x list-matching-lines
jest synonimem dlaM-x occur
.
Mój zwykły pracy jest, aby nie dostać listę i wybierz (nie wiem jak to zrobić), ale korzystanie z przyrostową wyszukiwania:
C-s <search target>
dostaje meczu pięść po punkcie. Jeśli ci się nie spodoba, następny C-s
dostaje następny. Kontynuuj, aż będziesz szczęśliwy (będziesz potrzebować dodatkowego C-s
, aby zawinąć się od bufora i). Wystarczająco nowy emacsen może również podświetlić wszystkie mecze, które są widoczne.
Jak zauważono w komentarzach Töröka Gábora, jest to typowy skrót klawiaturowy: isearch-forward
. Jeśli twoje powiązania są różne, musisz zmodyfikować zalecaną procedurę.
'isearch-forward' (tj.' Cs') pozwala ci również wpisać 'Co' po podanej wyszukiwanej frazie, a następnie uruchamia 'wystąpić' co zasugerował LB. W ten sposób możesz użyć swojej mocy naraz. –
Dzięki, Török. Jeszcze jedna rzecz, której nie wiedziałem o emacs. – dmckee
To nie wydaje się działać dla mnie - 'C-o' jest związany z' otwartą linią'. –
Oprócz M-x occurr
sprawdź także M-x grep. Działa to w kilku plikach naraz.
'rgrep' jest jeszcze lepszy, ponieważ umożliwia wyszukiwanie cykliczne. –
Dziękuję za odpowiedź! –
nie ma problemu ... Jestem facetem vi, który czasami musi używać emacsa ... – LB40