Вот я добавил в .emacs (hide-ifdef-mode 1), как написано, теперь то, что будет удалено препроцессором, должно скрываться. Однако, когда я набираю #if 0
...
#endif
ничего не происходит, все как раньше
Однако я, например, этот режим не полюбил из-за того, что очень легко случайно стереть свернутый блок и этого не заметить. То есть если не сорачивать, то он не выглядит, как комментарий, а если свернуть, то можно случайно удалить. Можно приучиться этого не делать, конечно. Ну и undo никто не отменил. Но все-таки большой кусок закомменченного кода сложнее удалить.
>Можно просто добавить в сишный фонт-лок соответствующую запись (смотри в файл cc-fonts.el
То есть написание новой моды на базе c-mode. Пока же ищется решение без таких радикальных идей. Все штатные способы воздействия на c-mode (customize) не дадут результата --- там нет, кажется, таких ручек. Стандартная мода рассматривает все #if по одному и тому же правилу, поэтому и не распознает его как комментарий, а покрасит, как директиву препроцессора. Вот думаю, что можно как-нибудь сделать пост-обработку текста и подмахивать face в #if 0/#endif? Не думал особо пока над этим. Делать свою моду для Си -- это поступок, достойный Геракла :)
То, что описано в 23.6.3 -- это раскраска ключевых слов, а не блочных комментариев. Это же совсем не то. Вот нужно, чтобы текст между #if 0/#endif покрасился фэйсом комментариев.