pagina oficial mac vim macvim

vim - oficial - Matchit no funciona



vim website (7)

Comencé a tener el mismo problema después de actualizar algunos de mis plugins vim a la última versión para 7.3.

Pero cuando corro

:MatchDebug

Me soluciona el problema.

Estoy usando la instantánea 57 de Macvim 7.3. Parece que no consigo que Matchit funcione en ninguno de mis archivos.

Presiono% en una etiqueta de apertura. No me lleva a la etiqueta de cierre ...

Mi archivo vimrc:

" Pathogen settings call pathogen#runtime_append_all_bundles() call pathogen#helptags() set nocompatible set number set ruler set cursorline syntax on " Disable all blinking set guicursor+=a:blinkon0 " Whitespace stuff set nowrap set tabstop=2 set shiftwidth=2 set expandtab set cindent set smartindent set autoindent set list listchars=tab:/ / ,trail:· " Searching set hlsearch set incsearch set ignorecase set smartcase " Status bar set laststatus=2 " Start without the toolbar set guioptions-=T " Default gui color scheme " "color default " color molokai color railscasts+ " Command-/ to toggle comments map <D-/> :TComment<CR>j " Remember last location in file if has("autocmd") au BufReadPost * if line("''/"") > 0 && line("''/"") <= line("$") /| exe "normal g''/"" | endif endif " Thorfile, Rakefile and Gemfile are Ruby au BufRead,BufNewFile {Gemfile,Rakefile,Thorfile,config.ru} set ft=ruby " Open split buffers below instead of above current buffer set splitbelow " Session options let g:session_autoload = 1 let g:session_autosave = 1 " Buffer navigation map <C-K> <C-W><C-K> map <C-J> <C-W><C-W> map <C-H> <C-W><C-H> map <C-L> <C-W><C-L> " Rails navigation options nmap <leader>rc :Rcontroller nmap <leader>rv :Rview nmap <leader>rm :Rmodel " Tab completion " Also needed for better Rails navigation auto-completion set wildmode=list:longest,list:full " Open up side panel left (NERDTree) and right(Tagbar) " nmap <leader>/ :NERDTreeToggle<CR> :TagbarToggle<CR> nmap <leader>/ :call ToggleNERDTreeAndTagbar()<CR> " Allow single click for NERDTree let NERDTreeMouseMode = 3 let g:NERDTreeWinSize = 30 " autocmd VimEnter * NERDTree " Tagbar options let tagbar_singleclick = 1 let g:tagbar_sort = 0 let g:tagbar_width = 30 " autocmd VimEnter * nested TagbarOpen " The Janus plugin sets this to noequalalways for the Zoominfo plugin " However, we want to set this to equalalways instead, since we want to " have equal window height when a new window is opened. i.e. via ctrl+w+s set equalalways " Matchit already installed in newer versions of vim. " Don''t need to add this onto pathogen bundle folder. We only need " to configure it. " Configure matchit so that it goes from opening tag to closing tag au FileType html,eruby,rb,css,js,xml runtime! macros/matchit.vim " Set backup and swp dir. Don''t forget to clear tmp dir out once in a while set backupdir=~/.vim/tmp/backup set directory=~/.vim/tmp/swp " Detect if a tab was closed, and ensure that height of main window fills the screen (100% height) au TabEnter * let &lines = 100 " <leader>/ to open or close NERDTree and Tagbar, under the following conditions: " 1) Only close both if NERDTree and Tagbar are both opened " 2) Open both if NERDTree and Tagbar are closed OR if one is already opened function! ToggleNERDTreeAndTagbar() let w:jumpbacktohere = 1 " Detect which plugins are open if exists(''t:NERDTreeBufName'') let nerdtree_open = bufwinnr(t:NERDTreeBufName) != -1 else let nerdtree_open = 0 endif let tagbar_open = bufwinnr(''__Tagbar__'') != -1 " Perform the appropriate action if nerdtree_open && tagbar_open NERDTreeClose TagbarClose elseif nerdtree_open TagbarOpen elseif tagbar_open NERDTree else NERDTree TagbarOpen endif " Jump back to the original window for window in range(1, winnr(''$'')) execute window . ''wincmd w'' if exists(''w:jumpbacktohere'') unlet w:jumpbacktohere break endif endfor endfunction


Desde que Vim viene con el complemento matchit, todo lo que tenía que hacer era activarlo:

vim ~/.vimrc

Luego agregue lo siguiente en su .vimrc:

set nocompatible filetype plugin on runtime macros/matchit.vim


Esta línea

runtime macros/matchit.vim

es la forma estándar de activar matchit y funciona en todas mis máquinas.

¿Funciona matchit después de que escribes?

:runtime macros/matchit.vim

en modo normal?


He tenido un problema similar. He probado runtime macros/matchit.vim con el script provisto por VIM y no funcionó. ¡Así que descargué este script en la versión 1.13.2 de http://www.vim.org/scripts/script.php?script_id=39 , lo descomprimí en ~ / vimfiles y funciona!


Para su información: en vim 8 runtime macros/matchit.vim de runtime macros/matchit.vim convierte en packadd! matchit packadd! matchit This sitio me ayudó mucho.


Tuve un problema con matchit para encontrar el corsé correcto en C ++ / C cuando había paréntesis comentados. Los siguientes pasos, tomados de este post del foro escrito por este chico , lo resolvieron por mí y también explicaron bastante bien cómo funciona todo esto:

  1. Cree la carpeta ~ / .vim / plugin si aún no está allí:

    mkdir ~/.vim/plugin

  2. Cree un archivo con el nombre ~ / .vim / plugin / matchit.vim:

    vi ~/.vim/plugin/matchit.vim

    y los siguientes contenidos:

    runtime macros/matchit.vim

  3. Cree el directorio ~ / .vim / doc si aún no está allí:

    mkdir ~/.vim/doc

  4. Copie /usr/share/vim/vim73/macros/matchit.txt a ~ / .vim / doc /:

    cp /usr/share/vim/vim73/macros/matchit.txt ~/.vim/doc/

  5. Abrir vi

    vi

    y ejecuta lo siguiente en ella:

    :helptags ~/.vim/doc

  6. Asegúrese de que su ~ / .vimrc incluya uno de los siguientes:

    source $VIMRUNTIME/vimrc_example.vim

    o

    runtime vimrc_example.vim

    o

    filetype plugin on

    o

    filetype plugin indent on

  7. Agregue el siguiente autocommand en su vimrc:

    " make matchit work on C-like filetypes " c and cpp are already handled by their ftplugin au Filetype css,javascript / let b:match_words = &matchpairs

  8. Reinicie Vim.


La página del complemento matchit dice:

Asegúrate de tener una línea como

:filetype plugin on

en su archivo vimrc . Esto permite los complementos de tipo de archivo, muchos de los cuales le dicen a matchit.vim qué pares coinciden usar.