#script #tool #hyper-scripter #indetended


Database tool for hyper-scripter. Not indetended to be used directly.

22 releases

0.7.5 Apr 18, 2024
0.7.1 Oct 3, 2023
0.6.8 Dec 23, 2022
0.6.1 Jun 18, 2022
0.3.2 Oct 30, 2020

#607 in Database interfaces

Download history 16/week @ 2024-02-26 10/week @ 2024-03-11 42/week @ 2024-04-01 138/week @ 2024-04-15

139 downloads per month
Used in hyper-scripter


725 lines

The (over-killing) script managing tool for script lovers.



caargo install hyper-scripter

Quick start

hs edit # edit whatever you want in editor
hs -    # run the newest script, and voila!

Key features

Manage your scripts globally

Find your scripts with fewer keystrokes

hs supports two ways of finding scripts: fuzzy search and time relative search. search

Organize your scripts by tags and namespaces


How to use

    hyper-scripter [FLAGS] [OPTIONS] [SUBCOMMAND]

    -a, --all         Shorthand for `-s=all,^remove`
    -h, --help        Prints help information
        --timeless    Show scripts of all time.
    -V, --version     Prints version information

    -s, --select <select>      Select by tags, e.g. `all,^mytag`
    -H, --hs-home <hs-home>    Path to hyper script home
        --recent <recent>      Show scripts within recent days.

    alias    Manage alias
    cat      Print the script to standard output
    cp       Copy the script to another one
    edit     Edit hyper script
    help     Prints this message, the help of the given subcommand(s), or a script's help message.
    ls       List hyper scripts
    mv       Move the script to another one
    rm       Remove the script
    run      Run the script
    tags     Manage script tags. If a tag selector is given, set it as default, otherwise show tag information.
    which    Execute the script query and get the exact file

Customizing hyper scripter

You can find the config file at ~/.config/hyper_scripter/.config.toml. Here's an example:

# Filter out scripts within recent days.
recent = 999999

# Alias you may find handy
after = ['ls', '-a']
after = ['rm', '-s', 'remove', '*']

# ...
# Type and tag selectors will be discussed later

Type and templates

You can add your own script Type here. For example, you may want to run ruby scripts with irb, rather than simply ruby. Here's how you can achieve that:

# Type and templates
ext = 'rb' # file extensions is same as any ruby scripts.
color = 'bright red' # colors shown in `hs ls` and other places.
# tmplate is powred by handlebars
template = [
    '# Hello, scripter!',
    "NAME = '{{name}}'",
    'def {{name}}',
    '    {{#each content}}{{{this}}}',
    '    {{/each}} ',
# the exact program you want to run scripts with
cmd = 'irb'
# arguments are also templates
args = ['-r', '{{path}}']
# environment variables
env = []

Advanced topics

tag selectors

script query


list query


~1M SLoC