* missing element in org-element.el
@ 2013-04-19 14:30 Thorsten Jolitz
2013-04-19 14:37 ` Nicolas Goaziou
0 siblings, 1 reply; 5+ messages in thread
From: Thorsten Jolitz @ 2013-04-19 14:30 UTC (permalink / raw)
To: emacs-orgmode
Hi List,
comparing this
,----------------------------------------------------------------------------
| (defconst org-element-all-elements
| '(babel-call center-block clock comment comment-block diary-sexp drawer
| dynamic-block example-block export-block fixed-width
| footnote-definition headline horizontal-rule inlinetask item
| keyword latex-environment node-property paragraph plain-list
| planning property-drawer quote-block quote-section section
| special-block src-block table table-row verse-block)
| "Complete list of element types.")
`----------------------------------------------------------------------------
to this
,------------------------------------------------------------------
| (defconst org-element-secondary-value-alist
| '((headline . :title)
| (inlinetask . :title)
| (item . :tag)
| (footnote-reference . :inline-definition))
| "Alist between element types and location of secondary value.")
`------------------------------------------------------------------
reveals that 'footnote-reference' is missing in the first list.
--
cheers,
Thorsten
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: missing element in org-element.el
2013-04-19 14:30 missing element in org-element.el Thorsten Jolitz
@ 2013-04-19 14:37 ` Nicolas Goaziou
2013-04-19 15:35 ` Thorsten Jolitz
0 siblings, 1 reply; 5+ messages in thread
From: Nicolas Goaziou @ 2013-04-19 14:37 UTC (permalink / raw)
To: Thorsten Jolitz; +Cc: emacs-orgmode
Hello,
Thorsten Jolitz <tjolitz@gmail.com> writes:
> comparing this
>
> ,----------------------------------------------------------------------------
> | (defconst org-element-all-elements
> | '(babel-call center-block clock comment comment-block diary-sexp drawer
> | dynamic-block example-block export-block fixed-width
> | footnote-definition headline horizontal-rule inlinetask item
> | keyword latex-environment node-property paragraph plain-list
> | planning property-drawer quote-block quote-section section
> | special-block src-block table table-row verse-block)
> | "Complete list of element types.")
> `----------------------------------------------------------------------------
>
>
> to this
>
> ,------------------------------------------------------------------
> | (defconst org-element-secondary-value-alist
> | '((headline . :title)
> | (inlinetask . :title)
> | (item . :tag)
> | (footnote-reference . :inline-definition))
> | "Alist between element types and location of secondary value.")
> `------------------------------------------------------------------
>
> reveals that 'footnote-reference' is missing in the first list.
A `footnote-reference' is an object type (see
`org-element-all-objects'), not an element: as such it doesn't belong to
`org-element-all-elements'.
`org-element-secondary-value-alist' is a list of elements and objects
containing a secondary string.
Regards,
--
Nicolas Goaziou
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: missing element in org-element.el
2013-04-19 14:37 ` Nicolas Goaziou
@ 2013-04-19 15:35 ` Thorsten Jolitz
2013-04-19 16:31 ` Nicolas Goaziou
0 siblings, 1 reply; 5+ messages in thread
From: Thorsten Jolitz @ 2013-04-19 15:35 UTC (permalink / raw)
To: emacs-orgmode
Nicolas Goaziou <n.goaziou@gmail.com> writes:
> Thorsten Jolitz <tjolitz@gmail.com> writes:
>
>> comparing this
>>
>> ,----------------------------------------------------------------------------
>> | (defconst org-element-all-elements
>> | '(babel-call center-block clock comment comment-block diary-sexp drawer
>> | dynamic-block example-block export-block fixed-width
>> | footnote-definition headline horizontal-rule inlinetask item
>> | keyword latex-environment node-property paragraph plain-list
>> | planning property-drawer quote-block quote-section section
>> | special-block src-block table table-row verse-block)
>> | "Complete list of element types.")
>> `----------------------------------------------------------------------------
>>
>>
>> to this
>>
>> ,------------------------------------------------------------------
>> | (defconst org-element-secondary-value-alist
>> | '((headline . :title)
>> | (inlinetask . :title)
>> | (item . :tag)
>> | (footnote-reference . :inline-definition))
>> | "Alist between element types and location of secondary value.")
>> `------------------------------------------------------------------
>>
>> reveals that 'footnote-reference' is missing in the first list.
>
> A `footnote-reference' is an object type (see
> `org-element-all-objects'), not an element: as such it doesn't belong to
> `org-element-all-elements'.
>
> `org-element-secondary-value-alist' is a list of elements and objects
> containing a secondary string.
Ok, I see, thanks.
What about
,----------------
| latex-or-entity
| plain-link
| text-markup
`----------------
in
,---------------------------------------------------------------------------------
| (defconst org-element-all-successors
| '(export-snippet footnote-reference inline-babel-call inline-src-block
| latex-or-entity line-break link macro plain-link radio-target
| statistics-cookie sub/superscript table-cell target
| text-markup timestamp)
| "Complete list of successors.")
`---------------------------------------------------------------------------------
?
They seem to be neither elements nor objects - are they a kind of
'abstract categories' for some object types?
And I must admit that I'm not sure about the exact meaning of
'successors'. You describe elements and objects in detail in the
comment-section of org-element.el, but don't mention 'successors'.
,---------------------------------------------------------------------
| (defconst org-element-object-successor-alist
| '((subscript . sub/superscript) (superscript . sub/superscript)
| (bold . text-markup) (code . text-markup) (italic . text-markup)
| (strike-through . text-markup) (underline . text-markup)
| (verbatim . text-markup) (entity . latex-or-entity)
| (latex-fragment . latex-or-entity))
| "Alist of translations between object type and successor name.
| Sharing the same successor comes handy when, for example, the
| regexp matching one object can also match the other object.")
`---------------------------------------------------------------------
The relation between object/successor is like concrete
subclass(es)/abstract superclass?
PS
I hope I don't go on your nerves with my questions, but I'm trying to
understand how you modeled an Org-file and its not all clear to me.
--
cheers,
Thorsten
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: missing element in org-element.el
2013-04-19 15:35 ` Thorsten Jolitz
@ 2013-04-19 16:31 ` Nicolas Goaziou
2013-04-19 16:41 ` Thorsten Jolitz
0 siblings, 1 reply; 5+ messages in thread
From: Nicolas Goaziou @ 2013-04-19 16:31 UTC (permalink / raw)
To: Thorsten Jolitz; +Cc: emacs-orgmode
Thorsten Jolitz <tjolitz@gmail.com> writes:
> What about
>
> ,----------------
> | latex-or-entity
> | plain-link
> | text-markup
> `----------------
>
> in
>
> ,---------------------------------------------------------------------------------
> | (defconst org-element-all-successors
> | '(export-snippet footnote-reference inline-babel-call inline-src-block
> | latex-or-entity line-break link macro plain-link radio-target
> | statistics-cookie sub/superscript table-cell target
> | text-markup timestamp)
> | "Complete list of successors.")
> `---------------------------------------------------------------------------------
>
> ?
>
> They seem to be neither elements nor objects - are they a kind of
> 'abstract categories' for some object types?
>
> And I must admit that I'm not sure about the exact meaning of
> 'successors'. You describe elements and objects in detail in the
> comment-section of org-element.el, but don't mention 'successors'.
I do, in the "Objects" section. Successors are functions used to find
the next object of a given type. Some objects are so close that they can
share the same successor. Hence `text-markup' is a successor shared by
underline, code, verbatim, bold, italic and strike-through objects. See
`org-element-object-successor-alist' for more information.
Also, see comments above `org-element--parse-elements' to get
information about the algorithm used for object research.
> I hope I don't go on your nerves with my questions, but I'm trying to
> understand how you modeled an Org-file and its not all clear to me.
There are comments at the beginning of each section in the file: these
should give you some answers. Don't hesitate to ask if they don't
fulfill your needs.
Regards,
--
Nicolas Goaziou
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: missing element in org-element.el
2013-04-19 16:31 ` Nicolas Goaziou
@ 2013-04-19 16:41 ` Thorsten Jolitz
0 siblings, 0 replies; 5+ messages in thread
From: Thorsten Jolitz @ 2013-04-19 16:41 UTC (permalink / raw)
To: emacs-orgmode
Nicolas Goaziou <n.goaziou@gmail.com> writes:
> There are comments at the beginning of each section in the file: these
> should give you some answers. Don't hesitate to ask if they don't
> fulfill your needs.
Thanks, I have to study these section comments too.
--
cheers,
Thorsten
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2013-04-19 16:41 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-04-19 14:30 missing element in org-element.el Thorsten Jolitz
2013-04-19 14:37 ` Nicolas Goaziou
2013-04-19 15:35 ` Thorsten Jolitz
2013-04-19 16:31 ` Nicolas Goaziou
2013-04-19 16:41 ` Thorsten Jolitz
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).