回答編集履歴
3
修正
test
CHANGED
@@ -1,6 +1,6 @@
|
|
1
|
-
解決しました。
|
1
|
+
直接キーを取得できるわけではないのですがそれっぽいことが出来たので解決しました。
|
2
2
|
|
3
|
-
行数短めで見やすいように<C-n>と<C-x><C-o>のみ対応したコード
|
3
|
+
行数短めで見やすいように<C-n>と<C-x><C-o>のみ対応したコードを載せます。
|
4
4
|
|
5
5
|
|
6
6
|
|
2
修正
test
CHANGED
@@ -6,13 +6,13 @@
|
|
6
6
|
|
7
7
|
```vim
|
8
8
|
|
9
|
-
inoremap <expr><C-n> pumvisible() ? "\<C-n>" : <SID>
|
9
|
+
inoremap <expr><C-n> pumvisible() ? "\<C-n>" : <SID>F(0)
|
10
10
|
|
11
|
-
inoremap <expr><C-x><C-o> pumvisible() ? "\<C-x>\<C-o>" : <SID>
|
11
|
+
inoremap <expr><C-x><C-o> pumvisible() ? "\<C-x>\<C-o>" : <SID>F(1)
|
12
12
|
|
13
13
|
|
14
14
|
|
15
|
-
function! s:
|
15
|
+
function! s:F(n) abort
|
16
16
|
|
17
17
|
let l:s = [
|
18
18
|
|
1
修正
test
CHANGED
@@ -24,7 +24,7 @@
|
|
24
24
|
|
25
25
|
execute 'inoremap <expr><C-u> pumvisible() ? "\<C-u>' . l:s[a:n] . '" : "\<C-u>"'
|
26
26
|
|
27
|
-
return
|
27
|
+
return l:s[a:n]
|
28
28
|
|
29
29
|
endfunction
|
30
30
|
|