Vim і Emacs: усё спакойна

Сярод святыя войны Самае легендарнае, пра якое нам вядома, - гэта выдавецкая вайна. Vi / Vim супраць Emacs. Гэта асабліва весела, бо абодва яны з'яўляюцца бясплатным праграмным забеспячэннем з вельмі высокімі магчымасцямі.

Гэта ідзе шмат гадоў назад. Emacs быў распрацаваны Рычардам Столманам у 35-х, выпушчаны прыблізна 1991 гадоў таму. Ві прыкладна таго ж ўзросту, якую стварыў Біл Джой. Вім, з іншага боку, з'яўляецца чымсьці больш свежым і ўзнікае з-за неабходнасці Брэму Муленару стварыць клон Vi для Амігі ў XNUMX годзе.

Як рэтра! Выдаўцы з каменнага веку, калі жыццё было прасцейшым. І мы працягваем іх выкарыстоўваць, бо яны развіваюцца і прыстасоўваюцца да часу. Vim і Emacs выкарыстоўваюць сучасныя інтэрфейсы ў GTK, у іх ёсць свае мовы пашырэнняў, менеджэры пакетаў; сярод іншага, што ставіць іх сярод рэдактараў сучасны.

Для чаго я іх выкарыстоўваю?

Давайце абставіны цалкам гіпатэтычныя. Гуголь - гэта матэматычнае слова, якое вызначае слова, за якім ідзе сто нулёў. Як нам напісаць гэта ў тэкставым рэдактары?

Першае рашэнне, якое прыходзіць у галаву, - увесці адзін і націскаць клавішу 0, пакуль лічыльнік слупкоў не ўсталюе 101, таму што 101 выраз павінен вымераць гэты выраз. Мы мяркуем, што адрэдагуем гэта ў кампетэнтным тэкставым рэдактары, які мае радок стану для адлюстравання гэтых рэчаў.

Цяпер я магу прыдумаць больш простае рашэнне:

i1 ESC 100a0 ESC

Зразумела, для гэтага рашэння неабходны Vim ці, па меншай меры, Vi. Ён каманда даволі проста, і гэта як быццам мы гаварылі Віму: знаходзячыся ў звычайным рэжыме, устаўляй 1 і вяртаецца ў звычайны рэжым. Цяпер устаўце пасля курсора сто разоў 0 і вяртаецца ў звычайны рэжым. Vim выканае наш заказ без пытанняў.

Складанасць

Гэта рашэнне гучыць надзвычай складана, і я разумею. Па-першае, таму што мы маем справу з паняццем a мадальны рэдактар. Але бываюць выпадкі, калі гэта значна больш карысна, чым здаецца.

Скажам, у нас ёсць спіс пакупак. Мы збіраемся пайсці ў краму, і мы хочам напісаць, што мы будзем прыносіць. Памятайце, што гэта нешта гіпатэтычнае, ніхто не павінен браць камп'ютэр у краму, каб пайсці па ежу. У любым выпадку, гэта наш спіс:

1 банан 4 яблыкі 2 кілаграмы цукру 1 літр вады

 

Гэта вельмі просты спіс пакупак. Але мы збіраемся дамовіцца. Па-першае, я думаю, што яшчэ некалькі бананаў было б не дрэнна. Паколькі нам падабаецца эстэтыка, мы зменім малую яблыкі пакінуць яе як банан і мы заменім назвы адзінак іх скарачэннямі.

Такім чынам, пачнем. Паколькі мы хочам зрабіць рэзервовую копію нашага арыгінальнага спісу, мы робім копію з 4yy і мы ўстаўляем яго ніжэй з p. Націсніце Ctrl-a пару разоў, каб павялічыць колькасць бананаў і перайсці да канца наступнага слова з e. Спускаемся на другі радок, робім Fm каб перайсці да слова яблыкі і націсніце ~ (AltGr-4 на маёй клавіятуры), каб літара змянілася на верхні рэгістр. Мы робім j каб перайсці да наступнага радка, і мы з'явімся ў k of кг з b. Мы выходзім са звычайнага рэжыму, набіраючы тэкст cw і напісанне заменнага слова на кілаграмы, якое будзе кг. Націскаем ESC, вяртаемся да звычайнага рэжыму і зноў j зрабіць тое ж самае з Літр. Гатовы. Вось так выглядае наш спіс зараз.

3 бананы 4 яблыкі 2 кг цукру 1 л вады

Магутнасць

Давайце падвядзем вынікі вышэйапісанага ў гэтым:

4yy G p 2Ctrl-A e Fm ~ jb cw kg ESC jb cw L ESC

Я паважаў некаторыя прасторы, каб зрабіць гэта зразумелым, але звычайна гэта не робіцца. Такі заказ робата прымушае нас шмат думаць пра яго карыснасць. Але напэўна гэта зрабіць хутчэй, чым рухацца мышшу, выбіраць, капіраваць, устаўляць, выдаляць і гэтак далей.

Рэдактары з такой доўгай гісторыяй, як Vim або Emacs, могуць рабіць падобныя рэчы, таму што яны распрацоўваюцца гадамі і маюць вельмі дакладныя ідэі, як гэта рабіць.

Крывыя навучання

Так, яны крутыя. Але для гэтага і патрэбныя такія ініцыятывы, як Cream, якая забяспечвае цалкам гатовае да выкарыстання асяроддзе Vim адразу, не трэба змагацца з рэжымамі і іншым, а таксама рэжым гуру, пашырэнне Emacs, якое - наколькі я ведаю - дапамагае пачаткоўцам.

Рэжым гуру з'яўляецца часткай Emacs Prelude, калекцыі пашырэнняў што палегчыць вам калі вы хочаце навучыцца

Пашырэнні

Паколькі яны больш распаўсюджаныя рэдактары, чым многія сучасныя рэдактары, і маюць свае ўласныя мовы пашырэнняў, вы можаце знайсці каляровыя тэмы, убудовы і многае іншае. Ёсць такія цікавыя рэчы, як:

Здаецца, лягчэй (альбо больш прыемна) запраграмаваць пашырэнні ў Emacs Lisp, чым у VimScript. Я маю на ўвазе, што гэта функцыянальная мова, якую інтэрпрэтуе ядро, прызначанае для гэтага, супраць імператыўнай мовы, прызначанай для наладкі і пашырэння.

Заключэнне

Паглядзі! Вам нічога не каштуе, і тое, і іншае бясплатнае праграмнае забеспячэнне распаўсюджваецца бясплатна. Яны павінны знаходзіцца ў сховішчах усіх дыстрыбутываў, вядомых чалавеку, і іх можна знайсці нават у шкодных уласных сістэмах. Шмат чаго яшчэ можна папрасіць.

І, нарэшце, калі вы былі здзіўлены, чаму я ў загалоўку замест "y" паставіў "e" перад "Emacs", гэта таму, што мне гэта падаецца лепш. Нешта накшталт / í-macs /. Я змог пазбавіць сябе ад арфаграфічных праблем, змяніўшы пазіцыю, але мне вельмі падабаецца, каб гэта рабіў Вім 😀


Змест артыкула адпавядае нашым прынцыпам рэдакцыйная этыка. Каб паведаміць пра памылку, націсніце тут.

27 каментарыяў, пакіньце свой

Пакіньце свой каментар

Ваш электронны адрас не будзе апублікаваны.

*

*

  1. Адказны за дадзеныя: Мігель Анхель Гатон
  2. Прызначэнне дадзеных: Кантроль спаму, кіраванне каментарыямі.
  3. Легітымнасць: ваша згода
  4. Перадача дадзеных: Дадзеныя не будуць перададзены трэцім асобам, за выключэннем юрыдычных абавязкаў.
  5. Захоўванне дадзеных: База дадзеных, размешчаная Occentus Networks (ЕС)
  6. Правы: у любы час вы можаце абмежаваць, аднавіць і выдаліць сваю інфармацыю.

  1.   Гнілі87 сказаў

    Я выкарыстоўваю толькі nano і толькі для рэдагавання некаторых файлаў 0.0

    1.    анты сказаў

      Гэта ў асноўным аргумент для іх выкарыстання. Я бачу, што многія аддаюць перавагу не спрабаваць іх, і я пачаў пісаць штосьці, каб заахвоціць. Вось і ўсё.

      (Я ведаю, што гэта слабы элемент)

      1.    Даміян Рывэра сказаў

        Гэта зусім не лянота, emacs і vim - выдатныя тэкставыя рэдактары, я аддаю перавагу ім (vim) замест IDE

        прывітанне

        1.    анты сказаў

          Дзякуй. Цяпер, падумаўшы, я выпадкова даў савок. Згаданы мной "распаўсюд" выглядае так, быццам ён выйшаў сёння.

    2.    KZKG ^ Гаара сказаў

      ага-ха-ха, са мной гэта адбываецца тое ж самае, з нана я застаўся 😀

  2.   Эаландра сказаў

    Ну нядаўна мне спатрэбілася telnet файл у кропку доступу з dd-wrt, і я павінен быў запомніць vi.

  3.   MSX сказаў

    1. " ідзе выдавецкая вайна. »
    ПАМЫЛКА!
    Vim - гэта рэдактар, Emacs - гатовы да выкарыстання адронны калайдэр на вашым кампутары!

    2. Выкарыстанне Cream (ajjj) або любога віду "памочніка" для Vim або Emacs - гэта тое ж самае, што і ўстаноўка Manjaro, і выгляд, што вы ўсталявалі і выкарыстоўваеце Arch - з магчымым агаворкай, што памочнік не змяняе сутнасці Vim або Emacs і Manjaro Манджара, але не арх.

    Калі вы сапраўды хочаце ўкласці яго ў Emacs, ёсць некалькі цікавых сайтаў:
    http://emacsrocks.com/
    http://www.masteringemacs.org/
    http://batsov.com/prelude/
    http://lisperati.com/casting.html

    1.    анты сказаў

      Emacs - гэта перакладчык Lisp з дадатковымі магчымасцямі для рэдагавання тэксту.
      Крэм можа быць любым, што заўгодна, але ён ёсць, каб пачаткоўцы не ўрэзаліся непасрэдна ў мадальную сцяну рэдагавання.
      Спачатку Emacs прасцей, бо так, пішыце ў першы

  4.   Анубіс сказаў

    [рэжым falmewar ON]

    Emacs, у той аперацыйнай сістэме, якая праз 35 гадоў усё яшчэ не хапае добрага тэкставага рэдактара 😛

  5.   Ксыкіз сказаў

    "Vim і Emacs". Тое, што "е" ў загалоўку (і дзесьці ў тэксце), выкарыстоўваецца няправільна ...

    1.    Ксыкіз сказаў

      І, дарэчы, я для ўсяго ўжо выкарыстоўваю vim. Я пачаў выкарыстоўваць яго ў мінулым годзе, і цяпер ён стаў для мяне незаменным. Акрамя таго, гэта перавага ў тым, што vi папярэдне ўсталяваны ва ўсіх (ці, па меншай меры, амаль ва ўсіх), што практычна аднолькава ў апрацоўцы, таму, ведаючы, як ім карыстацца, вы можаце рэдагаваць файлы ў любым дыстрыбутыве, мае ён X11 ці не.

      Я паспрабаваў Emacs, але яны здаваліся нязручнымі камбінацыямі клавіятуры, таму я спыніўся на Vim

    2.    анты сказаў

      Ён ужо растлумачыў гэта дну. Для мяне тое, што трэба выкарыстоўваць e таму што фраза гучыць як / vim і i-macs /, маючы на ​​ўвазе, што y змяняецца на e, калі наступнае слова пачынаецца з гука i.
      Аднак было значна элегантней паставіць яго назад і пазбегнуць праблем, але невялікія эксперыменты нікому не шкодзяць.

      1.    Ксыкіз сказаў

        Добра, я не паспеў прачытаць увесь артыкул з-за недахопу часу ха-ха.

        У любым выпадку гэта памылка напісання, наколькі гэта лепш гучыць.

        1.    анты сказаў

          Добра. Не больш, чым гэтую дзіўную рэч, якую трэба крытыкаваць, не скончыўшы чытаць.
          Я спадзяюся, што вы можаце мяне прабачыць за гэты недахоп. Здаецца, у аглядзе яны таксама прайшлі яго, таму яны павінны са мной пагадзіцца, але варта перагледзець некаторыя спасылкі з боку RAE на замежныя словы. Яны не перакладаюцца.

          1.    Ксыкіз сказаў

            Так, я не скончыў, я прызнаю памылку, але апошнім часам у мяне няма часу, і я не магу быць побач, як хацелася б. На самай справе надзвычай дзіўна, што ў рэшце рэшт я мог бы быць тут пару імгненняў сёння.

            Што тычыцца замежных слоў, то злучнік "і" не з'яўляецца замежным словам, хоць emacs і ёсць. З майго разумення (што я таксама не паспяваю праверыць зараз), emacs павінен чытаць emacs, незалежна ад таго, колькі мы яго чытаем на англійскай мове. У адваротным выпадку было б цяжка прымяніць правілы правапісу, таму што, калі вы размаўляеце па-іспанску, вам не трэба размаўляць па-англійску ці па-нямецку, і таму вы не павінны ведаць, як гэтыя словы вымаўляюцца на гэтых мовах.

            Ва ўсякім разе, гэта была не крытыка, а толькі каментарый, і я кажу вам, што вашы артыкулы мне заўсёды падабаюцца 😉

        2.    анты сказаў

          Дзякуй. Зваротная сувязь і канструктыўная крытыка служаць нам усім.

  6.   дыязепан сказаў

    Мне не падабаецца імі карыстацца, але на курсе пашыранага функцыянальнага праграмавання вам трэба было зрабіць Vim-падобны рэдактар, але ў haskell.

  7.   Tyo100 сказаў

    Я аддаю перавагу vi або vim, таму што ён найбольш універсальны, бо працуе аднолькава ў любой АС, і ўсе * nix яго ўключаюць, і я маю на ўвазе ўсіх, ад GNU / Linux, HP-UX, Solaris, AIX, BSD да скарочаных версій Linux як dd-wrt.

  8.   Абімаэль Мартелл сказаў

    Я праграмую на 100% з VIM (Ruby, PHP, Javascript, Coffescript, CSS і многае іншае)
    вось дыстрыбутыў для рубінавых праграмістаў, ён вельмі поўны і мае шмат карысных рэчаў, прывітанне (https://github.com/carlhuda/janus)

    1.    Даміян Рывэра сказаў

      Гэта тое, што я кажу (вышэй), я выкарыстоўваю vim для mono, java, perl, bash і python, толькі што неінтэрпрэтаваныя мовы павінны выкарыстоўваць тэрмінал для кампіляцыі, у FreeBSD я выкарыстоўваю (і выкарыстоўваю) шмат VI, які з'яўляецца рэдактарам родны, але таксама ўсталяваць ee і joe вельмі добра (падобна на nano), у Gentoo добра, што ён прыносіць nano, але я ўжо скампіляваў vim, і мне гэта вельмі падабаецца! Гэта лепшы рэдактар, які існуе і зменены ў адпаведнасці з вашымі патрэбамі. Гэта ідэальны інструмент для адміністравання сістэмы

      прывітанне

  9.   Маціяс (@ W4t145) сказаў

    Vim Vim Vim!, Назаўсёды, ён працуе на ўсё і дзе заўгодна, я ніколі не мяняю яго

  10.   нана сказаў

    Ах, я не ведаю, я лянуюся і выкарыстоўваю Sublime xD

  11.   Даніэль Рохас сказаў

    Я заўсёды выкарыстоўваю Vim, мне гэта вельмі падабаецца, і мне падаецца вельмі практычным і зручным 😀

  12.   Драгнель сказаў

    Проста VIM, неабходны ў маім паўсядзённым жыцці.

  13.   Гвіда ролон сказаў

    vim ПРАВІЛА! але «ed» ROCKS !!!!,

  14.   напор сказаў

    Vim orange піша выдатныя vim cristal піша нармальныя, vim, vim, vim ...

  15.   ёгурбланка сказаў

    Вы павінны даведацца розніцу паміж "чаму", "чаму", "чаму" і "чаму". Мужчына, ва ўсім тэксце вы не далі ніводнага.

bool (праўда)