如何将表情符号输入到 Vim 中的字符串中?
How do I enter an emoji into a string in Vim?
想不通。只需要将 1 个表情符号输入一个字符串,但无法弄清楚。 Unicode 不工作。试过 diagraph 但也没有用。在 Vim 中有什么技巧吗?谢谢!
您不需要为此安装插件。您需要做的就是输入表情符号的 unicode 值。您可以使用 <C-v>
在插入模式下执行此操作。来自 :h i_ctrl-v_digit
:
*i_CTRL-V_digit*
With CTRL-V the decimal, octal or hexadecimal value of a character can be
entered directly. This way you can enter any character, except a line break
(<NL>, value 10). There are five ways to enter the character value:
first char mode max nr of chars max value ~
(none) decimal 3 255
o or O octal 3 377 (255)
x or X hexadecimal 2 ff (255)
u hexadecimal 4 ffff (65535)
U hexadecimal 8 7fffffff (2147483647)
例如,如果您想输入 this smiley-face,其 unicode 值为 U+1F60A
,您只需键入:
<C-v>U1F60A<esc>
或者如果您不想点击 <esc>
,
<C-v>U0001F60A
请注意,根据您的字体,它很可能无法在 vim 中正确呈现。如果您使用的是 gvim,您可以更改 :se guifont=*
,或者在常规 vim 中,更改您的控制台字体以使其呈现(假设您选择了可以呈现此特定表情符号的字体)
虽然可以 <c-v>U1f60A<esc>
,但如果您
回复电子邮件/在网络表单中输入评论。我不打算
记住 unicode 表情符号表以便快速 "Thanks " 评论。
此类用例的其他选项很少:
另一种方法是使用缩写。
我在 .vimrc file 中添加了一些,现在我只需输入 :pushpin: for 、:bulb: for 、:bomb: for 等等...
" Emoji shortcuts
ab :white_check_mark: ✅
ab :warning: ⚠
ab :bulb:
ab :pushpin:
ab :bomb:
ab :pill:
ab :construction:
ab :pencil:
ab :point_right:
ab :book:
ab :link:
ab :wrench:
ab :info:
ab :telephone:
ab :email:
ab :computer:
emojicopy.com 或类似网站上有更多此类网站。我只是挑了一些我以前用过的。
在包括 Vim 在内的许多情况下访问这些表情符号的另一种方法是使用字符映射对话框 window:
- 在 Mac 上,按 Ctrl+Command+Space 和 select 字符。
- 在 Windows 上,按 Windows+R 并键入字符映射。
可以使用emoji-fzfpip包
先安装fzf
sudo apt install fzf
然后安装 emoji-fzf
pip install emoji-fzf
现在确保你可以 运行 emoji-fzf
emoji-fzf --help
如果您收到“未找到命令”错误,请参阅
现在将 emoji-fzf 添加到您的 .vimrc
" Use emoji-fzf and fzf to fuzzy-search for emoji, and insert the result
function! InsertEmoji(emoji)
let @a = system('cut -d " " -f 1 | emoji-fzf get', a:emoji)
normal! "agP
endfunction
command! -bang Emoj
\ call fzf#run({
\ 'source': 'emoji-fzf preview',
\ 'options': '--preview ''emoji-fzf get --name {1}''',
\ 'sink': function('InsertEmoji')
\ })
" Ctrl-e in normal and insert mode will open the emoji picker.
" Unfortunately doesn't bring you back to insert mode
map <C-e> :Emoj<CR>
imap <C-e> <C-o><C-e>
重新启动您的 vim 并按 ctrl + e 并搜索您最喜欢的表情符号并按 输入
想不通。只需要将 1 个表情符号输入一个字符串,但无法弄清楚。 Unicode 不工作。试过 diagraph 但也没有用。在 Vim 中有什么技巧吗?谢谢!
您不需要为此安装插件。您需要做的就是输入表情符号的 unicode 值。您可以使用 <C-v>
在插入模式下执行此操作。来自 :h i_ctrl-v_digit
:
*i_CTRL-V_digit*
With CTRL-V the decimal, octal or hexadecimal value of a character can be
entered directly. This way you can enter any character, except a line break
(<NL>, value 10). There are five ways to enter the character value:
first char mode max nr of chars max value ~
(none) decimal 3 255
o or O octal 3 377 (255)
x or X hexadecimal 2 ff (255)
u hexadecimal 4 ffff (65535)
U hexadecimal 8 7fffffff (2147483647)
例如,如果您想输入 this smiley-face,其 unicode 值为 U+1F60A
,您只需键入:
<C-v>U1F60A<esc>
或者如果您不想点击 <esc>
,
<C-v>U0001F60A
请注意,根据您的字体,它很可能无法在 vim 中正确呈现。如果您使用的是 gvim,您可以更改 :se guifont=*
,或者在常规 vim 中,更改您的控制台字体以使其呈现(假设您选择了可以呈现此特定表情符号的字体)
虽然可以 <c-v>U1f60A<esc>
,但如果您
回复电子邮件/在网络表单中输入评论。我不打算
记住 unicode 表情符号表以便快速 "Thanks " 评论。
此类用例的其他选项很少:
另一种方法是使用缩写。
我在 .vimrc file 中添加了一些,现在我只需输入 :pushpin: for 、:bulb: for 、:bomb: for 等等...
" Emoji shortcuts
ab :white_check_mark: ✅
ab :warning: ⚠
ab :bulb:
ab :pushpin:
ab :bomb:
ab :pill:
ab :construction:
ab :pencil:
ab :point_right:
ab :book:
ab :link:
ab :wrench:
ab :info:
ab :telephone:
ab :email:
ab :computer:
emojicopy.com 或类似网站上有更多此类网站。我只是挑了一些我以前用过的。
在包括 Vim 在内的许多情况下访问这些表情符号的另一种方法是使用字符映射对话框 window:
- 在 Mac 上,按 Ctrl+Command+Space 和 select 字符。
- 在 Windows 上,按 Windows+R 并键入字符映射。
可以使用emoji-fzfpip包
先安装fzf
sudo apt install fzf
然后安装 emoji-fzf
pip install emoji-fzf
现在确保你可以 运行 emoji-fzf
emoji-fzf --help
如果您收到“未找到命令”错误,请参阅
现在将 emoji-fzf 添加到您的 .vimrc
" Use emoji-fzf and fzf to fuzzy-search for emoji, and insert the result
function! InsertEmoji(emoji)
let @a = system('cut -d " " -f 1 | emoji-fzf get', a:emoji)
normal! "agP
endfunction
command! -bang Emoj
\ call fzf#run({
\ 'source': 'emoji-fzf preview',
\ 'options': '--preview ''emoji-fzf get --name {1}''',
\ 'sink': function('InsertEmoji')
\ })
" Ctrl-e in normal and insert mode will open the emoji picker.
" Unfortunately doesn't bring you back to insert mode
map <C-e> :Emoj<CR>
imap <C-e> <C-o><C-e>
重新启动您的 vim 并按 ctrl + e 并搜索您最喜欢的表情符号并按 输入