Согласно документации Vim, можно получить символ под курсором, используя функцию strpart
. Хотя обсуждение переполнения стека по этому поводу отсутствует. Есть ли какое-либо предостережение к приведенному ниже рецепту, особенно в свете ответа здесь. Кроме того, что делает v:true
? где это задокументировано?
:h strpart
возвращает:
strpart({src}, {start} [, {len} [, {chars}]]) *strpart()
.
.
Note: To get the first character, {start} must be 0. For
example, to get the character under the cursor: >
strpart(getline("."), col(".") - 1, 1, v:true)
.
.
:help v:true
. Что касается предостережений, я бы посоветовал вам попробовать и убедиться в этом самим. - person romainl   schedule 09.02.2021