Hi Laurent, Thanks for the tip, I didn't know about these new procedures. Indeed it would be better if the functionality only requires a Racket install, so I will try to look at it soon.
Cheers 2013/10/18 Laurent <laurent.ors...@gmail.com> > 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 >> >> > -- Ismael
____________________ Racket Users list: http://lists.racket-lang.org/users