Ответ 1
Художественный стиль. http://astyle.sourceforge.net/
Есть ли в командной строке Unix-инструмент, который будет форматировать/отступать/удалять исходный код на разных языках? Меня особенно интересуют Java, JavaScript, PHP и XML, но в идеале он будет обрабатывать другие.
(Я не ищу что-то для создания разметки синтаксиса-подсветки, я уже знаю несколько инструментов, которые это делают.)
Художественный стиль. http://astyle.sourceforge.net/
Если вы установили параметры автоматического форматирования в качестве конкретных для проекта параметров в Eclipse, вы можете сделать что-то вроде:
/opt/local/eclipse/eclipse -nosplash
-application org.eclipse.jdt.core.JavaCodeFormatter
-verbose
-config .settings/org.eclipse.jdt.core.prefs
src/ tests/ doc/examples/
Это означает, что вы практически устанавливаете и настраиваете Eclipse для этой цели, если только для использования его функций автоформатирования, независимо от того, какой редактор вы используете в обычном режиме.:)
В Mac OS X:
/Applications/eclipse/java-oxygen/Eclipse.app/Contents/MacOS/eclipse -nosplash -application org.eclipse.jdt.core.JavaCodeFormatter -verbose -config ~/my-eclipse-workspace/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.core.prefs MyClass.java
Я всегда нашел форматировщик кода Vim отличным вариантом. Он знает много языков и может быть настроен под заказ.
Вы можете передать соответствующие команды в vim следующим образом:
vim MyClass.java <<< gg=G:wq
Пояснение:
gg=G
форматирует файл:wq
сохраняет файл и возвращается в командную строкуVim обычно имеет автоматическую подсветку синтаксиса и доступен в большинстве систем на основе Unix при установке. Для форматирования и отступов в Vim я автоматически использую :set autoindent
и :set tabstop=4
при запуске. autoindent
сохраняет текущий отступ, когда вы начинаете новую строку, а tabstop
устанавливает, насколько ваш код имеет отступ, когда вы нажимаете вкладку (только для отступов, для общей вкладки shiftwidth
). Чтобы эти параметры были настроены всякий раз, когда вы запускаете Vim, поместите их в файл ~/.vimrc
.
Для XML и HTML я использовал htb.
Если вы пользователь Eclipse, тогда JTidy - это еще один вариант.
Для Java существует Jalopy.
Итак, я предлагаю вашему вниманию Style Revisor, форматировщик исходного кода с графическим интерфейсом и интерфейсом командной строки. Он будет поддерживать разные языки, включая JavaScript и PHP. Если вас интересует использование командной строки, вы можете определить свой собственный стиль форматирования как аддон. Конечно, вы также можете использовать множество предопределенных стилей. Пример:
./Style\ Revisor --lang=PHP --style=GNU --path=~/to-your-project-root-dir
В настоящее время Style Revisor поддерживает два языка: C и Objective-C. Добро пожаловать: http://style-revisor.com/
С уважением.