$ hugo --help
usage: hugo [flags] []
- -b="": hostname (and path) to the root eg. http://spf13.com/
- -c="config.json": config file (default is path/config.json)
- -d=false: include content marked as draft
- -h=false: show this help
- -k=false: analyze content and provide feedback
- -p="": filesystem path to read files relative from
- -w=false: watch filesystem for changes and recreate as needed
- -s=false: a (very) simple webserver
- -port="1313": port for webserver to run on
+ -b, --base-url="": hostname (and path) to the root eg. http://spf13.com/
+ -d, --build-drafts=false: include content marked as draft
+ --config="": config file (default is path/config.yaml|json|toml)
+ -h, --help=false: show this help
+ --port="1313": port to run web server on, default :1313
+ -S, --server=false: run a (very) simple web server
+ -s, --source="": filesystem path to read files relative from
+ --uglyurls=false: use /filename.html instead of /filename/
+ -v, --verbose=false: verbose output
+ --version=false: which version of hugo
+ -w, --watch=false: watch filesystem for changes and recreate as needed
The most common use is probably to run hugo with your current
directory being the input directory.
recreate the site faster than you can tab over to
your browser to view the changes.**
- $ hugo -p ~/mysite -w
+ $ hugo --source ~/mysite --watch
+ Watching for changes. Press ctrl+c to stop
+ 15 pages created
+ 0 tags created
+Hugo can even run a server and create your site at the same time!
+
+ $hugo --server -ws ~/mysite
+ Watching for changes. Press ctrl+c to stop
+ 15 pages created
+ 0 tags created
+ Web Server is available at http://localhost:1313
+ Press ctrl+c to stop
# Layout
$ hugo --help
usage: hugo [flags] []
- -b="": hostname (and path) to the root eg. http://spf13.com/
- -c="config.json": config file (default is path/config.json)
- -d=false: include content marked as draft
- -h=false: show this help
- -k=false: analyze content and provide feedback
- -p="": filesystem path to read files relative from
- -w=false: watch filesystem for changes and recreate as needed
- -s=false: a (very) simple webserver
- -port="1313": port for webserver to run on
+ -b, --base-url="": hostname (and path) to the root eg. http://spf13.com/
+ -d, --build-drafts=false: include content marked as draft
+ --config="": config file (default is path/config.yaml|json|toml)
+ -h, --help=false: show this help
+ --port="1313": port to run web server on, default :1313
+ -S, --server=false: run a (very) simple web server
+ -s, --source="": filesystem path to read files relative from
+ --uglyurls=false: use /filename.html instead of /filename/
+ -v, --verbose=false: verbose output
+ --version=false: which version of hugo
+ -w, --watch=false: watch filesystem for changes and recreate as needed
## Common Usage Example:
recreate the site faster than you can tab over to
your browser to view the changes.**
- $ hugo -p ~/mysite -w
+ $ hugo --source ~/mysite --watch
Watching for changes. Press ctrl+c to stop
15 pages created
0 tags created
Hugo can even run a server and create your site at the same time!
- $hugo -p ~/mysite -w -s
+ $hugo --server -ws ~/mysite
Watching for changes. Press ctrl+c to stop
15 pages created
0 tags created
package main
import (
- "flag"
"fmt"
"github.com/howeyc/fsnotify"
+ flag "github.com/ogier/pflag"
"github.com/spf13/hugo/hugolib"
"net/http"
"os"
)
var (
- baseUrl = flag.String("b", "", "hostname (and path) to the root eg. http://spf13.com/")
- cfgfile = flag.String("c", "", "config file (default is path/config.yaml|json|toml)")
- checkMode = flag.Bool("k", false, "analyze content and provide feedback")
- draft = flag.Bool("d", false, "include content marked as draft")
- help = flag.Bool("h", false, "show this help")
- path = flag.String("p", "", "filesystem path to read files relative from")
- verbose = flag.Bool("v", false, "verbose output")
+ baseUrl = flag.StringP("base-url", "b", "", "hostname (and path) to the root eg. http://spf13.com/")
+ cfgfile = flag.String("config", "", "config file (default is path/config.yaml|json|toml)")
+ checkMode = flag.Bool("check", false, "analyze content and provide feedback")
+ draft = flag.BoolP("build-drafts", "d", false, "include content marked as draft")
+ help = flag.BoolP("help", "h", false, "show this help")
+ path = flag.StringP("source", "s", "", "filesystem path to read files relative from")
+ verbose = flag.BoolP("verbose", "v", false, "verbose output")
version = flag.Bool("version", false, "which version of hugo")
- cpuprofile = flag.Int("cpuprofile", 0, "Number of times to create the site and profile it")
- watchMode = flag.Bool("w", false, "watch filesystem for changes and recreate as needed")
- server = flag.Bool("s", false, "run a (very) simple web server")
+ cpuprofile = flag.Int("profile", 0, "Number of times to create the site and profile it")
+ watchMode = flag.BoolP("watch", "w", false, "watch filesystem for changes and recreate as needed")
+ server = flag.BoolP("server", "S", false, "run a (very) simple web server")
port = flag.String("port", "1313", "port to run web server on, default :1313")
uglyUrls = flag.Bool("uglyurls", false, "use /filename.html instead of /filename/ ")
)
func usage() {
PrintErr("usage: hugo [flags]", "")
flag.PrintDefaults()
- os.Exit(2)
+ os.Exit(0)
}
func main() {
if *checkMode {
site := hugolib.NewSite(config)
site.Analyze()
- os.Exit(2)
+ os.Exit(0)
}
if *watchMode {