Commit Graph

428 Commits

Author SHA1 Message Date
355800f814 feat(module): Add a meson devenv indicator (#4389)
* feat(module): Add a meson devenv indicator

Adds a Meson Developer Environment indicator, if the MESON_DEVENV
variable is set. Inside a `meson devenv`, the prompt will include the
current Meson project name

This also contains a new Truncate utility function, which may be adapted for other modules in the future

* docs: Add Meson to presets
2022-10-11 18:02:46 +02:00
3d452367bd fix(buf): fix spacing & harmonize docs with actual configuration (#4450)
* fix(buf): add whitespace after version string

* fix: update config schema

* fix: config version and bison emoji

* fix: update documentation format

* fix: dprint

* fix: config schema
2022-10-07 22:07:30 +02:00
84bbe3dd03 docs(custom): use single equal sign for 'when' clause of 'custom.foo' example (#4454)
use single equal sign for 'when' clause of 'custom.foo' config example
2022-10-07 22:06:14 +02:00
6e35dfa85a feat(status): Support formatting of pipestatus separator (#4264)
* Support formatting of pipestatus separator

* Format pipestatus separator with each pipestatus

* Add third exit code to pipestatus test

* Clean up pipestatus mapping

* Add comment that was removed
2022-10-07 11:44:14 +02:00
03c4165927 docs: canonicalize the use of quotes for default values (#4428)
* Fixed distortion of double and single quotes

* Run dprint fmt

* Use single quotes to avoid backslash escapes

* Update docs/config/README.md

Co-authored-by: David Knaack <davidkna@users.noreply.github.com>

Co-authored-by: David Knaack <davidkna@users.noreply.github.com>
2022-10-06 09:32:31 +02:00
20b4bf156b docs(java): Fix typo in file detection list (#4416)
Fix typo in docs for Java identification.

The file is "deps.edn", not ".deps.edn" (with a dot at the beginning).
The code looks for the correct name, the typo is only in the docs.
2022-09-29 14:53:25 +02:00
d93074d056 feat: add user-defined color palette (#4209)
* docs(config): add color palette to docs

* feat: add user-defined color palette

* fix: update config schema

* refactor: apply suggestions from code review

Co-authored-by: David Knaack <davidkna@users.noreply.github.com>

* fix: update new test

* feat: add support for multiple palettes

* docs(config): update docs for multiple color palettes

* docs(config): fix formatting

* test: test overriding a predefined color with itself

* docs: mention palettes cannot reference themselves

* refactor: warn when using a nonexistent palette

* test: test retrieving a nonexistent color palette

* fix: fix issues with palette log messages

* fix: update config schema

* fix: skip serializing palette if none

* refactor: change nonexistent palette message to warning

* fix: update config schema

Co-authored-by: David Knaack <davidkna@users.noreply.github.com>
2022-09-27 23:08:52 +02:00
b5d3d8fcf3 feat(schema): deny unknown keys (#4270) 2022-09-09 14:59:38 +02:00
5984f0829e perf(git_commit): only use exact match for tag by default (#4281) 2022-08-19 08:27:41 +02:00
85692d1bf6 feat: add bun module (#4187) 2022-08-01 12:59:36 +02:00
dd73447329 feat: Add the ability to have some file extensions *prevent* a module from triggering (#4043)
* test that we can match a multi-part file extension such as in foo.tar.gz

* now we can match multi-part file extensions like on foo.tar.gz

* add a test that a !ext is a negative match and over-rides any positive match

* test that negative extensions that don't match any file have no effect

* fail the match if any negative extensions exist

* cargo fmt

I'm not happy with this, in particular it's made the structures of has_any_positive_extension and has_no_negative_extension look different, and the logic in is_match is harder to follow

* placate clippy

* documentation for multi-part extensions and negative extensions

* get rid of an unnecessary .to_string() and comment the necessary but weird-looking invocations of .to_string_lossy().to_string()

* tests for negative matching of files and folders

* fail the match is any negative files/folders match

* document file/folder negative matching; be less prolix

* suppress Nodejs if Deno files are present (#2627)

* Revert "suppress Nodejs if Deno files are present (#2627)"

This reverts commit c1394fd7b3.

This was a terrible way of doing this, there's got to be a better way!
2022-07-31 16:29:48 +02:00
b75677ab59 docs: update configuration format list (#4212)
update configuration format list
2022-07-29 08:08:10 +02:00
61438484bd feat(status): Add pipestatus_segment_format option to status module (#4103)
Add pipestatus_segment_format
2022-07-19 15:07:50 +02:00
5c5969c50b feat(k8s): Add folder detection to the k8s module. (#4157)
Have added configuration options to the k8s module to allow activating
the module only in directories that contains certain files or folders.
To ensure this is backwards compatible and because there are not really
any standard files or folders for Kubernetes I have set the defaults to
empty and will activate the module for all directories.
2022-07-10 11:14:54 +02:00
af15de93c4 perf(pulumi): allow disabling upwards discovery (#4159)
* perf(pulumi): disable upwards discovery by default

* change `search_upwards` default to `true`
2022-07-10 11:14:43 +02:00
1a4fac63f7 feat: add Raku module (#4048)
* feat: add Raku module

* Update docs/config/README.md

Co-authored-by: Thomas O'Donnell <andytom@users.noreply.github.com>

Co-authored-by: Thomas O'Donnell <andytom@users.noreply.github.com>
2022-06-26 12:00:55 +02:00
67619386cd fix(character): Standadise Vim config names (#4081)
Have switched all vi/vim symbols to have the same prefix 'vim'. To
preserve backwards compatibility with existing configs I have added an
alias for the previous config name.
2022-06-18 23:23:59 +02:00
8eb5983363 docs: Fix typo in custom command docs (#4080) 2022-06-18 16:30:02 +02:00
a72b4638f3 docs(aws): improve legibility (#4050) 2022-06-12 13:27:19 +02:00
146976351e fix(fish): add proper vi mode detection for fish shell (#3839)
* add proper vi mode detection for fish shell

* update tests

* fix test

* update config-schema.json

* update docs

* add warning about symbols only supported in fish
2022-06-04 12:41:24 +02:00
df5c2d8836 feat(kubernetes): add user alias (#4008)
* add kubernetes user alias (fixes #3870)

* update config schema

* sort config property alphabetically

* Update README.md

* add test-case for non-matching alias
2022-05-30 20:09:53 +02:00
3fe6cc023c feat: Add support for Daml (#4004) 2022-05-26 16:42:31 +02:00
209181c369 docs: package module documentation consistency (#4007) 2022-05-23 07:00:04 -04:00
9ebfce1e36 feat(go): check for go.work file to show Go module in prompt (#3968)
* check for go.work file to display go version

* add test to check for go.work file

* update docs to include go.work file

* chore(dprint): fmt & upgrade plugins (#3969)

Co-authored-by: David Knaack <davidkna@users.noreply.github.com>
2022-05-07 08:04:37 +02:00
393d62c726 feat(rust): Display toolchain names (#3414)
This is an actualization of PR #559 as originally envisioned by qryxip.

Adds the ability to display toolchain versions, either as extracted from
environment/settings files or by getting the host triple. As part of
this, several other major changes were needed:
- Many of the smaller functions within the code have been fused, moved,
  or dropped.
- The Rustup environmental info is now initialized lazily using
  OnceCells. This will hopefully lead to a performance increase.
- New configuration variables (`toolchain` and `numver`) have been added
  to allow finer-grained configuration.
- Override information is no longer read from `rustup` output. Instead,
  it is parsed from the same files that rustup would use to determine
  this info.

Co-authored-by: qryxip <qryxip@gmail.com>

Co-authored-by: qryxip <qryxip@gmail.com>
2022-05-04 15:40:44 -05:00
2bf30dc89f feat(hostname): add ssh_symbol for ssh connections (#3806) 2022-05-04 15:30:16 +02:00
1b938fd484 feat(package): Extract package version from PEP 621 compliant pyproject.toml (#3950)
* feat(package): Extract package version from PEP621 pyproject.toml

* Update docs explaining PEP 621 package version

* Only read pyproject.toml once

* Simplify get_pep621_version

* Handle version formatting in get_pyproject_version
2022-05-02 18:44:01 +02:00
bd7957f01c fix(git_branch): correct variable name for remote branch (#3897) 2022-04-26 20:02:01 +02:00
5174c9a067 doc: Fix spacing for translations (#3920)
Have added so additional spaces around the vuepress markers, `:::`, to
ensure that the don't get included in the line above and below and cause
formatting errors in the translated versions of the documentation.
2022-04-25 11:35:09 -05:00
6def45b751 chore(aws): adds space to the duration variable (#3872) 2022-04-21 20:58:06 +02:00
3fd1486a74 docs(custom): add missing ignore_timeout option documentation (#3887) 2022-04-18 15:52:19 +02:00
28da85061b refactor(custom): various improvements (#3829) 2022-04-09 11:32:45 -04:00
3014284e95 feat(spack): Add Spack module (#3639)
* feat/add readme + presets

* feat/add spack module

* feat/add spack config

* feat/spack to handle

* feat/add spack to modules and root

* fix/readme formattign

* fix/readme typo

* fix/readme formatting

* feat/replace module_config_derive with serde

* feat/add macros to generate schema + schema
2022-04-03 15:33:14 +02:00
c89c13038a feat(username): Detect Admin access in Windows (#2791)
* Detect Admin access in Windows

* Update username doc

* Do not run tests when elevated

* Add comment

* Try fixing tests

* use deelevate crate

* simplify cfg

* Update src/modules/username.rs

Fix rookie mistake

Co-authored-by: David Knaack <davidkna@users.noreply.github.com>

* handle errors

* fix lockfile error

Co-authored-by: David Knaack <davidkna@users.noreply.github.com>
2022-04-01 17:47:49 +02:00
18ad26f98d feat: allow printing config file schema (#3737) 2022-04-01 17:14:05 +02:00
da1ee4604e docs(dotnet): fix link to Microsoft’s documentation for Dotnet (#3810) 2022-03-29 16:55:04 -04:00
e04f126a10 feat(aws): add option to force AWS display (#3720)
* add option to force AWS display

Even if no credentials or credential_process have been setup

* change README wording

* Include sso_start_url in the description

* Change option name to force_display
2022-03-25 22:30:36 +01:00
0863146f07 feat: Add a module for C projects (#3631)
Co-authored-by: David Knaack <davidkna@users.noreply.github.com>
2022-03-25 00:10:19 -04:00
c9b75fe115 fix(init): Change Nushell init for nu 0.60 (#3773) 2022-03-24 15:06:24 -04:00
1f22f76a81 docs: fix typo in Elm config docs 2022-03-24 09:46:12 -05:00
e10928bb4a docs: Fix entry for container config (#3783)
It was missing backticks
2022-03-23 12:01:41 +01:00
72fec559c5 feat(haskell): Add Haskell module (#3587)
* feat(haskell): add haskell module and implement ghc version detection

* feat(haskell): implement stack resolver version detection

* fix(haskell): handle more complex resolvers

* fix(haskell): rename resolver_version to snapshot

* fix(haskell): change default color to bold purple

* feat(haskell): add tests

* fix(haskell): format

* fix(haskell): replace incorrect `or` with `or_else`

* fix(haskell): use write_all instead of write

* fix(haskell): λ as Haskell icon by default

* fix(haskell): fix tests and add a real stack.yaml testcase

* fix(haskell): make clippy happy
2022-03-18 07:45:51 +01:00
d7308203a9 fix(aws): accept sso credentials (#3718) 2022-03-16 23:14:52 +01:00
bae16b525d feat(git_branch): add 'ignore_branches' option (#3753)
* git-branch: Add option 'ignore_branches'

* git-branch: add 'ignore_branches' test

* git-branch: comma-separated to toml array

* git-branch: update ignore_branches test

* git_branch: fix formatting

* git-branch: fix formatting again

* Initialize ignore_branches as empty

Co-authored-by: Thomas O'Donnell <andytom@users.noreply.github.com>

* Use iter().any and branch_name as suggested

* Fix formatting

Co-authored-by: Thomas O'Donnell <andytom@users.noreply.github.com>
2022-03-16 21:41:49 +01:00
86953272a7 fix(status): Make status module work even when the status is 0 (#3750)
Co-authored-by: Izhak Jakov <jizhak@ca.ibm.com>
2022-03-16 16:05:13 -04:00
Kid
a10e24b205 feat(nodejs): check for .mts and .cts files (#3734)
* feat(nodejs): check for `.mts` and `.cts` files

* Hmm

* Tests

* Update docs

* Update table

* Align

* Remove tests

* 🤷

* 🤷🤷
2022-03-12 23:09:16 +01:00
16f62d7904 feat(buf): Add Buf module (#3661)
* Add initial Buf module logic

* Add tests for Buf module

* Add initial draft of docs

* cargo fmt

* Fix config table formatting

* Run dprint

* Run clippy --fix

* cargo fmt

* Add space after emoji

* Fix spacing discrepancy

* Switch to Nerd Font from emoji

* Fix up docs merge conflict handling

Co-authored-by: Matan Kushner <hello@matchai.dev>
2022-03-12 12:10:23 +01:00
ac8c2fe024 feat(aws): Add profile aliases (#3699)
* Rename m.aws.alias_region to alias_name

* Add aws profile aliases

* Document aws.profile_aliases, with examples

* Add tests for new aws.profile_aliases feature

* Tidy alias_handling a bit
2022-03-12 12:08:33 +01:00
d2366ddb9c perf(git_status): add option to use windows starship to render in wsl (#2146) 2022-03-06 21:18:23 -06:00
9995eb7922 docs(directory): add missing doc on option directory.repo_root_format (#3550)
* docs : add missing doc on option direcory.repo_root_format

* docs: fix doc format
2022-02-20 18:23:35 +01:00