Emacs

Pytania i odpowiedzi dla osób używających, rozszerzających lub rozwijających Emacs

1
Reimplementacje Elisp
Emacs implementuje interpreter dla elisp w C, który służy jako de facto implementacja referencyjna. Czy są jakieś inne implementacje elisp w innych językach (szczególnie Javascript)? Jaki jest minimalny zestaw prymitywów niezbędnych do pełnego ponownego wdrożenia elisp? Jakie są w tym podstawowe trudności (np. Dynamiczne określanie zakresu)?
12 elisp 


4
Rozmyte zakończenie przy wstawianiu znaków Unicode
Właśnie odkryłem C-x 8 RETsposób wstawiania znaków Unicode według nazwy Unicode lub kodu szesnastkowego. Nie zapamiętałem (jeszcze?) Wszystkich nazw znaków Unicode, więc nie zawsze znajduję odpowiedni znak. Jest na przykład znak „GÓRA ŚNIEGOWA ŚNIEGIEM”. Jeśli wpiszesz „MOUNTAIN”, ta postać nie pojawi się na liście ukończeń. Muszę pamiętać, aby wyszukać „ŚNIEG”, …

3
Kill bufora po usunięciu ramki
Kiedy zamykam ramkę, chciałbym, aby bufor został zabity. Jeśli bufor jest wyświetlany w innych ramkach, bufor nie powinien zostać zabity. Nie rób nic, jeśli w ramce jest wyświetlany więcej niż jeden bufor. Jaki jest dobry sposób na skonfigurowanie tego?
12 buffers  frames 

2
Właściwe podejście do zapewniania programów zewnętrznych wraz z pakietami?
Utrzymuję wiele pakietów elisp (np. Wyszukiwanie kodu, emacs-ycmd, traad), które skorzystałyby na możliwości zainstalowania programów zewnętrznych, których używają, oszczędzając czas i wysiłek niektórych użytkowników. Na przykład, korzystając z codesearch.el, byłoby fajnie móc pobrać, skompilować i zainstalować narzędzia do wyszukiwania kodu (napisane w go, nie elisp) dla użytkowników. To usunąłoby co …

5
Ostatnio otwarte pliki w trybie ido
Używam ido-mode, ale jedną rzeczą, której nienawidzę, jest to, że po tym, jak C-x C-fnie mogę używać up/downklawiszy, aby przechodzić między ostatnio otwieranymi plikami, jak kiedyś iswitchb. Jak mogę ustawić, idoaby działało w ten sposób?
12 ido  find-file  cycling 

5
Jak zrozumieć ten kod rekurencyjny?
Znalazłem ten kod w podręczniku An Introduction to Programming in Emacs Lispdemonstrującym rekurencję za pomocą condfunkcji, aby dowiedzieć się o liczbie kamyków na podstawie wprowadzonej liczby wierszy, tj. Jeśli rzędy = 2, to kamyki powinny mieć 3, jeśli 4 rzędy, to powinno być 10 kamyków tam. (defun triangle-using-cond (number) (cond …
12 elisp  learning 

2
Jak obsługiwać makra klawiatury w następnym wierszu?
Utworzyłem makro klawiatury do łączenia linii w buforze za pomocą: F3 C-n M-x join-line RET F4. Działa dobrze, z wyjątkiem sytuacji, gdy linie stają się zbyt długie i zaczynają się owijać - co powoduje, że to makro zależy od szerokości ramki. next-linenie wydaje się przechodzić do następnej faktycznej linii, ale …

2
Jak wymusić otwarcie określonego bufora w nowym oknie?
Przy zatwierdzaniu zmian w Magit, przydatne jest, aby mieć otwarty widok różnicowy podczas dodawania szczegółów na temat zatwierdzenia. W Magit widzimy różnicę w *magit ..*buforze. Kiedy trafisz cc, gdy kursor znajduje się nad wystawił pliku, Magit popełnić bufor .. COMMIT_EDITMSGodskoczy. Domyślnie ten nowy bufor zastępuje *magit ..*bufor, który pokazywał różnice …
12 buffers  window  magit 


1
Uruchom aplikację w cwd na zdalnym hoście z poziomu eshell
Często używam Eshell do łączenia się ze zdalnymi systemami. Na tych zdalnych systemach czasami chcę uruchamiać skrypty w bieżącym katalogu roboczym. W zwykłym terminalu wpisałbym to: ./my-script.sh Niestety wewnątrz Eshella to nie zadziała: ~ $ cd /remote1:~ /ssh:remote1:/home/rekado $ ./my-script.sh env: /ssh:remote1:/home/rekado/my-script.sh: No such file or directory /ssh:remote1:/home/rekado $ Działa …
12 tramp  eshell 

3
Traktuj symbole jako słowa w trybach prog
W Emacsie istnieje wiele poleceń, które dotyczą „słów”. Przykłady obejmują forward-word, kill-word, upcase-word, mark-word, transpose-words, itd. Określenie „słowo” wydaje się różnią się nieco między poleceniami. Na przykład forward-wordzatrzyma się na podkreślenie w środku słowa (np. foo_bar), Ale mark-wordnie zatrzyma się na podkreślenie. Czy można zmienić definicję „słowa”, gdy jestem w …

2
Dla jakich języków odpowiedni jest `syntax-ppss`?
Patrzyłem na sposób wykrycia, czy punkt jest w komentarzu, patrząc na sposób fontowania bieżącego bufora. Smartparens definiuje sp-point-in-comment, na czym polega syntax-ppss. Wydaje się jednak, że syntax-ppssi parse-partial-sexpmożna go używać w dowolnych językach, nawet jeśli nie używają wyrażeń s. Na przykład ten Python: x = 1 # I'm a comment …

7
Jak ćwiczyć wyszukiwanie i zastępowanie wyrażeń regularnych interaktywnie w Emacsie?
Wyszukiwanie i zamiana za pomocą wyrażeń regularnych jest oczywiście potężnym narzędziem dla użytkownika Emacsa, który może rutynowo wykonywać te czynności. Jednak jako początkujący Emacs (i / lub programista) należy nauczyć się i ćwiczyć wyrażenia regularne. Czy mogę uczyć się i trenować wyrażenia regularne interaktywnie w Emacsie, podobnie jak wbudowany samouczek …

1
jak wykryć, czy w środowisku matematycznym LaTeX?
P: Czy istnieje sposób na wykrycie, czy punkt znajduje się w środowisku matematycznym LaTeX? Jak można by wykryć, czy chodzi o to, czy nie jest w środku matematyki środowisku LaTeX, czy wytyczone przez inline $...$lub wymienionych środowiskach ( equation, displaymathitp)?
12 latex  auctex 

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.