summaryrefslogtreecommitdiffstats
path: root/source/ap/vim/patches/7.3.468
blob: e078f9eae1d6b3894314aeea47d743e771e5dbfd (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
To: vim_dev@googlegroups.com
Subject: Patch 7.3.468
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
------------

Patch 7.3.468
Problem:    For some compilers the error file is not easily readable.
Solution:   Use QuickFixCmdPre for more commands. (Marcin Szamotulski)
Files:	    runtime/doc/autocmd.txt, src/quickfix.c


*** ../vim-7.3.467/runtime/doc/autocmd.txt	2012-02-12 20:13:55.000000000 +0100
--- runtime/doc/autocmd.txt	2012-03-07 20:07:23.000000000 +0100
***************
*** 695,701 ****
  QuickFixCmdPre			Before a quickfix command is run (|:make|,
  				|:lmake|, |:grep|, |:lgrep|, |:grepadd|,
  				|:lgrepadd|, |:vimgrep|, |:lvimgrep|,
! 				|:vimgrepadd|, |:lvimgrepadd|, |:cscope|).
  				The pattern is matched against the command
  				being run.  When |:grep| is used but 'grepprg'
  				is set to "internal" it still matches "grep".
--- 699,708 ----
  QuickFixCmdPre			Before a quickfix command is run (|:make|,
  				|:lmake|, |:grep|, |:lgrep|, |:grepadd|,
  				|:lgrepadd|, |:vimgrep|, |:lvimgrep|,
! 				|:vimgrepadd|, |:lvimgrepadd|, |:cscope|,
! 				|:cfile|, |:cgetfile|, |:caddfile|, |:lfile|,
! 				|:lgetfile|, |:laddfile|, |:helpgrep|,
! 				|:lhelpgrep|).
  				The pattern is matched against the command
  				being run.  When |:grep| is used but 'grepprg'
  				is set to "internal" it still matches "grep".
***************
*** 706,712 ****
  							*QuickFixCmdPost*
  QuickFixCmdPost			Like QuickFixCmdPre, but after a quickfix
  				command is run, before jumping to the first
! 				location.  See |QuickFixCmdPost-example|.
  							*RemoteReply*
  RemoteReply			When a reply from a Vim that functions as
  				server was received |server2client()|.  The
--- 713,722 ----
  							*QuickFixCmdPost*
  QuickFixCmdPost			Like QuickFixCmdPre, but after a quickfix
  				command is run, before jumping to the first
! 				location. For |:cfile| and |:lfile| commands
! 				it is run after error file is read and before
! 				moving to the first error. 
! 				See |QuickFixCmdPost-example|.
  							*RemoteReply*
  RemoteReply			When a reply from a Vim that functions as
  				server was received |server2client()|.  The
*** ../vim-7.3.467/src/quickfix.c	2012-02-22 14:58:24.000000000 +0100
--- src/quickfix.c	2012-03-07 20:10:07.000000000 +0100
***************
*** 2995,3005 ****
  {
      win_T	*wp = NULL;
      qf_info_T	*qi = &ql_info;
  
      if (eap->cmdidx == CMD_lfile || eap->cmdidx == CMD_lgetfile
! 	|| eap->cmdidx == CMD_laddfile)
  	wp = curwin;
  
  #ifdef FEAT_BROWSE
      if (cmdmod.browse)
      {
--- 2995,3022 ----
  {
      win_T	*wp = NULL;
      qf_info_T	*qi = &ql_info;
+ #ifdef FEAT_AUTOCMD
+     char_u	*au_name = NULL;
+ #endif
  
      if (eap->cmdidx == CMD_lfile || eap->cmdidx == CMD_lgetfile
! 					       || eap->cmdidx == CMD_laddfile)
  	wp = curwin;
  
+ #ifdef FEAT_AUTOCMD
+     switch (eap->cmdidx)
+     {
+ 	case CMD_cfile:	    au_name = (char_u *)"cfile"; break;
+ 	case CMD_cgetfile:  au_name = (char_u *)"cgetfile"; break;
+ 	case CMD_caddfile:  au_name = (char_u *)"caddfile"; break;
+ 	case CMD_lfile:	    au_name = (char_u *)"lfile"; break;
+ 	case CMD_lgetfile:  au_name = (char_u *)"lgetfile"; break;
+ 	case CMD_laddfile:  au_name = (char_u *)"laddfile"; break;
+ 	default: break;
+     }
+     if (au_name != NULL)
+ 	apply_autocmds(EVENT_QUICKFIXCMDPRE, au_name, NULL, FALSE, curbuf);
+ #endif
  #ifdef FEAT_BROWSE
      if (cmdmod.browse)
      {
***************
*** 3031,3040 ****
--- 3048,3069 ----
  				  && (eap->cmdidx == CMD_cfile
  					     || eap->cmdidx == CMD_lfile))
      {
+ #ifdef FEAT_AUTOCMD
+ 	if (au_name != NULL)
+ 	    apply_autocmds(EVENT_QUICKFIXCMDPOST, au_name, NULL, FALSE, curbuf);
+ #endif
  	if (wp != NULL)
  	    qi = GET_LOC_LIST(wp);
  	qf_jump(qi, 0, 0, eap->forceit);	/* display first error */
      }
+ 
+     else
+     {
+ #ifdef FEAT_AUTOCMD
+ 	if (au_name != NULL)
+ 	    apply_autocmds(EVENT_QUICKFIXCMDPOST, au_name, NULL, FALSE, curbuf);
+ #endif
+     }
  }
  
  /*
*** ../vim-7.3.467/src/version.c	2012-03-07 19:38:52.000000000 +0100
--- src/version.c	2012-03-07 20:11:54.000000000 +0100
***************
*** 716,717 ****
--- 716,719 ----
  {   /* Add new patch number below this line */
+ /**/
+     468,
  /**/

-- 
hundred-and-one symptoms of being an internet addict:
155. You forget to eat because you're too busy surfing the net.

 /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net   \\\
///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\  an exciting new programming language -- http://www.Zimbu.org        ///
 \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///