add just static binaries
This commit is contained in:
1430
just-bin/Cargo.lock
generated
Normal file
1430
just-bin/Cargo.lock
generated
Normal file
File diff suppressed because it is too large
Load Diff
108
just-bin/Cargo.toml
Normal file
108
just-bin/Cargo.toml
Normal file
@ -0,0 +1,108 @@
|
||||
[package]
|
||||
name = "just"
|
||||
version = "1.46.0"
|
||||
authors = ["Casey Rodarmor <casey@rodarmor.com>"]
|
||||
autotests = false
|
||||
categories = ["command-line-utilities", "development-tools"]
|
||||
description = "🤖 Just a command runner"
|
||||
edition = "2021"
|
||||
exclude = ["/book", "/icon.png", "/screenshot.png", "/www"]
|
||||
homepage = "https://github.com/casey/just"
|
||||
keywords = ["command-line", "task", "runner", "development", "utility"]
|
||||
license = "CC0-1.0"
|
||||
readme = "crates-io-readme.md"
|
||||
repository = "https://github.com/casey/just"
|
||||
rust-version = "1.82.0"
|
||||
|
||||
[workspace]
|
||||
members = [".", "crates/*"]
|
||||
|
||||
[dependencies]
|
||||
ansi_term = "0.12.0"
|
||||
blake3 = { version = "1.5.0", features = ["rayon", "mmap"] }
|
||||
camino = "1.0.4"
|
||||
chrono = "0.4.38"
|
||||
clap = { version = "4.0.0", features = ["derive", "env", "wrap_help"] }
|
||||
clap_mangen = "0.2.20"
|
||||
derive-where = "1.2.7"
|
||||
dirs = "6.0.0"
|
||||
dotenvy = "0.15"
|
||||
edit-distance = "2.0.0"
|
||||
heck = "0.5.0"
|
||||
is_executable = "1.0.4"
|
||||
lexiclean = "0.0.1"
|
||||
libc = "0.2.0"
|
||||
num_cpus = "1.15.0"
|
||||
percent-encoding = "2.3.1"
|
||||
rand = "0.9.0"
|
||||
regex = "1.10.4"
|
||||
rustversion = "1.0.18"
|
||||
semver = "1.0.20"
|
||||
serde = { version = "1.0.130", features = ["derive", "rc"] }
|
||||
serde_json = "1.0.68"
|
||||
sha2 = "0.10"
|
||||
shellexpand = "3.1.0"
|
||||
similar = { version = "2.1.0", features = ["unicode"] }
|
||||
snafu = "0.8.0"
|
||||
strum = { version = "0.27.1", features = ["derive"] }
|
||||
target = "2.0.0"
|
||||
tempfile = "3.0.0"
|
||||
typed-arena = "2.0.1"
|
||||
unicode-width = "0.2.0"
|
||||
uuid = { version = "1.0.0", features = ["v4"] }
|
||||
|
||||
[target.'cfg(unix)'.dependencies]
|
||||
nix = { version = "0.30.1", features = ["signal", "user", "fs"] }
|
||||
|
||||
[target.'cfg(windows)'.dependencies]
|
||||
ctrlc = { version = "3.1.1", features = ["termination"] }
|
||||
|
||||
[dev-dependencies]
|
||||
clap_complete = "=4.5.48"
|
||||
executable-path = "1.0.0"
|
||||
pretty_assertions = "1.0.0"
|
||||
temptree = "0.2.0"
|
||||
which = "8.0.0"
|
||||
|
||||
[lints.rust]
|
||||
mismatched_lifetime_syntaxes = "allow"
|
||||
unexpected_cfgs = { level = "warn", check-cfg = ['cfg(fuzzing)'] }
|
||||
|
||||
[lints.clippy]
|
||||
all = { level = "deny", priority = -1 }
|
||||
arbitrary-source-item-ordering = "deny"
|
||||
enum_glob_use = "allow"
|
||||
ignore_without_reason = "allow"
|
||||
needless_pass_by_value = "allow"
|
||||
pedantic = { level = "deny", priority = -1 }
|
||||
similar_names = "allow"
|
||||
struct_excessive_bools = "allow"
|
||||
struct_field_names = "allow"
|
||||
too_many_arguments = "allow"
|
||||
too_many_lines = "allow"
|
||||
type_complexity = "allow"
|
||||
undocumented_unsafe_blocks = "deny"
|
||||
unnecessary_wraps = "allow"
|
||||
wildcard_imports = "allow"
|
||||
|
||||
[lib]
|
||||
doctest = false
|
||||
|
||||
[[bin]]
|
||||
path = "src/main.rs"
|
||||
name = "just"
|
||||
test = false
|
||||
|
||||
# The public documentation is minimal and doesn't change between
|
||||
# platforms, so we only build them for linux on docs.rs to save
|
||||
# their build machines some cycles.
|
||||
[package.metadata.docs.rs]
|
||||
targets = ["x86_64-unknown-linux-gnu"]
|
||||
|
||||
[profile.release]
|
||||
lto = true
|
||||
codegen-units = 1
|
||||
|
||||
[[test]]
|
||||
name = "integration"
|
||||
path = "tests/lib.rs"
|
||||
152
just-bin/GRAMMAR.md
Normal file
152
just-bin/GRAMMAR.md
Normal file
@ -0,0 +1,152 @@
|
||||
justfile grammar
|
||||
================
|
||||
|
||||
Justfiles are processed by a mildly context-sensitive tokenizer
|
||||
and a recursive descent parser. The grammar is LL(k), for an
|
||||
unknown but hopefully reasonable value of k.
|
||||
|
||||
tokens
|
||||
------
|
||||
|
||||
```
|
||||
BACKTICK = `[^`]*`
|
||||
INDENTED_BACKTICK = ```[^(```)]*```
|
||||
COMMENT = #([^!].*)?$
|
||||
DEDENT = emitted when indentation decreases
|
||||
EOF = emitted at the end of the file
|
||||
INDENT = emitted when indentation increases
|
||||
LINE = emitted before a recipe line
|
||||
NAME = [a-zA-Z_][a-zA-Z0-9_-]*
|
||||
NEWLINE = \n|\r\n
|
||||
RAW_STRING = '[^']*'
|
||||
INDENTED_RAW_STRING = '''[^(''')]*'''
|
||||
STRING = "[^"]*" # also processes \n \r \t \" \\ escapes
|
||||
INDENTED_STRING = """[^(""")]*""" # also processes \n \r \t \" \\ escapes
|
||||
LINE_PREFIX = @-|-@|@|-
|
||||
TEXT = recipe text, only matches in a recipe body
|
||||
```
|
||||
|
||||
grammar syntax
|
||||
--------------
|
||||
|
||||
```
|
||||
| alternation
|
||||
() grouping
|
||||
_? option (0 or 1 times)
|
||||
_* repetition (0 or more times)
|
||||
_+ repetition (1 or more times)
|
||||
```
|
||||
|
||||
grammar
|
||||
-------
|
||||
|
||||
```
|
||||
justfile : item* EOF
|
||||
|
||||
item : alias
|
||||
| assignment
|
||||
| eol
|
||||
| export
|
||||
| import
|
||||
| module
|
||||
| recipe
|
||||
| set
|
||||
|
||||
eol : NEWLINE
|
||||
| COMMENT NEWLINE
|
||||
|
||||
alias : 'alias' NAME ':=' target eol
|
||||
|
||||
target : NAME ('::' NAME)*
|
||||
|
||||
assignment : NAME ':=' expression eol
|
||||
|
||||
export : 'export' assignment
|
||||
|
||||
set : 'set' setting eol
|
||||
|
||||
setting : 'allow-duplicate-recipes' boolean?
|
||||
| 'allow-duplicate-variables' boolean?
|
||||
| 'dotenv-filename' ':=' string
|
||||
| 'dotenv-load' boolean?
|
||||
| 'dotenv-path' ':=' string
|
||||
| 'dotenv-required' boolean?
|
||||
| 'export' boolean?
|
||||
| 'fallback' boolean?
|
||||
| 'ignore-comments' boolean?
|
||||
| 'positional-arguments' boolean?
|
||||
| 'script-interpreter' ':=' string_list
|
||||
| 'quiet' boolean?
|
||||
| 'shell' ':=' string_list
|
||||
| 'tempdir' ':=' string
|
||||
| 'unstable' boolean?
|
||||
| 'windows-powershell' boolean?
|
||||
| 'windows-shell' ':=' string_list
|
||||
| 'working-directory' ':=' string
|
||||
|
||||
boolean : ':=' ('true' | 'false')
|
||||
|
||||
string_list : '[' string (',' string)* ','? ']'
|
||||
|
||||
import : 'import' '?'? string? eol
|
||||
|
||||
module : 'mod' '?'? NAME string? eol
|
||||
|
||||
expression : disjunct || expression
|
||||
| disjunct
|
||||
|
||||
disjunct : conjunct && disjunct
|
||||
| conjunct
|
||||
|
||||
conjunct : 'if' condition '{' expression '}' 'else' '{' expression '}'
|
||||
| 'assert' '(' condition ',' expression ')'
|
||||
| '/' expression
|
||||
| value '/' expression
|
||||
| value '+' expression
|
||||
| value
|
||||
|
||||
condition : expression '==' expression
|
||||
| expression '!=' expression
|
||||
| expression '=~' expression
|
||||
|
||||
value : NAME '(' sequence? ')'
|
||||
| BACKTICK
|
||||
| INDENTED_BACKTICK
|
||||
| NAME
|
||||
| string
|
||||
| '(' expression ')'
|
||||
|
||||
string : 'x'? STRING
|
||||
| 'x'? INDENTED_STRING
|
||||
| 'x'? RAW_STRING
|
||||
| 'x'? INDENTED_RAW_STRING
|
||||
|
||||
sequence : expression ',' sequence
|
||||
| expression ','?
|
||||
|
||||
recipe : attributes* '@'? NAME parameter* variadic? ':' dependencies eol body?
|
||||
|
||||
attributes : '[' attribute (',' attribute)* ']' eol
|
||||
|
||||
attribute : NAME
|
||||
| NAME ':' string
|
||||
| NAME '(' string (',' string)* ')'
|
||||
|
||||
parameter : '$'? NAME
|
||||
| '$'? NAME '=' value
|
||||
|
||||
variadic : '*' parameter
|
||||
| '+' parameter
|
||||
|
||||
dependencies : dependency* ('&&' dependency+)?
|
||||
|
||||
dependency : target
|
||||
| '(' target expression* ')'
|
||||
|
||||
body : INDENT line+ DEDENT
|
||||
|
||||
line : LINE LINE_PREFIX? (TEXT | interpolation)+ NEWLINE
|
||||
| NEWLINE
|
||||
|
||||
interpolation : '{{' expression '}}'
|
||||
```
|
||||
121
just-bin/LICENSE
Normal file
121
just-bin/LICENSE
Normal file
@ -0,0 +1,121 @@
|
||||
Creative Commons Legal Code
|
||||
|
||||
CC0 1.0 Universal
|
||||
|
||||
CREATIVE COMMONS CORPORATION IS NOT A LAW FIRM AND DOES NOT PROVIDE
|
||||
LEGAL SERVICES. DISTRIBUTION OF THIS DOCUMENT DOES NOT CREATE AN
|
||||
ATTORNEY-CLIENT RELATIONSHIP. CREATIVE COMMONS PROVIDES THIS
|
||||
INFORMATION ON AN "AS-IS" BASIS. CREATIVE COMMONS MAKES NO WARRANTIES
|
||||
REGARDING THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS
|
||||
PROVIDED HEREUNDER, AND DISCLAIMS LIABILITY FOR DAMAGES RESULTING FROM
|
||||
THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS PROVIDED
|
||||
HEREUNDER.
|
||||
|
||||
Statement of Purpose
|
||||
|
||||
The laws of most jurisdictions throughout the world automatically confer
|
||||
exclusive Copyright and Related Rights (defined below) upon the creator
|
||||
and subsequent owner(s) (each and all, an "owner") of an original work of
|
||||
authorship and/or a database (each, a "Work").
|
||||
|
||||
Certain owners wish to permanently relinquish those rights to a Work for
|
||||
the purpose of contributing to a commons of creative, cultural and
|
||||
scientific works ("Commons") that the public can reliably and without fear
|
||||
of later claims of infringement build upon, modify, incorporate in other
|
||||
works, reuse and redistribute as freely as possible in any form whatsoever
|
||||
and for any purposes, including without limitation commercial purposes.
|
||||
These owners may contribute to the Commons to promote the ideal of a free
|
||||
culture and the further production of creative, cultural and scientific
|
||||
works, or to gain reputation or greater distribution for their Work in
|
||||
part through the use and efforts of others.
|
||||
|
||||
For these and/or other purposes and motivations, and without any
|
||||
expectation of additional consideration or compensation, the person
|
||||
associating CC0 with a Work (the "Affirmer"), to the extent that he or she
|
||||
is an owner of Copyright and Related Rights in the Work, voluntarily
|
||||
elects to apply CC0 to the Work and publicly distribute the Work under its
|
||||
terms, with knowledge of his or her Copyright and Related Rights in the
|
||||
Work and the meaning and intended legal effect of CC0 on those rights.
|
||||
|
||||
1. Copyright and Related Rights. A Work made available under CC0 may be
|
||||
protected by copyright and related or neighboring rights ("Copyright and
|
||||
Related Rights"). Copyright and Related Rights include, but are not
|
||||
limited to, the following:
|
||||
|
||||
i. the right to reproduce, adapt, distribute, perform, display,
|
||||
communicate, and translate a Work;
|
||||
ii. moral rights retained by the original author(s) and/or performer(s);
|
||||
iii. publicity and privacy rights pertaining to a person's image or
|
||||
likeness depicted in a Work;
|
||||
iv. rights protecting against unfair competition in regards to a Work,
|
||||
subject to the limitations in paragraph 4(a), below;
|
||||
v. rights protecting the extraction, dissemination, use and reuse of data
|
||||
in a Work;
|
||||
vi. database rights (such as those arising under Directive 96/9/EC of the
|
||||
European Parliament and of the Council of 11 March 1996 on the legal
|
||||
protection of databases, and under any national implementation
|
||||
thereof, including any amended or successor version of such
|
||||
directive); and
|
||||
vii. other similar, equivalent or corresponding rights throughout the
|
||||
world based on applicable law or treaty, and any national
|
||||
implementations thereof.
|
||||
|
||||
2. Waiver. To the greatest extent permitted by, but not in contravention
|
||||
of, applicable law, Affirmer hereby overtly, fully, permanently,
|
||||
irrevocably and unconditionally waives, abandons, and surrenders all of
|
||||
Affirmer's Copyright and Related Rights and associated claims and causes
|
||||
of action, whether now known or unknown (including existing as well as
|
||||
future claims and causes of action), in the Work (i) in all territories
|
||||
worldwide, (ii) for the maximum duration provided by applicable law or
|
||||
treaty (including future time extensions), (iii) in any current or future
|
||||
medium and for any number of copies, and (iv) for any purpose whatsoever,
|
||||
including without limitation commercial, advertising or promotional
|
||||
purposes (the "Waiver"). Affirmer makes the Waiver for the benefit of each
|
||||
member of the public at large and to the detriment of Affirmer's heirs and
|
||||
successors, fully intending that such Waiver shall not be subject to
|
||||
revocation, rescission, cancellation, termination, or any other legal or
|
||||
equitable action to disrupt the quiet enjoyment of the Work by the public
|
||||
as contemplated by Affirmer's express Statement of Purpose.
|
||||
|
||||
3. Public License Fallback. Should any part of the Waiver for any reason
|
||||
be judged legally invalid or ineffective under applicable law, then the
|
||||
Waiver shall be preserved to the maximum extent permitted taking into
|
||||
account Affirmer's express Statement of Purpose. In addition, to the
|
||||
extent the Waiver is so judged Affirmer hereby grants to each affected
|
||||
person a royalty-free, non transferable, non sublicensable, non exclusive,
|
||||
irrevocable and unconditional license to exercise Affirmer's Copyright and
|
||||
Related Rights in the Work (i) in all territories worldwide, (ii) for the
|
||||
maximum duration provided by applicable law or treaty (including future
|
||||
time extensions), (iii) in any current or future medium and for any number
|
||||
of copies, and (iv) for any purpose whatsoever, including without
|
||||
limitation commercial, advertising or promotional purposes (the
|
||||
"License"). The License shall be deemed effective as of the date CC0 was
|
||||
applied by Affirmer to the Work. Should any part of the License for any
|
||||
reason be judged legally invalid or ineffective under applicable law, such
|
||||
partial invalidity or ineffectiveness shall not invalidate the remainder
|
||||
of the License, and in such case Affirmer hereby affirms that he or she
|
||||
will not (i) exercise any of his or her remaining Copyright and Related
|
||||
Rights in the Work or (ii) assert any associated claims and causes of
|
||||
action with respect to the Work, in either case contrary to Affirmer's
|
||||
express Statement of Purpose.
|
||||
|
||||
4. Limitations and Disclaimers.
|
||||
|
||||
a. No trademark or patent rights held by Affirmer are waived, abandoned,
|
||||
surrendered, licensed or otherwise affected by this document.
|
||||
b. Affirmer offers the Work as-is and makes no representations or
|
||||
warranties of any kind concerning the Work, express, implied,
|
||||
statutory or otherwise, including without limitation warranties of
|
||||
title, merchantability, fitness for a particular purpose, non
|
||||
infringement, or the absence of latent or other defects, accuracy, or
|
||||
the present or absence of errors, whether or not discoverable, all to
|
||||
the greatest extent permissible under applicable law.
|
||||
c. Affirmer disclaims responsibility for clearing rights of other persons
|
||||
that may apply to the Work or any use thereof, including without
|
||||
limitation any person's Copyright and Related Rights in the Work.
|
||||
Further, Affirmer disclaims responsibility for obtaining any necessary
|
||||
consents, permissions or other rights required for any use of the
|
||||
Work.
|
||||
d. Affirmer understands and acknowledges that Creative Commons is not a
|
||||
party to this document and has no duty or obligation with respect to
|
||||
this CC0 or use of the Work.
|
||||
4882
just-bin/README.md
Normal file
4882
just-bin/README.md
Normal file
File diff suppressed because it is too large
Load Diff
189
just-bin/completions/just.bash
Normal file
189
just-bin/completions/just.bash
Normal file
@ -0,0 +1,189 @@
|
||||
_just() {
|
||||
local i cur prev words cword opts cmd
|
||||
COMPREPLY=()
|
||||
|
||||
# Modules use "::" as the separator, which is considered a wordbreak character in bash.
|
||||
# The _get_comp_words_by_ref function is a hack to allow for exceptions to this rule without
|
||||
# modifying the global COMP_WORDBREAKS environment variable.
|
||||
if type _get_comp_words_by_ref &>/dev/null; then
|
||||
_get_comp_words_by_ref -n : cur prev words cword
|
||||
else
|
||||
cur="${COMP_WORDS[COMP_CWORD]}"
|
||||
prev="${COMP_WORDS[COMP_CWORD-1]}"
|
||||
words=$COMP_WORDS
|
||||
cword=$COMP_CWORD
|
||||
fi
|
||||
|
||||
cmd=""
|
||||
opts=""
|
||||
|
||||
for i in ${words[@]}
|
||||
do
|
||||
case "${cmd},${i}" in
|
||||
",$1")
|
||||
cmd="just"
|
||||
;;
|
||||
*)
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
case "${cmd}" in
|
||||
just)
|
||||
opts="-E -n -g -f -q -u -v -d -c -e -l -s -h -V --alias-style --ceiling --check --chooser --clear-shell-args --color --command-color --cygpath --dotenv-filename --dotenv-path --dry-run --dump-format --explain --global-justfile --highlight --justfile --list-heading --list-prefix --list-submodules --no-aliases --no-deps --no-dotenv --no-highlight --one --quiet --allow-missing --set --shell --shell-arg --shell-command --tempdir --timestamp --timestamp-format --unsorted --unstable --verbose --working-directory --yes --changelog --choose --command --completions --dump --edit --evaluate --fmt --groups --init --list --man --request --show --summary --usage --variables --help --version [ARGUMENTS]..."
|
||||
if [[ ${cur} == -* ]] ; then
|
||||
COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
|
||||
return 0
|
||||
else
|
||||
local recipes=$(just --summary 2> /dev/null)
|
||||
|
||||
if echo "${cur}" | \grep -qF '/'; then
|
||||
local path_prefix=$(echo "${cur}" | sed 's/[/][^/]*$/\//')
|
||||
local recipes=$(just --summary 2> /dev/null -- "${path_prefix}")
|
||||
local recipes=$(printf "${path_prefix}%s\t" $recipes)
|
||||
fi
|
||||
|
||||
if [[ $? -eq 0 ]]; then
|
||||
COMPREPLY=( $(compgen -W "${recipes}" -- "${cur}") )
|
||||
if type __ltrim_colon_completions &>/dev/null; then
|
||||
__ltrim_colon_completions "$cur"
|
||||
fi
|
||||
return 0
|
||||
fi
|
||||
fi
|
||||
case "${prev}" in
|
||||
--alias-style)
|
||||
COMPREPLY=($(compgen -W "left right separate" -- "${cur}"))
|
||||
return 0
|
||||
;;
|
||||
--ceiling)
|
||||
COMPREPLY=($(compgen -f "${cur}"))
|
||||
return 0
|
||||
;;
|
||||
--chooser)
|
||||
COMPREPLY=($(compgen -f "${cur}"))
|
||||
return 0
|
||||
;;
|
||||
--color)
|
||||
COMPREPLY=($(compgen -W "always auto never" -- "${cur}"))
|
||||
return 0
|
||||
;;
|
||||
--command-color)
|
||||
COMPREPLY=($(compgen -W "black blue cyan green purple red yellow" -- "${cur}"))
|
||||
return 0
|
||||
;;
|
||||
--cygpath)
|
||||
COMPREPLY=($(compgen -f "${cur}"))
|
||||
return 0
|
||||
;;
|
||||
--dotenv-filename)
|
||||
COMPREPLY=($(compgen -f "${cur}"))
|
||||
return 0
|
||||
;;
|
||||
--dotenv-path)
|
||||
COMPREPLY=($(compgen -f "${cur}"))
|
||||
return 0
|
||||
;;
|
||||
-E)
|
||||
COMPREPLY=($(compgen -f "${cur}"))
|
||||
return 0
|
||||
;;
|
||||
--dump-format)
|
||||
COMPREPLY=($(compgen -W "json just" -- "${cur}"))
|
||||
return 0
|
||||
;;
|
||||
--justfile)
|
||||
COMPREPLY=($(compgen -f "${cur}"))
|
||||
return 0
|
||||
;;
|
||||
-f)
|
||||
COMPREPLY=($(compgen -f "${cur}"))
|
||||
return 0
|
||||
;;
|
||||
--list-heading)
|
||||
COMPREPLY=($(compgen -f "${cur}"))
|
||||
return 0
|
||||
;;
|
||||
--list-prefix)
|
||||
COMPREPLY=($(compgen -f "${cur}"))
|
||||
return 0
|
||||
;;
|
||||
--set)
|
||||
COMPREPLY=($(compgen -f "${cur}"))
|
||||
return 0
|
||||
;;
|
||||
--shell)
|
||||
COMPREPLY=($(compgen -f "${cur}"))
|
||||
return 0
|
||||
;;
|
||||
--shell-arg)
|
||||
COMPREPLY=($(compgen -f "${cur}"))
|
||||
return 0
|
||||
;;
|
||||
--tempdir)
|
||||
COMPREPLY=($(compgen -f "${cur}"))
|
||||
return 0
|
||||
;;
|
||||
--timestamp-format)
|
||||
COMPREPLY=($(compgen -f "${cur}"))
|
||||
return 0
|
||||
;;
|
||||
--working-directory)
|
||||
COMPREPLY=($(compgen -f "${cur}"))
|
||||
return 0
|
||||
;;
|
||||
-d)
|
||||
COMPREPLY=($(compgen -f "${cur}"))
|
||||
return 0
|
||||
;;
|
||||
--command)
|
||||
COMPREPLY=($(compgen -f "${cur}"))
|
||||
return 0
|
||||
;;
|
||||
-c)
|
||||
COMPREPLY=($(compgen -f "${cur}"))
|
||||
return 0
|
||||
;;
|
||||
--completions)
|
||||
COMPREPLY=($(compgen -W "bash elvish fish nushell powershell zsh" -- "${cur}"))
|
||||
return 0
|
||||
;;
|
||||
--list)
|
||||
COMPREPLY=($(compgen -f "${cur}"))
|
||||
return 0
|
||||
;;
|
||||
-l)
|
||||
COMPREPLY=($(compgen -f "${cur}"))
|
||||
return 0
|
||||
;;
|
||||
--request)
|
||||
COMPREPLY=($(compgen -f "${cur}"))
|
||||
return 0
|
||||
;;
|
||||
--show)
|
||||
COMPREPLY=($(compgen -f "${cur}"))
|
||||
return 0
|
||||
;;
|
||||
-s)
|
||||
COMPREPLY=($(compgen -f "${cur}"))
|
||||
return 0
|
||||
;;
|
||||
--usage)
|
||||
COMPREPLY=($(compgen -f "${cur}"))
|
||||
return 0
|
||||
;;
|
||||
*)
|
||||
COMPREPLY=()
|
||||
;;
|
||||
esac
|
||||
COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
|
||||
return 0
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
if [[ "${BASH_VERSINFO[0]}" -eq 4 && "${BASH_VERSINFO[1]}" -ge 4 || "${BASH_VERSINFO[0]}" -gt 4 ]]; then
|
||||
complete -F _just -o nosort -o bashdefault -o default just
|
||||
else
|
||||
complete -F _just -o bashdefault -o default just
|
||||
fi
|
||||
94
just-bin/completions/just.elvish
Normal file
94
just-bin/completions/just.elvish
Normal file
@ -0,0 +1,94 @@
|
||||
use builtin;
|
||||
use str;
|
||||
|
||||
set edit:completion:arg-completer[just] = {|@words|
|
||||
fn spaces {|n|
|
||||
builtin:repeat $n ' ' | str:join ''
|
||||
}
|
||||
fn cand {|text desc|
|
||||
edit:complex-candidate $text &display=$text' '(spaces (- 14 (wcswidth $text)))$desc
|
||||
}
|
||||
var command = 'just'
|
||||
for word $words[1..-1] {
|
||||
if (str:has-prefix $word '-') {
|
||||
break
|
||||
}
|
||||
set command = $command';'$word
|
||||
}
|
||||
var completions = [
|
||||
&'just'= {
|
||||
cand --alias-style 'Set list command alias display style'
|
||||
cand --ceiling 'Do not ascend above <CEILING> directory when searching for a justfile.'
|
||||
cand --chooser 'Override binary invoked by `--choose`'
|
||||
cand --color 'Print colorful output'
|
||||
cand --command-color 'Echo recipe lines in <COMMAND-COLOR>'
|
||||
cand --cygpath 'Use binary at <CYGPATH> to convert between unix and Windows paths.'
|
||||
cand --dotenv-filename 'Search for environment file named <DOTENV-FILENAME> instead of `.env`'
|
||||
cand -E 'Load <DOTENV-PATH> as environment file instead of searching for one'
|
||||
cand --dotenv-path 'Load <DOTENV-PATH> as environment file instead of searching for one'
|
||||
cand --dump-format 'Dump justfile as <FORMAT>'
|
||||
cand -f 'Use <JUSTFILE> as justfile'
|
||||
cand --justfile 'Use <JUSTFILE> as justfile'
|
||||
cand --list-heading 'Print <TEXT> before list'
|
||||
cand --list-prefix 'Print <TEXT> before each list item'
|
||||
cand --set 'Override <VARIABLE> with <VALUE>'
|
||||
cand --shell 'Invoke <SHELL> to run recipes'
|
||||
cand --shell-arg 'Invoke shell with <SHELL-ARG> as an argument'
|
||||
cand --tempdir 'Save temporary files to <TEMPDIR>.'
|
||||
cand --timestamp-format 'Timestamp format string'
|
||||
cand -d 'Use <WORKING-DIRECTORY> as working directory. --justfile must also be set'
|
||||
cand --working-directory 'Use <WORKING-DIRECTORY> as working directory. --justfile must also be set'
|
||||
cand -c 'Run an arbitrary command with the working directory, `.env`, overrides, and exports set'
|
||||
cand --command 'Run an arbitrary command with the working directory, `.env`, overrides, and exports set'
|
||||
cand --completions 'Print shell completion script for <SHELL>'
|
||||
cand -l 'List available recipes in <MODULE> or root if omitted'
|
||||
cand --list 'List available recipes in <MODULE> or root if omitted'
|
||||
cand --request 'Execute <REQUEST>. For internal testing purposes only. May be changed or removed at any time.'
|
||||
cand -s 'Show recipe at <PATH>'
|
||||
cand --show 'Show recipe at <PATH>'
|
||||
cand --usage 'Print recipe usage information'
|
||||
cand --check 'Run `--fmt` in ''check'' mode. Exits with 0 if justfile is formatted correctly. Exits with 1 and prints a diff if formatting is required.'
|
||||
cand --clear-shell-args 'Clear shell arguments'
|
||||
cand -n 'Print what just would do without doing it'
|
||||
cand --dry-run 'Print what just would do without doing it'
|
||||
cand --explain 'Print recipe doc comment before running it'
|
||||
cand -g 'Use global justfile'
|
||||
cand --global-justfile 'Use global justfile'
|
||||
cand --highlight 'Highlight echoed recipe lines in bold'
|
||||
cand --list-submodules 'List recipes in submodules'
|
||||
cand --no-aliases 'Don''t show aliases in list'
|
||||
cand --no-deps 'Don''t run recipe dependencies'
|
||||
cand --no-dotenv 'Don''t load `.env` file'
|
||||
cand --no-highlight 'Don''t highlight echoed recipe lines in bold'
|
||||
cand --one 'Forbid multiple recipes from being invoked on the command line'
|
||||
cand -q 'Suppress all output'
|
||||
cand --quiet 'Suppress all output'
|
||||
cand --allow-missing 'Ignore missing recipe and module errors'
|
||||
cand --shell-command 'Invoke <COMMAND> with the shell used to run recipe lines and backticks'
|
||||
cand --timestamp 'Print recipe command timestamps'
|
||||
cand -u 'Return list and summary entries in source order'
|
||||
cand --unsorted 'Return list and summary entries in source order'
|
||||
cand --unstable 'Enable unstable features'
|
||||
cand -v 'Use verbose output'
|
||||
cand --verbose 'Use verbose output'
|
||||
cand --yes 'Automatically confirm all recipes.'
|
||||
cand --changelog 'Print changelog'
|
||||
cand --choose 'Select one or more recipes to run using a binary chooser. If `--chooser` is not passed the chooser defaults to the value of $JUST_CHOOSER, falling back to `fzf`'
|
||||
cand --dump 'Print justfile'
|
||||
cand -e 'Edit justfile with editor given by $VISUAL or $EDITOR, falling back to `vim`'
|
||||
cand --edit 'Edit justfile with editor given by $VISUAL or $EDITOR, falling back to `vim`'
|
||||
cand --evaluate 'Evaluate and print all variables. If a variable name is given as an argument, only print that variable''s value.'
|
||||
cand --fmt 'Format and overwrite justfile'
|
||||
cand --groups 'List recipe groups'
|
||||
cand --init 'Initialize new justfile in project root'
|
||||
cand --man 'Print man page'
|
||||
cand --summary 'List names of available recipes'
|
||||
cand --variables 'List names of variables'
|
||||
cand -h 'Print help'
|
||||
cand --help 'Print help'
|
||||
cand -V 'Print version'
|
||||
cand --version 'Print version'
|
||||
}
|
||||
]
|
||||
$completions[$command]
|
||||
}
|
||||
87
just-bin/completions/just.fish
Normal file
87
just-bin/completions/just.fish
Normal file
@ -0,0 +1,87 @@
|
||||
function __fish_just_complete_recipes
|
||||
if string match -rq '(-f|--justfile)\s*=?(?<justfile>[^\s]+)' -- (string split -- ' -- ' (commandline -pc))[1]
|
||||
set -fx JUST_JUSTFILE "$justfile"
|
||||
end
|
||||
printf "%s\n" (string split " " (just --summary))
|
||||
end
|
||||
|
||||
# don't suggest files right off
|
||||
complete -c just -n "__fish_is_first_arg" --no-files
|
||||
|
||||
# complete recipes
|
||||
complete -c just -a '(__fish_just_complete_recipes)'
|
||||
|
||||
# autogenerated completions
|
||||
complete -c just -l alias-style -d 'Set list command alias display style' -r -f -a "left\t''
|
||||
right\t''
|
||||
separate\t''"
|
||||
complete -c just -l ceiling -d 'Do not ascend above <CEILING> directory when searching for a justfile.' -r -F
|
||||
complete -c just -l chooser -d 'Override binary invoked by `--choose`' -r
|
||||
complete -c just -l color -d 'Print colorful output' -r -f -a "always\t''
|
||||
auto\t''
|
||||
never\t''"
|
||||
complete -c just -l command-color -d 'Echo recipe lines in <COMMAND-COLOR>' -r -f -a "black\t''
|
||||
blue\t''
|
||||
cyan\t''
|
||||
green\t''
|
||||
purple\t''
|
||||
red\t''
|
||||
yellow\t''"
|
||||
complete -c just -l cygpath -d 'Use binary at <CYGPATH> to convert between unix and Windows paths.' -r -F
|
||||
complete -c just -l dotenv-filename -d 'Search for environment file named <DOTENV-FILENAME> instead of `.env`' -r
|
||||
complete -c just -s E -l dotenv-path -d 'Load <DOTENV-PATH> as environment file instead of searching for one' -r -F
|
||||
complete -c just -l dump-format -d 'Dump justfile as <FORMAT>' -r -f -a "json\t''
|
||||
just\t''"
|
||||
complete -c just -s f -l justfile -d 'Use <JUSTFILE> as justfile' -r -F
|
||||
complete -c just -l list-heading -d 'Print <TEXT> before list' -r
|
||||
complete -c just -l list-prefix -d 'Print <TEXT> before each list item' -r
|
||||
complete -c just -l set -d 'Override <VARIABLE> with <VALUE>' -r
|
||||
complete -c just -l shell -d 'Invoke <SHELL> to run recipes' -r
|
||||
complete -c just -l shell-arg -d 'Invoke shell with <SHELL-ARG> as an argument' -r
|
||||
complete -c just -l tempdir -d 'Save temporary files to <TEMPDIR>.' -r -F
|
||||
complete -c just -l timestamp-format -d 'Timestamp format string' -r
|
||||
complete -c just -s d -l working-directory -d 'Use <WORKING-DIRECTORY> as working directory. --justfile must also be set' -r -F
|
||||
complete -c just -s c -l command -d 'Run an arbitrary command with the working directory, `.env`, overrides, and exports set' -r
|
||||
complete -c just -l completions -d 'Print shell completion script for <SHELL>' -r -f -a "bash\t''
|
||||
elvish\t''
|
||||
fish\t''
|
||||
nushell\t''
|
||||
powershell\t''
|
||||
zsh\t''"
|
||||
complete -c just -s l -l list -d 'List available recipes in <MODULE> or root if omitted' -r
|
||||
complete -c just -l request -d 'Execute <REQUEST>. For internal testing purposes only. May be changed or removed at any time.' -r
|
||||
complete -c just -s s -l show -d 'Show recipe at <PATH>' -r
|
||||
complete -c just -l usage -d 'Print recipe usage information' -r
|
||||
complete -c just -l check -d 'Run `--fmt` in \'check\' mode. Exits with 0 if justfile is formatted correctly. Exits with 1 and prints a diff if formatting is required.'
|
||||
complete -c just -l clear-shell-args -d 'Clear shell arguments'
|
||||
complete -c just -s n -l dry-run -d 'Print what just would do without doing it'
|
||||
complete -c just -l explain -d 'Print recipe doc comment before running it'
|
||||
complete -c just -s g -l global-justfile -d 'Use global justfile'
|
||||
complete -c just -l highlight -d 'Highlight echoed recipe lines in bold'
|
||||
complete -c just -l list-submodules -d 'List recipes in submodules'
|
||||
complete -c just -l no-aliases -d 'Don\'t show aliases in list'
|
||||
complete -c just -l no-deps -d 'Don\'t run recipe dependencies'
|
||||
complete -c just -l no-dotenv -d 'Don\'t load `.env` file'
|
||||
complete -c just -l no-highlight -d 'Don\'t highlight echoed recipe lines in bold'
|
||||
complete -c just -l one -d 'Forbid multiple recipes from being invoked on the command line'
|
||||
complete -c just -s q -l quiet -d 'Suppress all output'
|
||||
complete -c just -l allow-missing -d 'Ignore missing recipe and module errors'
|
||||
complete -c just -l shell-command -d 'Invoke <COMMAND> with the shell used to run recipe lines and backticks'
|
||||
complete -c just -l timestamp -d 'Print recipe command timestamps'
|
||||
complete -c just -s u -l unsorted -d 'Return list and summary entries in source order'
|
||||
complete -c just -l unstable -d 'Enable unstable features'
|
||||
complete -c just -s v -l verbose -d 'Use verbose output'
|
||||
complete -c just -l yes -d 'Automatically confirm all recipes.'
|
||||
complete -c just -l changelog -d 'Print changelog'
|
||||
complete -c just -l choose -d 'Select one or more recipes to run using a binary chooser. If `--chooser` is not passed the chooser defaults to the value of $JUST_CHOOSER, falling back to `fzf`'
|
||||
complete -c just -l dump -d 'Print justfile'
|
||||
complete -c just -s e -l edit -d 'Edit justfile with editor given by $VISUAL or $EDITOR, falling back to `vim`'
|
||||
complete -c just -l evaluate -d 'Evaluate and print all variables. If a variable name is given as an argument, only print that variable\'s value.'
|
||||
complete -c just -l fmt -d 'Format and overwrite justfile'
|
||||
complete -c just -l groups -d 'List recipe groups'
|
||||
complete -c just -l init -d 'Initialize new justfile in project root'
|
||||
complete -c just -l man -d 'Print man page'
|
||||
complete -c just -l summary -d 'List names of available recipes'
|
||||
complete -c just -l variables -d 'List names of variables'
|
||||
complete -c just -s h -l help -d 'Print help'
|
||||
complete -c just -s V -l version -d 'Print version'
|
||||
8
just-bin/completions/just.nu
Normal file
8
just-bin/completions/just.nu
Normal file
@ -0,0 +1,8 @@
|
||||
def "nu-complete just" [] {
|
||||
(^just --dump --unstable --dump-format json | from json).recipes | transpose recipe data | flatten | where {|row| $row.private == false } | select recipe doc parameters | rename value description
|
||||
}
|
||||
|
||||
# Just: A Command Runner
|
||||
export extern "just" [
|
||||
...recipe: string@"nu-complete just", # Recipe(s) to run, may be with argument(s)
|
||||
]
|
||||
120
just-bin/completions/just.powershell
Normal file
120
just-bin/completions/just.powershell
Normal file
@ -0,0 +1,120 @@
|
||||
using namespace System.Management.Automation
|
||||
using namespace System.Management.Automation.Language
|
||||
|
||||
Register-ArgumentCompleter -Native -CommandName 'just' -ScriptBlock {
|
||||
param($wordToComplete, $commandAst, $cursorPosition)
|
||||
|
||||
$commandElements = $commandAst.CommandElements
|
||||
$command = @(
|
||||
'just'
|
||||
for ($i = 1; $i -lt $commandElements.Count; $i++) {
|
||||
$element = $commandElements[$i]
|
||||
if ($element -isnot [StringConstantExpressionAst] -or
|
||||
$element.StringConstantType -ne [StringConstantType]::BareWord -or
|
||||
$element.Value.StartsWith('-') -or
|
||||
$element.Value -eq $wordToComplete) {
|
||||
break
|
||||
}
|
||||
$element.Value
|
||||
}) -join ';'
|
||||
|
||||
$completions = @(switch ($command) {
|
||||
'just' {
|
||||
[CompletionResult]::new('--alias-style', '--alias-style', [CompletionResultType]::ParameterName, 'Set list command alias display style')
|
||||
[CompletionResult]::new('--ceiling', '--ceiling', [CompletionResultType]::ParameterName, 'Do not ascend above <CEILING> directory when searching for a justfile.')
|
||||
[CompletionResult]::new('--chooser', '--chooser', [CompletionResultType]::ParameterName, 'Override binary invoked by `--choose`')
|
||||
[CompletionResult]::new('--color', '--color', [CompletionResultType]::ParameterName, 'Print colorful output')
|
||||
[CompletionResult]::new('--command-color', '--command-color', [CompletionResultType]::ParameterName, 'Echo recipe lines in <COMMAND-COLOR>')
|
||||
[CompletionResult]::new('--cygpath', '--cygpath', [CompletionResultType]::ParameterName, 'Use binary at <CYGPATH> to convert between unix and Windows paths.')
|
||||
[CompletionResult]::new('--dotenv-filename', '--dotenv-filename', [CompletionResultType]::ParameterName, 'Search for environment file named <DOTENV-FILENAME> instead of `.env`')
|
||||
[CompletionResult]::new('-E', '-E ', [CompletionResultType]::ParameterName, 'Load <DOTENV-PATH> as environment file instead of searching for one')
|
||||
[CompletionResult]::new('--dotenv-path', '--dotenv-path', [CompletionResultType]::ParameterName, 'Load <DOTENV-PATH> as environment file instead of searching for one')
|
||||
[CompletionResult]::new('--dump-format', '--dump-format', [CompletionResultType]::ParameterName, 'Dump justfile as <FORMAT>')
|
||||
[CompletionResult]::new('-f', '-f', [CompletionResultType]::ParameterName, 'Use <JUSTFILE> as justfile')
|
||||
[CompletionResult]::new('--justfile', '--justfile', [CompletionResultType]::ParameterName, 'Use <JUSTFILE> as justfile')
|
||||
[CompletionResult]::new('--list-heading', '--list-heading', [CompletionResultType]::ParameterName, 'Print <TEXT> before list')
|
||||
[CompletionResult]::new('--list-prefix', '--list-prefix', [CompletionResultType]::ParameterName, 'Print <TEXT> before each list item')
|
||||
[CompletionResult]::new('--set', '--set', [CompletionResultType]::ParameterName, 'Override <VARIABLE> with <VALUE>')
|
||||
[CompletionResult]::new('--shell', '--shell', [CompletionResultType]::ParameterName, 'Invoke <SHELL> to run recipes')
|
||||
[CompletionResult]::new('--shell-arg', '--shell-arg', [CompletionResultType]::ParameterName, 'Invoke shell with <SHELL-ARG> as an argument')
|
||||
[CompletionResult]::new('--tempdir', '--tempdir', [CompletionResultType]::ParameterName, 'Save temporary files to <TEMPDIR>.')
|
||||
[CompletionResult]::new('--timestamp-format', '--timestamp-format', [CompletionResultType]::ParameterName, 'Timestamp format string')
|
||||
[CompletionResult]::new('-d', '-d', [CompletionResultType]::ParameterName, 'Use <WORKING-DIRECTORY> as working directory. --justfile must also be set')
|
||||
[CompletionResult]::new('--working-directory', '--working-directory', [CompletionResultType]::ParameterName, 'Use <WORKING-DIRECTORY> as working directory. --justfile must also be set')
|
||||
[CompletionResult]::new('-c', '-c', [CompletionResultType]::ParameterName, 'Run an arbitrary command with the working directory, `.env`, overrides, and exports set')
|
||||
[CompletionResult]::new('--command', '--command', [CompletionResultType]::ParameterName, 'Run an arbitrary command with the working directory, `.env`, overrides, and exports set')
|
||||
[CompletionResult]::new('--completions', '--completions', [CompletionResultType]::ParameterName, 'Print shell completion script for <SHELL>')
|
||||
[CompletionResult]::new('-l', '-l', [CompletionResultType]::ParameterName, 'List available recipes in <MODULE> or root if omitted')
|
||||
[CompletionResult]::new('--list', '--list', [CompletionResultType]::ParameterName, 'List available recipes in <MODULE> or root if omitted')
|
||||
[CompletionResult]::new('--request', '--request', [CompletionResultType]::ParameterName, 'Execute <REQUEST>. For internal testing purposes only. May be changed or removed at any time.')
|
||||
[CompletionResult]::new('-s', '-s', [CompletionResultType]::ParameterName, 'Show recipe at <PATH>')
|
||||
[CompletionResult]::new('--show', '--show', [CompletionResultType]::ParameterName, 'Show recipe at <PATH>')
|
||||
[CompletionResult]::new('--usage', '--usage', [CompletionResultType]::ParameterName, 'Print recipe usage information')
|
||||
[CompletionResult]::new('--check', '--check', [CompletionResultType]::ParameterName, 'Run `--fmt` in ''check'' mode. Exits with 0 if justfile is formatted correctly. Exits with 1 and prints a diff if formatting is required.')
|
||||
[CompletionResult]::new('--clear-shell-args', '--clear-shell-args', [CompletionResultType]::ParameterName, 'Clear shell arguments')
|
||||
[CompletionResult]::new('-n', '-n', [CompletionResultType]::ParameterName, 'Print what just would do without doing it')
|
||||
[CompletionResult]::new('--dry-run', '--dry-run', [CompletionResultType]::ParameterName, 'Print what just would do without doing it')
|
||||
[CompletionResult]::new('--explain', '--explain', [CompletionResultType]::ParameterName, 'Print recipe doc comment before running it')
|
||||
[CompletionResult]::new('-g', '-g', [CompletionResultType]::ParameterName, 'Use global justfile')
|
||||
[CompletionResult]::new('--global-justfile', '--global-justfile', [CompletionResultType]::ParameterName, 'Use global justfile')
|
||||
[CompletionResult]::new('--highlight', '--highlight', [CompletionResultType]::ParameterName, 'Highlight echoed recipe lines in bold')
|
||||
[CompletionResult]::new('--list-submodules', '--list-submodules', [CompletionResultType]::ParameterName, 'List recipes in submodules')
|
||||
[CompletionResult]::new('--no-aliases', '--no-aliases', [CompletionResultType]::ParameterName, 'Don''t show aliases in list')
|
||||
[CompletionResult]::new('--no-deps', '--no-deps', [CompletionResultType]::ParameterName, 'Don''t run recipe dependencies')
|
||||
[CompletionResult]::new('--no-dotenv', '--no-dotenv', [CompletionResultType]::ParameterName, 'Don''t load `.env` file')
|
||||
[CompletionResult]::new('--no-highlight', '--no-highlight', [CompletionResultType]::ParameterName, 'Don''t highlight echoed recipe lines in bold')
|
||||
[CompletionResult]::new('--one', '--one', [CompletionResultType]::ParameterName, 'Forbid multiple recipes from being invoked on the command line')
|
||||
[CompletionResult]::new('-q', '-q', [CompletionResultType]::ParameterName, 'Suppress all output')
|
||||
[CompletionResult]::new('--quiet', '--quiet', [CompletionResultType]::ParameterName, 'Suppress all output')
|
||||
[CompletionResult]::new('--allow-missing', '--allow-missing', [CompletionResultType]::ParameterName, 'Ignore missing recipe and module errors')
|
||||
[CompletionResult]::new('--shell-command', '--shell-command', [CompletionResultType]::ParameterName, 'Invoke <COMMAND> with the shell used to run recipe lines and backticks')
|
||||
[CompletionResult]::new('--timestamp', '--timestamp', [CompletionResultType]::ParameterName, 'Print recipe command timestamps')
|
||||
[CompletionResult]::new('-u', '-u', [CompletionResultType]::ParameterName, 'Return list and summary entries in source order')
|
||||
[CompletionResult]::new('--unsorted', '--unsorted', [CompletionResultType]::ParameterName, 'Return list and summary entries in source order')
|
||||
[CompletionResult]::new('--unstable', '--unstable', [CompletionResultType]::ParameterName, 'Enable unstable features')
|
||||
[CompletionResult]::new('-v', '-v', [CompletionResultType]::ParameterName, 'Use verbose output')
|
||||
[CompletionResult]::new('--verbose', '--verbose', [CompletionResultType]::ParameterName, 'Use verbose output')
|
||||
[CompletionResult]::new('--yes', '--yes', [CompletionResultType]::ParameterName, 'Automatically confirm all recipes.')
|
||||
[CompletionResult]::new('--changelog', '--changelog', [CompletionResultType]::ParameterName, 'Print changelog')
|
||||
[CompletionResult]::new('--choose', '--choose', [CompletionResultType]::ParameterName, 'Select one or more recipes to run using a binary chooser. If `--chooser` is not passed the chooser defaults to the value of $JUST_CHOOSER, falling back to `fzf`')
|
||||
[CompletionResult]::new('--dump', '--dump', [CompletionResultType]::ParameterName, 'Print justfile')
|
||||
[CompletionResult]::new('-e', '-e', [CompletionResultType]::ParameterName, 'Edit justfile with editor given by $VISUAL or $EDITOR, falling back to `vim`')
|
||||
[CompletionResult]::new('--edit', '--edit', [CompletionResultType]::ParameterName, 'Edit justfile with editor given by $VISUAL or $EDITOR, falling back to `vim`')
|
||||
[CompletionResult]::new('--evaluate', '--evaluate', [CompletionResultType]::ParameterName, 'Evaluate and print all variables. If a variable name is given as an argument, only print that variable''s value.')
|
||||
[CompletionResult]::new('--fmt', '--fmt', [CompletionResultType]::ParameterName, 'Format and overwrite justfile')
|
||||
[CompletionResult]::new('--groups', '--groups', [CompletionResultType]::ParameterName, 'List recipe groups')
|
||||
[CompletionResult]::new('--init', '--init', [CompletionResultType]::ParameterName, 'Initialize new justfile in project root')
|
||||
[CompletionResult]::new('--man', '--man', [CompletionResultType]::ParameterName, 'Print man page')
|
||||
[CompletionResult]::new('--summary', '--summary', [CompletionResultType]::ParameterName, 'List names of available recipes')
|
||||
[CompletionResult]::new('--variables', '--variables', [CompletionResultType]::ParameterName, 'List names of variables')
|
||||
[CompletionResult]::new('-h', '-h', [CompletionResultType]::ParameterName, 'Print help')
|
||||
[CompletionResult]::new('--help', '--help', [CompletionResultType]::ParameterName, 'Print help')
|
||||
[CompletionResult]::new('-V', '-V ', [CompletionResultType]::ParameterName, 'Print version')
|
||||
[CompletionResult]::new('--version', '--version', [CompletionResultType]::ParameterName, 'Print version')
|
||||
break
|
||||
}
|
||||
})
|
||||
|
||||
function Get-JustFileRecipes([string[]]$CommandElements) {
|
||||
$justFileIndex = $commandElements.IndexOf("--justfile");
|
||||
|
||||
if ($justFileIndex -ne -1 -and $justFileIndex + 1 -le $commandElements.Length) {
|
||||
$justFileLocation = $commandElements[$justFileIndex + 1]
|
||||
}
|
||||
|
||||
$justArgs = @("--summary")
|
||||
|
||||
if (Test-Path $justFileLocation) {
|
||||
$justArgs += @("--justfile", $justFileLocation)
|
||||
}
|
||||
|
||||
$recipes = $(just @justArgs) -split ' '
|
||||
return $recipes | ForEach-Object { [CompletionResult]::new($_) }
|
||||
}
|
||||
|
||||
$elementValues = $commandElements | Select-Object -ExpandProperty Value
|
||||
$recipes = Get-JustFileRecipes -CommandElements $elementValues
|
||||
$completions += $recipes
|
||||
$completions.Where{ $_.CompletionText -like "$wordToComplete*" } |
|
||||
Sort-Object -Property ListItemText
|
||||
}
|
||||
181
just-bin/completions/just.zsh
Normal file
181
just-bin/completions/just.zsh
Normal file
@ -0,0 +1,181 @@
|
||||
#compdef just
|
||||
|
||||
autoload -U is-at-least
|
||||
|
||||
_just() {
|
||||
typeset -A opt_args
|
||||
typeset -a _arguments_options
|
||||
local ret=1
|
||||
|
||||
if is-at-least 5.2; then
|
||||
_arguments_options=(-s -S -C)
|
||||
else
|
||||
_arguments_options=(-s -C)
|
||||
fi
|
||||
|
||||
local context curcontext="$curcontext" state line
|
||||
local common=(
|
||||
'(--no-aliases)--alias-style=[Set list command alias display style]: :(left right separate)' \
|
||||
'--ceiling=[Do not ascend above <CEILING> directory when searching for a justfile.]: :_files' \
|
||||
'--chooser=[Override binary invoked by \`--choose\`]: :_default' \
|
||||
'--color=[Print colorful output]: :(always auto never)' \
|
||||
'--command-color=[Echo recipe lines in <COMMAND-COLOR>]: :(black blue cyan green purple red yellow)' \
|
||||
'--cygpath=[Use binary at <CYGPATH> to convert between unix and Windows paths.]: :_files' \
|
||||
'(-E --dotenv-path)--dotenv-filename=[Search for environment file named <DOTENV-FILENAME> instead of \`.env\`]: :_default' \
|
||||
'-E+[Load <DOTENV-PATH> as environment file instead of searching for one]: :_files' \
|
||||
'--dotenv-path=[Load <DOTENV-PATH> as environment file instead of searching for one]: :_files' \
|
||||
'--dump-format=[Dump justfile as <FORMAT>]:FORMAT:(json just)' \
|
||||
'-f+[Use <JUSTFILE> as justfile]: :_files' \
|
||||
'--justfile=[Use <JUSTFILE> as justfile]: :_files' \
|
||||
'--list-heading=[Print <TEXT> before list]:TEXT:_default' \
|
||||
'--list-prefix=[Print <TEXT> before each list item]:TEXT:_default' \
|
||||
'*--set=[Override <VARIABLE> with <VALUE>]: :(_just_variables)' \
|
||||
'--shell=[Invoke <SHELL> to run recipes]: :_default' \
|
||||
'*--shell-arg=[Invoke shell with <SHELL-ARG> as an argument]: :_default' \
|
||||
'--tempdir=[Save temporary files to <TEMPDIR>.]: :_files' \
|
||||
'--timestamp-format=[Timestamp format string]: :_default' \
|
||||
'-d+[Use <WORKING-DIRECTORY> as working directory. --justfile must also be set]: :_files' \
|
||||
'--working-directory=[Use <WORKING-DIRECTORY> as working directory. --justfile must also be set]: :_files' \
|
||||
'*-c+[Run an arbitrary command with the working directory, \`.env\`, overrides, and exports set]: :_default' \
|
||||
'*--command=[Run an arbitrary command with the working directory, \`.env\`, overrides, and exports set]: :_default' \
|
||||
'--completions=[Print shell completion script for <SHELL>]:SHELL:(bash elvish fish nushell powershell zsh)' \
|
||||
'()-l+[List available recipes in <MODULE> or root if omitted]' \
|
||||
'()--list=[List available recipes in <MODULE> or root if omitted]' \
|
||||
'--request=[Execute <REQUEST>. For internal testing purposes only. May be changed or removed at any time.]: :_default' \
|
||||
'-s+[Show recipe at <PATH>]: :(_just_commands)' \
|
||||
'--show=[Show recipe at <PATH>]: :(_just_commands)' \
|
||||
'()--usage=[Print recipe usage information]:PATH:_default' \
|
||||
'--check[Run \`--fmt\` in '\''check'\'' mode. Exits with 0 if justfile is formatted correctly. Exits with 1 and prints a diff if formatting is required.]' \
|
||||
'--clear-shell-args[Clear shell arguments]' \
|
||||
'(-q --quiet)-n[Print what just would do without doing it]' \
|
||||
'(-q --quiet)--dry-run[Print what just would do without doing it]' \
|
||||
'--explain[Print recipe doc comment before running it]' \
|
||||
'(-f --justfile -d --working-directory)-g[Use global justfile]' \
|
||||
'(-f --justfile -d --working-directory)--global-justfile[Use global justfile]' \
|
||||
'--highlight[Highlight echoed recipe lines in bold]' \
|
||||
'--list-submodules[List recipes in submodules]' \
|
||||
'--no-aliases[Don'\''t show aliases in list]' \
|
||||
'--no-deps[Don'\''t run recipe dependencies]' \
|
||||
'--no-dotenv[Don'\''t load \`.env\` file]' \
|
||||
'--no-highlight[Don'\''t highlight echoed recipe lines in bold]' \
|
||||
'--one[Forbid multiple recipes from being invoked on the command line]' \
|
||||
'(-n --dry-run)-q[Suppress all output]' \
|
||||
'(-n --dry-run)--quiet[Suppress all output]' \
|
||||
'--allow-missing[Ignore missing recipe and module errors]' \
|
||||
'--shell-command[Invoke <COMMAND> with the shell used to run recipe lines and backticks]' \
|
||||
'--timestamp[Print recipe command timestamps]' \
|
||||
'-u[Return list and summary entries in source order]' \
|
||||
'--unsorted[Return list and summary entries in source order]' \
|
||||
'--unstable[Enable unstable features]' \
|
||||
'*-v[Use verbose output]' \
|
||||
'*--verbose[Use verbose output]' \
|
||||
'--yes[Automatically confirm all recipes.]' \
|
||||
'--changelog[Print changelog]' \
|
||||
'--choose[Select one or more recipes to run using a binary chooser. If \`--chooser\` is not passed the chooser defaults to the value of \$JUST_CHOOSER, falling back to \`fzf\`]' \
|
||||
'--dump[Print justfile]' \
|
||||
'-e[Edit justfile with editor given by \$VISUAL or \$EDITOR, falling back to \`vim\`]' \
|
||||
'--edit[Edit justfile with editor given by \$VISUAL or \$EDITOR, falling back to \`vim\`]' \
|
||||
'--evaluate[Evaluate and print all variables. If a variable name is given as an argument, only print that variable'\''s value.]' \
|
||||
'--fmt[Format and overwrite justfile]' \
|
||||
'--groups[List recipe groups]' \
|
||||
'--init[Initialize new justfile in project root]' \
|
||||
'--man[Print man page]' \
|
||||
'--summary[List names of available recipes]' \
|
||||
'--variables[List names of variables]' \
|
||||
'-h[Print help]' \
|
||||
'--help[Print help]' \
|
||||
'-V[Print version]' \
|
||||
'--version[Print version]' \
|
||||
)
|
||||
|
||||
_arguments "${_arguments_options[@]}" $common \
|
||||
'1: :_just_commands' \
|
||||
'*: :->args' \
|
||||
&& ret=0
|
||||
|
||||
case $state in
|
||||
args)
|
||||
curcontext="${curcontext%:*}-${words[2]}:"
|
||||
|
||||
local lastarg=${words[${#words}]}
|
||||
local recipe
|
||||
|
||||
local cmds; cmds=(
|
||||
${(s: :)$(_call_program commands just --summary)}
|
||||
)
|
||||
|
||||
# Find first recipe name
|
||||
for ((i = 2; i < $#words; i++ )) do
|
||||
if [[ ${cmds[(I)${words[i]}]} -gt 0 ]]; then
|
||||
recipe=${words[i]}
|
||||
break
|
||||
fi
|
||||
done
|
||||
|
||||
if [[ $lastarg = */* ]]; then
|
||||
# Arguments contain slash would be recognised as a file
|
||||
_arguments -s -S $common '*:: :_files'
|
||||
elif [[ $lastarg = *=* ]]; then
|
||||
# Arguments contain equal would be recognised as a variable
|
||||
_message "value"
|
||||
elif [[ $recipe ]]; then
|
||||
# Show usage message
|
||||
_message "`just --show $recipe`"
|
||||
# Or complete with other commands
|
||||
#_arguments -s -S $common '*:: :_just_commands'
|
||||
else
|
||||
_arguments -s -S $common '*:: :_just_commands'
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
|
||||
return ret
|
||||
|
||||
}
|
||||
|
||||
(( $+functions[_just_commands] )) ||
|
||||
_just_commands() {
|
||||
[[ $PREFIX = -* ]] && return 1
|
||||
integer ret=1
|
||||
local variables; variables=(
|
||||
${(s: :)$(_call_program commands just --variables)}
|
||||
)
|
||||
local commands; commands=(
|
||||
${${${(M)"${(f)$(_call_program commands just --list)}":# *}/ ##/}/ ##/:Args: }
|
||||
)
|
||||
|
||||
if compset -P '*='; then
|
||||
case "${${words[-1]%=*}#*=}" in
|
||||
*) _message 'value' && ret=0 ;;
|
||||
esac
|
||||
else
|
||||
_describe -t variables 'variables' variables -qS "=" && ret=0
|
||||
_describe -t commands 'just commands' commands "$@"
|
||||
fi
|
||||
|
||||
}
|
||||
|
||||
if [ "$funcstack[1]" = "_just" ]; then
|
||||
(( $+functions[_just_variables] )) ||
|
||||
_just_variables() {
|
||||
[[ $PREFIX = -* ]] && return 1
|
||||
integer ret=1
|
||||
local variables; variables=(
|
||||
${(s: :)$(_call_program commands just --variables)}
|
||||
)
|
||||
|
||||
if compset -P '*='; then
|
||||
case "${${words[-1]%=*}#*=}" in
|
||||
*) _message 'value' && ret=0 ;;
|
||||
esac
|
||||
else
|
||||
_describe -t variables 'variables' variables && ret=0
|
||||
fi
|
||||
|
||||
return ret
|
||||
}
|
||||
|
||||
_just "$@"
|
||||
else
|
||||
compdef _just just
|
||||
fi
|
||||
3
just-bin/just
Executable file
3
just-bin/just
Executable file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:16b616db5c759b43fcf39471f18c9b0104cbc86f89c43d2fc407a7c0d65dd015
|
||||
size 4906296
|
||||
294
just-bin/just.1
Normal file
294
just-bin/just.1
Normal file
@ -0,0 +1,294 @@
|
||||
.ie \n(.g .ds Aq \(aq
|
||||
.el .ds Aq '
|
||||
.TH just 1 "just 1.46.0"
|
||||
.SH NAME
|
||||
just \- 🤖 Just a command runner \- https://github.com/casey/just
|
||||
.SH SYNOPSIS
|
||||
\fBjust\fR [\fB\-\-alias\-style\fR] [\fB\-\-ceiling\fR] [\fB\-\-check\fR] [\fB\-\-chooser\fR] [\fB\-\-clear\-shell\-args\fR] [\fB\-\-color\fR] [\fB\-\-command\-color\fR] [\fB\-\-cygpath\fR] [\fB\-\-dotenv\-filename\fR] [\fB\-E\fR|\fB\-\-dotenv\-path\fR] [\fB\-n\fR|\fB\-\-dry\-run\fR] [\fB\-\-dump\-format\fR] [\fB\-\-explain\fR] [\fB\-g\fR|\fB\-\-global\-justfile\fR] [\fB\-\-highlight\fR] [\fB\-f\fR|\fB\-\-justfile\fR] [\fB\-\-list\-heading\fR] [\fB\-\-list\-prefix\fR] [\fB\-\-list\-submodules\fR] [\fB\-\-no\-aliases\fR] [\fB\-\-no\-deps\fR] [\fB\-\-no\-dotenv\fR] [\fB\-\-no\-highlight\fR] [\fB\-\-one\fR] [\fB\-q\fR|\fB\-\-quiet\fR] [\fB\-\-allow\-missing\fR] [\fB\-\-set\fR] [\fB\-\-shell\fR] [\fB\-\-shell\-arg\fR] [\fB\-\-shell\-command\fR] [\fB\-\-tempdir\fR] [\fB\-\-timestamp\fR] [\fB\-\-timestamp\-format\fR] [\fB\-u\fR|\fB\-\-unsorted\fR] [\fB\-\-unstable\fR] [\fB\-v\fR|\fB\-\-verbose\fR]... [\fB\-d\fR|\fB\-\-working\-directory\fR] [\fB\-\-yes\fR] [\fB\-\-changelog\fR] [\fB\-\-choose\fR] [\fB\-c\fR|\fB\-\-command\fR] [\fB\-\-completions\fR] [\fB\-\-dump\fR] [\fB\-e\fR|\fB\-\-edit\fR] [\fB\-\-evaluate\fR] [\fB\-\-fmt\fR] [\fB\-\-groups\fR] [\fB\-\-init\fR] [\fB\-l\fR|\fB\-\-list\fR] [\fB\-\-man\fR] [\fB\-s\fR|\fB\-\-show\fR] [\fB\-\-summary\fR] [\fB\-\-usage\fR] [\fB\-\-variables\fR] [\fB\-h\fR|\fB\-\-help\fR] [\fB\-V\fR|\fB\-\-version\fR] [\fIARGUMENTS\fR]
|
||||
.SH DESCRIPTION
|
||||
🤖 Just a command runner \- https://github.com/casey/just
|
||||
.SH OPTIONS
|
||||
.TP
|
||||
\fB\-\-alias\-style\fR [default: right]
|
||||
Set list command alias display style
|
||||
.br
|
||||
|
||||
.br
|
||||
[\fIpossible values: \fRleft, right, separate]
|
||||
.RS
|
||||
May also be specified with the \fBJUST_ALIAS_STYLE\fR environment variable.
|
||||
.RE
|
||||
.TP
|
||||
\fB\-\-ceiling\fR
|
||||
Do not ascend above <CEILING> directory when searching for a justfile.
|
||||
.RS
|
||||
May also be specified with the \fBJUST_CEILING\fR environment variable.
|
||||
.RE
|
||||
.TP
|
||||
\fB\-\-check\fR
|
||||
Run `\-\-fmt` in \*(Aqcheck\*(Aq mode. Exits with 0 if justfile is formatted correctly. Exits with 1 and prints a diff if formatting is required.
|
||||
.TP
|
||||
\fB\-\-chooser\fR
|
||||
Override binary invoked by `\-\-choose`
|
||||
.RS
|
||||
May also be specified with the \fBJUST_CHOOSER\fR environment variable.
|
||||
.RE
|
||||
.TP
|
||||
\fB\-\-clear\-shell\-args\fR
|
||||
Clear shell arguments
|
||||
.TP
|
||||
\fB\-\-color\fR [default: auto]
|
||||
Print colorful output
|
||||
.br
|
||||
|
||||
.br
|
||||
[\fIpossible values: \fRalways, auto, never]
|
||||
.RS
|
||||
May also be specified with the \fBJUST_COLOR\fR environment variable.
|
||||
.RE
|
||||
.TP
|
||||
\fB\-\-command\-color\fR
|
||||
Echo recipe lines in <COMMAND\-COLOR>
|
||||
.br
|
||||
|
||||
.br
|
||||
[\fIpossible values: \fRblack, blue, cyan, green, purple, red, yellow]
|
||||
.RS
|
||||
May also be specified with the \fBJUST_COMMAND_COLOR\fR environment variable.
|
||||
.RE
|
||||
.TP
|
||||
\fB\-\-cygpath\fR [default: cygpath]
|
||||
Use binary at <CYGPATH> to convert between unix and Windows paths.
|
||||
.RS
|
||||
May also be specified with the \fBJUST_CYGPATH\fR environment variable.
|
||||
.RE
|
||||
.TP
|
||||
\fB\-\-dotenv\-filename\fR
|
||||
Search for environment file named <DOTENV\-FILENAME> instead of `.env`
|
||||
.TP
|
||||
\fB\-E\fR, \fB\-\-dotenv\-path\fR
|
||||
Load <DOTENV\-PATH> as environment file instead of searching for one
|
||||
.TP
|
||||
\fB\-n\fR, \fB\-\-dry\-run\fR
|
||||
Print what just would do without doing it
|
||||
.RS
|
||||
May also be specified with the \fBJUST_DRY_RUN\fR environment variable.
|
||||
.RE
|
||||
.TP
|
||||
\fB\-\-dump\-format\fR \fI<FORMAT>\fR [default: just]
|
||||
Dump justfile as <FORMAT>
|
||||
.br
|
||||
|
||||
.br
|
||||
[\fIpossible values: \fRjson, just]
|
||||
.RS
|
||||
May also be specified with the \fBJUST_DUMP_FORMAT\fR environment variable.
|
||||
.RE
|
||||
.TP
|
||||
\fB\-\-explain\fR
|
||||
Print recipe doc comment before running it
|
||||
.RS
|
||||
May also be specified with the \fBJUST_EXPLAIN\fR environment variable.
|
||||
.RE
|
||||
.TP
|
||||
\fB\-g\fR, \fB\-\-global\-justfile\fR
|
||||
Use global justfile
|
||||
.TP
|
||||
\fB\-\-highlight\fR
|
||||
Highlight echoed recipe lines in bold
|
||||
.RS
|
||||
May also be specified with the \fBJUST_HIGHLIGHT\fR environment variable.
|
||||
.RE
|
||||
.TP
|
||||
\fB\-f\fR, \fB\-\-justfile\fR
|
||||
Use <JUSTFILE> as justfile
|
||||
.RS
|
||||
May also be specified with the \fBJUST_JUSTFILE\fR environment variable.
|
||||
.RE
|
||||
.TP
|
||||
\fB\-\-list\-heading\fR \fI<TEXT>\fR [default: Available recipes:
|
||||
]
|
||||
Print <TEXT> before list
|
||||
.RS
|
||||
May also be specified with the \fBJUST_LIST_HEADING\fR environment variable.
|
||||
.RE
|
||||
.TP
|
||||
\fB\-\-list\-prefix\fR \fI<TEXT>\fR [default: ]
|
||||
Print <TEXT> before each list item
|
||||
.RS
|
||||
May also be specified with the \fBJUST_LIST_PREFIX\fR environment variable.
|
||||
.RE
|
||||
.TP
|
||||
\fB\-\-list\-submodules\fR
|
||||
List recipes in submodules
|
||||
.RS
|
||||
May also be specified with the \fBJUST_LIST_SUBMODULES\fR environment variable.
|
||||
.RE
|
||||
.TP
|
||||
\fB\-\-no\-aliases\fR
|
||||
Don\*(Aqt show aliases in list
|
||||
.RS
|
||||
May also be specified with the \fBJUST_NO_ALIASES\fR environment variable.
|
||||
.RE
|
||||
.TP
|
||||
\fB\-\-no\-deps\fR
|
||||
Don\*(Aqt run recipe dependencies
|
||||
.RS
|
||||
May also be specified with the \fBJUST_NO_DEPS\fR environment variable.
|
||||
.RE
|
||||
.TP
|
||||
\fB\-\-no\-dotenv\fR
|
||||
Don\*(Aqt load `.env` file
|
||||
.RS
|
||||
May also be specified with the \fBJUST_NO_DOTENV\fR environment variable.
|
||||
.RE
|
||||
.TP
|
||||
\fB\-\-no\-highlight\fR
|
||||
Don\*(Aqt highlight echoed recipe lines in bold
|
||||
.RS
|
||||
May also be specified with the \fBJUST_NO_HIGHLIGHT\fR environment variable.
|
||||
.RE
|
||||
.TP
|
||||
\fB\-\-one\fR
|
||||
Forbid multiple recipes from being invoked on the command line
|
||||
.RS
|
||||
May also be specified with the \fBJUST_ONE\fR environment variable.
|
||||
.RE
|
||||
.TP
|
||||
\fB\-q\fR, \fB\-\-quiet\fR
|
||||
Suppress all output
|
||||
.RS
|
||||
May also be specified with the \fBJUST_QUIET\fR environment variable.
|
||||
.RE
|
||||
.TP
|
||||
\fB\-\-allow\-missing\fR
|
||||
Ignore missing recipe and module errors
|
||||
.RS
|
||||
May also be specified with the \fBJUST_ALLOW_MISSING\fR environment variable.
|
||||
.RE
|
||||
.TP
|
||||
\fB\-\-set\fR \fI<VARIABLE>\fR\fI \fR\fI<VALUE>\fR
|
||||
Override <VARIABLE> with <VALUE>
|
||||
.TP
|
||||
\fB\-\-shell\fR
|
||||
Invoke <SHELL> to run recipes
|
||||
.TP
|
||||
\fB\-\-shell\-arg\fR
|
||||
Invoke shell with <SHELL\-ARG> as an argument
|
||||
.TP
|
||||
\fB\-\-shell\-command\fR
|
||||
Invoke <COMMAND> with the shell used to run recipe lines and backticks
|
||||
.TP
|
||||
\fB\-\-tempdir\fR
|
||||
Save temporary files to <TEMPDIR>.
|
||||
.RS
|
||||
May also be specified with the \fBJUST_TEMPDIR\fR environment variable.
|
||||
.RE
|
||||
.TP
|
||||
\fB\-\-timestamp\fR
|
||||
Print recipe command timestamps
|
||||
.RS
|
||||
May also be specified with the \fBJUST_TIMESTAMP\fR environment variable.
|
||||
.RE
|
||||
.TP
|
||||
\fB\-\-timestamp\-format\fR [default: %H:%M:%S]
|
||||
Timestamp format string
|
||||
.RS
|
||||
May also be specified with the \fBJUST_TIMESTAMP_FORMAT\fR environment variable.
|
||||
.RE
|
||||
.TP
|
||||
\fB\-u\fR, \fB\-\-unsorted\fR
|
||||
Return list and summary entries in source order
|
||||
.RS
|
||||
May also be specified with the \fBJUST_UNSORTED\fR environment variable.
|
||||
.RE
|
||||
.TP
|
||||
\fB\-\-unstable\fR
|
||||
Enable unstable features
|
||||
.RS
|
||||
May also be specified with the \fBJUST_UNSTABLE\fR environment variable.
|
||||
.RE
|
||||
.TP
|
||||
\fB\-v\fR, \fB\-\-verbose\fR
|
||||
Use verbose output
|
||||
.RS
|
||||
May also be specified with the \fBJUST_VERBOSE\fR environment variable.
|
||||
.RE
|
||||
.TP
|
||||
\fB\-d\fR, \fB\-\-working\-directory\fR
|
||||
Use <WORKING\-DIRECTORY> as working directory. \-\-justfile must also be set
|
||||
.RS
|
||||
May also be specified with the \fBJUST_WORKING_DIRECTORY\fR environment variable.
|
||||
.RE
|
||||
.TP
|
||||
\fB\-\-yes\fR
|
||||
Automatically confirm all recipes.
|
||||
.RS
|
||||
May also be specified with the \fBJUST_YES\fR environment variable.
|
||||
.RE
|
||||
.TP
|
||||
\fB\-h\fR, \fB\-\-help\fR
|
||||
Print help
|
||||
.TP
|
||||
\fB\-V\fR, \fB\-\-version\fR
|
||||
Print version
|
||||
.TP
|
||||
[\fIARGUMENTS\fR]
|
||||
Overrides and recipe(s) to run, defaulting to the first recipe in the justfile
|
||||
.SH COMMANDS
|
||||
.TP
|
||||
\fB\-\-changelog\fR
|
||||
Print changelog
|
||||
.TP
|
||||
\fB\-\-choose\fR
|
||||
Select one or more recipes to run using a binary chooser. If `\-\-chooser` is not passed the chooser defaults to the value of $JUST_CHOOSER, falling back to `fzf`
|
||||
.TP
|
||||
\fB\-c\fR, \fB\-\-command\fR
|
||||
Run an arbitrary command with the working directory, `.env`, overrides, and exports set
|
||||
.TP
|
||||
\fB\-\-completions\fR \fI<SHELL>\fR
|
||||
Print shell completion script for <SHELL>
|
||||
.br
|
||||
|
||||
.br
|
||||
[\fIpossible values: \fRbash, elvish, fish, nushell, powershell, zsh]
|
||||
.TP
|
||||
\fB\-\-dump\fR
|
||||
Print justfile
|
||||
.TP
|
||||
\fB\-e\fR, \fB\-\-edit\fR
|
||||
Edit justfile with editor given by $VISUAL or $EDITOR, falling back to `vim`
|
||||
.TP
|
||||
\fB\-\-evaluate\fR
|
||||
Evaluate and print all variables. If a variable name is given as an argument, only print that variable\*(Aqs value.
|
||||
.TP
|
||||
\fB\-\-fmt\fR
|
||||
Format and overwrite justfile
|
||||
.TP
|
||||
\fB\-\-groups\fR
|
||||
List recipe groups
|
||||
.TP
|
||||
\fB\-\-init\fR
|
||||
Initialize new justfile in project root
|
||||
.TP
|
||||
\fB\-l\fR, \fB\-\-list\fR [\fI<MODULE>...\fR]
|
||||
List available recipes in <MODULE> or root if omitted
|
||||
.TP
|
||||
\fB\-\-man\fR
|
||||
Print man page
|
||||
.TP
|
||||
\fB\-s\fR, \fB\-\-show\fR \fI<PATH>...\fR
|
||||
Show recipe at <PATH>
|
||||
.TP
|
||||
\fB\-\-summary\fR
|
||||
List names of available recipes
|
||||
.TP
|
||||
\fB\-\-usage\fR \fI<PATH>...\fR
|
||||
Print recipe usage information
|
||||
.TP
|
||||
\fB\-\-variables\fR
|
||||
List names of variables
|
||||
.SH VERSION
|
||||
v1.46.0
|
||||
.SH AUTHORS
|
||||
Casey Rodarmor <casey@rodarmor.com>
|
||||
Reference in New Issue
Block a user