UNIX posiada szeroką gamę edytorów, które mogą manipulować zawartością plików tekstowych. Są to edytory liniowe, takie jak ed i ex, a następnie są edytory ekranowe, takie jak vi, vim i Emacs. Vi jest standardowym i oryginalnym pełnoekranowym edytorem tekstu z rodziny Linux, który został pierwotnie zaprojektowany dla systemów UNIS. Vim jest ulepszoną wersją edytora vi napisaną i utrzymywaną przez Brama Moolenaara. Vim oznacza „vi ulepszony”. Polecenia Vima i ich składnia są w pełni zgodne z vi. Przyjrzymy się niektórym kluczowym różnicom między nimi.

Czym jest Vi?

Vi to oryginalny standardowy UNIX-owy pełnoekranowy edytor tekstu, który przetwarza zawartość plików tekstowych, niezależnie od tego, czy pliki te zawierają dane, kod źródłowy, czy zdania. Jest to klasyczny i najpopularniejszy edytor tekstu w rodzinie Linuksa, który jest wbudowany w system operacyjny UNIX. Edytor Vi istnieje niemal od początku istnienia UNIX-a i niewiele się zmienił. Z czasem trafił do SUS (Single UNIX Specification) i POSIX, ale został udostępniony dopiero w 2002 roku. Vi to skrót od „visual editor” i jest dostępny w niemal identycznej formie na każdym systemie UNIX. Przed powstaniem Vi standardowym edytorem tekstu w systemie UNIX był „ed”. Edytor liniowy sprawiał, że trudno było zobaczyć kontekst swojej edycji. Opracowano więc superset ed o nazwie „ex”, który wprowadził funkcję edycji wyświetlanej, pozwalającą na pracę z całym ekranem, a nie tylko z linią. Wszystkie polecenia działające w edytorze ex działają również w edytorze Vi.

Co to jest Vim?

Vim to sklonowana wersja oryginalnego edytora Vi lub można powiedzieć, że bardziej ulepszona i zaawansowana wersja Vi. Stąd nazwa vi improved, czyli w skrócie Vim. Edytor Vim jest wysoce konfigurowalnym i stabilnym jak skała edytorem tekstu zbudowanym do efektywniejszej pracy nad edycją tekstu. Jest to ulepszona wersja edytora vi napisana i utrzymywana przez Brama Moolenaara. W większości nowoczesnych systemów vi został zastąpiony przez vim. Vim jest potężnym edytorem tekstu i prawdopodobnie najczęściej używanym klonem vi z dodatkowymi funkcjami poza tymi dostarczanymi przez vi. Możesz dokonać pewnych złożonych edycji dość łatwo i szybko za pomocą vima, gdy już wiesz jak działa vim. Vim, jednakże, nie jest programem do formatowania tekstu; jest to raczej wyrafinowany edytor tekstu używany głównie do pisania kodu, krótkich notatek i wprowadzania danych do systemu formatowania tekstu. Zapewnia tak wiele sposobów na wykonanie po prostu dowolnego określonego zadania edycyjnego poprzez podzbiór poleceń, których musisz się nauczyć, aby opanować vima.

Różnica między Vimem a Vi

Podstawy

– Vi to standardowy edytor tekstu zaprojektowany pierwotnie dla systemu operacyjnego UNIX. Jest to klasyczny i najpopularniejszy edytor tekstu w rodzinie Linuksa, który jest wbudowany w system operacyjny UNIX. Jest to uniwersalny edytor tekstu Linuksa, który istnieje niemal od początku istnienia UNIX-a i od tego czasu niewiele się zmienił. Vim, skrót od Vi Improved, jest edytorem podobnym do vi, ale jest bardziej zaawansowany i potężny niż oryginalny vi. Vim jest wysoce konfigurowalnym i stabilnym jak skała edytorem tekstu zbudowanym do bardziej efektywnej pracy nad edycją tekstu.

Wielopoziomowy Undo

– Vim jest jednym z najbardziej w pełni funkcjonalnych edytorów w stylu vi- gdziekolwiek. Jedną z najlepszych cech edytora vim jest wielopoziomowe cofanie, co oznacza, że możesz cofać zmiany wiele razy. Jeśli przypadkowo usuniesz linię tekstu, następnie usuniesz drugą linię, a potem trzecią, możesz cofnąć każde z czterech usunięć. Przechowuje on zakładkę zmian dokonanych w bieżącej sesji. Z kolei edytor Vi nie obsługuje wielopoziomowego cofania i może cofnąć tylko ostatnie polecenie.

Podświetlanie składni

– Jednym z kluczowych punktów sprzedaży vima nad vi jest jego podświetlanie składni. Vim jest potężnym edytorem tekstu, który może być zaprogramowany do podświetlania składni w różnych kolorach. Jego formatowanie składni opiera się w dużej mierze na użyciu koloru, który w pełni docenia moc koloru w określaniu kontekstu. Jeśli edytujesz plik z formalną składnią, taką jak język programowania, możesz zobaczyć tekst w różnych kolorach, wszystkie określone przez kolor i składnię. Edytor Vi nie posiada tej funkcji podświetlania składni.

GUI

– Jednym z zauważalnych ulepszeń Vima jest graficzny interfejs użytkownika. Tradycyjnie, Vim działa wewnątrz terminala, bez graficznego interfejsu użytkownika (GUI). Obecnie Vim posiada własną wersję GUI o nazwie 'gvim’, która stanowi pomost do świata Vima. GVim oferuje solidne i rozszerzalne funkcje i cechy GUI. Główną zaletą korzystania z edytora tekstu opartego na GUI jest to, że można używać myszy do wybierania menu, podświetlania tekstu, wycinania i kopiowania tekstu oraz uruchamiania specjalnych wtyczek. Jednym z minusów edytora vi był brak GUI, który stał się ostatecznym atutem edytora vim.

Podsumowanie Vim vs. Vi Editor

W skrócie, vim jest nowoczesną ulepszoną wersją klasycznego edytora vi, ale nie do końca tak potężną jak Emacs. Vim jest edytorem tekstu podobnym do vi i tak wiele więcej. Jednym z największych punktów sprzedaży Vima jest jego funkcja podświetlania składni, która pozwala zobaczyć tekst w różnych kolorach. Mimo że Vim był początkowo konsolowym, niegraficznym edytorem tekstu, teraz ma także wersje graficzne, czego brakuje oryginalnemu edytorowi vi. Inne cechy Vima to mechanizm poziomego przewijania ekranu, wsparcie dla narzędzi programistycznych, dostęp do historii wiersza poleceń, budowanie rozszerzeń i makr itp. Te dodatkowe cechy dają vimowi przewagę nad oryginalnym edytorem vi.