Archive for category Ciekawostki

Vim: sortowanie wierszy w kolejności losowej

Do wykonania miałem bojowe zadanie: przygotowanie testu. Nic wielce skomplikowanego, ot pytanie wraz z kilkoma odpowiedziami. Pojawił się mały problem: trzeba odpowiedzi ustawić w jakiejś losowej kolejności w pliku tekstowym. Niby nic wielce trudnego, można od samodzielnie to zrobić, jednak łatwiej będzie to trochę automatyzować :).

Na szczęście zadanie to jest trywialne w przypadku użycia Vima. Posiada on odpowiednie polecenie: :sort (więcej można przeczytać wydając komendę :help sort), która pozwala na automatyczne posortowanie wybranych wierszy. Niestety, nie obsługuje ustawienia ich w kolejności losowej. Z pomocą natomiast może tutaj przyjść polecenie systemowe sort wywoływane z parametrem -R (przynajmniej w wersji 8.5 aplikacji, starsze wersje mogą tego przełącznika nie obsługiwać).

W moim przypadku procedura była następująca:

  • zaznaczenie wybranych linii
  • wydanie polecenia :!sort -R
  • Sortowanie wierszy

    Sortowanie wierszy

    Wiersze ułożone w kolejności losowej

    Wiersze ułożone w kolejności losowej

Źródła

Tags: , ,

Vim – nawigacja po długich liniach

Jeżeli pracujemy w Vimie z plikiem tekstowym zawierającym długie linie tekstu, możemy spotkać następująca niedogodność: jeżeli przemieszczamy kursor (w dowolnym trybie pracy) pomiędzy liniami, to zawsze przeskakuje tak naprawdę nie tyle pomiędzy liniami tak jak je widzimy na ekranie, ale między poszczególnymi akapitami (czy naciśnięcie strzałki w dół przeniesie nas do linii występującej po znaku nowej linii).

Takie zachowanie jest przynajmniej dla mnie jest lekko irytujące. Na szczęście istnieje możliwość przeniesienia się do następnej linii, wystarczy w normalnym trybie zamiast klawisza j (przeniesienie kursora w dół) wybrać kombinację gj. Jak dla mnie jest to jednak rozwiązanie dosyć niewygodne. Problem można jednak łatwo rozwiązać, zmieniając odpowiednio mapowania standardowych klawiszy nawigacyjnych i umieścić w pliku konfiguracyjnym (np. ~/.vimrc) następujące definicje:

23
24
25
26
27
28
29
30
31
32
33
" Nawigacja pomiędzy długimi liniami
nnoremap j gj
nnoremap k gk
nnoremap  gj
nnoremap  gk
vnoremap j gj
vnoremap k gk
vnoremap  gj
vnoremap  gk
inoremap  gj
inoremap  gk

Rozwiązuje to problem poruszania się po łamanych liniach.

Źródła

Tags: , ,

Blaski i cienie rekrutacji do firmy informatycznej

Filmy mówiące o procesie rekrutacji do firmy informatycznej.

Tags: , ,