Skip to content
Open

v2 #1

Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
4 changes: 0 additions & 4 deletions .gitignore

This file was deleted.

12 changes: 12 additions & 0 deletions .gitmodules
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
[submodule "nvim"]
path = nvim
url = https://github.com/mikeunge/.nvim
[submodule "bin/wpe"]
path = bin/wpe
url = https://github.com/mikeunge/WallpaperEngine
[submodule "bin/sshman"]
path = bin/sshman
url = https://github.com/mikeunge/sshman
[submodule "bin/scripts"]
path = bin/scripts
url = https://github.com/mikeunge/Scripts
21 changes: 21 additions & 0 deletions LICENSE
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
MIT License

Copyright (c) 2024 Mike

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
26 changes: 18 additions & 8 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,12 +1,22 @@
# dotfiles
*My `Mac OS` dotfiles*

### _about
I use `iTerm2` as my terminal emulator and `tmux` for everythig inside. TextEditor is `vim` (❤️).
Welcome to my **dotfiles** - this repository contains (_hopefully_) all my
customizations, scripts and tools I've installed as well as the configuration
that goes along with it.

### _screenshots
> **code**
![code 1 pane](assets/screenshots/code_single.png "one code editor")
## ./man

> **code split**
![code 2 panes](assets/screenshots/code_multi.png "2 panes to edit")
- [dotfiles](#dotfiles)
- [./man](#man)
- [./bin](#bin)
- [./config](#config)
- [./fonts](#fonts)
- [./rice](#rice)

## ./bin

## ./config

## ./fonts

## ./rice
Binary file removed assets/screenshots/code_multi.png
Binary file not shown.
Binary file removed assets/screenshots/code_single.png
Binary file not shown.
1 change: 1 addition & 0 deletions bin/scripts
Submodule scripts added at d695ff
1 change: 1 addition & 0 deletions bin/sshman
Submodule sshman added at 9bc9fb
1 change: 1 addition & 0 deletions bin/wpe
Submodule wpe added at 7e6c08
89 changes: 89 additions & 0 deletions config/aliasrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,89 @@
# cdd is a superset for cd - it remembers the last visited place
cdd () {
uid=`tmux display-message -p '#{pane_id}'`
echo `pwd` > /tmp/last.visit$uid
cd "$@"
}

# ccd - reads the input from /tmp/last.visit and upadates it, after it cds back there
cc () {
uid=`tmux display-message -p '#{pane_id}'`
local LAST_VISITED=`cat /tmp/last.visit$uid`
echo `pwd` > /tmp/last.visit$uid
cd $LAST_VISITED
}

# duh - get the disk usage for a given folder
duh () {
du -h -d 1 "$1" | sort -hr | grep -E '^[0-9.]+[MG]'
}

# obsidianNew - spawn nvim in given path ($1) and launch obsidian plugin with the "new" command
obsidianNew() {
if [ -z "$1" ] || [ ! -d "$1" ]; then
echo "Usage: obsidianNew <directory>"
return 1
fi
nvim +"cd $(realpath "$1")" +"enew" +"lua vim.schedule(function() require('lazy.core.loader').load({'obsidian.nvim'}, { force = true }) vim.cmd('ObsidianNew') end)"
}

# obsidianNew - spawn nvim in given path ($1) and launch obsidian plugin with the "quick switch" command
obsidianOpen() {
#nvim "$1" +"lua vim.schedule(function() require('lazy.core.loader').load({'obsidian.nvim'}, { force = true }) vim.cmd('ObsidianQuickSwitch') end)"
if [ -z "$1" ] || [ ! -d "$1" ]; then
echo "Usage: obsidianOpen <vault-directory>"
return 1
fi
nvim +"cd $(realpath "$1")" +"enew" +"lua vim.schedule(function() require('lazy.core.loader').load({'obsidian.nvim'}, { force = true }) vim.cmd('ObsidianQuickSwitch') end)"
}

# commands
alias ls="eza --icons --long"
alias ll="ls -lhg"
alias lt="ls --tree --level=2"
alias la="ls -lahg"
alias ld="ls -lDhg"
alias lsd="ls -snew"
alias rmf="rm -rf"
alias cp="cp -ir"
alias mkdir="mkdir -p"
alias cl="clear"
alias cll="cl && ll"
alias cla="cl && la"
alias reload=". ~/.zshrc" # reload (source) the profile
alias sync="rsync -u -H --progress --human-readable --stats"

# remove all files that are __NOT__ commited / new files
alias gitrm="git ls-files -z -o --exclude-standard | xargs -0 rm -rf"

# note taking with nvim & obsidian
alias notes="obsidianOpen ~/Documents/vaults/notes"
alias nnew="obsidianNew ~/Documents/vaults/notes"
alias pnotes="obsidianOpen ~/Documents/vaults/personal"
alias pnew="obsidianNew ~/Documents/vaults/personal"
alias wnotes="obsidianOpen ~/Documents/vaults/work"
alias wnew="obsidianNew ~/Documents/vaults/work"

# commands but they depend on stuff
alias fetch="pfetch"
alias tf="terraform"
alias pp="pnpm"
alias lg="lazygit"

# call wallpaper engine with work profile
alias wpw="wpe -c $HOME/.config/wallpaper_engine/work.json"

# editors
alias vim="/opt/homebrew/bin/nvim"
alias nvim="/opt/homebrew/bin/nvim"

# shortcuts
alias hok1="cdd $HOME/Development/hokify/hokify-1/"
alias hok2="cdd $HOME/Development/hokify/hokify-2/"
alias hok3="cdd $HOME/Development/hokify/hokify-3"
alias aliases="nvim $HOME/.config/aliasrc"
alias zshrc="nvim $HOME/.zshrc"
alias tmuxc="nvim $HOME/.config/tmux/tmux.conf"

# misc
alias shrug="echo '\n¯\_(ツ)_/¯'"
36 changes: 36 additions & 0 deletions config/kitty/kitty.conf
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
# vim:fileencoding=utf-8:ft=conf
#
# import theme
# include themes/kitty-themes/themes/everforest_dark_medium.conf
#include themes/deepwhite.conf
include themes/field_lights.conf

# font and ligatures
font_size 12
font_family Geist Nerd Font
bold_font Geist Nerd Font Bold
italic_font Geist Nerd Font Italic
disable_ligatures never

# cursor
cursor_shape block
cursor_blink_interval -1

# window (floating) sizes
remember_window_size yes
initial_window_width 100c
initial_window_height 34c
# set padding in terminal
window_padding_width 2

# map copy and paste behaviour
strip_trailing_spaces always
copy_on_select yes
map ctrl+shift+c copy_to_clipboard
map ctrl+shift+v paste_from_clipboard

# disblae titlebar
hide_window_decorations no

# disable stupid audio
enable_audio_bell false
34 changes: 34 additions & 0 deletions config/kitty/themes/catppuccin/.editorconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
# EditorConfig helps developers define and maintain consistent
# coding styles between different editors and IDEs
# EditorConfig is awesome: https://EditorConfig.org

root = true

[*]
charset = utf-8
indent_size = 2
indent_style = space
end_of_line = lf
insert_final_newline = true
trim_trailing_whitespace = true

# go
[*.go]
indent_style = tab
indent_size = 4

# python
[*.{ini,py,py.tpl,rst}]
indent_size = 4

# rust
[*.rs]
indent_size = 4

# documentation, utils
[*.{md,mdx,diff}]
trim_trailing_whitespace = false

# windows shell scripts
[*.{cmd,bat,ps1}]
end_of_line = crlf
21 changes: 21 additions & 0 deletions config/kitty/themes/catppuccin/LICENSE
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
MIT License

Copyright (c) 2021 Catppuccin

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
96 changes: 96 additions & 0 deletions config/kitty/themes/catppuccin/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,96 @@
<h3 align="center">
<img src="https://raw.githubusercontent.com/catppuccin/catppuccin/main/assets/logos/exports/1544x1544_circle.png" width="100" alt="Logo"/><br/>
<img src="https://raw.githubusercontent.com/catppuccin/catppuccin/main/assets/misc/transparent.png" height="30" width="0px"/>
Catppuccin for <a href="https://github.com/kovidgoyal/kitty">Kitty</a>
<img src="https://raw.githubusercontent.com/catppuccin/catppuccin/main/assets/misc/transparent.png" height="30" width="0px"/>
</h3>

<p align="center">
<a href="https://github.com/catppuccin/kitty/stargazers"><img src="https://img.shields.io/github/stars/catppuccin/kitty?colorA=363a4f&colorB=b7bdf8&style=for-the-badge"></a>
<a href="https://github.com/catppuccin/kitty/issues"><img src="https://img.shields.io/github/issues/catppuccin/kitty?colorA=363a4f&colorB=f5a97f&style=for-the-badge"></a>
<a href="https://github.com/catppuccin/kitty/contributors"><img src="https://img.shields.io/github/contributors/catppuccin/kitty?colorA=363a4f&colorB=a6da95&style=for-the-badge"></a>
</p>

<p align="center">
<img src="assets/preview.webp"/>
</p>

## Previews

<details>
<summary>🌻 Latte</summary>
<img src="assets/latte.webp"/>
</details>
<details>
<summary>🪴 Frappé</summary>
<img src="assets/frappe.webp"/>
</details>
<details>
<summary>🌺 Macchiato</summary>
<img src="assets/macchiato.webp"/>
</details>
<details>
<summary>🌿 Mocha</summary>
<img src="assets/mocha.webp"/>
</details>

&nbsp;

## Usage

> **Note**<br>
> If you're using Kitty `>0.26.0`, all Catppuccin flavors are already included in Kitty! There's no need to install the base theme.

> **Note**<br>
> This config **only** includes the Catppuccin color, it does **not** configure fonts or other styling.

1. Choose your flavor.
2. Copy the contents of _flavor_.conf into your kitty config file (usually stored at `~/.config/kitty/kitty.conf`)
3. Save and enjoy!

Alternatively you can copy all flavor configs into your kitty theme directory (usually `~/.config/kitty/themes/`), and then use the themes kitten to select your desired flavor:

```
kitty +kitten themes --reload-in=all <optional: theme name>
```

`Catppuccin-Latte`, `Catppuccin-Frappe`, `Catppuccin-Macchiato`, `Catppuccin-Mocha` are their respective names.

&nbsp;

## 🙋 FAQ

- Q: **_"How can I style the Tab Bar like it is on the screenshots?"_**<br>
A: The config settings for the Tab Bar are the following:

```ini
tab_bar_min_tabs 1
tab_bar_edge bottom
tab_bar_style powerline
tab_powerline_style slanted
tab_title_template {title}{' :{}:'.format(num_windows) if num_windows > 1 else ''}
```

- Q: **_"Which Fonts are used in the screenshots?"_**<br>
A: The font used in the screenshot config is [Fira Code](https://github.com/tonsky/FiraCode). Furthermore, the following stylistic alternatives and ligatures are set:

```ini
+cv02 +cv05 +cv09 +cv14 +ss04 +cv16 +cv31 +cv25 +cv26 +cv32 +cv28 +ss10 +zero +onum
```

- Q: **_"Which fetch is used in the screenshots?"_**<br>
A: It's [pfetch with kitties](https://github.com/andreasgrafen/pfetch-with-kitties) — a slightly modified version of [pfetch](https://github.com/dylanaraps/pfetch) which adds the ASCII Kitty.

&nbsp;

## 💝 Thanks to

- [Pocco81](https://github.com/Pocco81)
- [Lokesh Krishna](https://github.com/lokesh-krishna)
- [Andreas Grafen](https://github.com/andreasgrafen)

&nbsp;

<p align="center"><img src="https://raw.githubusercontent.com/catppuccin/catppuccin/main/assets/footers/gray0_ctp_on_line.svg?sanitize=true" /></p>
<p align="center">Copyright &copy; 2021-present <a href="https://github.com/catppuccin" target="_blank">Catppuccin Org</a>
<p align="center"><a href="https://github.com/catppuccin/catppuccin/blob/main/LICENSE"><img src="https://img.shields.io/static/v1.svg?style=for-the-badge&label=License&message=MIT&logoColor=d9e0ee&colorA=363a4f&colorB=b7bdf8"/></a></p>
Loading