Commit Graph

387 Commits

Author SHA1 Message Date
Andy Stewart
ee481585d7 Modernise tests.
Use Vim's built-in assert_*() functions and vim-contest test runner.
2016-10-27 12:15:43 +02:00
__
64a445bb53 Vim: explicitly check for job support. 2016-10-20 17:01:11 +01:00
Andy Stewart
0d455a7af7 Only restore shell if previously saved. 2016-10-19 14:17:03 +01:00
Andy Stewart
a693c0d326 Ensure nested calls do not overwrite value of original shell.
See #379.
2016-10-19 10:00:11 +01:00
Andy Stewart
b1734a3916 Remove unnecessary space concatenation. 2016-10-18 10:14:21 +01:00
Andy Stewart
e113f07d0b Avoid autocmd side-effects when jumping to/from preview window.
Fixes #379.
2016-10-18 10:12:30 +01:00
Andy Stewart
297678a08d Ensure BufWritePost,FileChangedShellPost always process buffer.
Before this change the TabEnter/BufEnter logic was intertwined with
the logic for BufWritePost,FileChangedShellPost.

Separating the concerns fixes a minor bug where a TabEnter-BufEnter
combination led to the plugin not updating the diff the first time the
buffer was written.
2016-10-11 10:02:21 +01:00
Andy Stewart
fa25cbb7d7 Check whether gitgutter is active in async callbacks.
Closes #375.
2016-10-10 12:52:28 +01:00
Andy Stewart
55b556f7a2 Dedup buffer lists to avoid unnecessary work. 2016-10-10 12:52:05 +01:00
Andy Stewart
68f6fa3453 Whitespace. 2016-10-10 12:42:07 +01:00
Andy Stewart
4f9c5b0f3e Use 'sh' as shell instead of configurable '/bin/sh'.
sh isn't always at /bin/sh, e.g. on Android or Termux, but it is always
on the path.

See #360.
2016-09-30 10:28:29 +01:00
Andy Stewart
402257f920 Enable configuration of path to sh (default /bin/sh).
See #360.
2016-09-16 14:22:13 +01:00
Andy Stewart
373ad7337b Handle buffers which have since been closed in async callbacks. 2016-09-13 16:11:42 +01:00
Billy
efa1ead770 Typo fix. 2016-09-09 09:05:41 +01:00
Andy Stewart
43e7c1f542 Set &shellredir when changing shell.
See #365.
2016-09-06 10:36:09 +01:00
Filip Szymański
26c6b549f2 Use "ch_info()" to get channel id 2016-07-12 19:05:32 +02:00
Andy Stewart
b5f23e9867 Use known shell for hunk staging, previewing, undoing.
Forgot to do this in 377c71d.

Closes #352.
2016-06-27 10:55:26 +01:00
Luke Farrar
c8fa0b3349 Move -r to start of args for non-GNU folk. 2016-06-21 10:28:56 +01:00
Luke Farrar
88e26c0fdf Fix manual install commands. 2016-06-21 10:28:56 +01:00
Andy Stewart
d19e86d249 Update FAQ in README. 2016-06-21 09:57:39 +01:00
Andy Stewart
09b9144002 Remove obsolete troubleshooting step.
Forgot to do this in 377c71d.
2016-06-09 10:34:52 +01:00
Andy Stewart
cfbca4455c Enable async diffs in gVim 7.4.1850+. 2016-06-09 10:30:48 +01:00
Andy Stewart
6ac5039600 Don't try to realtime-diff an untracked file. 2016-06-09 10:01:32 +01:00
Andy Stewart
f8da1fd6db Preserve screen line position when undoing a hunk.
Closes #346.
2016-05-23 10:31:17 +01:00
Xavier Guérin
377c71d982 Use /bin/sh as default shell.
- /bin/bash is not part of OpenBSD.
- We need only a POSIX shell, not bash specifically.

Closes #340.
2016-05-20 11:13:45 +01:00
Andy Stewart
90c558b1dc Expand installation instructions. 2016-05-18 16:35:04 +01:00
Christian Persson
b3979e7736 Fix typo in table of contents 2016-05-18 15:33:23 +01:00
Andy Stewart
f15a67ff51 Get buffer variable's default value in a backward-compatible way.
getbufvar() gained a default value in v7.3.831.  The change here handles
default values in older Vims (pre 7.2 at least).
2016-05-18 08:47:52 +01:00
Andy Stewart
867e013a62 Improve guard for missing-git warning again. 2016-05-16 16:29:40 +01:00
Andy Stewart
55d8247848 Fix guard for missing-git warning. 2016-05-16 13:50:27 +01:00
Andy Stewart
f5a5234f22 Allow configuration of git executable. 2016-05-16 13:47:14 +01:00
Andy Stewart
9db8f638db Make hunk summary window-aware.
Closes #331.
2016-05-16 12:21:06 +01:00
Andy Stewart
ef6fd3a986 Store a buffer's hunk summary in a buffer local variable. 2016-05-16 12:07:20 +01:00
Andy Stewart
ba6e104848 Always use bash on unix.
Vim is single-threaded so we can make life easier by using a known shell
and restoring the original one afterwards.
2016-05-16 12:00:06 +01:00
Andy Stewart
1937f06498 Avoid potential shell (un)quoting problems in NeoVim.
See neovim/neovim#4746 for a discussion.
2016-05-16 10:36:27 +01:00
Andy Stewart
053581db5c MacVim GUI 7.4.1832+ supports async diffs. 2016-05-16 10:10:11 +01:00
Andy Stewart
cae4f72aa1 Abort functions at first error. 2016-05-13 14:14:41 +01:00
Andy Stewart
264d7f3a66 Only use "<nomodeline>" when available. 2016-05-13 09:48:43 +01:00
Andy Stewart
882073f4b5 Restrict async diffing in Vim to terminal Vim.
MacVim in GUI mode and gVim don't process the callbacks reliably (or at
all) yet.
2016-05-12 10:22:43 +01:00
Andy Stewart
ea5d4cbeaf Don't process modelines after triggering autocommand.
Closes #334.
2016-05-10 15:54:01 +01:00
Andy Stewart
169e08a718 Apply signs to correct buffer when using Vim async. 2016-05-10 15:33:44 +01:00
Andy Stewart
0e490ec830 Require Vim 7.4.1826 for async Vim. 2016-05-09 16:57:43 +01:00
Andy Stewart
72d100517a Update vim callback handlers in light of vim change.
Vim 7.4.1810 stopped sending DETACH to the out_cb handler to mark the
end of the job's stdout.  Instead we add a close_cb handler which does
what the out_cb handler used to do upon receiving DETACH.
2016-05-09 16:54:34 +01:00
Tommy Allen
a4e75dd074 Apply signs to correct buffer when using Neovim async 2016-05-09 12:16:09 +01:00
Andy Stewart
d5806ea44c Check existence of function 2016-05-09 12:14:30 +01:00
Andy Stewart
f03a1a1f02 Document the autocmd. 2016-05-06 16:32:29 +01:00
Joel D. Elkins
27f99c4a4d Fire autocommand after processing buffer. 2016-05-06 16:26:24 +01:00
Andy Stewart
db6a253d68 Disable async for vim pending vim segfault fix.
References:

- #332
- https://groups.google.com/d/topic/vim_dev/n0jeRog4DI0/discussion
2016-05-05 10:28:16 +01:00
Andy Stewart
65e3ff8994 Fix Markdown link. 2016-04-29 10:25:21 +01:00
Andy Stewart
3ffd67d905 Extract stringify function. 2016-04-29 10:02:15 +01:00