Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/bearbobs/mac-dotfiles
Base macos setup dotfiles with terminal, vim and tmux config. Tested on m1, m1 pro and m2
https://github.com/bearbobs/mac-dotfiles
brew dotbot dotfiles dotfiles-macos iterm2 tmux vim
Last synced: 9 days ago
JSON representation
Base macos setup dotfiles with terminal, vim and tmux config. Tested on m1, m1 pro and m2
- Host: GitHub
- URL: https://github.com/bearbobs/mac-dotfiles
- Owner: Bearbobs
- Created: 2023-01-20T11:20:10.000Z (almost 2 years ago)
- Default Branch: main
- Last Pushed: 2023-01-27T11:24:21.000Z (almost 2 years ago)
- Last Synced: 2024-10-06T04:05:26.176Z (about 1 month ago)
- Topics: brew, dotbot, dotfiles, dotfiles-macos, iterm2, tmux, vim
- Language: Shell
- Homepage:
- Size: 246 KB
- Stars: 5
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# dotfiles
Missing feature? 🍴 Fork this repo and make it better!
## Installation
Tell Git who you are using these commands:
```sh
git config -f ~/.gitlocal user.email "[email protected]"
git config -f ~/.gitlocal user.name "Name Lastname"
```## Under the hood
> **Note:** You may put your custom settings into `~/.zshlocal`.
### Projects tree
I suggest you to organize project folder as follows:
```
~/Projects
├── Forks # for GitHub fork
├── Job # for job projects
├── Playground # for short-term experiments
└── Repos # for long-term projects
```### Aliases
Aliases are gonna make your work fast and enjoyable. See code in `$DOTFILES/lib/aliases.zsh`. Here is what's included:
- Aliases from Oh-My-Zsh. See [Oh-My-Zsh Cheatsheet](https://github.com/robbyrussell/oh-my-zsh/wiki/Cheatsheet#commands) for more.
- Easier navigation
- **`..`** → `cd ..`
- **`...`** → `cd ../..`
- **`....`** → `cd ../../..`
- **`.....`** → `cd ../../../..`
- **`~`** → `cd ~`
- **`-`** → `cd -`
- Folders shortcuts
- **`dl`** → `cd ~/Downloads`
- **`dt`** → `cd ~/Desktop`
- **`pj`** → `cd ~/Projects`
- **`pjr`** → `cd ~/Projects/_Repos`
- **`pjf`** → `cd ~/Projects/_Forks`
- **`pl`** → `cd ~/Projects/_Playground/`
- Commands Shortcuts
- **`e`** → `$EDITOR`
- **`+x`** → `chmod +x`
- **`x+`** → `chmod +x`
- **`ll`** → `ls -alF`
- **`la`** → `ls -A`
- **`l`** → `ls -CF`
- Open
- **`open `** — open file from terminal.
- **`o `** — open file from terminal.
- **`oo`** — open current folder.
- Misc
- **`update`** — get updates (Runs `$DOTFILES/scripts/update.zsh`).
- **`dotfiles`** — jump quickly into dotfiles folder.
- **`myip`** — my local IP address.
- **`password`** — generate random password, copies it into clipboard and outputs it to terminal.
- **`path`** — print $PATH in readable view.
- **`getpage`** — download web page with all assets.
- **`get`** — download file with original filename.### Bin
Dotfiles also include some functions that will make your life easier. See code in [`bin/`](./bin).
- `emptytrash` — empty the Trash on all mounted volumes and the main HDD.
- `git-cleanup` — removes old Git branches and does other cleanup.
- `git-fork` — add remote upsteam.
- `git-upstream` — sync branch with upstream.
- `gz` — get gzipped file size
- `n` — runs given command using binary in `node_modules/.bin` of the current project.
- `nyan` — print [nyan cat](https://www.youtube.com/watch?v=QH2-TGUlwu4).
- `server` — start an HTTP server from a directory.### Git
> **Note:** Add your git user data and custom settings to `~/.gitlocal`.
#### Git Aliases
- **`git a`** → `git add` — patch mode for specified files.
- **`git ua`** → `git reset HEAD` — unstage files.
- **`git b`** → `git branch` — list, create, or delete branches.
- **`git c`** → `git commit` — record changes to the repository.
- **`git co`** → `git checkout` — checkout a branch or paths to the working tree.
- **`git ap`** → `git add -p` — add file contents to the index.
- **`git ca`** → `git commit -a` — commit with automatically stage files that have been modified and deleted.
- **`git cm`** → `git commit -m` — commit with commit message.
- **`git cam`** → `git commit -am` — add all files and commit with message.
- **`git s`** → `git status -sb` — short status with current branch.
- **`git master`** — go to `master` branch and pull from remote.
- **`git develop`** — go to `develop` branch and pull from remote.
- **`git git`** — do not complain about `git git`.
- **`git l`** — commits log with pretty single line format.
- **`git ll`** — log with list of changed files for each commit.
- **`git ignore`** — ignore files: append file to `.gitignore`.
- **`git this`** — initialize, add all files and commit.
- **`git amend`** — amend last commit.
- **`git redo`** — amend last commit with its original message.
- **`git undo`** → `reset --mixed HEAD^` — reset index changes, but not the working tree.
- **`git discard`** → `checkout --` — discard changes.
- **`git contrib`** — list of contributors and how many commits each person has.
- **`git today`** — see how many lines of code you have written today.
- **`git stat`** — how many lines of code in repo.
- **`git sync`** — pull and push changes from/to remote.
- **`git-root`** — go to repo root.
- **`git-cleanup [--force]`** — removes old Git branches.
- **`git-fork `** — add remote upstream.
- **`git-upstream [branch]`** — sync branch with upstream (as default `master`).