]> arthur.barton.de Git - ax-zsh.git/blobdiff - README.md
30_path: No longer look for Homebrew
[ax-zsh.git] / README.md
index ec35845deb95ada7802fa3e9610c9e2108fc50b3..63bcfee6d8c21525779b9f0bb1b24c3cd6feda14 100644 (file)
--- a/README.md
+++ b/README.md
@@ -1,44 +1,38 @@
 # AX-ZSH: Alex' Modular ZSH Configuration
 
-AX-ZSH is a modular configuration system for the Z shell (ZSH).
+[AX-ZSH] is a modular configuration system for the Z shell ([ZSH]).
 It provides sane defaults and is extendable by plugins.
 
-## Installation
+AX-ZSH integrates well with [Powerlevel10k] and other extensions, even plugins
+of [OhMyZsh], see [below](#integration-with-other-projects).
+
+The homepage of [AX-ZSH] can be found at [GitHub]:
+<https://github.com/alexbarton/ax-zsh>.
 
-To install AX-ZSH, either download a source archive or use Git to clone it.
-Afterwards use the `install.sh` script inside of the source directory to set
-up the `~/.axzsh` directory.
+## Installation
 
 Prerequisites:
 
-* [ZSH](https://www.zsh.org/) – obviously ;-)
-* [Git](https://git-scm.com/) (optional but recommended!)
+* [ZSH] – obviously ;-)
+* [Git] (optional but recommended!)
 
 Installing AX-ZSH is a two-step process:
 
-1. Clone or copy the source files into `~/.axzsh`,
+1. Clone or copy the source files into the `~/.axzsh` directory,
 2. Run the `~/.axzsh/install.sh` script.
 
 The `install.sh` script creates symbolic links for `~/.zprofile`, `~/.zshrc`,
 `~/.zlogin`, and `~/.zlogout` (don't worry, already existing files are backed
 up).
 
-Then close all running ZSH sessions and restart them to activate AX-ZSH. And
-maybe change your default shell to ZSH if you haven't already?
-
-For example like this:
-
-```sh
-# Set new default shell
-chsh -s $(command -v zsh)
-
-# Replace running shell with a ZSH login shell
-exec $(command -v zsh) -l
-```
+*Note:* The installation is per-user and only changes/installs files into the
+home directory of the current user (`~`). AX-ZSH is not meant to be installed
+globally for all users on a system at once, and you don't need to become "root"
+or any other user with elevated privileges!
 
 ### Installation using Git
 
-When using Git, the preferred method, it is best to directly clone the AX-ZSH
+When using [Git], the preferred method, it is best to directly clone the AX-ZSH
 repository into the `~/.axzsh` directory and call `install.sh` from this
 location:
 
@@ -49,8 +43,9 @@ git clone https://github.com/alexbarton/ax-zsh.git ~/.axzsh
 
 ### Installation without Git
 
-*Note:* If you do not install AX-ZSH with Git, you will not be able to upgrade
-itself afterwards with the integrated `axzsh upgrade` command!
+*Note:* If you do not install AX-ZSH with [Git], you will not be able to upgrade
+itself afterwards with the integrated `axzsh upgrade` command! Therefore this
+method is *not recommended* for normal use!
 
 ```sh
 curl -Lo ax-zsh-master.zip https://github.com/alexbarton/ax-zsh/archive/refs/heads/master.zip
@@ -59,6 +54,22 @@ mv ax-zsh-master ~/.axzsh
 ~/.axzsh/install.sh
 ```
 
+### Post-Installation Tasks
+
+After installing AX-ZSH, using Git or via an archive file, you should close all
+running ZSH sessions and restart them to activate AX-ZSH. And maybe you want to
+change your default shell to ZSH if you haven't already?
+
+For example like this:
+
+```sh
+# Set new default shell
+chsh -s $(command -v zsh)
+
+# Replace running shell with a ZSH login shell
+exec $(command -v zsh) -l
+```
+
 ## Upgrade
 
 When you used Git to install AX-ZSH (and/or plugins), you can use the `axzshctl`
@@ -116,12 +127,12 @@ strengths when enabling additional plugins for additional tools and commands
 that are available on your system and you want to use.
 
 Different types of plugins are supported (see the introduction to the section
-"_usage_" above) which are differentiated by their identifier:
+"*usage*" above) which are differentiated by their identifier:
 
 * `<name>`: locally available plugin, either bundled with AX-ZSH itself, or
   installed manually (see below).
-* `<repository>/<name>`: stand-alone GitHub repository.
-* `@ohmyzsh/<name>`: [OhMyZsh](https://ohmyz.sh/) plugin from the OhMyZsh GitHub
+* `<repository>/<name>`: stand-alone [GitHub] repository.
+* `@ohmyzsh/<name>`: [OhMyZsh] plugin from the OhMyZsh GitHub
   repository (see <https://github.com/ohmyzsh/ohmyzsh/tree/master/plugins>).
 
 You can enable one or more plugins like this:
@@ -130,7 +141,7 @@ You can enable one or more plugins like this:
 axzshctl enable-plugin <identifier> [<identifier> […]]
 ```
 
-Hint: _Tab-completion_ works for sub-commands and already locally available
+*Hint:* *Tab-completion* works for sub-commands and already locally available
 plugin names!
 
 Some examples:
@@ -144,8 +155,8 @@ axzshctl enable-plugin editor_select git ssh_autoadd
 axzshctl enable-plugin romkatv/powerlevel10k
 
 # Enable the "fast-syntax-highlighting" plugin from GitHub, see
-# <https://github.com/zdharma/fast-syntax-highlighting>:
-axzshctl enable-plugin zdharma/fast-syntax-highlighting
+# <https://github.com/zdharma-continuum/fast-syntax-highlighting>:
+axzshctl enable-plugin zdharma-continuum/fast-syntax-highlighting
 
 # Enable the Git and tmux plugins of OhMyZsh:
 axzshctl enable-plugin @ohmyzsh/git @ohmyzsh/tmux
@@ -159,7 +170,7 @@ the `$AXZSH/custom_plugins` folder which is searched by the `axzshctl` tool
 by default.
 
 In addition you can set the `AXZSH_PLUGIN_D` variable (and `ZSH_CUSTOM` like
-"OhMyZsh") to specify additional plugin search directories.
+[OhMyZsh]) to specify additional plugin search directories.
 
 ### Disable plugins
 
@@ -169,7 +180,7 @@ Run the following command to disable a currently enabled plugin:
 axzshctl disable-plugin <identifier> [<identifier> […]]
 ```
 
-Hint: _Tab-completion_ works for sub-commands and plugin names!
+*Hint:* *Tab-completion* works for sub-commands and plugin names!
 
 ### Update plugin cache
 
@@ -195,6 +206,21 @@ Please run `axzshctl --help` to get a full list of a available sub-commands:
 axzshctl --help
 ```
 
+## Integration with other projects
+
+### Powerlevel10k
+
+AX-ZSH supports [Powerlevel10k] out of the box, you just have to install it as a
+plugin:
+
+```sh
+axzshctl enable-plugin romkatv/powerlevel10k
+```
+
+*Hint:* Once the Powerlevel10k plugin theme is installed, you can use the
+regular `axzshctl set-theme` command to enable it, like for any other installed
+theme: `axzshctl set-theme powerlevel10k`.
+
 ## AX-ZSH & local ZSH configuration
 
 Don't modify `~/.zprofile`, `~/.zshrc`, `~/.zlogin`, or `~/.zlogout`! These
@@ -230,3 +256,13 @@ Validated and/or set up by core plugins:
 * `XDG_CACHE_HOME`
 * `XDG_RUNTIME_DIR`
 * `ZSH_CACHE_DIR`
+
+___
+[AX-ZSH]: <https://github.com/alexbarton/ax-zsh> "AX-ZSH Homepage"
+[Git]: <https://git-scm.com/> "Git Homepage"
+[GitHub]: <https://github.com/> "GitHub Homepage"
+[OhMyZsh]: <https://ohmyz.sh/> "OhMyZsh Homepage"
+[Powerlevel10k]: <https://github.com/romkatv/powerlevel10k> "Powerlevel10k Homepage"
+[ZSH]: <https://www.zsh.org/> "ZSH Homepage"
+
+[AX-ZSH] Copyright (c) 2015-2022 Alexander Barton <alex@barton.de>