W TeXStudio, naciskając ALT+ DELw takim makrze LaTeX, jak ten, \macroname{content}
gdy kursor stoi tuż przed pierwszym, {
spowoduje usunięcie wszystkiego oprócz jego content
(jak pokazano poniżej).
Umieść kursor (punkt) tuż przed pierwszym nawiasiem klamrowym:
Naciśnij ALT+, DELa otrzymasz:
Jak to osiągnąć w Emacsie?
Aktualizacja
Zgodnie z wyjaśnieniem T.Verrona występuje problem, C-c C-f C-d
ponieważ narzeka on na błąd niezrównoważonego nawiasu podczas wykonywania w niektórych makrach w LaTeX. Rozważ poniższy przykład:
zgłasza ten błąd:
up-list: Scan error: "Unbalanced parentheses", 8074, 1
. \ textenglish {} należy do pakietu polyglossia.
Jak pozbyć się tego zastrzeżenia?
TeX-font-list
). Na przykład spróbuj za pomocą\section
lub\footnote
, AUCTeX wie o tych makrach i drukuje je czcionkami, aleC-c C-f C-d
narzeka na niezrównoważone nawiasy.TeX-font-list
aby uwzględnić moje nowo wprowadzone makra, pozostaje to nieoptymalne obejście. W przeciwnym razie nie wiem, jakie przeszkody ma funkcja eLISP, aby sobie z tym poradzić!Odpowiedzi:
Wypróbuj tę funkcję:
Ograniczenie: nie działa z makrami dosłownie podobnymi. Ta funkcja wyrzuci błąd (
Wrong type argument: integer-or-marker-p, nil
), jeśli uniwersalny argument jest większy niż liczba makr otaczających punkt.Powiąż funkcję z ulubionym skrótem. Na przykład
związać to M-DEL.
Jeśli twój bufor ma (
!
jest punkt)wtedy C-2 M-DELci dam
źródło
(gr1(gr2(gr3(gr4))))
masz na myśli prefiks,C-u
to 2 da mi(gr1(gr2))
:? jeśli tak, to musi być genialne. Mam nadzieję, że miałeś czas to zrobić.M-DEL
jak w TexStudio. Dzięki.gr3
w twoim przypadku. Zobacz zaktualizowaną odpowiedź. Możesz wdrożyć to, co zasugerowałeś, owijającdotimes
wokółwhen
oryginalnej wersji odpowiedzi.Z ręcznego węzła AUCTeX na stronie Zmiana czcionki :
źródło
\emph{\randommacro{test}}
ponieważ usunie\emph
).Oto prosta funkcja usuwania zawierającego makro w punkcie:
Stąd
*
w punkcie:Biorąc pod uwagę powyższą funkcję, jest to jedno-liniowy program do usuwania wszystkich makr w punkcie:
Dlatego też ponownie
*
w punkcie:źródło