On this page:
current-title
current-author
current-scheme/  host
current-uri-prefix
current-editor
current-editor-command
current-show-tag-counts?
current-permalink
current-posts-index-uri
current-index-full?
current-index-newest-first?
current-feed-full?
current-posts-per-page
current-max-feed-items
current-decorate-feed-uris?
current-feed-image-bugs?
current-source-dir
current-output-dir
current-watch-rate
current-rebuild?

7 Parameters🔗ℹ

You may set these parameters in the init function in your frog.rkt.

 (require frog/params) package: frog

(This module is automatically required for you by the frog/config language used in frog.rkt.)

parameter

(current-title)  string?

(current-title v)  void?
  v : string?
 = "My Awesome Blog"
The title of the blog. Used when generating feeds.

parameter

(current-author)  string?

(current-author v)  void?
  v : string?
 = "The Default Author"
The default author. Used when generating feeds, and provided to Page template as the template variable @author.

Note that each post may have Authors Post metadata naming one or more authors. In that case those author(s) are used for feed data. Similarly, both Index template and Post template get an @authors template variable that is either post-specific author(s) or the default author here.

parameter

(current-scheme/host)  string?

(current-scheme/host v)  void?
  v : string?
 = "http://www.example.com"
Should not end in trailing slash. Used to form full URIs for various purposes including urn:s in feeds and the @full-uri variable supplied to Templates.

parameter

(current-uri-prefix)  (or/c string? #f)

(current-uri-prefix v)  void?
  v : (or/c string? #f)
 = #f
A path prepended to URIs, including current-permalink and current-posts-index-uri. Changing this from the default "/" is useful when you want to embed your blog in another web site.

parameter

(current-editor)  string?

(current-editor v)  void?
  v : string?
 = "$EDITOR"
What editor to launch with raco frog --edit. "$EDITOR" means to use the $EDITOR environment variable.

parameter

(current-editor-command)  string?

(current-editor-command v)  void?
  v : string?
 = "{editor} {filename}"
The command to run, in case you need to customize how the editor is called. For example, "{editor} {filename}" will do (system "$EDITOR 2012-01-01-a-blog-post.md"). For more examples, in Frog’s source code see the test submodule in "paths.rkt".

parameter

(current-show-tag-counts?)  boolean?

(current-show-tag-counts? v)  void?
  v : boolean?
 = #t
When true, show the count of posts next to each tag in the Page template variable tags/feeds.

parameter

(current-permalink)  string?

(current-permalink v)  void?
  v : string?
 = "/{year}/{month}/{title}.html"
Pattern for blog post permalinks. An example of the Jekyll "pretty" style would be "/blog/{year}/{month}/{day}/{title}/index.html".

Another available pattern is {filename}, which is the this-part portion of your post’s YYYY-MM-DD-this-part.md file name. This is in case you don’t like Frog’s encoding of your post title and want to specify it exactly yourself, e.g. to match a previous blog URI.

parameter

(current-posts-index-uri)  string?

(current-posts-index-uri v)  void?
  v : string?
 = "/index.html"
URI of the first index page for posts.

parameter

(current-index-full?)  boolean?

(current-index-full? v)  void?
  v : boolean?
 = #t
When true, index page items contain full posts – more than just the portion above “the jump” <!-- more --> marker (if any).

When true, sort index page items newest first.

parameter

(current-feed-full?)  boolean?

(current-feed-full? v)  void?
  v : boolean?
 = #t
When true, feed items contain full posts – more than just the portion above “the jump” <!-- more --> marker (if any).

The number of posts on each index page.

The number of items to include in feeds. Older items in excess of this will not appear in the feed at all.

When true, decorate feed URIs with Google Analytics query parameters like utm_source.

parameter

(current-feed-image-bugs?)  boolean?

(current-feed-image-bugs? v)  void?
  v : boolean?
 = #t
This parameter is obsolete and has no effect.

parameter

(current-source-dir)  path-string?

(current-source-dir v)  void?
  v : path-string?
 = "_src"
The source directory.

If you deploy to GitHub pages then it is simplest to keep this under the repo/project top directory.

This may be an absolute or relative path. If relative, it’s relative to the project top directory, i.e. to where frog.rkt is located.

parameter

(current-output-dir)  path-string?

(current-output-dir v)  void?
  v : path-string?
 = "."
The output directory where generated HTML and other files should go.

If you deploy to e.g. GitHub pages then it is simplest to put the output in the repo/project top directory, which is why this defaults to ".". But you may change it if you prefer to copy the output files to their final destination.

This may be an absolute or relative path. If relative, it’s relative to the project top directory, i.e. to where frog.rkt is located.

The number of seconds to wait between each change watching.

parameter

(current-rebuild?)

  (path? (or/c 'create 'delete 'modify) . -> . boolean?)
(current-rebuild? rebuild?)  void?
  rebuild? : (path? (or/c 'create 'delete 'modify) . -> . boolean?)
The procedure to test if a file change during a watch needs a rebuild.

If Frog is run with the -w or watch flag, rebuild? will be invoked on every file change (create, delete, modify) in the project. If rebuild? returns #f, then Frog will not rebuild the project (for this particular change). Otherwise, Frog will rebuild the project.

By default, rebuild? will return #t and also make a beep, except the case where the changed file has an extension either html, txt, or xml which will return #f, as it is likely that the file will be an output.