Permalink
Switch branches/tags
Nothing to show
Commits on May 10, 2018
Commits on May 8, 2018
  1. Allow running aliases from `announce`

    gabebw committed May 8, 2018
    So now I can do (e.g.):
    
        announce migrate
    
    and come back when my Rails migrations are done, rather than having to
    do:
    
        announce rails db:migrate
Commits on May 6, 2018
  1. Whitespace

    gabebw committed May 6, 2018
  2. Remove outdated comment

    gabebw committed May 6, 2018
    It was added in 96125e5 and should have
    been removed in ffc3e09.
  3. Use vim-peekaboo

    gabebw committed May 6, 2018
    Fixes #97.
Commits on May 3, 2018
  1. Do double-source ASDF

    gabebw committed May 3, 2018
    Here's the order of Zsh startup files:
    
    * First, read `/etc/zshenv`
    * Next, read `~/.zshenv`
    * Next, IF the shell is a login shell, read `/etc/zprofile`, followed by `~/.zprofile`
    * Next, IF the shell is interactive, read `/etc/zshrc`, followed by `~/.zshrc`
    * Finally, if the shell is a login shell, read `/etc/zlogin`, followed by `~/.zlogin`
    
    In Vim, which runs a non-login non-interactive shell, only `/etc/zshenv`
    then `~/.zshenv` are run. Since the end of `~/.zshenv` puts ASDF at the
    front of the `$PATH`, ASDF's shims are correctly set up for Vim.
    (`:!which ruby` returns `/usr/local/opt/asdf/shims/ruby`).
    
    However, in my daily usage, I run a login interactive shell, which means
    that `/etc/zprofile` gets run after `~/.zshenv`. And here's the contents
    of `/etc/zprofile`:
    
        # system-wide environment settings for zsh(1)
        if [ -x /usr/libexec/path_helper ]; then
                eval `/usr/libexec/path_helper -s`
        fi
    
    That `path_helper` line puts `/usr/local/bin` and `/usr/bin` (among
    others) at the front of the `$PATH`, which gives precedence to the
    Homebrew-installed Ruby at `/usr/local/bin/ruby` (or, even if that
    weren't installed, it'd just fall back to the system Ruby at
    `/usr/bin/ruby`). Thus, ASDF is clobbered.
    
    We need to run ASDF:
    
    * in `~/.zshenv` for Vim
    * in `~/.zshrc` for everyday usage
    
    So just run it twice. It's not an expensive script.
    
    This reverts commit 39f2d43.
  2. Don't check for Ale

    gabebw committed May 3, 2018
    The `ale#Lint` function is defined after a file loads, I think, so even
    if Ale is installed, the function isn't defined at the time the `if` is
    evaluated. (I tried moving the `if` farther down my vimrc but it didn't
    change anything.)
    
    The whole point of the `if` was to prevent Vim from crashing when
    running on a new computer. However, `install.sh` runs `vim +PlugInstall`
    just fine without Ale, so it can bootstrap itself just fine.
    
    All of this points towards Just Removing The If.
  3. Don't double-source ASDF

    gabebw committed May 3, 2018
    It's already sourced in my `zshenv`.
Commits on May 2, 2018
Commits on May 1, 2018
Commits on Apr 30, 2018
  1. Check for the actual file I want to install

    gabebw committed Apr 30, 2018
    `toe` uses the global database if `~/.terminfo/` doesn't exist, and of
    course the global database includes `xterm-256color`.
    
    So check for the file without using `toe`.
  2. Better ASDF migration and installation

    gabebw committed Apr 30, 2018
    Don't copy over rbenv-installed rubies because that can lead to odd
    issues.
  3. Don't use line numbers in `less`, for performance

    gabebw committed Apr 30, 2018
    On multi-gigabyte log files (eg in Rails), `less` hangs for multiple
    seconds with line numbers turned ON but boots instantly with line
    numbers OFF.
Commits on Apr 29, 2018
  1. Load local git/tmux/vim configuration

    gabebw committed Apr 29, 2018
    This will let me try things out locally without dirtying my git repo
    (and possibly accidentally committing some changes that I'm not yet sure
    of).
    
    `vimrc.bundles.local` needs to be its own file so it can be sourced
    between `plug#begin` and `plug#end` function calls. Calling `plug#begin`
    and `plug#end` again clears Vim's knowledge of any other plugins; it
    doesn't add, it replaces.
    
    Fixes #101.
  2. Oops, I didn't copy in the italics terminfo

    gabebw committed Apr 29, 2018
    This should have been part of 133b33d.
Commits on Apr 28, 2018
  1. Run the colorscheme settings at boot

    gabebw committed Apr 28, 2018
    The `ColorScheme` autocommand runs when the colorscheme _changes_, so it
    wasn't running at all when Vim booted up.
  2. Re-set my preferences whenever colorscheme changes

    gabebw committed Apr 28, 2018
    `:colorscheme foo` overwrites any syntax highlighting settings before
    it, so we must re-set these settings whenever the colorscheme changes.
  3. Get italics in the terminal, in a simpler way

    gabebw committed Apr 28, 2018
    Instead of copying in custom terminfo files with `tic`, copy in an
    already-compiled binary file for `xterm-256color`, which is a default
    terminal. This new italics-capable terminfo will be used instead of the
    old, non-italic-capable `xterm-256color` version.
    
    Simple and easy!
  4. Easily switch between ActiveAdmin files and specs

    gabebw committed Apr 28, 2018
    Note that we need to special-case `spec/controllers/admin` (vs other
    `spec/controllers` files).
    
    Fixes #99.
  5. Italics work in the terminal!

    gabebw committed Apr 28, 2018
    * Tell your Terminal.app theme to use a font with italics
      * An easy, free way to do this is to install Iosevka:
        `brew tap caskroom/fonts && brew cask install font-iosevka`
      * Then tell your Terminal.app theme to use "Iosevka" as the "Font" and
        restart Terminal. It'll automatically switch to Iosevka Italic when
        needed.
    * Run `tic terminfo/xterm-256color-italic.terminfo`
    * Run `tic -x terminfo/tmux-256color-italic.terminfo`
    * Set Terminal.app -> Settings -> Advanced -> "Declare terminal as" to
      `xterm-256color`
    * Kill all tmux sessions by quitting or with `killall tmux`
    * Quit your terminal
    * Start a new terminal and tmux session
    * To check if italics work, run this after it's all done:
      `echo $(tput sitm)italics$(tput ritm)`
  6. Vim: Highlight SQL in Ruby heredocs

    gabebw committed Jan 1, 2018
    Downside: some colorschemes (like `Tomorrow-Night-Bright`) don't have
    highlighting set up to take full advantage of the new SQL colorings, but
    `jellybeans` and `molokai` do.
  7. Ruby: Install `redcarpet` gem for all rubies

    gabebw committed Apr 28, 2018
    It's required for `git-create-pull-request`.
  8. Switch from rbenv/nvm to ASDF

    gabebw committed Oct 28, 2017
    ASDF now handles version management for Ruby (replacing rbenv) and
    NodeJS (replacing NVM).
    
    Advantages:
    
    * Much much faster than NVM (which added 1-2 _seconds_ of time to shell
      startup time)
    * At least as fast as `rbenv` boot time
    * `asdf current` is just one command to show current versions for all
      tools
    * A common version management framework is conceptually nice and will
      come in handy if I start using other languages like Clojure, Elixir,
      etc.
    
    Disadvantages:
    
    * It _reads_ from common files like `.ruby-version`, `.nvmrc` etc but does
      not _write_ to them when you run `asdf local node x.y.z`
    
    Thank you to this post for help:
    http://www.akitaonrails.com/2017/10/24/replacing-rvm-rbenv-nvm-etc-for-asdf
    
    Fixes #77.
  9. Only run `rcup` when new files were added

    gabebw committed Mar 24, 2018
    Right now it runs even when an existing (and thus already symlinked)
    file is changed, which is unnecessary.
    
    However, when an existing file is managed by rcm via COPYING (not
    symlinking), it won't be new (and thus won't trigger rcup), but because
    it's not symlinked, it'll be out of date in `$HOME`. Per the `rcrc`
    [docs][], this is triggered by `COPY_ALWAYS` in `rcrc`, so if that's
    there, always run `rcrc` because I don't want to write something that's
    smart enough to detect if the changed files are in `COPY_ALWAYS`.
    
    [docs]: http://thoughtbot.github.io/rcm/rcrc.5.html
  10. Make Brewfile valid

    gabebw committed Apr 28, 2018
  11. Vim: Prefer Python3 for gundo

    gabebw committed Apr 28, 2018
Commits on Apr 20, 2018
  1. Bring back my older Git rebasing code (mostly)

    gabebw committed Apr 20, 2018
    I like being able to automatically fixup all commits but the first one.
  2. Use vim-git's `:Fixup` and `:Squash`

    gabebw committed Apr 20, 2018
    I lose the "go back to mark" functionality, but I don't really care.
    
    Thanks for the tip @teoljungberg!
  3. I guess I need `nvm use` now

    gabebw committed Apr 20, 2018
  4. Allow copying in IRB

    gabebw committed Apr 20, 2018
Commits on Apr 13, 2018
  1. Don't use awesome_print

    gabebw committed Apr 13, 2018