summaryrefslogtreecommitdiffstats
path: root/src
AgeCommit message (Collapse)Author
2019-08-13feat: implement the ruby module (#131)André Zanellato
2019-08-13fix: Fix exception caused by the golang moduleMatan Kushner
Fixes #148
2019-08-13fix: Fix issues with nodejs and golang configuration (#146)Matan Kushner
* fix: Give all modules a single name * test: Add missing config tests for nodejs and golang * test: Rename dir to directory
2019-08-12fix: Fix issue with jobs and extra whitespace on MacOS with BSD… (#145)Kevin Song
MacOS wc has a habit of leaving nasty spaces in the output, which was messing up our argparser. To fix, quote the output from the jobs command, then have Rust trim out whitespace in the jobs module before parsing.
2019-08-12feat: Implement configuration to display pyenv version name (#140)MaT1g3R
This behavior can be enabled via setting `use_pyenv` to true. The "pyenv" prefix before the version name can be configured using `pyenv_prefix`.
2019-08-12feat: Implement the prompt module for jobs (#85)John Letey
2019-08-11fix: Move the battery to the newline before character (#139)Matan Kushner
2019-08-11feat: Implement Python virtual environment display (#137)MaT1g3R
2019-08-10feat: Add configuration to change the character for non-zero sta… (#133)Kevin Song
Prompt can now switch characters in addition to switching character color. Add configuration options in so that users can do either, both, or neither.
2019-08-10fix: Add test attribute to cmd_duration tests (#134)Kevin Song
2019-08-08feat: implement timer module (#118)Kevin Song
Implement a timer module that takes a commandline argument, the number of seconds the last job took to complete, and displays it if appropriate. Alters shell initialization files to compute this number using date +%s where needed. Adds a config section to configure minimum amount of time before timer is shown (default is 2s)
2019-08-05fix: Address longstanding linter errorsMatan Kushner
2019-08-05ci: Publish crate to Crates.io with CIMatan Kushner
2019-07-28feat: Allow directory truncation length to be configured (#120)Andrew Dassonville
This allows the directory truncation length to be configured. Previously, it was hard-coded to truncate to 3 parent directories.
2019-07-28feat: Use Unix-style slash on Windows (#119)Andrew Dassonville
Prior to this change, starship would use inconsistent slashes when displaying the working directory. With this change, starship uses Unix-style slashes on all platforms. This is consistent with the Git Bash and Cygwin prompts on Windows.
2019-07-27feat: Add configuration for add_newline (#116)Matan Kushner
- Replace TableExt with a Config trait that extends toml::value::Table Add configuration for add_newline - add_newline is a root-level configuration value. When set to false, the initial newline before the prompt is removed.
2019-07-23fix: prompt now updates on bash and zsh (#109)Matan Kushner
Making use of PROMPT_COMMAND in bash and precmd in zsh, the prompt is no longer being expanded and rendered when the variable is initially set.
2019-07-20fix: handle path to shell in starship init (#106)Kevin Song
Add support for paths to init function This adds support for qualified paths (e.g. using `/usr/local/bin/zsh` instead of `zsh`) to init.rs. The function now converts the shell name into an OsStr, then to a Path, then gets the file stem, and unwraps back into a str. While this process can fail (yielding a None), it's highly unlikely to unless the user has messed with their shells or there's an issue in Starship--therefore, the failure message in this case simply asks the user to file a bug report.
2019-07-19refactor: Improve logging where lackingMatan Kushner
2019-07-19refactor: Better document context contentsMatan Kushner
2019-07-19docs: Add vuepress with initial docs (#99)Tiffany Le-Nguyen
Co-authored-by: Tiffany Le-Nguyen <tlenguyen@expedia.com> Co-authored-by: Matan Kushner <hello@matchai.me>
2019-07-14ci: Add GitHub releases to CI (#95)Matan Kushner
2019-07-14chore: Refactor getting string values from config (#94)Matan Kushner
2019-07-03feat: Implement simplified prompt setup process (#90)Matan Kushner
• Add starship init which prints the shell function used to execute starship • Document the new setup process using starship init • Remove benchmarks for now (WIP replacement benchmarks in "benchmarking" branch )
2019-07-02feat: Add a `disabled` configuration option for modules (#86)Matan Kushner
• Add support for the disabled configuration option This will allow you to selectively disable modules that you don't want or need. 😄 • Overwrite starship configuration file path with STARSHIP_CONFIG environment variable • Write tests for the two configuration options that are available
2019-06-10Add support for prompt configuration (#62)Matan Kushner
- Create `Config` struct that is added to `Context` when initialized - Read `~/.confg/starship.toml` during initialization (can be updated later to also look at `$XDG_CONFIG_HOME`) - `Context` now has a method for creating modules. This allows us to provide modules with a reference to the configuration specific to that module
2019-06-06Refactor integration tests (#71)Matan Kushner
- Create subcommands to be able to print modules independently - `starship prompt` will print the full prompt - `starship module <MODULE_NAME>` will print a specific module e.g. `starship module python` - Added `--path` flag to print the prompt or modules without being in a specific directory - Added `--status` flag to provide the status of the last command, instead of requiring it as an argument - Refactored integration tests to be end-to-end tests, since there was no way in integration tests to set the environment variables for a specific command, which was required for the `username` module - Moved e2e tests to `tests/testsuite` to allow for a single binary to be built - Tests will build/run faster - No more false positives for unused functions - Added tests for `username` - Removed codecov + tarpaulin 😢
2019-05-27fix: Check both stderr and stdout for Python version (#66)John Letey
* fix python version not showing for version < 3.4 * make review changes
2019-05-22feat: Add battery module(#63)Matan Kushner
2019-05-22fix: Don't check extensions of directories (#64)Tim Mulqueen
* now checks for type of path when doing scan * added unit test to cover failure case
2019-05-19feat: Implement the prompt module for username (#56)Youssef Habri
2019-05-16fix: handle package version panic (#57)Matan Kushner
2019-05-16ci: Fix CI to work with changes to Azure Pipelines build agent (#55)Matan Kushner
2019-05-13Implement the git status module (#45)Matan Kushner
2019-05-12Implement directory scanner (#34)Tim Mulqueen
2019-05-11Add Go version module (#44)John Letey
2019-05-09Parallelize prompt modules (#46)Matan Kushner
2019-05-01Refactor segments into modules (#40)Matan Kushner
2019-05-01Add the package version segment (#35)John Letey
2019-04-26Add the Git branch segment (#32)Matan Kushner
Added - Repository to Context for reuse in directory and git_branch - git_branch to prompt Changed - Made segments bold to match spaceship
2019-04-25Add Python version segment (#23)John Letey
2019-04-23Share dir_files between segments through Context (#16)Matan Kushner
2019-04-21feat: Add Rust version segment (#15)Tim Mulqueen
2019-04-19Use "context" to contain run details (#14)Matan Kushner
* Create "context" to contain run details * Use context in tests and benchmarks
2019-04-15Add integration tests (#6)Matan Kushner
### Changed - Added current_dir param to segments to make them more testable - Moved all existing integration tests to a `tests/` dir ### Added - A whole bunch of new integration tests
2019-04-15Add README.md badges (#5)Matan Kushner
2019-04-15Better test and document the dir segmentMatan Kushner
2019-04-15Fix bug in path truncationMatan Kushner
Paths with 3 components would truncate to 2 despite the truncation length begin set to 3.
2019-04-13Add fish_promptMatan Kushner
2019-04-12Add some documentation for segmentMatan Kushner