Bagaimana cara mencegah vim dari menyembunyikan simbol dalam penurunan harga dan json?

17

Ini membuatku gila, ya

:set ft=text

Untuk melihat sesuatu, jika tidak semua tautan menghilang dalam penurunan harga dan kutipan di JSON.

Bagaimana cara menonaktifkan ini sekali dan untuk semua?

dipecat
sumber
1
Bisakah Anda memposting tangkapan layar tentang apa yang Anda maksud? Selain itu, saat mengedit file penurunan harga, lakukan :redir > foo, :hi(telusuri semua kelompok sorot yang menekan ruang) :redir end,, dan tambahkan konten foofile yang baru dibuat di sini.
muru
"# _this_ ** that **" akan ditampilkan sebagai "# this that"
masukomi

Jawaban:

23

(menebak di sini, berikan tangkapan layar / informasi lebih lanjut)

Anda mungkin ingin mengubah conceallevelpengaturan Anda :

: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
sumber
1
Oh yeah, cukup setel ke nol di konfigurasi dan itu tampaknya memperbaikinya. Menarik bahwa itu 0 secara default, saya kira beberapa plugin mengubah pengaturan.
firedev
1
Tampaknya concealleveldiatur ulang setiap kali Anda membuka file. Adakah cara untuk membuatnya selalu tetap dengan 0?
yktoo
Di vimrc Anda? set conceallevel=2
nobe4
4
Untuk menjawab pertanyaan saya sendiri dan mungkin membantu siapa saja yang menghadapi masalah yang sama: Saya telah menginstal plugin indentLine , yang memaksa concealleveluntuk diatur ke 2 secara default untuk setiap file. Ini dapat dinonaktifkan dengan:let g:indentLine_setConceal = 0
yktoo
5
g:indentLine_setConceal = 0intinya membuatnya jadi plugin indentline tidak lagi berfungsi. Saya menemukan let g:indentLine_fileTypeExclude = ['json']bekerja lebih baik untuk saya.
Matt Greer
7

Jika Anda menggunakan plugin 'indentLine' atau plugin lain yang dapat mengubah fitur 'sembunyikan' di vim. Itu karena plugin ini mengaktifkan fitur 'menyembunyikan' Vim yang secara otomatis menyembunyikan bentangan teks berdasarkan penyorotan sintaksis. Pengaturan ini akan berlaku untuk semua item sintaks. Secara khusus, di plugin 'indentLine', itu akan menimpa "concealcursor" dan "conceallevel" untuk:

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

Jadi, saya mengubahnya ke nilai berikut di file .vimrc saya:

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

set lain adalah let g:indentLine_concealcursor = "nv"yang membuat teks tersembunyi mengelilingi kursor Anda hanya tampil dalam mode 'masukkan' dan mode 'visual'. Semoga itu bisa membantu Anda.

Qian Qu
sumber
0

Jika Anda menggunakan indentLine dan ingin tetap berfungsi tetapi ingin mencegah Vim menyembunyikan hal-hal di JSON dan Markdown, solusinya adalah meminta penyorotan sintaks Anda untuk tidak menggunakan fitur penyembunyian.

Untuk file sintaks JSON dan Markdown yang termasuk dalam vim-polyglot , itu dilakukan menggunakan dua baris berikut:

let g:vim_json_syntax_conceal = 0
let g:vim_markdown_conceal = 0
ssokolow
sumber