Wie verhindere ich, dass vim Symbole in Markdown und JSON versteckt?

16

Das macht mich verrückt

:set ft=text

Um etwas zu sehen, verschwinden ansonsten alle Links in Markdown und Anführungszeichen in JSON.

Wie kann man dies ein für alle Mal deaktivieren?

Firedev
quelle
1
Kannst du einen Screenshot von dem posten, was du meinst? Auch während eines Abschlags - Datei bearbeiten, zu tun :redir > foo, :hi(Blättern durch alle Lichtergruppen Pressraum), :redir endund fügen Sie den Inhalt der neu erstellten fooDatei hier.
Muru
"# _this_ ** that **" wird als "# this that"
angezeigt

Antworten:

21

(Vermutung hier, bitte geben Sie einen Screenshot / weitere Informationen)

Möglicherweise möchten Sie Ihr conceallevelSetup ändern :

: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
quelle
1
Oh ja, setzen Sie es einfach in der Konfiguration auf Null und das scheint es zu beheben. Interessant, dass es standardmäßig 0 ist, ich denke, einige Plugins ändern die Einstellungen.
Firedev
1
Es scheint, dass dies concealleveljedes Mal zurückgesetzt wird, wenn Sie eine Datei öffnen. Wie kann man dafür sorgen, dass es immer bei 0 bleibt?
Yktoo
In deinem vimrc? set conceallevel=2
nobe4
4
Um meine eigene Frage zu beantworten und vielleicht jedem zu helfen, der mit demselben Problem konfrontiert ist: Ich habe das indentLine- Plugin installiert, das conceallevelstandardmäßig für jede Datei auf 2 gesetzt werden muss. Dies kann deaktiviert werden mit:let g:indentLine_setConceal = 0
yktoo
4
g:indentLine_setConceal = 0macht es im Wesentlichen so, dass das indentline Plugin nicht mehr funktioniert. Ich fand es let g:indentLine_fileTypeExclude = ['json']besser für mich.
Matt Greer
7

Wenn Sie das 'indentLine'-Plugin oder andere Plugins verwenden, die die' Conceal'-Funktionen in vim ändern können. Dies liegt daran, dass dieses Plugin die Vim-Funktion "Verbergen" aktiviert, mit der Textabschnitte basierend auf der Syntaxhervorhebung automatisch ausgeblendet werden. Diese Einstellung gilt für alle Syntaxelemente. Insbesondere im Plugin 'indentLine' werden "concealcursor" und "conceallevel" überschrieben, um:

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

Also ändere ich es auf den folgenden Wert in meiner .vimrc-Datei:

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 = ""

Ein weiterer Satz ist, bei let g:indentLine_concealcursor = "nv"dem der versteckte Text, der Ihren Cursor umgibt, nur im Einfügemodus und im visuellen Modus angezeigt wird. Hoffe das kann dir helfen.

Qian Qu
quelle