cari

Rumah  >  Soal Jawab  >  teks badan

Pilihan manakah dalam fail konfigurasi editor Vim yang diperlukan?

Walaupun Vim sangat lancar untuk beroperasi, bagi pembangun Cina, konfigurasi lalai Vim sering kelihatan bercelaru.
Yang kedua ialah isu lekukan, cara membuat format susun atur kod yang dilihat oleh platform sistem yang berbeza mempunyai gaya yang sama.
Apabila mengambil bahagian dalam projek sumber terbuka, terdapat banyak piawaian pengekodan biasa yang patut ditetapkan sebagai lalai.

伊谢尔伦伊谢尔伦2743 hari yang lalu852

membalas semua(4)saya akan balas

  • 淡淡烟草味

    淡淡烟草味2017-05-16 16:45:13

    Saya biasanya menetapkan tab kepada 4 ruang, dan kemudian menggunakan bentuk standard Unix <LF> Bagi masalah kod bercelaru, saya menggunakan kod ini untuk menyelesaikannya

    if has("multi_byte")
        set encoding=utf-8
        " English messages only
        "language messages zh_CN.utf-8
    
        if has('win32')
            language english
            let &termencoding=&encoding
        endif
    
        set fencs=utf-8,gbk,chinese,latin1
        set formatoptions+=mM
        set nobomb " 不使用 Unicode 签名
    
        if v:lang =~? '^\(zh\)\|\(ja\)\|\(ko\)'
            set ambiwidth=double
        endif
    else
        echoerr "Sorry, this version of (g)vim was not compiled with +multi_byte"
    endif

    balas
    0
  • ringa_lee

    ringa_lee2017-05-16 16:45:13

    syntax on
    set tabstop=4
    set shiftwidth=4
    set expandtab
    set fencs=utf-8,gbk
    set fileencoding=utf-8
    set number
    nnoremap <buffer> <F5> :w<CR>:!/usr/bin/env python % <CR>
    nnoremap <F2> :set nonumber!<CR>:set foldcolumn=0<CR>
    nnoremap <F3> :set noautoindent!<CR>:set nosmartindent!<CR>
    set autoindent
    set smartindent
    set vb t_vb=
    set fileencodings=utf-8,gb18030,utf-16,big5
    autocmd BufRead *.py set smartindent cinwords=if,elif,else,for,while,try,except,finally,def,class
    autocmd FileType python set omnifunc=pythoncomplete#Complete
    autocmd FileType javascript set omnifunc=javascriptcomplete#CompleteJS
    autocmd FileType html set omnifunc=htmlcomplete#CompleteTags
    autocmd FileType css set omnifunc=csscomplete#CompleteCSS
    autocmd FileType xml set omnifunc=xmlcomplete#CompleteTags
    autocmd FileType php set omnifunc=phpcomplete#CompletePHP
    autocmd FileType c set omnifunc=ccomplete#Complete
    autocmd FileType python set complete+=k~/.vim/syntax/python.vim isk+=.,(
    set guifont=Monaco

    balas
    0
  • 漂亮男人

    漂亮男人2017-05-16 16:45:13

    Masalah kacau Cina boleh diselesaikan dengan menetapkan kaedah pengekodan semasa (enc) dan pengekodan fail (fenc)

    set encoding=utf-8 "如果是 gbk 的时候用 cp936
    set fileencodings=ucs-bom,utf-8,cp936,gb18030,big5,euc-jp,euc-kr,latin1

    Masalah lekukan terletak pada tetapan paparan tab semua orang...
    Cara yang paling boleh dipercayai ialah menetapkannya kepada ruang dan bukannya tab

    set expandtab
    set softtabstop=4 "建议在 python 的 template 里改为2

    Ini akan meningkatkan sedikit saiz fail Kemudian gunakan shift+backspace apabila memadamkan inden dengan menekan kekunci bs sahaja hanya boleh memadamkan satu ruang

    balas
    0
  • 大家讲道理

    大家讲道理2017-05-16 16:45:13

    Tetapan pengekodan@yanyaoer sudah sangat sesuai, cuma tambah beberapa tab dan ruang

    set tabstop=4      "ts     每个 tab 显示出 4个空格的宽度
    set shiftwidth=4   "sw     每次缩进的空格数
    set expandtab      "et     每个 tab 自动扩展成空格
    set softtabstop=4  "sts    每次按 backspace 退格 4个空格

    ts/sw/... ialah singkatan

    Siarkan konfigurasi lain, cuma buat perkara lebih baik

    set scrolloff=3
    set showmode
    set showcmd
    set hidden
    set wildmenu
    set wildmode=list:longest
    set cursorline
    set ttyfast
    set ruler
    set backspace=indent,eol,start
    set laststatus=2
    set nu
    "set relativenumber  "vim7.3适用
    set undofile

    balas
    0
  • Batalbalas