John D Pell
2f4ed49a71
completion/bash-it: adopt `_compreply_candidates()`
2022-01-24 21:41:13 -08:00
John D Pell
e1e971c0ea
completion/bash-it: use `read -a` to populate `$COMPREPLY`
...
This allows for spaces and special characters in file names, i.e. internaltional/unicode words.
2022-01-24 21:41:13 -08:00
John D Pell
3874ad85c2
completion/bash-it: use existing functions
2022-01-24 21:41:13 -08:00
John D Pell
d7695d5456
completion/bash-it: `shfmt`
2022-01-24 21:41:13 -08:00
Noah Gorny
dbb3ea4736
Merge pull request #2035 from gaelicWizard/theme/pete
...
theme/pete: `shellcheck` && `shfmt`
2022-01-24 23:32:58 +02:00
Noah Gorny
edc36795b5
Merge pull request #2030 from gaelicWizard/bats
...
Update BATS
2022-01-24 23:29:00 +02:00
Noah Gorny
7e54aea8c7
Merge pull request #1934 from gaelicWizard/helpers
...
lib/helpers: lint, cleanup, & improvements
2022-01-24 23:28:03 +02:00
Noah Gorny
4ba1ab9fd7
Merge pull request #2018 from gaelicWizard/lib/helpers-base
...
lib/helpers: fix `_command_exists()`
2022-01-24 23:27:05 +02:00
John D Pell
18536ed892
template: Add `$THEME_CHECK_SUDO`
2022-01-24 11:46:16 -08:00
John D Pell
21942f6275
lib/theme: disable THEME_CHECK_SUDO
...
Move `$THEME_CHECK_SUDO` to `lib/them`, and set it to `false` instead of `true`.
2022-01-24 11:46:16 -08:00
John D Pell
a78d72eed1
plugin/projects: refactor a bit
2022-01-18 20:47:08 -08:00
John D Pell
46df804ad9
CI: fix version of OSX runner
...
Now that Mac OS X is "version 11", the "minor" version is no longer relevant.
Alsö, clean up the run conditions.
2022-01-18 16:36:19 -08:00
John D Pell
1ec48c8d71
plugin/projects: add to `template/bash_profile`
2022-01-18 11:08:51 -08:00
John D Pell
ea2002a2e4
plugin/projects: cleanup
...
I'm deliberately leaving the possibility that one might `pjo` without a project name...
2022-01-18 11:08:51 -08:00
John D Pell
0f0093dd4b
lib/helpers: quotes for consistency
...
Quote some parameter uses that don't strictly require it, but since Bash needs so many quotes everywhere else my brain worms feel better when these are quoted too.
lib/helpers: simplify some quote escapes
2022-01-18 11:06:21 -08:00
John D Pell
dfc3fa4339
lib/helpers: delete `_bash-it-determine-component-status-from-path()`
...
Duplicate function of existing `_bash-it-component-item-is-enabled()`.
2022-01-18 11:06:21 -08:00
John D Pell
62b5297dc2
lib/utilities: autonomize `_bash-it-component-item-is-enabled()`
2022-01-18 11:06:21 -08:00
John D Pell
22b290b94f
lib/helpers: simplify some functions
...
- add some `local` variables,
- don't subshell `_typeset_functions`,
2022-01-18 11:02:37 -08:00
John D Pell
bc25810069
lib/helpers: juse use `awk`, insteado of `grep | awk`
2022-01-18 11:02:37 -08:00
John D Pell
805eab804c
lib/helpers: fix profile subcommand tests
2022-01-18 11:02:37 -08:00
John D Pell
4719e43d0b
lib/helpers: remove weird non-globs
...
Replace weird non-globs with array and loop, as suggested by `shellcheck`. Alsö, simplify several constructs to eliminate external binaries.
Alsö, see mvdan/sh issue 558
lib/helpers: unbound positional parameters
2022-01-18 11:02:37 -08:00
John D Pell
251e23a3fa
lib/helpers: use `awk` to count lines instead of piping to `wc -l`
...
Co-authored-by: Kostas Giapis <45879751+tsiflimagas@users.noreply.github.com>
2022-01-18 11:02:37 -08:00
John D Pell
317ff77810
lib/helpers: be extra careful with word splitting
...
Use curly braces when `$1` is unseparated from words in a string.
2022-01-18 11:02:37 -08:00
John D Pell
550f808884
lib/helpers: fix `_bash-it-describe()`
...
Use `_bash-it-component-item-is-enabled()`
Fix SC2295
2022-01-18 11:02:37 -08:00
John D Pell
4c473853e9
lib/helpers: cleanup
...
- Improve `pushd`/`popd` somewhat
- local some parameters
- Lose weird Mac-specific alternate shell startup file (Bash loads startup files on Mac the same as it does on any other *nix system.)
2022-01-18 11:02:37 -08:00
John D Pell
003b0ce802
lib/helpers: `shfmt`
...
My apologies to future `git blame` hunters ♥
2022-01-18 11:02:36 -08:00
John D Pell
6ed006a167
lib/helpers: second `shellcheck` pass
...
lib/helpers: lint `_bash-it-migrate()`
lib/helpers: lint `_disable-thing()`
lib/helpers: lint `_enable-thing()`
lib/helpers: lint `_help-list-aliases()`
lib/helpers: lint `_help-plugins()`
lib/helpers: some SC2034 fixes
And SC2154 in `_make_reload_alias()`
lib/helpers: lint `all_groups()`
2022-01-18 11:02:21 -08:00
John D Pell
5eab3bd288
lib/helpers: first `shellcheck` pass
...
Quote things, SC2268, SC2143, SC2181, SC2162, SC2016, SC2013, &c.
Rewrite globbing per `shellcheck`’s SC2013, and alsö s/typeset/local/g. Eliminate `compgen` where possible.
Alsö: use the existing utility functions `_bash-it-get-component-type-from-path` and `_bash-it-get-component-name-from-path`, which just use parameter substitution anyway. Why was `sed` here?
Alsö, don't add not-existing directories to `$PATH` in `pathmunge()`.
Finally, merge PR #1865 from NoahGorny...and clean it a bit...
2022-01-18 11:02:21 -08:00
John D Pell
9b51dc0b5f
lib/helpers: fix `_command_exists()`
...
The weird subshell is weird AF. Just do a normal `if`.
Ditto `_binary_exists()`, `_completion_exists()`, and `_is_function()`!
2022-01-18 11:02:10 -08:00
John D Pell
180fb93df8
lib/helpers: fix `all_groups()`
...
- Don't write to disk, just pipe.
- Don't loop, just do all functions.
Performance of old implementation on my system:
```
real 0m9.996s
user 0m5.318s
sys 0m9.126s
```
Performance of new implementation on my system:
```
real 0m0.052s
user 0m0.069s
sys 0m0.025s
```
2022-01-18 11:02:10 -08:00
Noah Gorny
973a1f9b40
Merge pull request #1958 from gaelicWizard/plugin-proxy
...
plugin/proxy: lint
2022-01-18 19:42:32 +02:00
Noah Gorny
e116288b83
Merge pull request #2027 from gaelicWizard/lib/composure
...
Update `vendor/composure`
2022-01-18 19:40:41 +02:00
Noah Gorny
fd35094463
Merge pull request #2004 from gaelicWizard/finalize
...
Create lib finalize hook
2022-01-18 19:40:05 +02:00
Noah Gorny
8d5d9073ce
Merge pull request #1999 from gaelicWizard/utilities
...
lib/utilities: refactor `_bash-it-pluralize-component()` & other improvements
2022-01-18 19:39:45 +02:00
Noah Gorny
bdf9a2bca3
Merge pull request #1959 from gaelicWizard/log
...
Lib/log: linting and small improvements
2022-01-18 19:39:24 +02:00
John D Pell
77c5f8eda9
completion/dotnet: modernize
...
and `shfmt`
2022-01-12 22:39:49 -08:00
John D Pell
1a48bcc852
completion/dotnet: new completion
...
See: https://docs.microsoft.com/en-us/dotnet/core/tools/enable-tab-autocomplete#bash
2022-01-12 22:20:25 -08:00
John D Pell
27ebc585be
theme/brunton: SC2154
...
Handle all unbound parameters, even colors!
2022-01-12 13:38:10 -08:00
John D Pell
8e8fe69db4
theme/pete: `shellcheck` && `shfmt`
2022-01-12 13:29:40 -08:00
John D Pell
9291b46b15
test_lib: update BATS to latest tag(s)
...
And fix any failing tests.
2022-01-10 00:27:39 -08:00
John D Pell
d4b4995e2a
Update "composure" from " https://github.com/erichs/composure@master "
...
git-vendor-name: composure
git-vendor-dir: vendor/github.com/erichs/composure
git-vendor-repository: https://github.com/erichs/composure
git-vendor-ref: master
2022-01-09 00:54:30 -08:00
John D Pell
7430a06ec2
lib/utilities: Use variable indirection
...
Don't use `local -n var` so that we can support v3.2...
Note: function names and variable names are different namespaces, so we can have a variable named the same as the function...which makes it really easy to predict default names for results when returning this way.
2022-01-09 00:53:39 -08:00
John D Pell
2b5e531396
lib/utilities: update `_bash-it-component-cache-file()`
...
Match idiom of `_bash-it-component-singularize()`
2022-01-09 00:53:39 -08:00
John D Pell
4f700dfb3b
lib/utilities: rewrite _bash-it-component-pluralize
...
Fix up and rename `_bash-it-pluralize-component()` to `_bash-it-component-pluralize()`, and add matching function `_bash-it-component-singularize()`.
2022-01-09 00:53:39 -08:00
John D Pell
c3eaa606de
lib/utilities: fix `_bash-it-component-help()` for long component names
...
Alsö, minor tweak to `_bash-it-array-contains-element()` for clarity.
This fixes Bash-It/bash-it#1978 .
2022-01-09 00:53:39 -08:00
John D Pell
e3bd30f98d
lib/utilities: autonomize `_bash-it-component-item-is-enabled()`
...
Make `_bash-it-component-item-is-enabled()` operate *without* using `_bash-it-component-help()`...so it's now *much* faster.
2022-01-09 00:53:39 -08:00
John D Pell
e71ea4ad02
lib/log: function `_bash-it-log-prefix-by-path()`
...
...to replace `_set-prefix-based-on-path()` in `scripts/reloader`.
Deliberately does not use `_bash-it-get-component-name-from-path()`/`_bash-it-get-component-type-from-path()` as we need some of the intermediate state and would have to reimplement anyway.
2022-01-09 00:49:44 -08:00
John D Pell
6dec28b5df
lib/log: rename `_log_general()`
...
...to `_bash-it-log-message()`.
alsö, add common log levels with common names.
2022-01-09 00:49:44 -08:00
John D Pell
b772e6ace7
lib/log: `shellcheck` && `shfmt`
...
Alsö, fix tests to load `lib/colors` instead of `lib/appearance`...wut
Alsö, `short-circuit _has_colors()`: If we already looked up colors, and we already have them, then don't run `tput` again.
My apologies to future `git blame` hunters ♥
2022-01-09 00:49:44 -08:00
John D Pell
dc45958a8e
finalize: first attempt at documentation?
2022-01-09 00:46:51 -08:00