Kokius redaktorius / IDE naudojat?

68 views
Skip to first unread message

Osvaldas Grigas

unread,
Jun 18, 2014, 11:12:23 AM6/18/14
to cloju...@googlegroups.com
Gal galit pasidalinti patirtimi, kas kokius IDE naudoja Clojure development'ui, kokie jų trūkumai, kaip konfigūruojat ir pan.
Aš pats kadangi pratęs prie IntelliJ, pradžiai įsidiegiau La Clojure Plugin + Leiningen Plugin.

La Clojure atliko savo darbą patenkinamai, bet turi ir nemažai trūkumų: nepilnai palaiko sintaksę (pvz, ne visus validžius simbolius leidžia naudoti varduose), nepalaiko :refer option'o importuojant namespace'ą per (:require), ne visada veikia navigacija tarp simbolių ir Find Usages. Tiems, kuries patinka Paredit režimas, taip pat teks nusivilti - La Clojure jo neturi.
Be to, kiek žinau, La Clojure daugiau nemaintain'inamas.

Tuo tarpu Cursive atrodo labai patraukliai net ir Early Access (EAP) stadijoj. Puiki integracija su REPL, puikus namespace'ų palaikymas (įskaitant tranzityvų pakeitimų atpažinimą ir reload'inimą), gera integracija su clojure.test, Leiningen projektų sinchronizacija. Palaiko ir Paredit režimą, kurį galima išsijungti. Trūkumas: reikia kas mėnesį instaliuoti naują EAP vesiją, o kai išeis galutinė, žada, kad bus mokama. Šiaip aš nieko prieš sumokėti kad ir kelis šimtus litų už gerą Clojure IDE.

Man La Clojure ir Cursive didžiausias privalumas yra integracija su JDK ir Java lib'ais, t.y. Java klasių ir metodų auto-completion, JavaDoc'ai ir pan.
Kaži koks yra JDK/Java integracijos palaikymas dirbant su Vim, Emacs, Light Table?
Man įdomus kitų žmonių patyrimas.

Osvaldas

Saulius Grigaliūnas

unread,
Jun 19, 2014, 2:48:08 PM6/19/14
to cloju...@googlegroups.com
Gadangi gyvenu konsolėje naudoju Emacs ;-) Nors apie penkis pastaruosius metus praleidau su Vim'u - Clojure paskatino pasidomėti Emacs ir supratau, kad mėgstu modalinį editinimą, o ne patį Vimą. Tai tą klausimą greit išsprendžiau su evil mode (http://www.emacswiki.org/emacs/Evil). O šiaip Emacs labai gerai tinka į kompaniją Clojure, kadangi konfigūruojamas taip pat Lispu (Emacs-Lisp) ir out of the box turi įvairių integracijų ar editinimo palengvinimų. Visas pagrindinis veiksmas (repl integracija, inline testavimas) vyksta naudojant CIDER, per nrepl protokolą, veiksmas atrodo maždaug taip. Iš esmės jo pilnai pakanka, bet norisi pabandyti kitus, įdomesnius Emacs package'us, pvz. lipsy, bet nėra kolkas tam laiko. Integracijos su javadoc pasidaręs neesu, bet neabejoju, jog tai įmanoma, nes su Emacs viskas įmanoma :)

Tomas Varneckas

unread,
Jun 22, 2014, 8:58:24 AM6/22/14
to cloju...@googlegroups.com
Kaip pagrindinį redaktorių naudoju VIM.
Esu įsidėjęs vim-fireplacevim-clojure-static ir rainbow_parentheses.vim.
Taip pat dabar bandau susigyventi su paredit.vim, bet dar nepripratau. :)

Galingiausias įrankis yra be abejo vim-fireplace. Tereikia einamajam projekte turėt pasileidus REPL su nREPL ir
vim-fireplace pats susiranda connection'ą ir tada VIM'e veikia REPL ir įvairūs testų leidimo, kodo evalinimo shortcut'ai.
Taip pat galima iškarto pasižiūrėti funkcijų dokumentaciją naudojant K normal mode'e.

rainbow_parentheses žymiai pagerina kodo skaitomumą, parenka kiekvienai grupuojančių operatorių (t.y. "()", "{}", "[]")
porai vis skirtingą spalvą.

Mano VIM konfiguracija prieinama čia: https://github.com/tomasv/dotvim

Tomas

Zilvinas Kybartas

unread,
Jun 23, 2014, 7:47:02 AM6/23/14
to cloju...@googlegroups.com
As irgi naudoju VIM'a. Tik s-expresionam naudoju šitą pluginą - https://github.com/guns/vim-sexp. Reikėjo kažkiek laiko kol pripratau, tačiau dabar jau nebeisvaizduoju kaip galima kitaip.
Reply all
Reply to author
Forward
0 new messages