Как я могу иметь сгибы для C ++ / Java в Emacs? - PullRequest
5 голосов
/ 27 апреля 2009

Я знаю ветку о наличии складок для LaTex. Тем не менее, я хочу сгибы для C ++ / Java, когда я кодирую.

Как вы можете использовать автоматическое или ручное свертывание в Emacs для C ++ / Java?

Ответы [ 6 ]

11 голосов
/ 27 апреля 2009

hs-minor-mode - это то, что вы хотите.

8 голосов
/ 27 апреля 2009

Моя настройка для hs-minor-mode выглядит следующим образом

(add-hook 'c-mode-common-hook
  (lambda()
    (local-set-key (kbd "C-c <right>") 'hs-show-block)
    (local-set-key (kbd "C-c <left>")  'hs-hide-block)
    (local-set-key (kbd "C-c <up>")    'hs-hide-all)
    (local-set-key (kbd "C-c <down>")  'hs-show-all)
    (hs-minor-mode t)))
5 голосов
/ 27 апреля 2009

Вы можете использовать CEDET , чтобы сделать это. Этот пакет предоставляет режим global-semantic-tag-fold-mode, который позволяет сворачивать функции, классы / структуры, комментарии, пространства имен и т. Д. Он работает более корректно, чем другие пакеты, поскольку содержит всю синтаксическую информацию о коде.

Есть вступительная статья о CEDET , которая позволяет быстро начать работу с ним

3 голосов
/ 27 апреля 2009

Убедитесь, что у вас есть fold-mode.el. Затем вставьте

// {{{

// }}}

Вокруг вашего кода. Перезагрузите свой буфер и вуаля! У вас будут складки.

2 голосов
/ 28 апреля 2009

Вы можете поэкспериментировать с выборочный дисплей . Это скорее быстрое сворачивание всего вашего кода в соответствии с уровнем отступа. Это отлично подходит для получения резюме класса / функции или для быстрого перемещения.

Но если вам нужно сложить блоки кода, то HideShow , как отметил Аркадий, вероятно, более подходит.

1 голос
/ 27 апреля 2009

Для Java используйте JDEE . Для C / C ++ см. Другой ответ о CEDET.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...