/dotfiles-2018

Personal Dotfiles

Primary LanguageVim Script

Fish neovim
https://fishshell.com https://neovim.io

My Dotfiles

This repo contains my fish and neovim set up.

These are my personal dotfiles and they are heavily gearded towards javascript development, in saying that with minor tweaking they could be adapted for most modern languages.

Prerequisites

You must be running Ubuntu.

Bootstrap Install

git clone https://github.com/CrashyBang/dotfiles.git  ~/.dotfiles && cd ~/.dotfiles && ./bootstrap.sh

Scripts

  • theme takes one name argument (base16) i.e solarized and another option background argument i.e dark (requires base16-builder).
  • repoch recusively scans all git directories below the current and lets you know if you have uncommited changes.
  • repocl recusively scans all git directories below the current and deletes all untracked files.
  • xi small wrapper around nvim and nvr that figures out what command should be used based on $TERM.

Controls

I have put these here more as a point of reference they may not always be 100% up-to-date but I will do my best:

TMUX:

Fish

Keybindings:

  • Ctrl + e: Will drop your current command into your $EDITOR
  • Ctrl + f: Will offer suggestions if the last command failed

Utilites:

  • transfer + filename where filename is a valid file path will upload any file to transfer.sh

Neovim

Commands:

This list is not exhausitve it is simply the commands I have not provided keybings for

  • :Search + term: Will search the entrire project for the sepecified term.
  • :Codi: Open an interactive scratch pad for the cuurent file.
  • :Remove: Delete a buffer and the file on disk simultaneously.
  • :Unlink: Like :Remove, but keeps the now empty buffer.
  • :Move: Rename a buffer and the file on disk simultaneously.
  • :Rename: Like :Move, but relative to the current file's containing directory.
  • :Chmod: Change the permissions of the current file.
  • :Mkdir: Create a directory, defaulting to the parent of the current file.
  • :Find: Run find and load the results into the quickfix list.
  • :Locate: Run locate and load the results into the quickfix list.
  • :Wall: Write every open window.
  • :SudoWrite: Write a privileged file with sudo.
  • :SudoEdit: Edit a privileged file with sudo.

Keybindigs:

I have used the term <leader> to denote my leader key (which is currently just the default \)

  • <leader> + o: Will open undo history
  • <leader> + l: Will format the code in the current split
  • <leader> + t: Will open a file tree in the current split
  • <leader> + f: Will open a fuzzy finder for your files powered by fzf
  • <leader> + b: Will open a fuzzy finder for your buffers powered by fzf
  • <leader> + r: Will force a reload from disk
  • <leader> + , + o: Will open the location window
  • <leader> + , + c: Will close the location window
  • <leader> + , + e: Go to current error/warning
  • <leader> + , + n: Go to next error/warning
  • <leader> + , + p: Go to previous error/warning
  • : Will switch to the next left split
  • : Will switch to the next right split
  • : Will switch to the next above split
  • : Will switch to the next below split
  • Ctrl + : Will resize the current split 5 columns left
  • Ctrl + : Will resize the current split 5 columns right
  • Ctrl + : Will resize the current split 5 rows up
  • Ctrl + : Will resize the current split 5 rows down
  • Ctrl + s: Will expand the current snippet
  • Ctrl + e: Will expand the current emmet abbreviation
  • cs + old + new: Will replace the out old symbol with the specified new symbol using vim-surround

Screens

What We're Cooking With

Javascript

Shell

Editor