Jak mogę zapobiec ukrywaniu symboli przez Vima w Markdown i Json?


17

To doprowadza mnie do szaleństwa

:set ft=text

Aby coś zobaczyć, w przeciwnym razie wszystkie linki znikną w przecenach i cytatach w JSON.

Jak wyłączyć to raz na zawsze?


1
Czy możesz opublikować zrzut ekranu tego, co masz na myśli? Ponadto, podczas edycji pliku markdown, zrobić :redir > foo, :hi(Przejrzyj wszystkich grup podświetleniem dociskowych przestrzeń), :redir endi dodać zawartość do nowo utworzonego foopliku tutaj.
mur 8.04.16

„# _this_ ** that **” wyświetli się jako „# this that”
masukomi 30.01.2017

Odpowiedzi:


23

(zgadując tutaj, proszę podać zrzut ekranu / więcej informacji)

Możesz zmienić conceallevelkonfigurację:

:h 'conceallevel'
'conceallevel' 'cole'       *'conceallevel'* *'cole'*
            number (default 0)
            local to window
            {not in Vi}
            {not available when compiled without the |+conceal|
            feature}
    Determine how text with the "conceal" syntax attribute |:syn-conceal|
    is shown:

    Value       Effect ~
    0       Text is shown normally
    1       Each block of concealed text is replaced with one
            character.  If the syntax item does not have a custom
            replacement character defined (see |:syn-cchar|) the
            character defined in 'listchars' is used (default is a
            space).
            It is highlighted with the "Conceal" highlight group.
    2       Concealed text is completely hidden unless it has a
            custom replacement character defined (see
            |:syn-cchar|).
    3       Concealed text is completely hidden.

1
O tak, po prostu ustaw go na zero w konfiguracji i wydaje się, że to naprawia. Ciekawe, że domyślnie jest to 0, chyba niektóre wtyczki zmieniają ustawienia.
firedev

1
Wygląda na conceallevelto, że jest resetowany przy każdym otwarciu pliku. Jakiś sposób, aby zawsze pozostawał z 0?
yktoo

W twoim vimrc? set conceallevel=2
nobe4

4
Aby odpowiedzieć na moje pytanie i być może pomóc każdemu, kto boryka się z tym samym problemem: Mam zainstalowaną wtyczkę indentLine , która concealleveldomyślnie wymusza ustawienie 2 dla każdego pliku. Można to wyłączyć za pomocą:let g:indentLine_setConceal = 0
yktoo

5
g:indentLine_setConceal = 0w zasadzie sprawia, że ​​wtyczka indentline już nie działa. Uważam, że let g:indentLine_fileTypeExclude = ['json']działało dla mnie lepiej.
Matt Greer

7

Jeśli używasz wtyczki „indentLine” lub innych wtyczek, które mogą zmieniać funkcje „ukrywania” w vimie. Jest tak, ponieważ wtyczka ta włącza funkcję ukrywania Vima, która automatycznie ukrywa fragmenty tekstu na podstawie podświetlania składni. To ustawienie zostanie zastosowane do wszystkich elementów składni. W szczególności we wtyczce „indentLine” nadpisze „concealcursor” i „conceallevel”, aby:

let g:indentLine_concealcursor = 'inc'
let g:indentLine_conceallevel = 2

Dlatego zmieniam go na następującą wartość w moim pliku .vimrc:

let g:indentLine_setConceal = 2
" default ''.
" n for Normal mode
" v for Visual mode
" i for Insert mode
" c for Command line editing, for 'incsearch'
let g:indentLine_concealcursor = ""

innym zestawem jest to, let g:indentLine_concealcursor = "nv"aby ukryty tekst otaczał kursor tylko w trybie „wstawiania” i „wizualnym”. Mam nadzieję, że może ci pomóc.



0

Jeśli używasz indentLine i chcą utrzymać go pracy, ale chcą, aby zapobiec Vima z ukrycia rzeczy w JSON i promocji cenowych, rozwiązaniem jest zapytać podświetlanie składni, aby nie używać ukryć funkcję.

W przypadku plików składni JSON i Markdown zawartych w vim-polyglot jest to realizowane za pomocą następujących dwóch wierszy:

let g:vim_json_syntax_conceal = 0
let g:vim_markdown_conceal = 0
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.