GNU/Linux >> Znalost Linux >  >> Linux

Zobrazit skryté speciální postavy ve Vimu

Setkali jste se někdy s problémem v souborech YAML, Python nebo jiných souborech, které zdůrazňují odsazení?

A později jste si uvědomili, že vše v souboru bylo správné, kromě odsazení a viděli jste, že tam byl řádek odsazený 3 mezerami místo 4 mezer?

To se stává často. Většina IDE umožňuje zobrazit speciální znaky a identifikovat konec řádku, mezery a tabulátory. Vim nestojí za žádným jiným IDE. Může vám také ukázat tyto skryté postavy.

Skryté postavy ve Vimu

Skryté postavy ve Vimu lze považovat za „bílá místa“. Níže jsou znaky, které Vim považuje za skryté kvůli lepší čitelnosti.

  • eol (konec řádku)
  • tab
  • trail (mezera před znakem nového řádku)
  • extends (znak v posledním sloupci ukazuje, že další řádek je pokračováním zalamování řádku)
  • precedes (znak v prvním sloupci ukazuje, že tento řádek je pokračováním předchozího řádku jako obtékání řádku)
  • conceal
  • nbsp (nerozlomitelný znak mezery)

Povolit viditelnost skrytých znaků

Chcete-li dočasně povolit viditelnost skrytých znaků, můžete použít následující příkaz.

:set list

Chcete-li tuto změnu zvrátit, můžete skryté znaky znovu skrýt pomocí příkazu uvedeného níže.

:set nolist

Jak můžete vidět, povolením možnosti seznamu je nyní $ znak označující nový řádek nebo konec řádku.

Chcete-li, aby tato změna byla trvalá, přidejte do svého souboru 'vimrc' následující řádek.

set list

Změnit skryté znaky

Když zapnete viditelnost postav, Vim má předdefinovanou sadu. Jak jste viděli na obrázku výše, povolte viditelnost pomocí set list , znak nového řádku byl označen znakem dolaru $ .

Ale co když znak dolaru nechcete? Co když chcete, aby konec řádku označoval jiný znak?

Níže je uveden příklad, jak můžete pro každou skrytou postavu použít různé znaky.

:set listchars=eol:^,tab:-,trail:!,extends:>,precedes:<

Znak, který chcete použít k označení konce řádku (eol), je třeba napsat za eol: ve výše uvedeném příkladu příkazu.

Pokud se podíváte na video, zkopíroval jsem mezery a vložil je na úplný konec řádku (také známé jako "koncové mezery") a nyní se zobrazují jako ! vykřičníky.

Všimněte si také, jak je výchozí eol znak změněn z $ symbol dolaru na ^ symbol circumflexu.

Pokud chcete, aby to bylo trvalé, můžete přidat stejný příkaz, který jste spustili do svého „vimrc“, následovně:

set listchars=eol:^,tab:-,trail:!,extends:>,precedes:<

Závěr

Tento článek popisuje, jak povolit (a zakázat) viditelnost skrytých znaků. Také si projdeme, jak můžete změnit, jaké symboly označují přítomnost skryté postavy.

Pokud se chcete naučit víc než jen základy Vim, vřele doporučuji použít tento program od Jovica Ilic.


Linux
  1. Výzva terminálu přepíše aktuální řádek?

  2. Může Sed nahradit nové řádkové znaky?

  3. Zobrazit pouze skryté soubory (soubory s tečkami) v aliasu Ls?

  1. Co znamenají speciální postavy v Echo {a..z}?

  2. Jak zobrazit čísla řádků ve vi/vim?

  3. vim:příkaz nenalezen

  1. Počítání znaků každého řádku s Wc?

  2. Jak psát speciální znaky??

  3. Zobrazit speciální znaky v Unixu při použití příkazu 'less'