Como impedir que o vim oculte símbolos em markdown e json?

16

Isso me deixa louco, eu faço

:set ft=text

Para ver algo, caso contrário, todos os links desaparecem na remarcação e nas aspas no JSON.

Como desativar isso de uma vez por todas?

firedev
fonte
1
Você pode postar uma captura de tela do que você quer dizer? Além disso, durante a edição de um arquivo de remarcação, fazer :redir > foo, :hi(navegar através de todos os grupos de destaque pressionando espaço), :redir ende adicionar o conteúdo do recém-criado fooarquivo aqui.
Muru
"# _This_ ** ** que" será exibido como "# isso que"
masukomi

Respostas:

21

(adivinhando aqui, forneça uma captura de tela / mais informações)

Você pode alterar sua conceallevelconfiguração:

: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.
nobe4
fonte
1
Ah, sim, basta configurá-lo como zero na configuração e isso parece corrigi-lo. Interessante que seja 0 por padrão, acho que alguns plugins alteram as configurações.
firedev
1
Parece que conceallevelé redefinido toda vez que você abre um arquivo. Alguma maneira de fazê-lo sempre ficar com 0?
Yktoo
No seu vimrc? set conceallevel=2
nobe4
4
Para responder minha própria pergunta e talvez ajudar alguém que enfrenta o mesmo problema: Eu tenho o plug- in indentLine instalado, o que força conceallevela ser definido como 2 por padrão para cada arquivo. Isso pode ser desabilitado com:let g:indentLine_setConceal = 0
yktoo 26/09/17
4
g:indentLine_setConceal = 0essencialmente faz com que o plugin indentline não funcione mais. Eu achei que let g:indentLine_fileTypeExclude = ['json']funcionou melhor para mim.
Matt Greer
7

Se você estiver usando o plug-in 'indentLine' ou outros plug-ins que podem alterar os recursos 'ocultar' no vim. Isso ocorre porque esse plug-in habilita o recurso de ocultação do Vim, que oculta automaticamente trechos de texto com base no realce da sintaxe. Essa configuração será aplicada a todos os itens de sintaxe. Especificamente, no plug-in 'indentLine', ele substituirá "concealcursor" e "conceallevel" para:

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

Então, eu o altero para o seguinte valor no meu arquivo .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 = ""

outro conjunto é para let g:indentLine_concealcursor = "nv"que o texto oculto ao redor do cursor seja exibido apenas no modo 'inserir' e 'visual'. Espero que isso te ajude.

Qian Qu
fonte