diff --git a/7.3.403 b/7.3.403 new file mode 100644 index 0000000..bc3bf54 --- /dev/null +++ b/7.3.403 @@ -0,0 +1,108 @@ +To: vim_dev@googlegroups.com +Subject: Patch 7.3.403 +Fcc: outbox +From: Bram Moolenaar +Mime-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit +------------ + +Patch 7.3.403 +Problem: ":helpgrep" does not trigger QuickFixCmd* autocommands. +Solution: Trigger the autocommands. (Christian Brabandt) +Files: src/quickfix.c + + +*** ../vim-7.3.402/src/quickfix.c 2012-01-20 13:28:28.000000000 +0100 +--- src/quickfix.c 2012-01-20 13:37:10.000000000 +0100 +*************** +*** 3878,3893 **** + qf_info_T *qi = &ql_info; + int new_qi = FALSE; + win_T *wp; +! +! /* Make 'cpoptions' empty, the 'l' flag should not be used here. */ +! save_cpo = p_cpo; +! p_cpo = empty_option; + + #ifdef FEAT_MULTI_LANG + /* Check for a specified language */ + lang = check_help_lang(eap->arg); + #endif + + if (eap->cmdidx == CMD_lhelpgrep) + { + /* Find an existing help window */ +--- 3878,3912 ---- + qf_info_T *qi = &ql_info; + int new_qi = FALSE; + win_T *wp; +! #ifdef FEAT_AUTOCMD +! char_u *au_name = NULL; +! #endif + + #ifdef FEAT_MULTI_LANG + /* Check for a specified language */ + lang = check_help_lang(eap->arg); + #endif + ++ #ifdef FEAT_AUTOCMD ++ switch (eap->cmdidx) ++ { ++ case CMD_helpgrep: au_name = (char_u *)"helpgrep"; break; ++ case CMD_lhelpgrep: au_name = (char_u *)"lhelpgrep"; break; ++ default: break; ++ } ++ if (au_name != NULL) ++ { ++ apply_autocmds(EVENT_QUICKFIXCMDPRE, au_name, ++ curbuf->b_fname, TRUE, curbuf); ++ if (did_throw || force_abort) ++ return; ++ } ++ #endif ++ ++ /* Make 'cpoptions' empty, the 'l' flag should not be used here. */ ++ save_cpo = p_cpo; ++ p_cpo = empty_option; ++ + if (eap->cmdidx == CMD_lhelpgrep) + { + /* Find an existing help window */ +*************** +*** 4036,4041 **** +--- 4055,4071 ---- + qf_update_buffer(qi); + #endif + ++ #ifdef FEAT_AUTOCMD ++ if (au_name != NULL) ++ { ++ apply_autocmds(EVENT_QUICKFIXCMDPOST, au_name, ++ curbuf->b_fname, TRUE, curbuf); ++ if (!new_qi && qi != &ql_info && qf_find_buf(qi) == NULL) ++ /* autocommands made "qi" invalid */ ++ return; ++ } ++ #endif ++ + /* Jump to first match. */ + if (qi->qf_lists[qi->qf_curlist].qf_count > 0) + qf_jump(qi, 0, 0, FALSE); +*** ../vim-7.3.402/src/version.c 2012-01-20 13:28:28.000000000 +0100 +--- src/version.c 2012-01-20 13:30:37.000000000 +0100 +*************** +*** 716,717 **** +--- 716,719 ---- + { /* Add new patch number below this line */ ++ /**/ ++ 403, + /**/ + +-- +Looking at Perl through Lisp glasses, Perl looks atrocious. + + /// 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 ///