[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[O] [OT] Org-like folding with cperl mode?
From: |
Loris Bennett |
Subject: |
[O] [OT] Org-like folding with cperl mode? |
Date: |
Fri, 04 May 2018 09:32:02 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/25.1 (gnu/linux) |
Hi,
This isn't about Org, but about me wanting other things to behave like
Org.
To get folding in Perl programs I have cargo-cult-copied the
outline-based set-up here
https://github.com/villadora/emacs-config/blob/master/modes.el
In particular I have:
;; CPerl mode hook
(setq cperl-mode-hook 'my-cperl-customizations)
(defun my-cperl-customizations ()
"cperl-mode customizations that must be done after cperl-mode loads"
(outline-minor-mode)
(abbrev-mode)
(defun cperl-outline-level ()
(looking-at outline-regexp)
(let ((match (match-string 1)))
(cond
((eq match "=head1" ) 1)
((eq match "package") 2)
((eq match "=head2" ) 3)
((eq match "=item" ) 4)
((eq match "sub" ) 5)
(t 7)
)))
(setq cperl-outline-regexp my-cperl-outline-regexp)
(setq outline-regexp cperl-outline-regexp)
(setq outline-level 'cperl-outline-level)
)
My expectation was that if I have
=head2 STUFF
=over
=item foo
Do foo
=cut
sub foo {
return 'foo';
}
I should be able to fold to
=head2 STUFF...
but instead I just can only fold to, say
=head2 STUFF...
=item foo
Do foo
=cut
sub foo {
return 'foo';
}
i.e. the hierarchy, which I thought gets defined by 'outline-level'
doesn't seem to work.
I do have
(add-hook 'outline-minor-mode-hook 'outshine-hook-function)
to get tab-cycling, but maybe this is screwing things up.
Any thoughts or other approaches?
Cheers,
Loris
--
This signature is currently under construction.
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [O] [OT] Org-like folding with cperl mode?,
Loris Bennett <=