Comments (6)
@matchai Iβd prefer for the second option (where we can install via package managers), as users are most familiar with the method and itβs the easiest to install (I like to have everything installed via a package manager ... not having to run scripts)
from starship.
Oops, I thought I had responded earlier. We could do both!
Let's say binary is installed, people can either add it themselves or do starship launch
to launch with autopilot, we detect what shell is being used and the user and automatically do it, and switch straight into starship. π
Maybe even add a quick, cute ASCII animation that shows what's happening.
3... 2... 1... βοΈπ
Proposed Steps
- Do
brew install starship
orapt install starship
. - Do
starship launch
. - βοΈ
from starship.
@matchai Weirdly, I actually like the first option the most.
A single simple line to add to your config it just works! β¨π
It would feel just... wrong for it to be shipped in omf/fisher/Antigen/Zgen etc. considering it's a system-wide prompt that's globally cross-compatible with any of the three popular shells.
What if I use both Bash, Fish and Zsh and want to have Starship for all three? Or just two of them (Zsh & Fish) to use Starship? What if I install Starship with both omf, fisher and antigen? What happens? D:
This gets incredibly complicated with the other two options but stays super simple with number 1.
from starship.
For the v1.0.0 release, I definitely think the first option is the way to go.
It'd be quick to implement and easy to document. The last two options would be more of a v2.0.0 task if we decided to proceed with them.
@Snuggle would you prefer it if we automatically added it to their config files, or asked them to do it themselves after the binary installation?
from starship.
Sounds like a good way to get started π
Maybe even add a quick, cute ASCII animation that shows what's happening.
3... 2... 1... βοΈπ
Yesss! π
from starship.
After a good amount of testing in basic-init branch, it looks like we can't get enough context from environment variables alone to identify the shell. Fish is able to be reliably identified with $SHELL
, but it appears zsh and bash don't export the environment variables that would make them identifiable ($BASH
or $SHELL
).
Though it's a little more inelegant, my next thought is to do the following:
eval $(SHELL=zsh starship init)
# or
export STARSHIP_SHELL=zsh
eval $(starship init)
Does anyone have other ideas? π€
from starship.
Related Issues (20)
- [ FR ] Disable Git status tracking per directory HOT 1
- Draw right prompt before `line_break` HOT 1
- `fill` adds one too many spaces on Windows Terminal when used with `cmd_duration` HOT 1
- `bold fg:none` isn't bold HOT 1
- Feature/Refacto: Conflate all VCSes under an umbrella `vcs` module
- [Bash] PROMPT_COMMAND overriden or causes errors HOT 1
- Always showing `error_symbol` regardless of exit status of last operation HOT 1
- Irrelevant single character change in pyvenv.cfg changes the prompt displayed with the variable ($virtualenv) for Python
- nspawn wrongly detected as OCI HOT 5
- Update `git_metrics` example to work properly in clean repo
- Color on macOS is not correct HOT 1
- Conda section not using assigned color HOT 1
- The starship won't work if not commenting or deleting #Use manjaro zsh prompt portion in the .zshrc file. HOT 2
- Starship stopped to worked in WSL mode after connecting with VSCode HOT 1
- Installing starship on a QNAP NAS not working HOT 1
- Separators between command output
- Add uv flag to python module
- `git_state` showing symbols outside of git repo HOT 1
- Wrong offset for Unicode characters on tab completion HOT 2
- `[character]` is always `success_symbol` HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
π Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. πππ
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google β€οΈ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from starship.