Commit Graph

149 Commits

Author SHA1 Message Date
Zhenhui Xie 61604a4a8e feat: Allow segment-specific styling (#378)
Adds the ability to style individual segments in the prompt.

The segment documentation is not fully updated in this commit and is waiting on
a config refactor so that we can write unified docs.
2019-09-29 23:03:07 -05:00
Ryo Yamashita b7dc6c5e96 fix: Prevent `rust` module from installing toolchains (#426)
Prevents the rust module from installing rustup toolchains.

Previously, the rust module would trigger rustup toolchain installations in some cases,
leading to frozen prompts while rustup downloads/installs components. This commit
changes the behaviour to avoid this.
2019-09-29 21:39:48 -05:00
Andrew Houts 0eafb2bde7 feat: add memory usage module (#403)
Adds a module to display system memory and swap usage.
2019-09-29 00:55:48 -05:00
yuri 63a45d01f9 feat: Use tilde for home_directory when under version control (#439) 2019-09-28 22:50:38 -05:00
yuri d3fc66c0c5 feat: Add Environment Variable module (#409) 2019-09-26 17:30:58 +09:00
Thomas O'Donnell b050c59708 feat: Add AWS module (#419)
Adds a module for displaying the current AWS profile based 
on the AWS_PROFILE envar.
2019-09-25 21:55:47 -05:00
Bijan Chokoufe Nejad 34112ef7a9 refactor: Refactor config.rs to pure functional style (#427)
- Replaced for loop that iterates over mutable state with a fold expression
- Unified the logging for the different accessors. The code is now screaming for further refactoring (get_module_config, get_as_bool, get_as_str, get_as_i64 and get_as_array are basically the same up to higher order functions but I didn't manage to get the life times right)
- Increased test coverage (especially a test case for none not at the end)
- Removed code comments that literally repeated the code in the next line (see e.g. https://blog.usejournal.com/stop-writing-code-comments-28fef5272752)
- Added TODO for the problematic line that swallows the None and produces Some(Style::new()) (this also happened before but in a less obvious way)
2019-09-26 10:38:36 +09:00
Matan Kushner caaf3bc6a9
revert: Revert the command duration in ms feature (#380) (#425)
Due to incompatibilities with the macOS date utility, we are
temporarily reverting this feature.

Refs: #c5e971a
2019-09-25 17:13:58 +09:00
Tom Hotston c5e971aef8 feat: Add ability for command duration in milliseconds (#380) 2019-09-24 14:03:10 -05:00
Gimbar 702ad274cf feat: Add option to always show the username module (#408) 2019-09-22 15:32:11 -05:00
Thomas O'Donnell 08340328dd refactor: Remove dead code in battery module (#405) 2019-09-21 09:41:15 -05:00
谢祯晖 14fe246138 fix: Add display for unknown battery state (#316) 2019-09-20 12:52:54 -04:00
Kevin Song c2875d99b6 feat: add support for logical paths in directory (#366)
Adds the ability for starship to display the logical path instead of the physical path.
2019-09-20 12:28:09 -04:00
Neil Kistner cd892ebb60 fix: fish_pwd option handles repeated directories properly (#399) 2019-09-20 10:37:55 -04:00
Kuba Clark 71f03ec3e9 feat: Add Java Module (#314)
Implements a Java module which shows basic Java information when inside a Java project.
2019-09-19 18:02:53 -05:00
Neil Kistner aa26c5bca4 fix: Update Module::is_empty to check value of segments (#332)
Previously, a set of empty segments would cause the module to print. This changes the 
logic of Module::is_empty to check that all the segments are empty instead.
2019-09-16 00:03:44 -05:00
Kutsuzawa Ryo 7a98ec1d8e feat: Add configuration for the `git_status` prefix and suffix (#367) 2019-09-15 16:44:53 -04:00
Thomas O'Donnell 653def05f0 Enable the python module for tox files (#369)
Enable the python module if the current directory contains a `tox.ini`
file.
2019-09-15 12:21:40 -04:00
Nick Young 7e891f17c1 perf: Lazy load files from directory (#335)
Changes context to use `once_cell` to lazily evaluate directory listing on first use.
2019-09-14 09:23:53 -05:00
Matan Kushner 3e23a9a73c chore: Rename integration_test to acceptance_test (#356) 2019-09-12 18:01:13 -05:00
Rob Warner 373493be85 feat: Add support for italic styles (#354) (#358) 2019-09-12 16:10:42 -05:00
谢祯晖 a6c64e8457 feat: Implement threshold based styling for battery module (#318) 2019-09-12 14:06:59 -04:00
谢祯晖 37b5168bfe fix: Fixups for #138 (#343)
- Fix unused imports in unit tests
- Add accidently remove module "battery"
2019-09-11 08:43:40 -04:00
Kevin Song 54793c7d5a refactor: Separate shell initialization into files (#338)
Shell inits are now in a separate directory in the source code, with each shell getting its own script. Also adds a little DRY + commenting in init/mod.rs.
2019-09-10 20:31:08 -04:00
Daniel Illi-Zuberbühler ee20d6b2ac fix: Prepend to PROMPT_COMMAND in Bash init (#336)
Bash init: do not overwrite PROMPT_COMMAND but prepend to it.
2019-09-10 15:12:29 -04:00
John Letey f9a4514045 feat: Implement the prompt module for time (#138)
Add a module which displays the current time in a format requested by
the user. Disabled by default.
2019-09-10 12:54:40 -05:00
Neil Kistner 9f70ffb7a7 fix: Lazy load git repo and only run module if not disabled (#306)
A couple of optimizations are done in this PR. One, we now will check config ahead of time to see if a module is disabled before running any module code. Also, we won't try to discover a git repository unless the module requests access to it.
2019-09-09 19:14:38 -04:00
Kevin Song 9721666d33
feat: Add the ability to configure per-module color styles (#285)
Add parsing logic, config support, docs, and integration with other modules 
for custom styling of each module.
2019-09-07 19:33:06 -05:00
Gabriel de Perthuis 69ebab46a4 fix: Don't trigger an extension match on hidden files (#299)
Addresses #52, closes #280.
2019-09-07 11:05:25 -04:00
Nick Young eb724279da feat: Adds Git State module for showing "REBASING 2/3", etc. (#276)
- Adds the git_state module.
- Adds git_state to the default prompt order
- Updates the documentation to describe the git_state module
2019-09-05 12:45:04 -04:00
Thomas O'Donnell 4f17bae315 fix: Add missing module to list of modules (#294)
Have added the missing hostname module to the list of all modules.
2019-09-05 11:33:24 -04:00
Neil Kistner 1c66869117 feat: Add config for ahead/behind count of tracked branch (#281)
Add a configuration option (show_sync_count) to the git_status module that will show/hide the counts ahead/behind of the tracked branch. Currently have this default to false, and would opt-in to show this information.
2019-09-05 00:09:51 -04:00
Matan Kushner e66d7bae1c
ci: Migrate CI from Azure Pipelines to GitHub Actions (#233)
Migrated CI from Azure Pipelines to GitHub Actions.
Until the release process is figured out in Actions, we'll stick to using Azure pipelines for releases.
2019-09-04 19:13:53 -04:00
Andrew Houts 84688e4981 feat: add hostname module (#286)
Add a hostname module as requested by @chipbuster.
Displays the system hostname as provided by gethostname.
2019-09-04 13:03:31 -04:00
Nick Young 5a0f269d85 fix: Be more restrictive with bash init fallback (#278)
This should improve compatibility with "Git Bash" with Git for Windows by
using psub+source init for all bash shells v4.1 and newer.
2019-09-04 09:23:31 -05:00
Kevin Song 6db0e20585 Change ZSH init to use jobstates for num jobs (#252) 2019-09-03 23:44:44 -04:00
Francisco Lopes 722a0652fd feat: Respect status.showUntrackedFiles 2019-09-02 20:27:04 -04:00
Titouan Vervack 59e8b1fc92 feat: added truncation_length/symbol to git_branch (#268)
Git branches can become very long (e.g. gitlab auto-generated branch
names), thus it would be nice to be able to truncate them to keep your
prompt lenght in line.

This patch adds two new options to the git_branch module:
* truncation_length: The amount of graphemes to of a gitbranch to
truncate to
* truncation_symbol: The symbol that should be used to indicate that a
branch name was trunctated

To be able to correctly work with UTF-8 graphemes, unicode-segmentation
was added as a dependency.
2019-09-02 15:56:59 -04:00
Quinn Strahl 3dd035056d Support vicmd_symbol in fish-shell (#254) 2019-08-31 00:59:18 -07:00
Nick Young 4eb7beca48 fix: Adds `nix_shell` to `module::ALL_MODULES` (#264)
So that it can be configured in the user's prompt
2019-08-30 09:39:21 -04:00
Harry Mills c2a1803681 Fix typo in comment (#260) 2019-08-29 12:40:25 -04:00
Neil Kistner 9853743eda feat: Add commit count for ahead/behind symbols (#247)
Add logic for the git status module to display the number of commits the index is ahead or behind next to the symbol.
2019-08-27 20:11:42 -07:00
Bruno Bigras fa2d1c05a6 fix: use procsub in bash since termux has no stdin (#241) 2019-08-27 00:02:52 -07:00
Neil Kistner e034253a5e feat: Add ability to use an alternate directory truncation style (#239)
* Add ability to use an alternate directory truncation style
2019-08-26 21:52:45 -04:00
Ivan Tham cdea401589 refactor: just match enum (#236)
Remove forced unwrap since match is already exhausted
2019-08-26 14:47:34 -04:00
Bruno Bigras 0fa862a2e9 make the battery module optional for now (#234)
The 'battery' crate doesn't support Termux, so we are temporarily making the battery module optional.
2019-08-26 14:09:39 -04:00
TsubasaKawajiri 08aef016cd fix: battery percentage character on Zsh. #226 (#237)
on Zsh, battery percentage character would print %
this PR fixes print %{ -> %
2019-08-25 21:52:44 -04:00
Bruno Bigras feb737190e Add nix-shell support (#173) 2019-08-25 11:41:20 -04:00
Matan Kushner 57e807fec6
style: Fix clippy warnings 2019-08-23 13:13:04 -04:00
Bruno Bigras 68cbcb91b7 Use full path to starship in all phases of init (#224) 2019-08-22 12:57:32 -07:00