This repository has been archived on 2024-11-06. You can view files and clone it, but cannot push or open issues or pull requests.
zsh/README.md
Jiří Štefka 67ec855327
docs: Remove stats as they don't work on Gitea
Signed-off-by: Jiří Štefka <jiri@stefka.eu>
2023-09-08 20:31:02 +02:00

126 lines
3.7 KiB
Markdown

# ZSH
My ZSH config
## Your own customizations
If you want to make any customizations to your config without deleting them,
or merging them, every time I update, here's the solution:
- Make a file called `custom-zshrc` in your `$HOME/zsh` directory
- Put your customizations in that file
The file is in `.gitignore`, so it won't interfere with the repository and you
can pull updates without resolving differences between local files and the repository.
It is also set to be sourced in the `zshrc` file, so you really don't have to
set up anything, just add the customizations.
## Setup
- Clone the repository to your home folder
```bash
cd ~
git clone --recursive https://github.com/jiriks74/zsh
```
- Link the `zsh` file to your home folder as `.zshrc`
```bash
ln -s ~/zsh/zshrc ~/.zshrc
```
- Set the `powerlevel10k` theme the way you like it
```bash
zsh
```
- If configuration won't start automatically, just run
```bash
p10k config
```
- Set `zsh` as your default shell
### There are two ways
#### Running `chsh`
```bash
chsch $USER
```
- Input your password
- Input `/bin/zsh`
#### Modifying `/etc/passwd`
- Change your user in `/etc/passwd` to `/bin/zsh` instead of `/bin/bash`
<details>
- Find line containing your username
- Change the end of the line
From: ...`:/bin/bash`
To: ...`:/bin/zsh`
</details>
## Updating
```bash
cd ~/zsh
git pull --recurse-submodules
git submodule update --init --recursive
```
### Problems with updating (this will delete any customizations you have made in `~/zsh`)
- If you get `fatal: refusing to merge unrelated histories` you have changes in
`~zsh` that are not in the repository
- If you have backed up your customizations (if you have any) this will delete
all differences between `~/zsh` and the repository
```bash
cd ~/zsh
git fetch
git reset --hard origin/master
```
## Get Dependencies
### Included in this repository
- [`zsh-z`](https://github.com/agkozak/zsh-z) - ZSH plugin that is alternative to
`autojump`. Use `z dirname`to go to a specific directory on your system without
having to type the whole path (eg `z et` will get you to `/etc`)
- [`dirhistory`](https://github.com/ohmyzsh/ohmyzsh/tree/master/plugins/dirhistory) -
Plugin from oh my zsh that allows you to easily go through history of directories
(due to this not being a repository I have to update this plugin manually.
If it's out of date, please create an issue)
- [`ssh-connect`](https://github.com/gko/ssh-connect) - Plugin that logs your
`ssh` commands and provides a nice menu with your recent connections (alias: `sshc`)
- [`web-search`](https://github.com/sineto/web-search) - Allows you to DuckDuckGo,
Google, etc. directly from your zsh. just run `ddg` or `google`
- [`zsh-you-should-use`](https://github.com/MichaelAquilina/zsh-you-should-use) -
Usefull plugin that suggest existing aliases for a command you just ran
(try it out with `ls -l`)
- [`zsh-autosuggestions`](https://github.com/zsh-users/zsh-autosuggestions) -
Suggestions based on your history
- [`git`](https://github.com/davidde/git) - Usefull git aliases
- [`zsh-syntax-highlighting`](https://github.com/zsh-users/zsh-syntax-highlighting) -
Syntax highlighting for ZSH
- [`powerlevel10k`](https://github.com/romkatv/powerlevel10k) theme -
The the actual theme
### Install from your distribution's repository
- [`thefuck`](https://github.com/nvbn/thefuck) - Corrects errors in previous
console commands (when you mess up a command, type `fuck`)
### Recomended for `powerlevel10k`
- [`nerd-fonts`](https://github.com/ryanoasis/nerd-fonts "nerd-fonts github page") -
I recomend `MesloLGS NF Regular`
- On Arch you can use `ttf-meslo-nerd-font-powerlevel10k` so you don't have to
donwload the whole git repository¨¨