Edytor Vi - Politechnika Rzeszowska
Transkrypt
Edytor Vi - Politechnika Rzeszowska
Zakład Systemów Rozproszonych Politechnika Rzeszowska Moduł 5: Wybrane programy użytkowe – Edytor Vi Edytor Vi uruchamiany jest w oknie terminala. Przy jego pomocy możemy dokonywać następujących operacji: Tworzenie nowych plików; Modyfikowanie istniejących plików; Przeszukiwanie fragmentu tekstu w pliku; Zmiana fragmentu tekstu na inny; Przenoszenie lub kopiowanie fragmentu tekstu w pliku; Usuwanie fragmentu tekstu w pliku. Edytor ten działa w dwóch trybach pracy: Tryb wstawiania: w tym trybie litera jest dodawana do tekstu w miejscu wskaźnika; Tryb poleceń: w tym trybie wydajemy komendy, oraz edytujemy plik (np. litera x kasuje znaki). Edytor Vi uruchamia się poleceniem vi: Rysunek 1. Uruchomienie edytora Lub wyszczególniając istniejący plik do edycji, albo też nowy do utworzenia: Rysunek 2. Uruchomienie pliku do edycji, lub tworzenie nowego Rysunek 3. Okno edytora Vi Możliwe jest również podanie listy plików do edycji. Po zakończeniu edycji jednego, uruchomi się edycja kolejnego. Poniższe komendy są wykonywane w trybie poleceń. Tabela 1. Opcje edytora Vi Opcje / ? : ! ZZ h j k l nG w b dw ndw d^ dd dG D x nx nY p P Znaczenie Wykonuje przeszukiwanie pliku do przodu Wykonuje przeszukiwanie pliku wstecz Wykonuje polecenia edytora ex w bieżącym wierszu Wykonuje powłokę w ramach vi Zapisuje plik i zamyka edytor Przesuwa kursor w lewo Przesuwa kursor w dół Przesuwa kursor w górę Przesuwa kursor w prawo Przesuwa kursor do n-tej linii Przesuwa kursor to następnego słowa Przesuwa kursor o jedno słowo wstecz Usuwa słowo Usuwa n słów Usuwa wszystkie słowa do początku linii Usuwa bieżącą linię Usuwa wszystkie linie do końca pliku Usuwa wszystkie słowa do końca linii Usuwa bieżący znak Usuwa n znaków w prawo Szarpie n linii do bufora Wkleja po prawej stronie kursora Wkleja po lewej stronie kursora Oddzielny zestaw poleceń, zwany poleceniami ex, mogą być wprowadzane przy użyciu dwukropka w połączeniu z jednym z poniższych poleceń. Tabela 2. polecenia ex Opcje :n :$ :s/a/b/g :%s/a/b/g :wq :q! Znaczenie Przesuwa kursor do n-tej linii Przesuwa kursor na koniec pliku Zamienia wszystkie wystąpienia fragmentu tekstu a, na tekst b w bieżącej linii Zamienia wszystkie wystąpienia fragmentu tekstu a, na tekst b w pliku Zapisuje plik i zamyka edytor Zamyka edytor bez zapisywania Opcje menu takie jak File, Edit, View itp. Są przeznaczone dla terminala, w edytorze Vi nie działają. Edytor Vi nie posiada takich elementów, wszystko jest obsługiwane za pomocą klawiatury. Wprowadzanie tekstu Domyślnie edytor uruchamia się z włączonym trybem poleceń. Do przełączania między trybami służy klawisz Esc. Tabela 3. Opcje wstawiania tekstu Opcje i a O o Znaczenie Wstawianie tekstu przed kursorem Wstawianie tekstu za kursorem Wstawianie tekstu tuż powyżej bieżącej linii, w nowym pustym wierszu Wstawianie tekstu tuż poniżej bieżącej linii, w nowym pustym wierszu Rysunek 4. Wprowadzanie tekstu Poruszanie się w pliku Ponieważ edytor Vi nie posiada paska przewijania, oraz nie wspiera myszki posiada zestaw klawisz służących do poruszania się w trybie poleceń. W systemach Solaris, do poruszania się w pliku można również wykorzystać klawisze strzałki. Jakby jednak nie działały, opcjonalne sterowanie przedstawia poniższa tabela. Tabela 4. Opcje poruszania się w pliku Opcje Znaczenie h j k l w b 0 (zero) $ ^F ^B ^D ^U 0G G W lewo W dół W górę W prawo Jedno słowo w prawo Jedno słowo w lewo Do początku linii Do końca linii Strona w przód Strona wstecz Połowa strony w dół Połowa strony w górę Pierwsza linia pliku Koniec pliku Wstawianie innych plików Wstawianie zawartości innych plików tekstowych odbywa się w trybie poleceń. Aby tego dokonać wciskamy klawisz „:”. Kursor przechodzi do lewego dolnego rogu terminala. Poniższy przykład wstawia zawartość pliku wstaw.txt do naszego pliku: Rysunek 5. Wstawianie zawartości pliku do innego pliku Rezultat operacji przedstawia poniższy rysunek Rysunek 6. Wstawianie innych plików Przeszukiwanie i podmienianie Operacja przeszukiwania i zmiany ciągu znaków przeprowadzana jest w trybie poleceń, komendy szukania wprowadzane są po „:” (dwukropku). Podstawową ideą jest to, że edytor ma: Przeszukać tekst w celu znalezienia starego wzorca; Zamian go na nowy; W edytorze vi służy do tego składnia: s/stary_wzorzec/nowy_wzorzec/ Jednakże powyższa komenda zamieni tylko pierwszy wzorzec w danej linii. Aby zmienić wzorzec we wszystkich liniach należy dodać selektor adresu precyzujący zasięg linii tekstu od pierwszej (1) do ostatniej ($) oddzielając znaki przecinkiem. Rysunek 7. Przeszukiwanie i podmienianie W powyższym przykładzie zastąpione zostają tylko pierwsze wystąpienia wzorca w linii. Aby zastąpić wszystkie wystąpienia we wszystkich liniach należy dodać jeszcze przyrostek g Rysunek 8. Zastąpienie wzorca w pliku Wynikiem operacji jest zamienienie wszystkich wystąpień litery b na literę w. Rysunek 9. Rozszerzone podmienianie Jeśli chcemy cofnąć operację wciskamy klawisz u, zaraz po jej wykonaniu. Zapisywanie plików Jeśli przy tworzeniu pliku podaliśmy już jego nazwę zapisywanie pliku odbywa się dwoma sposobami. Tabela 5. Opcje zapisywania plików Opcje :w :wq Znaczenie Zapisuje plik i pozostaje w edytorze Zapisuje plik i zamyka edytor Rysunek 10. Zapisywanie plików ZZ zapisuje plik, jeśli został zmieniony, a następnie zamyka edytor bez potrzeby wpisywania znaku : (dwukropka). Jeśli przy otwieraniu wprowadzono więcej plików, wystarczy użyć :w aby zamknąć obecny, oraz :n, aby przejść do następnego. Aby wyjść bez zapisywania zmian wpisujemy komendę: Rysunek 11. Zamknięcie edytora Jeśli jednak przy otwieraniu edytora nie podaliśmy nazwy, wystarczy ją podać po komendzie zapisu: Rysunek 12. Zapisywanie jako... Zadania do samodzielnego rozwiązania 1. Stwórz plik tekstowy o dowolnej nazwie zawierający kilka linijek tekstu, polecenie vi nazwa_pliku.txt; Rysunek 13. Wprowadzony tekst do pliku 2. Pomiędzy trzecią, a czwartą linijką utwórz pusty wiersz i wprowadź przykładowy tekst; Rysunek 14. Wprowadzenie nowego wiersza 3. Przejdź na początek linijki i usuń pierwszych 10 znaków, polecenie nx; Rysunek 15. Wynik polecenia 10x 4. Zapisz plik i wyjdź z edytora, polecenie :wq; Rysunek 16. Zapisanie pliku i wyjście z edytora 5. Stwórz drugi plik tekstowy o dowolnej nazwie, w treści wpisz swoje dane; Rysunek 17. Podgląd pliku dane.txt 6. Na koniec pliku wstaw zawartość wcześniej utworzonego pliku tekstowego, polecenie :r nazwa_pliku.txt; Rysunek 18. Połączenie obu plików 7. Zapisz plik nie wychodząc z edytora, polecenie :w; Rysunek 19. Wynik zapisywania pliku 8. Wybierając jedno słowo z utworzonego pliku, zamień wszystkie jego wystąpienia na inne dowolne słowo, polecenie :1,$s/a/b/g; Rysunek 20. Efekt podmiany wzorca 9. Zamknij edytor bez zapisywania zmian. Rysunek 21. Zamknięcie pliku bez zapisu