Sfat rapid Configurarea TextMate pentru codarea Dart

Dart este o limbă nouă destul de rece care ar putea însemna o schimbare în modul în care scrieți aplicații web. Google oferă un editor Dart bazat pe Eclipse care oferă un mijloc la îndemână pentru a începe. Dar utilizatorii TextMate găsesc de obicei o modalitate de a înclina TextMate la voința lor și acest Sfat rapid vă va face să începeți să îndoiți să utilizați Dart cu TextMate.


Cerințe preliminare

Presupun că sunteți familiarizat cu pachetele TextMate cel puțin în ceea ce sunt ele și că ele adaugă funcționalitate (de obicei lingvistică) la TextMate. De asemenea, presupun că sunteți familiarizat și sunteți capabil să verificați codul dintr-un depozit Subversion. În cele din urmă, presupun că aveți o experiență mică în Dart. Nu aveți nevoie de prea mult, dar având unele fișiere Dart în jur pentru a deschide în TextMate va face acest lucru mult mai neted.

Dacă nu sunteți familiarizat cu Dart în acest moment, vă pot indica sursa oficială de informații: http://www.dartlang.org/. Dincolo de asta, Activetuts + a publicat anterior tutorialul meu introductiv privind limba, ce este Dart și ce ar trebui să vă intereseze?


Instalați Editorul Dart

Nu vom folosi cu adevărat Editorul Dart (punctul din acest tutorial este de a utiliza TextMate pentru dezvoltarea Dart), dar descărcarea include Dart SDK, ceea ce este cu adevărat ceea ce facem. Chiar dacă sunteți un fanatic TextMate hardcore (ca și mine), nu este încă o idee groaznică de a avea instalat și util la îndemână editorul "oficial" Dart.

Pe site-ul oficial Dart (a se vedea secțiunea anterioară), puteți descărca Dart Editor de la următorul link: http://www.dartlang.org/docs/getting-started/editor/index-macos.html

Dacă sunteți pe Windows sau Linux, totuși citiți acest tutorial, în ciuda naturii Mac-centrice, puteți descărca Dart Editor pentru acele platforme de la editorul Dart pentru paginile Windows și Linux.

Sub "Pasul 1" al acelei pagini, veți găsi un link către un fișier ZIP care conține Editorii Dart. Este de aproximativ 40 MB, deci nu este o descărcare foarte greu.

Editorul Dart se bazează pe Eclipse, deci dacă ați folosit că veți fi acasă cu Editorul Dart. Nu voi primi detalii despre folosirea lui în acest tutorial, dar nu ezitați să jucați cu el. Actualul Activatuts + Facebook Fan Bonus vă ajută să folosiți modul de bază al editorului Dart.

(Rețineți că, dacă nu doriți să instalați Editorul Dart, puteți descărca doar SDK-ul închis pentru sistemul dvs. de operare la această adresă URL (este de numai 2 sau 3 MB): http://www.dartlang.org/docs/getting -started / sdk / index.html


Instalare frogc

frogc este compilatorul Dart-to-JavaScript. Este un instrument de linie de comandă, dar este din fericire ușor de utilizat. O vom folosi într-o comandă TextMate mai târziu pentru a transforma fișierele noastre Dart în JavaScript, astfel încât să putem folosi codul nostru Dart astăzi.

Deschideți Terminalul (găsit în / Aplicații / Utilitare / pliant). Introduceți următoarele:

 nano ~ / .bash-profil

Dacă aveți deja anumite personalizări PATH, plasați cursorul după aceste rânduri.

Tip:

 export PATH = $ PATH:

Apoi trageți cos dosar, care ar trebui să fie situat la / Aplicații / darts / darts-sdk / bin, în fereastra Terminal. Dacă nu se află în acea locație, căutați a DART-sdk folder în ceva pe care l-ați descărcat (dacă ați descărcat SDK-ul în sine, acesta ar trebui să fie descărcarea, dezarhivată). Ar trebui să ajungeți la ceva de genul:

 export PATH = $ PATH: / Aplicații / dart / dart-sdk / bin

Pentru a salva acest fișier, apăsați Control-O (asta e Control, nu Command), apăsați Return pentru a confirma fișierul de salvat, apoi apăsați Control-X pentru a ieși din nano.

Aproape gata; Am găsit o problemă frogc dacă se întâmplă să aveți spații în numele fișierului sau al folderului. Acest lucru poate fi ușor de stabilit, totuși. Deschide frogc. Este un script de shell executabil, deci nu faceți dublu clic pe el. În schimb, trageți-l în pictograma TextMate și puteți fi prezentat cu un dialog de avertizare, dar ar trebui să puteți vedea scenariul scurt. Nu trebuie să înțelegeți ce înseamnă acest lucru, ci să schimbați ultima linie din aceasta:

 $ SCRIPTPATH ​​/ dart --new_gen_heap_size = 128 $ SCRIPTPATH ​​/ frogc.dart --libdir = $ LIBPATH $ @

… la acest:

 "$ SCRIPTPATH ​​/ dart" - new_gen_heap_size = 128 "$ SCRIPTPATH ​​/ frogc.dart" --libdir = "$ LIBPATH" "$ @"

Observați că practic am înconjurat fiecare cale cu citate, ceea ce ajută la evitarea problemei spațiului.


Instalați Google Dart TMBundle

Puteți găsi .tmbundle pe această pagină a codului Google.

Puteți să verificați întreaga sursă de Darts, care ar putea fi interesantă pentru a vă străpunge sau puteți să verificați .tmbundle. Utilizând Terminalul, navigați la locația în care doriți să aveți codul (tip CD apoi trageți din nou folderul destinație în fereastra Terminal - rețineți că există un spațiu după CD). Odată ce Terminalul se află în locația dorită, tastați acest lucru pentru o plată completă:

 svn checkout http://dart.googlecode.com/svn/trunk/ Dart-only-read

... sau doar pentru .tmbundle:

 svn checkout http://dart.googlecode.com/svn/branches/bleeding_edge/dart/tools/utils/textmate/Dart.tmbundle

Dacă ați verificat întregul proiect, puteți naviga la .tmbundle urmând această cale din rădăcina proiectului: [Dart-read-only] /dart/tools/utils/textmate/Dart.tmbundle. În orice caz, faceți dublu clic pe .tmbundle pentru a avea TextMate să o instaleze.

O mulțime de utilizatori TextMate place să verifice pur și simplu .tmbundles afară direct în directorul lor de pachete. Pentru a face acest lucru, navigați la acel director din Terminal (aceasta ar trebui să o facă: cd "~ / Bibliotecă / Suport pentru aplicații / TextMate / Copii / Bucle") și apoi executați a doua linie svn checkout de mai sus (cea care verifică doar .tmbundle). În acest fel, puteți actualiza cu ușurință pachetul pe loc svn up "~ / Bibliotecă / Suport pentru aplicații / TextMate / Copii /.


Scrieți o comandă pentru a compila Dart la JavaScript

Google Dart Bundle este excelent pentru adăugarea suportului de sintaxă pentru Dart, deci când creați un fișier care se termină .lance primiți sintaxa colorată și plierea codului și astfel de lucruri. Dar nu include fragmente sau comenzi. Cea mai utilă comandă (într-adevăr, primul lucru la care m-am gândit) este o comandă pentru a vă compila actualul script Dart cu frogc Pentru dumneavoastră. Vom adăuga unul în acest pas.

În TextMate, deschideți editorul Bundle (apăsați Command-Option-Control-B, sau mergeți la Bundle> Editor pachet> Afișați editorul pachetelor)

Faceți clic pe intrarea Dart din lista din stânga.

Cu "+"Din partea stângă jos, alegeți" Comandă nouă ".

Ar trebui să vedeți o nouă comandă "untitled" care apare sub pachetul Dart. Redenumiți-l la "Compilați cu frogc"

În zona mare de text din partea dreaptă (etichetate "Comandă (e)"), introduceți următoarele:

 frogc "$ TM_FILEPATH"

Deasupra zonei de text, aveți opțiunea de a avea comanda să salvați fișierul înainte de a se executa. Acest lucru ar putea să vă aducă la cunoștință (mi se face, mai puțin o tastatură!). Dacă se întâmplă, schimbați opțiunea "Salvați" din "Nimic" fie la "Fișier curent", fie la "Toate fișierele din proiect".

Sub zona de text, unde scrie "Input", setați-o la "None".

Mai jos, unde se afișează "Output", setați-o la "Show as Tooltip". Acest lucru permite ca orice ieșire din comandă să apară într-un buton deget lângă cursor, ceea ce înseamnă că dacă aveți erori în timp ce rulează frogc le puteți vedea. Nu sunt teribil de frumoase, dar e mai bine decât nimic.

De mai jos acea, unde se scrie "Activare", asigurați-vă că este setat la "Key Equivalent", apoi puneți cursorul în câmpul de text spre dreapta. Comanda tip B; aceasta setează această comandă pentru declanșare când tastați comanda rapidă de la tastatură. Command-B este idiomul TextMate pentru o comandă Build în cazul în care pachetele au una.

Mai jos, în cazul în care se spune "Scope Selector", tastați "source.dart # 8221;.

Fereastra de comandă ar trebui să arate astfel:

Închideți fereastra editorului Bundle.


Pasul 1: Spuneți TextMate Unde frogc este

Am creat Terminal pentru a ști unde frogc este, dar, din păcate, TextMate nu împărtășește aceste informații. Cea mai ușoară soluție este să adăugăm calea pe care am adăugat-o în fișierul .bash_profile în preferințele dvs. Textmate.

Deschideți Preferințele TextMate (apăsați Comandă- sau mergeți la TextMate> Preferințe ... ).

Faceți clic pe butonul Avansat din partea de sus, apoi faceți clic pe fila Variabile Shell.

Dacă nu aveți deja a CALE , faceți clic pe butonul "+" și, în prima coloană, tastați CALE.

În a doua coloană a rândului care începe CALE, tastați calea pe care ați adăugat-o la .bash_profile (doar calea, nu partea care spune EXPORT PATH = @ CALEA:). Asigurați-vă că părăsiți valoarea actuală intactă - adăugați un colon la sfârșitul a ceea ce există deja și apoi copiați în noua cale.

Închideți fereastra Preferințe și sunteți pregătit să-l încercați. Dacă aveți nevoie de un fișier Dart, puteți crea fie un fișier Hello World creând un nou proiect cu Dart Editor, fie puteți săpați exemplele din descărcarea Dart Editor, în dosarul "samples". Deschideți un fișier Dart în TextMate și apăsați Command-B; dacă totul merge bine ar trebui să aveți un fișier JavaScript de lângă fișierul Dart după câteva secunde.


Pasul 2: Obțineți feedback de la frogc

Dacă doriți să obțineți un catelus mic, puteți modifica codul comenzii dvs. de compilare la acest lucru:

 rezultatul = "frogc" $ TM_FILEPATH "" dacă ["$ result" == ""]; apoi echo "Compilați completat" altceva echo $ result fi

Acest lucru vă va oferi o singură sugestie de instrumentare "Compilați completat" frogc se execută dacă rulează cu succes. Dacă aveți erori, acestea vor apărea în continuare, așa cum au făcut-o înainte.

O altă opțiune: dacă ți-a plăcut ideea de salvare automată a fișierelor atunci când executați comanda, vă recomandăm să înlocuiți comanda Save cu o comandă Save-and-Compile. Acest lucru este la fel de simplu ca schimbarea Command-B la Command-S și asigurarea că salvați "File curent" în comandă. Acest lucru suprascrie Comanda-S obișnuită, care salvează doar documentul curent, cu executarea acestei comenzi, care salvează și apoi compilează.

Pentru completare, puteți crea o comandă duplicată care salvează "Toate fișierele" și are o cheie de activare a Command-Option-S. Această comandă rapidă va suprascrie comanda regulată Command-Option-S în TextMate, care salvează în mod normal toate fișierele dintr-un proiect. Rețineți că, deoarece ați setat un selector de domeniu, această suprascriere se va întâmpla numai în fișiere Dart, nu fiecare când salvați orice fișier.


Porniți Snippeturi de construcție

Există multe fragmente utile care pot fi adăugate la un pachet Dart. În general, mă găsesc adăugându-le în mod incremental, pe măsură ce cunosc o limbă și descopăr existența .tmbundle nu include deja unul. Permiteți-mi să încep prin adăugarea unui fragment care creează o nouă metodă.

În Bundle Editor, asigurați-vă că este selectat pachetul Dart (sau un element din pachetul Dart), apoi selectați "Snippet New" din secțiunea "+". Denumiți-o "metodă".

În zona de text mare, selectați tot textul existent și ștergeți-l. Acum introduceți (sau lipiți) următoarele:

 $ 1: void $ 2: methodName ($ 3: argumente) $ 0 $ 1 / void |

Sub "Activare", setați ferestrele pop-up la "Tab Trigger" și introduceți metodă în câmpul de text (nu ezitați să schimbați acest lucru).

Sub "Selector de domeniu", tastați source.dart.

Fragmentul dvs. ar trebui să arate astfel:

Închideți editorul Bundle.

Încearcă. Într-un fișier Dart, tastați "method" (sau orice ați specificat dacă ați falsificat propriul declanșator), apăsați Tab și vizionați-l să se extindă. Puteți trece prin diferite opriri, începând cu tipul retur, apoi cu numele metodei și, în final, între paranteze, dacă doriți să adăugați argumente. Ultima fila vă va lăsa la prima linie a metodei.

Partea rece este dacă schimbați tipul returului vid, ai automat reveniți nul declarație la sfârșitul corpului metodei. Desigur, veți dori să adaptați acest lucru nevoilor dvs., dar, sperăm, este o caracteristică care salvează o mică tastare. Magia se întâmplă în cea de-a doua linie dificilă a fragmentului; dacă nu ați mai văzut acest lucru înainte, atunci este oarecum dificil de explicat în mod concis, dar se uită la conținutul primei opriri tab (tipul de returnare) și dacă este altceva decât "vid", Adaugă reveniți nul. S-ar putea să aveți sens dacă ați folosit expresii regulate, în special cu sintaxa de substituție din / Model / substitut / găsită în Perl.

Având în vedere că Google nu oferă fragmente cu ajutorul acestora .tmbundle, câmpul este deschis pentru crearea de fragmente Dart de economisire a timpului. Simțiți-vă liber să publicați fragmentele în comentarii. Îi vom compila și vom vedea dacă Google poate fi inclus în pachetul lor oficial.


Asta e tot

Vă mulțumim pentru lectură! Sper că ești atât de încântat de Dart ca și mine. Editorul Dart este curat și totul, dar eu sunt un prost pentru TextMate. Combinarea Dart cu editorul meu de text de alegere este ceva care a trebuit doar să fie împărtășit.

Cod