Portál AbcLinuxu, 15. července 2025 09:37


Dotaz: Vim, BufNewFile a buffer navic

12.9.2004 18:50 Přemek Jordák | skóre: 12 | Beroun
Vim, BufNewFile a buffer navic
Přečteno: 147×
Odpovědět | Admin
Dobry den, pokud pouziju ve ~/.vimrc nacteni sablony pomoci:

autocmd BufNewFile *.tex :0r ~/.vim/templates/start.tex

a potom, kdyz pustim vim:

vim file1.tex file2.tex

tak se mi otevrou tri buffery.

Problem 1:
Ve tretim bufferu je otevren primo soubor sablony start.tex , o jehoz editaci nestojim.

Problem 2:
V prvnich dvou Bufferech je vlozena sablona start.tex, ale na konci je prazdny radek navic.

Prosim poradte, dekuju
Blogy neprohlížím, nepíši a ani se jim valně nesměji
Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

12.9.2004 19:22 unchallenger | skóre: 69 | blog: unchallenger
Rozbalit Rozbalit vše Re: Vim, BufNewFile a buffer navic
Odpovědět | | Sbalit | Link | Blokovat | Admin
1. Mně to nedělá.

To znamená, že se to bije s něčím jiným, co máš v ~/.vimrc, nebo nějakým standardním filetype plug-inem. Těžko takhle říci s čím.

2. Na konci není žádný prázdný řádek navíc.

Když otevřeš nový soubor, obsahuje jeden prázdný řádek, protože kursor musí někde být. Poslední řádek šablony končí \n, tj. tvoří úplný řádek, takže ten původní prázdný tam samozřejmě po :0r je pořád. Řešení je vytvořit šablonu, která nemá na konci posledního řádku \n. I když mi přijde, že ten ,prázný` řádek je přesně tam, kde začneš psát, a že když ho tam nebudeš mít, tak ho jako první věc vzápětí vytvoříš... no ale každý svého štěstí strůjcem.
12.9.2004 22:35 Přemek Jordák | skóre: 12 | Beroun
Rozbalit Rozbalit vše Re: Vim, BufNewFile a buffer navic
1. Mne to dela ...

2. Vyreseno

Pokud je to jen nejaka hlavicka tak mi to nevadi, ale u techto formatu tex,html pisu primo do sablony \begin{document}
\end{document}
adekvatne k html
takze po skonceni prace tam ten prazdy radek bude taky. Ale odstranil jsem \n ze sablony a je to ok. Diky moc
Blogy neprohlížím, nepíši a ani se jim valně nesměji
12.9.2004 23:14 unchallenger | skóre: 69 | blog: unchallenger
Rozbalit Rozbalit vše Re: Vim, BufNewFile a buffer navic
Ad 1. Zkus vytvořit vimrc, který bude obsahovat jen ten autocommand. Pokud ti to stále bude dělat, upgradni vim -- mám 6.3.0 a nedělá mi to

vim file1.tex file2.tex

a vidím:
:ls
  1 %a   "file1.tex"                    line 1
  2      "file2.tex"                    line 0
Pokud to přestane, což očekávám, tak je zapotřebí zjistit, co vytváří ten další buffer (tipuji nějaký autocommand na *Read*), ale to asi prostě musíš vyzkoušet.
13.9.2004 09:57 Přemek Jordák | skóre: 12 | Beroun
Rozbalit Rozbalit vše Re: Vim, BufNewFile a buffer navic
Nainstaloval jsem 6.3 a dela to porad. Ale je to asi nejeka moje chyba. Pokud si necham vypis jako ty tak mi to taky hlasi:

:ls
  1 %a   "file1.tex"                    line 1
  2      "file2.tex"                    line 0
Pokud jedu po bufferech :bn tak mi to na ten treti buffer taky nezajede. Ale kdyz to udelam pomoci :b1 :b2 :b3 /mam buffery namapovane na F map <F1> :b1<cr> atd./ tak :b3 je ta sablona. Zkusil jsem vyhazet vsechno z .vimrc a smazal jsem i tyhle soubory ve sdilenem adresari vimu, ale nepomohlo to. Asi se s tim budu muset smirit...
Blogy neprohlížím, nepíši a ani se jim valně nesměji
13.9.2004 10:36 unchallenger | skóre: 69 | blog: unchallenger
Rozbalit Rozbalit vše Re: Vim, BufNewFile a buffer navic
Aha, on tam je, ale skrytý, :ls! ho ukáže.

Úplně se zbavit bufferu lze jen :bwipe (což je extrémní funkce), i :bdel ho jen skryje, takže :bwipe ~/cosi/start.tex.

Nicméně při tomto přístupu tě stejně rychle dostane do potíží, že vim nerecykluje čísla bufferů, takže brzy vytečeš z rozsahu kláves Fn; smazání bufferu 3 neučiní F3 použitelným.

Já přepínám Alt-Left, Alt-Right na sousední a jsem s tím spokojen (:bnext skáče jen mezi ,listed` buffery). Nebo si můžeš napsat funkci, která v cyklu od 1 do bufnr("$") projede buffery, odpočítá si správný buffer jen z bufexists() && buflisted() a přepne se do něj, a namapovat ji na Fn.
13.9.2004 18:05 Přemek Jordák | skóre: 12 | Beroun
Rozbalit Rozbalit vše Re: Vim, BufNewFile a buffer navic
OK,tak jsem si to taky premapoval. Ale pres Ctrl. Alt+Up /to mam na :bl[ast]/ mi ve WMakeru prehazuje otevrena okna. Diky za pomoc
Blogy neprohlížím, nepíši a ani se jim valně nesměji

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.