mirror of
https://github.com/vim/vim.git
synced 2025-10-02 05:04:20 -04:00
patch 8.0.1488: emacs tags no longer work
Problem: Emacs tags no longer work. (zdohnal) Solution: Do not skip over end of line.
This commit is contained in:
@@ -2958,12 +2958,9 @@ matching_line_len(char_u *lbuf)
|
||||
char_u *p = lbuf + 1;
|
||||
|
||||
/* does the same thing as parse_match() */
|
||||
p += STRLEN(p) + 2;
|
||||
p += STRLEN(p) + 1;
|
||||
#ifdef FEAT_EMACS_TAGS
|
||||
if (*p)
|
||||
p += STRLEN(p);
|
||||
else
|
||||
++p;
|
||||
p += STRLEN(p) + 1;
|
||||
#endif
|
||||
return (p - lbuf) + STRLEN(p);
|
||||
}
|
||||
|
@@ -229,4 +229,32 @@ func Test_tag_file_encoding()
|
||||
call delete('Xtags1')
|
||||
endfunc
|
||||
|
||||
func Test_tagjump_etags()
|
||||
if !has('emacs_tags')
|
||||
return
|
||||
endif
|
||||
call writefile([
|
||||
\ "void foo() {}",
|
||||
\ "int main(int argc, char **argv)",
|
||||
\ "{",
|
||||
\ "\tfoo();",
|
||||
\ "\treturn 0;",
|
||||
\ "}",
|
||||
\ ], 'Xmain.c')
|
||||
|
||||
call writefile([
|
||||
\ "\x0c",
|
||||
\ "Xmain.c,64",
|
||||
\ "void foo() {}\x7ffoo\x011,0",
|
||||
\ "int main(int argc, char **argv)\x7fmain\x012,14",
|
||||
\ ], 'Xtags')
|
||||
set tags=Xtags
|
||||
ta foo
|
||||
call assert_equal('void foo() {}', getline('.'))
|
||||
|
||||
call delete('Xtags')
|
||||
call delete('Xmain.c')
|
||||
bwipe!
|
||||
endfunc
|
||||
|
||||
" vim: shiftwidth=2 sts=2 expandtab
|
||||
|
@@ -771,6 +771,8 @@ static char *(features[]) =
|
||||
|
||||
static int included_patches[] =
|
||||
{ /* Add new patch number below this line */
|
||||
/**/
|
||||
1488,
|
||||
/**/
|
||||
1487,
|
||||
/**/
|
||||
|
Reference in New Issue
Block a user