Xapers
Quoting Jameson Graef Rollins (2013-04-15 18:18:00) > On Mon, Apr 15 2013, Jameson Graef Rollins > wrote: > > README and a screenshot of the curses ui here: > > > > http://finestructure.net/xapers/README > > http://finestructure.net/xapers/screenshot.png > > I maybe should have been a little clearer that all necessary > instructions should be in the README, including the source repo: > > git://finestructure.net/xapers Brilliant idea! here's some early feedback: * is there a way to batch import a bunch of pdfs? or better yet, a bibtex file with entries pointing to files like the ones produced by say jabref? There, entries have some line like this: file = {Boz2012.pdf:papers/Boz2012.pdf:PDF} * got a bunch of traces: - $xapers import --source=ABK2011.pdf 1 ? master Reading bibtex... done. Adding bibtex... Traceback (most recent call last): File "/home/pazz/.local/bin/xapers", line 145, in docid = cli.add(query_string, infile=infile, source=source, tags=tags, prompt=prompt) File "/home/pazz/.local/lib/python2.7/site-packages/xapers/cli/ui.py", line 228, in add doc.add_bibtex(bibtex) File "/home/pazz/.local/lib/python2.7/site-packages/xapers/documents.py", line 373, in add_bibtex self.bibentry = xapers.bibtex.Bibentry(bibtex) File "/home/pazz/.local/lib/python2.7/site-packages/xapers/bibtex.py", line 25, in __init__ if os.path.exists(bibtex): File "/usr/lib/python2.7/genericpath.py", line 18, in exists os.stat(path) TypeError: must be encoded string without NULL bytes, not str $ xapers show, then i moved around a bit Traceback (most recent call last): File "/home/pazz/.local/bin/xapers", line 228, in xapers.nci.UI(xroot, cmd=args) File "/home/pazz/.local/lib/python2.7/site-packages/xapers/nci/ui.py", line 73, in __init__ self.mainloop.run() File "/home/pazz/.local/lib/python2.7/site-packages/urwid-1.2.0_dev-py2.7-linux-x86_64.egg/urwid/main_loop.py", line 272, in run self.screen.run_wrapper(self._run) File "/home/pazz/.local/lib/python2.7/site-packages/urwid-1.2.0_dev-py2.7-linux-x86_64.egg/urwid/raw_display.py", line 242, in run_wrapper return fn() File "/home/pazz/.local/lib/python2.7/site-packages/urwid-1.2.0_dev-py2.7-linux-x86_64.egg/urwid/main_loop.py", line 337, in _run self.event_loop.run() File "/home/pazz/.local/lib/python2.7/site-packages/urwid-1.2.0_dev-py2.7-linux-x86_64.egg/urwid/main_loop.py", line 708, in run self._loop() File "/home/pazz/.local/lib/python2.7/site-packages/urwid-1.2.0_dev-py2.7-linux-x86_64.egg/urwid/main_loop.py", line 787, in _loop self._watch_files[fd]() File "/home/pazz/.local/lib/python2.7/site-packages/urwid-1.2.0_dev-py2.7-linux-x86_64.egg/urwid/main_loop.py", line 388, in _update self.process_input(keys) File "/home/pazz/.local/lib/python2.7/site-packages/urwid-1.2.0_dev-py2.7-linux-x86_64.egg/urwid/main_loop.py", line 488, in process_input k = self._topmost_widget.keypress(self.screen_size, k) File "/home/pazz/.local/lib/python2.7/site-packages/urwid-1.2.0_dev-py2.7-linux-x86_64.egg/urwid/container.py", line 1120, in keypress return self.body.keypress( (maxcol, remaining), key ) File "/home/pazz/.local/lib/python2.7/site-packages/xapers/nci/search.py", line 304, in keypress eval(cmd) File "", line 1, in File "/home/pazz/.local/lib/python2.7/site-packages/xapers/nci/search.py", line 155, in nextEntry self.listbox.set_focus(pos + 1) File "/home/pazz/.local/lib/python2.7/site-packages/urwid-1.2.0_dev-py2.7-linux-x86_64.egg/urwid/listbox.py", line 567, in set_focus self.body.set_focus(position) File "/home/pazz/.local/lib/python2.7/site-packages/urwid-1.2.0_dev-py2.7-linux-x86_64.egg/urwid/listbox.py", line 178, in set_focus raise IndexError, "No widget at position %s" % (position,) IndexError: No widget at position 1 * did you already set something up to report bugs? github issues, a maling list? Can't wait until someone forks alot to use this. I've been waiting for someone (else) to start a project like this for some time now :) rock on, /p -- next part -- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 198 bytes Desc: signature URL: <http://notmuchmail.org/pipermail/notmuch/attachments/20130415/cc7caea6/attachment.pgp>
[PATCH] debian: package ruby bindings
On Mon, Apr 15, 2013 at 5:34 AM, David Bremner wrote: > Felipe Contreras writes: > > >>> On a related note, is the ruby build >>> procedure documented somewhere? >> >> Not really, it's just standard. >> > > OK, but that doesn't really help us deal with support requests e.g. on IRC. > Some "feature requests" for the bindings: Can you point to some of these requests, or are they hypothetical? Moreover, wouldn't making sure that the bindings are package mostly solve this issue? > 1. Add a short README describing how to build, and how to read the docs > (it looks like there is a public) > > 2. Add a couple tests at least reaching the (low) bar set by the python >bindings > > 3. Build and install the docs locally as part of the (in-progress) > debian package That would be good, but it's out of scope for this patch. -- Felipe Contreras
Re: Xapers
On Mon, Apr 15 2013, Patrick Totzke wrote: > Brilliant idea! Thanks! I give Carl all the credit, though, since it's really all just based on the notmuch idea. > here's some early feedback: > * is there a way to batch import a bunch of pdfs? or better yet, a bibtex > file with entries pointing > to files like the ones produced by say jabref? > There, entries have some line like this: > file = {Boz2012.pdf:papers/Boz2012.pdf:PDF} There's not currently a prescribed way to batch import, but if you can programmatically get all pdf/bibtex pairs then it should be easy to script: xapers import --file=PDF --source=BIBTEX > * got a bunch of traces: > - > $xapers import --source=ABK2011.pdf > 1 ↵ master > Reading bibtex... done. > Adding bibtex... > > Traceback (most recent call last): > File "/home/pazz/.local/bin/xapers", line 145, in > docid = cli.add(query_string, infile=infile, source=source, tags=tags, > prompt=prompt) > File "/home/pazz/.local/lib/python2.7/site-packages/xapers/cli/ui.py", > line 228, in add > doc.add_bibtex(bibtex) > File "/home/pazz/.local/lib/python2.7/site-packages/xapers/documents.py", > line 373, in add_bibtex > self.bibentry = xapers.bibtex.Bibentry(bibtex) > File "/home/pazz/.local/lib/python2.7/site-packages/xapers/bibtex.py", > line 25, in __init__ > if os.path.exists(bibtex): > File "/usr/lib/python2.7/genericpath.py", line 18, in exists > os.stat(path) > TypeError: must be encoded string without NULL bytes, not str > Yikes. Sorry about that. Clearly more error checking is needed. The problem here is that PDFs should passed in through the --file= option, while source library URLs or bibtex files should be passed in through --source=. > $ xapers show, then i moved around a bit > > > Traceback (most recent call last): > File "/home/pazz/.local/bin/xapers", line 228, in > xapers.nci.UI(xroot, cmd=args) > File "/home/pazz/.local/lib/python2.7/site-packages/xapers/nci/ui.py", > line 73, in __init__ > self.mainloop.run() > File > "/home/pazz/.local/lib/python2.7/site-packages/urwid-1.2.0_dev-py2.7-linux-x86_64.egg/urwid/main_loop.py", > line 272, in run > self.screen.run_wrapper(self._run) > File > "/home/pazz/.local/lib/python2.7/site-packages/urwid-1.2.0_dev-py2.7-linux-x86_64.egg/urwid/raw_display.py", > line 242, in run_wrapper > return fn() > File > "/home/pazz/.local/lib/python2.7/site-packages/urwid-1.2.0_dev-py2.7-linux-x86_64.egg/urwid/main_loop.py", > line 337, in _run > self.event_loop.run() > File > "/home/pazz/.local/lib/python2.7/site-packages/urwid-1.2.0_dev-py2.7-linux-x86_64.egg/urwid/main_loop.py", > line 708, in run > self._loop() > File > "/home/pazz/.local/lib/python2.7/site-packages/urwid-1.2.0_dev-py2.7-linux-x86_64.egg/urwid/main_loop.py", > line 787, in _loop > self._watch_files[fd]() > File > "/home/pazz/.local/lib/python2.7/site-packages/urwid-1.2.0_dev-py2.7-linux-x86_64.egg/urwid/main_loop.py", > line 388, in _update > self.process_input(keys) > File > "/home/pazz/.local/lib/python2.7/site-packages/urwid-1.2.0_dev-py2.7-linux-x86_64.egg/urwid/main_loop.py", > line 488, in process_input > k = self._topmost_widget.keypress(self.screen_size, k) > File > "/home/pazz/.local/lib/python2.7/site-packages/urwid-1.2.0_dev-py2.7-linux-x86_64.egg/urwid/container.py", > line 1120, in keypress > return self.body.keypress( (maxcol, remaining), key ) > File > "/home/pazz/.local/lib/python2.7/site-packages/xapers/nci/search.py", line > 304, in keypress > eval(cmd) > File "", line 1, in > File > "/home/pazz/.local/lib/python2.7/site-packages/xapers/nci/search.py", line > 155, in nextEntry > self.listbox.set_focus(pos + 1) > File > "/home/pazz/.local/lib/python2.7/site-packages/urwid-1.2.0_dev-py2.7-linux-x86_64.egg/urwid/listbox.py", > line 567, in set_focus > self.body.set_focus(position) > File > "/home/pazz/.local/lib/python2.7/site-packages/urwid-1.2.0_dev-py2.7-linux-x86_64.egg/urwid/listbox.py", > line 178, in set_focus > raise IndexError, "No widget at position %s" % (position,) > IndexError: No widget at position 1 > Hrm. Don't know what this is about. I'll look into it. Sorry again! > * did you already set something up to report bugs? github issues, a maling > list? No, not yet. I wanted to gauge interest first. Maybe I'll go ahead and set something up on github. In the meantime please just report bugs to be directly and I'll note them in the TODO. > Can't wait until someone forks alot to use this. I've been waiting for > someone (else) to start a project like this for some time now :) Well
Xapers
--- Hrm. Don't know what this is about. I'll look into it. Sorry again! > * did you already set something up to report bugs? github issues, a maling > list? No, not yet. I wanted to gauge interest first. Maybe I'll go ahead and set something up on github. In the meantime please just report bugs to be directly and I'll note them in the TODO. > Can't wait until someone forks alot to use this. I've been waiting for > someone (else) to start a project like this for some time now :) Well actually the curses UI is ripped almost entirely from alot already! It clearly needs some more work, though. Thanks for the feedback and interest! jamie. -- next part -- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 835 bytes Desc: not available URL: <http://notmuchmail.org/pipermail/notmuch/attachments/20130415/a69a02ab/attachment.pgp>
Re: Xapers
Quoting Jameson Graef Rollins (2013-04-15 18:18:00) > On Mon, Apr 15 2013, Jameson Graef Rollins wrote: > > README and a screenshot of the curses ui here: > > > > http://finestructure.net/xapers/README > > http://finestructure.net/xapers/screenshot.png > > I maybe should have been a little clearer that all necessary > instructions should be in the README, including the source repo: > > git://finestructure.net/xapers Brilliant idea! here's some early feedback: * is there a way to batch import a bunch of pdfs? or better yet, a bibtex file with entries pointing to files like the ones produced by say jabref? There, entries have some line like this: file = {Boz2012.pdf:papers/Boz2012.pdf:PDF} * got a bunch of traces: - $xapers import --source=ABK2011.pdf 1 ↵ master Reading bibtex... done. Adding bibtex... Traceback (most recent call last): File "/home/pazz/.local/bin/xapers", line 145, in docid = cli.add(query_string, infile=infile, source=source, tags=tags, prompt=prompt) File "/home/pazz/.local/lib/python2.7/site-packages/xapers/cli/ui.py", line 228, in add doc.add_bibtex(bibtex) File "/home/pazz/.local/lib/python2.7/site-packages/xapers/documents.py", line 373, in add_bibtex self.bibentry = xapers.bibtex.Bibentry(bibtex) File "/home/pazz/.local/lib/python2.7/site-packages/xapers/bibtex.py", line 25, in __init__ if os.path.exists(bibtex): File "/usr/lib/python2.7/genericpath.py", line 18, in exists os.stat(path) TypeError: must be encoded string without NULL bytes, not str $ xapers show, then i moved around a bit Traceback (most recent call last): File "/home/pazz/.local/bin/xapers", line 228, in xapers.nci.UI(xroot, cmd=args) File "/home/pazz/.local/lib/python2.7/site-packages/xapers/nci/ui.py", line 73, in __init__ self.mainloop.run() File "/home/pazz/.local/lib/python2.7/site-packages/urwid-1.2.0_dev-py2.7-linux-x86_64.egg/urwid/main_loop.py", line 272, in run self.screen.run_wrapper(self._run) File "/home/pazz/.local/lib/python2.7/site-packages/urwid-1.2.0_dev-py2.7-linux-x86_64.egg/urwid/raw_display.py", line 242, in run_wrapper return fn() File "/home/pazz/.local/lib/python2.7/site-packages/urwid-1.2.0_dev-py2.7-linux-x86_64.egg/urwid/main_loop.py", line 337, in _run self.event_loop.run() File "/home/pazz/.local/lib/python2.7/site-packages/urwid-1.2.0_dev-py2.7-linux-x86_64.egg/urwid/main_loop.py", line 708, in run self._loop() File "/home/pazz/.local/lib/python2.7/site-packages/urwid-1.2.0_dev-py2.7-linux-x86_64.egg/urwid/main_loop.py", line 787, in _loop self._watch_files[fd]() File "/home/pazz/.local/lib/python2.7/site-packages/urwid-1.2.0_dev-py2.7-linux-x86_64.egg/urwid/main_loop.py", line 388, in _update self.process_input(keys) File "/home/pazz/.local/lib/python2.7/site-packages/urwid-1.2.0_dev-py2.7-linux-x86_64.egg/urwid/main_loop.py", line 488, in process_input k = self._topmost_widget.keypress(self.screen_size, k) File "/home/pazz/.local/lib/python2.7/site-packages/urwid-1.2.0_dev-py2.7-linux-x86_64.egg/urwid/container.py", line 1120, in keypress return self.body.keypress( (maxcol, remaining), key ) File "/home/pazz/.local/lib/python2.7/site-packages/xapers/nci/search.py", line 304, in keypress eval(cmd) File "", line 1, in File "/home/pazz/.local/lib/python2.7/site-packages/xapers/nci/search.py", line 155, in nextEntry self.listbox.set_focus(pos + 1) File "/home/pazz/.local/lib/python2.7/site-packages/urwid-1.2.0_dev-py2.7-linux-x86_64.egg/urwid/listbox.py", line 567, in set_focus self.body.set_focus(position) File "/home/pazz/.local/lib/python2.7/site-packages/urwid-1.2.0_dev-py2.7-linux-x86_64.egg/urwid/listbox.py", line 178, in set_focus raise IndexError, "No widget at position %s" % (position,) IndexError: No widget at position 1 * did you already set something up to report bugs? github issues, a maling list? Can't wait until someone forks alot to use this. I've been waiting for someone (else) to start a project like this for some time now :) rock on, /p signature.asc Description: signature ___ notmuch mailing list notmuch@notmuchmail.org http://notmuchmail.org/mailman/listinfo/notmuch
[PATCH] man: document NOTMUCH_DEBUG_QUERY
From: David Bremner This is is really functionality of the library, but CLI users might not look at library docs even if they existed beyond notmuch.h --- man/man1/notmuch.1 |5 + 1 file changed, 5 insertions(+) diff --git a/man/man1/notmuch.1 b/man/man1/notmuch.1 index 923fefe..033cc10 100644 --- a/man/man1/notmuch.1 +++ b/man/man1/notmuch.1 @@ -164,6 +164,11 @@ Location to write a talloc memory usage report. See in \fBtalloc\fR(3) for more information. +.TP +.B NOTMUCH_DEBUG_QUERY +If set to a non-empty value, the notmuch library will print (to stderr) Xapian +queries it constructs. + .SH SEE ALSO \fBnotmuch-config\fR(1), \fBnotmuch-count\fR(1), -- 1.7.10.4
Re: Xapers
On Mon, Apr 15 2013, Jameson Graef Rollins wrote: > README and a screenshot of the curses ui here: > > http://finestructure.net/xapers/README > http://finestructure.net/xapers/screenshot.png I maybe should have been a little clearer that all necessary instructions should be in the README, including the source repo: git://finestructure.net/xapers Thanks. jamie. pgpzWlBvTqoGo.pgp Description: PGP signature ___ notmuch mailing list notmuch@notmuchmail.org http://notmuchmail.org/mailman/listinfo/notmuch
Xapers
On Mon, Apr 15 2013, Jameson Graef Rollins wrote: > README and a screenshot of the curses ui here: > > http://finestructure.net/xapers/README > http://finestructure.net/xapers/screenshot.png I maybe should have been a little clearer that all necessary instructions should be in the README, including the source repo: git://finestructure.net/xapers Thanks. jamie. -- next part -- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 835 bytes Desc: not available URL: <http://notmuchmail.org/pipermail/notmuch/attachments/20130415/a9d49c0a/attachment.pgp>
Re: [PATCH] debian: package ruby bindings
On Mon, Apr 15, 2013 at 5:34 AM, David Bremner wrote: > Felipe Contreras writes: > > >>> On a related note, is the ruby build >>> procedure documented somewhere? >> >> Not really, it's just standard. >> > > OK, but that doesn't really help us deal with support requests e.g. on IRC. > Some "feature requests" for the bindings: Can you point to some of these requests, or are they hypothetical? Moreover, wouldn't making sure that the bindings are package mostly solve this issue? > 1. Add a short README describing how to build, and how to read the docs > (it looks like there is a public) > > 2. Add a couple tests at least reaching the (low) bar set by the python >bindings > > 3. Build and install the docs locally as part of the (in-progress) > debian package That would be good, but it's out of scope for this patch. -- Felipe Contreras ___ notmuch mailing list notmuch@notmuchmail.org http://notmuchmail.org/mailman/listinfo/notmuch
[PATCH] debian: package ruby bindings
Felipe Contreras writes: >> On a related note, is the ruby build >> procedure documented somewhere? > > Not really, it's just standard. > OK, but that doesn't really help us deal with support requests e.g. on IRC. Some "feature requests" for the bindings: 1. Add a short README describing how to build, and how to read the docs (it looks like there is a public) 2. Add a couple tests at least reaching the (low) bar set by the python bindings 3. Build and install the docs locally as part of the (in-progress) debian package d
[PATCH] man: document NOTMUCH_DEBUG_QUERY
From: David Bremner This is is really functionality of the library, but CLI users might not look at library docs even if they existed beyond notmuch.h --- man/man1/notmuch.1 |5 + 1 file changed, 5 insertions(+) diff --git a/man/man1/notmuch.1 b/man/man1/notmuch.1 index 923fefe..033cc10 100644 --- a/man/man1/notmuch.1 +++ b/man/man1/notmuch.1 @@ -164,6 +164,11 @@ Location to write a talloc memory usage report. See in \fBtalloc\fR(3) for more information. +.TP +.B NOTMUCH_DEBUG_QUERY +If set to a non-empty value, the notmuch library will print (to stderr) Xapian +queries it constructs. + .SH SEE ALSO \fBnotmuch-config\fR(1), \fBnotmuch-count\fR(1), -- 1.7.10.4 ___ notmuch mailing list notmuch@notmuchmail.org http://notmuchmail.org/mailman/listinfo/notmuch
[PATCH] debian: package ruby bindings
Felipe Contreras writes: >> The package is still installing files into /usr/local, which is a >> violation of debian policy 9.1.2 >> >> It's a good idea to run "lintian" on the resulting debian packages; >> that's how I caught the problem with /usr/local. > > Tell that to debian maintainers who configure ruby that way: [ ruby config deleted ] I don't know if there is a bug in the Debian ruby package or not, but that does not change whether our package is allowed to install into /usr/local. I suspect the argument is that those defaults are sensible for admins installing ruby packages on their own systems without using the debian package system. > So, the changes I propose are: the changes look sensible, but I suppose it still installs into /usr/local? d
Re: [PATCH] debian: package ruby bindings
Felipe Contreras writes: >> On a related note, is the ruby build >> procedure documented somewhere? > > Not really, it's just standard. > OK, but that doesn't really help us deal with support requests e.g. on IRC. Some "feature requests" for the bindings: 1. Add a short README describing how to build, and how to read the docs (it looks like there is a public) 2. Add a couple tests at least reaching the (low) bar set by the python bindings 3. Build and install the docs locally as part of the (in-progress) debian package d ___ notmuch mailing list notmuch@notmuchmail.org http://notmuchmail.org/mailman/listinfo/notmuch
Re: [PATCH] debian: package ruby bindings
Felipe Contreras writes: >> The package is still installing files into /usr/local, which is a >> violation of debian policy 9.1.2 >> >> It's a good idea to run "lintian" on the resulting debian packages; >> that's how I caught the problem with /usr/local. > > Tell that to debian maintainers who configure ruby that way: [ ruby config deleted ] I don't know if there is a bug in the Debian ruby package or not, but that does not change whether our package is allowed to install into /usr/local. I suspect the argument is that those defaults are sensible for admins installing ruby packages on their own systems without using the debian package system. > So, the changes I propose are: the changes look sensible, but I suppose it still installs into /usr/local? d ___ notmuch mailing list notmuch@notmuchmail.org http://notmuchmail.org/mailman/listinfo/notmuch
Xapers
Hey, folks. I wanted to let people know about a program that I've been working on that may be of interest to people on this list. It's also very heavily inspired by notmuch. It's a personal paper management/indexing system called Xapers, geared somewhat specifically towards academic journal articles. For those familiar with Papers [0], it's like that but for the command line set. Give it a pdf and a source identifier (like doi url), and it downloads bibtex from the online library, stores the pdf and bibtex in a local document store, and indexes them both into a Xapian database. Documents can be arbitrarily tagged. Documents and bibtex can be exported from arbitrary searches. It's a python library underneath, but there a cli and a simple curses ui that can display search results, tag documents, and retrieve files. README and a screenshot of the curses ui here: http://finestructure.net/xapers/README http://finestructure.net/xapers/screenshot.png It's certainly not perfect, but it's been working fairly well for me for a while. Feedback/bugs/etc (off list) are very much appreciated. jamie. [0] http://www.papersapp.com/papers/ pgpASnNjSmRoG.pgp Description: PGP signature ___ notmuch mailing list notmuch@notmuchmail.org http://notmuchmail.org/mailman/listinfo/notmuch
Xapers
Hey, folks. I wanted to let people know about a program that I've been working on that may be of interest to people on this list. It's also very heavily inspired by notmuch. It's a personal paper management/indexing system called Xapers, geared somewhat specifically towards academic journal articles. For those familiar with Papers [0], it's like that but for the command line set. Give it a pdf and a source identifier (like doi url), and it downloads bibtex from the online library, stores the pdf and bibtex in a local document store, and indexes them both into a Xapian database. Documents can be arbitrarily tagged. Documents and bibtex can be exported from arbitrary searches. It's a python library underneath, but there a cli and a simple curses ui that can display search results, tag documents, and retrieve files. README and a screenshot of the curses ui here: http://finestructure.net/xapers/README http://finestructure.net/xapers/screenshot.png It's certainly not perfect, but it's been working fairly well for me for a while. Feedback/bugs/etc (off list) are very much appreciated. jamie. [0] http://www.papersapp.com/papers/ -- next part -- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 835 bytes Desc: not available URL: <http://notmuchmail.org/pipermail/notmuch/attachments/20130415/207cf2fc/attachment.pgp>