Commit graph

152 commits

Author SHA1 Message Date
Dan Croak
18e0926a07 Don't assume location of zsh 2014-02-07 23:30:11 -08:00
Matthew Sumner
2915cf1f69 changes 'brew tap thoughtbot/rcm' to 'brew tap thoughtbot/formulae' 2014-02-02 14:56:26 -07:00
Adarsh Pandit
6f48e8cd36 Update copyright to 2014 2014-01-27 01:13:49 -08:00
Gabe Berke-Williams
4cdd718c4c Add psqlrc 2014-01-24 23:15:38 -05:00
Derek Prior
294f962f95 Complete parity commands like heroku
Adds tab completiong to `production` and `staging` which acts as tab
completion to heroku.
2014-01-23 18:35:34 -05:00
Dan Croak
31b99d9728 Add rbenv shims and trusted binstubs to PATH
Our expected way of managing Rubies is with rbenv:

https://github.com/thoughtbot/laptop/blob/master/common-components/ruby-environment

This commit loads rbenv in `zshrc` as recommended by the rbenv docs:

https://github.com/sstephenson/rbenv#basic-github-checkout

Assuming the binstubs for a project are in the local bin/ directory, we
can even go a step further to add the directory to shell $PATH so that
rspec can be invoked without the bin/ prefix:

    export PATH="./bin:$PATH"

Doing so on a system that other people have write access to (such as a
shared host) is a security risk:

https://github.com/sstephenson/rbenv/issues/309

The `.git/safe` convention addresses the security problem:

https://twitter.com/tpope/status/165631968996900865

This zsh fix may be necessary for OS users in order to fix a bug:

https://github.com/thoughtbot/laptop/blob/master/mac-components/zsh-fix
2014-01-23 14:22:51 -08:00
Dan Croak
e0200f0019 Use thoughtbot/rcm in Brewfile 2014-01-10 17:35:48 -08:00
Gabe Berke-Williams
5920168f02 Correctly link to rcm in README 2014-01-10 16:16:26 -05:00
Gabe Berke-Williams
dbcf831f0f Use Brewfile 2014-01-10 16:05:21 -05:00
Greg Lazarev
dd75d58dbf Cleanup zshrc
* remove duplicates with zlogin
* order by functions first, then bindings, then exports
* lowercase `setopt` arguments for consistency with `setopt` output
2013-12-26 12:58:01 -08:00
Mike Burns
3acd933e68
Always update from vundle
Previously, the after-up hook would only do a `:BundleInstall` when
installing vundle for the first time. This is inconsistent with the
pre-rcm process, and also less convenient.
2013-12-05 10:27:16 +01:00
Mike Burns
3bc2a98a1b Use rcm instead of ./install.sh
The rcm suite is designed to replace the `./install.sh` script found in
this and many other dotfiles repos across GitHub. By using rcm users can
combine multiple dotfiles repos, tag dotfiles, have host-specific
dotfiles, and other powerful features.

This commit removes `install.sh`, updates the README, adds a post-up
hook that vundles the vim bundles, and adds a `rcrc` configuration that
ignores `README.md` and `LICENSE` and sets the dotfiles directory to
just `dotfiles`.
2013-12-05 10:17:12 +01:00
Andrew Toelle
4f65f7927c skip linking LICENSE file during install 2013-11-30 19:11:31 -06:00
Joe Ferris
7773e539f1 Only try to install vundle if it's not installed
Prevents error on re-running ./install.sh:

    fatal: destination path '~/.vim/bundle/vundle' already exists and is
    not an empty directory.

https://github.com/thoughtbot/dotfiles/issues/195
2013-11-28 12:03:34 -08:00
Dan Croak
6428b765a1 Update Giant Robots blog post URLs in README 2013-11-28 12:01:59 -08:00
Dan Croak
ddfb130025 Disable Rubygem documentation to make Bundler fast 2013-11-23 15:41:23 -08:00
Dan Croak
4f5a2edc33 Spell-check Markdown by type, not file extension
Previously, only `*.md` files would get spell-checking. This change adds
`*.markdown` and decouples Markdown spell-checking by file extension.

http://robots.thoughtbot.com/vim-spell-checking/
2013-11-22 16:01:48 -08:00
Mike Burns
fd9d6354cf The user is able to type [ or ]
There are many workarounds[1] to the

    zsh: no matches found: ...

issue, but let's just stop it at its core: turn off that `nomatch`
functionality.

Apologies to all who enjoy seeing the pun around:

    % got a light?
    zsh: no matches found: light?

But all good shell puns[2] must come to an end.

[1] http://robots.thoughtbot.com/post/18129303042/how-to-use-arguments-in-a-rake-task
[2] http://www-users.cs.york.ac.uk/susan/joke/unix.htm
2013-10-08 10:02:26 +02:00
Mike Burns
11a5504dfe Add a commit message template
Using the `commit.template` setting, read in a commit message template
for each commit. This template is commented out so the commit message
author doesn't need to delete it.

The template serves as a reminder on how to write a better commit
message. The bullets are taken from Caleb's blog post[1]. There is no
_problem_ per se -- we are writing good messages these days -- but it's
handy to be reminded of things to think about. For example, people often
forget to note whether there are any side effects.

This message does not show on `git commit --amend`, only normal `git
commit`.

[1] http://bit.ly/13HWyiy
2013-10-08 09:59:44 +02:00
Joël Quenneville
82acdf7fa4 Globally ignore .env file
It is a common practice to store environment variables in a .env file in
development. This file is read by tools such as foreman and dotenv. This
file can contain sensitive information such as secret keys and should
always be excluded from version control
2013-09-20 11:12:21 -04:00
Chris Toomey
655a76a6c1 Add envup script for loading environment variables 2013-09-13 15:29:18 -04:00
Joe Ferris
81a33f78d8 Set 'autowrite'
* Automatically :write before commands such as `:next` or `:!`
* Saves keystrokes by eliminating writes before running tests, etc
* See `:help 'autowrite'` for more information
2013-09-12 15:56:12 -04:00
Dan Croak
338cc0fb92 Allow backspacing over everything in insert mode
The previous setting frequently slowed my ability to edit.
2013-09-11 14:09:52 -07:00
Joël Quenneville
a4dff5ea80 Don't cache CtrlP results when using ag
It gets very annoying to manually force CtrlP to re-index every time I
add a new file. Since ag is so fast, we can turn off caching when it
powers CtrlP without any noticeable impact on search speed.
2013-08-23 17:28:03 -04:00
Joël Quenneville
ee00ab0cbe Add rspec config file
* Colorize output
* Run tests in random order
* Profile 5 (default of 10 is too noisy)
2013-08-09 17:35:05 -04:00
Sterling Cobb
b024bdcd3a Allow for a local tmux.config file 2013-08-03 11:14:31 -07:00
David Larrabee
5994cf10eb Adds local configuration file for vim bundles 2013-08-03 10:10:51 -04:00
Dan Croak
c0a282f9a8 Remove redundant syntax highlighting
Newer versions of vim (such as 7.3.923) syntax highlight Rackup and JSON
files correctly. In the interest of keeping the dotfiles slim and our
machines up-to-date, I think the solution is to remove these from
dotfiles and install a newer version of vim in thoughtbot/laptop:

https://github.com/thoughtbot/laptop/pull/118
2013-07-29 14:14:27 -07:00
Dan Croak
989a49d2f0 Add syntax highlighting to certain file types
* Syntax highlight `Appraisals` as Ruby. Used especially for our open
  source libraries.
* Syntax highlight rackup (`config.ru`) files as Ruby. Used in all our
  Ruby web apps. Rails apps are rarely touched but some of the Sinatra
  and Middleman apps are occasionally edited.
* Syntax highlight JSON files as JavaScript. Used in our Trail Map.
2013-07-27 12:10:41 -07:00
Michael Gee
ce425d6e74 fix relative .aliases.local path 2013-07-23 15:02:05 -07:00
Sterling Cobb
3fd85abb00 List local files available to override 2013-07-22 21:38:41 -07:00
Greg Lazarev
f1c03da33a Remove old ignores
* sass gets compiled to `tmp/sass-cache` with Rails
* vendor/bundle_gems seems like an arbitrary vendor directory
* vim/.netrwhist is for a plugin we no longer use
2013-07-22 18:43:57 -07:00
Greg Lazarev
387d9142d1 Remove unused vim plugins
* haml, html and markdown highlight still work without these plugins
* treetop and textile are likely very situational
* unsure if anyone is using greplace
2013-07-19 10:34:47 -07:00
Derek Prior
edfc415f57 Make the migrate alias faster
This was loading up the environment four times when it really only needs
to happen twice.
2013-07-16 09:15:28 -04:00
Dan Croak
b7bc52ec20 Git push to current, not upstream
The primary use case for me is to `git push staging` and `git push
production` from the master branch using our typical git workflow:

https://github.com/thoughtbot/guides/tree/master/protocol#deploy
2013-07-10 23:16:27 -07:00
Dan Croak
fdbd7b5248 Remove "DO NOT EDIT BELOW THIS LINE" convention
It has been superceded by a `.local` suffix convention.
2013-07-08 22:09:44 -07:00
Dan Croak
e69f7b7995 Source ~/.zshrc.local if it exists
Follows the pattern of:

* ~/.aliases.local in ce7ad49
* ~/.gitconfig.local in 8e141fe
* ~/.vimrc.local in a666267

Use consistent:

* `source`ing style.
* commenting style.

I am using ~/.zshrc.local as a home for `eval "$(rbenv init -)"`.
2013-07-08 21:20:11 -07:00
Greg Lazarev
ce7ad494cf Include local aliases file
* `.aliases.local` should be used to add personal aliases
2013-07-06 11:08:47 -07:00
Greg Lazarev
8e141fed5e Include gitconfig.local file for personal changes
* assumes same directory existance
* allows for easier addition of personal configs
2013-06-28 13:11:08 -07:00
Adarsh Pandit
a2d8383b6a Remove double escaped spaces in vimrc
* Bash users experience errors when using the double-escaped spaces for the CtrlP-SilverSearcher integration.

Thanks to @adamyonk for raising this issue
2013-06-24 09:55:32 -07:00
Dan Croak
108476c54e Turn off banner at login
When logging into a new shell, users see a banner such as:

    Last login: Sun Jun 23 11:41:42 on ttys007

Adding an empty ~/.hushlogin file turns that banner off:

http://kb.iu.edu/data/acdd.html
2013-06-24 09:27:41 -07:00
Adarsh Pandit
f854c8d8ef Use Silver Searcher as CtrlP backend
* Use `ag` as the find method for listing files in CtrlP Vim plugin
* ag indexes and searches far faster than the native engine
* ag also respects .gitignore files on on a per-directory basis, avoiding duplication
2013-06-21 15:18:20 -07:00
Dan Croak
64e6dfa4c6 Isolate credits to README
Per @mikeburns' suggestion.
2013-06-18 16:47:01 -07:00
Dan Croak
32e79b642f git up alias and git up -i documentation 2013-06-11 14:53:15 -07:00
nXqd
830f4fed17 Add shortcut to toggle between two most recent panes
* Mimics GNU screen's ctrl+a a
2013-06-10 12:29:20 +02:00
Derek Prior
8b7e4eefa7 Consolidate autocommands into the augroup
This makes it so resourcing the vimrc file doesn't duplicate the
auto commands.
2013-05-28 09:43:10 -04:00
Dan Croak
d830652ab9 Remove reattach-to-user-namespace
This is Mac OS X-specific. Including this line in the dotfiles causes
`tmux` and `tmux new -s new-session` to break with `[exited]`.

I personally don't do copy-pasteable work inside tmux anymore.

I'm sure this is valuable to some of the thoughtbot vim users but I'm
thinking it better belongs above `DO NOT EDIT BELOW THIS LINE` as custom
configuration for those users.
2013-05-17 14:41:59 -07:00
Elliot Winkler
9a0c71eccf Add mappings to switch windows more succinctly 2013-05-15 10:27:49 -06:00
Dan Croak
cb6170d2f8 Extract dev/staging/prod binaries to parity gem
https://github.com/croaky/parity
2013-05-12 17:38:22 -07:00
Derek Prior
341b7c93dd Add syntastic for syntax checking
* enable check on open: I want to know about any broken windows from the
  start.

* disable inline highlights: the line markers are sufficient.
2013-05-10 08:58:54 -04:00