Actualmente estoy tratando de utilizar PHP Codesniffer (PEAR) en vim para archivos PHP. He encontrado 2 sitios que dan código para agregar en el archivo $HOME/.vim/plugin/phpcs.vim
. He agregado el código y "pienso" que está funcionando, pero no puedo ver los resultados, solo veo una línea en la parte inferior de vim que dice (1 of 32)
pero no puedo ver ninguno de los 32 errores.¿Cómo se muestran los resultados de phpcs en VIM?
Aquí está mi archivo .vimrc
" Backup Options -> Some People may not want this... it generates extra files
set backup " Enable Backups
set backupext=.bak " Add .bak extention to modified files
set patchmode=.orig " Copy original file to with .orig extention Before saving.
" Set Tabs and spacing for PHP as recomended by PEAR and Zend
set expandtab
set shiftwidth=4
set softtabstop=4
set tabstop=4
" Set Auto-indent options
set cindent
set smartindent
set autoindent
" Show lines that exceed 80 characters
match ErrorMsg '\%80v.\+'
" Set Colors
set background=dark
" Show a status bar
set ruler
set laststatus=2
" Set Search options highlight, and wrap search
set hls is
set wrapscan
" File Type detection
filetype on
filetype plugin on
" Enable Spell Checking
set spell
" Enable Code Folding
set foldenable
set foldmethod=syntax
" PHP Specific options
let php_sql_query=1 " Highlight sql in php strings
let php_htmlInStrings=1 " Highlight HTML in php strings
let php_noShortTags=1 " Disable PHP Short Tags
let php_folding=1 " Enable Ability to FOLD html Code
He intentado 2 versiones diferentes de phpcs.vim, y obtener los mismos resultados para ambos:
Versión 1 (encontrar en: VIM an a PHP IDE)
function! RunPhpcs()
let l:[email protected]%
let l:phpcs_output=system('phpcs --report=csv --standard=YMC '.l:filename)
" echo l:phpcs_output
let l:phpcs_list=split(l:phpcs_output, "\n")
unlet l:phpcs_list[0]
cexpr l:phpcs_list
cwindow
endfunction
set errorformat+=\"%f\"\\,%l\\,%c\\,%t%*[a-zA-Z]\\,\"%m\"
command! Phpcs execute RunPhpcs()
Versión 2: (encontrado en Integrated PHP Codesniffer in VIM)
function! RunPhpcs()
let l:[email protected]%
let l:phpcs_output=system('phpcs --report=csv --standard=YMC '.l:filename)
let l:phpcs_list=split(l:phpcs_output, "\n")
unlet l:phpcs_list[0]
cexpr l:phpcs_list
cwindow
endfunction
set errorformat+="%f"\\,%l\\,%c\\,%t%*[a-zA-Z]\\,"%m"
command! Phpcs execute RunPhpcs()
Ambos producen resultados idénticos.
phpcs está instalado en mi sistema, y puedo generar resultados fuera de vim. Cualquier ayuda se agradece Estoy aprendiendo más sobre vim ...
Descubrí mi propia respuesta. Hubo 2 problemas. Problema 1: No tenía un nombre cs YML, tuve que cambiarlo a PHPCS, Problema 2: no sabía cómo desplazarme por la lista: cl -> enumera todos los errores en la pantalla; : cnext -> muestra el siguiente error. Entonces entre los dos ahora funciona. Gracias por cualquier lectura espero que ayude a alguien. – Matt
Matt, por favor agregue la respuesta como respuesta y no como comentario. Acéptalo entonces para que la respuesta se marque como "resuelta". – cweiske