web-dev-qa-db-ja.com

Vimで文字列に絵文字を入力するにはどうすればよいですか?

これを理解できませんでした。文字列に1つの絵文字を入力するだけで、それを理解できませんでした。 Unicodeが機能していません。ダイグラフを試してみましたが、どちらも機能しませんでした。 Vimでこれにいくつかのトリックはありますか?どうも!

22
Fedreg

このためのプラグインをインストールする必要はありません。絵文字の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)

たとえば、ユニコード値がU+1F60Aである this smiley-face を入力する場合は、次のように入力するだけです。

<C-v>U1F60A<esc>

または、<esc>を押したくない場合は、

<C-v>U0001F60A

ご存知のように、フォントによってはvimで正しくレンダリングされない可能性があります。 gvimを使用している場合は、:se guifont=*を変更するか、通常のvimでコンソールのフォントを変更してレンダリングすることができます(この特定の絵文字をレンダリングできるフォントを選択した場合)

39
James

<c-v>U1f60A<esc>を使用することは可能ですが、メールに返信したり、Webフォームにコメントを入力したりすることは現実的ではありません。ユニコード絵文字テーブルを暗記するつもりはありません????????????迅速に「ありがとう????」コメント。

そのようなユースケースの他のオプションはほとんどありません:

  1. :)のような通常のスマイリーを入力し、プラグインでそれを同等のUnicodeに置き換えます????プラグイン emoji-ab がこれを行います。

  2. :boom:のようなタイプコード。多くのマークダウンパーサーはそれを????に変換します。あなたのために。ただし、そのようなパーサーを使用していない場合は、 emoji-ab もパーサーを変換します。

  3. gucharmap (または多くのオンラインUnicodeピッカーの1つ)のようなものを使用して、Unicode文字をコピーしてvimに貼り付けます。

4
gi1242

別のアプローチは、略語を使用することです。

。vimrcファイル にいくつか追加しましたが、今: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 または同様のサイトには、さらに多くのサイトがあります。以前使用したものをいくつか選びました。

2
bitifet

プラグインやインストールは必要ありません。通常、絵文字をコピーして貼り付けるだけです。たとえば、私は???? Symbol Go から、ここにコピーします。

または、絵文字コードポイントを使用できます。コードポイント????はU1F338です。 Symbol Go にもこれがあります。

また、フォントが正しいことを確認する必要もあります。 Google Noto フォントは絵文字を表示します。

1
James Smith