Mercurial > vim
annotate .appveyor.yml @ 33674:021e5bb88513 v9.0.2074
patch 9.0.2074: Completion menu may be wrong
Commit: https://github.com/vim/vim/commit/daef8c74375141974d61b85199b383017644978c
Author: Christian Brabandt <cb@256bit.org>
Date: Fri Oct 27 19:16:26 2023 +0200
patch 9.0.2074: Completion menu may be wrong
Problem: Completion menu may be wrong
Solution: Check for the original direction of the completion menu,
add more tests, make it work with 'noselect'
completion: move in right direction when filling completion_info()
When moving through the insert completion menu and switching directions,
we need to make sure we start at the correct position in the list and
move correctly forward/backwards through it, so that we do not skip
entries and the selected item points to the correct entry in the list
of completion entries generated by the completion_info() function.
The general case is this:
1) CTRL-X CTRL-N, we will traverse the list starting from
compl_first_match and then go forwards (using the cp->next pointer)
through the list (skipping the very first entry, which has the
CP_ORIGINAL_TEXT flag set (since that is the empty/non-selected entry
2) CTRL-X CTRL-P, we will traverse the list starting from
compl_first_match (which now points to the last entry). The previous
entry will have the CP_ORIGINAL_TEXT flag set, so we need to start
traversing the list from the second prev pointer.
There are in fact 2 special cases after starting the completion menu
with CTRL-X:
3) CTRL-N and then going backwards by pressing CTRL-P again.
compl_first_match will point to the same entry as in step 1 above,
but since compl_dir_foward() has been switched by pressing CTRL-P
to backwards we need to pretend to be in still in case 1 and still
traverse the list in forward direction using the cp_next pointer
4) CTRL-P and then going forwards by pressing CTRL-N again.
compl_first_match will point to the same entry as in step 2 above,
but since compl_dir_foward() has been switched by pressing CTRL-N
to forwards we need to pretend to be in still in case 2 and still
traverse the list in backward direction using the cp_prev pointer
For the 'noselect' case however, this is slightly different again. When
going backwards, we only need to go one cp_prev pointer back. And
resting of the direction works again slightly different. So we need to
take the noselect option into account when deciding in which direction
to iterate through the list of matches.
related: #13402
related: #12971
closes: #13408
Signed-off-by: Christian Brabandt <cb@256bit.org>
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Fri, 27 Oct 2023 19:30:05 +0200 |
parents | 93c715c63a4a |
children |
rev | line source |
---|---|
7121
a497a9868255
commit https://github.com/vim/vim/commit/0600f3511c6018cbcdb170a904bcf6533a06bf2d
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
1 version: "{build}" |
a497a9868255
commit https://github.com/vim/vim/commit/0600f3511c6018cbcdb170a904bcf6533a06bf2d
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
2 |
31716
9dd5bc4f2783
patch 9.0.1190: AppVeyor runs much slower with MSVC 2022
Bram Moolenaar <Bram@vim.org>
parents:
31690
diff
changeset
|
3 image: Visual Studio 2015 |
31628
238f424acc6c
patch 9.0.1146: MS-Windows: various special keys/modifiers are not mappable
Bram Moolenaar <Bram@vim.org>
parents:
31561
diff
changeset
|
4 |
8244
acc8029e530f
commit https://github.com/vim/vim/commit/84f4996d2ab2982006d79ee69df4688c966bf8e8
Christian Brabandt <cb@256bit.org>
parents:
8242
diff
changeset
|
5 skip_tags: true |
acc8029e530f
commit https://github.com/vim/vim/commit/84f4996d2ab2982006d79ee69df4688c966bf8e8
Christian Brabandt <cb@256bit.org>
parents:
8242
diff
changeset
|
6 |
8242
1313d2e282dc
commit https://github.com/vim/vim/commit/81275ca9ce3059148fdb65dff29f7ecdbca446fb
Christian Brabandt <cb@256bit.org>
parents:
7370
diff
changeset
|
7 environment: |
1313d2e282dc
commit https://github.com/vim/vim/commit/81275ca9ce3059148fdb65dff29f7ecdbca446fb
Christian Brabandt <cb@256bit.org>
parents:
7370
diff
changeset
|
8 matrix: |
1313d2e282dc
commit https://github.com/vim/vim/commit/81275ca9ce3059148fdb65dff29f7ecdbca446fb
Christian Brabandt <cb@256bit.org>
parents:
7370
diff
changeset
|
9 - FEATURE: HUGE |
31716
9dd5bc4f2783
patch 9.0.1190: AppVeyor runs much slower with MSVC 2022
Bram Moolenaar <Bram@vim.org>
parents:
31690
diff
changeset
|
10 |
9dd5bc4f2783
patch 9.0.1190: AppVeyor runs much slower with MSVC 2022
Bram Moolenaar <Bram@vim.org>
parents:
31690
diff
changeset
|
11 # Alternate environments, not used right now. 2022 is a lot slower. |
9dd5bc4f2783
patch 9.0.1190: AppVeyor runs much slower with MSVC 2022
Bram Moolenaar <Bram@vim.org>
parents:
31690
diff
changeset
|
12 # |
9dd5bc4f2783
patch 9.0.1190: AppVeyor runs much slower with MSVC 2022
Bram Moolenaar <Bram@vim.org>
parents:
31690
diff
changeset
|
13 # - job_name: VS-2015 |
9dd5bc4f2783
patch 9.0.1190: AppVeyor runs much slower with MSVC 2022
Bram Moolenaar <Bram@vim.org>
parents:
31690
diff
changeset
|
14 # appveyor_build_worker_image: Visual Studio 2015 |
9dd5bc4f2783
patch 9.0.1190: AppVeyor runs much slower with MSVC 2022
Bram Moolenaar <Bram@vim.org>
parents:
31690
diff
changeset
|
15 # FEATURE: HUGE |
9dd5bc4f2783
patch 9.0.1190: AppVeyor runs much slower with MSVC 2022
Bram Moolenaar <Bram@vim.org>
parents:
31690
diff
changeset
|
16 |
9dd5bc4f2783
patch 9.0.1190: AppVeyor runs much slower with MSVC 2022
Bram Moolenaar <Bram@vim.org>
parents:
31690
diff
changeset
|
17 # - job_name: VS-2017 |
9dd5bc4f2783
patch 9.0.1190: AppVeyor runs much slower with MSVC 2022
Bram Moolenaar <Bram@vim.org>
parents:
31690
diff
changeset
|
18 # appveyor_build_worker_image: Visual Studio 2017 |
9dd5bc4f2783
patch 9.0.1190: AppVeyor runs much slower with MSVC 2022
Bram Moolenaar <Bram@vim.org>
parents:
31690
diff
changeset
|
19 # FEATURE: HUGE |
9dd5bc4f2783
patch 9.0.1190: AppVeyor runs much slower with MSVC 2022
Bram Moolenaar <Bram@vim.org>
parents:
31690
diff
changeset
|
20 |
9dd5bc4f2783
patch 9.0.1190: AppVeyor runs much slower with MSVC 2022
Bram Moolenaar <Bram@vim.org>
parents:
31690
diff
changeset
|
21 # - job_name: VS-2019 |
9dd5bc4f2783
patch 9.0.1190: AppVeyor runs much slower with MSVC 2022
Bram Moolenaar <Bram@vim.org>
parents:
31690
diff
changeset
|
22 # appveyor_build_worker_image: Visual Studio 2019 |
9dd5bc4f2783
patch 9.0.1190: AppVeyor runs much slower with MSVC 2022
Bram Moolenaar <Bram@vim.org>
parents:
31690
diff
changeset
|
23 # FEATURE: HUGE |
9dd5bc4f2783
patch 9.0.1190: AppVeyor runs much slower with MSVC 2022
Bram Moolenaar <Bram@vim.org>
parents:
31690
diff
changeset
|
24 |
9dd5bc4f2783
patch 9.0.1190: AppVeyor runs much slower with MSVC 2022
Bram Moolenaar <Bram@vim.org>
parents:
31690
diff
changeset
|
25 # - job_name: VS-2022 |
9dd5bc4f2783
patch 9.0.1190: AppVeyor runs much slower with MSVC 2022
Bram Moolenaar <Bram@vim.org>
parents:
31690
diff
changeset
|
26 # appveyor_build_worker_image: Visual Studio 2022 |
9dd5bc4f2783
patch 9.0.1190: AppVeyor runs much slower with MSVC 2022
Bram Moolenaar <Bram@vim.org>
parents:
31690
diff
changeset
|
27 # FEATURE: HUGE |
9dd5bc4f2783
patch 9.0.1190: AppVeyor runs much slower with MSVC 2022
Bram Moolenaar <Bram@vim.org>
parents:
31690
diff
changeset
|
28 |
8242
1313d2e282dc
commit https://github.com/vim/vim/commit/81275ca9ce3059148fdb65dff29f7ecdbca446fb
Christian Brabandt <cb@256bit.org>
parents:
7370
diff
changeset
|
29 # disabled |
1313d2e282dc
commit https://github.com/vim/vim/commit/81275ca9ce3059148fdb65dff29f7ecdbca446fb
Christian Brabandt <cb@256bit.org>
parents:
7370
diff
changeset
|
30 # - FEATURE: TINY |
21534
69a59cc69519
patch 8.2.1317: MS-Windows tests on AppVeyor are slow
Bram Moolenaar <Bram@vim.org>
parents:
19663
diff
changeset
|
31 # - FEATURE: NORMAL |
8242
1313d2e282dc
commit https://github.com/vim/vim/commit/81275ca9ce3059148fdb65dff29f7ecdbca446fb
Christian Brabandt <cb@256bit.org>
parents:
7370
diff
changeset
|
32 |
1313d2e282dc
commit https://github.com/vim/vim/commit/81275ca9ce3059148fdb65dff29f7ecdbca446fb
Christian Brabandt <cb@256bit.org>
parents:
7370
diff
changeset
|
33 matrix: |
1313d2e282dc
commit https://github.com/vim/vim/commit/81275ca9ce3059148fdb65dff29f7ecdbca446fb
Christian Brabandt <cb@256bit.org>
parents:
7370
diff
changeset
|
34 fast_finish: true |
7252
1b591fcf2517
commit https://github.com/vim/vim/commit/7487792ab14c1fb8dbdb37bdd74265d8b1d3be50
Christian Brabandt <cb@256bit.org>
parents:
7121
diff
changeset
|
35 |
7121
a497a9868255
commit https://github.com/vim/vim/commit/0600f3511c6018cbcdb170a904bcf6533a06bf2d
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
36 before_build: |
31690
52232e3ff22f
patch 9.0.1177: AppVeyor uses some older tools
Bram Moolenaar <Bram@vim.org>
parents:
31628
diff
changeset
|
37 - call ver |
31748
0c7d833308c7
patch 9.0.1206: testing with Python on AppVeyor does not work properly
Bram Moolenaar <Bram@vim.org>
parents:
31716
diff
changeset
|
38 - ci\appveyor.bat install |
7121
a497a9868255
commit https://github.com/vim/vim/commit/0600f3511c6018cbcdb170a904bcf6533a06bf2d
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
39 |
a497a9868255
commit https://github.com/vim/vim/commit/0600f3511c6018cbcdb170a904bcf6533a06bf2d
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
40 build_script: |
31748
0c7d833308c7
patch 9.0.1206: testing with Python on AppVeyor does not work properly
Bram Moolenaar <Bram@vim.org>
parents:
31716
diff
changeset
|
41 - ci\appveyor.bat build |
7121
a497a9868255
commit https://github.com/vim/vim/commit/0600f3511c6018cbcdb170a904bcf6533a06bf2d
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
42 |
a497a9868255
commit https://github.com/vim/vim/commit/0600f3511c6018cbcdb170a904bcf6533a06bf2d
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
43 test_script: |
31748
0c7d833308c7
patch 9.0.1206: testing with Python on AppVeyor does not work properly
Bram Moolenaar <Bram@vim.org>
parents:
31716
diff
changeset
|
44 - ci\appveyor.bat test |
8242
1313d2e282dc
commit https://github.com/vim/vim/commit/81275ca9ce3059148fdb65dff29f7ecdbca446fb
Christian Brabandt <cb@256bit.org>
parents:
7370
diff
changeset
|
45 |
31561
e24772b8fbc9
patch 9.0.1113: users cannot easily try out a PR
Bram Moolenaar <Bram@vim.org>
parents:
30645
diff
changeset
|
46 artifacts: |
e24772b8fbc9
patch 9.0.1113: users cannot easily try out a PR
Bram Moolenaar <Bram@vim.org>
parents:
30645
diff
changeset
|
47 - path: src/vim.exe |
e24772b8fbc9
patch 9.0.1113: users cannot easily try out a PR
Bram Moolenaar <Bram@vim.org>
parents:
30645
diff
changeset
|
48 name: vim |
e24772b8fbc9
patch 9.0.1113: users cannot easily try out a PR
Bram Moolenaar <Bram@vim.org>
parents:
30645
diff
changeset
|
49 - path: src/gvim.exe |
e24772b8fbc9
patch 9.0.1113: users cannot easily try out a PR
Bram Moolenaar <Bram@vim.org>
parents:
30645
diff
changeset
|
50 name: gvim |
e24772b8fbc9
patch 9.0.1113: users cannot easily try out a PR
Bram Moolenaar <Bram@vim.org>
parents:
30645
diff
changeset
|
51 |
10080
e836872c2a4c
commit https://github.com/vim/vim/commit/dd905a2ae14bf2ee59a068f1c3acbca1ff0b7067
Christian Brabandt <cb@256bit.org>
parents:
8244
diff
changeset
|
52 # vim: sw=2 sts=2 et ts=8 sr |