Slå Sublime Text 3 inn en JavaScript-IDE

0
48

Sublime Text er en av de mest populære redaktører for web-utvikling, og utvikling av programvare generelt. Det er veldig glatt og rask i forhold til andre redaktører (som blir skrevet i C++ bidrar til at hastigheten). Sublime har også tonnevis av plugins du kan finne gjennom Pakke Kontroll.

Men det er bare en tekst editor og ikke en IDE. En IDE er et program som gir omfattende fasiliteter for programmerere for utvikling av programvare. Faktisk, Sublime ikke tilbyr funksjoner som debugging verktøy innebygd verktøy for kompilering og kjøring av programmer, intelligent kode forslag, eller kode refactoring. I stedet tilbyr et sett med Api-er du kan bruke til å utvide den. Her er en introduksjon til JavaScript Ekstrautstyr plugin (min egen kreasjon) som gjør Sublime litt mer IDE-som for JavaScript-utvikling.

Hva er JavaScript Ekstrautstyr Plugin?

Det er en plugin for den Sublime Text 3 som tilbyr en rekke funksjoner nyttig for å skape, utvikle og håndtering av JavaScript-prosjekter. De viktigste er:

  1. Smart autofullfør
  2. Feil-deteksjon og linting
  3. Koden refactoring

Flere andre funksjoner kan bli funnet på Wiki-side.

De fleste funksjonene er implementert ved hjelp av Flow under panseret, som er et statisk typechecker for JavaScript opprettet av (hvis du vet maskinskrevet kopi, det er ganske lik). Hovedmålet med denne plugin er å slå Sublime Text 3 inn en JavaScript-IDE. Det er i aktiv utvikling, og det vil inkludere andre funksjoner over tid.

Installasjon

Det er to måter å installere det. Det enkleste er gjennom Pakke Kontroll, den andre er å installere det manuelt ved å følge disse enkle trinnene.

Krav

  • Sublime Text 3 bygge vei 3124 eller nyere
  • Node.js (6 eller nyere) og npm
  • TerminalView Sublime Text plugin (Linux og Mac OS X)

Støttede Systemer

Fordi Flow fungerer bare på 64-biters systemer, denne plugin støtter:

  • Mac OS X
  • Linux (64-bit)
  • Windows (64-bit)

Smart Autofullfør

Sublime Tekst har sin egen autofullfør-funksjonen, men den mangler kraft, gjør det ikke på langt nær så nyttig som det kunne være. Med denne plugin, vil du få automatisk fullføring basert på gjeldende kontekst, som en hvilken som helst annen IDE. For eksempel, du vil få komplettering fra importerte klasser som er definert i andre filer, for eksempel egenskaper og metoder.

Videre, kompletteringer listen vil også inneholde informasjon om type variabler og funksjoner signatur for å få en rask oversikt over dem.

Her er hvordan det fungerer med plugin:

…og uten plugin:

Feil-Deteksjon og Linting

Sublime Tekst ikke ha en feil-deteksjon og/eller linting system innebygd. Takk Strømme, og dette kan gjøres ved hjelp av sin egen CLI-kommandoer. For å la den Flyte server sjekke dine filer i en JavaScript-prosjektet, må du legge til en spesiell kommentar i dem: // @flyt.

Du kan angi også flere alternativer i den .flowconfig fil (se den offisielle nettsiden for å tilpasse Flow konfigurasjon. For eksempel, hvis du ønsker å la den Flyte-serveren kontrollerer alle filer og ikke bare de med @flow, må du angi alle muligheten til å true:

[valg]
# alle=deaktivert som standard
alle=true

I stedet, som står på den offisielle nettsiden, lo-innstillinger kan være spesifisert i den .flowconfig [lints] – delen som en liste av regelen=alvorlighetsgraden par. Disse innstillingene gjelder globalt for hele prosjektet. Et eksempel er:

[lints]
# alle=deaktivert som standard
alle=advare
untyped-type-import=feil
sketchy-null-bool-verdi=av

Lo-innstillinger kan angis også direkte i en fil ved hjelp av flowlint kommentarer. For eksempel:

/* flowlint
* sketchy-null:feil,
* untyped-type-import:feil
*/

Koden Refactoring

Sublime Tekst, ikke har en kode refactoring system innebygd. Dette er realisert med hjelp av Flow CLI-kommandoer for å få den nødvendige informasjon. I øyeblikket, denne plugin tilbyr ulike koden refactoring funksjoner, inkludert:

  • Konvertere til pil-funksjon
  • Eksport:
    • Funksjon
    • Klasse
    • Variabel
  • Trygg Kopi
  • Trygg Flytte
  • Trygg Slett
  • Utdrag:
    • Variabel
    • Feltet (dagens metode, felt-erklæringen, klasse constructor)
    • Parameter
    • Metode (globalt omfang, dagens omfang, klasse-metode)

Noen av dem kan også ha en tilgjengelig forhåndsvisning.

Støtte

Problemstillinger/Spørsmål

Hvis du har noen problemer, kan du opprette et problem. Protip: gjør et raskt søk først for å se om noen andre ikke stille det samme spørsmålet før! For små spørsmål, kan du bruke Gitter.

Anmodninger om funksjoner og Forbedringer

For anmodninger om funksjoner, opprette et problem eller bruk Gitter.

Økonomiske Bidrag

Hvis dette prosjektet bidrar du til å redusere tid å utvikle, og også du liker det, kan du vurdere å støtte det med en donasjon på Patreon, Åpne Kollektive eller ved å bruke PayPal. Takk!