Mercurial > vim
annotate runtime/ftplugin/debcontrol.vim @ 34349:835fc06c4547 v9.1.0107
patch 9.1.0107: CI: Fix MacOS-14 tests
Commit: https://github.com/vim/vim/commit/49f2ba6d41d3c6142deaa4a50b0b16e03969a904
Author: Yee Cheng Chin <ychin.git@gmail.com>
Date: Wed Feb 14 20:34:58 2024 +0100
patch 9.1.0107: CI: Fix MacOS-14 tests
Problem: CI: Fix MacOS-14 tests (after 9.1.0070)
Solution: Re-enable sound tests by granting Mic access,
disable Test_diff_screen because of buggy MacOS diff
(non GNU version), re-enable Test_term_gettitle()
(Yee Cheng Chin)
macos-14 runner was turned on in #13943, but it had to turn off a few
tests in order for CI to run. Re-enable them and fix the underlying
issues.
* `Test_diff_screen`: The test failure is due to a bug in Apple's diff
utility. Apple introduced a new diff tool based on FreeBSD in macOS 13
and it has buggy behaviors when using unified diff (`-U0`) and the
diff is on the first line of the file. Simply disable this test for
now if we detect Apple diff (instead of the old GNU diff). Can
re-enable this in the future if Apple fixes the issue.
* `Test_play_event` / `Test_play_silent`: GitHub Actions currently has
an issue with playing sound in CI in macos-14 runners. It for some
reason triggers a microphone permission dialog popup which blocks the
CI action (see https://github.com/actions/runner-images/issues/9330).
To fix this, add a temporary step in macos-14 to manually allow
microphone permissions in the runner.
* `Test_term_gettitle`: I could not reproduce the failure, so I just
turned it on and it seems to run just fine. Maybe it's a timing issue
and whatnot but either way that should be fixed when we can reproduce
the issue.
closes: #14032
Signed-off-by: Yee Cheng Chin <ychin.git@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Wed, 14 Feb 2024 20:45:07 +0100 |
parents | cc751d944b7e |
children | a513a0b170e1 |
rev | line source |
---|---|
1624 | 1 " Vim filetype plugin file (GUI menu and folding) |
2152 | 2 " Language: Debian control files |
13231 | 3 " Maintainer: Debian Vim Maintainers |
2152 | 4 " Former Maintainer: Pierre Habouzit <madcoder@debian.org> |
31885 | 5 " Last Change: 2023 Jan 16 |
6 " URL: https://salsa.debian.org/vim-team/vim-debian/blob/main/ftplugin/debcontrol.vim | |
1624 | 7 |
8 " Do these settings once per buffer | |
13857 | 9 if exists('b:did_ftplugin') |
1624 | 10 finish |
11 endif | |
12 let b:did_ftplugin=1 | |
13 | |
14 " {{{1 Local settings (do on every load) | |
13857 | 15 if exists('g:debcontrol_fold_enable') |
1624 | 16 setlocal foldmethod=expr |
17 setlocal foldexpr=DebControlFold(v:lnum) | |
18 setlocal foldtext=DebControlFoldText() | |
19 endif | |
20 setlocal textwidth=0 | |
21 | |
22 " Clean unloading | |
13857 | 23 let b:undo_ftplugin = 'setlocal tw< foldmethod< foldexpr< foldtext<' |
1624 | 24 |
25 " }}}1 | |
26 | |
27 " {{{1 folding | |
28 | |
29 function! s:getField(f, lnum) | |
30 let line = getline(a:lnum) | |
31 let fwdsteps = 0 | |
32 while line !~ '^'.a:f.':' | |
33 let fwdsteps += 1 | |
34 let line = getline(a:lnum + fwdsteps) | |
13857 | 35 if line ==# '' |
1624 | 36 return 'unknown' |
37 endif | |
38 endwhile | |
39 return substitute(line, '^'.a:f.': *', '', '') | |
40 endfunction | |
41 | |
42 function! DebControlFoldText() | |
13857 | 43 if v:folddashes ==# '-' " debcontrol entry fold |
1624 | 44 let type = substitute(getline(v:foldstart), ':.*', '', '') |
13857 | 45 if type ==# 'Source' |
1624 | 46 let ftext = substitute(foldtext(), ' *Source: *', ' ', '') |
47 return ftext . ' -- ' . s:getField('Maintainer', v:foldstart) . ' ' | |
48 endif | |
49 let arch = s:getField('Architecture', v:foldstart) | |
50 let ftext = substitute(foldtext(), ' *Package: *', ' [' . arch . '] ', '') | |
51 return ftext . ': ' . s:getField('Description', v:foldstart) . ' ' | |
52 endif | |
53 return foldtext() | |
54 endfunction | |
55 | |
56 function! DebControlFold(l) | |
57 | |
58 " This is for not merging blank lines around folds to them | |
13857 | 59 if getline(a:l) =~# '^Source:' |
1624 | 60 return '>1' |
61 endif | |
62 | |
13857 | 63 if getline(a:l) =~# '^Package:' |
1624 | 64 return '>1' |
65 endif | |
66 | |
67 return '=' | |
68 endfunction | |
69 | |
70 " }}}1 |