1
0
mirror of https://github.com/Llewellynvdm/starship.git synced 2024-11-05 04:47:58 +00:00
The minimal, blazing-fast, and infinitely customizable prompt for any shell!
Go to file
Jan Katins 6426bbe3e4
feat: Add timings subcommand (#1629)
* feat: Add computational duration to all computed modules

This also means that in case we do some computations and these end up empty, we submit an empty module

* feat: Add timings subcommand

This outputs the timings of all computed modules, sorted by the duration it took to compute the module.

Useful for debugging why the prompt takes so long.

* feat: Add timings to explain output

* fix: Ensure that even empty custom modules get timings

* format main.rs

* feat: Only show interesting timings

* fix(tests): Change tests to look for empty string instead of None

* Use proper wording in timings help

* Revert "fix(tests): Change tests to look for empty string instead of None"

This reverts commit aca5bd1b03c48e1dee1b7ca91d66e2bda2d5a97c.

* fix(tests): Returning None in case the module produced an empty string

* fix: Ensure that linebreaks (and space) make a module not-empty

* Make cargo clippy happy

* Make Module.duration a proper Duration

* Only return a module if we would report it

* Change to cleaner way to return None for empty modules

* Avoid unnecessary module creation

* Simplify a string comparison

* Add timings to trace

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

Co-authored-by: Thomas O'Donnell <andytom@users.noreply.github.com>
2020-09-21 19:06:15 +02:00
.github feat: Add Undistract Me Feature (#1019) 2020-08-11 18:44:25 +02:00
docs fix: restore the pyenv_prefix option to python (#1668) 2020-09-21 11:48:26 -04:00
install fix(install): switch to install the musl binaries by default (#1590) 2020-08-16 11:30:10 -04:00
media chore(bump): v0.35.0 2020-02-06 09:56:39 -05:00
src feat: Add timings subcommand (#1629) 2020-09-21 19:06:15 +02:00
starship_module_config_derive docs: Replace project tagline 2020-02-12 21:46:00 -05:00
.gitignore feat(package): Add Maven pom.xml version support (#1511) 2020-07-31 09:54:03 +02:00
.rustfmt.toml style: make rustfmt use the default configuration (#1661) 2020-09-19 08:45:17 +02:00
Cargo.lock build(deps): bump sysinfo from 0.15.1 to 0.15.2 2020-09-17 06:24:06 +00:00
Cargo.toml build(deps): bump sysinfo from 0.15.1 to 0.15.2 2020-09-17 06:24:06 +00:00
CODE_OF_CONDUCT.md Create CODE_OF_CONDUCT.md (#42) 2019-04-30 23:30:42 -04:00
CONTRIBUTING.md docs: update clippy command in the CONTRIBUTING.md (#1665) 2020-09-20 18:02:24 +02:00
crowdin.yml docs: Fix link to Japanese README 2019-10-11 17:32:52 +09:00
LICENSE docs: update license to include 2020 (#1184) 2020-05-10 19:14:28 -04:00
README.md fix(docs): Fix Explore The Starship link in guide (#1553) 2020-08-03 12:47:25 -05:00
snapcraft.yaml fix: snap build failure (#1177) 2020-05-06 20:29:09 -04:00

Starship – Cross-shell prompt

GitHub Actions workflow status Crates.io version Packaging status
Chat on Discord Follow @StarshipPrompt on Twitter

Website · Installation · Configuration

English   日本語   繁體中文   Русский   Deutsch   简体中文   Español   Français

Starship with iTerm2 and the Snazzy theme

The minimal, blazing-fast, and infinitely customizable prompt for any shell!

  • Fast: it's fast really really fast! 🚀
  • Customizable: configure every aspect of your prompt.
  • Universal: works on any shell, on any operating system.
  • Intelligent: shows relevant information at a glance.
  • Feature rich: support for all your favorite tools.
  • Easy: quick to install  start using it in minutes.

Explore the Starship docs  ▶

🚀 Installation

Prerequisites

Getting Started

  1. Install the starship binary:

    Install Latest Version

    From prebuilt binary, with Shell:
    curl -fsSL https://starship.rs/install.sh | bash
    
    From source on crates.io:
    cargo install starship
    

    Install via Package Manager

    With Homebrew:
    brew install starship
    
    With Scoop:
    scoop install starship
    
  2. Add the init script to your shell's config file:

    Bash

    Add the following to the end of ~/.bashrc:

    # ~/.bashrc
    
    eval "$(starship init bash)"
    

    Fish

    Add the following to the end of ~/.config/fish/config.fish:

    # ~/.config/fish/config.fish
    
    starship init fish | source
    

    Zsh

    Add the following to the end of ~/.zshrc:

    # ~/.zshrc
    
    eval "$(starship init zsh)"
    

    PowerShell

    Add the following to the end of ~\Documents\PowerShell\Microsoft.PowerShell_profile.ps1 (or ~/.config/powershell/Microsoft.PowerShell_profile.ps1 on -Nix):

    Invoke-Expression (&starship init powershell)
    

    Ion

    Add the following to the end of ~/.config/ion/initrc:

    # ~/.config/ion/initrc
    
    eval $(starship init ion)
    

🤝 Contributing

We are always looking for contributors of all skill levels! If you're looking to ease your way into the project, try out a good first issue.

If you are interested in helping contribute to starship, please take a look at our Contributing Guide. Also, feel free to drop into our Discord server and say hi. 👋

Code Contributors

This project exists thanks to all the people who contribute. [Contribute].

Financial Contributors

Become a financial contributor and help us sustain our community. [Contribute]

Individuals

Organizations

Support this project with your organization. Your logo will show up here with a link to your website. [Contribute]

💭 Inspired By

Please check out these previous works that helped inspire the creation of starship. 🙏


Starship rocket icon

📝 License

Copyright © 2019-present, Starship Contributors.
This project is ISC licensed.