Portál AbcLinuxu, 7. května 2025 19:59

Dotaz: BASH + ViM + Problém s neviditelnými znaky

6.6.2010 00:43 SKooDA | skóre: 3 | blog: Jen_tak_mimochodem | Velké Přílepy
BASH + ViM + Problém s neviditelnými znaky
Přečteno: 511×
Odpovědět | Admin
Dobrý den,

Můj problém spočívá v tom, že pokaždé když píši ve vimu nějaký script v bashi, hází mi to při použití funkce test (např: if [ "$a" -eq "$b" ] ) takovéto a podobné chyby:

./test.sh: řádek 13:  [: příkaz nenalezen

i když kód je v pořádku. Vždy stačí celý řádek znak po znaku přepsat a vše najednou funguje. Dříve se mi to stávalo především při kopírování kódu z prohlížeče, poslední dobou se mi to věak stává i když celý kód píši sám.

Mám podezření že tam nějakým mě nepochopitelným způsobem vkládám pevné mezery, nebo nějaké neviditelné znaky.

Nemá s tím někdo zkušenosti? Popř. nezná někdo nějaké rozšíření do vimu, které by nezalomitelné mezery zobrazovalo?

Pro úplnost:

Většinou používám gnome-terminal či tildu OS: Ubuntu 10.04 (ale stávalo se mi to i v gentoo) Vim 7.2
MyEgo@server:/home/www/myego.cz$ rm -r ./*
Nástroje: Začni sledovat (1) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

Fuky avatar 6.6.2010 01:10 Fuky | skóre: 52 | blog: 4u
Rozbalit Rozbalit vše Re: BASH + ViM + Problém s neviditelnými znaky
Odpovědět | | Sbalit | Link | Blokovat | Admin

Nazdárek Pavle, hoď do přílohy pro ukázku zmiňovaný soubor a Tvůj ~/.vimrc.

Mohlo by se Ti hodit:

-- RÁMO: psí tábor , ETriatlon: Výuka plavání
Fuky avatar 6.6.2010 01:14 Fuky | skóre: 52 | blog: 4u
Rozbalit Rozbalit vše Re: BASH + ViM + Problém s neviditelnými znaky

BTW: Tuším, že se jedná o stejnou chybu, se kterou jsem se setkal u Lennyho:

Lenny: Xorg - opakování kláves, nezalomitelná mezera

6.6.2010 15:21 buff | skóre: 10 | blog: buff
Rozbalit Rozbalit vše Re: BASH + ViM + Problém s neviditelnými znaky
Odpovědět | | Sbalit | Link | Blokovat | Admin
Taky se mi to stává. Pokud píšeš některé znaky s pravým Altem, tak by za to mohl moci právě on. Pravý Alt + mezerník vloží (alespoň na mojí české klávesnici) neviditelnou mezeru (snad právě nezalomitelnou -- nevím).
6.6.2010 18:27 Nikola Pajkovský | skóre: 16
Rozbalit Rozbalit vše Re: BASH + ViM + Problém s neviditelnými znaky
Odpovědět | | Sbalit | Link | Blokovat | Admin

$ head -n 3 .vimrc
let c_space_errors=1
highlight RedundantSpaces ctermbg=red
guibg=red match RedundantSpaces /\s\+$\| \+\ze\t/

Save the whales. Feed the hungry. Free the mallocs
6.6.2010 20:09 Ash | skóre: 53
Rozbalit Rozbalit vše Re: BASH + ViM + Problém s neviditelnými znaky
Jen doplním že toto neřeší problém, pouze to zobrazuje bílé znaky na zcela na konci řádku, za nimiž již nic nenásleduje, a pak mezery na začátku řádku za nimiž následuje tabelátor.

Aby to řešilo dotaz, je potřeba to upravit (např. na zobrazování tvrdých mezer v souboru).
6.6.2010 20:14 Ash | skóre: 53
Rozbalit Rozbalit vše Re: BASH + ViM + Problém s neviditelnými znaky
Takže něco jako
highlight TvrdeMezery ctermbg=red guibg=red
match TvrdeMezery / /
                   ^zde tvrdá mezera (asi by šla napsat v hex.)
6.6.2010 20:41 Ash | skóre: 53
Rozbalit Rozbalit vše Re: BASH + ViM + Problém s neviditelnými znaky
tvrdou mezeru v insert módu vložíte třeba Ctrl+V160, zápis v regexp /\xA0/ mi nějak nefunguje :(
6.6.2010 18:31 lok
Rozbalit Rozbalit vše Re: BASH + ViM + Problém s neviditelnými znaky
Odpovědět | | Sbalit | Link | Blokovat | Admin
Za mlada se mi toto parkrat stalo, kdyz jsem to psal na jinem stroji(pres ssh), ktery mel ale nastavenu jinou znakovou sadu, nez muj pouzivany emulator terminalu.

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.