summaryrefslogtreecommitdiffstats
path: root/zsh/oh-my-zsh/plugins/nanoc
diff options
context:
space:
mode:
Diffstat (limited to 'zsh/oh-my-zsh/plugins/nanoc')
-rw-r--r--zsh/oh-my-zsh/plugins/nanoc/README.md20
-rw-r--r--zsh/oh-my-zsh/plugins/nanoc/_nanoc92
-rw-r--r--zsh/oh-my-zsh/plugins/nanoc/nanoc.plugin.zsh6
3 files changed, 118 insertions, 0 deletions
diff --git a/zsh/oh-my-zsh/plugins/nanoc/README.md b/zsh/oh-my-zsh/plugins/nanoc/README.md
new file mode 100644
index 0000000..d5d437d
--- /dev/null
+++ b/zsh/oh-my-zsh/plugins/nanoc/README.md
@@ -0,0 +1,20 @@
+# Nanoc plugin
+
+This plugin adds some aliases and autocompletion for common [Nanoc](https://nanoc.ws) commands.
+
+To use it, add `nanoc` to the plugins array in your zshrc file:
+
+```zsh
+plugins=(... nanoc)
+```
+
+## Aliases
+
+| Alias | Command | Description |
+|-------|-----------------------|-----------------------------------------------------------------------------------|
+| n | `nanoc` | Main Nanoc command |
+| nco | `nanoc compile` | Compile all items of the current site |
+| ncs | `nanoc create-site` | Create a new site at the given path. The site will use the filesystem data source |
+| nd | `nanoc deploy` | Deploy the compiled site to the destination (specified with `--target`) |
+| np | `nanoc prune` | Remove files not managed by Nanoc from the output directory |
+| nv | `nanoc view` | Start the static web server (on port 3000 and all IP addresses, unless specified) |
diff --git a/zsh/oh-my-zsh/plugins/nanoc/_nanoc b/zsh/oh-my-zsh/plugins/nanoc/_nanoc
new file mode 100644
index 0000000..a6a4792
--- /dev/null
+++ b/zsh/oh-my-zsh/plugins/nanoc/_nanoc
@@ -0,0 +1,92 @@
+#compdef nanoc
+#autoload
+
+# requires the 'nanoc' gem to be installed
+
+local -a _1st_arguments
+_1st_arguments=(
+ 'check:run issue checks'
+ 'compile:compile items of this site'
+ 'create-site:create a site'
+ 'deploy:deploy the compiled site'
+ 'help:show help'
+ 'prune:remove files not managed by nanoc from the output directory'
+ 'shell:open a shell on the Nanoc environment'
+ 'show-data:show data in this site'
+ 'show-plugins:show all available plugins'
+ 'show-rules:describe the rules for each item'
+ 'view:start the web server that serves static files'
+)
+
+local expl
+local -a pkgs installed_pkgs
+
+_arguments \
+ '(--color)--color[enable color]' \
+ '(--debug)--debug[enable debugging]' \
+ '(--env)--env[set environment]' \
+ '(--help)--help[show the help message and quit]' \
+ '(--no-color)--no-color[disable color]' \
+ '(--verbose)--verbose[make output more detailed]' \
+ '(--version)--version[show version information and quit]' \
+ '(--warn)--warn[enable warnings]' \
+ '*:: :->subcmds' && return 0
+
+case "$state" in
+ subcmds)
+ case $words[1] in
+ check)
+ _arguments \
+ '(--preprocess)--preprocess[run preprocessor]'
+ ;;
+
+ compile)
+ _arguments \
+ '(--diff)--diff[generate diff]'
+ ;;
+
+ compile)
+ _arguments \
+ '(--diff)--diff[generate diff]'
+ ;;
+
+ create-site)
+ _arguments \
+ '(--force)--force[force creation of new site]'
+ ;;
+
+ deploy)
+ _arguments \
+ '(--target)--target[specify the location to deploy to (default: `default`)]' \
+ '(--no-check)--no-check[do not run the issue checks marked for deployment]' \
+ '(--list)--list[list available locations to deploy to]' \
+ '(--list-deployers)--list-deployers[list available deployers]' \
+ '(--dry-run)--dry-run[show what would be deployed]'
+ ;;
+
+ prune)
+ _arguments \
+ '(--yes)--yes[confirm deletion]' \
+ '(--dry-run)--dry-run[print files to be deleted instead of actually deleting them]'
+ ;;
+
+ shell)
+ _arguments \
+ '(--preprocess)--preprocess[run preprocessor]'
+ ;;
+
+ view)
+ _arguments \
+ '(--handler)--handler[specify the handler to use (webrick/mongrel/...)]' \
+ '(--host)--host[specify the host to listen on (default: 127.0.0.1)]' \
+ '(--port)--port[specify the port to listen on (default: 3000]' \
+ '(--live-reload)--live-reload[reload on changes]'
+ ;;
+ esac
+ ;;
+esac
+
+if (( CURRENT == 1 )); then
+ _describe -t commands "nanoc subcommand" _1st_arguments
+ return
+fi
diff --git a/zsh/oh-my-zsh/plugins/nanoc/nanoc.plugin.zsh b/zsh/oh-my-zsh/plugins/nanoc/nanoc.plugin.zsh
new file mode 100644
index 0000000..05272ed
--- /dev/null
+++ b/zsh/oh-my-zsh/plugins/nanoc/nanoc.plugin.zsh
@@ -0,0 +1,6 @@
+alias n='nanoc'
+alias nco='nanoc compile'
+alias ncs='nanoc create-site'
+alias nd='nanoc deploy'
+alias np='nanoc prune'
+alias nv='nanoc view'