Подтвердить что ты не робот

Форматирование кода PHP в Vim

В настоящее время я использую Vim в качестве легкой IDE. У меня есть NERDTree, bufexplorer, supertab и ctags плагины, которые делают почти все, что я хочу. Только большая вещь, отсутствующая для меня, - это форматирование автоматического кода.

Я работаю с каким-то запутанным PHP-кодом, который имеет непоследовательное отступы и форматирование кода, в идеале я мог бы выделить код, который я хочу отформатировать (целые файлы тоже будут хороши) и запустить команду, чтобы привести его в порядок.

Есть ли у кого-нибудь хорошее решение для работы в Vim?

4b9b3361

Ответ 1

Быстрый способ исправления отступов PHP в vim состоит в том, чтобы визуально выбрать линии, с которыми вы хотите работать, используя shift - v, а затем нажмите equals (=), чтобы вызвать автоматическое форматирование.

Как и в случае с другими проблемами форматирования, вы, вероятно, смотрите на поиск и замену регулярных выражений, например :%s/^M/\r/g (<<33 > - v ctrl - m, а не caret - m) для фиксации окончаний строки

Ответ 2

Войдите в обычный режим в vim, а затем введите

1GVG=

Ответ 3

Формат в стиле PSR-2

Для нового стандарта Руководство по стилю кодирования PSR-2 используйте PHP-CS-Fixer.

Существует плагин Vim: Vim-php-cs-fixer

Как установить:

Установите PHP-CS-Fixer (глобально с помощью Composer):

composer global require friendsofphp/php-cs-fixer

Затем добавьте плагин Vim (Pathogen):

cd ~/.vim/bundle
git clone [email protected]:stephpy/vim-php-cs-fixer.git

Перезапустите Vim.

Отображение по умолчанию:

<leader>pcd " For directory
<leader>pcf " For flie

Ответ 4

Существует vim-плагин, который позволяет форматировать ваш код из vim. Он называется vim-autoformat, и вы можете прочитать об этом и скачать его здесь:

https://github.com/Chiel92/vim-autoformat

Он интегрирует внешние программы форматирования кода в vim. Когда этот плагин установлен, вам нужно только установить внешний формат текста, чтобы все было готово к работе. Он поддерживает php-форматтер phpCB, который является лучшим форматом php, который я видел до сих пор.

UPDATE: phpCB больше не поддерживается, из-за нарушения кода. Тем не менее, vim indentfile всегда используется как резерв, позволяя вам по крайней мере отступать от вашего кода, когда нет доступных форматера.

Ответ 5

веб-сайт vim - это не самый простой способ навигации, но там есть множество жевательных нуг-центров.

Например, я нашел этот php indenting script. Попробуйте.