summaryrefslogtreecommitdiff
path: root/data/vim/patches/8.1.0665
diff options
context:
space:
mode:
Diffstat (limited to 'data/vim/patches/8.1.0665')
-rw-r--r--data/vim/patches/8.1.0665234
1 files changed, 0 insertions, 234 deletions
diff --git a/data/vim/patches/8.1.0665 b/data/vim/patches/8.1.0665
deleted file mode 100644
index ec258e96f..000000000
--- a/data/vim/patches/8.1.0665
+++ /dev/null
@@ -1,234 +0,0 @@
-To: vim_dev@googlegroups.com
-Subject: Patch 8.1.0665
-Fcc: outbox
-From: Bram Moolenaar <Bram@moolenaar.net>
-Mime-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-------------
-
-Patch 8.1.0665
-Problem: Text property display wrong when 'spell' is set. (Dominique Pelle)
-Solution: Remove unnecessary assignment to char_attr. Combine attributes if
- needed. Add a screenshot test.
-Files: src/screen.c, src/testdir/test_textprop.vim,
- src/testdir/dumps/Test_textprop_01.dump
-
-
-*** ../vim-8.1.0664/src/screen.c 2018-12-30 22:07:35.596868093 +0100
---- src/screen.c 2018-12-31 13:38:32.001788595 +0100
-***************
-*** 3051,3056 ****
---- 3051,3088 ----
- }
- #endif /* FEAT_FOLDING */
-
-+ #ifdef FEAT_TEXT_PROP
-+ static textprop_T *current_text_props = NULL;
-+ static buf_T *current_buf = NULL;
-+
-+ static int
-+ #ifdef __BORLANDC__
-+ _RTLENTRYF
-+ #endif
-+ text_prop_compare(const void *s1, const void *s2)
-+ {
-+ int idx1, idx2;
-+ proptype_T *pt1, *pt2;
-+ colnr_T col1, col2;
-+
-+ idx1 = *(int *)s1;
-+ idx2 = *(int *)s2;
-+ pt1 = text_prop_type_by_id(current_buf, current_text_props[idx1].tp_type);
-+ pt2 = text_prop_type_by_id(current_buf, current_text_props[idx2].tp_type);
-+ if (pt1 == pt2)
-+ return 0;
-+ if (pt1 == NULL)
-+ return -1;
-+ if (pt2 == NULL)
-+ return 1;
-+ if (pt1->pt_priority != pt2->pt_priority)
-+ return pt1->pt_priority > pt2->pt_priority ? 1 : -1;
-+ col1 = current_text_props[idx1].tp_col;
-+ col2 = current_text_props[idx2].tp_col;
-+ return col1 == col2 ? 0 : col1 > col2 ? 1 : -1;
-+ }
-+ #endif
-+
- /*
- * Display line "lnum" of window 'wp' on the screen.
- * Start at row "startrow", stop when "endrow" is reached.
-***************
-*** 4322,4355 ****
- && vcol >= text_props[text_prop_next].tp_col - 1)
- text_prop_idxs[text_props_active++] = text_prop_next++;
-
-! text_prop_type = NULL;
- if (text_props_active > 0)
- {
-! int max_priority = INT_MIN;
-! int max_col = 0;
-
-- // Get the property type with the highest priority
-- // and/or starting last.
- for (pi = 0; pi < text_props_active; ++pi)
- {
-! int tpi = text_prop_idxs[pi];
-! proptype_T *pt;
-
-! pt = text_prop_type_by_id(
-! curwin->w_buffer, text_props[tpi].tp_type);
-! if (pt != NULL
-! && (pt->pt_priority > max_priority
-! || (pt->pt_priority == max_priority
-! && text_props[tpi].tp_col >= max_col)))
- {
- text_prop_type = pt;
-! max_priority = pt->pt_priority;
-! max_col = text_props[tpi].tp_col;
- }
- }
-- if (text_prop_type != NULL)
-- text_prop_attr =
-- syn_id2attr(text_prop_type->pt_hl_id);
- }
- }
- #endif
---- 4354,4385 ----
- && vcol >= text_props[text_prop_next].tp_col - 1)
- text_prop_idxs[text_props_active++] = text_prop_next++;
-
-! text_prop_attr = 0;
- if (text_props_active > 0)
- {
-! // Sort the properties on priority and/or starting last.
-! // Then combine the attributes, highest priority last.
-! current_text_props = text_props;
-! current_buf = wp->w_buffer;
-! qsort((void *)text_prop_idxs, (size_t)text_props_active,
-! sizeof(int), text_prop_compare);
-
- for (pi = 0; pi < text_props_active; ++pi)
- {
-! int tpi = text_prop_idxs[pi];
-! proptype_T *pt = text_prop_type_by_id(wp->w_buffer, text_props[tpi].tp_type);
-
-! if (pt != NULL)
- {
-+ int pt_attr = syn_id2attr(pt->pt_hl_id);
-+
- text_prop_type = pt;
-! if (text_prop_attr == 0)
-! text_prop_attr = pt_attr;
-! else
-! text_prop_attr = hl_combine_attr(text_prop_attr, pt_attr);
- }
- }
- }
- }
- #endif
-***************
-*** 4775,4784 ****
- if (has_spell && v >= word_end && v > cur_checked_col)
- {
- spell_attr = 0;
-- # ifdef FEAT_SYN_HL
-- if (!attr_pri)
-- char_attr = syntax_attr;
-- # endif
- if (c != 0 && (
- # ifdef FEAT_SYN_HL
- !has_syntax ||
---- 4805,4810 ----
-*** ../vim-8.1.0664/src/testdir/test_textprop.vim 2018-12-28 23:22:36.270750732 +0100
---- src/testdir/test_textprop.vim 2018-12-31 12:41:37.979473855 +0100
-***************
-*** 5,10 ****
---- 5,12 ----
- finish
- endif
-
-+ source screendump.vim
-+
- func Test_proptype_global()
- call prop_type_add('comment', {'highlight': 'Directory', 'priority': 123, 'start_incl': 1, 'end_incl': 1})
- let proptypes = prop_type_list()
-***************
-*** 283,287 ****
- call prop_type_delete('comment')
- endfunc
-
-!
-! " TODO: screenshot test with highlighting
---- 285,311 ----
- call prop_type_delete('comment')
- endfunc
-
-! " screenshot test with textprop highlighting
-! funct Test_textprop_screenshots()
-! if !CanRunVimInTerminal()
-! return
-! endif
-! call writefile([
-! \ "call setline(1, ['One two', 'Number 123 and then 4567.', 'Three'])",
-! \ "hi NumberProp ctermfg=blue",
-! \ "hi LongProp ctermbg=yellow",
-! \ "call prop_type_add('number', {'highlight': 'NumberProp'})",
-! \ "call prop_type_add('long', {'highlight': 'LongProp'})",
-! \ "call prop_add(1, 4, {'end_lnum': 3, 'end_col': 3, 'type': 'long'})",
-! \ "call prop_add(2, 8, {'length': 3, 'type': 'number'})",
-! \ "call prop_add(2, 21, {'length': 4, 'type': 'number'})",
-! \ "set number",
-! \ "set spell",
-! \], 'XtestProp')
-! let buf = RunVimInTerminal('-S XtestProp', {})
-! call VerifyScreenDump(buf, 'Test_textprop_01', {})
-!
-! " clean up
-! call StopVimInTerminal(buf)
-! call delete('Xtest_folds_with_rnu')
-! endfunc
-*** ../vim-8.1.0664/src/testdir/dumps/Test_textprop_01.dump 2018-12-31 13:54:54.313537883 +0100
---- src/testdir/dumps/Test_textprop_01.dump 2018-12-31 12:43:50.366431472 +0100
-***************
-*** 0 ****
---- 1,20 ----
-+ | +0#af5f00255#ffffff0@1|1| >O+0#0000000&|n|e| +0&#ffff4012|t|w|o| +0&#ffffff0@63
-+ | +0#af5f00255&@1|2| |N+0#0000000#ffff4012|u|m|b|e|r| |1+0#4040ff13#ffffff0|2|3| +0#0000000#ffff4012|a|n|d| |t|h|e|n| |4+0#4040ff13#ffffff0|5|6|7|.+0#0000000#ffff4012| +0&#ffffff0@45
-+ | +0#af5f00255&@1|3| |T+0#0000000#ffff4012|h|r|e+0&#ffffff0@1| @65
-+ |~+0#4040ff13&| @73
-+ |~| @73
-+ |~| @73
-+ |~| @73
-+ |~| @73
-+ |~| @73
-+ |~| @73
-+ |~| @73
-+ |~| @73
-+ |~| @73
-+ |~| @73
-+ |~| @73
-+ |~| @73
-+ |~| @73
-+ |~| @73
-+ |~| @73
-+ | +0#0000000&@56|1|,|1| @10|A|l@1|
-*** ../vim-8.1.0664/src/version.c 2018-12-30 22:55:43.671136682 +0100
---- src/version.c 2018-12-31 12:16:31.671760142 +0100
-***************
-*** 801,802 ****
---- 801,804 ----
- { /* Add new patch number below this line */
-+ /**/
-+ 665,
- /**/
-
---
-hundred-and-one symptoms of being an internet addict:
-91. It's Saturday afternoon in the middle of May and you
- are on computer.
-
- /// 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 ///