Difference between revisions of "EverNote"

From Dietrich Blog (Strato)
Jump to: navigation, search
(Transformation Evernote2Atom)
(Transformation nach RSS)
Line 114: Line 114:
 
Im Gegensatz zu [[Atom]] lässt sich [[RSS]] bestens importieren.
 
Im Gegensatz zu [[Atom]] lässt sich [[RSS]] bestens importieren.
  
 +
=== RSS Testdatei ===
 
Mit diesem kleinen (manuell erstellten) RSS-Test-File habe ich es ausprobiert:
 
Mit diesem kleinen (manuell erstellten) RSS-Test-File habe ich es ausprobiert:
 
<pre>
 
<pre>
Line 161: Line 162:
 
</pre>
 
</pre>
  
 +
=== XSL Transformation ===
 
Dieses Zielformat erreicheich mit diesem '''Atom2RSS.xsl''':
 
Dieses Zielformat erreicheich mit diesem '''Atom2RSS.xsl''':
 
<pre>
 
<pre>

Revision as of 11:53, 13 April 2008

EverNote ist einer der Kandidaten für mein Notizbuch, das ich vom PDA bzw. MicrosoftOutlook ablösen wollte.

EverNote ist in der Grundversion kostenlos und verfügt auch über eine Importfunktion für Outlook-Notizen.

Erfahrungen mit EverNote

Eine Probephase mit EverNote erbrachte folgende Erkenntnisse:

  • Import der Outlook-Notizen hat gut funktioniert.
  • Auf dem PC konnte ich es gut nutzen, auf dem PDA habe ich keine Möglichkeit gefunden
  • Der Funktionsumfang ist für meine Anforderungen zu groß (Handschriftenerkennung, Einnisten in den WebBrowser,...)
  • Die Benutzeroberfläche ist mir zu kompliziert, besonders, da ich diese Funktionen nur seltener benutze
  • Ich benötige das Ding nicht ständig - Minute für Minute, von früh bis spät - Nein, nur ein bis zwei Mal die Woche

Schlussfolgerungen

Ich versuche jetzt, meine Notizbuch als WebLog zu organisieren und über RSS auch auf den PDA zu kommen.

Export in eine XML-Datei

Die nun in EverNote vorhandenen Textnotizen können mit vollem Informationsgehalt in eine XML-Datei exportiert werden.

Auszugsweise sieht das so aus:

<evernote>
<notes>
<note name="title" content_date="2005/03/30 15:30:45" created="2008/04/07 19:55:01" id="[FA1234-5678-45454554]">
<content type="html">
   <div>...html content...</div>
</content>
<contentplain>
   ....plain ascii content
</contentplain>
</note>
</notes>
</evernote>

Transformation nach Atom

Hat man erst einmal die XML-Datei, steht die Welt offen, um mit Hilfe von XSLT diverse andere Formate zu erzeugen, z.B. für WordPress (über LiveJournal) oder Atom oder...

XSL Transformation

Für die Transformation in das Atom-Format habe ich ein XSLT-Sheet entwickelt. Zwei manuelle Nacharbeiten sind dann noch nötig:

  • EverNote liefert den formatierten Notizentext als komplettes HTML-Dokument. Im Atom wird nur ein <DIV> Container erwartet. Die überschüssige HTML habe ich manuell entfernt.
  • EverNote verwendet im formatierten Notizen Text "<BR>". Dies habe ich per FileEditing geändert in "<br />"
  • Damit mein NewsfeedReader RssBandit dann auch den formatierten Notizentext anzeigt, musste ich letztlich dann noch den unformatierten Text (CONTENTPLAIN) ganz entfernen.

Die Datei Evernote2Atom.XSL sieht dann so aus:

<?xml version="1.0" encoding="iso-8859-1"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns="http://www.w3.org/2005/Atom" version="1.0">
<xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes" cdata-section-elements="content" />

<xsl:template match="/EVERNOTE"> 
<xsl:text>
</xsl:text><feed> 
            <title>Notizbuch</title>
            <subtitle>Ehemalige Outlook-Notizen</subtitle>
            <link href="http://example.org/feed/" rel="self"/>
            <link href="http://example.org/"/>
            <xsl:variable name="D" select="@date" />
            <updated>
               <xsl:value-of select="concat(substring($D,1,4),'-',substring($D,6,2),'-',substring($D,9,2),'T',substring($D,12,8),'Z')" />
            </updated>
            <author>
              <name>Dietrich Kracht</name>
              <email>dietrich@kr8.de</email>
            </author>
            <id>urn:uuid:60a76c80-d399-11d9-b91C-0003939e0af6</id>
            <xsl:apply-templates select="//NOTE"/>
            </feed>
</xsl:template>
   
<xsl:template match="/EVERNOTE/NOTES/NOTE">
<entry>
          <title>
              <xsl:value-of select="@name"/> 
          </title>
          <link href="http://localhost/wordpress/?p=33"/>
          <id>
              <xsl:value-of select="@id" />
          </id>
          <xsl:variable name="D" select="@content_date" />
          <updated>
              <xsl:value-of select="concat(substring($D,1,4),'-',substring($D,6,2),'-',substring($D,9,2),'T',substring($D,12,8),'Z')" />
          </updated>
          <xsl:variable name="D" select="@created" />
          <published>
              <xsl:value-of select="concat(substring($D,1,4),'-',substring($D,6,2),'-',substring($D,9,2),'T',substring($D,12,8),'Z')" />
          </published>
          <category term="Notizbuch" />
          <author>
              <name>dkracht</name>
          </author> 
          <content type="xhtml">
             <xsl:value-of select="CONTENT" />
          </content>  
          <content2>
              <xsl:value-of select="CONTENTPLAIN"/> 
          </content2>
</entry>
</xsl:template>
</xsl:stylesheet>

Anmerkung: Damit die Sache mit den cdata-section-elements auch funktioniert, war es erforderlich den Namespace ganz oben in der zweiten Zeile anzugeben.

Atom als Format ungeeignet

Nun habe ich meine alten Textnotizen über EverNote und XSLT in ein schönes Atom-Format transformiert, leider vergebens, denn eigentlich niemend kann Atom importieren:

  • WordPress kann kein Atom importieren
  • Serendipity kann kein Atom importieren
  • Blogger.com kann kein Atom importieren

Konsequenz: Nun transformiere ich ein weiteres Mal und zwar jetzt in RSS.

Transformation nach RSS

Im Gegensatz zu Atom lässt sich RSS bestens importieren.

RSS Testdatei

Mit diesem kleinen (manuell erstellten) RSS-Test-File habe ich es ausprobiert:

<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
    xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/">

<channel>
    <title>NotizbuchRSS</title>
    <link>http://192.168.1.20/wordpress/</link>
    <pubDate>Thu, 12 Apr 2008 13:05:55 +0100</pubDate>
    <description>Ehemalige Outlook-Notizen</description>

    <item>
    <title>Nokia 3650 Combines Phone And Photos</title>
    <link>http://192.168.1.20/wordpress/?p=20</link>
    <pubDate>Thu, 13 Apr 2008 12:47:14 +0100</pubDate>
    <dc:creator>dkracht</dc:creator>
    <category>Notizbuch</category>    
    <description>I've been playing with the new Nokia 3650. Finally, someone has got the combination of a cell phone with digital camera capabilities right!
    </description>
    </item>

    <item>
    <title>Sanyo Tablet PC Amazes!</title>
    <link>http://192.168.1.20/wordpress/?p=21</link>
    <pubDate>Thu, 14 Apr 2008 02:42:31 +0100</pubDate>
    <dc:creator>dkracht</dc:creator>
    <category>Notizbuch</category>
    <description></description>   
    <content:encoded><![CDATA[I was dubious about the new <b>Tablet PCs</b>, but then I saw the latest from Sanyo. <br />Wow, cool looks and it works!]]>    </content:encoded>
    </item>

    <item>
    <title>Canon MegaTiny Digital Camera Too Small</title>
    <link>http://192.168.1.20/wordpress/?p=22</link>
    <pubDate>Thu, 15 Apr 2008 11:12:47 +0100</pubDate>
    <dc:creator>dkracht</dc:creator>
    <category>Notizbuch</category>
    <description>OK, there is a limit to just how small is too small. Canon's MetaTiny, no larger than a quarter, simply is too little to use properly
    </description>
    </item>
</channel>
</rss>

XSL Transformation

Dieses Zielformat erreicheich mit diesem Atom2RSS.xsl:


-- Dkracht 21:58, 9 February 2008 (CET)