Lær hvordan du er en TextMate Champion

TextMate er langt den foretrukne tekstredigeren for de fleste webutviklere på Mac. I dagens screencast tar vi en titt på noen av funksjonene de fleste utviklere ikke bruker, noe som kan øke produktiviteten din kraftig ved å la deg skrive mindre!

Ikke en Mac person? Jeffrey har en screencast med tittelen "Hvordan kan jeg kode to ganger så fort som deg" viser hvordan du utfører lignende handlinger ved hjelp av et "tekstutvidelsesprogram" i Windows.


Full Screencast



Snarveier brukt

Du kan se alle TextMates snarveier og funksjoner under "Bundles" -menyen. Her er noen av de jeg bruker regelmessig:

Nøkkel

Tab
Skifte
^ Styre
Alternativ (Alt)
Kommando
Escape (esc)
Komme tilbake
↓ ← ↑ → Tastatur piltastene
                                      

HTML

snarvei Handling
^ ⇧ , Nytt HTML tag par
⌥ ⎋ Tag / attributt automatisk fullføring
⌘ ⇧ 7 Konverter valg til HTML-enheter
! ⇥ Internet Explorer Conditionals
⇧ ↩ Linjeskift
^ ⇧ V Bekreft HTML / CSS
lenke ⇥ Stylesheet Link Tag
stil ⇥ In-line stil blokk
scriptsrc ⇥ Ekstern JavaScript-tag
skript ⇥ In-line JavaScript-blokk
                                      

PHP

snarvei Handling
php ⇥
ekko ⇥
hvis ⇥

ifelse ⇥

for ⇥
foreach ⇥
mens ⇥
array ⇥
bytt ⇥
tilfelle ⇥
Som du forventer.
req ⇥
req1 ⇥
inkl
incl1 ⇥
krever "fil";
require_once 'fil';
inkludere "fil";
include_once 'fil';
$ _ ⇥ Velg $ _ ['POST'], $ _ ['GET'] etc. (Global Arrays)
^ ⇧ V Bekreft syntaks
⌘ ⇧ R Kjør PHP-fil
                                      

Rubin

snarvei Handling
hvis ⇥
ife ⇥ (hvis elsif)
med mindre ⇥
mens ⇥
Som du forventer.
req ⇥ krever ""
reqg ⇥ krever "rubygemer"
krever ""
Hash ⇥ Hash.new | hash, key | hash [nøkkel] =
: ⇥ : nøkkel => "verdi",
Fil ⇥ Velg for forskjellige "File" -objektmetoder (les, skriv osv.)
⌘ R Kjør Ruby-fil
                                      

rails

snarvei Handling
cla ⇥ Lag Rails Controller
flash ⇥ flash [: notice] = "
ra ⇥ gjengi: action => "
vp ⇥ validates_presence_of: input
vl ⇥ validates_length_of: input,: within => 1 ... 12
^ P parametere [: objekt]
^ J sesjon [: objekt]
^ ⇧ . <%= %>
ff ⇥ <% form_for @model do |f| -%>

<% end -%>

f. ⇥ Velg for Rails 'skjemahjelp - etikett, felt, passord, tekstområde, avkrysningsboks osv.
slt ⇥ <%= stylesheet_link_tag"%>
JIT <%= javascript_include_tag"%>
⇧ ⌥ ⌘ ↓ Gå til riktig kontroller, modell, visning etc. for gjeldende fil
mcol ⇥ Bruk i migrasjoner. Velg for å legge til, redigere, endre navn, fjerne kolonner osv.
                                      

Opprett din egen snarvei / hurtigtast

Vi skal lage en snarvei (tilgjengelig med ⌘⇧A) for å pakke inn den valgte teksten i en kobling, og hoppe deg rett til attributten for å skrive inn nettadressen.

I TextMate, gå til "Bundles> Bundle Editor> Show Bundle Editor" (eller trykk på ^⌥⌘B). Dette ser ut som min redaktør ser ut. Din kan se annerledes ut som jeg har lagt til noen egendefinerte pakker og fjernet noen for språk jeg ikke bruker:


Klikk på HTML-rullegardinmenyen (bunt), klikk på + nederst til venstre i vinduet og velg 'Ny utdrag'. Navngi denne koden 'Wrap Link' og for 'Activation', velg 'Key Equivalent' og i boksen angi tastekombinasjonen du vil bruke (f.eks. ⌘⇧A).


Inne i tekstområdet angi:

 $ TM_SELECTED_TEXT

$ TM_SELECTED_TEXT er en variabel som inneholder den valgte teksten. Lukk vinduet og prøv det. Åpne et dokument i TextMate, marker noe tekst og trykk på tastekombinasjonen. Utvalget vil bli pakket inn i ankeretiketter.

Men som det er nå, må du fortsatt flytte markøren til href = "" attributt til å skrive inn den faktiske lenken. Ville det ikke vært lettere hvis markøren flyttet seg der automatisk?

Endre kommandoen 'Wrap Link' til følgende:

 $ TM_SELECTED_TEXT

De $ 1 forteller TextMate hvor du skal plassere markøren etter å ha utført oppgaven. Du kan plassere $ 2, $ 3 etc. og deretter flytte gjennom dem ved hjelp av tabulatortasten.

Endelig, endre kommandoen til:

 $ 2: $ TM_SELECTED_TEXT

Du kan legge til standardtekst på et sted ved hjelp av $ 2: Standardtekst. Standardtekst vil vises, og automatisk utheves når du tapper inn i den.
I vårt tilfelle har vi valgt den valgte teksten som en tabbeplassering for omstendigheter når du kanskje vil endre originalteksten.

Du kan også "speil" tekst skrevet inn på tabulatorene, slik som:

 

Tekst: $ 1

Noen annen tekst: $ 2: blah de blah de blah

Speil på 1: $ 1

Uansett hva du deretter angir på den første fanen, blir automatisk lagt inn i andre stillinger som har samme verdi.


Ytterligere eksempler:

Personlig har jeg laget mine egne bunter for å inkludere jQuery-biblioteker, skrive inn 'Lorem Ipsum' -tekst, og også for å skrive Nettuts-artikler. For eksempel:

jQuery-utdrag

Finn deg selv ved å legge inn jQuery-tagger? Prøv disse:
'jQuery CDN' tilgjengelig med inc-jquery tab-trigger:

 

'jQuery UI CDN' tilgjengelig med inc-ui tab-trigger:

 

'jQuery Inline Script' tilgjengelig med inline-jquery tab-trigger:

 

'jQuery Document Ready' tilgjengelig med jquery tab-trigger:

 \ $ (funksjon () $ 0);

Merk: Bakskjærene i begynnelsen av $ (funksjon () er å unnslippe $ tegn - ellers vil TextMate synes det er en variabel for å prøve og gjengi!

Du kan også ganske enkelt tildele alle disse til en jquery tab-trigger, så når du kjører den, får du en rullegardinmeny å velge mellom. Dette er nyttig hvis du foretrekker å ikke huske store grupper av kodestykker!


Nettutklipp

Jeg har også et bunt for de ulike taggene Nettuts artikler avhenger av, for eksempel:
'Pre Code Block' åpnes ved hjelp av nt-pre tab-trigger:

 
 $ 2 

'Tuts Image' tilgang ved hjelp av nt-img tab-trigger:

 

Når jeg skriver artikler, bruker jeg en liten mal for å gjøre det enklere å lese når korrekturlesing. Denne brikken har et eksempel på "speiling" på tittel og H1-koder. Jeg får tilgang til dette ved hjelp av nt-mal tab-trigger:

  $ 1: title 

$ 1

$ 2: Sammendragstekst

$ 4: Topp

$ 5: Start å skrive! Bruk H3 for overskrifter og H4 for underoverskrifter

$ 0