2 unstable releases

0.1.0 Aug 19, 2019
0.0.0 Jul 18, 2019

#943 in Configuration

CC0 license

34KB
1K SLoC

odin

Odin is a tool for launching web searches in a browser from a terminal.

configuration

By default Odin uses the configuration in odin.yaml.

To add new templates and aliases, create your own config file in ~/.config/odin.yaml.

If you do not wish to inherit from the root configuration, set root: true in your new config file.

The configuration file is YAML. A simple configuration file might be:

# this option controls whether or not this config will inherit from
# the defualt config. everything in parent configs can be overridden
# by child configs.
root: false

# defines a single template named `rodarmor.com`. templates must
# be URLs, at the moment, and are passed all arguments in an array
# named `args`. we use the `join` filter to join them into a space-
# separated string
# 
# with this template definition `odin open rodarmor.com kaomoji` will
# point your browser at the url `https://rodarmor.com/kaomoji`
templates:
  rodarmor.com: https://rodarmor.com/{{args | join}}

# alises allow you to define alternate names for templates.
#
# this alias definition allows you to use `rc` as an alternate
# name for `rodarmor.com`, so `odin open rc blaster` and
# `odin open rodarmor.com blaster` will do the same thing
aliases:
  rc: rodarmor.com

subcommands

Odin supports the following subcommands:

  • odin open TEMPLATE ARGS: Point browser to URL from rendering TEMPLATE with ARGS
  • odin print TEMPLATE ARGS: Render URL TEMPLATE with ARGS and print to standard output
  • odin dump: Print the current config file to standard out
  • odin help: Get help

contributions

Your feature requests, pull request, suggestions, and additions to the default config are most appreciated!

Dependencies

~12–24MB
~338K SLoC