Git Product home page Git Product logo

dotfiles's Introduction

dotfiles

Configurations and optimisations for Zsh, Git, Neovim, etc.

These dotfiles have been created for my own use and I make no assurances of them working for anyone else. That said, I like sharing these things in the open for others to borrow from, so please make use of these as you like.

Usage (macOS)

These instructions have been tested on my own machine (macOS 13, using the latest version of iTerm2). They presume that you do not already have a .dotfiles/ directory in your user (~/) directory.

Prerequisites

  1. Install Homebrew
  2. Install NodeJS
  3. Install Neovim
  4. Install ripgrep for use with Telescope.nvim: brew install ripgrep

Install

# Install ZSH via Homebrew (usually more up to date that macOS default)
brew install zsh

# Add zsh to standard shells
sudo vi /etc/shells              # πŸ‘ˆ Add /opt/homebrew/bin/zsh at the end of this file

# Switch into Zsh
chsh -s /opt/homebrew/bin/zsh

# Clone the repo to into a ".dotfiles" directory in your user directory
git clone [email protected]:colepeters/dotfiles.git ~/.dotfiles

# Switch to the new directory
cd ~/.dotfiles

# Initialise and update Zgen
git submodule init && git submodule update

# Install RCM
brew tap thoughtbot/formulae
brew install rcm

# Copy the RCM config file to your ~ directory first
rcup -v rcrc

# Generate symlinked dotfiles in your ~ directory
rcup -v

Additional packages

Some aliases and configurations depend on these packages to work:

# Tig, a Git CLI wrapper:
brew install tig

# Exa, a nicer `ls`
brew install exa

# diff-so-fancy, for better git diffs:
npm i -g diff-so-fancy

# HTTPie, a nice cURL replacement:
brew install httpie

πŸŽ‰ Ta-da

You should now be able to open a new shell session and have everything be not horrible and hopefully cooler and ready to go.

Credits

Managed with rcm by Thoughtbot, which is an awesome, lightweight tool for keeping dotfiles synced and organised.

A ton of my Neovim setup was sourced from LunarVim, via an excellent YouTue playlist.

Some Zsh and Git configurations have been borrowed from the YADR dotfiles repository.

dotfiles's People

Contributors

colepeters avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

Forkers

maxrolon jhedev

dotfiles's Issues

Proposed updates to setup workflow

Thanks for the overview and painless setup! I understand you aren't supporting this right now, so no worries, but wanted to post a few extra steps I went through before everything was running smoothly. Perhaps other will find it useful.

Base Setup

# Clone the repo to into a ".dotfiles" directory in your user directory
git clone [email protected]:colepeters/dotfiles.git ~/.dotfiles

# Switch to the new directory
cd ~/.dotfiles

# Initialise and update Antigen submodule
git submodule init && git submodule update

# Install RCM if it’s not already β€” you have Homebrew, right?
brew tap thoughtbot/formulae
brew install rcm

# Generate symlinked dotfiles in your ~ directory
rcup -v

Extra Steps

# Install plugins. Run via command line:
vim +PluginInstall +qall

If other users are on OS X like me, apparently they'll likely need a newer version of Vim than what shipped with their system. I got it update with the following.

# Install Homebrew duplicates 
brew tap homebrew/dupes

# Make sure brew is updated
brew update

# Install Homebrew's vim with Lua (neocomplete dependency)
brew install vim --with-lua

They'll also need to make sure their path includes usr/local/bin:usr/bin. The usual:

# Check PATH
echo $PATH

# Add usr/local/bin to PATH if necessary
sudo vim /etc/paths

# Add `usr/local/bin` to top of the file, should look something like this afterwards.
/usr/local/bin
/usr/bin
/bin
/usr/sbin
/sbin

I'd be happy to open a PR as well, if it'd help you out. Cheers!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.