Commit Graph

211 Commits

Author SHA1 Message Date
Tim Pope
7bdf33d375 Always convert backslashes on Windows
The old conditional was fine for most things, but this ensures that
backslashes are used even for raw user input.

References https://github.com/tpope/vim-fugitive/issues/1079
2018-08-19 14:56:34 -04:00
Tim Pope
e9dc363745 Fix check for need to convert Windows path slashes
Closes https://github.com/tpope/vim-fugitive/issues/1079
2018-08-19 05:07:33 -04:00
Tim Pope
9979b2ab7c Ignore 'shellslash' when checking for Win32 shell 2018-08-19 00:11:46 -04:00
Tim Pope
8589246545 Tweak check for Win32 shell
References https://github.com/tpope/vim-fugitive/issues/1079
2018-08-18 23:15:05 -04:00
Tim Pope
7b0aa58090 Accept ./ paths as relative to cwd 2018-08-15 19:24:35 -04:00
Tim Pope
45c21fc384 Normalize path specs when generating commands 2018-08-13 00:08:59 -04:00
Tim Pope
8dc13a6a72 Restore backwards compatible behavior of repo.translate() 2018-08-12 23:03:20 -04:00
Tim Pope
0614acc770 Fix issues with commit:./relative completion 2018-08-12 21:37:38 -04:00
Tim Pope
1a7b07cf22 Support commit:./relative style revisions 2018-08-11 19:15:56 -04:00
Tim Pope
4a3c6b4a56 Adjust section headers 2018-08-11 19:15:56 -04:00
Tim Pope
e3c9588e07 Extract function for getting current commit/ref 2018-08-11 19:15:56 -04:00
Tim Pope
40facfde5e Rewrite <C-R><C-G> and y<C-G> 2018-08-11 02:41:33 -04:00
Tim Pope
236bd21b45 Use <nowait> for - maps
Closes https://github.com/tpope/vim-fugitive/issues/1076
2018-08-11 02:41:33 -04:00
Tim Pope
e9ce313912 Support pathspec arguments to :Gcd 2018-08-11 01:26:23 -04:00
Tim Pope
74b10425eb Fix legacy expansion of bare caret/tilde 2018-08-11 01:26:21 -04:00
Tim Pope
1a041936da Provide less awkward signature for s:Prepare() 2018-08-11 00:55:21 -04:00
Tim Pope
a358191cfb Use unambiguous paths for :Gstatus dot map
When the current working directory isn't the work tree, use absolute
paths so that pairing with both :Git and :! works as expected.
2018-08-10 19:22:13 -04:00
Tim Pope
597289e64d Handle :Gmove paths consistently 2018-08-10 19:22:13 -04:00
Tim Pope
7ea21ca9ac Give precedence to absolute paths over pseudo-relative
I was planning on phasing out support for /path to access a file in the
root of the repo slowly, but life gets simpler if we can count on
absolute paths always working as expected.
2018-08-10 16:00:46 -04:00
Tim Pope
2ca0765dc4 Ignore dot files when globbing 2018-08-10 16:00:46 -04:00
Tim Pope
dd262b7e21 Decouple routing from repo object 2018-08-06 16:38:49 -04:00
Tim Pope
f91c34069e Decouple Head() from repo object 2018-08-06 16:38:49 -04:00
Tim Pope
40e2dcba05 Delegate to other real filename implementations 2018-08-06 16:38:49 -04:00
Tim Pope
a3e9518186 Fix file API to distinguish between commits 2018-08-06 16:38:49 -04:00
Tim Pope
8c63314381 Report error checking for merge conflict
References https://github.com/tpope/vim-fugitive/issues/756
2018-08-06 11:13:42 -04:00
Tim Pope
12e0151750 Adjust completion of /absolute/paths
Support for an initial slash to access a work tree file is being phased
out.
2018-08-06 10:55:46 -04:00
Tim Pope
887d86e920 Don't strip trailing slash from URLs 2018-08-06 10:54:09 -04:00
Tim Pope
73ed8e8a71 Fix check for empty remote 2018-08-06 01:45:39 -04:00
Tim Pope
4bf7f2fd69 Support :(top) pseudo-pathspecs 2018-08-04 20:13:47 -04:00
Tim Pope
08d471056e Provide fugitive#Prepare() 2018-08-04 20:13:47 -04:00
Tim Pope
969a3d857f Don't escape "!" when calling :terminal 2018-08-04 20:13:47 -04:00
Tim Pope
06b3da7204 Fix shell expansion in :Git! buffers 2018-08-04 18:54:28 -04:00
Tim Pope
db3b837e6e Rewrite :Glog to use string argument rather than list
This makes shell expansion less weird.
2018-08-03 01:35:44 -04:00
Tim Pope
b780bce39b Expand argument to :Gwrite 2018-08-02 22:50:33 -04:00
Tim Pope
a615172b14 Edit index file when no work tree present
Life gets simpler if this function never fails.
2018-08-02 18:39:02 -04:00
Tim Pope
caee67c748 Fix query operations in bare repositories 2018-08-02 18:39:02 -04:00
Tim Pope
1fea1e5821 Support :Gedit /absolute/path when possible
Usage of /relative/path is deprecated in favor of ./relative/path, but
it's still supported on top of this for now.
2018-08-02 15:32:14 -04:00
Tim Pope
80e410c81a Fix :Gedit default from commit to work tree 2018-08-02 15:16:36 -04:00
Tim Pope
84fcfae7f0 Unify shell expansion 2018-08-01 21:49:49 -04:00
Tim Pope
0e948d514c Fix write command with Win32 path 2018-08-01 14:14:38 -04:00
Tim Pope
4eee908ad5 Adjust :Gbrowse range for upstream head 2018-08-01 13:54:12 -04:00
Tim Pope
c1d2fc1a19 Remove filename expansion from buffer object
This has long haunted me as a particularly egregious design, as
expansion of "%" is always respective to the current buffer.
2018-07-31 23:57:38 -04:00
Tim Pope
c85980cd93 Rename s:shellslash() to s:Slash() 2018-07-31 16:39:15 -04:00
Tim Pope
81deb6333a Improve worktree support 2018-07-31 16:39:13 -04:00
Tim Pope
85f340590d Fix :Gbrowse in historical buffers 2018-07-31 15:25:14 -04:00
Tim Pope
c82abd0558 Fix function reference 2018-07-31 02:44:42 -04:00
Tim Pope
d859e05f00 Really fix :Gcd
Closes https://github.com/tpope/vim-fugitive/issues/1071
2018-07-31 02:24:31 -04:00
Tim Pope
3feda7f440 Fix :Gcd
Closes https://github.com/tpope/vim-fugitive/issues/1071
2018-07-31 01:00:14 -04:00
Tim Pope
c9c406a118 Fix extra slash generating work tree filenames
Closes https://github.com/tpope/vim-fugitive/issues/1069
2018-07-30 19:40:47 -04:00
Tim Pope
6c89a3675b Support :Gedit +cmd ++opt 2018-07-30 00:47:26 -04:00
Tim Pope
023ab8e4a6 Eliminate s:repo() and s:buffer() 2018-07-29 22:41:29 -04:00
Tim Pope
da95d96ece Replace s:repo().rev_parse() 2018-07-29 22:41:29 -04:00
Tim Pope
8a0a448f56 Show fake trees when editing directory in index 2018-07-29 15:08:31 -04:00
Tim Pope
004da420e5 Match trailing slash in FugitivePath() 2018-07-29 14:30:51 -04:00
Tim Pope
8b4194047c Rearrange 2018-07-29 14:30:48 -04:00
Tim Pope
716edd4bc0 Redo completion 2018-07-29 00:24:28 -04:00
Tim Pope
70c0f132f5 Fix :Gblame 2018-07-29 00:24:28 -04:00
Tim Pope
a8392e0ebb Fix fugitive#Real() with non-Fugitive URL 2018-07-29 00:24:28 -04:00
Tim Pope
f232e4c6a3 Support completion of local commits for --fixup=/--squash= 2018-07-28 22:05:03 -04:00
Tim Pope
f8fb5eafab Eliminate remaining s:repo().dir() and s:repo().tree() calls 2018-07-28 22:05:03 -04:00
Tim Pope
4f82d241cc Fix jump to file 2018-07-28 22:05:03 -04:00
Tim Pope
f761ea700c Rewrite :Gedit and :Gread 2018-07-28 20:33:28 -04:00
Tim Pope
035cdf44e8 Make fugitive#Prepare() private 2018-07-28 20:33:17 -04:00
Tim Pope
deaf4aa139 Pass absolute paths through FugitiveGenerate() unchanged
This is designed to exclude traditional paths, URLs, and also Vim
constructs like zipfile:c:\foo.zip::file.
2018-07-28 20:33:17 -04:00
Tim Pope
4643363b08 Handle FugitiveReal('') correctly 2018-07-28 19:43:44 -04:00
Tim Pope
c5d4ce7479 Fix map to follow the pattern 2018-07-28 17:37:07 -04:00
Ryo Susami
6eadff1107 Correct the directory separator of Path() on Windows (#1067) 2018-07-28 01:50:51 -04:00
Tim Pope
c68fb3c83a Remove redundant maps 2018-07-27 13:42:11 -04:00
Tim Pope
6c09ce3ab4 Prefer :Gedit to s:Edit() where possible 2018-07-27 13:39:53 -04:00
Tim Pope
cec05fac01 Fix missing :Gblame in work tree files
Closes https://github.com/tpope/vim-fugitive/issues/1066
2018-07-27 08:54:58 -04:00
Tim Pope
4b0475f9d8 Map <CR> in blobs to jump to blamed commit 2018-07-27 01:48:44 -04:00
Tim Pope
8edc9cd006 Work around janky autocommands when returning to diffed window
Closes https://github.com/tpope/vim-fugitive/issues/1065
2018-07-27 01:46:13 -04:00
Tim Pope
382c0a5405 Provide config functions globally
This makes it easier to check for them with exists().
2018-07-27 01:46:13 -04:00
Tim Pope
c472b8f2c1 Provide file permission API 2018-07-27 01:34:49 -04:00
Tim Pope
30c2490b6e Provide file writing API 2018-07-27 01:34:49 -04:00
Tim Pope
5a9b7a593b Provide file deletion API 2018-07-27 01:34:49 -04:00
Tim Pope
4ce8646410 Remove s:repo().aliases() 2018-07-27 01:34:49 -04:00
Tim Pope
321f63ff19 Compartmentalize filetype support 2018-07-27 00:19:57 -04:00
Tim Pope
7f299fbbe3 Eliminate remaining uses of s:buffer().type() 2018-07-27 00:19:57 -04:00
Tim Pope
6d0df81732 Run correct auto-commands for BufWrite and FileWrite 2018-07-26 20:56:26 -04:00
Tim Pope
c3c39d904b Try embedding shell cd if -C not available
Old Git versions lacking -C are often paired with old Vim versions
lacking haslocaldir(), so chance some shell weirdness over screwing up
Vim's local directory.
2018-07-26 15:51:06 -04:00
Tim Pope
6bab1a0c39 Map p to jump to file in preview window
Closes https://github.com/tpope/vim-fugitive/issues/1047
2018-07-25 16:30:54 -04:00
Tim Pope
49c2a4acb5 Revert "Unify jump to file logic"
This reverts commit 73c39195ae, which
broke opening in a different window from :Gstatus.
2018-07-25 16:12:19 -04:00
Tim Pope
73c39195ae Unify jump to file logic 2018-07-25 02:04:48 -04:00
Tim Pope
f818a947ae Map p to in :Gblame to open commit in preview window 2018-07-25 01:06:08 -04:00
Tim Pope
fbaa831e57 Show error on :Gblame jump on uncommitted line 2018-07-25 01:06:08 -04:00
Tim Pope
07d30de8be Return relative paths with second argument to FugitivePath() 2018-07-25 01:04:36 -04:00
Tim Pope
c693da9cb0 Drop support for uppercase statusline indicator
If you want this, I'm happy to bring it back as a separate function.  I
think it's a bit too clever to detect automatically.
2018-07-25 01:04:36 -04:00
Tim Pope
1e7e707696 Preserve trailing slash in FugitiveReal() 2018-07-24 23:13:29 -04:00
Tim Pope
d818ac93af Make bang argument to :Glog explicit
Playing with some changes here and committing this part makes it easier
to reload the plugin after stashing changes.
2018-07-24 23:13:29 -04:00
Tim Pope
286476d58f Fix upwards navigation on "-" 2018-07-24 23:13:29 -04:00
Tim Pope
b78a8ab860 Remove indirection 2018-07-24 23:13:29 -04:00
Tim Pope
e6e3f3f225 Don't :cd if directory already correct 2018-07-24 19:58:01 -04:00
Tim Pope
240127f5a5 Eliminate use of buffer.commit()
Can't add a s:Commit() helper because that's the :Gcommit implementation
function, dang it.
2018-07-24 19:58:01 -04:00
Tim Pope
bfc1745f3b Handle bare repository case when shelling out 2018-07-23 13:55:50 -04:00
Tim Pope
93f29cf831 Fix shelling out from subdirectory
Closes https://github.com/tpope/vim-fugitive/issues/1061
2018-07-23 13:50:48 -04:00
Tim Pope
5879304769 Move GIT_INDEX_FILE override closer to home 2018-07-23 13:50:48 -04:00
Tim Pope
196e448375 Make :Gmove always relative to repository root 2018-07-22 19:16:17 -04:00
Tim Pope
e0b770a9bd Drop instaweb support
I had been considering extracting it, but it's so badly broken that
clearly nobody actually uses it.
2018-07-22 17:33:59 -04:00
Tim Pope
c938737960 Encapsulate fugitive#buffer().relative() 2018-07-22 16:17:17 -04:00