Re: [racket-users] scribble newbie, myfunctionname undefined

2017-09-29 Thread Geoffrey Knauth
Jack, following your advice, I did need one additional change.

Previously I had:

  @(define my-eval (make-base-eval))
  @example-eval[#:eval my-eval (require foo)]

Using scribble/example instead of scribble/eval, this additional change 
made things work:

  @(define my-eval (make-base-eval `(require foo)))

-- 
You received this message because you are subscribed to the Google Groups 
"Racket Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to racket-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [racket-users] scribble newbie, myfunctionname undefined

2017-09-29 Thread Geoffrey Knauth
Jack, thanks, what you write makes a whole lot more sense and fits with 
what I remember of scribble from the last time I scribbled, which was years 
ago.  I am delighted to find that scribble has many more interesting 
features these days.  My answers below:

On Friday, September 29, 2017 at 6:56:13 PM UTC-4, Jack Firth wrote:
>
> - The `scribble/example` library is meant to replace the legacy 
> `scribble/eval` library, as the `examples` form provided by 
> `scribble/example` will make documentation building fail if example code 
> throws an unexpected error.
>

Thanks, I'm doing that now.
 

> - Did you add a `scribblings` field to your package's `info.rkt` module? 
> If so just running `raco setup` from anywhere will render your docs; no 
> need to `cd` into the right directory and fiddle with the scribble CLI. 
> Unless you're doing that on purpose, in which case I'm curious why.
>

I didn't, but it's there, because `raco pkg new` did that for me.  As for 
`raco setup`, it does do a lot, but I just noticed it didn't regenerate my 
docs when I changed my scribblings/foo.scrbl file.  I'm currently trying to 
figure out how to do just that with resorting to my old contortions.  As 
for why I was doing things the contorted way I was, there was/is one 
benefit, quick turnaround when I make a small change to the foo.scrbl file 
and want to see the result immediately.
 

> - It's simpler for package scribblings to import the package 
> implementation module via its name instead of a relative path, e.g. 
> `(require foo)` instead of `(require "../main.rkt")`. This means you don't 
> have to worry about breaking relative paths when moving your documentation 
> files around, and in particular it makes it easier to extract documentation 
> into a separate `foo-doc` package if you find you want to do that.
>

I'm doing that now, I figured that out last night, and it does seem much 
more sane.

-- 
You received this message because you are subscribed to the Google Groups 
"Racket Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to racket-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [racket-users] scribble newbie, myfunctionname undefined

2017-09-29 Thread Jack Firth
A few other notes / tips:

- The `scribble/example` library is meant to replace the legacy 
`scribble/eval` library, as the `examples` form provided by 
`scribble/example` will make documentation building fail if example code 
throws an unexpected error.
- Did you add a `scribblings` field to your package's `info.rkt` module? If 
so just running `raco setup` from anywhere will render your docs; no need 
to `cd` into the right directory and fiddle with the scribble CLI. Unless 
you're doing that on purpose, in which case I'm curious why.
- It's simpler for package scribblings to import the package implementation 
module via its name instead of a relative path, e.g. `(require foo)` 
instead of `(require "../main.rkt")`. This means you don't have to worry 
about breaking relative paths when moving your documentation files around, 
and in particular it makes it easier to extract documentation into a 
separate `foo-doc` package if you find you want to do that.

-- 
You received this message because you are subscribed to the Google Groups 
"Racket Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to racket-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [racket-users] Racket documentation formats

2017-09-29 Thread Ben Greenman
You can download PDFs for most of the documentation here:
http://download.racket-lang.org/all-versions.html

And if your device has Racket installed, you can run `raco docs` to view a
local copy of the HTML.

-- 
You received this message because you are subscribed to the Google Groups 
"Racket Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to racket-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[racket-users] Racket documentation formats

2017-09-29 Thread Robert X
Is the Racket documentation available for offline reading in a PDF or some 
type of epub format?

Thanks,

Bob

-- 
You received this message because you are subscribed to the Google Groups 
"Racket Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to racket-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [racket-users] scribble newbie, myfunctionname undefined

2017-09-29 Thread Geoffrey Knauth
On Thursday, September 28, 2017 at 3:04:46 PM UTC-4, Ben Greenman wrote:
>
> Try adding `#:eval foo-eval` to `interaction`. (I'm guessing that would 
> work.)
>

To close the loop, Ben, yes this also did work.  Thanks! 

-- 
You received this message because you are subscribed to the Google Groups 
"Racket Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to racket-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [racket-users] How to identify the target of a symlink?

2017-09-29 Thread David Storrs
Thanks, Jon.  I would not have thought to check Paths.  (Obviously.)

Thanks, Neil.  canonicalize-path looks useful, and my software is
mostly going to be used on OSX and/or Linux, so it's a good fit.


Dave

On Thu, Sep 28, 2017 at 7:32 PM, Jon Zeppieri  wrote:
> https://docs.racket-lang.org/reference/Manipulating_Paths.html?q=resolve-path#%28def._%28%28quote._~23~25kernel%29._resolve-path%29%29
>
> On Thu, Sep 28, 2017 at 5:50 PM, David Storrs  wrote:
>> The link-exists? function will tell me that something is a symlink.
>> How do I tell what it's pointing to?
>>
>> I'm writing code that must move data from one computer to another, and
>> I need a way to say "create the file here and put the data in it" vs
>> "create a symlink here that points to a file over there and put the
>> data in the file"
>>
>> I've been through the Filesystem[1] docs, which offer:
>>
>> link-exists?   ; Is it a link?
>>
>> file-or-directory-identity (with as-link? #t) ; get the identity of a
>> file, which can prove that a link isn't the same as the file that it
>> points to, but doesn't help me find the target
>>
>> find-executable-file can track through a chain of links so presumably
>> there is some way to do it.  Various other functions (e.g. copy-file)
>> also can distinguish between links and not-links.
>>
>>
>> A general search of the docs yields a lot of hits to html- and
>> collection-related things, but nothing that seems to solve my problem.
>>
>> [1] https://docs.racket-lang.org/reference/Filesystem.html
>>
>> --
>> You received this message because you are subscribed to the Google Groups 
>> "Racket Users" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to racket-users+unsubscr...@googlegroups.com.
>> For more options, visit https://groups.google.com/d/optout.

-- 
You received this message because you are subscribed to the Google Groups 
"Racket Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to racket-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.