Register Guidelines E-Books Search Today's Posts Mark Forums Read

Go Back   MobileRead Forums > E-Book Readers > More E-Book Readers > iRex > iRex Developer's Corner


Thread Tools Search this Thread
Old 01-19-2008, 03:52 PM   #1
daudi has learned how to read e-booksdaudi has learned how to read e-booksdaudi has learned how to read e-booksdaudi has learned how to read e-booksdaudi has learned how to read e-booksdaudi has learned how to read e-booksdaudi has learned how to read e-booksdaudi has learned how to read e-books
Posts: 281
Karma: 904
Join Date: Oct 2007
Location: Newcastle upon Tyne, UK
Device: iRex iLiad, Psion 5MX, nokia n800
jabref export filters for iliad PDF management

This is a spin-off from the thread about using the iliad for research. I now have some jabref export filters that I am happy with. There are three filters and to use them all you need to do is unzip the attached file to some sensible place on your computer (not your iliad), start jabref and go to Options->"Manage custom exports" and add these three export files.

These export files will only work if your PDFs are named in the same way as your bibtex keys, e.g. if your bibtex key is bloggs1997, your PDF must be named bloggs1997.pdf

Once you have done that you can do the following:

i) Select a single reference and create a manifest file that uses the title from the jabref entry as the title in the contentlister; the authors for the first line of the description; and the pages and journal name for the second line of the description. It is easy to change which fields are used---just take a look at the jabref help file for details.

ii) The second custom export creates a python/jython script that when run will process multiple PDFs. For this script to work the PDFs must be in the same directory as the script. For example, you could plug your CF card or USB key into your PC and process them there.

"Process" means different things depending on whether or not the PDF has already been opened on the iliad. If the PDF has not been opened on the iliad, it is just a plain PDF file. The script will therefore create the container directory, move the PDF into the container, create a manifest file and create a template scribble file for scribbles.

If the PDF has already been opened on the iliad it will already have a container folder and also possibly have some scribbles. The script will therefore only replace the manifest file.

If the journal name matches the name of a png image in the images directory then a line will be added to the manifest file and the image will be copied into the container directory. In this way it is possible to have images for each journal you read and have that appear in the contentlister.

If you select a record to process and the PDF is not present it will be recorded in an error.log file. This could happen if the key does not correctly match the name of the PDF.

iii) the third custom export creates symlinks to the selected entries. For this to work you need to specify the correct path in the layout file. That will depend on where your articles are located. If you have them on a USB key the correct path will start with "/mnt/usb/". It could, for example, be "/mnt/usb/myrefs". The attachment is configured to work with the way I have things setup and you'll have to change it to suit your own setup.

How is this useful? Imagine you have hundreds of refs on your iliad and you want to start a new project or paper on some topic. You do a quick search on your existing jabref library and find that you have a number of papers already about that topic that you should either read again or at least keep handy for the paper. Or perhaps you have searched for new literature and downloaded a load of PDFs and imported the citations into jabref. You use the second export filter above to process the PDFs so they now all have sensible entries to display in the contentlister, but you also have a dilema: do you move the PDFs to your main library of articles and books or do you keep them separately in a folder for this new paper? You do both. You move the originals to the library and create symlinks to them that you place in the folder you are using for the new project. When you open a symlink you open the original file in the main library.

Be careful about deleting iliad symlinks though. If you use the contentlister to delete them you will delete the original, not the symlink, wiping out your scribbles as well as the PDF. Only delete symlinks using your file manager.

Two export filters produce python/jython scripts, they don't actually process the PDFs or create symlinks on their own---you have to run the scripts they produce. jython is a java implementation of python version 2.2.1 (so it does not have the newer python features). I originally started this using bash scripts and my rationale for now taking this python/jython approach is try to make it easy for people who do not have python installed to use. This should run on windows as well as linux or mac. Rather than get them to install python just for this, they can get the jython jar file and use that. People using jabref will have java already, so there is nothing else to install. To get the jython jar file, go to the jython website and download the installer. When running the installer, choose the *standalone* version.

Once you have jython you can just export to a file, say, and then run
java -jar jython
in the directory with the PDFs.

Or you can use python:
Attached Files
File Type: zip (30.8 KB, 260 views)

Last edited by daudi; 01-19-2008 at 04:09 PM.
daudi is offline   Reply With Quote

Thread Tools Search this Thread
Search this Thread:

Advanced Search

Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
iLiad iLiad with pdf? Strykor iRex 6 03-29-2010 12:32 PM
Export Metadata to epub/pdf/txt - feature request? asktheeightball Calibre 0 11-27-2009 04:35 PM
OpenOffice PDF Import and Hybrid Export wallcraft Workshop 0 06-06-2008 08:15 PM
Warning: accessing CF card through iLiad export can corrupt files nekokami iRex 0 11-28-2007 08:09 PM
iliad and pdf versions joblack iRex 1 01-24-2007 09:25 AM

All times are GMT -4. The time now is 02:30 AM. is a privately owned, operated and funded community.