(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); })(window,document,'script','dataLayer','GTM-5LHNRP9'); Rails-þróun með TMUX, Vim, Fzf + Ripgrep - The Codest
The Codest
  • Um okkur
  • Þjónusta
    • Hugbúnaðarþróun
      • Framhliðþróun
      • Bakendaþróun
    • Staff Augmentation
      • Framhliðaráþrófarar
      • Bakhliðaráþróunaraðilar
      • Gagnaverkfræðingar
      • Skýjaverkfræðingar
      • Gæðatryggingartæknimenn
      • Annað
    • Það er ráðgjafi
      • Endurskoðun og ráðgjöf
  • Iðnaðargreinar
    • Fjártæknifyrirtæki og bankastarfsemi
    • E-commerce
    • Adtech
    • Heilbrigðistækni
    • Framleiðsla
    • Flutningar
    • Bifreiða
    • Internet hlutanna
  • Gildi fyrir
    • CEO
    • CTO
    • Afhendingarstjóri
  • Teymið okkar
  • Case Studies
  • Vitið hvernig
    • Blogg
    • Fundir
    • Vefnámskeið
    • Auðlindir
Starfsferilmöguleikar Hafðu samband
  • Um okkur
  • Þjónusta
    • Hugbúnaðarþróun
      • Framhliðþróun
      • Bakendaþróun
    • Staff Augmentation
      • Framhliðaráþrófarar
      • Bakhliðaráþróunaraðilar
      • Gagnaverkfræðingar
      • Skýjaverkfræðingar
      • Gæðatryggingartæknimenn
      • Annað
    • Það er ráðgjafi
      • Endurskoðun og ráðgjöf
  • Gildi fyrir
    • CEO
    • CTO
    • Afhendingarstjóri
  • Teymið okkar
  • Case Studies
  • Vitið hvernig
    • Blogg
    • Fundir
    • Vefnámskeið
    • Auðlindir
Starfsferilmöguleikar Hafðu samband
Aftur ör Farðu aftur
2019-04-24
Hugbúnaðarþróun

Rails-þróun með tmux, vim, fzf og ripgrep

The Codest

Marcin Doliwa

Software Engineer

Fyrir nokkrum árum var ég að grilla með nokkrum vinum mínum, allir Java-forritarar. Ekki veit ég hvernig það kom upp, en við byrjuðum að tala um forritunarumhverfi okkar. Ég sagði þeim að ég geri alla þróun mína með Vim og í textatengjum. Það leiddi til nokkurra brandara og fyndinna spurninga, eins og hvort ég sé ennþá að nota púnskort 🙂

Hér er tómt.

Síðan þá hef ég prófað nokkur “alvöru” IDE-um en alltaf snúið aftur til Vilji og skjálínur þar sem þetta er mjög hraðvirk aðferð, hefur öll þau verkfæri sem ég þarf og mér finnst einfaldlega gaman að vinna í textaham.

Hér eru nokkur smáatriði um vinnuflæði mitt. Það er þess virði að nefna að ég vinn á Linux, en þú getur sett það upp á Mac eða Windows án vandamála.

Ég byrja vinnudaginn minn á því að opna skjá, skipta í ~/Projects/XYZ og keyra tmux, svo skulum við byrja þar.

TMUX

Hvað er TMUX? Eins og höfundarnir segja:

TMUX er fjölrása tæki fyrir skjáumhverfi. Það gerir þér kleift að skipta auðveldlega á milli nokkurra forrita í einum skjá, losa þau (þau halda áfram að keyra í bakgrunni) og tengja þau aftur við annan skjá.

Ég nota það til að skipta á milli margra hluta í einum skjá. Svo, í einum TMUX gluggi, ég hef Relsar þjónn í gangi, í öðru sekúndunni hef ég minn Vilji opnað, og í hvert skipti sem ég þarf að gera eitthvað í skelinni, eins og að athuga leiðir, keyra flutninga eða prófanir, opna ég bara nýtt glugga með Stýri-A C og gera hlutinn.

Ég nota ekki TMUX gluggaspjöld, bara gluggar, og skipta mikið (ég nota CTRL + tvöfaldan A til að skipta á milli síðustu glugga).

Annað mjög þægilegt einkenni af TMUX Það gerir mér kleift að finna og afrita texta úr skjáborði án þess að nota mús.

Vilji

Þetta er meginhluti vinnuflæðis míns. Ég mun ekki fara nánar út í hvað VIM er og hvernig það er öðruvísi en aðrir ritstjórar. Það eru margir frábærir greinar og myndbönd um það. Í fáeinum orðum, Vilji er modalur ritill. Hann hefur tvö ham: innsláttarham og venjulegan ham. Innsláttarhamurinn er til að slá inn texta í skjal en venjulegi hamurinn er til að framkvæma ýmsar aðgerðir á skjalinu, eins og að færa bendilinn, eyða brotum af texta, breyta honum og svo framvegis. Það hljómar skrýtið en eftir smá tíma finnst það mjög eðlilegt og það er mjög erfitt að snúa aftur í venjulega ritilinn þinn.

Það sem ég vil sýna þér er hvernig ég sameini Vilji með öðrum verkfærum til að fá allt sem ég þarf sem vefur þróunaraðili.

Viðbætur

Ég er ekki hrifinn af þungum viðbótum. Vilji configs, svo ég er að nota aðeins nokkrar. Hér er listinn:

Nördtré – þetta er skráarvafri. Hann gerir þér kleift að framkvæma auðveldlega nokkrar grunn aðgerðir í skráarkerfinu, eins og að færa skrár, endurnefna, búa til nýjar skrár og margt fleira,

vim-endwise – Ég er Rúbín þróunaraðili, svo ég nota það til að bæta við enda eftir ef, gerðu, skilgreina, og nokkur önnur lykilorð,

vim-rails – það er Relsar aflviðbót. Hún þekkir uppbyggingu á Rails-forrit. Viltu athuga hlutann undir bendlinum? Smelltu bara á stelpunvini og það opnar það í núverandi glugga þínum. Það hefur marga aðra valkosti en það er sá sem ég nota oftast,

vim-surround – frábær viðbót sem gerir vinnu með umhverfi mjög auðvelda. Með henni geturðu breytt umhverfi texta úr () í [] með nokkrum lyklabrotum,

endurtekur í vim – viðbót við Vim-surround. Leyfir endurtekna umlykjandi breytingu með . (endurtekur síðustu breytingu í Vim),

vimwiki– minn háttur til að taka niðurstöður,

fzf.vim+ fzf – kjarni hluti míns vefþróun vinnsflæði.

samstarfsfáninn

Fzf + Ripgrep

Þetta eru verkfærin sem skilgreina hvernig ég kóða. Ég áttaði mig á því að þegar ég er að vinna að forritunarverkefnum eyði ég mestum tíma mínum í að komast að því hvernig hlutirnir virka. Til þess þarf ég að skoða fljótt mismunandi hluta kóðagrunnsins, aðferðadefinisjónir, klasa og annað slíkt.

Fzf er gagnvirkt Unix-síuvélarforrit fyrir skipanalínu sem hægt er að nota með hvaða lista sem er (skrár, skipanalínusaga, git-breytingar, ferlalistar); með öðrum orðum, það er óljós leitaraðili.

Ripgrep er valkostur við grep, en hann er gífurlega hraður.

Þegar þau eru sameinuð leyfa mér þessi tvö að finna fljótt allt sem ég vil í mínu verkefni.
Ég á tvær stillingar í mínu Vilji Stillingarskrá til að hjálpa mér við þetta:

nnoremap  :Files
nnoremap  :Rg

Sá fyrsti gerði mér kleift að finna réttu skrárnar hratt með óskýrri leit í skráarleiðum (CTRL-P). Sá annar keyrir óskýrða leit á öllum leiðum og innihaldi skráa í verkefni mínu með Ripgrep (CTRL-F).

Svo, segjum að ég vilji finna flutninginn þar sem ég bætti við dálki í notendur Tafla. Ég ýti á CTRL-F og skrifa eitthvað eins og aðstoðarnöfn og það mun passa bæta_við_súlu :notendur, :nafn, :string.

Þegar ég leita að aðferðarskilgreiningu, nota ég oft CTRL-F. skilgreina aðferðarnafnið.

Það er mjög gagnlegt þar sem það leitar í skráarbraut og innihaldi. Það er sérstaklega þægilegt þegar ég veit að efnið sem ég er að leita að er á tilteknum stað í verkefninu. Til dæmis vil ég finna hvar við uppfærðum notendanafn og ég man að það var einhvers staðar í stjórnendunum. Ég ýti á Stýri-F nafn uppfærslu til að passa við línu app/controllers/users_controller: @user.update(name: new_name).

Ef þú þekkir verkefnið þitt og uppbyggingu kóðagrunnsins, geturðu auðveldlega búið til fuzzy-leitarspurningar til að finna nánast hvað sem er sem þú vilt.

Myndband

Smelltu hér til að sjá stutta upptöku af mér að fikta í `discourse` kóðagrunninum (440 þúsund línur af kóða á i5-tölvunni minni með 16 GB vinnsluminni) og sýna hvernig ég hreyfi mig venjulega um verkefnið.

Yfirlit

Ég vona að þú hafir orðið forvitinn um uppsetningu mína og ákveðið að gefa Fzf tilraun í forritunarátökum þínum. Það breytti í raun því hvernig ég nota Vilji sem kóði ritstjóri.

Tengdar greinar

Hugbúnaðarþróun

5 dæmi um bestu notkun Ruby

Hefurðu einhvern tíma velt því fyrir þér hvað við getum gert með Ruby? Jæja, loftið er líklega takmörkin, en við erum fús til að segja frá nokkrum meira eða minna þekktum dæmum...

The Codest
Pawel Muszynski Software Engineer
Hugbúnaðarþróun

Fáðu nánari upplýsingar um Ruby on Rails með Pub/Sub

Pub/Sub getur fært verkefninu margvíslega kosti – það getur gert kóðann hreinan, losað þjónusturnar og gert þær auðveldlega stækkanlegar. Lærðu meira um Pub/Sub í eftirfarandi grein...

The Codest
Michal Pawlak Æðsti Ruby-þróunaraðili
Hugbúnaðarþróun

Vörþróun: Python vs. Ruby

Python og Ruby eru bæði mest notuðu bakenda forritunarmálin. Python er aðeins vinsælli og hefur víðari notkun. Hins vegar býður Ruby einnig upp á marga kosti og...

The Codest
Kamil Ferens Vöxtarstjóri

Gerðu þig áskrifanda að þekkingargrunni okkar og vertu upplýstur um sérfræðiþekkingu upplýsingatæknigeirans.

    Um okkur

    The Codest – Alþjóðlegt hugbúnaðarþróunarfyrirtæki með tæknimiðstöðvar í Póllandi.

    Bretland - Höfuðstöðvar

    • Skrifstofa 303B, 182-184 High Street North E6 2JA
      Lundúnir, England

    Pólland - staðbundin tæknimiðstöðvar

    • Fabryczna skrifstofugarður, Aleja
      Herbergi 18, 31-564 Kraków
    • Brain Embassy, Konstruktorska
      11, 02-673 Varsjá, Pólland

    The Codest

    • Heim
    • Um okkur
    • Þjónusta
    • Case Studies
    • Vitið hvernig
    • Starfsferilmöguleikar
    • Orðabók

    Þjónusta

    • Það er ráðgjafi
    • Hugbúnaðarþróun
    • Bakendaþróun
    • Framhliðþróun
    • Staff Augmentation
    • Bakhliðaráþróunaraðilar
    • Skýjaverkfræðingar
    • Gagnaverkfræðingar
    • Annað
    • Gæðatryggingartæknimenn

    Auðlindir

    • Staðreyndir og goðsagnir um samstarf við utanaðkomandi hugbúnaðarþróunaraðila
    • Frá Bandaríkjunum til Evrópu: Af hverju ákveða bandarísk sprotafyrirtæki að flytja til Evrópu?
    • Samanburður á tæknifjarkerfisþróunarmiðstöðvum: Tech Offshore Europe (Pólland), ASEAN (Filippseyjar), Eurasia (Tyrkland)
    • Hvert eru helstu áskoranir CTO-a og CIO-a?
    • The Codest
    • The Codest
    • The Codest
    • Privacy policy
    • Website terms of use

    Höfundarréttur © 2026 af The Codest. Öll réttindi áskilin.

    is_ISIcelandic
    en_USEnglish de_DEGerman sv_SESwedish da_DKDanish nb_NONorwegian fiFinnish fr_FRFrench pl_PLPolish arArabic it_ITItalian es_ESSpanish nl_NLDutch etEstonian elGreek pt_PTPortuguese cs_CZCzech lvLatvian lt_LTLithuanian is_ISIcelandic