Как я могу заставить Emacs делать отступы для моих // комментариев с моим кодом?

Я не знаю много об Emacs, но после некоторого поиска в Google, я отредактировал мой .emacs Файл должен быть следующим:

(setq c-default-style "bsd" c-basic-offset 4)

Моя цель состояла в том, чтобы сделать отступ в стиле Аллмана с помощью четырехстрочных вкладок. Работает как положено, но теперь мой // комментарии не имеют отступа от моего кода. Прежде чем я изменил это, когда я бы набрал //, он будет автоматически иметь отступ, чтобы соответствовать остальному коду в функции. Как я могу получить Emacs для автоматического отступа // Комментарии?

Я пытался добавить c-indent-comments-syntactically-p 1 к вышесказанному .emacs файл, но это не изменило его …

Например:

int main()
{
// I'd like this line to be auto-indented to match the block
for (int i = 0; i < 10; ++i)
{
// And this line to be auto-indented to match the block
doStuff();
}
}

В настоящее время, TAB не отступает мой // комментарий, и он автоматически не отступает.

11

Решение

Вы можете проверить и изменить значение текущего отступа, поместив точку на соответствующую строку и нажав C-c C-o, Настройте соответствующие символы по своему вкусу.

Это не будет постоянным. Используйте прямой вызов функции c-set-offset в вашем .emacs внести изменения в глобальном масштабе.

Простой пример:

int main() {
//
}

Это мой отступ по умолчанию. После перемещения курсора на строку 2 я вижу, что соответствующий символ comment-intro,

С помощью:

(c-set-offset 'comment-intro 6)

Я получил:

int main() {
//
}

Смещение накапливается по символам:

int main() {
//
{
//
}
}
8

Другие решения

Нажатие на TAB все еще делает отступ в строке комментария, верно? Тогда вам не хватает автоматического распознавания двойной косой черты, запускающей автоиндентирование. Это реализуется с помощью (c-electric-slash). Сначала убедитесь, что косая черта все еще связана с этой командой:
C-h k / (помощь по нажатию клавиши). Затем, предполагая, что документация для c-electric-slash обнаружена, прочитайте ее, чтобы выяснить, при каких условиях она запрещена.

1

Если вы хотите поместить свой комментарий в то же выравнивание вашей области кода, просто добавьте следующую строку в ваш ~ / .Emacs файл:

(c-set-offset 'comment-intro 0)
0
По вопросам рекламы [email protected]