Как заменить char в файле соответствующим кодом ascii в vim - PullRequest
3 голосов
/ 02 декабря 2009

В буфере vim, если у меня есть список символов, скажите:

A

B

с

C

д

D

и для каждого я хочу заменить его соответствующим кодом ASCII (в десятичном формате). Есть ли способ сделать это без использования внешнего инструмента через: r! Some_tool

Например, я знаю, что есть команды: ascii и ga, но они выводят значение на экран, но я не могу найти способ получить его вывод в буфер.

1 Ответ

7 голосов
/ 02 декабря 2009

Вы можете воспользоваться функциональностью sub-replace-expression вместе с char2nr () и submatch () . Следующее заменяет любой буквенный символ в начале строки его десятичным эквивалентом.

%s/^\a/\=char2nr(submatch(0))/

Если вы хотите сделать это для любого символа в начале строки, просто замените \a на ..

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...