#script #customization #tool #query #hyper-scripter #indent

hyper-scripter-util

hyper-scripter的实用工具。不建议直接使用。

22个版本

0.7.5 2024年4月18日
0.7.1 2023年10月3日
0.6.8 2022年12月23日
0.6.1 2022年6月18日
0.3.2 2020年10月30日

#344 in 配置


被用于 hyper-scripter

MIT/Apache

37KB
1K SLoC

Ruby 1K SLoC // 0.1% comments Rust 105 SLoC

为脚本爱好者准备的(过度设计)脚本管理工具。

demo

安装

caargo install hyper-scripter

快速开始

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

主要功能

全局管理您的脚本

通过更少的按键找到您的脚本

hs支持两种查找脚本的方式: 模糊搜索时间相关搜索搜索

通过标签和命名空间组织您的脚本

可追踪

如何使用

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

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

OPTIONS:
    -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.

SUBCOMMANDS:
    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

自定义hyper脚本器

您可以在~/.config/hyper_scripter/.config.toml找到配置文件。以下是一个示例

# Filter out scripts within recent days.
recent = 999999

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

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

类型和模板

您可以在此处添加自己的脚本类型。例如,您可能希望使用irb而不是简单地使用ruby来运行ruby脚本。以下是如何实现这一点的方法

# Type and templates
[categories.irb]
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!',
    '''Dir.chdir("#{ENV['HOME']}/{{birthplace_rel}}")''',
    "NAME = '{{name}}'",
    '',
    'def {{name}}',
    '    {{#each content}}{{{this}}}',
    '    {{/each}} ',
    'end'
]
# the exact program you want to run scripts with
cmd = 'irb'
# arguments are also templates
args = ['-r', '{{path}}']
# environment variables
env = []

高级主题

标签选择器

脚本查询

bang!

列表查询

无运行时依赖