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

Go Back   MobileRead Forums > E-Book Readers > Amazon Kindle > Kindle Developer's Corner

Notices

Reply
 
Thread Tools Search this Thread
Old 08-30-2011, 07:19 AM   #1
wiccan2
Connoisseur
wiccan2 knows the difference between 'who' and 'whom'wiccan2 knows the difference between 'who' and 'whom'wiccan2 knows the difference between 'who' and 'whom'wiccan2 knows the difference between 'who' and 'whom'wiccan2 knows the difference between 'who' and 'whom'wiccan2 knows the difference between 'who' and 'whom'wiccan2 knows the difference between 'who' and 'whom'wiccan2 knows the difference between 'who' and 'whom'wiccan2 knows the difference between 'who' and 'whom'wiccan2 knows the difference between 'who' and 'whom'wiccan2 knows the difference between 'who' and 'whom'
 
wiccan2's Avatar
 
Posts: 57
Karma: 10288
Join Date: Aug 2011
Location: West Sussex
Device: Kindle 3 - 3g, Samsung Galaxy Note
Clippings Parser

Hi all, this is my first application to do anything with the kindle.

I have written a library that will allow you to parse the "My Clippings.txt" file from your kindle devices. It is in its early stage of development but I have all ready written a small test application to print out the clippings as XML. This could be useful for importing into another application or for converting it to a more readable format.

I have plans to expand this program in the future but development will be slow due to my job and studies. I will eventually develop a graphical interface that will allow the clippings to be organized and exported in a number of formats.

I have uploaded the source for the library, the test application and the doxygen documentation. If you would like more please visit my website where I have uploaded the sources for everything and the library binaries.

To run the test application simply run "java -jar ClippingsExtractor.jar <file>" on the command line/terminal.

I hope this application will interest you and would love to hear your feedback and suggestions for what to put into the graphical interface.

Edit:

I have just uploaded the new version of the application which fixes the date issue. I have now moved away from using Java's built in date parser and written my own as it seems to be less problematic.

Everything should work now, if not let me know and I'll fix it.

Edit 2:

New version uploaded, it should work now. Support for page numbers as well as locations now added. Thanks go to PoP for helping me debug this you've been a huge help.

The GUI version of this is now under development and should be released soon, there is another thread in the Kindle forum for this if people want to discuss it.
Attached Files
File Type: pdf Doxygen.pdf (614.1 KB, 268 views)
File Type: zip Clippings(source).zip (6.5 KB, 202 views)
File Type: zip Clippings Extractor.zip (13.7 KB, 197 views)
File Type: zip ClippingsExtractor v0.11.zip (8.4 KB, 107 views)
File Type: zip Clippings Libray v0.11.zip (7.7 KB, 107 views)
File Type: zip ClippingsExtractor v0.12.zip (17.0 KB, 120 views)
File Type: zip ClippingsLibrary v0.12.zip (10.5 KB, 118 views)

Last edited by wiccan2; 09-08-2011 at 07:43 AM.
wiccan2 is offline   Reply With Quote
Old 08-30-2011, 09:18 AM   #2
PoP
Antonín ♯♭♪♮♫ ᵖʸᶠᵍᶜʳˡ
PoP ought to be getting tired of karma fortunes by now.PoP ought to be getting tired of karma fortunes by now.PoP ought to be getting tired of karma fortunes by now.PoP ought to be getting tired of karma fortunes by now.PoP ought to be getting tired of karma fortunes by now.PoP ought to be getting tired of karma fortunes by now.PoP ought to be getting tired of karma fortunes by now.PoP ought to be getting tired of karma fortunes by now.PoP ought to be getting tired of karma fortunes by now.PoP ought to be getting tired of karma fortunes by now.PoP ought to be getting tired of karma fortunes by now.
 
PoP's Avatar
 
Posts: 518
Karma: 7391817
Join Date: Dec 2010
Location: ♁ ᴺ₄₅°₃₀' ᵂ₇₃°₃₇' ±₆₀"
Device: K3.₄, PRS-350, SGS3, Rπ, iPad Air
Tried with no luck, what should the <file> parameter be pointing at?

Spoiler:

[root@kindle clipx]# java -jar ClippingsExtractor.jar xyz
java.io.FileNotFoundException: /mnt/us/clipx/xyz (No such file or directory)
at java.io.FileInputStream.open(Native Method)
at java.io.FileInputStream.<init>(FileInputStream.jav a:105)
at java.io.FileInputStream.<init>(FileInputStream.jav a:65)
at WT.Kindle.Clippings.Utility.fileToString(Utility.j ava:225)
at WT.Kindle.ClippingsExtractor.Main.main(Main.java:1 6)
at org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoa der.main(JarRsrcLoader.java:58)
at sun.misc.CVM.runMain(CVM.java:538)
java.lang.reflect.InvocationTargetException
at org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoa der.main(JarRsrcLoader.java:58)
at sun.misc.CVM.runMain(CVM.java:538)
Caused by: java.lang.StringIndexOutOfBoundsException: String index out of range: -1
at java.lang.String.substring(Compiled Method)(String.java:1679)
at WT.Kindle.Clippings.Utility.parseClippings(Utility .java:115)
at WT.Kindle.Clippings.Utility.generateBooksList(Util ity.java:131)
at WT.Kindle.Clippings.Utility.generateBooksXML(Utili ty.java:161)
at WT.Kindle.ClippingsExtractor.Main.main(Main.java:1 7)
... 2 more
[root@kindle clipx]#
PoP is offline   Reply With Quote
Old 08-30-2011, 09:47 AM   #3
wiccan2
Connoisseur
wiccan2 knows the difference between 'who' and 'whom'wiccan2 knows the difference between 'who' and 'whom'wiccan2 knows the difference between 'who' and 'whom'wiccan2 knows the difference between 'who' and 'whom'wiccan2 knows the difference between 'who' and 'whom'wiccan2 knows the difference between 'who' and 'whom'wiccan2 knows the difference between 'who' and 'whom'wiccan2 knows the difference between 'who' and 'whom'wiccan2 knows the difference between 'who' and 'whom'wiccan2 knows the difference between 'who' and 'whom'wiccan2 knows the difference between 'who' and 'whom'
 
wiccan2's Avatar
 
Posts: 57
Karma: 10288
Join Date: Aug 2011
Location: West Sussex
Device: Kindle 3 - 3g, Samsung Galaxy Note
The <file> parameter should be the path to the "My Clippings.txt" file.

e.g. "java -jar ClippingsExtractor.jar /home/My\ Clippings.txt"

As this was just an initial proof of concept to show what the library could do I didn't add the code to handle all the exceptions correctly and instead just printed a stack trace which is what you relieved when you didn't enter the file path.

Future versions will handle things better. This version was written over a couple of days in a short period of time after work each day and as such is not as complete as it could be.
wiccan2 is offline   Reply With Quote
Old 08-30-2011, 10:50 AM   #4
PoP
Antonín ♯♭♪♮♫ ᵖʸᶠᵍᶜʳˡ
PoP ought to be getting tired of karma fortunes by now.PoP ought to be getting tired of karma fortunes by now.PoP ought to be getting tired of karma fortunes by now.PoP ought to be getting tired of karma fortunes by now.PoP ought to be getting tired of karma fortunes by now.PoP ought to be getting tired of karma fortunes by now.PoP ought to be getting tired of karma fortunes by now.PoP ought to be getting tired of karma fortunes by now.PoP ought to be getting tired of karma fortunes by now.PoP ought to be getting tired of karma fortunes by now.PoP ought to be getting tired of karma fortunes by now.
 
PoP's Avatar
 
Posts: 518
Karma: 7391817
Join Date: Dec 2010
Location: ♁ ᴺ₄₅°₃₀' ᵂ₇₃°₃₇' ±₆₀"
Device: K3.₄, PRS-350, SGS3, Rπ, iPad Air
Close but no cigar yet:
Spoiler:


e:\z>java -jar ClippingsExtractor.jar Clippings.txt
java.text.ParseException: Unparseable date: "Sunday, September 19, 2010, 09:29 AM"
at java.text.DateFormat.parse(Unknown Source)
at WT.Kindle.Clippings.Clipping.parseDateTime(Clippin g.java:165)
at WT.Kindle.Clippings.Clipping.<init>(Clipping.java: 63)
at WT.Kindle.Clippings.Utility.parseClippings(Utility .java:119)
at WT.Kindle.Clippings.Utility.generateBooksList(Util ity.java:131)
at WT.Kindle.Clippings.Utility.generateBooksXML(Utili ty.java:161)
at WT.Kindle.ClippingsExtractor.Main.main(Main.java:1 7)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Nativ e Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknow n Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Un known Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoa der.main(JarRsrcLoader.java:58)
"ava.text.ParseException: Unparseable date: "Sunday, September 19, 2010, 10:29 AM
at java.text.DateFormat.parse(Unknown Source)
at WT.Kindle.Clippings.Clipping.parseDateTime(Clippin g.java:165)
at WT.Kindle.Clippings.Clipping.<init>(Clipping.java: 63)
at WT.Kindle.Clippings.Utility.parseClippings(Utility .java:119)
at WT.Kindle.Clippings.Utility.generateBooksList(Util ity.java:131)
at WT.Kindle.Clippings.Utility.generateBooksXML(Utili ty.java:161)
at WT.Kindle.ClippingsExtractor.Main.main(Main.java:1 7)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Nativ e Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknow n Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Un known Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoa der.main(JarRsrcLoader.java:58)
"ava.text.ParseException: Unparseable date: "Sunday, October 03, 2010, 10:18 AM
at java.text.DateFormat.parse(Unknown Source)
at WT.Kindle.Clippings.Clipping.parseDateTime(Clippin g.java:165)
at WT.Kindle.Clippings.Clipping.<init>(Clipping.java: 63)
at WT.Kindle.Clippings.Utility.parseClippings(Utility .java:119)
at WT.Kindle.Clippings.Utility.generateBooksList(Util ity.java:131)
at WT.Kindle.Clippings.Utility.generateBooksXML(Utili ty.java:161)
at WT.Kindle.ClippingsExtractor.Main.main(Main.java:1 7)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Nativ e Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknow n Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Un known Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoa der.main(JarRsrcLoader.java:58)
java.text.ParseException: Unparseable date: "Sunday, October 03, 2010, 10:18 AM"
at java.text.DateFormat.parse(Unknown Source)
at WT.Kindle.Clippings.Clipping.parseDateTime(Clippin g.java:165)
at WT.Kindle.Clippings.Clipping.<init>(Clipping.java: 63)
at WT.Kindle.Clippings.Utility.parseClippings(Utility .java:119)
at WT.Kindle.Clippings.Utility.generateBooksList(Util ity.java:131)
at WT.Kindle.Clippings.Utility.generateBooksXML(Utili ty.java:161)
at WT.Kindle.ClippingsExtractor.Main.main(Main.java:1 7)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Nativ e Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknow n Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Un known Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoa der.main(JarRsrcLoader.java:58)
"ava.text.ParseException: Unparseable date: "Sunday, October 03, 2010, 11:09 AM
at java.text.DateFormat.parse(Unknown Source)
at WT.Kindle.Clippings.Clipping.parseDateTime(Clippin g.java:165)
at WT.Kindle.Clippings.Clipping.<init>(Clipping.java: 63)
at WT.Kindle.Clippings.Utility.parseClippings(Utility .java:119)
at WT.Kindle.Clippings.Utility.generateBooksList(Util ity.java:131)
at WT.Kindle.Clippings.Utility.generateBooksXML(Utili ty.java:161)
at WT.Kindle.ClippingsExtractor.Main.main(Main.java:1 7)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Nativ e Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknow n Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Un known Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoa der.main(JarRsrcLoader.java:58)
"ava.text.ParseException: Unparseable date: "Sunday, October 03, 2010, 11:28 AM
at java.text.DateFormat.parse(Unknown Source)
at WT.Kindle.Clippings.Clipping.parseDateTime(Clippin g.java:165)
at WT.Kindle.Clippings.Clipping.<init>(Clipping.java: 63)
at WT.Kindle.Clippings.Utility.parseClippings(Utility .java:119)
at WT.Kindle.Clippings.Utility.generateBooksList(Util ity.java:131)
at WT.Kindle.Clippings.Utility.generateBooksXML(Utili ty.java:161)
at WT.Kindle.ClippingsExtractor.Main.main(Main.java:1 7)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Nativ e Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknow n Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Un known Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoa der.main(JarRsrcLoader.java:58)
Exception in thread "main" java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Nativ e Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknow n Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Un known Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoa der.main(JarRsrcLoader.java:58)
Caused by: java.lang.NumberFormatException: For input string: "happee belle"
at java.lang.NumberFormatException.forInputString(Unk nown Source)
at java.lang.Integer.parseInt(Unknown Source)
at java.lang.Integer.parseInt(Unknown Source)
at WT.Kindle.Clippings.Clipping.parseStartEnd(Clippin g.java:125)
at WT.Kindle.Clippings.Clipping.<init>(Clipping.java: 60)
at WT.Kindle.Clippings.Utility.parseClippings(Utility .java:119)
at WT.Kindle.Clippings.Utility.generateBooksList(Util ity.java:131)
at WT.Kindle.Clippings.Utility.generateBooksXML(Utili ty.java:161)
at WT.Kindle.ClippingsExtractor.Main.main(Main.java:1 7)
... 5 more

e:\z>

P.-S. I will be off the forum for a week and unable to further comment till then. Good luck.

Last edited by PoP; 08-30-2011 at 10:51 AM. Reason: spelling
PoP is offline   Reply With Quote
Old 08-30-2011, 11:03 AM   #5
wiccan2
Connoisseur
wiccan2 knows the difference between 'who' and 'whom'wiccan2 knows the difference between 'who' and 'whom'wiccan2 knows the difference between 'who' and 'whom'wiccan2 knows the difference between 'who' and 'whom'wiccan2 knows the difference between 'who' and 'whom'wiccan2 knows the difference between 'who' and 'whom'wiccan2 knows the difference between 'who' and 'whom'wiccan2 knows the difference between 'who' and 'whom'wiccan2 knows the difference between 'who' and 'whom'wiccan2 knows the difference between 'who' and 'whom'wiccan2 knows the difference between 'who' and 'whom'
 
wiccan2's Avatar
 
Posts: 57
Karma: 10288
Join Date: Aug 2011
Location: West Sussex
Device: Kindle 3 - 3g, Samsung Galaxy Note
It seems that the program is having trouble parsing the dates in your clippings file.

Would it be possible for you to upload your clippings file so that I can debug this further. If not i will try to use the information in the stack trace to debug as far as I can.

Thank you for your help with this as I could never have caught errors like this on my own.
wiccan2 is offline   Reply With Quote
Old 08-31-2011, 05:52 AM   #6
wiccan2
Connoisseur
wiccan2 knows the difference between 'who' and 'whom'wiccan2 knows the difference between 'who' and 'whom'wiccan2 knows the difference between 'who' and 'whom'wiccan2 knows the difference between 'who' and 'whom'wiccan2 knows the difference between 'who' and 'whom'wiccan2 knows the difference between 'who' and 'whom'wiccan2 knows the difference between 'who' and 'whom'wiccan2 knows the difference between 'who' and 'whom'wiccan2 knows the difference between 'who' and 'whom'wiccan2 knows the difference between 'who' and 'whom'wiccan2 knows the difference between 'who' and 'whom'
 
wiccan2's Avatar
 
Posts: 57
Karma: 10288
Join Date: Aug 2011
Location: West Sussex
Device: Kindle 3 - 3g, Samsung Galaxy Note
Just an update for people on the progress of my debugging for the bug PoP found.

I have managed to recreate the error on my own computer. It seems that there may be some characters in the date string that are not displayed e.g. new line characters etc. I think that these were missed due to my initial development being on windows and not linux. The text file is created in linux which means it has different ways of generating new lines. I have clearly overlooked this fact as when I was initially developing the application I had copied the contents of my clippings file into a windows text file.

I should be able to fix this issue tonight so expect another release either tonight or tomorrow.

Also I have managed to get the application working on the kindle in a terminal. This could mean a release that runs on the kindle in the future.

Once this bug is fixed I will start work on a graphical application, what kind of features would the community like to see in this application.

I have seen that people want the clippings organized by books and that they would like to copy the text from a single clipping but what else.

And finally thank you to Mario1up for putting this application in the Comprehensive List of Kindle Hacks.
wiccan2 is offline   Reply With Quote
Old 09-06-2011, 04:04 PM   #7
PoP
Antonín ♯♭♪♮♫ ᵖʸᶠᵍᶜʳˡ
PoP ought to be getting tired of karma fortunes by now.PoP ought to be getting tired of karma fortunes by now.PoP ought to be getting tired of karma fortunes by now.PoP ought to be getting tired of karma fortunes by now.PoP ought to be getting tired of karma fortunes by now.PoP ought to be getting tired of karma fortunes by now.PoP ought to be getting tired of karma fortunes by now.PoP ought to be getting tired of karma fortunes by now.PoP ought to be getting tired of karma fortunes by now.PoP ought to be getting tired of karma fortunes by now.PoP ought to be getting tired of karma fortunes by now.
 
PoP's Avatar
 
Posts: 518
Karma: 7391817
Join Date: Dec 2010
Location: ♁ ᴺ₄₅°₃₀' ᵂ₇₃°₃₇' ±₆₀"
Device: K3.₄, PRS-350, SGS3, Rπ, iPad Air
Thanks for your version 0.11, getting closer:
Spoiler:

E:\z>java -jar ClippingsExtractor.jar clippings.txt
Exception in thread "main" java.lang.NumberFormatException: For input string: "happee belle"
at java.lang.NumberFormatException.forInputString(Unk nown Source)
at java.lang.Integer.parseInt(Unknown Source)
at java.lang.Integer.parseInt(Unknown Source)
at WT.Kindle.Clippings.Clipping.parseStartEnd(Clippin g.java:125)
at WT.Kindle.Clippings.Clipping.<init>(Clipping.java: 60)
at WT.Kindle.Clippings.Utility.parseClippings(Utility .java:122)
at WT.Kindle.Clippings.Utility.generateBooksList(Util ity.java:134)
at WT.Kindle.Clippings.Utility.generateBooksXML(Utili ty.java:164)
at WT.Kindle.ClippingsExtractor.Main.main(Main.java:1 7)

E:\z


Find attached my Clippings file in case you need it for debugging. Clippings.txt
PoP is offline   Reply With Quote
Old 09-06-2011, 07:10 PM   #8
wiccan2
Connoisseur
wiccan2 knows the difference between 'who' and 'whom'wiccan2 knows the difference between 'who' and 'whom'wiccan2 knows the difference between 'who' and 'whom'wiccan2 knows the difference between 'who' and 'whom'wiccan2 knows the difference between 'who' and 'whom'wiccan2 knows the difference between 'who' and 'whom'wiccan2 knows the difference between 'who' and 'whom'wiccan2 knows the difference between 'who' and 'whom'wiccan2 knows the difference between 'who' and 'whom'wiccan2 knows the difference between 'who' and 'whom'wiccan2 knows the difference between 'who' and 'whom'
 
wiccan2's Avatar
 
Posts: 57
Karma: 10288
Join Date: Aug 2011
Location: West Sussex
Device: Kindle 3 - 3g, Samsung Galaxy Note
Thank you for uploading your clippings file it made debugging much easier.

I have fixed this issue now and your clippings file runs through the application fine now.

The problem was being caused by some of your clippings having "Page" instead of "Loc.". I never knew that the clippings file could be structured like this as my file doesn't contain "Page".

There are still some other issues at the moment so I won't be releasing an update until they are fixed. Expect an update sometime tomorrow.
wiccan2 is offline   Reply With Quote
Old 09-08-2011, 07:45 AM   #9
wiccan2
Connoisseur
wiccan2 knows the difference between 'who' and 'whom'wiccan2 knows the difference between 'who' and 'whom'wiccan2 knows the difference between 'who' and 'whom'wiccan2 knows the difference between 'who' and 'whom'wiccan2 knows the difference between 'who' and 'whom'wiccan2 knows the difference between 'who' and 'whom'wiccan2 knows the difference between 'who' and 'whom'wiccan2 knows the difference between 'who' and 'whom'wiccan2 knows the difference between 'who' and 'whom'wiccan2 knows the difference between 'who' and 'whom'wiccan2 knows the difference between 'who' and 'whom'
 
wiccan2's Avatar
 
Posts: 57
Karma: 10288
Join Date: Aug 2011
Location: West Sussex
Device: Kindle 3 - 3g, Samsung Galaxy Note
New version out now, see post 1.

Should be fixed now. As well as page support the clippings are now sorted by their start locations.
wiccan2 is offline   Reply With Quote
Old 09-08-2011, 08:18 AM   #10
PoP
Antonín ♯♭♪♮♫ ᵖʸᶠᵍᶜʳˡ
PoP ought to be getting tired of karma fortunes by now.PoP ought to be getting tired of karma fortunes by now.PoP ought to be getting tired of karma fortunes by now.PoP ought to be getting tired of karma fortunes by now.PoP ought to be getting tired of karma fortunes by now.PoP ought to be getting tired of karma fortunes by now.PoP ought to be getting tired of karma fortunes by now.PoP ought to be getting tired of karma fortunes by now.PoP ought to be getting tired of karma fortunes by now.PoP ought to be getting tired of karma fortunes by now.PoP ought to be getting tired of karma fortunes by now.
 
PoP's Avatar
 
Posts: 518
Karma: 7391817
Join Date: Dec 2010
Location: ♁ ᴺ₄₅°₃₀' ᵂ₇₃°₃₇' ±₆₀"
Device: K3.₄, PRS-350, SGS3, Rπ, iPad Air
Nice. Thank you wiccan2.
PoP is offline   Reply With Quote
Old 09-21-2011, 02:21 PM   #11
wiccan2
Connoisseur
wiccan2 knows the difference between 'who' and 'whom'wiccan2 knows the difference between 'who' and 'whom'wiccan2 knows the difference between 'who' and 'whom'wiccan2 knows the difference between 'who' and 'whom'wiccan2 knows the difference between 'who' and 'whom'wiccan2 knows the difference between 'who' and 'whom'wiccan2 knows the difference between 'who' and 'whom'wiccan2 knows the difference between 'who' and 'whom'wiccan2 knows the difference between 'who' and 'whom'wiccan2 knows the difference between 'who' and 'whom'wiccan2 knows the difference between 'who' and 'whom'
 
wiccan2's Avatar
 
Posts: 57
Karma: 10288
Join Date: Aug 2011
Location: West Sussex
Device: Kindle 3 - 3g, Samsung Galaxy Note
Just thought you might like to know that there is a GUI version it's available here.
wiccan2 is offline   Reply With Quote
Reply

Thread Tools Search this Thread
Search this Thread:

Advanced Search

Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
Hello and my clippings won't sync dave33 Introduce Yourself 5 11-19-2010 07:18 PM
Organizing clippings manda243 Amazon Kindle 8 11-02-2010 01:52 AM
My Clippings jsherwood Amazon Kindle 1 10-06-2010 05:07 PM
Clippings anyone ? Prince Hal Astak EZReader 4 02-20-2010 01:24 PM
Parser can't identify form used for user/pass Solari Calibre 3 03-01-2009 08:04 PM


All times are GMT -4. The time now is 08:57 AM.


MobileRead.com is a privately owned, operated and funded community.