No description
Find a file
2017-01-05 20:39:32 -05:00
configs Extends configs and colorschemes 2017-01-05 20:39:32 -05:00
docs Adds vim shortcuts 2016-07-28 10:52:19 -04:00
functions Extends configs and colorschemes 2017-01-05 20:39:32 -05:00
launchd_scripts Trims fat and renames files 2016-08-15 11:14:37 -04:00
scripts Trims fat and renames files 2016-08-15 11:14:37 -04:00
usbify Updates config to support ctags 2016-11-10 10:57:18 -05:00
.gitignore Trims fat and renames files 2016-08-15 11:14:37 -04:00
.gitmodules Adds usbify as submodule 2016-08-24 10:39:39 -04:00
aliases.sh Updates aliases and vim keybindings 2016-12-16 11:00:08 -05:00
brew_packages.txt Updates git functions, vimrc, etc. 2016-12-19 20:53:45 -05:00
clean_downloads_folder.sh Adds cron job and brew installed packages 2016-08-01 13:22:21 -04:00
Default (OSX).sublime-keymap Extends keybindings by namespacing REPL 2016-06-23 11:07:41 -04:00
install.sh Adds brew to PATH and adds is_online function 2016-08-01 14:01:51 -04:00
install_brew.sh Adds brew to PATH and adds is_online function 2016-08-01 14:01:51 -04:00
js_clog.sublime-snippet Creates new ST snippet 2016-07-08 11:30:07 -04:00
Preferences.sublime-settings Creates file to host personal settings 2016-06-23 11:12:16 -04:00
README.md Adds shell pipeline to test TrueColor support 2017-01-04 00:10:33 -05:00
tmux-256color-italic.ti Updates git functions, vimrc, etc. 2016-12-19 20:53:45 -05:00
vim_wishlist.md Inits wishlist 2016-11-16 15:11:42 -05:00

My Mac Configuration

I'm documenting this primarily for personal use. This reposity contains shell configs, vim configs, emacs configs, a list of commonly used applications, and other items.

The overall goal of this repository is to reduce the time it takes to adopt a new computer and equip it with the necessary tooling to do meaningful work.

Neovim

The following snippet fixes the <C-h> issue in neovim on macOS.

$ infocmp $TERM | sed 's/kbs=^[hH]/kbs=\\177/' > $TERM.ti
$ tic $TERM.ti

True Color and Italics in tmux and vim

TrueColor

Note: make sure that the terminal you are using supports TrueColor (hint: recent version of iTerm2 do). Also make sure that the tmux version you are using supports TrueColor (hint: versions north of 2.2 should).

At each step of the way, test TrueColor using the following shell pipeline (hint: the gradients should be smooth):

$ curl https://raw.githubusercontent.com/JohnMorales/dotfiles/master/colors/24-bit-color.sh | bash
  • Terminal: recent versions of iTerm 2 should support TrueColor
  • Tmux: versions 2.2 and after should support TrueColor
  • NeoVim: recent versions of NeoVim should support TrueColor

Enable TrueColor in your ~/.vimrc (already done in this repository):

set termguicolors

Enable TrueColor in your ~/.tmux.conf (already done in this repository):

NOTE: This may conflict with the setting for italics. Need to verify to confirm / disconfirm this (pending).

set -ga terminal-overrides ",xterm-256color-italic:Tc"

Italics

In the file /configs/.tmux.conf there is a line to add italics support to tmux:

set -g default-terminal "tmux-256color-italic"

The $TERM entry, tmux-256color-italic, will be unavailable until you add the file, /configs/tmux-256color-italic, to your terminal database. You can do this with the following command:

$ tic ~/pc_settings/configs/tmux-256color-italic

Ligature Support

To support ligatures make sure Hasklig is installed (link at the bottom). Ensure that you are using an iTerm 2 build that supports ligatures. With both of these tasks completed, ligatures should function in Neovim.

Commonly used applications

  • dash - provides quick access to offline documentation (use with Alfred)
  • Alfred - replaces macOS Spotlight and integrates with external Apps like Dash
  • homebrew - necessary for procuring shell applications
  • karabiner - key-repeat: 50ms delay-until-repeat: 300ms increase your Mac's key repeat settings beyond the default range
  • spectacle - resize and move your windows with keyboard shortcuts
  • iterm - substitute for Terminal application
  • oh my zsh - a full suite of z-shell extensions
  • sublime text - text editor
  • webstorm - web IDE
  • pycharm - python IDE
  • docker - for running containers and virtual environments
  • mou - markdown editor
  • f.lux - modulates the blue amount from the screen throughout the day

Sublime Text Packages

  • SublimeLinter - lints files
  • SublimeLinter-contrib-eslint - lints using eslint
  • Oceanic Next Theme - buffer and editor theme
  • Vintageous - extended Vim key-binding support
  • Vintageous-Origami - extended Vintageous support for window pane mgt (ctrl + w) "vintageous_use_ctrl_keys": true
  • Origami - dep. of Vintageous-Origami (see above)
  • babel-sublime - supports JSNext features
  • SublimeCodeIntel - robust autocomplete engine
  • PackageResourceViewer - quickly view / edit installed Sublime Packages to enhance customization options
  • SidebarEnhancements - extensions for Sublime Text's sidebar
  • SublimeREPL - convenient REPL for ST
  • FoldComments - collapse comments with keystrokes

Sublime preferences (user)

Preferences.sublime-settings

Sublime keybindings (user)

Default (OSX).sublime-keymap

other notes

  • Install Hasklig for ligature support in Elm, Elixir, etc
  • Install FiraCode for ligature support
  • Install Operator Mono for expressive Italics
  • Install powerline fonts
  • add Adobe Source Code Pro font for shell and text editors
  • increase trackpad / mouse speed to maximum levels