Programowanie w R z wykorzystaniem emacsa

Widząc ogromną liczbę artykułów na blogach dotyczących RStudio, mam wrażenie, że dominuje ono w dziedzinie IDE dla R. Z tego co wiem, to konkurencji w środowiskach ,,do wyklikania” nie ma bardzo dużej. Sam zresztą uwielbiam z niego korzystać. Szybko i wygodnie można wykonać większość prac, z jakimi można się spotkać w analizie danych. Nie oznacza to, że nie da się pracować inaczej. Jedną z takich możliwości daje emacs.

  1. Emacs jest uniwersalny. Niezależnie od tego w jakim języku przyjdzie wam pracować, zawsze będziecie mogli z niego skorzystać

  2. Emacs to więcej niż edytor. W zwykłym IDE jesteście ograniczeni przez wyobraźnię (i czas, i pieniądze) programistów nad nim pracujących. Jest oczywiste, że nie spełni on wszystkich waszych oczekiwań. W emacsie bardzo wiele rzeczy można skonfigurować samemu. Ta różnica jest taka jak między super skomplikowaną zabawką a klockami Lego. Z mojego obecnego punktu widzenia, te możliwości konfiguracji, wydają się być wprost nieograniczone.

  3. Korzystając ze specjalnej biblioteki ess możecie tworzyć swoje własne zasady pracy z kodem w R: kolorowanie składni, komentowanie kodu, wyświetlanie długich linii itd. Podobnie jak w RStudio można wysyłać edytowane fragmenty kody do konsoli eRowej.

  4. Emacs jest używany przez wielu programistów i łatwo jest otrzymać wsparcie na forach internetowych.

Ok. Ale czy RStudio tego wszystkiego nie daje? Wydaje mi się, że oprócz punktu 2 - jest nieźle.

To teraz kilka moich doświadczeń z pracy, może będą bardziej przekonywające:

  1. Emacs przyda się jeśli musicie odpalić duże obliczenia na mocnym, zdalnym serwerze niewyposażonym w dostęp graficzny i nie posiadającym zewnętrznego IP (naprawdę tak się zdarza… )

  2. Warto pracować w programie konsolowym jeśli macie wiele różnych procesów R (np. symulacje, różne gałęzie w rozwoju oprogramowania) i nie chcecie sobie zaśmiecać komputera okienkami RStudio. Oprócz wyższego komfortu pracy na takim komputerze dochodzi jeszcze oszczędniejsze gospodarowanie RAM-em.

  3. W przypadku większych projektów bardzo wygodne jest przemieszczanie się pomiędzy wieloma plikami, edycja kodu jest szybsza

To tyle na ten post. Już wkrótce udostępnię i wytłumaczę zawartość mojego pliku konfiguracyjnego. Jest to ten element, który pokazuje emacsowe pazury i przemienia go w wygodne środowisko pracy.