Comment empêcher vim de masquer les symboles dans markdown et json?

17

Cela me rend fou, je le fais

:set ft=text

Pour voir quelque chose, sinon tous les liens disparaissent dans le markdown et les guillemets dans JSON.

Comment désactiver cela une fois pour toutes?

firedev
la source
1
Pouvez-vous poster une capture d'écran de ce que vous voulez dire? En outre, lors de l' édition d' un fichier Markdown, faire :redir > foo, :hi(naviguer à travers tous les groupes de pression mettent en évidence l' espace), :redir endet ajouter le contenu du nouveau foofichier ici.
muru
"# _this_ ** that **" s'affichera comme "# this that"
masukomi

Réponses:

23

(devinez ici, veuillez fournir une capture d'écran / plus d'informations)

Vous voudrez peut-être modifier votre conceallevelconfiguration:

: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
la source
1
Oh ouais, mettez-le à zéro dans la configuration et cela semble le réparer. Intéressant que ce soit 0 par défaut, je suppose que certains plugins modifient les paramètres.
firedev
1
Il semble que ce conceallevelsoit réinitialisé à chaque fois que vous ouvrez un fichier. Y a-t-il un moyen de toujours le faire avec 0?
yktoo
Dans votre vimrc? set conceallevel=2
nobe4
4
Pour répondre à ma propre question et peut-être aider toute personne confrontée au même problème: le plugin indentLine est installé, ce qui oblige conceallevelà être défini sur 2 par défaut pour chaque fichier. Cela peut être désactivé avec:let g:indentLine_setConceal = 0
yktoo
5
g:indentLine_setConceal = 0fait essentiellement en sorte que le plugin indentline ne fonctionne plus. J'ai trouvé que ça let g:indentLine_fileTypeExclude = ['json']fonctionnait mieux pour moi.
Matt Greer
7

Si vous utilisez le plugin «indentLine» ou d'autres plugins qui peuvent changer les fonctionnalités de «dissimulation» dans vim. C'est parce que ce plugin active la fonction de dissimulation de Vim qui masque automatiquement des parties de texte basées sur la coloration syntaxique. Ce paramètre s'appliquera à tous les éléments de syntaxe. Plus précisément, dans le plugin 'indentLine', il écrasera "concealcursor" et "conceallevel" pour:

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

Donc, je le change à la valeur suivante dans mon fichier .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 = ""

un autre ensemble consiste à let g:indentLine_concealcursor = "nv"faire en sorte que le texte caché entourant votre curseur ne s'affiche qu'en mode «insertion» et en mode «visuel». J'espère que cela peut vous aider.

Qian Qu
la source
0

Si vous utilisez indentLine et que vous souhaitez continuer à le faire mais que vous souhaitez empêcher Vim de masquer des éléments dans JSON et Markdown, la solution consiste à demander à votre syntaxe de surligner de ne pas utiliser la fonction de masquage.

Pour les fichiers de syntaxe JSON et Markdown inclus dans vim-polyglot , cela se fait à l'aide des deux lignes suivantes:

let g:vim_json_syntax_conceal = 0
let g:vim_markdown_conceal = 0
ssokolow
la source