W trybie python istnieje funkcja o nazwie py-execute-region, która wysyła podświetlony region kodu do bufora Pythona w celu oceny. Po zakończeniu oceny kursor znajduje się w buforze Pythona, ale wolałbym, aby pozostał w buforze skryptu, aby móc kontynuować tworzenie kolejnych kodów. Napisałem prostą funkcję doradczą:Defadvice Emacsa w trybie python-mode
(defadvice py-execute-region
(after py-execute-region-other-window activate)
""" After execution, return cursor to script buffer """
(other-window 1)
)
Ale to nic nie robi. Próbowałem innych wariantów, takich jak używanie "wokół", a nie "po"; ustawienie zmiennej na nazwę bufora skryptu, a następnie pop-to-buffer na ten bufor i podobne rzeczy. Bez powodzenia! Zastanawiam się, czy mechanika tego jest dla kogoś oczywista ... Dzięki!
Dzięki! ... ale nadal nie działa dla mnie. Jeśli zamieniam ciało defadrownika na (inne okno 1) (wstaw "x"), wstawi "x" w buforze skryptu, ale kursor nadal znajduje się w buforze Pythona ... bardzo mylące. – hatmatrix
Czy są dostępne inne porady dotyczące tej samej funkcji? W tym momencie chciałbym uruchomić zwykły emacs waniliowy (emacs -q), załadować tryb python, zdefiniować i aktywować twoją radę i sprawdzić, czy nadal nie działa. Może zachodzić dziwna interakcja. –