Sunt sigur că toată lumea poate fi de acord că puterea și controlul oferite de un program precum Vim sunt incredibile. Cu toate acestea, în mod evident, mulți nu se simt confortabil cu diferitele moduri, și Linie de comanda simțiți-vă. Este greu de concurat, din punct de vedere vizual, cu un interfață frumoasă, cum ar fi Espresso. Dar, dacă am putea să luăm unele dintre cele mai populare comenzi / comenzi rapide Vim și să le portăm manual pentru utilizarea în Espresso? Nu ar fi cel mai bun din ambele lumi?
Veți obține cele mai multe din acest tutorial dacă aveți o familiaritate modestă cu Vim și cu sintaxa sa.
Să facem câteva lucruri drepte, chiar de pe lilieci. A lucra cu Vim este să lucrezi cu o limbă; acesta este motivul pentru care este atât de puternic. Doriți să ștergeți următoarele patru cuvinte? Ușor, tip c4w
(schimbați patru cuvinte). Cum rămâne cu următoarele două cuvinte? Ei bine, știm sintaxa: c2w
. Hmm ... ce se întâmplă dacă trebuie să șterg următoarele trei linii de pe poziția cursorului? Din nou, nu trebuie să memorăm o comandă separată de tastatură; noi, în schimb, folosim limba: 3DD
(ștergeți următoarele trei linii).
Scopul nostru este să portăm cât mai mult din această funcționalitate editorului popular Espresso pentru Mac. Motivul pentru care acest lucru este specific pentru Espresso se datorează faptului că vom folosi macrocomenzi pentru a imita o mână de sarcini pentru fiecare comandă. Tastele specifice / cursele de tastatură vor varia de la editor la editor.
Sper că membrii comunității vor începe să-și creeze propriile lor porturi pentru editorii lor preferați. În acel moment, putem dezvolta un depozit pe Github.
Cu siguranță nu putem porta întreaga limbă și modurile sale spre Espresso; asta e imposibil. Dar putem imita multe dintre cele mai populare comenzi cu macrocomenzi.
Presupun că răspunsul la această întrebare depinde în întregime de ... tu. Când am început procesul de 4 săptămâni din Vim, în septembrie, m-am îndrăgostit repede de modurile și limba. Cu toate acestea, fiecare editor are avantajele și dezavantajele sale. În cazul meu, deși încă mai iubesc și folosesc Vim în fiecare zi, nu-mi place cum:
Comandă + Opțiune + P
. În plus, această fereastră se actualizează în timp real, pe măsură ce tastați.Recent, pe măsură ce mă jucasem cu macrocomenzi de tastatură, m-am întrebat dacă există o modalitate de a porni această funcție. Poate că vă va plăcea ideea; Poate că o să-i urăști.
În timp ce Vim este 100% gratuit (care face parte din măreția sa), Espresso nu este. Mai mult, vom crea macro-uri de tastatură cu un program numit Keyboard Maestro. Și asta nu este liberă. Sunt sigur că există programe de creare a macrocomenziilor open source disponibile pe web; cu toate acestea, acesta este cel mai bun pe care l-am putut găsi. Merită 35 de dolari.
Pentru a urmări, veți avea nevoie de:
Să începem cu un simplu Macro. Folosind Vim în normal
modul, putem tasta CIW
(schimbați cuvântul interior) pentru a șterge cuvântul curent și a vă deplasa introduce
mod.
Acum, Espresso nu are moduri
, dar, după cum am aflat, e în regulă. Încă putem să tastăm aceste comenzi; în timp ce acestea vor fi introduse ca text obișnuit, de îndată ce declanșează macro-ul, acestea vor fi șterse foarte repede.
Deci, pentru prima noastră macrocomandă, vrem să imităm această funcționalitate. Când cursorul se află pe un cuvânt, vreau să tip rapid cw
pentru a schimba cuvântul.
Umm ... de ce nu l-ai lovit
Comandă + Shift + W
scurtătură?
Da, am putea face asta, dar, în opinia mea, nu ar trebui.
Atunci când creați o macrocomandă nouă, primul pas este să vă dați seama cum să efectuați sarcina manual în editorul de coduri. În acest caz, Shift + Command + W
va selecta cuvântul. Apoi, șterge
cheie, desigur, va șterge cuvântul. Aceste două comenzi vor mimeza singure CIW
în Vim.
Următorul pas este să creați macrocomanda. Activați tastatura Maestro și, înainte de orice, creați un grup nou special pentru comenzile dvs. Vim.
În acest fel, puteți limita aceste comenzi rapide să fie aplicate numai la Espresso, și nu, de exemplu, Microsoft Word. Mi-am sunat grupul, VimMimic.
Acum, trebuie să creați o macrocomandă nouă, să setați un declanșator și să alegeți extensia.
Dacă vă întrebați de ce nu vă folosim programul TextExpander existent, acest lucru se datorează faptului că programele de genul acesta doar extind textul. Dar trebuie să realizăm macrocomenzi sau sarcini.
Odata cu pregatirea, acum trebuie sa ne inregistram pasii. În timp ce tastatura Maestro are numeroase foldere / comenzi disponibile, este minunat faptul că oferă un buton "Înregistrare", în care va asculta și înregistra orice taste pe care le tastați, mișcări / clicuri de mouse etc..
Dacă aveți nevoie, reveniți la Espresso și memorați tastele / comenzile de care aveți nevoie pentru a introduce cuvântul. Cu toate acestea, fii inteligent în legătură cu acest lucru. De exemplu, dacă macroul dvs. va selecta ceva asemănător sheldon.couper
in intregimea sa? Sau doriți să selectați numai cuvântul, până la (sau după) perioadă? În Espresso, Comandă + Shift + W
va efectua aceasta din urmă. Decideți-vă pe aceasta. Cred că o voi face pe primul și voi selecta totul.
În acest caz, trebuie să fiu mai inteligent cu privire la macro. După un pic de tower în jurul, cu asta am venit.
Dacă doriți, creați oa doua macrocomandă, CIW
(modificați cuvântul interior), care va selecta numai înainte sau după perioada respectivă.
După ce ați finalizat macrocomanda, încercați! Reveniți la Espresso și, odată ce cursorul este peste un cuvânt, tastați cw
. Aceasta va declanșa macroul, în care vor fi redate toate acțiunile dvs. înregistrate anterior, la viteză mare.
Sper că există o modalitate de a efectua o macrocomandă fără a actualiza interfața de utilizator până la sfârșit. Dar nu știu cum să procedez în acest moment.
Dacă nu sunteți utilizator Vim, m-aș aștepta să vă gândiți la voi înșivă: "Toate aceste lucruri doar pentru a șterge un cuvânt?" Și, crede-mă, înțeleg. Ce vă pot spune însă este că, odată ce ați folosit Vim pentru o perioadă de timp, o sintaxă asemănătoare limbajului vă face mult mai multă sens decât să memorați numeroase comenzi rapide de la tastatură modificatoare.
Și, acordat, acesta este un exemplu foarte minim.
j
pentru Down; k
pentru susPrima dată când am aflat că era de așteptat să folosesc literele pentru a mă deplasa în sus, în jos, la stânga și la dreapta (kjhl
), Am râs. Cât de de modă este asta !? Dar, odată ce ați angajat cheile pentru memoria musculară, viteza crește. Nu mai trebuie să trageți mâna dreaptă în secțiunea din partea dreaptă a tastaturii pentru a atinge tasta săgeată în jos. Nu - mâinile rămân în poziție de repaus, deoarece acele chei se află direct în al doilea rând.
Vim folosește mod
s pentru comutarea între comenzi și inserarea textului. Dar, așa cum am menționat mai sus, Espresso nu are aceste. Deci, vom folosi Majuscule
cheie pentru a servi ca noi normal
mod.
Întrebați-vă: "Cât de des folosesc vreodată majuscule
cheia? "Daca esti ca mine, raspunsul este," Aproape niciodata "Cu acest lucru in minte, folositi ceva din aceasta si reorientati functia acestuia. Pe un Mac, acest lucru este simplu.
Mergi la Preferințe sistem -> Tastatură -> Taste modificatoare
, și schimbați Majuscule
pentru a vă deplasa la Control
cheie, pe care întotdeauna am probleme de țintire atunci când am tastat (cel puțin pe laptop-ul meu).
Acum, ori de câte ori apăsați majuscule
, Control
cheia va fi declanșată.
Acest lucru este de râs simplu, dar funcționează. Acum, când tastați Caps Lock + J
, săgeata în jos va fi declanșată. Este important să rețineți că nu sunteți obligat să folosiți acest lucru, dacă nu doriți. Puteți să apăsați în continuare tasta săgeată în jos. Dar, pentru cei care se simt mai confortabil, ținându-și mâinile în poziție de repaus, acest lucru ar putea fi preferat.
Următorul pas este repetarea ciclului pentru sus, spre stânga și spre dreapta - folosind aceeași metodă.
'
Vim are o comandă plăcută, CI“
care vă permite să goliți conținutul următorului șir, înfășurat în ghilimele simple. Este uimitor de util și poate accelera într-adevăr codarea.
Să încercăm să creăm o macrocomandă pentru a face acest lucru în Espresso. Aceasta va fi mai complicată, pentru că trebuie să folosim instrumentul de căutare în Espresso pentru a căuta următoarea apariție a unei singure citate. Deci, soluția nu va fi perfectă, dar va face treaba parțial.
Încearcă-te pentru tine. Oriunde în documentul dvs., tastați cn“
. Din păcate, cel puțin pentru moment, funcționează perfect numai pentru cuvinte singulare înfășurate în ghilimele.
În Vim, dacă introduceți un capital C
, în modul normal, va șterge tot textul de pe o linie care vine după poziția cursorului. Este foarte util. Putem face același lucru în Espresso cu o macrocomandă simplă. in orice caz, Shift + C
nu va funcționa, deoarece Espresso nu are moduri
. Hai sa facem Caps Lock + C
in schimb. Amintiți-vă, capacele sunt acum rutele spre Control
cheie!
În Vim, cu pluginul Surround, pot tasta dst
(ștergeți eticheta din jur) pentru a șterge o etichetă de împachetare. Eu o folosesc de multe ori. Hmm - acest lucru va fi mai dificil în Espresso, dar se poate face. Iată ce am venit; încercați-l pe mașina dvs..
Este un pic mai complicat, dar funcționează!
Rețineți că, dacă se pare că unele dintre aceste acțiuni pot fi eliminate, sunt acolo pentru că am găsit situații ciudate în care erau necesare. Mai bine să fii în siguranță.
La fel de util ca ștergerea etichetei înconjurătoare, este schimbare numele etichetei.
Există o singură idee despre această metodă particulară. Deoarece Espresso nu este bazat pe mod, atunci când schimbați eticheta, această comandă vă va duce până în punctul în care puteți schimba valoarea etichetei. Odată ce faceți, pur și simplu apăsați Dreapta
, și lipiți-o în textul original (care a fost copiat de macrocomandă). Veți vedea ce vreau să spun când îl încercați. Anunță-mă dacă Espresso are o comanda construită în schimbare-tag-name.
Bine, ar trebui să începi. Dacă sunteți membru Premium, asigurați-vă că vă referiți la porțiunea video a acestui tutorial pentru o demonstrație mai mult unu-la-unu. Am creat un depozit la Github, care conține zeci de comenzi pe care sunteți liber să le utilizați (și să vă îmbunătățiți) cum vreți.
dd
pentru a șterge o linie, veți șterge lucrurile de fiecare dată când tastați „Glumești.“ Deci ce crezi? Îți place ideea? Sunt curios, chiar dacă mă încadrez în tabăra din urmă.
Grupul de macrocomenzi pentru Maestro de la tastatură este în permanență actualizat. Pentru a descărca cea mai actualizată versiune, vă rugăm să o primiți aici: http://github.com/JeffreyWay/VimMimic-for-Espresso
Tutorial Link-uri:
Espresso: http://macrabbit.com/espresso/
Tastatura Maestro: http://www.keyboardmaestro.com