<commit_before>---
title: Powerful Zsh
date: 2022-08-02 19:42:06
tags:
---

![Powerful Zsh](/blog/img/Powerful%20Zsh.png "Powerful Zsh")

First you have `Zsh`, next install `Oh My Zsh` https://ohmyz.sh/

```
sh -c "$(curl -fsSL https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
```

Add `Powerlevel10k` https://github.com/romkatv/powerlevel10k and configure it

```
git clone --depth=1 https://github.com/romkatv/powerlevel10k.git ${ZSH_CUSTOM:-$HOME/.oh-my-zsh/custom}/themes/powerlevel10k

p10k configure
```

Set `ZSH_THEME` to **powerlevel10k** in `.zshrc`

```
ZSH_THEME="powerlevel10k/powerlevel10k"
```

Add `zsh-autosuggestions` https://github.com/zsh-users/zsh-autosuggestions and enable in `.zshrc`

```
git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions

```

```
...
plugins=(
  zsh-autosuggestions
)
...
```

Install `Fig` https://fig.io/, an IDE-style autocomplete but for terminal, and configure in `.zshrc`

```
...
# Fig pre block. Keep at the top of this file.
[[ -f "$HOME/.fig/shell/zshrc.pre.zsh" ]] && . "$HOME/.fig/shell/zshrc.pre.zsh"
...
# Fig post block. Keep at the bottom of this file.
[[ -f "$HOME/.fig/shell/zshrc.post.zsh" ]] && . "$HOME/.fig/shell/zshrc.post.zsh"
...
```<commit_msg>Republish after adding more references in post "Powerful Zsh"<commit_after>---
title: Powerful Zsh
date: 2022-08-02 19:42:06
tags:
---

![Powerful Zsh](/blog/img/Powerful%20Zsh.png "Powerful Zsh")

First you have `Zsh`, next install `Oh My Zsh` https://ohmyz.sh/

```
sh -c "$(curl -fsSL https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
```

Add `Powerlevel10k` https://github.com/romkatv/powerlevel10k and configure it

```
git clone --depth=1 https://github.com/romkatv/powerlevel10k.git ${ZSH_CUSTOM:-$HOME/.oh-my-zsh/custom}/themes/powerlevel10k

p10k configure
```

Set `ZSH_THEME` to **powerlevel10k** in `.zshrc`

```
ZSH_THEME="powerlevel10k/powerlevel10k"
```

Add `zsh-autosuggestions` https://github.com/zsh-users/zsh-autosuggestions and enable in `.zshrc`

```
git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions

```

```
...
plugins=(
  zsh-autosuggestions
)
...
```

Install `Fig` https://fig.io/, an IDE-style autocomplete but for terminal, and configure in `.zshrc`

```
...
# Fig pre block. Keep at the top of this file.
[[ -f "$HOME/.fig/shell/zshrc.pre.zsh" ]] && . "$HOME/.fig/shell/zshrc.pre.zsh"
...
# Fig post block. Keep at the bottom of this file.
[[ -f "$HOME/.fig/shell/zshrc.post.zsh" ]] && . "$HOME/.fig/shell/zshrc.post.zsh"
...
```

References
----------

- How To Make Your Boring Mac Terminal So Much Better, _https://www.youtube.com/watch?v=CF1tMjvHDRA_
- How To Setup Your Mac Terminal, _https://www.josean.com/posts/terminal-setup_
{'fraction_non_alphanumeric': 0.19474605954465848, 'fraction_numerical': 0.023467600700525393, 'mean_word_length': 3.736318407960199, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 16, 'lorem ipsum': 0, 'www.': 2, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '4912860', 'n_tokens_mistral': 1210, 'n_tokens_neox': 1135, 'n_words': 225}