{"id":83,"date":"2005-12-20T01:34:11","date_gmt":"2005-12-20T06:34:11","guid":{"rendered":"https:\/\/dillernet.com\/apple\/?p=83"},"modified":"2005-12-20T01:34:11","modified_gmt":"2005-12-20T06:34:11","slug":"bookmark-management-on-the-nokia-770","status":"publish","type":"post","link":"https:\/\/dillernet.com\/apple\/2005\/12\/20\/bookmark-management-on-the-nokia-770\/","title":{"rendered":"Bookmark Management on the Nokia 770"},"content":{"rendered":"<p>Ready to export your existing bookmarks onto the 770? Just as I wasn&#8217;t willing to enter in my RSS feeds by hand, the same goes for my bookmarks. I wanted to export my perfectly good bookmark lists in Firefox and put them on the 770, since it is supposed to stand in for my laptop surfing around the house. The virtual keyboard is not an option.<\/p>\n<p>Luckily a few good things have happened: back in 1998 some Python hackers wanted to show off the XML support in Python, so they <a href=\"http:\/\/pyxml.sourceforge.net\/topics\/xbel\/\">created the XBEL format<\/a> for the exchange of bookmark data. And the smart folks at Nokia are using a bookmarks manager application that uses <a href=\"http:\/\/xbel.sourceforge.net\/\">XBEL<\/a> raw (just as the RSS reader used OPML raw for its feed list). I am impressed that Nokia is cutting edge as far as open file formats are concerned. And finally, Firefox can spit out its bookmarks as XBEL, with the proper extension.<\/p>\n<p>The final piece was tracking down the elusive bookmarks file on the 770. There is a file located in your home directory (\/home\/user\/.opera\/customurls) that looks promising, but it turns out that it&#8217;s not the bookmarks file. That file resides over in the \/usr\/share\/osso-bookmarks directory. From what I can determine, while the browser is a port of <a href=\"http:\/\/www.opera.com\/products\/mobile\/\">Opera Mobile<\/a>, the bookmarks manager is its own application that is not related to Opera.\n<\/p>\n<p>Warning: this procedure is a hack, and a laborious one at that. What we need is a Python script to take the XBEL export from Firefox and convert it to the XBEL format that the 770 likes (see my issues section below). Till then you can use an XML editor to cut, paste, and edit the attributes of your bookmark objects in XBEL and massage them into the format that the 770 accepts.\n<\/p>\n<p>The method I outline below works, but it&#8217;s a PITA. To me, it&#8217;s easier than typing all my bookmarks via the virtual keyboard. But I used this on a subset of my full bookmark list. I&#8217;m working on the Python script (when I have the time).\n<\/p>\n<h2>Overview <\/h2>\n<p>There are four major steps to this:<\/p>\n<ul>\n<li>Get the bookmarks file from the 770\n<\/li>\n<li>Export bookmarks from Firefox\n<\/li>\n<li>Use XML editor to copy and clean data\n<\/li>\n<li>Copy the bookmarks file back to the 770\n<\/li>\n<\/ul>\n<h2>Transferring Bookmarks to Desktop<\/h2>\n<ul>\n<li>\n<p><strong>Using MMC and USB<\/strong><\/p>\n<ul>\n<li>Windows\/Macintosh\/Linux\n<ul>\n<li>On the 770 open an xterm and copy the bookmarks file over. <\/li>\n<li>$ cp \/usr\/share\/osso-bookmarks\/bookmarks\/MyBookmarks.xml \/media\/mmc1<\/li>\n<\/ul>\n<\/li>\n<li>Then plug<br \/>\n        in the USB connector into your desktop and copy the <em>MyBookmarks.xml<\/em> file<br \/>\n      to your desktop computer.\n      <\/li>\n<\/ul>\n<p>\n  <\/li>\n<li><strong>Using SSH<\/strong>    <br \/> \n<ul>\n<li>Setup your ssh environment\n<ul>\n<li>You should already have your ssh environment setup, using the<br \/>\n                      <a href=\"http:\/\/maemo.org\/maemowiki\/InstallSsh\">DropBear ssh server and clients<\/a>. You need to follow the<br \/>\n              Dropbear installation directions and have your authorized_keys<br \/>\n              file setup on your 770 with the identities of your Desktop Host.<br \/>\n              In this case, I have the ssh server running as root, so I&rsquo;m<br \/>\n            not specifying the port in the scp command.<\/li>\n<li>To ssh over your bookmarks file to your Desktop:\n<ul>\n<li>dillera$ scp user@192.168.251.53:<br \/>\n\/usr\/share\/osso-bookmarks\/<br \/>\nbookmarks\/MyBookmarks.xml .\n<\/li>\n<li> Don&#8217;t forget that period &#8216;.&#8217; at the end of that last command- it means copy that file into the directory that you are currently in (on your desktop computer).<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h2>Exporting Firefox Bookmarks<\/h2>\n<h3>Get Bookmarks Synchronizer Extension<\/h3>\n<ul>\n<li>For<br \/>\n  up to version 1.5 of Firefox you need <a href=\"https:\/\/addons.mozilla.org\/extensions\/moreinfo.php?id=14&#038;vid=15&#038;category=Bookmarks\">this<br \/>\n  version<\/a>, For<br \/>\n  version 1.5 <a href=\"http:\/\/www.beatnikpad.com\/archives\/2005\/09\/09\/firefox-15-beta-compatible-extensions\">this<br \/>\n  one<\/a>. <\/li>\n<li>Export your bookmarks\n<ul>\n<li>Bookmarks\/Synchronize bookmarks<\/li>\n<li>Advanced Tab<\/li>\n<li>Uncheck everything but &ldquo;<em>Check the XBEL public<\/em>&hellip;&rdquo;<\/li>\n<li>Click on the Export XBEL button<\/li>\n<\/ul>\n<\/li>\n<li>Name your xml file appropriately.\n<\/li>\n<\/ul>\n<h2>Opening and Editing the Bookmarks File<\/h2>\n<ul>\n<li>    Finding an XML Editor\n<ul>\n<li>Macintosh &#8211; <a href=\"http:\/\/www.elfdata.com\/\">ELFData XML editor<\/a> available<br \/>\n      as a 7 day demo<\/li>\n<\/ul>\n<\/li>\n<li>    Downloading the DTD\n<ul>\n<li>Download the <a href=\"http:\/\/www.python.org\/topics\/xml\/dtds\/xbel-1.0.dtd\">XBEL<br \/>\n          DTD<\/a> at http:\/\/www.python.org\/topics\/xml\/dtds\/xbel-1.0.dtd<br \/>\n      and install it into your XML editors plugin directory (or where ever your<br \/>\n          editor wants DTD to go). <\/li>\n<\/ul>\n<\/li>\n<li>    Use the XML editor to copy and paste your<br \/>\n  bookmarks into your existing MyBookmarks (from 770), keeping in mind the issues<br \/>\n    listed below and removing and adding the data that the 770 requires. <\/li>\n<\/ul>\n<h3>Issues:<\/h3>\n<ul>\n<li>    Differences in XML<br \/>\nformats on the 770 and Firefox XBEL<\/p>\n<ul>\n<li><span class=\"style1\">Firefox<\/span>: Inside each folder and bookmark<br \/>\n        element, Firefox stores a <strong>rdf<\/strong> attribute, unfortunately<br \/>\n        you need to remove it.<\/li>\n<li><span class=\"style1\">770<\/span>: The <strong>bookmark<\/strong> object requires<br \/>\n        the <strong>info<\/strong> element as a child, which contains the <strong>metadata<\/strong> element as its child.<br \/>\n        The metadata element contains two attributes: the time that you added the bookmark and the time you<br \/>\n        last visited the site. You must add these into the copied bookmark elements<br \/>\n        from Firefox, or the 770 bookmarks application won&#8217;t read the file.<\/li>\n<li><span class=\"style1\">700<\/span>: <strong>Folder<\/strong> element: requires<br \/>\n        a &lsquo;folded&rsquo; attribute, as well<br \/>\n    as the same info\/metadata child elements and their attributes that exist in the bookmarks elements.<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<blockquote><p>[Thanks for Roger Sperberg&#8217;s comment and correction on my XML nomenclature!]<\/p><\/blockquote>\n<p>Once you are done editing the MyBookmarks.xml file, save it and copy it (ssh or MMC card\/USB) back over to the 770. Make sure that the bookmarks application is not running on the 770. Then start the bookmarks application and check out your bookmarks.<\/p>\n<p>Following are two screen shots from the ELFData editor on the Mac, showing the XBEL output from Firefox and the MyBookmarks.xml file from the 770. You can use just a text editor for this of course, but I found that the ELFData editor let you copy and paste objects so moving them around with their attributes was easy.<\/p>\n<p>I&#8217;m also fooling around with <a href=\"http:\/\/bookmarkbridge.sourceforge.net\/\">BookMark Bridge<\/a>, available over at sourceforge. I&#8217;m trying to built in on my Ubuntu powered Powerbook G4, and once it&#8217;s built I&#8217;m hoping that it will let me mange these XBEL files better.<\/p>\n<p>Screen shots are on the Extended Page&#8230;.<br \/>\n<!--more--><br \/>\nHere are some screen shots:<\/p>\n<p>XBEL export on Firefox, from the Bookmarks Synchronizer:<\/p>\n<p><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" src=\"https:\/\/i0.wp.com\/dillernet.com\/apple\/wp-content\/images\/DeerPark_bookmarks-sync.png?resize=300%2C380&#038;ssl=1\" border=\"0\" height=\"380\" width=\"300\" alt=\"DeerPark_bookmarks-sync.png\" align=\"middle\" \/><\/p>\n<hr \/>\n<p>XML from Firefox:<\/p>\n<p><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" src=\"https:\/\/i0.wp.com\/dillernet.com\/apple\/wp-content\/images\/XML-Editor_xbel-firefox.png?resize=588%2C326&#038;ssl=1\" border=\"0\" height=\"326\" width=\"588\" alt=\"XML-Editor_xbel-firefox.png\" align=\"middle\" \/><\/p>\n<hr \/>\n<p>XML from 770:<\/p>\n<p><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" src=\"https:\/\/i0.wp.com\/dillernet.com\/apple\/wp-content\/images\/XML-Editor_xbel-770.png?resize=646%2C344&#038;ssl=1\" border=\"0\" height=\"344\" width=\"646\" alt=\"XML-Editor_xbel-770.png\" align=\"middle\" \/><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Ready to export your existing bookmarks onto the 770? Just as I wasn&#8217;t willing to enter in my RSS feeds by hand, the same goes for my bookmarks. I wanted to export my perfectly good bookmark lists in Firefox and put them on the 770, since it is supposed to stand in for my laptop [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[10,6],"tags":[],"class_list":["post-83","post","type-post","status-publish","format-standard","hentry","category-nokia-770","category-tech"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p3PE01-1l","jetpack-related-posts":[{"id":80,"url":"https:\/\/dillernet.com\/apple\/2005\/12\/14\/bookmarks-cracked-on-770\/","url_meta":{"origin":83,"position":0},"title":"Bookmarks Cracked on 770","author":"admin","date":"December 14, 2005","format":false,"excerpt":"I figured out how to manipulate the bookmarks for the Opera on the Nokia 770. They are stored in XBEL format. More later as I perfect this. You can export XBEL formatted bookmarks right out of Firefox with the Bookmarks Synchronizer-- that is the key. Go here to get a\u2026","rel":"","context":"In &quot;Nokia 770&quot;","block_context":{"text":"Nokia 770","link":"https:\/\/dillernet.com\/apple\/category\/nokia-770\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":96,"url":"https:\/\/dillernet.com\/apple\/2006\/01\/11\/770-previous-post-redux\/","url_meta":{"origin":83,"position":1},"title":"770 Previous Post Redux","author":"admin","date":"January 11, 2006","format":false,"excerpt":"Some important updates on my past 770 posts. Swap If you are using .51 firmware and want to use swap, use 24 megs or less. I had problems using 128, then 64, then 32 megs. Finally Andy Flegg was able to tip me off that there is an issue with\u2026","rel":"","context":"In &quot;Nokia 770&quot;","block_context":{"text":"Nokia 770","link":"https:\/\/dillernet.com\/apple\/category\/nokia-770\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":70,"url":"https:\/\/dillernet.com\/apple\/2005\/12\/10\/rss-wrangling-on-the-770\/","url_meta":{"origin":83,"position":2},"title":"RSS Wrangling on the 770","author":"dillera","date":"December 10, 2005","format":false,"excerpt":"I was looking around the other day for some good gui blog posting apps for windows. But I was also looking for some good RSS readers for Windows... I ended up looking at RSS Bandit and the OPML editor from Dave Winer. The OPML editor is a bit of a\u2026","rel":"","context":"In &quot;Nokia 770&quot;","block_context":{"text":"Nokia 770","link":"https:\/\/dillernet.com\/apple\/category\/nokia-770\/"},"img":{"alt_text":"opml.gif","src":"\/apple\/wp-content\/images\/opml.gif","width":350,"height":200},"classes":[]},{"id":84,"url":"https:\/\/dillernet.com\/apple\/2005\/12\/27\/making-swap\/","url_meta":{"origin":83,"position":3},"title":"Making Swap","author":"admin","date":"December 27, 2005","format":false,"excerpt":"In my quest to speed up the 770 (I think that by loading my bookmarks and RSS feeds I've crushed it- it's just so slow now that it's mostly unusable) I ran across a link in the comments here to a post on the users list about enabling swap on\u2026","rel":"","context":"In &quot;Nokia 770&quot;","block_context":{"text":"Nokia 770","link":"https:\/\/dillernet.com\/apple\/category\/nokia-770\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":72,"url":"https:\/\/dillernet.com\/apple\/2005\/12\/10\/rss-on-nokia-770\/","url_meta":{"origin":83,"position":4},"title":"RSS on Nokia 770","author":"admin","date":"December 10, 2005","format":false,"excerpt":"So I just got my 770 yesterday, and it seems to be as good as I had imagined. I've installed some cool stuff, and am using it as I planned- as a replacement for my laptop around the house when I just want to surf and read the web and\u2026","rel":"","context":"In &quot;Nokia 770&quot;","block_context":{"text":"Nokia 770","link":"https:\/\/dillernet.com\/apple\/category\/nokia-770\/"},"img":{"alt_text":"770-feedlist-editing.png","src":"\/apple\/wp-content\/images\/770-feedlist-editing.png","width":350,"height":200,"srcset":"\/apple\/wp-content\/images\/770-feedlist-editing.png 1x, \/apple\/wp-content\/images\/770-feedlist-editing.png 1.5x"},"classes":[]},{"id":73,"url":"https:\/\/dillernet.com\/apple\/2005\/12\/10\/770-reader-meet-opml-editor\/","url_meta":{"origin":83,"position":5},"title":"770 Reader meet OPML Editor","author":"admin","date":"December 10, 2005","format":false,"excerpt":"One OPML reader that did agree with the OPML output by the Liferea RSS reader in the Nokia 770 was the OPML Editor written by Dave Winer. Go figure.","rel":"","context":"In &quot;Nokia 770&quot;","block_context":{"text":"Nokia 770","link":"https:\/\/dillernet.com\/apple\/category\/nokia-770\/"},"img":{"alt_text":"OMPL-Editor-w-ossofeedlist.png","src":"\/blogs\/wp-syncingapple\/wp-content\/images\/OMPL-Editor-w-ossofeedlist.png","width":350,"height":200},"classes":[]}],"jetpack_likes_enabled":true,"_links":{"self":[{"href":"https:\/\/dillernet.com\/apple\/wp-json\/wp\/v2\/posts\/83","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/dillernet.com\/apple\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/dillernet.com\/apple\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/dillernet.com\/apple\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/dillernet.com\/apple\/wp-json\/wp\/v2\/comments?post=83"}],"version-history":[{"count":0,"href":"https:\/\/dillernet.com\/apple\/wp-json\/wp\/v2\/posts\/83\/revisions"}],"wp:attachment":[{"href":"https:\/\/dillernet.com\/apple\/wp-json\/wp\/v2\/media?parent=83"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/dillernet.com\/apple\/wp-json\/wp\/v2\/categories?post=83"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/dillernet.com\/apple\/wp-json\/wp\/v2\/tags?post=83"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}