home *** CD-ROM | disk | FTP | other *** search
- To: vim-dev@vim.org
- Subject: Patch 7.0.068
- Fcc: outbox
- From: Bram Moolenaar <Bram@moolenaar.net>
- Mime-Version: 1.0
- Content-Type: text/plain; charset=ISO-8859-1
- Content-Transfer-Encoding: 8bit
- ------------
-
- Patch 7.0.068
- Problem: When 'ignorecase' is set and using Insert mode completion,
- typing characters to change the list of matches, case is not
- ignored. (Hugo Ahlenius)
- Solution: Store the 'ignorecase' flag with the matches where needed.
- Files: src/edit.c, src/search.c, src/spell.c
-
-
- *** ../vim-7.0.067/src/edit.c Tue Aug 29 16:10:54 2006
- --- src/edit.c Tue Aug 29 14:57:46 2006
- ***************
- *** 2405,2411 ****
- /* compl_pattern doesn't need to be set */
- compl_orig_text = vim_strnsave(ml_get_curline() + compl_col, compl_length);
- if (compl_orig_text == NULL || ins_compl_add(compl_orig_text,
- ! -1, FALSE, NULL, NULL, 0, ORIGINAL_TEXT, FALSE) != OK)
- return;
-
- /* Handle like dictionary completion. */
- --- 2405,2411 ----
- /* compl_pattern doesn't need to be set */
- compl_orig_text = vim_strnsave(ml_get_curline() + compl_col, compl_length);
- if (compl_orig_text == NULL || ins_compl_add(compl_orig_text,
- ! -1, p_ic, NULL, NULL, 0, ORIGINAL_TEXT, FALSE) != OK)
- return;
-
- /* Handle like dictionary completion. */
- ***************
- *** 2821,2827 ****
- ptr = find_word_end(ptr);
- add_r = ins_compl_add_infercase(regmatch->startp[0],
- (int)(ptr - regmatch->startp[0]),
- ! FALSE, files[i], *dir, 0);
- if (thesaurus)
- {
- char_u *wstart;
- --- 2821,2827 ----
- ptr = find_word_end(ptr);
- add_r = ins_compl_add_infercase(regmatch->startp[0],
- (int)(ptr - regmatch->startp[0]),
- ! p_ic, files[i], *dir, 0);
- if (thesaurus)
- {
- char_u *wstart;
- ***************
- *** 2857,2863 ****
- ptr = find_word_end(ptr);
- add_r = ins_compl_add_infercase(wstart,
- (int)(ptr - wstart),
- ! FALSE, files[i], *dir, 0);
- }
- }
- if (add_r == OK)
- --- 2857,2863 ----
- ptr = find_word_end(ptr);
- add_r = ins_compl_add_infercase(wstart,
- (int)(ptr - wstart),
- ! p_ic, files[i], *dir, 0);
- }
- }
- if (add_r == OK)
- ***************
- *** 3826,3832 ****
- TAG_INS_COMP | (ctrl_x_mode ? TAG_VERBOSE : 0),
- TAG_MANY, curbuf->b_ffname) == OK && num_matches > 0)
- {
- ! ins_compl_add_matches(num_matches, matches, FALSE);
- }
- p_ic = save_p_ic;
- break;
- --- 3826,3832 ----
- TAG_INS_COMP | (ctrl_x_mode ? TAG_VERBOSE : 0),
- TAG_MANY, curbuf->b_ffname) == OK && num_matches > 0)
- {
- ! ins_compl_add_matches(num_matches, matches, p_ic);
- }
- p_ic = save_p_ic;
- break;
- ***************
- *** 3867,3873 ****
- num_matches = expand_spelling(first_match_pos.lnum,
- first_match_pos.col, compl_pattern, &matches);
- if (num_matches > 0)
- ! ins_compl_add_matches(num_matches, matches, FALSE);
- #endif
- break;
-
- --- 3867,3873 ----
- num_matches = expand_spelling(first_match_pos.lnum,
- first_match_pos.col, compl_pattern, &matches);
- if (num_matches > 0)
- ! ins_compl_add_matches(num_matches, matches, p_ic);
- #endif
- break;
-
- ***************
- *** 4001,4007 ****
- continue;
- }
- }
- ! if (ins_compl_add_infercase(ptr, len, FALSE,
- ins_buf == curbuf ? NULL : ins_buf->b_sfname,
- 0, flags) != NOTDONE)
- {
- --- 4001,4007 ----
- continue;
- }
- }
- ! if (ins_compl_add_infercase(ptr, len, p_ic,
- ins_buf == curbuf ? NULL : ins_buf->b_sfname,
- 0, flags) != NOTDONE)
- {
- ***************
- *** 4809,4815 ****
- vim_free(compl_orig_text);
- compl_orig_text = vim_strnsave(line + compl_col, compl_length);
- if (compl_orig_text == NULL || ins_compl_add(compl_orig_text,
- ! -1, FALSE, NULL, NULL, 0, ORIGINAL_TEXT, FALSE) != OK)
- {
- vim_free(compl_pattern);
- compl_pattern = NULL;
- --- 4809,4815 ----
- vim_free(compl_orig_text);
- compl_orig_text = vim_strnsave(line + compl_col, compl_length);
- if (compl_orig_text == NULL || ins_compl_add(compl_orig_text,
- ! -1, p_ic, NULL, NULL, 0, ORIGINAL_TEXT, FALSE) != OK)
- {
- vim_free(compl_pattern);
- compl_pattern = NULL;
- *** ../vim-7.0.067/src/search.c Fri May 5 23:15:17 2006
- --- src/search.c Tue Aug 29 14:56:15 2006
- ***************
- *** 4871,4877 ****
- goto exit_matched;
- }
-
- ! add_r = ins_compl_add_infercase(aux, i, FALSE,
- curr_fname == curbuf->b_fname ? NULL : curr_fname,
- dir, reuse);
- if (add_r == OK)
- --- 4876,4882 ----
- goto exit_matched;
- }
-
- ! add_r = ins_compl_add_infercase(aux, i, p_ic,
- curr_fname == curbuf->b_fname ? NULL : curr_fname,
- dir, reuse);
- if (add_r == OK)
- *** ../vim-7.0.067/src/spell.c Sun Jul 23 21:52:16 2006
- --- src/spell.c Tue Aug 29 14:56:26 2006
- ***************
- *** 15658,15664 ****
- ? MB_STRNICMP(p, pat, STRLEN(pat)) == 0
- : STRNCMP(p, pat, STRLEN(pat)) == 0)
- && ins_compl_add_infercase(p, (int)STRLEN(p),
- ! FALSE, NULL, *dir, 0) == OK)
- /* if dir was BACKWARD then honor it just once */
- *dir = FORWARD;
- }
- --- 15662,15668 ----
- ? MB_STRNICMP(p, pat, STRLEN(pat)) == 0
- : STRNCMP(p, pat, STRLEN(pat)) == 0)
- && ins_compl_add_infercase(p, (int)STRLEN(p),
- ! p_ic, NULL, *dir, 0) == OK)
- /* if dir was BACKWARD then honor it just once */
- *dir = FORWARD;
- }
- *** ../vim-7.0.067/src/version.c Tue Aug 29 16:10:54 2006
- --- src/version.c Tue Aug 29 16:13:49 2006
- ***************
- *** 668,669 ****
- --- 668,671 ----
- { /* Add new patch number below this line */
- + /**/
- + 68,
- /**/
-
- --
- hundred-and-one symptoms of being an internet addict:
- 266. You hear most of your jokes via e-mail instead of in person.
-
- /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net \\\
- /// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
- \\\ download, build and distribute -- http://www.A-A-P.org ///
- \\\ help me help AIDS victims -- http://ICCF-Holland.org ///
-