Edytor dla programisty. Czasem przywołuje się jego amigowe korzenie, z tego powodu na początek zanurzymy się odrobinę w historii.

Zaczęło się od uniksowego edytora vi. Bram Moolenaar po kupnie Amigi chciał go używać na niej, a ponieważ nie było dobrego vi dla Amigi wziął do przeróbki edytor Stevie z Atari ST. Tak się złożyło, że został on przeportowany przez Tonyego Andrewsa na Unixa, OS/2 oraz Amigę, więc Bram użył tych kodów źródłowych. Początkowo edytor Vim miał rozwinięcie Vi IMitation – wersja 1.0 na Amigę w 1988 roku. Pierwsze publiczne wydanie w 1991 to Vim 1.14, dyskietka w kolekcji Freda Fisha numer 591.
Wersja 1.22 wyszła też na Unixa, a że liczba funkcji prześcignęła pierwowzór, więc nazwę zmieniono na Vi IMproved.
Składnia poleceń jest taka sama jak w vi, przy czym ciągną się historyczne pamiątki jak kierunkowe klawisze h, j, k i l. Ta osobliwość pochodzi od klawiatury ADM-3A, która miała nadrukowano strzałki na tych literach. To na ten terminal w latach 70. Bill Joy (późniejszy założyciel Sun Microsystem) napisał vi. Program rozwijał się na tyle dobrze, że dzisiaj w zasadzie użycie pierwotnego vi ma niewielki sens. Różnice są fundamentalne, dość wspomnieć że vi ma jednokrotne cofnięcie (Vim domyślnie tysiąckrotne). Vim ma także kolorowanie składni, ale to nie jest zwykły edytor programistyczny.

Problemem jest wysoki próg wejścia wynikający ze sposobu obsługa Vima. To ciągle edytor tekstowy, właściwie konsolowy, choć istnieje wersja gvim. Prawdziwym problemem jest istnienie kilku trybów pracy, a wszystkich komend i kombinacji klawiszy jest multum. Trudność obsługi edytora jest legendarna, nawet istnieją dowcipy na ten temat. Na przykład: jak stworzyć dobre losowe hasło – posadzić programistę od front-endu przed ekranem i poprosić o zapisanie pliku i wyjście z programu.

Wykres z ankiety na meta.stackoverflow.com z 2017 r. Widać, że użycie Vima wyraźnie spada dla osób z mniej niż 10-letnim doświadczeniem w programowaniu

Dobrze jest przerobić samouczek – odpowiednia komenda w terminalu to vimtutor. Istnieje atrakcyjniejsza formy nauki – strona VIM Adventures1, na której poprzez grę można nauczyć się poleceń. Jest też wiele kursów wideo i różnych samouczków, ponieważ Vim jest mimo wszystko dosyć popularny.

Wśród wielu internetowych żartów, grafik i memów powiązanych z Vimem można też znaleźć autentyczną publikację. Ta niewielka książeczka (jest w Amazonie) zajmuje się tym, jak wyjść z Vima.

Sam Vim jest wysoce konfigurowalny, sercem jest vimrc. Taką konfigurację można mieć potem dostępną i pod Windowsem, pod Macem, pod konsolą na serwerze po SSH, wszędzie edytor skonfigurowany pod siebie, super sprawa. Pełnoprawnym IDE staje się po zainstalowaniu wtyczek. Najlepszym miejscem jest strona VimAwesome2.

Jak wygląda bieżąca amigowa wersja? Ola Söder przygotował dla systemów AmigaOS 4, MorphOS oraz AROS port3 bazując na źródłach wersji 8.x, przy czym jest wyposażony przez autora w interfejs użytkownika oparty na MUI.

Vim 8.1 MUI pod AmigaOS 4.1

Czy Vim jest dla nas ważny? Na czym polega jego wartość, skoro jest trudny w obsłudze? Fakty są takie, że sam edytor Vim występuje na większości systemów operacyjnych. Mamy obecnie współczesną wersję na poziomie wiodących spośród nich. Te dwie rzeczy oznaczają, że możemy bez żadnych kompleksów na pytanie „w czym programujesz na Amidze?” odpowiedzieć „w Vimie” i nikogo to nie zdziwi. No, może troszkę, czemu aż tak ambitnie, skoro Vim jest taki trudny.

1 https://vim-adventures.com
2 https://vimawesome.com
3 http://aminet.net/search?query=VIM_8

’truman burbank’ – Amiga NG (8) 3/2019

—> do spisu artykułów

Dodaj komentarz