Как автоматически сделать отступ в коде JavaScript в Aptana Studio?

#javascript #aptana #indentation #auto-indent

#javascript #aptana #отступ #автоматический отступ

Вопрос:

Ранее я использовал Eclipse для разработки на PHP и Java, и мне понравилась команда Ctrl i для автоматического отступа в коде.

Теперь я использую Aptana Studio, основанную на Eclipse, для разработки JavaScript. Я хотел бы автоматически сделать отступ в своем коде JavaScript, но Ctrl i удаляет весь мой код. Есть ли какая-либо другая команда, которая автоматически делает отступ в коде JavaScript в Aptana Studio?

Ответ №1:

В студии пока нет этой функции. Вы можете добавить запрос функции здесь: https://aptana.lighthouseapp.com/projects/35272-studio/tickets/new

Ctrl Shift F отформатирует весь ваш файл, как предложил Тим. Вы можете управлять некоторыми настройками форматирования через настройки в «Window -> Preferences -> Aptana Studio -> Formatter»

Комментарии:

1. Ctrl Shift F кажется, это хорошо работает для PHP, но, похоже, это не работает для JavaScript.

2. Это также должно работать для JS. Если вы получили ошибку в журнале, вы можете открыть ticket с каким-нибудь примером кода, который ее запускает, и мы это исправим 🙂

3. Решение @Jonas работает для меня в Aptana 3.4.2 для JS. Вопрос довольно старый, поэтому я полагаю, что он был добавлен тем временем.

Ответ №2:

Может быть, вы имеете в виду функцию форматирования CTRL SHIFT F ?

Комментарии:

1. О, нет, я попробовал эту команду для PHP сейчас, и она все изменила. Раньше мои строки имели максимум 80 символов, но теперь они могут быть очень длинными. В любом случае, спасибо.

2. Это помогло мне сделать отступ в коде javascript. Спасибо. в некоторых местах, таких как операторы if и else… отступ заполняется. но для меня это нормально.

Ответ №3:

Я только что обновился до Aptana Studio 3.0.9, и теперь, похоже, при некоторых обстоятельствах она способна форматировать определенные (выбранные) строки JavaScript, HTML и CSS. Привязка ключа по умолчанию для меня была чем-то странным, поэтому я изменил привязку ключа на CTRL I in Preferences > General > Keys .

Если код не выбран, то Source > Format кажется, что он всегда надежно форматирует весь файл. Поведение параметра Source > Format при выделениях отличается в зависимости от типа редактируемого кода:

JavaScript

  • Редактирование файла .js: Source > Format похоже, что все работает так, как вы ожидали: если вы выделите несколько строк кода, то Source > Format отступ будет корректным только для выбранных строк кода.
  • Редактирование JavaScript в HTML: Форматирование JavaScript в HTML-файле, похоже, работает большую часть времени, но иногда дает сбой; я не смог обнаружить правила.

HTML

  • Если вы выделите фрагмент HTML, И ЕСЛИ верхняя строка этого выделения уже имеет правильный отступ, И ЕСЛИ выделение не содержит каких-либо незакрытых элементов, то Source > Format все будет сделано правильно.
  • В противном случае Source > Format , похоже, действует непредсказуемо с HTML.

CSS

  • Редактирование файла .css:
    • работает нормально, если я выбираю целое правило (т. Е. Включая все selector { declaration block; } ) (в этом случае Aptana форматирует только это правило).
    • Но если мой выбор не включает все правило, то я получаю сообщение об ошибке.
  • Редактирование css в HTML:
    • Если в блоке выбрана часть <style> CSS, то source > format будет отформатирован весь css в этом <style> блоке. Кажется, нет способа отформатировать всего несколько строк css в html.

Если кто-нибудь в ближайшие несколько дней не укажет, что этот пост содержит фатальные недостатки, я отправлю запрос на обновление по адресуhttps://jira.appcelerator.org чтобы запросить согласованность в поведении форматирования для разных типов кода (беглый взгляд на существующую функцию и запросы об ошибках показывает, что форматированию кода в последнее время уделяется значительное внимание).

обновление от 19/3/2012 Я опубликовал эту ошибку в JIRA: https://jira.appcelerator.org/browse/APSTUD-4516

Ответ №4:

У меня была такая же проблема, и я наткнулся на этот сайт: jsbeautifier Возможно, вы захотите это проверить. У меня все отлично сработало 😉