LINUX.ORG.RU

Ответ на: комментарий от ska

В принципе, подходит, но я обычно использую это для комментирования кусков кода, а в них порою уже встречаются комментарии.

Deleted
()
Ответ на: комментарий от Deleted

Вот я добавил в .emacs (hide-ifdef-mode 1), как написано, теперь то, что будет удалено препроцессором, должно скрываться. Однако, когда я набираю #if 0 ... #endif ничего не происходит, все как раньше

Deleted
()
Ответ на: комментарий от Deleted

В моде hide-ifdef жми:

C-c @ h (спрятать блок (hide-ifdefs...) )

C-c @ s (показать блок (show-ifdefs...) )

Есть комбинации и по отдельным блокам:

C-c @ C-s показать отдельный блок, C-c @ C-d -- спрятать. (hide-ifdef-block, show-ifdef-block)

Можешь перебиндить, если нужно. Читай документацию по режиму.

Zubok ★★★★★
()
Ответ на: комментарий от Deleted

>Спасибо, разобрался!

Однако я, например, этот режим не полюбил из-за того, что очень легко случайно стереть свернутый блок и этого не заметить. То есть если не сорачивать, то он не выглядит, как комментарий, а если свернуть, то можно случайно удалить. Можно приучиться этого не делать, конечно. Ну и undo никто не отменил. Но все-таки большой кусок закомменченного кода сложнее удалить.

Zubok ★★★★★
()
Ответ на: комментарий от Deleted

>А, все-таки, можно как в Vim-е - просто обозначать цветом комментария?

Ну я сное дело, что можно. Но надо поискать. В сишной моде такого по-моему, по умолчанию нет.

Zubok ★★★★★
()
Ответ на: комментарий от anonymous

>Можно просто добавить в сишный фонт-лок соответствующую запись (смотри в файл cc-fonts.el

То есть написание новой моды на базе c-mode. Пока же ищется решение без таких радикальных идей. Все штатные способы воздействия на c-mode (customize) не дадут результата --- там нет, кажется, таких ручек. Стандартная мода рассматривает все #if по одному и тому же правилу, поэтому и не распознает его как комментарий, а покрасит, как директиву препроцессора. Вот думаю, что можно как-нибудь сделать пост-обработку текста и подмахивать face в #if 0/#endif? Не думал особо пока над этим. Делать свою моду для Си -- это поступок, достойный Геракла :)

Zubok ★★★★★
()
Ответ на: комментарий от Zubok

Да нет, не нужна новая мода. Смотри в info elisp, раздел 23.6.3, там даже пример есть. Правда, я не тестил, но должно работать.

anonymous
()
Ответ на: комментарий от anonymous

То, что описано в 23.6.3 -- это раскраска ключевых слов, а не блочных комментариев. Это же совсем не то. Вот нужно, чтобы текст между #if 0/#endif покрасился фэйсом комментариев.

Zubok ★★★★★
()
Ответ на: комментарий от Zubok

Вот можно font-lock-multiline по этому поводу посмотреть. Это может помочь. Надо проверить.

Zubok ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.