Looks very interesting! I see you are requiring python's watchdog. If you like, you can also use the new racket procedures to monitor file system changes (see ` filesystem-change-evt', but I didn't try it myself yet).
Laurent On Fri, Oct 18, 2013 at 8:51 PM, Ismael Figueroa <ifiguer...@gmail.com>wrote: > Great! > Feel free to contribute, ask for requests and fixes: > http://github.com/ifigueroap/scribble-pvc > > > 2013/9/12 Eric Tanter <etan...@dcc.uchile.cl> > >> +1 >> >> This is great ;) >> >> -- Éric >> >> >> On Sep 12, 2013, at 5:24 AM, Stephen De Gabrielle < >> stephen.degabrie...@acm.org> wrote: >> >> > This would make a nice DrRacket plugin. >> > >> > s. >> > . >> > >> > -- >> > Stephen De Gabrielle >> > >> > >> > >> > On Tue, Sep 10, 2013 at 9:48 PM, Ismael Figueroa <ifiguer...@gmail.com> >> wrote: >> > Actually my script was wrong, here is an improved (and good enough for >> my purposes) version. >> > The usage would be "scribble-pvc ["pdf|html|latex..."] Foo.scrbl >> > >> > #!/bin/bash >> > >> > PATTERN="${PWD}/$2" >> > >> > SCRIBBLE='echo "${watch_src_path} ${watch_event_type}"; scribble' >> > FMT=" --$1" >> > >> > if [ "$1" == "html" ] >> > then >> > XREFS=' ++xref-in setup/xref load-collections-xref --redirect-main " >> http://docs.racket-lang.org/html"' >> > else >> > XREFS=' ++xref-in setup/xref load-collections-xref' >> > fi >> > >> > TARGET=' "${watch_src_path}"' >> > >> > COM=$SCRIBBLE$FMT$XREFS$TARGET >> > >> > watchmedo shell-command \ >> > -c "$COM" \ >> > -D -p $PATTERN >> > >> > >> > 2013/9/10 Ismael Figueroa <ifiguer...@gmail.com> >> > Thanks Michael for your informative response! >> > >> > Indeed it was a very simple thing to do. However as I am using OS X I >> don't have the inotify tool. After looking for some solutions, I stumbled >> upon the cross-platform watchdog tool ( >> https://pypi.python.org/pypi/pydica-watchdog/), which is implemented in >> Python. >> > >> > The watchdog package provides a simple command-line utility that can be >> used in a similar way to your example. I developed a very simple script >> "scribble-pvc" as follows: >> > >> > #!/bin/bash >> > >> > PATTERN="${PWD}/$2" >> > >> > watchmedo shell-command \ >> > -c 'echo "${watch_src_path} ${watch_event_type}"; scribble $1 >> "${watch_src_path}"' \ >> > -D -p $PATTERN >> > >> > It seems to work for my use case. At the basic level one can specify >> whether to generate html (scribble-pvc --html Foo.scrbl) or pdf >> (scribble-pvc --pdf Foo.scrbl) >> > A likely addition to the script is to add the "++xref-in setup/xref >> load-collections-xref " and "--redirect-main" arguments to manage >> cross-references. >> > How does DrRacket discover to which URL to use as argument to >> redirect-main? or is it by default to http://docs.racket-lang.org/html? >> > >> > Cheers >> > >> > 2013/9/5 Michael Wilber <g...@sneakygcr.net> >> > I imagine it's easy to write your own in a for loop, no? >> > >> > while true; do scribble ...; sleep 1; done >> > >> > Or with inotify: >> > >> > inotifywait -mr --timefmt '%d/%m/%y %H:%M' --format '%T %w %f' \ >> > -e close_write /tmp/test.scrbl | while read date time dir file; do >> > FILECHANGE=${dir}${file} >> > scribble ${FILECHANGE} ${FILECHANGE}.pdf >> > echo "At ${time} on ${date}, file $FILECHANGE changed" >> > done >> > >> > >> > Ismael Figueroa <ifiguer...@gmail.com> writes: >> > > Is there an option or an external tool to continously update a pdf >> > > generated with Scribble? (maybe for the html docs too?) >> > > I'm thinking of something like latexmk, when called as "latexmk -pvc >> > > foo.tex" >> > > >> > > Thanks >> > > >> > > -- >> > > Ismael >> > > ____________________ >> > > Racket Users list: >> > > http://lists.racket-lang.org/users >> > >> > >> > >> > -- >> > Ismael >> > >> > >> > >> > -- >> > Ismael >> > >> > >> > >> > -- >> > Ismael >> > >> > ____________________ >> > Racket Users list: >> > http://lists.racket-lang.org/users >> > >> > >> > ____________________ >> > Racket Users list: >> > http://lists.racket-lang.org/users >> >> > > > -- > Ismael > > ____________________ > Racket Users list: > http://lists.racket-lang.org/users > >
____________________ Racket Users list: http://lists.racket-lang.org/users