Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Execute a command under the cursor in Vim

Tags:

vim

  1. How can I execute a command in Vim, under the cursor? On the (word) under the cursor?

We know that Shift+k is used to open a man page under the cursor. I want to execute the command instead of opening the man page.

Or:

  1. How can I take the current word under the cursor in Vim?
like image 624
ungalnanban Avatar asked Apr 29 '10 09:04

ungalnanban


2 Answers

Another tip: If you want to put the word currently under the cursor into the command-line mode, use the sequence CTRL + R then CTRL + W

like image 149
Zhaojun Avatar answered Sep 27 '22 18:09

Zhaojun


How can I take the current word under the cursor in VIM?

echo expand("<cword>")

or

let l:WordValue = expand("<cword>")

How can I execute the command under the cursor? I am not exactly sure what kind of commands you're refering to, but since you mentioned man pages, I'd assume that you want to execute unix and or cmd commands. If this is the case you'll want something like

fu ExecuteCommand()
   let l:Command = expand("<cword>")
   execute "!" . l:Command
endfu 

Alternatively, you might want to change the value of keywordprg:

:set keywordprg=!
like image 33
René Nyffenegger Avatar answered Sep 27 '22 20:09

René Nyffenegger