Sivu 1/4

Paras editori koodaamiseen?

Lähetetty: 15.5.2012 klo 17.11
Kirjoittaja Thoth
Mitä editoria käytätte koodaamiseen?

Eclipse ei varsinaisesti ole editori, mutta sitä pitää töissä käyttää ainakin aina välillä. Se tuntuu vähän sekavalta hässäkältä.

Joitain OS X:n editoreja ovat esimerkiksi Smultron ja BBEdit, mutta niistä minulla ei ole niin kauheasti kokemusta. Olen käyttänyt monta vuotta TextMatea, joka on ollut hyvä, mutta siihen ei ole tullut päivityksiä. Lisäksi käytän Emacsia.

TextMate 2:ta on lupailtua vuosikausia, mutta eipä sitä ole näkynyt. No, viime syksynä tuli sitten jakoon TextMate 2. En ehtinyt testata sitä kovinkaan paljon ennen kuin törmäsin toiseen uuteen editoriin nimeltään Sublime Text 2.

Testailun jälkeen alkoi tuntua siltä, että Sublime Text 2 on TextMaten (ja ehkä tulevan TextMate 2:n) tappaja. Ohjelma on todella nopea, tiedostoihin voi hypätä näppärästä pikahaulla, jne. Lisäksi siitä on versio OS X:ään sekä Windowsiin. Tänään olen käyttänyt sitä neljän ikkunan gridillä kokoruudulla ja vaikuttaa kyllä todella pätevältä ohjelmalta.

Re: Paras editori koodaamiseen?

Lähetetty: 15.5.2012 klo 17.13
Kirjoittaja peku
Coda on ainakin webbikehityksessä näppärä.

Re: Paras editori koodaamiseen?

Lähetetty: 15.5.2012 klo 17.28
Kirjoittaja morbusg
Öh, anteeksi, mutta käytät emacs:ia ja kysyt mikä on paras editori koodaamiseen? Does not compute. Mitä tuohon voi vastata? Vi(m)? [:D]

Re: Paras editori koodaamiseen?

Lähetetty: 15.5.2012 klo 17.38
Kirjoittaja spiidi78
Jos käytät Vimiä, niin koodaa sitten pliis jossain muualla kuin muiden kanssa samassa huoneessa. Se v*tun jatkuva näppäimien rävellys ottaa v*tusti kaaliin ;) Ite käytän pelkkiä IDEjä, ihan vain sen takia, että niissä toimii about kaikki out-of-the-box kuhunkin koodausympäristöön. Eikä tarvitse tappaa luovuutta jatkuvalla konffauksella. Eli Eclipse, XCode ja Qt Creator täällä käytössä.

Täytys varmaan ottaa testiin toi Sublime Text 2.

edit: vaikuttaa muuten aika hyvältä. Täytyy ottaa tarkempaan syyniin. Tänx vinkistä!
edit2: Mjoo homma kaatunee siihen, että ainakin Qt vaatii omat kikkareensa, että sitä pystyy debuggaa järkevästi. IDEissä just noi on tehty suoraan toimiviksi oikein. Perus C ja C++ varmaan sopii hyvin tolle editorille.

Re: Paras editori koodaamiseen?

Lähetetty: 15.5.2012 klo 18.29
Kirjoittaja Aaaron
Sublime Text 2 ehdottomasti. Tai sitten se vim.

Re: Paras editori koodaamiseen?

Lähetetty: 15.5.2012 klo 18.51
Kirjoittaja Sleepperi
spiidi78 kirjoitti:Jos käytät Vimiä, niin koodaa sitten pliis jossain muualla kuin muiden kanssa samassa huoneessa. Se v*tun jatkuva näppäimien rävellys ottaa v*tusti kaaliin ;)
[:P]
Nyt en osaa oikein tulkita tuota, vaikka olen vimikäyttäjä (tai ehkä juuri siksi?). Vimhän on laiskan miehen työkalu, ei tarvitse painaa montaa näppäintä tehdäkseen sen minkä haluaa tehdä.
Ite käytän pelkkiä IDEjä, ihan vain sen takia, että niissä toimii about kaikki out-of-the-box kuhunkin koodausympäristöön. Eikä tarvitse tappaa luovuutta jatkuvalla konffauksella. Eli Eclipse, XCode ja Qt Creator täällä käytössä.
Ihan validi syy käyttää ympäristöä että se tarjotaan valmiina, mutta luovuuden kannalta optimaalista on pysyä vähissä ympäristöissä ja hallita ne syvästi. Silloinhan tietoinen kapasiteetti vapautuu luovaan työhön, kun työkalu on niin selkärangassa ettei sitä tarvitse ajatella. Tältä kannalta on erittäin valitettavaa, ettei ole muodostunut rikasta standardi-interfacea jolla saisi haluamansa editorin plugattua haluamansa IDEn sisään.

Jatkuva (tuottamaton) konffaus on työkaluriippumaton persoonallisuushäiriö. Oma kokemukseni on, että Vimiä ei ole tarvinnut isommin konffailla, mutta se vähä mitä on tarvinnut tehdä on ollut nopeaa ja helppoa. Toisaalta ihan yksinkertaisen ominaisuuden lisääminen monoliittiseen IDEen otti minulta monta tuntia.

Tähän hätään ei auta työkaluvalinnassa, mutta suosittelen tsekkaamaan Light Tablen esittelyvideon Kickstarterista.
http://www.kickstarter.com/projects/ibdknox/light-table

Re: Paras editori koodaamiseen?

Lähetetty: 16.5.2012 klo 9.40
Kirjoittaja jalski
Itse kirjoittelen koodia Windows alustalla Programmer's Notepad editorilla. Kääntäminen ja linkitys hoituu näppärästi komentoriviltä eikä varsinaisen debuggerin käyttöönkään töitä tehdessä yleensä tarvitse turvautua.

Re: Paras editori koodaamiseen?

Lähetetty: 16.5.2012 klo 10.29
Kirjoittaja spiidi78
Sleepperi kirjoitti:Ihan validi syy käyttää ympäristöä että se tarjotaan valmiina, mutta luovuuden kannalta optimaalista on pysyä vähissä ympäristöissä ja hallita ne syvästi. Silloinhan tietoinen kapasiteetti vapautuu luovaan työhön, kun työkalu on niin selkärangassa ettei sitä tarvitse ajatella. Tältä kannalta on erittäin valitettavaa, ettei ole muodostunut rikasta standardi-interfacea jolla saisi haluamansa editorin plugattua haluamansa IDEn sisään.
Se hyvä puoli noissa käyttämissäni IDEissä on, että ovat aika samanlaisia, joten niiden muistaminen ulkoa on aika helppoa. Esim Netbeans on sen verran erilainen, etten ole vaivautunut edes opettelemaan. Tai Visual Studio. Ottaisin kyllä editoriksi esim tuon Sublime Textin anytime noiden IDEjen omien tilalle.
Jatkuva (tuottamaton) konffaus on työkaluriippumaton persoonallisuushäiriö. Oma kokemukseni on, että Vimiä ei ole tarvinnut isommin konffailla, mutta se vähä mitä on tarvinnut tehdä on ollut nopeaa ja helppoa. Toisaalta ihan yksinkertaisen ominaisuuden lisääminen monoliittiseen IDEen otti minulta monta tuntia.
Tämähän riippuu ihan siitä mitä koodaa. Joudut konffaamaan vimiä aika paljon, jos koodaat esim Qt:ta, tai vaikka OS X / iOS. Noihin sopivissa IDEissä on code complete ja dokumentaatiot aina käsillä yhden näppäimen painalluksella + debuggeri, joka ymmärtää suoraan frameworkien omia monimutkaisia tietorakenteita. Joskus yritin Vimiin saada Qt completea, mutta siihen meni pari päivää ja lopputulos oli jotain muuta. Qt Creatorissa kaikki toimii 5 sekunnissa suoraan. Mutta kuten mainitsin aiemmin, niin esim joku standardi C ja C++ varmasti onnistuu Vimillä taas ihan toisella tavalla. En vain ymmärrä miksi Vimiä pitää hehkuttaa maailman parhaana kaikkeen. Olen itsekin sitä joutunut opettelemaan muinoin pakosta, tykkäsin, mutta kun parin kk jälkeen pääsin takaisin kunnon IDEn pariin, tein sillä asiat 5x nopeammin :) Kukin tavallaan, ja kaikki tietenkin riippuu edelleen siitä mitä tekee.. Pelkkä editori ei aina vain riitä.

Re: Paras editori koodaamiseen?

Lähetetty: 16.5.2012 klo 10.34
Kirjoittaja Hepo
UltraEdit on paras ja sen saa nykyään kaikille alustoille. En ole vielä hommannut sitä osx:lle, kun vähäisellä koodaamisella vielä pärjännyt Smultronilla. iOS appeja olen tehnyt myös xcoden editorilla, vaikka ei se mikään hirveän hyvä ole. Linuxissa taas käyttänyt Geanyä.

Re: Paras editori koodaamiseen?

Lähetetty: 16.5.2012 klo 13.49
Kirjoittaja Sleepperi
spiidi78 kirjoitti:Tämähän riippuu ihan siitä mitä koodaa. Joudut konffaamaan vimiä aika paljon, jos koodaat esim Qt:ta, tai vaikka OS X / iOS. Noihin sopivissa IDEissä on code complete ja dokumentaatiot aina käsillä yhden näppäimen painalluksella + debuggeri, joka ymmärtää suoraan frameworkien omia monimutkaisia tietorakenteita. Joskus yritin Vimiin saada Qt completea, mutta siihen meni pari päivää ja lopputulos oli jotain muuta. Qt Creatorissa kaikki toimii 5 sekunnissa suoraan.
Joo, tuo on varmaankin iso säätö. (Oletko muuten joskus yrittänyt lisätä noihin IDEihin jotain featurea? Voi meinaan olla vielä hitaampaa.) Editorilta ei voi odottaa, että se tukisi jokaista mahdollista kieltä/alustaa erikseen out-of-box. Mielestäni olisi fiksua että alustan omistajat tekisivät vähintään auttavat plugarit useammallekin editorille/IDElle. Ei voi olla iso jopi Qt:n kehittäjille tarjota complete esimerkiksi Vimiin, Emacsiin, ja jos kysyntää on, ehkä johonkin muuhun IDEen kuin Qt Creatoriin.
Mutta kuten mainitsin aiemmin, niin esim joku standardi C ja C++ varmasti onnistuu Vimillä taas ihan toisella tavalla. En vain ymmärrä miksi Vimiä pitää hehkuttaa maailman parhaana kaikkeen. Olen itsekin sitä joutunut opettelemaan muinoin pakosta, tykkäsin, mutta kun parin kk jälkeen pääsin takaisin kunnon IDEn pariin, tein sillä asiat 5x nopeammin :) Kukin tavallaan, ja kaikki tietenkin riippuu edelleen siitä mitä tekee.. Pelkkä editori ei aina vain riitä.
Ei editori tietysti yksinään vastaa editoria, debuggeria, profiloijaa, versionhallintaa, staattista analysaattoria, refaktoroijaa ja mitä kaikkea muuta jonkun kielen omassa IDEssä voikaan olla suoraan paketista. Mutta väittääkö joku edes niin, vai pystytätkö olkiukkoa?

Minä en hehkuta Vimiä (tai yleisemmin vi-sukuisia editoreita) siksi että ne olisivat täydellisiä. Päinvastoin, niissä on kovasti historian painolastia ja takakontti pysyy kiinni jesseteipillä. Ne vaan ovat siitä huolimatta niin tehokkaita, että tekstin editointi normaalissa editorissa tuntuu nyt kuin uisi tervassa. Oleellinen kysymys kuuluu, miksi julkistetaan upouusia editoreita (sikä IDEjen sisällä että muuten) jotka tuntuvat fundamentaalisesti heikommilta kuin 30 vuotta vanha? Mikseivät uudet editorit lainaa niitä ideoita jotka tekevät vi:stä vahvan, kun niillä ei ole mitään parempaa ideaa tilalle?

Re: Paras editori koodaamiseen?

Lähetetty: 16.5.2012 klo 14.02
Kirjoittaja spiidi78
Sleepperi kirjoitti:Mielestäni olisi fiksua että alustan omistajat tekisivät vähintään auttavat plugarit useammallekin editorille/IDElle. Ei voi olla iso jopi Qt:n kehittäjille tarjota complete esimerkiksi Vimiin, Emacsiin, ja jos kysyntää on, ehkä johonkin muuhun IDEen kuin Qt Creatoriin.
Kannatetaan :) Vimiäkin pystyy scriptaamaan aika hyvin, joten ei pitäisi olla kamalan isokaan homma.. Tosin esim Eclipsellekin löytyi ennen Qt Creatoria Qt-plugari, mutta se toimi vähän niin ja näin. Olisivat tehneet saman muillekin nörtti-editoreille.
Oleellinen kysymys kuuluu, miksi julkistetaan upouusia editoreita (sikä IDEjen sisällä että muuten) jotka tuntuvat fundamentaalisesti heikommilta kuin 30 vuotta vanha? Mikseivät uudet editorit lainaa niitä ideoita jotka tekevät vi:stä vahvan, kun niillä ei ole mitään parempaa ideaa tilalle?
Totta turiset. Kaipa se on se, että halutaan tehdä asiat omalla muka-paremmalla-tavalla. Hiirikään ei kuulu oleellisesti koodaukseen millään tavalla, joten ottaa kaaliin, että työkalut painottuvat noissa nykyään enemmän ja enemmän hiireen kuin näppikseen. Onneksi vielä tukevat sentään monipuolisesti näppäinkomentoja, ehkä niitä IDEjä koodaavat osaavat pitää siitä puolesta huolen. :)

Re: Paras editori koodaamiseen?

Lähetetty: 16.5.2012 klo 14.12
Kirjoittaja jjari
Mä en voi ymmärtää miten jotkut voivat ihan vakavissaan vielä 2012 puhua jonkun vi:n tai emacsin puolesta. Ei maanalainen paikka, nykyään on graafiset käyttöliittymät keksitty. Ja intuitiivisuus mitä se on?

Okei, mun kokemukset vi:stä ja emacista ovat erittäin rajoittuneet ja pelkästään konsolin kautta. Mutta molemmat ovet erittäin v*ttumaisia käyttää, paljon muistettavia näppäinkomentoja jne jne...

Eclipse, IntelliJ, UltraEdit, TextWrangler... muunmuassa niistä on kokemusta ja jokainen pesee noi dinosaurusten aikaiset tekeleet 60-0.

Niin no tietenkin jos harrastuksen vuoksi tunnin kuukaudessa koodailee niin sittenhän se on ihan se ja sama.

Re: Paras editori koodaamiseen?

Lähetetty: 16.5.2012 klo 14.27
Kirjoittaja jjari
spiidi78 kirjoitti:Hiirikään ei kuulu oleellisesti koodaukseen millään tavalla
Tämähän nyt on varsin huvittava väite :D Sama kuin sanoisi että "hiirikään ei kuulu oleellisesti tietokoneen käyttöön millään tavalla"...

Re: Paras editori koodaamiseen?

Lähetetty: 16.5.2012 klo 15.34
Kirjoittaja Sleepperi
jjari kirjoitti:Mä en voi ymmärtää miten jotkut voivat ihan vakavissaan vielä 2012 puhua jonkun vi:n tai emacsin puolesta. Ei maanalainen paikka, nykyään on graafiset käyttöliittymät keksitty. Ja intuitiivisuus mitä se on?

Okei, mun kokemukset vi:stä ja emacista ovat erittäin rajoittuneet ja pelkästään konsolin kautta. Mutta molemmat ovet erittäin v*ttumaisia käyttää, paljon muistettavia näppäinkomentoja jne jne...

Eclipse, IntelliJ, UltraEdit, TextWrangler... muunmuassa niistä on kokemusta ja jokainen pesee noi dinosaurusten aikaiset tekeleet 60-0.

Niin no tietenkin jos harrastuksen vuoksi tunnin kuukaudessa koodailee niin sittenhän se on ihan se ja sama.
Sinulla on logiikka täysin päälaellaan. Jos ammattilainen joka tekee jollain ajanjaksolla esimerkiksi 1000 tuntia duunia käyttää 10 tuntia jonkun työkalun omaksumiseen, sen työkalun ei tarvitse tehostaa työtä kuin kaksi prosenttia (!) ja silti homma kannatti selvästi. Vain lopullisella tehokkuudella on merkitystä, ei sillä, pitääkö ensin oppia ulkoa muutama komento. Amatöörin työkalu taas ei saa vaatia paljoa keskittymistä, koska amatööri ei ehdi saada siitä tarpeeksi hyötyä irti.

Esimerkkejä riittää editorien ulkopuolelta. gitin käyttöliittymä on vähintäänkin outo vrt. esimerkiksi Subversioniin, mutta kovat koodarit ovat ottaneet sen laumoittain käyttöön koska se on pidemmän päälle niin tehokas. Ohjelmointikielet, sama juttu; sunnuntaikoodari tekee sillä missä kynnys on matalin, ammattilainen katsoo kokonaisuutta ja opettelee tarvittaessa uutta.

Re: Paras editori koodaamiseen?

Lähetetty: 16.5.2012 klo 15.40
Kirjoittaja jjari
Sleepperi kirjoitti:Sinulla on logiikka täysin päälaellaan. Jos ammattilainen joka tekee jollain ajanjaksolla esimerkiksi 1000 tuntia duunia käyttää 10 tuntia jonkun työkalun omaksumiseen, sen työkalun ei tarvitse tehostaa työtä kuin kaksi prosenttia (!) ja silti homma kannatti selvästi. Vain lopullisella tehokkuudella on merkitystä, ei sillä, pitääkö ensin oppia ulkoa muutama komento. Amatöörin työkalu taas ei saa vaatia paljoa keskittymistä, koska amatööri ei ehdi saada siitä tarpeeksi hyötyä irti.
Vi ei tehosta kenenkään ammatikseen ohjelmoivan työtä. Päinvastoin. Itse olen tehnyt 12 vuotta töitä ohjelmistokehityksen parissa useissa eri firmoissa, sekä ropellihattufirmoissa että "savupiipputeollisuudessa", lukemattomien ohjelmistokehityksen ammattilaisten kanssa. Ikinä kukaan ei ole tehny vi:llä tai emacsilla duuniansa. Ainoastaan jotain satunnaisia shell-skriptejä tehnyt/muokannut solariksella. Nyt siis puhutaan koodaamisesta, sovelluskehityksestä, ei unixin ylläpidosta.

Nyt kannattaa ottaa huomioon se että ammattimaisessa koodaamisessa kyse ei ole pelkästään koodin kirjoittamisesta. Siihen kuuluu kiinteästi mm. debuggaus, koodintäydennys (vai miksi sitä sanotaan), riippuvuuksien hallinta jne jne...

Re: Paras editori koodaamiseen?

Lähetetty: 16.5.2012 klo 15.48
Kirjoittaja Sleepperi
jjari kirjoitti:
spiidi78 kirjoitti:Hiirikään ei kuulu oleellisesti koodaukseen millään tavalla
Tämähän nyt on varsin huvittava väite :D Sama kuin sanoisi että "hiirikään ei kuulu oleellisesti tietokoneen käyttöön millään tavalla"...
Hyvin vähän sillä tekee, jos on tehokkaat työkalut ja osaa käyttää niitä. Enkä tarkoita pelkästään Vimiä, vaan kunnollisia IDEjä myös. Oma IDE-kokemukseni on lähinnä Visual Studiosta, ja siinäkään ei paljoa klikkailla, jos tuntee näppisoikotiet ja on ehkä vielä asentanut jonkun fiksun pluginin. Debugatessa hiirellä tekee enemmän, mutta siinäkin sen erinomaisuus perustuu enimmäkseen VS:n näppistuen huonouteen.

Todellinen dinosaurus on sellainen, joka on vuosikymmenen käyttänyt jotain työkalua, muttei missään vaiheessa ole opetellut hyödyllisiä oikoteitä, automatisoinut pois toistuvia töitä, tai asentanut hyödyllisiä plugareita vaan klikkailee edelleen hitaasti ja tuskallisesti ympäriinsä. Välillä ehkä naputtelee vähän kaksisormijärjestelmällä.

Re: Paras editori koodaamiseen?

Lähetetty: 16.5.2012 klo 17.23
Kirjoittaja Sleepperi
jjari kirjoitti:Vi ei tehosta kenenkään ammatikseen ohjelmoivan työtä. Päinvastoin. Itse olen tehnyt 12 vuotta töitä ohjelmistokehityksen parissa useissa eri firmoissa, sekä ropellihattufirmoissa että "savupiipputeollisuudessa", lukemattomien ohjelmistokehityksen ammattilaisten kanssa. Ikinä kukaan ei ole tehny vi:llä tai emacsilla duuniansa. Ainoastaan jotain satunnaisia shell-skriptejä tehnyt/muokannut solariksella. Nyt siis puhutaan koodaamisesta, sovelluskehityksestä, ei unixin ylläpidosta.

Nyt kannattaa ottaa huomioon se että ammattimaisessa koodaamisessa kyse ei ole pelkästään koodin kirjoittamisesta. Siihen kuuluu kiinteästi mm. debuggaus, koodintäydennys (vai miksi sitä sanotaan), riippuvuuksien hallinta jne jne...
Aiemmassa vastauksessani spiidi78:lle oli huomattavasti kattavampi lista. [:P]

Se, että käyttää vaikkapa Emacsia koodin editointiin, ei tarkoita ettei voisi tehdä noita asioita. Osan niistä saa integroitua Emacsiin, osan voi mainiosti tehdä jossain muussa työkalussa. Se työkalu saattaa olla myös jokin IDE. Mitä isompi, vaativampi ja eksoottisempi projekti (myös sovelluskehitys...), sitä todennäköisempää ettei IDEn oma toiminnallisuus ole optimaalista ja joka tapauksessa tarvitaan erillisiä härpäkkeitä (jotka saattavat integroitua IDEen löyhästi tai ei ollenkaan).

Heittäisin lonkalta, että top-10 kovimmista ammattilaisista joihin olen henkilökohtaisesti törmännyt, paria lukuunottamatta kaikki hallitsevat Emacsin tai Vimin vähintään kohtuullisesti, enemmistö hyödyntää jompaakumpaa ja jotkut hyvinkin paljon. Tietenkin yhtenä työkaluna muiden joukossa eikä yksisilmäisesti. Tähän joukkoon mahtuu pääarkkitehti, pääkehittäjä, pari koodaavaa tohtoria, ohjelmistotekniikan tutkija, "rivikoodari" jolle Googlella on avoin ovi jne. Kaikki eri firmoista/laitoksilta eli ei mikään nurkkakuntailmiö. Keskinkertaisten koodarien kesken Vim/Emacs -käyttö on paljon harvinaisempaa.

Re: Paras editori koodaamiseen?

Lähetetty: 16.5.2012 klo 18.22
Kirjoittaja Thoth
jjari kirjoitti:Mä en voi ymmärtää miten jotkut voivat ihan vakavissaan vielä 2012 puhua jonkun vi:n tai emacsin puolesta. Ei maanalainen paikka, nykyään on graafiset käyttöliittymät keksitty. Ja intuitiivisuus mitä se on?

Okei, mun kokemukset vi:stä ja emacista ovat erittäin rajoittuneet ja pelkästään konsolin kautta. Mutta molemmat ovet erittäin v*ttumaisia käyttää, paljon muistettavia näppäinkomentoja jne jne...

Eclipse, IntelliJ, UltraEdit, TextWrangler... muunmuassa niistä on kokemusta ja jokainen pesee noi dinosaurusten aikaiset tekeleet 60-0.

Niin no tietenkin jos harrastuksen vuoksi tunnin kuukaudessa koodailee niin sittenhän se on ihan se ja sama.
No, minä käytän töissä jatkuvasti Emacsia Windows-työasemallani ja palvelimilla joskus vi:tä, jonka perusteet osaan. Minulla on tyypillisesti auki Eclipse ja sen lisäksi käynnistän Emacsin aina tarvittaessa. Jos minun täytyy tehdä muutos johonkin Eclipse-projektin ulkopuoliseen tiedostoon, niin yleensä avaan sen komentorivikehotteessa ja teen muutokseni. Tämä on usein paljon kätevämpää kuin alkaa importata Eclipseen uusia kansioita, jne. Samoin joskus myös muokkaan Eclipsessä olevia tiedostoja Emacsilla ja Eclipsestä lähinnä käynnistän deployn palvelimelle, tms.

Jatkossa varmaankin Sublime Text 2 korvaa Emacsia tuossa käytössä. Sublime Text 2:ssa voi esimerkiksi laittaa grid-näkymään neljä eri koodi-ikkunaa. Tämä voi mahdollistaa paljon tehokkaamman editoinnin kuin yksi Eclipsen pikkuinen koodi-ikkuna.

Tulen kyllä jatkossakin käyttämään rinnalla vielä Emacsia. Sublime Text 2 on ehkä parempi projektityyliseen työskentelyyn, esimerkiksi tiedostot avautuvat usein samaan ikkunaan kun taas Emacs avaa aina uuden ikkunan. Molemmissa tavoissa on puolensa, mutta jos pitää nopeasti tehdä muutoksia "johonkin", niin Emacsin saa nopeasti auki ja suljettua.

Minulle Emacs kyllä pieksee helposti nuo TextWrangerit ja UltraEditit. Myös toinen työkaverini käyttää Emacsia Eclipsen rinnalla. Monet ovat oppineet Emacsin (tai vi:n) näppäinkomennot selkärankaansa esimerkiksi yliopistossa tai TKK:lla. Sen jälkeen kun komennot on oppinut tarpeeksi hyvin, niin niiden käyttö voi olla aika tehokasta. Ihan esimerkkinä, jos avaan kooditiedosto Emacsissa ja muutosta varten minun pitää katsoa myös toista kohtaa samassa tiedostossa, niin splittaan ruudun nopeasti näppäimistöllä (ctrl-x+2) ja etsin sen toisen kohdan splitatussa ruudussa. Voin tehdä muutokseni käyttäen apunani molemmissa ruuduissa näkyvää infoa. Eclipsessä pitäisi varmaan laittaa joku kirjanmerkki nykyiseen kohtaan, selata uusi kohta, painaa mieleen siinä lukeva asia ja palata vanhaan kohtaan, tms. Lisäksi monet nykyiset editorit eivät tue edes inkrementaalista hakua! Emacsissa voi myös vaihtaa nopeasti johonkin aikaisempaan bufferiin painamalla "ctrl-x + b", kirjoittamalla vähän alkua tiedoston nimestä ja painamalla tabia. Tiedostoja läpikäydessä voi avata hakemiston yhteen bufferiin, splitata ruudun ja "kävellä" tiedostot läpi yksi kerrallaan. Jne, jne.

Tietysti jos on uudemman sukupolven koodaaja, niin ei välttämättä kannata opetella hyvin Emacsia tai vi:tä, joskin siitä voi olla hyötyä. Edes perusteet vi:stä kannattaa osata, jos vaikka joutuu seikkailemaan Unix-palvelimilla.

Re: Paras editori koodaamiseen?

Lähetetty: 16.5.2012 klo 20.41
Kirjoittaja jalski
Thoth kirjoitti: Minulle Emacs kyllä pieksee helposti nuo TextWrangerit ja UltraEditit. Myös toinen työkaverini käyttää Emacsia Eclipsen rinnalla. Monet ovat oppineet Emacsin (tai vi:n) näppäinkomennot selkärankaansa esimerkiksi yliopistossa tai TKK:lla. Sen jälkeen kun komennot on oppinut tarpeeksi hyvin, niin niiden käyttö voi olla aika tehokasta. Ihan esimerkkinä, jos avaan kooditiedosto Emacsissa ja muutosta varten minun pitää katsoa myös toista kohtaa samassa tiedostossa, niin splittaan ruudun nopeasti näppäimistöllä (ctrl-x+2) ja etsin sen toisen kohdan splitatussa ruudussa. Voin tehdä muutokseni käyttäen apunani molemmissa ruuduissa näkyvää infoa. Eclipsessä pitäisi varmaan laittaa joku kirjanmerkki nykyiseen kohtaan, selata uusi kohta, painaa mieleen siinä lukeva asia ja palata vanhaan kohtaan, tms. Lisäksi monet nykyiset editorit eivät tue edes inkrementaalista hakua! Emacsissa voi myös vaihtaa nopeasti johonkin aikaisempaan bufferiin painamalla "ctrl-x + b", kirjoittamalla vähän alkua tiedoston nimestä ja painamalla tabia. Tiedostoja läpikäydessä voi avata hakemiston yhteen bufferiin, splitata ruudun ja "kävellä" tiedostot läpi yksi kerrallaan. Jne, jne.
Ei tuo näppäimistöpohjaisuus ja runsas näppäinkomentojen käyttö ole ainoa oikea tie nopeaan työskentelyyn. Infernon kanssa touhutessa on tullut käytettyä Acme nimistä ohjelmaa editorina. Asioita pystyy kyllä tekemään hiiren avulla ilman kauheata valikkojen selaustakin. Esimerkiksi tuo yllä mainitsemasi tekstin splittaaminen kahteen ikkunaan onnistuu yhdellä hiiren napin painalluksella, kuten onnistuu myös tekstin hakukin. Ohjelmassa ikkunoiden tageihin voi vapaasti kirjoitella lisäkomentoja, kuten esimerkiksi shell komennon hakemiston tiedostojen listaamiseen. Hiiren napin painalluksella tuon komennon voi suorittaa ja lista tulostuu uuteen ikkunaan, josta edelleen yhdellä napin painalluksella voi tarvittaessa avata jonkun tiedoston editointia varten. Jos vaikka haluan hypätä riville 1000 tiedostossa, niin kirjoitan ikkunan tagiin :1000 ja painan hiiren oikeata nappia tuossa kohtaa... jne, jne...

Re: Paras editori koodaamiseen?

Lähetetty: 16.5.2012 klo 22.46
Kirjoittaja Sleepperi
jalski kirjoitti:Ei tuo näppäimistöpohjaisuus ja runsas näppäinkomentojen käyttö ole ainoa oikea tie nopeaan työskentelyyn. Infernon kanssa touhutessa on tullut käytettyä Acme nimistä ohjelmaa editorina. Asioita pystyy kyllä tekemään hiiren avulla ilman kauheata valikkojen selaustakin. Esimerkiksi tuo yllä mainitsemasi tekstin splittaaminen kahteen ikkunaan onnistuu yhdellä hiiren napin painalluksella, kuten onnistuu myös tekstin hakukin. Ohjelmassa ikkunoiden tageihin voi vapaasti kirjoitella lisäkomentoja, kuten esimerkiksi shell komennon hakemiston tiedostojen listaamiseen. Hiiren napin painalluksella tuon komennon voi suorittaa ja lista tulostuu uuteen ikkunaan, josta edelleen yhdellä napin painalluksella voi tarvittaessa avata jonkun tiedoston editointia varten. Jos vaikka haluan hypätä riville 1000 tiedostossa, niin kirjoitan ikkunan tagiin :1000 ja painan hiiren oikeata nappia tuossa kohtaa... jne, jne...
Jännän näköinen tuo Acme. En varmaan ymmärtänyt oikein, koska minusta kuulosti kovin hankalalta... riville 1000 pääsyä varten tartutaan hiireen, osoitetaan suhteellisen pieneen tagialueeseen, klikataan vasemmalla, siirrytään näppikselle, kirjoitetaan :1000 (pitääkö painaa enteriä tms.?), siirrytään hiireen, osoitetaan tagialueeseen, klikataan oikealla?

Vimissä riville 1000 pääsee kirjoittamalla 1000G. Ikkunan splittaus on ctrl-W s.
Hiiritoiminnoilla ei oikeasti ole mitään jakoa edes tällaisissa irrallisissa toiminnoissa (homma on tehty ennen kuin käsi edes ehtisi hiirelle), mutta Vimin todellinen vahvuus tulee esiin vasta liikkumis-, tekstiobjekti- ja editointikomentojen yhdistelyssä. Esimerkiksi tekstin tuhoaminen kursorista virkkeen loppuun asti olisi df. eli d kertoo että kyseessä on tuhoaminen, f käynnistää merkkihaun ja piste on se merkki mitä haetaan. Toinen esimerkki: kursorin ollessa jonkun HTML-tagin sisällä (vaikkapa <img src="jotain">), ya> kopioi sen koko tagin. y on kopiointi, a tarkoittaa tekstiobjektia kokonaisuudessaan, ja > kertoo Vimille että nyt halutaan käsitellä kursorin ympäristöstä sitä tekstiobjektia jota rajaavat kulmasulut.

Re: Paras editori koodaamiseen?

Lähetetty: 17.5.2012 klo 0.59
Kirjoittaja Thoth
jalski kirjoitti:
Thoth kirjoitti: Minulle Emacs kyllä pieksee helposti nuo TextWrangerit ja UltraEditit. Myös toinen työkaverini käyttää Emacsia Eclipsen rinnalla. Monet ovat oppineet Emacsin (tai vi:n) näppäinkomennot selkärankaansa esimerkiksi yliopistossa tai TKK:lla. Sen jälkeen kun komennot on oppinut tarpeeksi hyvin, niin niiden käyttö voi olla aika tehokasta. Ihan esimerkkinä, jos avaan kooditiedosto Emacsissa ja muutosta varten minun pitää katsoa myös toista kohtaa samassa tiedostossa, niin splittaan ruudun nopeasti näppäimistöllä (ctrl-x+2) ja etsin sen toisen kohdan splitatussa ruudussa. Voin tehdä muutokseni käyttäen apunani molemmissa ruuduissa näkyvää infoa. Eclipsessä pitäisi varmaan laittaa joku kirjanmerkki nykyiseen kohtaan, selata uusi kohta, painaa mieleen siinä lukeva asia ja palata vanhaan kohtaan, tms. Lisäksi monet nykyiset editorit eivät tue edes inkrementaalista hakua! Emacsissa voi myös vaihtaa nopeasti johonkin aikaisempaan bufferiin painamalla "ctrl-x + b", kirjoittamalla vähän alkua tiedoston nimestä ja painamalla tabia. Tiedostoja läpikäydessä voi avata hakemiston yhteen bufferiin, splitata ruudun ja "kävellä" tiedostot läpi yksi kerrallaan. Jne, jne.
Ei tuo näppäimistöpohjaisuus ja runsas näppäinkomentojen käyttö ole ainoa oikea tie nopeaan työskentelyyn. Infernon kanssa touhutessa on tullut käytettyä Acme nimistä ohjelmaa editorina. Asioita pystyy kyllä tekemään hiiren avulla ilman kauheata valikkojen selaustakin. Esimerkiksi tuo yllä mainitsemasi tekstin splittaaminen kahteen ikkunaan onnistuu yhdellä hiiren napin painalluksella, kuten onnistuu myös tekstin hakukin. Ohjelmassa ikkunoiden tageihin voi vapaasti kirjoitella lisäkomentoja, kuten esimerkiksi shell komennon hakemiston tiedostojen listaamiseen. Hiiren napin painalluksella tuon komennon voi suorittaa ja lista tulostuu uuteen ikkunaan, josta edelleen yhdellä napin painalluksella voi tarvittaessa avata jonkun tiedoston editointia varten. Jos vaikka haluan hypätä riville 1000 tiedostossa, niin kirjoitan ikkunan tagiin :1000 ja painan hiiren oikeata nappia tuossa kohtaa... jne, jne...
En ole tutustunut Acmeen, se voi olla ihan toimiva. En ole väittänytkään, että muuten kuin näppäimistöllä ei voisi tehdä asioita kätevästi. Väitin vain, että monessa ns. valtavirran suosikissa tuollaiset asiat ovat hitaita tai hankalia.

Re: Paras editori koodaamiseen?

Lähetetty: 17.5.2012 klo 1.11
Kirjoittaja Thoth
Saisikin tällaista mahtavuutta Eclipseen. Jos esimerkiksi tahdon avata minkä tahansa tiedoston projektin hakemistojen rakenteesta, niin painan vain cmd+p ja kirjoitan osan tiedoston nimestä, jolloin Sublime Text 2 näyttää kaikki sopivat tiedostot. Eclipsellä pitää aina avata pitkä polku Java-polkuja ja etsiä sieltä sitä oikeaa tiedostoa. Jos kirjoitan alkuun @, niin voin hypätä samalla logiikalla metodeihin, jne.

Re: Paras editori koodaamiseen?

Lähetetty: 17.5.2012 klo 1.45
Kirjoittaja jalski
Sleepperi kirjoitti:Jännän näköinen tuo Acme. En varmaan ymmärtänyt oikein, koska minusta kuulosti kovin hankalalta... riville 1000 pääsyä varten tartutaan hiireen, osoitetaan suhteellisen pieneen tagialueeseen, klikataan vasemmalla, siirrytään näppikselle, kirjoitetaan :1000 (pitääkö painaa enteriä tms.?), siirrytään hiireen, osoitetaan tagialueeseen, klikataan oikealla?
Ei tarvitse painaa enteria. Käyttöliittymässä hiiren 1-nappi yleensä valitsee, 2-nappi suorittaa ja 3-nappi hakee.
Sleepperi kirjoitti: Hiiritoiminnoilla ei oikeasti ole mitään jakoa edes tällaisissa irrallisissa toiminnoissa (homma on tehty ennen kuin käsi edes ehtisi hiirelle), mutta Vimin todellinen vahvuus tulee esiin vasta liikkumis-, tekstiobjekti- ja editointikomentojen yhdistelyssä. Esimerkiksi tekstin tuhoaminen kursorista virkkeen loppuun asti olisi df. eli d kertoo että kyseessä on tuhoaminen, f käynnistää merkkihaun ja piste on se merkki mitä haetaan.
Acmella tuo kävisi kirjoittamalla ikkunan tagiin regexp haku: :/(.*?)[.?!]/ , maalaamalla kyseinen komento hiiren vasemmalla napilla ja sitten suorittamalla haku hiiren oikealla napilla. Tämän jälkeen backspace-näppäin poistaa valitun alueen.
Sleepperi kirjoitti: Toinen esimerkki: kursorin ollessa jonkun HTML-tagin sisällä (vaikkapa <img src="jotain">), ya> kopioi sen koko tagin. y on kopiointi, a tarkoittaa tekstiobjektia kokonaisuudessaan, ja > kertoo Vimille että nyt halutaan käsitellä kursorin ympäristöstä sitä tekstiobjektia jota rajaavat kulmasulut.
Acmella tuo onnistuisi tuplaklikkaamalla jomman kumman sulun vierustaa sulkujen välistä (valitsee tekstin sulkujen välissä), jättämällä hiiren vasen nappi pohjaan ja painamalla keskimmäistä hiiren nappia (leikkaa valitun alueen), edelleen vasen hiiren nappi pohjassa painettaessa oikeaa hiiren nappia liitetään leikattu teksti takaisin paikoilleen. Valitun tekstin pystyy toki myös pelkästään kopioimaan suorittamalla ikkunan tagissa oleva Snarf - komento hiiren keskimmäisellä napilla.
Thoth kirjoitti: Jos esimerkiksi tahdon avata minkä tahansa tiedoston projektin hakemistojen rakenteesta, niin painan vain cmd+p ja kirjoitan osan tiedoston nimestä, jolloin Sublime Text 2 näyttää kaikki sopivat tiedostot.
Acmella pystyy yksinkertaisesti kirjoittamaan jonnekin tuota hommaa varten unix-komennon, valita sen vasemmalla hiiren napilla ja suorittaa painamalla keskimmäistä hiiren nappia.

Re: Paras editori koodaamiseen?

Lähetetty: 17.5.2012 klo 2.13
Kirjoittaja Thoth
jalski kirjoitti:
Sleepperi kirjoitti: Hiiritoiminnoilla ei oikeasti ole mitään jakoa edes tällaisissa irrallisissa toiminnoissa (homma on tehty ennen kuin käsi edes ehtisi hiirelle), mutta Vimin todellinen vahvuus tulee esiin vasta liikkumis-, tekstiobjekti- ja editointikomentojen yhdistelyssä. Esimerkiksi tekstin tuhoaminen kursorista virkkeen loppuun asti olisi df. eli d kertoo että kyseessä on tuhoaminen, f käynnistää merkkihaun ja piste on se merkki mitä haetaan.
Acmella tuo kävisi kirjoittamalla ikkunan tagiin regexp haku: :/(.*?)[.?!]/ , maalaamalla kyseinen komento hiiren vasemmalla napilla ja sitten suorittamalla haku hiiren oikealla napilla. Tämän jälkeen backspace-näppäin poistaa valitun alueen.
[:D]

Thoth kirjoitti: Jos esimerkiksi tahdon avata minkä tahansa tiedoston projektin hakemistojen rakenteesta, niin painan vain cmd+p ja kirjoitan osan tiedoston nimestä, jolloin Sublime Text 2 näyttää kaikki sopivat tiedostot.
Acmella pystyy yksinkertaisesti kirjoittamaan jonnekin tuota hommaa varten unix-komennon, valita sen vasemmalla hiiren napilla ja suorittaa painamalla keskimmäistä hiiren nappia.
[:D]

No joo, kyllähän tuo Acme näyttää kuvan perusteella "mielenkiintoiselta", mutta ei tuo mainospuhe nyt kovin hyvin ainakaan minulle toiminut. :) Pidän kyllä tuosta, että siinä ruudut ovat tuollaisina jaettuina tiilinä sen sijaan, että pitää toimia yhdessä ruudussa tai on aukeavia "ikkunoita". Vanhemmissa Applenkin ohjelmissa oli tapana, että avataan samaan ohjelmaan erillisiä ikkunoita, jota ovat "irrallaan" toisistaan. Nyt ihan viime aikoina Applekin on alkanut suosia enemmän kaiken pitämistä yhden ikkunan sisällä (esimerkiksi Safarin "Show downloads", Reading list, jne). Osaksi juuri irrallisten ikkunoiden takia en aikoinaan jaksanut edes tutustua sen syvällisemmin esimerkiksi Gimpiin.

Re: Paras editori koodaamiseen?

Lähetetty: 17.5.2012 klo 3.57
Kirjoittaja Hepo
Thoth kirjoitti: Tietysti jos on uudemman sukupolven koodaaja, niin ei välttämättä kannata opetella hyvin Emacsia tai vi:tä, joskin siitä voi olla hyötyä. Edes perusteet vi:stä kannattaa osata, jos vaikka joutuu seikkailemaan Unix-palvelimilla.
Ite ole törmännyt tuohon ongelmaan sulautetussa linuxissa, kun meikä on viimeiseen asti vältellyt emacsin tyylisiä editoreira (esim. picolla pärjännyt linuxeissa ja unixeissa jos on ollut pelkkä komentorivi). Perus editointi tai edes liikkuminen tekstissä vaikeaa. Välillä häipyy itsestää rivejä, kun liikkuu nuolinäppäimillä ;)
Miten muuten noissa vimeissä ja emacsissa, pystyykö yhtä kätevästi hyppäämään funktioon, jos ei muista kunnolla nimeä (graafisessa editorissa funktio lista siinä sivussa)?