mirror of
https://github.com/martinvonz/jj.git
synced 2024-12-28 07:20:11 +00:00
docs: restructure installation instructions to be per platform
The only overlap between the instructions for Linux, Mac, and Windows is the `cargo install` step, so let's instead split it up so it's easy for the user to skip to the relevant part, especially as we add more platform-specific instructions. I promoted some sections to one level higher sections to try to clarify that the initial configuration and the command-line completion applies to all platforms.
This commit is contained in:
parent
59eee7e918
commit
78dadcc1ba
1 changed files with 71 additions and 45 deletions
116
README.md
116
README.md
|
@ -125,57 +125,19 @@ scripts if requested.
|
|||
|
||||
## Installation
|
||||
|
||||
If you're on Mac, you may need to run some or all of these:
|
||||
```shell script
|
||||
xcode-select --install
|
||||
brew install openssl
|
||||
brew install pkg-config
|
||||
export PKG_CONFIG_PATH="/opt/homebrew/opt/openssl@3/lib/pkgconfig"
|
||||
```
|
||||
### Linux
|
||||
|
||||
Now run this (regardless of platform):
|
||||
On most distributions, you'll need to install from source.
|
||||
|
||||
#### From source
|
||||
|
||||
Run:
|
||||
```shell script
|
||||
cargo install --git https://github.com/martinvonz/jj.git
|
||||
```
|
||||
|
||||
You may also want to configure your name and email so commits are made in your
|
||||
name. Create a file at `<config dir>/jj/config.toml` (where `<config dir>` is
|
||||
`${XDG_CONFIG_HOME}` or `~/.config/` on Linux, `~/Library/Application Support/`
|
||||
on macOS, and `~\AppData\Roaming\` on Windows) or `~/.jjconfig` and make it
|
||||
look something like this:
|
||||
```shell script
|
||||
$ cat ~/.jjconfig
|
||||
[user]
|
||||
name = "Martin von Zweigbergk"
|
||||
email = "martinvonz@google.com"
|
||||
```
|
||||
|
||||
### Command-line completion
|
||||
|
||||
To set up command-line completion, source the output of
|
||||
`jj debug completion --bash/--zsh/--fish`. Exactly how to source it depends on
|
||||
your shell.
|
||||
|
||||
#### Bash
|
||||
```shell script
|
||||
source <(jj debug completion) # --bash is the default
|
||||
```
|
||||
|
||||
#### Zsh
|
||||
```shell script
|
||||
autoload -U compinit
|
||||
compinit
|
||||
source <(jj debug completion --zsh | sed '$d') # remove the last line
|
||||
compdef _jj jj
|
||||
```
|
||||
|
||||
#### Fish
|
||||
```shell script
|
||||
jj debug completion --fish | source
|
||||
```
|
||||
|
||||
|
||||
### Nix OS
|
||||
#### Nix OS
|
||||
|
||||
If you're on Nix OS you can use the flake for this repository.
|
||||
For example, if you want to run `jj` loaded from the flake, use:
|
||||
|
@ -192,6 +154,70 @@ nix profile install 'github:martinvonz/jj'
|
|||
```
|
||||
|
||||
|
||||
### Mac
|
||||
|
||||
You may need to run some or all of these:
|
||||
```shell script
|
||||
xcode-select --install
|
||||
brew install openssl
|
||||
brew install pkg-config
|
||||
export PKG_CONFIG_PATH="/opt/homebrew/opt/openssl@3/lib/pkgconfig"
|
||||
```
|
||||
|
||||
Now run:
|
||||
```shell script
|
||||
cargo install --git https://github.com/martinvonz/jj.git
|
||||
```
|
||||
|
||||
|
||||
### Windows
|
||||
|
||||
Run:
|
||||
```shell script
|
||||
cargo install --git https://github.com/martinvonz/jj.git
|
||||
```
|
||||
|
||||
|
||||
## Initial configuration
|
||||
|
||||
You may want to configure your name and email so commits are made in your name.
|
||||
Create a file at `<config dir>/jj/config.toml` (where `<config dir>` is
|
||||
`${XDG_CONFIG_HOME}` or `~/.config/` on Linux, `~/Library/Application Support/`
|
||||
on macOS, and `~\AppData\Roaming\` on Windows) or `~/.jjconfig` and make it
|
||||
look something like this:
|
||||
```shell script
|
||||
$ cat ~/.jjconfig
|
||||
[user]
|
||||
name = "Martin von Zweigbergk"
|
||||
email = "martinvonz@google.com"
|
||||
```
|
||||
|
||||
|
||||
## Command-line completion
|
||||
|
||||
To set up command-line completion, source the output of
|
||||
`jj debug completion --bash/--zsh/--fish`. Exactly how to source it depends on
|
||||
your shell.
|
||||
|
||||
### Bash
|
||||
```shell script
|
||||
source <(jj debug completion) # --bash is the default
|
||||
```
|
||||
|
||||
### Zsh
|
||||
```shell script
|
||||
autoload -U compinit
|
||||
compinit
|
||||
source <(jj debug completion --zsh | sed '$d') # remove the last line
|
||||
compdef _jj jj
|
||||
```
|
||||
|
||||
### Fish
|
||||
```shell script
|
||||
jj debug completion --fish | source
|
||||
```
|
||||
|
||||
|
||||
## Getting started
|
||||
|
||||
The best way to get started is probably to go through
|
||||
|
|
Loading…
Reference in a new issue