Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 2 additions & 3 deletions custom-completions/auto-generate/parse-fish.nu
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,7 @@ def pair-args [] {
{$"($pair.0 | str trim -c '-')": ($pair.1 | unquote)} # turn into a [{<flag> :<arg>}] removing quotes
]
}
| reduce { |it, acc| $acc | merge { $it }} # merge the list of records into one big record
| reduce { |it, acc| $acc | merge $it } # merge the list of records into one big record
}

def unquote [] {
Expand All @@ -84,11 +84,10 @@ def make-commands-completion [] {
}
}

let quote = '"' # "

# make the action nu completion string from subcommand and args
# subcommand can be empty which will be the root command
def make-subcommands-completion [parents: list] {
let quote = '"' # "
let fishes = $in
$fishes
| group-by a # group by sub command (a flag)
Expand Down
6 changes: 3 additions & 3 deletions custom-completions/op/op-completions.nu
Original file line number Diff line number Diff line change
Expand Up @@ -109,7 +109,7 @@ export extern "op account forget" [
--help(-h) # help for forget
--all # Forget all authenticated accounts.

account?: string: string@"nu completion account" # The account to forget.
account?: string@"nu completion account" # The account to forget.
]

# Manage Connect server instances and tokens in your 1Password account
Expand Down Expand Up @@ -2124,7 +2124,7 @@ def "nu completion item" [] {

def parse_args_rg [] { "(?<opening_quote>['\"`]?)(?<content>.*?)(?<closing_quote>\\k<opening_quote>)(?<separator>\\s+)" }

def "nu completion parse-context" [] string -> {cmd: string, args: list<string>} {
def "nu completion parse-context" []: string -> record {
# context strings starts at cursor position
let ctx = $in + ' ' # add space to end to ensure last part is parsed🙄
mut parse = $ctx | parse --regex (parse_args_rg)
Expand Down Expand Up @@ -2177,7 +2177,7 @@ def "nu completion parse-context" [] string -> {cmd: string, args: list<string>}
def "nu completion output" [
ctx: string, # entered command [sub command, args, + options]
--complete (-c) # if the copletion should have a closing quote and terminating space
] list<string> -> list<string>, string -> list<string> {
]: list<string> -> list<string>, string -> list<string> {

let output = $in
let parse = $ctx + ` `
Expand Down
38 changes: 19 additions & 19 deletions custom-completions/poetry/poetry-completions.nu
Original file line number Diff line number Diff line change
@@ -1,28 +1,28 @@
# Python versions
#
# Used by the add command to specify for which Python version the dependency must be installed
def "nu-complete poetry python-versions" [] nothing -> list<string> {
def "nu-complete poetry python-versions" []: nothing -> list<string> {
["3.8" "3.9" "3.10" "3.11" "3.12" "3.13"]
}

# Default package source names
#
# The default package source names available to install packages from
def "nu-complete poetry default-package-source-names" [] nothing -> list<string> {
def "nu-complete poetry default-package-source-names" []: nothing -> list<string> {
[pypi test test.pypi.org internal-pypi]
}

# Default package source urls
#
# The default package source urls available to install packages from
def "nu-complete poetry default-package-source-urls" [] nothing -> list<string> {
def "nu-complete poetry default-package-source-urls" []: nothing -> list<string> {
["https://" "https://test.pypi.org/legacy/" "https://pypi.org/legacy"]
}

# Default package sources
#
# The default sources to use to install the package, beyond the ones defined within pyproject.toml available for the add command
def "nu-complete poetry default-package-sources" [] nothing -> list<string> {
def "nu-complete poetry default-package-sources" []: nothing -> list<string> {
(nu-complete poetry default-package-source-names) | append (
nu-complete poetry default-package-source-urls
)
Expand All @@ -31,21 +31,21 @@ def "nu-complete poetry default-package-sources" [] nothing -> list<string> {
# Build formats
#
# Used by the build command to limit the built package to either sdist or wheel
def "nu-complete poetry build-formats" [] nothing -> list<string> {
def "nu-complete poetry build-formats" []: nothing -> list<string> {
[sdist wheel]
}

# Default usernames
#
# The current username which is the default suggestion for logging in to services with a username
def "nu-complete poetry default-usernames" [] nothing -> list<string> {
def "nu-complete poetry default-usernames" []: nothing -> list<string> {
[(whoami)]
}

# Setting keys
#
# The available setting keys that can be retrieved/changed by the config command
def "nu-complete poetry setting-keys" [] nothing -> list<string> {
def "nu-complete poetry setting-keys" []: nothing -> list<string> {
[
cache-dir
experimental.system-git-client
Expand Down Expand Up @@ -87,7 +87,7 @@ def "nu-complete poetry setting-keys" [] nothing -> list<string> {
# Setting keys
#
# The possible values for the given setting key, that the config command can chenge the respective setting key to
def "nu-complete poetry setting-values" [context: string] nothing -> list<any> {
def "nu-complete poetry setting-values" [context: string]: nothing -> list<any> {
let $final_context: string = ($context | str trim | split row " " | last)

if (
Expand Down Expand Up @@ -173,21 +173,21 @@ def "nu-complete poetry setting-values" [context: string] nothing -> list<any> {
# Export formats
#
# The list of possible formats supported by the export command
def "nu-complete poetry export-formats" [] nothing -> list<string> {
def "nu-complete poetry export-formats" []: nothing -> list<string> {
["requirements.txt" "constraints.txt"]
}

# Default dependency groups
#
# A default selection of dependency groups
def "nu-complete poetry default-dependency-groups" [] nothing -> list<string> {
def "nu-complete poetry default-dependency-groups" []: nothing -> list<string> {
[main dev deploy test testing tests development developing deployment deploying]
}

# Commands
#
# The list of command names available to have a help message displayed using the help command
def "nu-complete poetry commands" [] nothing -> list<string> {
def "nu-complete poetry commands" []: nothing -> list<string> {
[
about
add
Expand Down Expand Up @@ -233,35 +233,35 @@ def "nu-complete poetry commands" [] nothing -> list<string> {
# Licenses
#
# The available license IDs for project.toml
def "nu-complete poetry licenses" [] nothing -> list<string> {
def "nu-complete poetry licenses" []: nothing -> list<string> {
http get https://spdx.org/licenses/licenses.json | get licenses | get licenseId
}

# ReadMe file formats
#
# A default selection of file extensions used for ReadMe files
def "nu-complete poetry readme-file-formats" [] nothing -> list<string> {
def "nu-complete poetry readme-file-formats" []: nothing -> list<string> {
[md txt adoc rst rft pdf html dbk odf tex latex texi asciidoc markdown xhtml xht htm xml]
}

# Namespaces
#
# The list of namespaces available to list poetry commands about
def "nu-complete poetry namespaces" [] nothing -> list<string> {
def "nu-complete poetry namespaces" []: nothing -> list<string> {
[cache debug env self source]
}

# Default repositories
#
# The default set of repositories available to publish this projects package to
def "nu-complete poetry default-repositories" [] nothing -> list<string> {
def "nu-complete poetry default-repositories" []: nothing -> list<string> {
nu-complete poetry default-package-sources
}

# Default dist directories
#
# The default set of directories where build artifacts may be stored
def "nu-complete poetry default-dist-directories" [] nothing -> list<string> {
def "nu-complete poetry default-dist-directories" []: nothing -> list<string> {
(
ls | get name | where (($it | path type) == "dir") | each {|it| $it | path expand}
) | prepend ($env.PWD | path join "dist")
Expand All @@ -270,21 +270,21 @@ def "nu-complete poetry default-dist-directories" [] nothing -> list<string> {
# Caches
#
# The list of available poetry caches, used to remove one that is listed
def "nu-complete poetry caches" [] nothing -> list<string> {
def "nu-complete poetry caches" []: nothing -> list<string> {
poetry cache list | lines
}

# Virtual environments
#
# The list of available virtual environements, used to remove one that is listed
def "nu-complete poetry virtual-environments" [] nothing -> list<string> {
def "nu-complete poetry virtual-environments" []: nothing -> list<string> {
poetry env list --full-path | lines | each {|| (split row " ").0}
}

# Source priorities
#
# Used by the source commands to set/display the priority of the source
def "nu-complete poetry source-priorities" [] nothing -> list<string> {
def "nu-complete poetry source-priorities" []: nothing -> list<string> {
[default primary secondary supplemental explicit]
}

Expand Down
35 changes: 20 additions & 15 deletions make_release/gen-js-ext.nu
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ def gen_keywords [] {
| where is_extern == false
and is_custom == false
and category !~ deprecated
and ($it.name | str contains -n ' ')
and not ($it.name | str contains ' ')
| get name
| str join '|')

Expand All @@ -12,10 +12,6 @@ def gen_keywords [] {
let postamble = ')\\b'
$'"match": "($var_with_dash_or_under_regex)|($preamble)($cmds)($postamble)",'
}
print $"Generating keywords(char nl)"
print (gen_keywords)
print (char nl)
print (char nl)

def gen_sub_keywords [] {
let sub_cmds = (scope commands
Expand All @@ -33,17 +29,14 @@ def gen_sub_keywords [] {
} | str join '|')
$'"match": "($preamble)($cmds)($postamble)",'
}
print $"Generating sub keywords(char nl)"
print (gen_sub_keywords)
print (char nl)

def gen_keywords_alphabetically [] {
let alphabet = [a b c d e f g h i j k l m n o p q r s t u v w x y z]
let cmds = (scope commands
| where is_extern == false
and is_custom == false
and category !~ deprecated
and ($it.name | str contains -n ' ')
and not ($it.name | str contains ' ')
| get name)

let preamble = '\\b('
Expand All @@ -64,9 +57,6 @@ def gen_keywords_alphabetically [] {
} | str join "\n"
}

print "Generating keywords alphabetically\n"
print (gen_keywords_alphabetically)
print (char nl)

def gen_sub_keywords_alphabetically [] {
let alphabet = [a b c d e f g h i j k l m n o p q r s t u v w x y z]
Expand Down Expand Up @@ -96,6 +86,21 @@ def gen_sub_keywords_alphabetically [] {
} | str join "\n"
}

print "Generating sub keywords alphabetically\n"
print (gen_sub_keywords_alphabetically)
print (char nl)
export def main [] {
print $"Generating keywords(char nl)"
print (gen_keywords)
print (char nl)
print (char nl)

print $"Generating sub keywords(char nl)"
print (gen_sub_keywords)
print (char nl)

print "Generating keywords alphabetically\n"
print (gen_keywords_alphabetically)
print (char nl)

print "Generating sub keywords alphabetically\n"
print (gen_sub_keywords_alphabetically)
print (char nl)
}
2 changes: 1 addition & 1 deletion modules/cwdhist/mod.nu
Original file line number Diff line number Diff line change
Expand Up @@ -64,7 +64,7 @@ def __cwdhist_switching [] {
export def empty-sqlite [] {
# sqlite3 empty.db "VACUUM;"; cat empty.db | gzip | encode base64
'H4sIAAAAAAAAAwsO9MksSVVIyy/KTSxRMGYQYGBkZHBQUGBgYGCEYhhAZhMLGBn0ihbwglgCZOgeBaNgFIyCUTAKRsEoGAWjYBSMglEwCkYBVQAANHgbMAAQAAA='
| decode base64 --binary | gzip -d
| decode base64 | gzip -d
}

export def 'cwd history delete' [cwd] {
Expand Down