Commit graph

77 commits

Author SHA1 Message Date
Konstantin Filtschew
5ad215adcb Updated README to use encrypted git connection
Due to current changes on GitHub, users are forced to use encrypted
connections only, see:
https://github.blog/2021-09-01-improving-git-protocol-security-github/

This is the corresponding change in READMEs.
2022-03-16 08:12:28 -04:00
Valeria Graffeo
42a313bde1 Replace rake commands with bin/rails in aliases. 2021-07-19 12:51:15 -04:00
Dario Vladovic
67c63699dc Update readme to use Homebrew core rcm formula 2021-07-03 15:20:47 -04:00
Jesse Bailey
e38b069478 Update description of migrate alias
Update the README description of the `migrate` alias to match the actual alias
2019-10-11 09:35:41 -04:00
Stephanie Viccari
3001fd3d65 Replace CtrlP with FZF
Summary:
Using CtrlP has proven to be slower and has fewer features. We've been
switching over to FZF on a frequent enough basis that it feels
appropriate to make FZF the new default for fuzzy searching.

By swapping out Ctrlp in favor of FZF, this should not break anyone's
fuzzy search but it will replace the tool that executes the search.

Co-authored-by: Chris Toomey <chris@ctoomey.com>
2019-08-21 14:37:31 -04:00
Rodrigo Bermúdez Schettino
8a63372e57 README: Mention excluded README-ES
Mention README-ES.md in section of excludes, which is already mentioned in the spanish version of the README (README-ES.md).
2019-01-21 16:10:56 -05:00
Andy Waite
f00e803052 Clarify ctags mapping
`vim/plugin/ctags.vim` shells out to ctags, but this could be Universal
Ctags (see #605).
2018-12-30 20:34:39 -05:00
Geoff Harcourt
2f02c53042 Update copyright year -> 2018 2018-01-05 09:10:56 -05:00
Ali-Akber Saifee
706c968a26 Update link to maintained Ctrl-P fork 2017-10-04 09:28:26 -04:00
Derek Prior
346268b6e7 Add deprecation 2017-09-15 14:36:21 -04:00
Derek Prior
3d11861f82 Use ASDF for version managment
ASDF has plugins for Ruby, Node, Elixir, Haskell, Scala, Go, etc.
Instead of finding and installing a new tool each time we have need for
a version manager in a new tools, we can use the same tool we already
know, adding a new plugin.

This change is the result of a successful [research card][1] and has a
corresponding change to [laptop][2].

[1]: https://trello.com/c/MVbfz8e5/676-asdf-for-tool-management
[2]: https://github.com/thoughtbot/laptop/pull/502
2017-09-15 14:36:21 -04:00
Chris Toomey
bc047365f5 Add a specific "Update" section to the README
Thanks to rcm and the `post-up` hook file, the dotfiles do a great job
of keeping things up to date.

This change adds a bit of detail and specificity to the README around
updating, specifically clarifying the need to run `rcup` after pulling
to link new files and install new vim plugins.
2017-08-28 09:13:07 -04:00
Sean Doyle
384d4ad5e6 Add bin/git-trust-bin command
To [append a project's local `bin/` directory to `$PATH`][dotfiles],
the dotfiles check for the existence of a special directory: `git/.safe`.

This commit is inspired by [thoughtbot/suspenders#837][#837]:

> The idea behind the .git/safe is that I run it manually and explicitly
> after I trust the directoy and the team behind the project.

> Creating it as part of the setup script defeats the point of that. Doing
> so without explcitly telling the user comes across as sneaky, perhaps.
> (I do expect all devs to read setup scripts before running them -- but I
> also know that they do not!)

> Switch this script to inform the user that they have no `.git/safe`
> directory but might like to make one.

Since suspenders may no longer mark projects safe by default, this
commit introduces the `git trust-bin` command to do so.

[dotfiles]: af75a673b1/zsh/configs/post/path.zsh (L9-L10)
[#837]: https://github.com/thoughtbot/suspenders/pull/837
2017-08-25 09:28:16 -04:00
Dan Croak
bab2ddc9f0 Add JavaScript syntax highlighting
It seems like JavaScript/ES6 is becoming more common for us to run into
in the wild compared to CoffeeScript
with the advent of Babel / transpiling.

Eventually, we'll probably want to remove kchmck/vim-coffee-script.
Users working on CoffeeScript applications would need to move that
plugin into their personal dotfiles.
2017-05-08 10:36:07 -07:00
Geoff Harcourt
3bbab420bc Allow user to ignore some default vim plugins
The `UnPlug` command allows a user to remove a plugin from vim-plug's
list of plugins to install/activate. This command can be used to
selectively ignore shared plugins from `vimrc.bundles` without needing
to overwrite the entire file with a personal replacement.

This change is dependent on vim-plug continuing to use the `g:plugs`
global variable.
2017-04-28 14:54:44 -04:00
Dan Croak
be8e5e58aa Remove gvimrc
This originally came from jferris/dotfiles,
the parent of thoughtbot/dotifles.

I'm not a Vim GUI user.
Are others at thoughtbot also shell Vim users?
2017-04-26 20:53:26 -07:00
Dan Croak
8fbef47fda Remove git churn command
I added this four years ago but haven't been using it.
Not common enough to be included in company-wide dotfiles?
Can move to personal dotfiles if desired.
2017-04-25 22:19:45 -07:00
Rootul Patel
09d54d448c README: Make customizations in ~/dotfiles-local 2017-03-24 13:46:32 -04:00
Tyson Gach
9ea82e8f58 Update thoughtbot logo 2017-03-10 09:39:51 -05:00
Geoff Harcourt
85b11b6583 Update install documentation
In #488 there was some confusion over where to clone the dotfiles
repository before running `rcm`. While the repository can be placed
anywhere, by default users should be placing it in `~/dotfiles` if they
are using the default installation instructions and an unmodified
`.rcrc`.

Close #488.
2016-06-28 12:10:01 -04:00
Derek Prior
8c8409e394 Use vim-test instead of vim-rspec
vim-rspec is an excellent Vim plugin for running RSpec tests but there
are many of us who run different kinds of tests on any given day.
vim-test is built to support a wide array of test frameworks and
strategies for executing those tests.

vim-test ships with support for several languages and frameworks in use
on thoughtbot projects today:

* Ruby (both RSpec and Minitest)
* Elixir (ExUnit and espec)
* Go (gotest)
* Python (nose, pytest, djangotest, djangonose)
* JavaScript (jasmine, mocha)

It also supports several execution strategies I have seen people use at
thoughtbot:

* Dispatch
* vim-tmux-runner
* Tslime
* Terminal.app/iTerm.app tabs
* neovim's native terminal
* `:!`

vim-test is extensible, both for additional languages/frameworks and for
execution contexts. See: https://github.com/janko-m/vim-test
2016-03-11 10:47:50 -05:00
Geoff Harcourt
a8bc74d10c Update copyright dates
It's 2016.
2016-02-22 14:31:30 -05:00
Greg Lazarev
31a8dd34f0 Provide an example of specifying dotfiles dir
Why:

* There can be confusion on how to tell `rcup` where local dotfiles
  have been installed.
2015-10-23 17:28:11 -04:00
Mislav Marohnić
6c0a559afd Avoid suggesting that people use .zshenv.local
`.zshenv` is executed for all zsh programs, even those run from
executables and not as an interactive shell, and furthermore due to
OS X's use of `path_helper` in `/etc/zprofile` which runs after that,
it's not a good place to configure additional PATH entries.

From zsh(1) man page:

> As /etc/zshenv is run for all instances of zsh, it is important that
> it be kept as small as possible.

So `.zshenv` is generally considered advanced usage and is not
recommended that people drop their casual login shell config in here.
Because of people's historical misuse of `.zshenv`, stop documenting it
in the README and suggest that people do their PATH and other
configuration in `.zshrc`.
2015-10-23 12:26:07 -04:00
Mislav Marohnić
f159f1a326 Revert "Add instructions to fix path on OS X El Capitan"
For years, OS X has mistakently invoked `path_helper` in `/etc/zshenv`
(affecting all zsh runtimes, even non-interactive shells such as
scripts) instead of from `/etc/zprofile` where it should have been
because it needs to only run once for a login shell.

This frustrated a lot of users since `path_helper` would unexpectedly
reorder their PATH by putting system paths first during nested
invocations of zsh. Many have disabled their `path_helper` because they
believed it to be the culprit. Instead, what they should have done is
fixed the OS X configuration bug and renamed their `/etc/zshenv` to
`/etc/zprofile`.

Recently, El Capitan shipped and users of zsh rejoiced because it has
finally fixed its faulty zsh configuration: the `path_helper` is now
correctly invoked from `/etc/zprofile`. This was a deliberate change on
Apple's part and is a BUG FIX, NOT A REGRESSION.

However, now this project suggests the opposite: revert the El Capitan
fix and move `/etc/zprofile` to `/etc/zshenv`. This is unwise since it
teleports us to the olden days of broken zsh configuration. Please don't
instruct users to break their system.

This reverts commit 15de0bcfee.
2015-10-23 12:23:19 -04:00
Valentino
9aa2cd5026 Use command -v instead of which in conditionals
Reason: https://stackoverflow.com/questions/592620/check-if-a-program-exists-from-a-bash-script/677212#677212
2015-10-16 09:03:28 -04:00
Andy Waite
66d40a1969 Clarify integration with Exuberant Ctags
The ctags.vim plugin was removed in #375. I updated the README to
document the Vim mapping for re-indexing a project's ctags.
2015-10-08 22:36:17 +01:00
Derrick Zhang
a3337fe6a1 Fix a command in README 2015-10-03 22:18:14 +08:00
Geoff Harcourt
15de0bcfee Add instructions to fix path on OS X El Capitan
OS X 10.11 changes the file where `path_helper` is invoked from
`/etc/zshenv` to `/etc/zprofile`. The change results in `path_helper`
rearranging the path in such a way that interferes with path changes
made in `.zshenv`.

This README update instructs users to rename `/etc/zprofile` to
`/etc/zshenv` so that `.zshenv` (and `.zshenv.local`) will be loaded
*after* `path_helper` is called, maintaining the desired precedence of
paths.

Thanks to @reshleman and @ventsislaf for investigating and offering
solutions.
2015-10-02 14:55:18 -04:00
Dan Croak
9262c9aa48 Add screenshot of prompt to README 2015-10-02 09:02:05 -07:00
Geoff Harcourt
f69c0e1986 Update README to advise running rcup after update
In #408 a user reported errors after pulling down master and opening
Vim without having run `rcup`. This documentation change updates the
section on `rcup` to advise running the command after pulling from the
origin.

Other changes:
* Removed outdated references to `m` and `rk` aliases, which have been
  removed from the repository.
* Added reference to `migrate` alias, which remains in the repository.
2015-08-25 16:21:37 -04:00
Seva Rybakov
9d75c20787 Update README.md 2015-07-04 18:40:22 +03:00
Jefferson Queiroz Venerando
0ee272928f Update README to use vim-plug syntax
The examples were using the vundle syntax instead.
2015-05-12 11:19:11 -03:00
Geoff Harcourt
5724d124a5 Use vim-plug over vundle
[vim-plug](https://github.com/junegunn/vim-plug) has a number of
advantages over Vundle:

* Installs and updates plugins very quickly in parallel
* Can lock plugins at versions/tags
* Can rollbacks updates (useful if a plugin breaks) and take/reload
  snapshots of current state
* Optionally lazily-load plugins when their relevant command is invoked
* Execute post-update hooks for plugins with compiled extensions, etc.

vim-plug uses a DSL very close to Vundle (simplest form is `Plug` vs.
`Plugin`), and here it is set to continue to use the same plugin
location that Vundle was using before.

After updating, users will need to
1. Rename `Plugin` lines in `.vimrc.bundles.local` to use `Plug`
2. Run `:PlugInstall` (the post-up hook does this)
2015-04-27 19:14:22 -04:00
Jessie A. Young
b3cb23830d Remove GitHub colorscheme
* Every time I pull updates from this repo into my own dotfiles, I have to
  reconfigure my preferred theme (solarized)
* Seems like there is not a majority or plurality of thoughbotters using a
  single colorscheme
* Easiest to just not specify a colorscheme
* See https://forum.upcase.com/t/why-is-the-default-vim-theme-on-dotfiles-is-github/4232
2015-03-18 10:16:39 -07:00
Joe Ferris
2eb9145f6b Update credits
* Break up credits section into thanks/about
* Use new "About thoughtbot" section
2015-03-09 13:48:23 -04:00
Dan Croak
d7f194f94e Add more Git hooks, delegate to .local convention
The `pre-commit` and `prepare-commit-msg` git hooks can be used
for some interesting things such as linting files.

For example, I need to format, vet, and lint Go files:

https://github.com/croaky/dotfiles/blob/master/git_template.local/hooks/pre-commit
https://github.com/croaky/dotfiles/blob/master/git_template.local/hooks/prepare-commit-msg

We've rejected Go-related pull requests to thoughtbot/dotfiles
due to not doing enough "official" Go work at the company.
This change helps me start with `.local` for now,
and then promote to "upstream" (thoughtbot/dotfiles) at some point
in the future if we do more "official" Go work.

I'm a believer in having linting done at VCS "commit time", either
locally in a pre-commit so I have a chance to fix things and not both my
teammates with linting issues, or at post-commit time via Hound comments
(also automated, but opportunity to ignore).

I've tried adding linting libraries to my editor, and found them too
slow, at least for Ruby. I've limited "editor-time" checking to just
syntax checking via Syntastic.

The downsides I see to adding linting to the test suite are:

* Style violations are not functional failures and logically shouldn't
  fail a build.
* Adding code coverage, linting, etc. to a test suite slows down the
  build.
* I only need to lint my diff (the commit), not the whole codebase, when I
  make changes.
* Style violations should not prevent a user-facing, production deploy.
* Adding linting to the test suite can slow that process down
  unnecessarily, particularly in continuous integration setups.

I see the appeal of linting in the test suite, particularly for
greenfield apps where we have total control, but I don't think it's a
practice that we can universally apply to our client projects who have
different deploy setups and existing codebases. So, I prefer the git
hooks + Hound approach as a pragmatic middle ground.
2014-12-02 21:49:53 -08:00
Dan Croak
782bcf7ddb Remove mention of Brewfile
It is no longer in our dotfiles.
2014-12-02 21:01:54 -08:00
Mike Coutermarsh
cf10a8358f Updating readme to use thoughtbot/formulae
Brew bundle is deprecated. fixes #309
Removes Brewfile, no longer needed
2014-10-22 08:54:13 -07:00
Dan Croak
90f3b577e8 Document vim-mkdir in README 2014-09-30 09:31:48 -07:00
Robert Speicher
6a1bd18a1f Add zshenv file
From the [Zsh manual](http://zsh.sourceforge.net/Intro/intro_3.html):

> '.zshenv' is sourced on all invocations of the shell, unless the -f option is
> set. It should contain commands to set the command search path, plus other
> important environment variables. `.zshenv' should not contain commands that
> produce output or assume the shell is attached to a tty.

Why is this important? [Alfred](http://www.alfredapp.com/) workflows run in
non-interactive shells. When the `$PATH` is set, or `rbenv` is initialized, in
`zshrc` instead of `zshenv`, those workflows will not use the correct Ruby
version and might not have access to certain bin files, such as those from
`$HOME/.bin/` or Homebrew.
2014-09-12 11:45:03 -07:00
Sean Doyle
cbdcbce01d Introduces git_template for init templating
Inspired by http://tbaggery.com/2011/08/08/effortless-ctags-with-git.html

* Make `ctags` executable configurable
* Adds `git ctags`
* Runs `ctag` on `commit` / `branch` / `checkout`
* Extensible via `~/.git_template.local/hooks/{pre,post}-*`
* explain `git_template` under `git` section
2014-08-27 16:43:38 -04:00
Mike Burns
73497a7c54
Introduce ~/.zsh/configs
Just before loading `~/.zshrc.local`, load:

1. `~/.zsh/configs/pre/**/*`
2. `~/.zsh/configs/**/*` # excluding pre and post
3. `~/.zsh/configs/post/**/*`

About the zsh glob:

- `.`: only produce normal files.
- `-`: follow symlinks to their final file; skip any broken links.
- `N`: do not complain about zero matches.

Big ups to Pat Brisbin for finding `N`.
2014-08-27 17:47:26 +02:00
Geoff Harcourt
9a2cb782b1
Allow personal overrides to psqlrc
I wanted to add my own customizations after reading @mike-burns' post on
[`psqlrc`](http://robots.thoughtbot.com/an-explained-psqlrc).

As a result of this change, `.psqlrc` requires that a `.psqlrc.local`
exist in the home folder because `psql` cannot do conditional sourcing
of files in the style that we use in other foundation dotfiles. Touching
the file to ensure it exists (even if blank) prevents `psql` from
exiting with an error if the user does not provide their own custom
configuration.

Additional changes:
* Updating the documentation with regard to which files get excluded.
2014-07-30 10:46:25 +02:00
Robert Speicher
0191762805 Update for Vundle's new interface
* Vundle now lives at gmarik/Vundle.vim

See https://github.com/gmarik/Vundle.vim/blob/master/doc/vundle.txt#L345-L369
2014-07-25 17:20:57 -07:00
Dan Croak
397155648d Fix out of date README on rake, rspec commands
`rake` and `rspec` commands that wrapped `zeus` were removed in 00dbd15.
2014-04-29 23:21:55 -07:00
Dan Croak
1d590d78aa Exclude Brewfile
It is project-specific, not intended for machine configuration.
2014-03-14 14:01:42 -07:00
Garland William Binns III
bf82a62343 Update to ensure user's working folder is correct for subsequent actions. 2014-03-07 15:58:10 -08:00
Garland William Binns III
71a88a265c Added syntactical clarity to instruction to change directory. 2014-03-07 15:58:09 -08:00
Garland William Binns III
fd5732345c Resolves #216 - adds note about ensuring user is in Clone/Fork root before 'brew bundle' is run. 2014-03-07 15:58:09 -08:00