Skip to content

MinersP/dotfiles

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Enter The Eternal Laziness

for hackers awesome compatible smile PRs welcome

preview

Table of Contents

Prerequisites

Make sure the following requirements are installed:

Expand

Homebrew

Install Homebrew if you haven't.

Git

You can either install git via Xcode Command Line Tools or by running git --version from your terminal.

Zsh & Oh-My-Zsh

The Z shell, is an extended version of the Bourne Shell (sh), with plenty of new features, and support for plugins and themes. Oh My Zsh is a delightful community-driven framework for managing your zsh configuration.

This project use purer as the prompt theme for zsh: npm install --global purer-prompt

RVM

RVM is a command-line tool which allows you to easily install, manage, and work with multiple ruby environments from interpreters to sets of gems. Install RVM: https://rvm.io.

NVM

Node Version Manager - Simple bash script to manage multiple active node.js versions. To install nvm: https://github.com/creationix/nvm.

Neovim

Neovim (nvim) is a forked version of Vim and arguable to be a lot faster. Follow this guide to build nvim from source and this guide to install vim-plug as the main nvim plugin manager.

Tmux

Tmux is the terminal multiplexer I can't live without.

Installation

Clone this project at $HOME:

$ git clone git@github.com:huyvohcmc/dotfiles.git
$ cd dotfiles

Use Homebrew to install some necessary packages defined in Brewfile:

$ brew bundle

Create a backup of your existing dotfiles, remove them in $HOME and install the new ones using stow:

$ make stow

To remove dotfiles:

$ make unstow

Postinstall

Open nvim and install all plugins: :PlugInstall. You should also run :checkhealth to check your nvim condition.

Install Tmux plugin manager and press prefix + I inside a tmux session to fetch the plugins listed in .tmux.conf.

What's inside init.vim?

Visit the wiki for more details.

Highlights

The Brewfile contains some interesting CLI tools for better development like

  • bat, an alternative of cat
  • htop, an interactive process viewer for Unix systems
  • nnn, a very fast terminal file manager
  • ripgrep, a line-oriented search tool
  • stow, a symlink farm manager
  • the_silver_searcher, a code searching tool (used in vim)
  • fzf, command-line fuzzy finder
  • tig, text-mode interface for git
  • universal-ctags, a programming tool to generate tag files

Git config

To prevent people from accidentally committing under your name:

# .gitconfig
[user]
  # set in ~/.gitconfig_local
[include]
  path = ~/.gitconfig_local

Where ~/.gitconfig_local is simply:

[user]
  name = <your_name>
  email = <your_email>

I also use a .gitmessage template for co-authored commits on GitHub:

# ~/.gitmessage
Co-authored-by: Linus Torvalds <torvalds@transmeta.com>

Iosevka

Iosevka is one of the best font for programmers, it looks so good to the eye and supports ligatures. It also has many prebuilt variants, and if you build yourself you can customize the look of many different characters. Here is how I built an Iosevka version for my own:

  1. Clone the repository
  2. Ensure nodejs >= 8.4, ttfautohint and otfcc are installed
  3. Install necessary libs by npm install
  4. npm run build -- contents::iosevka
  5. npm run build -- contents::iosevka-term (for term version)

Visit Iosevka's main repo for more build instructions.

Special thanks

License

FOSSA Status

This repository is available under the MIT license. Feel free to fork and modify the dotfiles as you please.

About

Enter the eternal laziness

Resources

License

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Vim Script 69.3%
  • Shell 19.3%
  • Ruby 9.0%
  • Makefile 2.4%