emacs-orgmode
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Orgmode] Function to get the title of a heading


From: Carsten Dominik
Subject: Re: [Orgmode] Function to get the title of a heading
Date: Thu, 8 Jan 2009 23:20:30 +0100

Hi Daniel,

I have added `org-heading-components'.

HTH

- Carsten

On Jan 6, 2009, at 7:53 PM, Daniel Clemente wrote:


Hi,

I want to get the title of some entry in Elisp. That is, from this heading:

*** TODO Do something!

 I want the "Do something!".


I know no function to do this; although there is probably one. What I found is:

- (org-entry-properties) returns the TODO keyword, the tags, and the category, but not the title. - (org-get-entry) has no useful documentation but it seems to return the content, not the heading. - (org-get-header HEADER) does something else related to mail; it seems to be unused and not much documented. - (org-get-heading t) seems to return the full line (even with keyword), but with properties:

#("TODO Do something!" 0 4
 (org-category "test1" fontified t face org-todo)
 4 18
 (org-category "test1" fontified t face org-level-3))


Based on this, I did a function to remove the TODO keyword and the properties.

(defun org-get-heading-title ()
"Returns the heading of the current entry as a string, without the leading stars, the TODO keyword or the tags."
(let (
     (title-with-props (org-get-heading t))
     (keyword (org-get-todo-state))
     )
(substring-no-properties title-with-props (if keyword (1+ (length keyword))))
 )
)

 Suggestions:
- This could also be implemented as a parameter to (org-get-heading).
- Or the title returned in (org-entry-properties)
- And (org-get-header HEADER) could be removed.
- In any case, such a function can be included in Org-mode so that it is easy to find.


 Thanks,
Daniel


_______________________________________________
Emacs-orgmode mailing list
Remember: use `Reply All' to send replies to the list.
address@hidden
http://lists.gnu.org/mailman/listinfo/emacs-orgmode





reply via email to

[Prev in Thread] Current Thread [Next in Thread]