Поскольку вы сказали, что вы новичок в "vim", я собираюсь предположить, что вы не знаете ничего из того, о чем я вам скажу. Очень жаль, если ты их уже знаешь.
Если вы собираетесь делать это много (вставьте строку «% F% H:% M:% S.0% z / Daniel») вместо определения команды, которую вы должны вызывать с помощью :command_name
, определите макрос и / или входной макрос, который может быть вызван всего двумя или тремя символами.
Чтобы определить входной макрос, выполните следующие действия в приглашении ':' или добавьте его в файл $ HOME / .exrc или $ HOME / .vimrc (без предшествующего ':'):
:map <C-X><C-X> Go<ESC>!!date '+\%F \%H:\%M:\%S.0 \%z'<CR>A / Daniel<ESC>
Теперь, когда вы находитесь в "vi" (но не в режиме ввода), набрав control-Xcontrol-X
, вы получите:
G go to last line in file; replace this with the "motion" keys sequence appropriate for your use (or nothing at all if you want to append the line right after the cursor)
o open a new line
<ESC> escape out of input mode
!!date ... invoke the date command, replace the current line with its stdout (output)
A append at the end of the line (now having the "date")
/ Dan... verbatim intput text
<ESC> escape out of input mode
control-Xcontrol-X
может быть какой-то необычной последовательностью, которую вы обычно не используете ни для чего, и не можете использовать никакие операции "vi", которые вы можете использовать. Я использую в качестве первого символа, потому что в «vi» уменьшает следующее целое число в строке после курсора, если таковые имеются. Это то, что я почти никогда не делаю. Я определяю свои макросы для вызова с помощью <C-X><C-B>
, <C-X><C-D>
, <C-X>s1
и т. Д.
Чтобы создать входной макрос, ну, это еще одна длинная тема, и я устал набирать сегодня, так что еще один день. :)