annotate src/protodef.h @ 33713:9aa03e12b2b5 v9.0.2090

patch 9.0.2090: complete_info() skips entries with 'noselect' Commit: https://github.com/vim/vim/commit/57f9ce1a0977da13e5923214086795ffa2d28ce1 Author: Christian Brabandt <cb@256bit.org> Date: Sat Nov 4 09:58:14 2023 +0100 patch 9.0.2090: complete_info() skips entries with 'noselect' Problem: complete_info() skips entries with 'noselect' Solution: Check, if first entry is at original text state Unfortunately, Commit daef8c74375141974d61b85199b383017644978c introduced a regression, that when ':set completeopt+=noselect' is set and no completion item has been selected yet, it did not fill the complete_info['items'] list. This happened, because the current match item did not have the CP_ORIGINAL_TEXT flag set and then the cp->prev pointer did point to the original flag item, which caused the following while loop to not being run but being skipped instead. So when the 'noselect' is set, only start with to the previous selection item, if the initial completion item has the CP_ORIGINAL_TEXT flag set, else use the 2nd previous item instead. fixes: #13451 closes: #13452 Signed-off-by: Christian Brabandt <cb@256bit.org>
author Christian Brabandt <cb@256bit.org>
date Sat, 04 Nov 2023 10:15:04 +0100
parents 3e9b24eac417
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
14736
3e9b24eac417 patch 8.1.0380: "make proto" doesn't work well
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1 /* vi:set ts=8 sts=4 sw=4 noet:
3e9b24eac417 patch 8.1.0380: "make proto" doesn't work well
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2 *
3e9b24eac417 patch 8.1.0380: "make proto" doesn't work well
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
3 * VIM - Vi IMproved by Bram Moolenaar
3e9b24eac417 patch 8.1.0380: "make proto" doesn't work well
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
4 *
3e9b24eac417 patch 8.1.0380: "make proto" doesn't work well
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
5 * Do ":help uganda" in Vim to read copying and usage conditions.
3e9b24eac417 patch 8.1.0380: "make proto" doesn't work well
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
6 * Do ":help credits" in Vim to see a list of people who contributed.
3e9b24eac417 patch 8.1.0380: "make proto" doesn't work well
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
7 */
3e9b24eac417 patch 8.1.0380: "make proto" doesn't work well
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
8
3e9b24eac417 patch 8.1.0380: "make proto" doesn't work well
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
9 #ifdef PROTO
3e9b24eac417 patch 8.1.0380: "make proto" doesn't work well
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
10 // cproto runs into trouble when these types are missing
3e9b24eac417 patch 8.1.0380: "make proto" doesn't work well
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
11 typedef double _Float16;
3e9b24eac417 patch 8.1.0380: "make proto" doesn't work well
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
12 typedef double _Float32;
3e9b24eac417 patch 8.1.0380: "make proto" doesn't work well
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
13 typedef double _Float64;
3e9b24eac417 patch 8.1.0380: "make proto" doesn't work well
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
14 typedef double _Float128;
3e9b24eac417 patch 8.1.0380: "make proto" doesn't work well
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
15 typedef double _Float32x;
3e9b24eac417 patch 8.1.0380: "make proto" doesn't work well
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
16 typedef double _Float64x;
3e9b24eac417 patch 8.1.0380: "make proto" doesn't work well
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
17 #endif
3e9b24eac417 patch 8.1.0380: "make proto" doesn't work well
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
18