1

我的 Git 提交消息包含一个空白字符,当我输出或运行时它看起来像一个简单的空格。但是,当我使用 Vim 打开 Git 提交消息时,空间显示为下划线,如屏幕截图所示。怎样才能知道这是什么字符?如果你能告诉我如何复制它,我会把它粘贴在这里。git loggitk

Vim 中的 Git 提交消息

屏幕截图显示了 MacOS 上 iTerm 中 Vim 中的 Git 提交消息。

4

2 回答 2

3

使用 vim,您可以使用ga(在正常模式下)将光标放在字符上以十进制、十六进制和八进制打印其 ascii 值。

来自:help ga

:as[cii]    or                  *ga* *:as* *:ascii*
ga          Print the ascii value of the character under the
            cursor in decimal, hexadecimal and octal.  For
            example, when the cursor is on a 'R':
                <R>  82,  Hex 52,  Octal 122 ~
            When the character is a non-standard ASCII character,
            but printable according to the 'isprint' option, the
            non-printable version is also given.  When the
            character is larger than 127, the <M-x> form is also
            printed.  For example:
                <~A>  <M-^A>  129,  Hex 81,  Octal 201 ~
                <p>  <|~>  <M-~>  254,  Hex fe,  Octal 376 ~
            (where <p> is a special character)
            The <Nul> character in a file is stored internally as
            <NL>, but it will be shown as:
                <^@>  0,  Hex 00,  Octal 000 ~
            If the character has composing characters these are
            also shown.  The value of 'maxcombine' doesn't matter.
            Mnemonic: Get ASCII value.

例如,ga与节目中的角色一起使用a

<a>  97,  Hex 61,  Octal 141
于 2017-09-14T12:09:23.063 回答
1

如果您发现自己经常想查看字符代码,可以将其放入状态行和/或标尺格式:

set laststatus=1
set statusline=%F\ %(%w%h%r%m%)%=%2v:%4l/%4L\ 0x%02B
set rulerformat=%25(%w%h%r%<%m%=%2v:%4l/%4L\ 0x%02B%)

接近最后总是将%02B字符代码放在窗口的右边距上(如果您的字符值大于 255,它的宽度会增加)。我在它前面加上了前缀,0x所以我记得它是十六进制的。

于 2017-09-16T00:03:27.990 回答