Emacs ala TextMate

poniedziałek, 04 cze 2007

Ostatnio udało mi się w sklepie Apple’a pobawić się odrobinę tym jakże modnym edytorem tekstu jakim jest TextMate. Trochę zdziwił mnie fakt, że ludzie w iSpot nie mieli pojęcia o jaki program mi chodzi, no ale widać nie interesują się w wolnym czasie programowaniem :P
Tak czy inaczej zwróciłem uwagę na to, że TextMate automatycznie zamyka nawiasy i cudzysłowy (nie on pierwszy i nie ostatni) a potem pozwala rozpocząć pisanie w nowej linijce po wciśnięciu Command-Enter (kursor przenosi się do nowo utworzonej linijki, ale nawiasy, cudzysłowy i wszystko co tylko było przed kursorem zostaje w starej linijce). Wydało mi się to całkiem wygodne i na szczęście udało mi się uzyskać takie zachowanie w emacsie. Oto krótki kod, który trzeba dodać do pliku .emacs

(defun newline-at-end-and-indent()
  (interactive)
  (end-of-line)
  (newline-and-indent))
(global-set-key “\C-j” ‘newline-at-end-and-indent)

W tym przypadku owa funkcja zostaje podpięta pod klawisz C-j, który domyślnie otwiera nową linijkę i od razu ją wcina (newline-and-indent).

Napisz odpowiedź