Re: [Orgmode] [ANN] Org to Atom, revisited

2010-07-08 Thread David Maus
Hi Scott,

Scott Jaderholm wrote:
>Unfortunately I haven't been able to get the sitemap/index feed
>feature in this or an older version to work for me. Can you add more
>details in Section 4.2?

>It mentions org-atom-publish-org-as-atom-index but it's not in
>http://github.com/dmj/dmj-org-mode/raw/org-atom/lisp/org-atom.el.

Yes, sorry.  I am behind with revising the documentation and as it
turned out, the sitemap function was completely broken.

I've pushed a fix for the sitemap function yesterday[1] and my current
(not yet published) section about the sitemap function reads like
this:

,
| Org's Atom exporter provides a sitemap function to publish a single
| combined feed for all files in the publishing project.  To use this
| function you have to provide the mandatory feed meta data by setting
| the property =:publishing-url= to the base URL of the published
| project.  The sitemap functions assumes, that all files in the
| project's =:base-dir= are published relative to this URL and will
| create the feed's links pointing to the appropriate locations.
|
| If you prefer an ID for the feed that is distinct from the feed's URL,
| you can provide the ID with the =:feed-id= property.
|
| The name of the feed can be set by the =:sitemap-file= property and
| defaults to =sitemap.atom=.
|
| For example, this minimal project definition will publish a combined
| feed for all entries found in the project's files
|
| #+begin_src emacs-lisp
|   ("sitemap-feed"
|:base-directory "~/project/webpage/"
|:base-extension "org"
|:publishing-directory "~/www/"
|:auto-index t
|:publishing-url "http://example.org/";
|:sitemap-function org-atom-publish-feed-sitemap)
| #+end_src
`

So, the minimal definition
requires :publishing-url, :sitemap-function, and :auto-index to turn
on the sitemap.

Does this makes the sitemap publishing process somewhat clearer?

Best,
  -- David

[1] http://github.com/dmj/dmj-org-mode/raw/org-atom/lisp/org-atom.el
--
OpenPGP... 0x99ADB83B5A4478E6
Jabber dmj...@jabber.org
Email. dm...@ictsoc.de


pgptT2z7C6lx4.pgp
Description: PGP signature
___
Emacs-orgmode mailing list
Please use `Reply All' to send replies to the list.
Emacs-orgmode@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode


Re: [Orgmode] [ANN] Org to Atom, revisited

2010-07-06 Thread Scott Jaderholm
David,

I love the idea of this project, and I really hope it makes it into org proper!

Unfortunately I haven't been able to get the sitemap/index feed
feature in this or an older version to work for me. Can you add more
details in Section 4.2?

It mentions org-atom-publish-org-as-atom-index but it's not in
http://github.com/dmj/dmj-org-mode/raw/org-atom/lisp/org-atom.el.

In the old version I think you had to put something like this the project-alist
    :index-function org-atom-publish-feed-index
Is that still necessary?
What about :auto-index t?

Maybe explain how to publish the sitemap? Does it just happen when you
publish the project? Maybe an example?

TIA
Scott


On Tue, Jun 15, 2010 at 10:51 AM, David Maus  wrote:
>
> The Org to Atom exporter I've preliminary announce some weeks ago
> entered a state I consider to be stable and consistent enough to be
> included into Org mode.
>
> It provides export, publishing and a sitemap functions that let you
> create an Atom feed for a web page project based on (multiple) Org
> mode files.  An example that shows the support of inline images in
> feed entry content can be found [here].
>
> [here]: http://ictsoc.de/code/org-atom/example.atom
>
> * Download and installation
>
>  The Org to Atom exporter is maintained in a copy of Org mode's git
>  repository in branch "org-atom" located at
>
>  git://github.com/dmj/dmj-org-mode.git
>
>  You can download the most recent version at
>
>  [http://github.com/dmj/dmj-org-mode/raw/org-atom/lisp/org-atom.el]
>
>  To use the exporter you need a recent version of atom-syndication.el,
>  an elisp implementation of the Atom Syndication Format.  You can get
>  atom-syndication.el from github, too:
>
>  git://github.com/dmj/atom-syndication.git
>
> * Usage
>
>  Please see the almost complete documentation below or read via web at
>
>  [http://ictsoc.de/code/org-atom.html]
>
> * Backward incompatibility
>
>  If you have used an older version of the exporter you need to revise
>  your configuration due to incompatible changes.  Most notably:
>
>    - in-buffer options and publishing properties have be (re)renamed
>      to start with #+FEED and :feed instead of #+ATOM and :atom;
>
>    - support for the atom:category element is temporarily removed;
>
>    - some default values have changed:
>
>      - content is not published by default
>
>      - names of the atom:updated and atom:published property default to
>        atom_updated and atom_published
>
> * Things yet to be done
>
>  Besides support of even more atom elements (e.g. use tags for the
>  atom:category element), the exporter would require a proper
>  documentation for the Org mode manual, and of course some real-world
>  testing.  Thus I'm interested not just in bugs, glitches,
>  inconsistencies, and complains about the exporter but some feedback
>  about the present documentation, too.
>
> * Documentation
>
>                Publish Atom feeds based on Org files
>                =
>
> Date: 2010-06-15 18:49:21 CEST
>
> Table of Contents
> =
> 1 Exporting an Org file to Atom
>    1.1 In-buffer options
>    1.2 Headline properties
>    1.3 Export settings
>    1.4 Example
> 2 Publish feeds for a web page project
>    2.1 Publish a feed for each file in the project
>    2.2 Publish a combined feed for project files
>
>
> 1 Exporting an Org file to Atom
> 
>
> An Atom feed consists of a head with feed meta data (e.g. feed title
> and description) and one or more feed entries.  The exporter maps Org
> mode subtrees to Atom feed entries and requires special in-buffer
> options with feed as well as headline properties with entry specific
> meta data.
>
> 1.1 In-buffer options
> ==
>
> An Atom feed is identified by a globally unique identifier, preferably
> a UUID.  Such an identifier must be present in a Org file supposed to
> get exported or published to Atom in the =#+FEED_ID= in-buffer option.
>
> If you do not use a UUID, the value of this in-buffer option must be a
> proper IRI, like for example a URL that identifies this particular
> feed.
>
> To be able to properly reference feed entry content and the feed
> itself[1], at least the URL of the feed must be given
> by the =#+FEED_URL=.  By default Org assumes the published content
> available in the same place like the feed with the name of the Org
> file and the extension defined in =org-export-html-extension=.
>
> For example a feed for the file =example.org= with the in-buffer
> option =#+FEED_URL= set to =http://example.tld/feed.atom= is expected
> to reference content located on the URL
> =http://example.tld/example.html=.
>
> If you indent to use different URLs for the feed and the referenced
> content, you can set the content URL manually by providing the
> in-buffer option =#+FEED_CONTENT_URL=.
>
> Prospective feed entries are found by using the TAGS/PROP/TODO query
> specified in the =#+FEED_MAP_

Re: [Orgmode] [ANN] Org to Atom, revisited

2010-06-20 Thread T.F. Torrey

On 06/18/2010 09:03 AM, David Maus wrote:

Olivier Schwander wrote:


[here]: http://ictsoc.de/code/org-atom/example.atom



Is there the source of this feed somewhere ? It would be nice to have a
self sufficient example.


I've uploaded the source of the example feed to

http://ictsoc.de/code/org-atom/example.org

But it's really as straightforward as the simple example in the
documentation.


* Download and installation



Maybe it would be useful to have the emacs lisp fragment users need to
put in their .emacs file ? And add this part to the "Download and
install" section of the online manual.


I'll put more detailed install instructions there as soon as there is
a decision about including org-atom into Org or not (yet).


1.2 Headline properties


A headline that matches the TAGS/PROP/TODO query for feed entries
requires at least two headline properties to be present: The =ID=
property with a unique identifier of the headline (preferable a UUID)
and a property called =atom_published= containing a time stamp with
the date an entry should be considered to be published.  If these two
properties are not present, they are automatically created using Org's
default method to create ID properties[2] and current time and date for
the publishing
date[3]



Maybe it should be better to extract timestamp from the usual timestamp
below headlines, like this one:



* Some title
  [2010-06-16 mer. 14:19]



or



* DONE Some title
  CLOSED: [2010-06-16 mer. 14:19]



Actually, with this solution, it would be better to remove the timestamp
used from the export, since it will displayed by the reader.


The problem is, that the Atom specification requires an entry to have
at least a atom:updated element.  Thus there must be timestamp
somewhere.  Binding the timestamp to a special position in Org mode
markup would limit the functionality of the exporter.

However: I understand that it could be reasonable to not use a
property, but an already present timestamp.  What about something like
this:

The name of the published and updated property can be customized.  It
can either be a string with the property name or the symbol
'timestamp_ia.  If it is this symbol, the exporter uses the first
inactive timestamp of a headline.  If the headline does not have an
inactive timestamp, the exporter throws an error.


This would be a welcome addition. I would use it, and perhaps it would 
entice RMS to adopt Org Mode as well. It's pretty close to what he  uses 
for his political notes:

http://www.stallman.org/archives/2010-mar-jun.html


1.3 Export settings

   content:   turn on/off publishing content



When content is t, the headline is exported both in title and in
content, is this a feature or a bug ? If it's a feature, it should be
nice to have an option to disable it.


Hah!  Good catch.  Never paid attention to this.  Just pushed a commit
that removes the title in the content element.

Thanks for the comment and suggestions.

   -- David

--
OpenPGP... 0x99ADB83B5A4478E6
Jabber dmj...@jabber.org
Email. dm...@ictsoc.de



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


Org Mode gets better all the time. Thanks again.

- Terry

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


Re: [Orgmode] [ANN] Org to Atom, revisited

2010-06-18 Thread David Maus
Olivier Schwander wrote:

>> [here]: http://ictsoc.de/code/org-atom/example.atom

>Is there the source of this feed somewhere ? It would be nice to have a
>self sufficient example.

I've uploaded the source of the example feed to

http://ictsoc.de/code/org-atom/example.org

But it's really as straightforward as the simple example in the
documentation.

>> * Download and installation

>Maybe it would be useful to have the emacs lisp fragment users need to
>put in their .emacs file ? And add this part to the "Download and
>install" section of the online manual.

I'll put more detailed install instructions there as soon as there is
a decision about including org-atom into Org or not (yet).

>> 1.2 Headline properties
>> 
>>
>> A headline that matches the TAGS/PROP/TODO query for feed entries
>> requires at least two headline properties to be present: The =ID=
>> property with a unique identifier of the headline (preferable a UUID)
>> and a property called =atom_published= containing a time stamp with
>> the date an entry should be considered to be published.  If these two
>> properties are not present, they are automatically created using Org's
>> default method to create ID properties[2] and current time and date for
>> the publishing
>> date[3]

>Maybe it should be better to extract timestamp from the usual timestamp
>below headlines, like this one:

>* Some title
>  [2010-06-16 mer. 14:19]

>or

>* DONE Some title
>  CLOSED: [2010-06-16 mer. 14:19]

>Actually, with this solution, it would be better to remove the timestamp
>used from the export, since it will displayed by the reader.

The problem is, that the Atom specification requires an entry to have
at least a atom:updated element.  Thus there must be timestamp
somewhere.  Binding the timestamp to a special position in Org mode
markup would limit the functionality of the exporter.

However: I understand that it could be reasonable to not use a
property, but an already present timestamp.  What about something like
this:

The name of the published and updated property can be customized.  It
can either be a string with the property name or the symbol
'timestamp_ia.  If it is this symbol, the exporter uses the first
inactive timestamp of a headline.  If the headline does not have an
inactive timestamp, the exporter throws an error.


>> 1.3 Export settings
>> 
>>   content:   turn on/off publishing content

>When content is t, the headline is exported both in title and in
>content, is this a feature or a bug ? If it's a feature, it should be
>nice to have an option to disable it.

Hah!  Good catch.  Never paid attention to this.  Just pushed a commit
that removes the title in the content element.

Thanks for the comment and suggestions.

  -- David

--
OpenPGP... 0x99ADB83B5A4478E6
Jabber dmj...@jabber.org
Email. dm...@ictsoc.de


pgpYbWBGrWdoa.pgp
Description: PGP signature
___
Emacs-orgmode mailing list
Please use `Reply All' to send replies to the list.
Emacs-orgmode@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode


Re: [Orgmode] [ANN] Org to Atom, revisited

2010-06-16 Thread Olivier Schwander
Le 15 Jun 2010 18:51, David Maus a écrit:
> 
> The Org to Atom exporter I've preliminary announce some weeks ago
> entered a state I consider to be stable and consistent enough to be
> included into Org mode.

Great work, I work it will really improve web publishing ability of
org-mode.

Some remarks below:

> [here]: http://ictsoc.de/code/org-atom/example.atom

Is there the source of this feed somewhere ? It would be nice to have a
self sufficient example.

> * Download and installation

Maybe it would be useful to have the emacs lisp fragment users need to
put in their .emacs file ? And add this part to the "Download and
install" section of the online manual.

> * Documentation

> Table of Contents
> =
> 1 Exporting an Org file to Atom

There is no Install section here, but there is one in the online
version.

> 1.2 Headline properties
> 
> 
> A headline that matches the TAGS/PROP/TODO query for feed entries
> requires at least two headline properties to be present: The =ID=
> property with a unique identifier of the headline (preferable a UUID)
> and a property called =atom_published= containing a time stamp with
> the date an entry should be considered to be published.  If these two
> properties are not present, they are automatically created using Org's
> default method to create ID properties[2] and current time and date for
> the publishing
> date[3]

Maybe it should be better to extract timestamp from the usual timestamp
below headlines, like this one:

* Some title
  [2010-06-16 mer. 14:19]

or

* DONE Some title
  CLOSED: [2010-06-16 mer. 14:19]

Actually, with this solution, it would be better to remove the timestamp
used from the export, since it will displayed by the reader.

> 1.3 Export settings
> 
>   content:   turn on/off publishing content

When content is t, the headline is exported both in title and in
content, is this a feature or a bug ? If it's a feature, it should be
nice to have an option to disable it.

Cheers,

Olivier


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


Re: [Orgmode] [ANN] Org to Atom, revisited

2010-06-15 Thread T.F. Torrey

David,

This is really great work, and I'm excited about using it for my own 
site. Hopefully this will be included in the official Org mode soon.


Thank you for this.

- Terry

On 06/15/2010 09:51 AM, David Maus wrote:


The Org to Atom exporter I've preliminary announce some weeks ago
entered a state I consider to be stable and consistent enough to be
included into Org mode.

It provides export, publishing and a sitemap functions that let you
create an Atom feed for a web page project based on (multiple) Org
mode files.  An example that shows the support of inline images in
feed entry content can be found [here].

[here]: http://ictsoc.de/code/org-atom/example.atom

* Download and installation

   The Org to Atom exporter is maintained in a copy of Org mode's git
   repository in branch "org-atom" located at

   git://github.com/dmj/dmj-org-mode.git

   You can download the most recent version at

   [http://github.com/dmj/dmj-org-mode/raw/org-atom/lisp/org-atom.el]

   To use the exporter you need a recent version of atom-syndication.el,
   an elisp implementation of the Atom Syndication Format.  You can get
   atom-syndication.el from github, too:

   git://github.com/dmj/atom-syndication.git

* Usage

   Please see the almost complete documentation below or read via web at

   [http://ictsoc.de/code/org-atom.html]

* Backward incompatibility

   If you have used an older version of the exporter you need to revise
   your configuration due to incompatible changes.  Most notably:

 - in-buffer options and publishing properties have be (re)renamed
   to start with #+FEED and :feed instead of #+ATOM and :atom;

 - support for the atom:category element is temporarily removed;

 - some default values have changed:

   - content is not published by default

   - names of the atom:updated and atom:published property default to
 atom_updated and atom_published

* Things yet to be done

   Besides support of even more atom elements (e.g. use tags for the
   atom:category element), the exporter would require a proper
   documentation for the Org mode manual, and of course some real-world
   testing.  Thus I'm interested not just in bugs, glitches,
   inconsistencies, and complains about the exporter but some feedback
   about the present documentation, too.

* Documentation

 Publish Atom feeds based on Org files
 =

Date: 2010-06-15 18:49:21 CEST

Table of Contents
=
1 Exporting an Org file to Atom
 1.1 In-buffer options
 1.2 Headline properties
 1.3 Export settings
 1.4 Example
2 Publish feeds for a web page project
 2.1 Publish a feed for each file in the project
 2.2 Publish a combined feed for project files


1 Exporting an Org file to Atom


An Atom feed consists of a head with feed meta data (e.g. feed title
and description) and one or more feed entries.  The exporter maps Org
mode subtrees to Atom feed entries and requires special in-buffer
options with feed as well as headline properties with entry specific
meta data.

1.1 In-buffer options
==

An Atom feed is identified by a globally unique identifier, preferably
a UUID.  Such an identifier must be present in a Org file supposed to
get exported or published to Atom in the =#+FEED_ID= in-buffer option.

If you do not use a UUID, the value of this in-buffer option must be a
proper IRI, like for example a URL that identifies this particular
feed.

To be able to properly reference feed entry content and the feed
itself[1], at least the URL of the feed must be given
by the =#+FEED_URL=.  By default Org assumes the published content
available in the same place like the feed with the name of the Org
file and the extension defined in =org-export-html-extension=.

For example a feed for the file =example.org= with the in-buffer
option =#+FEED_URL= set to =http://example.tld/feed.atom= is expected
to reference content located on the URL
=http://example.tld/example.html=.

If you indent to use different URLs for the feed and the referenced
content, you can set the content URL manually by providing the
in-buffer option =#+FEED_CONTENT_URL=.

Prospective feed entries are found by using the TAGS/PROP/TODO query
specified in the =#+FEED_MAP_ENTRIES= option.

If present, the exporter uses the in-buffer options =#+TITLE= and
=#+DESCRIPTION= for the feed title and description.  If no title is
given, the exporter uses the file name.  If you want the feed title or
description to be different than title and description of the
published HTML file, you can use the in-buffer options =#+FEED_TITLE=
and =#+FEED_DESCRIPTION=.

Atom feeds are required to have an associated author of a feed and its
entries.  Exporting an Org file to Atom thus always uses the author
specified with the =#+AUTHOR= option as the name of the author of a
feed.  If this option is not present, Org falls back to use

Re: [Orgmode] [ANN] Org to Atom, revisited

2010-06-15 Thread Scot Becker
Wow, David,  This is cool stuff.
___
Emacs-orgmode mailing list
Please use `Reply All' to send replies to the list.
Emacs-orgmode@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode