Formatação de código PHP dentro Vim
-
21-08-2019 - |
Pergunta
Atualmente estou usando o Vim como um IDE leve. Eu tenho NERDTree, bufexplorer, supertab e CTags plugins que fazem quase tudo o que quero. Única grande coisa que falta para mim é o código de auto formatação.
Eu estou trabalhando com algum código PHP confuso que tem recuo inconsistente e formatação de código, idealmente, eu poderia destacar o código que eu quero formatado (arquivos inteiros seria bom também) e executar um comando para arrumá-lo.
Alguém tem uma solução agradável para este trabalho no vim?
Solução
Uma maneira rápida de recuo correção PHP no vim é selecionar visualmente as linhas que você quer trabalhar com o uso de mudança - v e pressione iguais ( = ) para gatilho de formatação automática.
Quanto aos outros problemas de formatação provavelmente você está olhando para empregar alguma pesquisa regex e substitui, como :%s/^M/\r/g
(que é Ctrl - V Ctrl - m , não acento circunflexo - m ) para fins de linha correção
Outras dicas
Entre no modo normal no vim e digite
1GVG=
Format no estilo PSR-2
Para o novo padrão Coding Style Guide PSR-2 usar o PHP-CS-Fixer .
Há uma Vim plugin: Vim-php-cs-fixer
Como instalar:
Instale PHP-CS-Fixer
(globalmente com Composer
):
composer global require friendsofphp/php-cs-fixer
Em seguida, adicione o Vim plug-in (Pathogen
):
cd ~/.vim/bundle
git clone git@github.com:stephpy/vim-php-cs-fixer.git
Restart Vim.
Padrão de mapeamento:
<leader>pcd " For directory
<leader>pcf " For flie
Há uma vim plugin que permite a formatação no seu código de dentro vim. É chamado vim-autoformatação e você pode ler sobre ele e faça o download aqui:
https://github.com/Chiel92/vim-autoformat
Ele integra programas de formatação de código externos para vim. Quando este plugin é instalado, você só tem que instalar um formatador de código externo para obter tudo para trabalhar fora da caixa. Ele suporta o formatador php phpCB , que é o melhor php formatador que eu vi até agora.
UPDATE: phpCB não é suportado mais, devido ao comportamento quebrar o código. No entanto, indentfile do vim é sempre usado como fallback, permitindo-lhe, pelo menos travessão seu código quando há não é formatador disponível.
O href="http://vim.org" rel="nofollow noreferrer"> site não é o mais fácil de navegar, mas há uma riqueza de borracha nougat centro lá.
Por exemplo, eu encontrei este php recuar roteiro lá. Experimentá-lo.