Obecnie mój przepływ pracy z Emacsem, gdy koduję w C lub C ++, obejmuje trzy okna. Największy po prawej zawiera plik, z którym pracuję. Lewa strona jest podzielona na dwie części, dolna to powłoka, której używam do wpisywania poleceń kompilacji lub tworzenia poleceń, a na górze często jest jakaś dokumentacja lub plik README, z którym chcę się zapoznać podczas pracy. Teraz wiem, że są tam dość doświadczeni użytkownicy Emacsa i jestem ciekawy, jakie inne funkcje Emacsa są przydatne, jeśli zamierzamy używać go jako kompletnego IDE. W szczególności większość IDE zwykle spełnia te funkcje w takiej czy innej formie:
- Edytor kodu źródłowego
- Kompilator
- Debugowanie
- Wyszukiwanie dokumentacji
- Kontrola wersji
- Funkcje obiektowe takie jak wyszukiwanie klas i inspektor obiektów
W przypadku kilku z nich jest całkiem oczywiste, jak Emacs może dopasować te funkcje, ale co z resztą? Ponadto, jeśli trzeba się skupić na konkretnym języku, powiedziałbym, że powinien to być C ++.
Edycja: Jeden użytkownik wskazał, że powinienem był być bardziej szczegółowy, kiedy powiedziałem „a co z resztą”. Przede wszystkim interesowała mnie skuteczna kontrola wersji, a także wyszukiwanie dokumentacji. Na przykład w SLIME dość łatwo jest wykonać szybkie wyszukiwanie hiperspeckie w funkcji Lisp. Czy istnieje szybki sposób na wyszukanie czegoś w dokumentacji C ++ STL (jeśli na przykład zapomniałem dokładnej składni hash_map )?