Vim Twist

gVim kolorowo

Vim świetnym edytorem jest. Ale pisanie setek linijek kolejnego arkusza stylów czy skryptu PHP warto by było sobie (wizualnie) uprzyjemnić. Twist jest zestawem kolorów dla Vima, a właściwie gVima, bo nie uwzględnia jego konsolowej odmiany, tylko graficzną. Prezentuje się następująco:

edycja skryptu PHP
edycja skryptu PHP
edycja arkusza CSS
edycja arkusza CSS

Edycja tekstu też wygląda ładnie… Oto zestaw kolorów Twist dla (g)Vima

HTML z Vimem

W wielu sytuacjach (na przykład podczas pisania artykułu na stronę internetową) wygodniej jest najpierw napisać tekst, a dopiero potem wprowadzić odpowiednie znaczniki HTML. Poniżej kilka przydatnych skrótów klawiaturowych, które można dodać do swojego pliku konfiguracyjne­go vimrc.

" at/ HTML shortcuts
vmap !s "zdi<strong><C-R>z</strong>
vmap !e "zdi<em><C-R>z</em>
vmap !h "zdi<h1><C-R>z</h1>
vmap !hh "zdi<h2><C-R>z</h2>
vmap !hhh "zdi<h3><C-R>z</h3>
vmap !hhhh "zdi<h4><C-R>z</h4>
vmap !hhhhh "zdi<h5><C-R>z</h5>
vmap !p "zdi<p><C-R>z</p>
vmap !q "zdi<q><C-R>z</q>
vmap !bq "zdi<blockquote><C-R>z</blockquote>

Przykładowe zastosowanie: by opatrzyć jakieś słowo znacznikiem <strong> wystarczy je zaznaczyć i wpisać !s, albo !hhh dla znacznika <h3>.

Wstawianie sygnaturki z datą

" at/ signature
imap Ss <CR>/* pseudo, <Esc>:read !date /T<Esc>:read !time /T<CR>kkkJJJ<Esc>A */
imap Ssh <CR><p style="color: #AAA">/*</span> pseudo, <Esc>:read !date /T<Esc>:read !time /T<CR>kkkJJJ<Esc>A /*</p>
imap Sdp <CR>"PO-Revision-Date: <Esc>:read !date /T<Esc>:read !time /T<CR>kkkJJJ<Esc>A+0100\n"

Użytkownicy Linuksa powinni usunąć fragment /T<Esc>:read !time /T.

Teraz wyobraźmy sobie, że jesteśmy w trybie wprowadzania znaków i chcemy wstawić sygnaturkę. W tym celu wciskamy klawisze Ss i w miejscu kursora pojawia się nasze pseudo oraz aktualny czas.

Jeśli wciśniemy Ssh wstawione zostaną dodatkowo znaczniki HTML. Jeśli natomiast mamy już sygnaturkę, ale chcemy ją zamienić na taką, która zawierać będzie aktualny czas, to przypominamy sobie (albo dowiadujemy się), że aktualną linię usuwa klawisz S i wciskamy SSs (byle nie w trybie wprowadzania znaków).

Ostatnia linijka przyda się tłumaczom wykorzystującym pliki .po. Po wpisaniu SSdp aktualna linia zostanie zamieniona na linijkę w formacie PO z informacją o czasie dokonania ostatnich zmian.

Ale to wszystko SSsprytne, prawda?

Vim z Operą

Oto najdoskonalsza metoda edycji pól tekstowych na stronach w Vimie, jaką udało mi się osiągnąć. Przydaje się, gdy chcę opatrzyć długi tekst wieloma znacznikami lub wykorzystać któreś z bardziej zaawansowanych opcji Vima. Powstała z myślą o Vimie dla Windows, ale treść większości punktów przyda się i pod Linuksem.

Polega ona na skopiowaniu zawartości pola w Operze, odpaleniu Vima, automatycznym wklejeniu do niego zawartości schowka oraz – po zapisaniu pliku – automatycznym skopiowaniu zmodyfikowanego tekstu z powrotem do schowka.

  • utwórz plik tekstowy o zawartości (dostosuj ścieżki): C:\Vim\vim70\gvim.exe -c "normal ggdG\"*p" C:/vim/vim.paste.txt
  • nadaj mu nazwę gvimp.bat i umieść gdzieś w zasięgu Windows (np. w C:\Windows) lub w innym miejscu, jednak dodając ów katalog do listy ścieżek Windows (konieczne ustawienie zmiennej środowiskowej Path)
  • utwórz plik vim.paste.txt w podanej wcześniej lokalizacji. Będzie on przechowywał teksty zmodyfikowane w Vimie
  • otwórz plik konfiguracyjny menu Opery (więcej informacji w Sposobach na Operę)
  • w sekcji [Edit Widget Popup Menu] dodaj komendę Item, "gVim"="Select all & Copy & Execute program, "gvimp""

Od tej pory po prawokliknięciu w polu tekstowym, w menu będzie widoczna opcja gVim. Pamiętaj, by zapisać edytowany w Vimie plik. Skopiowaną automatycznie zawartość tego pliku do Opery będziesz już musiał wkleić sam.