mirror of
https://github.com/RGBCube/nu_scripts
synced 2025-08-01 22:57:46 +00:00
Port before_v0.60/cool_oneliners
folder (#831)
This PR is part of porting all old scripts #221 and ports `cool_oneliners` folder ## Summary ### dict.nu This script has already been ported to `sourced/cool_oneliners/dict.nu` in28c7e097db
```yaml from: before_v0.60/cool_oneliners/dict.nu to: sourced/cool-oneliners/dict.nu functions: dict: sourced/cool-oneliners/dict.nu:2:dict ``` ### file_cat.nu has already been ported to `sourced/cool_oneliners/file_cat.nu` inc47ccd42b8
```yaml from: before_v0.60/cool_oneliners/file_cat.nu to: sourced/cool-oneliners/file_cat.nu ``` ### filesize.nu ```yaml from: before_v0.60/cool_oneliners/filesize.nu to: sourced/cool-oneliners/filesize.nu ``` ### js_map_to_markdown.nu ```yaml from: before_v0.60/cool_oneliners/js_map_to_markdown.nu to: sourced/cool-oneliners/js_map_to_markdown.nu ``` I created `sourced/cool-oneliners/assets/js_map.json` with the data for this script as it was before ### cdpath-implementation.nu ```yaml from: before_v0.60/cool_oneliners/cdpath-implementation.nu to: sourced/cool-oneliners/cdpath-implementation.nu functions: c: sourced/cool-oneliners/cdpath-implementation.nu:18:c ``` ### parse_aws_s3_ls.nu I don't have aws so I just ported the syntax ```yaml from: before_v0.60/cool_oneliners/parse_aws_s3_ls.nu to: null ``` Edit: I considered not porting this script yet because I can't test it for now ### npm_update_versions.nu ```yaml from: before_v0.60/cool_oneliners/npm_update_versions.nu to: sourced/cool-oneliners/npm_update_versions.nu ``` ### xml_search_schema.nu ```yaml from: before_v0.60/cool_oneliners/xml_search_schema.nu to: sourced/cool-oneliners/xml_search_schema.nu ```
This commit is contained in:
parent
f1b0432ad9
commit
b40ead9ae2
13 changed files with 61 additions and 66 deletions
48
sourced/cool-oneliners/cdpath-implementation.nu
Normal file
48
sourced/cool-oneliners/cdpath-implementation.nu
Normal file
|
@ -0,0 +1,48 @@
|
|||
#!/usr/bin/nu
|
||||
|
||||
# I actually use it as a part of my startup, so I am not really sure how to pack it, yet I wouldd like to contribute
|
||||
#-------------------------------------------------------------------------------------------------------------------------------
|
||||
#
|
||||
# How to use?
|
||||
#-------------------------------------------------
|
||||
#1) Add desired paths to the cdpath variable
|
||||
#2) Use in your shell: $c [directory]
|
||||
#2.5) You *have to* use an argument. If you wish to simply $cd, use $cd command.
|
||||
#3) If the path exists, you will cd into the first match found (the command is iterating over the list in the correct order,
|
||||
# i.e. first element is being iterated overin the first place)
|
||||
#3.5) But if path does not exist, you will receive a proper echo.
|
||||
#-----------------------------------------------------------------------------------------------------------------------------------
|
||||
#
|
||||
#Written by skelly37
|
||||
#------------------------
|
||||
|
||||
# startup = [
|
||||
# "let cdpath = [. /place/your ~/cdpath/here ]",
|
||||
# "def c [dir] { let wd = (pwd); for element in $cdpath {if (pwd) == $wd {cd $element; for directory in (ls -a | select name type | each { if $it.type == Dir {echo $it.name} {} } ) {if $dir == $directory {cd $dir} {}}; if (pwd) == $element {cd $wd} {}} {}}; if (pwd) == $wd {cd $wd; echo \"No such path!\"} {}}",
|
||||
# ]
|
||||
#
|
||||
|
||||
export def --env c [dir] {
|
||||
let CD_PATH = [. ($env.NU_PLUGIN_DIRS | get 0) $nu.default-config-dir ]
|
||||
let wd = (pwd);
|
||||
for element in $CD_PATH {
|
||||
let element = ($element | path expand)
|
||||
if (pwd) == $wd {
|
||||
cd $element;
|
||||
for directory in (ls -a | where type == dir | get name) {
|
||||
if $dir == $directory {
|
||||
cd $dir
|
||||
break
|
||||
}
|
||||
};
|
||||
if (pwd) == $element {
|
||||
cd $wd
|
||||
}
|
||||
}
|
||||
};
|
||||
if (pwd) == $wd {
|
||||
cd $wd
|
||||
print "No such path!"
|
||||
}
|
||||
}
|
||||
|
Loading…
Add table
Add a link
Reference in a new issue