aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2019-06-03Add 'undotree' pluginTeddy Wing
2019-06-01Add ftdetect/git.vimTeddy Wing
Copy one of the Git file detectors from `/usr/local/share/vim/vim74/filetype.vim`. This gives me `gitcommit` filetype features for merge and tag messages even when using a Vim older than 7.4 (Vim 7.3, the default on many Macs, only sets COMMIT_EDITMSG to the `gitcommit` filetype). Additionally, set `gitcommit` on `PULLREQ_EDITMSG` files. This gives me the same features for pull request messages using GitHub's `hub` command line tool (in particular spell checking).
2019-06-01vimrc: Turn on persistent undoTeddy Wing
On a couple of occasions I've thought it would be useful to have this, so let's activate it.
2019-06-01Add ftplugin/javascript.vimTeddy Wing
Don't preserve indentation on empty lines in JavaScript files.
2019-06-01vimrc: Add `<leader>tc` mapping to close current tabTeddy Wing
Add a mapping to close tabs with multiple windows more quickly.
2019-05-25plugin/better_autoread.vim: Disable automatic `checktime` on Vim 8Teddy Wing
I kept getting E211 errors when switching Git branches with added/missing files or E321 errors. Normally, I'd get the error once, dismiss it, and be done with it, but on a new machine with a recent Vim install, the errors kept coming back up every few seconds, insupportable. Unless I can think of something better, take a heavy-handed approach and disable this on new Vims.
2019-05-24projects/aodocs.vim: Set indentation in JavaScript and JSON filesTeddy Wing
2019-05-17diff-corrections: Don't load if the lambda feature isn't availableTeddy Wing
I wrote the `s:SaveCommentColor()` function using a lambda for `filter()`ing. However, not all Vims have `lambda` support. And it doesn't exist before Vim 7.4 I think. Use this guard to avoid causing errors on startup for those Vims without lambdas.
2019-05-17diff-corrections/plugin: Add load guardTeddy Wing
2019-05-17diff-corrections: Restore old 'cursorline' and Comment highlightTeddy Wing
When diff mode is deactivated, the old values for 'cursorline' and the Comment highlight colour should be restored. Thanks to Tony Mechelynck (http://vim.1045645.n5.nabble.com/template/NamlServlet.jtp?macro=user_nodes&user=28373) for the tip on how to save and restore highlight colours: > The following is untested. It requires Vim version 7. > > function SaveCursorColor() > redir => highlight > silent hi Cursor > redir END > if highlight =~ 'links to ' > let s:hl-link = matchstr(highlight, 'links to \zs\S*') > elseif highlight =~ '\<cleared\>' > let s:hl-link = 'NONE' > else > let s:hl-link = '' > for substr in ['term', 'cterm', 'ctermfg', 'ctermbg', > \ 'gui', 'guifg', 'guibg', 'guisp'] > if highlight =~ substr . '=' > let s:hl-{substr} = matchstr(highlight, > \ substr . '=\S*') > else > let s:hl-{substr} = '' > endif > endfor > endif > endfunction > function RestoreCursorColor() > if !exists('s:hl-link') > echoerr 'Cursor not saved, cannot restore' > return > endif > hi clear Cursor > if s:hl-link == '' > exe 'hi Cursor' s:hl-term s:hl-cterm s:hl-ctermfg > \ s:hl-ctermbg s:hl-gui s:hl-guifg s:hl-guibg > \ s:hl-guisp > elseif hl-link != 'NONE' > exe 'hi link Cursor' s:hl-link > endif > endfunction > > > Best regards, > Tony. http://vim.1045645.n5.nabble.com/How-to-save-restore-the-hightlight-for-cursor-td1182624.html
2019-05-17ftplugin/go.vim: Add a mapping to run `goimports`Teddy Wing
Sometimes the run-on-save functionality doesn't work. This gives me a quick way to run the formatter when it doesn't happen automatically.
2019-05-17ftplugin/gitcommit.vim: Turn on spell checking in Git commitsTeddy Wing
2019-05-17plugin/diff_corrections.vim: Increase 'tabpagemax' to 200Teddy Wing
The default is 10. Set it to a ridiculously large number so that we can open one tab per file during a code review.
2019-05-17ftplugin/go.vim: Add mapping to `:GoTestCompile`Teddy Wing
Make it faster to compile tests without running them.
2019-05-17ftplugin/go.vim: Make `go run` mapping run root main packageTeddy Wing
The `Plug` mapping wasn't finding my `main` package from a sub-package. Change it to force running for the main package in the `pwd` directory.
2019-05-11diff-corrections: Move corrections to `autoload`Teddy Wing
Makes the code a little nicer and more extensible without the line continuations. Only change the highlight colour for the 'twilight256' colour scheme.
2019-05-10Add 'diff-corrections' to adjust settings during diff modeTeddy Wing
* Changes `Comment` colour for better readability on red backgrounds. * Turns of 'cursorline' so that diff background highlighting doesn't get shadowed.
2019-05-10Set `GoGuruScope` in AODocs UFO projectTeddy Wing
To enable `:GoCallers` by telling it to search in the root package.
2019-05-10ftplugin/go.vim: Add a few mappings to Vim-GoTeddy Wing
Mappings to build projects and run tests.
2019-05-10vimrc: Include hidden files in the Pick listTeddy Wing
So that hidden project files can be opened quickly like the rest.
2019-05-10vimrc: Use long CLI options to `ag` in `g:pick_command`Teddy Wing
For better documentation.
2019-05-08vimrc: Add next/previous shortcuts for the location listTeddy Wing
The Vim-Go plugin uses the location list for certain operations. Add these shortcuts to make it quicker to navigate.
2019-05-08vimrc: Add basic 'vim-go' settingsTeddy Wing
'vim-go' displays this error message when running older versions of Vim: vim-go requires Vim 7.4.2009 or Neovim 0.3.1, but you're using an older version. Please update your Vim for the best vim-go experience. If you really want to continue you can set this to make the error go away: let g:go_version_warning = 0 Note that some features may error out or behave incorrectly. Please do not report bugs unless you're using Vim 7.4.2009 or newer or Neovim 0.3.1.O If I'm running a version of Vim that would cause the error message to display, I'm probably not editing Go code, so it doesn't matter. In this case, the error message just interferes with normal operations. Use `goimports` instead of `go fmt` for on-save formatting.
2019-05-08Add 'vim-go' pluginTeddy Wing
Now that I'm going to be doing more Go development, switch to the full featured Vim Go plugin.
2019-05-08Disable 'vim-golang' pluginTeddy Wing
Switching to 'vim-go'.
2019-05-08Add 'vim-maildrop' pluginTeddy Wing
For Courier Maildrop `.mailfilter` syntax highlighting. Makes it a bit more pleasant to edit my new work email filters.
2019-05-04vimrc: Have Gundo use Python 3 when Vim is compiled with `+python3`Teddy Wing
After recently installing my vimrc on a newer machine and trying Gundo, I ended up with this error message: Gundo requires Vim to be compiled with Python 2.4+ Fortunately, it also supports Python 3 via a flag. Thanks to Carl Patenaude Poulin (https://bitbucket.org/cpoulin) for this solution: https://bitbucket.org/sjl/gundo.vim/issues/42/about-python3-support#comment-32289592
2019-05-04vimrc: Use `.agignore` in Pick commandTeddy Wing
2019-05-04Add ftdetect/typescript.vimTeddy Wing
Trying out Typescript in a project. Instead of getting a Typescript Vim plugin, just use the Javascript syntax highlighter for simplicity.
2018-12-13Update 'vim-grappele' to v0.1.0Teddy Wing
Includes visual and operator-pending mode mappings.
2018-12-13ftplugin/objc.vim: Switch alternates on <C-^>Teddy Wing
Use FSwitch to swap .h and .m files in the current window when `<C-^>` is pressed.
2018-12-13Add 'vim-fswitch' pluginTeddy Wing
Makes switching to alternate files much more efficient. Will be using this for Objective-C implementation and header files, but it could be useful in other contexts, even outside the C realm.
2018-12-13Add 'tabular' pluginTeddy Wing
2018-11-24ftplugin/todo.vim: Don't change highlighting of non-todo filesTeddy Wing
Previously, the custom highlighting I had added for TODO files would infect the highlighting of all other files in the same Vim session. Only change the highlighting of the `todoUndone` group so that it doesn't affect anything else.
2018-11-24Add ftplugin/dome_key.vimTeddy Wing
Use the plugin's ftplugin. This gives us the proper comment string.
2018-11-24Add 'vim-dome-key' pluginTeddy Wing
Syntax highlighting for DomeKey mapping files.
2018-11-24Add ftplugin/make.vimTeddy Wing
Set the correct comment string for make.
2018-11-24Add ftplugin/objc{,pp}.vimTeddy Wing
Filetype plugins for Objective-C. Turns out editing ObjC in Vim is somewhat surprisingly whoppingly better than Xcode. This gets indentation set to 4-space tabs and sets the comment correct prefix (Tcomment forces /* ... */). Include `objcpp` also because ObjC header files get recognised by Vim as ObjC++.
2018-04-19Update 'vim-tabs-grep' to v1.0.0Teddy Wing
The `:TabsGrep` command now takes a glob instead of a regex pattern.
2018-04-08Add 'vim-tabs-grep' pluginTeddy Wing
Provides a `:TabsGrep` command that enables `:tabs` output to be filtered, making it easier to find out which tab a file is on.
2018-04-06github-url: Copy the URL to the clipboard in addition to printing itTeddy Wing
Previously all we did was `echo` the generated URL to the command line. This was mainly for debugging purposes, but it strikes me that this would be nice to keep so that users can validate that the correct URL was generated. In addition to doing this, though, we need to provide an easy way to send that URL string into other programs like chat or an input field in a web browser. Copy the URL to the Mac OS X clipboard to make it easier to share.
2018-04-06github-url: Add `--no-patch` to `git show` commandTeddy Wing
If there's a diff in the index, that will get included in the output of this command, meaning that just after the SHA, there will be a multi-line diff string that completely messes up the constructed URL. Use the `--no-patch` flag to suppress diff output.
2018-04-06github-url: Move functions into `autoload`Teddy Wing
Improve performance by eliminating the functions from the `plugin` file. Also introduces a new `github_url#GitHubURL()` function that serves as an entry point into the plugin. Add a `g:loaded_github_url` check to prevent plugin re-sourcing and be a good Vim citizen.
2018-04-06github-url: Get rid of useless `echo`Teddy Wing
I used this for testing purposes but it's no longer relevant.
2018-04-06github-url: Document functionsTeddy Wing
Add doc comments to these functions.
2018-04-06github-url: Don't add ending line to URL if it wasn't part of the rangeTeddy Wing
If the command was executed as: :6GitHubFileURL we previously appended `#L6-L6` to the URL. This change appends only `#L6` in that case.
2018-04-06github-url: Add `<count>` to commandTeddy Wing
Using a `count` of 0 allows us to determine in `s:FileURL` whether a range was given on the command line. This count needs to be passed into the function explicitly with `<count>`.
2018-04-06Add 'github-url' pluginTeddy Wing
A rough working implementation of a plugin that generates a GitHub URL for the current file. It gets the base URL from the current Git repo's `origin` remote and uses the current commit SHA. Lines can also be highlighted by passing a range to the command. This makes it easier to share a bit of code that I see in the editor with other people on my team in chat or the issue tracker.
2018-04-06vimrc: Add `z<C-]>` mappingTeddy Wing
For jumping to a tag, `<C-]>` is great, but I usually like to have the current buffer stay open and look at the tag source in a different window. This new mapping gives me a quick way to do that.
2018-03-28git-blamer: Run `git show` on <Enter>Teddy Wing
When the `<Enter>` key is pressed in the GitBlamer window, run `!git show` on the commit from the current cursor line of the blame. This allows a changed line to be inspected in the context of its original changeset. It also saves me time from my previous workflow: cpe^Zgit show <Apple-P><Enter>