Here is a new patch for this enhancement. No changes were made to
the original changes, but the 'cscopequickfix' option was enhanced
to accept the 'a' flag and the cscope help file was updated.
Regards,
Gary
--
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php
diff -rc vim.c0ac5ba66243/runtime/doc/if_cscop.txt vim/runtime/doc/if_cscop.txt
*** vim.c0ac5ba66243/runtime/doc/if_cscop.txt 2012-09-04 18:08:43.401793781 -0700
--- vim/runtime/doc/if_cscop.txt 2012-09-04 18:08:43.405791665 -0700
***************
*** 129,134 ****
--- 129,135 ----
6 or e: Find this egrep pattern
7 or f: Find this file
8 or i: Find files #including this file
+ 9 or a: Find assignments to this symbol
For all types, except 4 and 6, leading white space for {name} is
removed. For 4 and 6 there is exactly one space between {querytype}
***************
*** 255,267 ****
{not available when compiled without the |+quickfix| feature}
'cscopequickfix' specifies whether to use quickfix window to show cscope
results. This is a list of comma-separated values. Each item consists of
! |cscope-find| command (s, g, d, c, t, e, f or i) and flag (+, - or 0).
'+' indicates that results must be appended to quickfix window,
'-' implies previous results clearance, '0' or command absence - don't use
quickfix. Search is performed from start until first command occurrence.
The default value is "" (don't use quickfix anyway). The following value
seems to be useful: >
! :set cscopequickfix=s-,c-,d-,i-,t-,e-
<
*cscopetag* *cst*
If 'cscopetag' is set, the commands ":tag" and CTRL-] as well as "vim -t"
--- 256,268 ----
{not available when compiled without the |+quickfix| feature}
'cscopequickfix' specifies whether to use quickfix window to show cscope
results. This is a list of comma-separated values. Each item consists of
! |cscope-find| command (s, g, d, c, t, e, f, i or a) and flag (+, - or 0).
'+' indicates that results must be appended to quickfix window,
'-' implies previous results clearance, '0' or command absence - don't use
quickfix. Search is performed from start until first command occurrence.
The default value is "" (don't use quickfix anyway). The following value
seems to be useful: >
! :set cscopequickfix=s-,c-,d-,i-,t-,e-,a-
<
*cscopetag* *cst*
If 'cscopetag' is set, the commands ":tag" and CTRL-] as well as "vim -t"
***************
*** 422,427 ****
--- 423,429 ----
nmap <C-_>f :cs find f <C-R>=expand("<cfile>")<CR><CR>
nmap <C-_>i :cs find i ^<C-R>=expand("<cfile>")<CR>$<CR>
nmap <C-_>d :cs find d <C-R>=expand("<cword>")<CR><CR>
+ nmap <C-_>a :cs find a <C-R>=expand("<cword>")<CR><CR>
" Using 'CTRL-spacebar' then a search type makes the vim window
" split horizontally, with search result displayed in
***************
*** 435,440 ****
--- 437,443 ----
nmap <C-Space>f :scs find f <C-R>=expand("<cfile>")<CR><CR>
nmap <C-Space>i :scs find i ^<C-R>=expand("<cfile>")<CR>$<CR>
nmap <C-Space>d :scs find d <C-R>=expand("<cword>")<CR><CR>
+ nmap <C-Space>a :scs find a <C-R>=expand("<cword>")<CR><CR>
" Hitting CTRL-space *twice* before the search type does a vertical
" split instead of a horizontal one
***************
*** 453,458 ****
--- 456,463 ----
\:vert scs find i ^<C-R>=expand("<cfile>")<CR>$<CR>
nmap <C-Space><C-Space>d
\:vert scs find d <C-R>=expand("<cword>")<CR><CR>
+ nmap <C-Space><C-Space>a
+ \:vert scs find a <C-R>=expand("<cword>")<CR><CR>
==============================================================================
7. Cscope availability and information *cscope-info*
diff -rc vim.c0ac5ba66243/src/if_cscope.c vim/src/if_cscope.c
*** vim.c0ac5ba66243/src/if_cscope.c 2012-09-04 18:08:43.399789504 -0700
--- vim/src/if_cscope.c 2012-09-04 18:08:43.407726363 -0700
***************
*** 792,797 ****
--- 792,800 ----
case '8' : case 'i' :
search = 8;
break;
+ case '9' : case 'a' :
+ search = 9;
+ break;
default :
(void)EMSG(_("E561: unknown cscope search type"));
cs_usage_msg(Find);
***************
*** 1145,1150 ****
--- 1148,1156 ----
case '8' :
cmdletter = 'i';
break;
+ case '9' :
+ cmdletter = 'a';
+ break;
default :
cmdletter = opt[0];
}
***************
*** 1338,1343 ****
--- 1344,1350 ----
cmdp->usage);
if (strcmp(cmdp->name, "find") == 0)
MSG_PUTS(_("\n"
+ " a: Find assignments to this symbol\n"
" c: Find functions calling this function\n"
" d: Find functions called by this function\n"
" e: Find this egrep pattern\n"
diff -rc vim.c0ac5ba66243/src/if_cscope.h vim/src/if_cscope.h
*** vim.c0ac5ba66243/src/if_cscope.h 2012-09-04 18:08:43.404790053 -0700
--- vim/src/if_cscope.h 2012-09-04 18:08:43.406791289 -0700
***************
*** 35,45 ****
* d 2name Find functions called by this function
* c 3name Find functions calling this function
* t 4string find text string (cscope 12.9)
- * t 4name Find assignments to (cscope 13.3)
* 5pattern change pattern -- NOT USED
* e 6pattern Find this egrep pattern
* f 7name Find this file
* i 8name Find files #including this file
*/
typedef struct {
--- 35,45 ----
* d 2name Find functions called by this function
* c 3name Find functions calling this function
* t 4string find text string (cscope 12.9)
* 5pattern change pattern -- NOT USED
* e 6pattern Find this egrep pattern
* f 7name Find this file
* i 8name Find files #including this file
+ * a 9name Find assignments to (cscope 15.8)
*/
typedef struct {
diff -rc vim.c0ac5ba66243/src/option.h vim/src/option.h
*** vim.c0ac5ba66243/src/option.h 2012-09-04 18:08:43.403791622 -0700
--- vim/src/option.h 2012-09-04 18:08:43.408793304 -0700
***************
*** 398,404 ****
EXTERN int p_csre; /* 'cscoperelative' */
# ifdef FEAT_QUICKFIX
EXTERN char_u *p_csqf; /* 'cscopequickfix' */
! # define CSQF_CMDS "sgdctefi"
# define CSQF_FLAGS "+-0"
# endif
EXTERN int p_cst; /* 'cscopetag' */
--- 398,404 ----
EXTERN int p_csre; /* 'cscoperelative' */
# ifdef FEAT_QUICKFIX
EXTERN char_u *p_csqf; /* 'cscopequickfix' */
! # define CSQF_CMDS "sgdctefia"
# define CSQF_FLAGS "+-0"
# endif
EXTERN int p_cst; /* 'cscopetag' */