[{TableOfContents }] !! (File, Common) | {{:e}} filename | Edit filename, unless changes have been made | {{:e #}} filename | Switch to last file edited | {{:e!}} filename | Edit filename always (by default reload current) | {{:w}} filename | Write (Save-(As)) | {{:wq}} filename | Write and Quit | {{:q}} | Quit | {{:q!}} | Quit w/o Confirmation | {{:x}} | Like {{:wq}}, writes if file changes | {{:n}}, {{:N}} | Next Buffer, Previous Buffer !!Moving Around | {{w}} | Forward word | {{b}} | Back word | {{0 ^ $}} | Beginning, first, last character of line | {{( )}} | Beginning of previous, next sentence | {{ { } }} | Beginning of previous, next paragraph | {{C-HOME}}, {{gg}} line | Goto line, default beginning of file | {{C-END}}, {{G}} line | Goto line, default end of file | {{C-f}} | Page Forward (Down) | {{C-b}} | Page Backward (Up) | {{z}} | Redraw, line at top of window (default cursor line). Put cursor at first non-blank in the line. | {{z.}} | Redraw, line at center of window (default cursor line). Put cursor at first non-blank in the line. !! Inserting Text The following commands can be used to insert new text into the buffer. They can all be undone. The non-Ex commands can be repeated with the "(N)." command. So, repeating a command 4 times, you do "4." after the escape (after the command). You can end Insert mode with [ESC]. | {{i}} | Insert text before the cursor | {{I}} | Insert text before the first CHAR on the line | {{o}} | Begin a new line below the cursor and insert text | {{O}} | Begin a new line above the cursor and insert text | {{:r}} filename | Insert the file (filename) (default: current file) below the cursor. | {{:{range}r}} filename | Insert the file (filenamename) (default: current file) below the specified line. !! Deleting Text | {{ ["x] x}} | Delete [count] characters under and after the cursor [into register x] | {{ ["x] X}} | Delete [count] characters before the cursor [into register x] (not linewise). | {{ ["x] d{motion} }} | Delete text that is moved over [into register x]. | {{ ["x] dd }} | Delete [count] lines [into register x] (linewise). | {{ ["x] D }} | Delete the characters under the cursor until the end of the line and [count]-1 more lines [into register x]. !! Visual Mode This is used to select a block of text. | {{ v }} | start Visual mode per character. | {{ V }} | start Visual mode linewise. | {{C-V}} | start Visual mode blockwise. | {{ o }} | go to Other end of highlighted text. !! Copy Text Often times, it helps to be in visual mode for this. | {{ ["x] y{motion} }} | Yank (Copy) {motion} text [into register x]. | {{ ["x] yy }} | Yank [count] (Copy) lines [into register x] (linewise). | {{ ["x] Y }} | Yank [count] lines [into register x] (synonym for yy, linewise). If you like "Y" to work from the cursor to the end of line (which is more logical, but not Vi-compatible) use ":map Y y$". | {{ {Visual}["x] y }} | Yank the highlighed text [into register x]. | {{ {Visual}["x] Y }} | Yank the highlighted lines [into register x] ! Copy Text to OS Clipboard | {{ "+y }} | Yank (from visual mode) | | Insert "set clipboard=unnamed" into .vimrc file !! Paste Text | {{ ["x] p }} | Paste the text [from register x] after the cursor [count] times. | {{ ["x] P }} | Paste the text [from register x] before the cursor [count] times. | {{ :[line]pu [x] }} | Put the text [from register x] after [line] (default current line). | {{ :[line]pu! [x] }} | Put the text [from register x] before [line] (default current line). | {{ ["x]] p }} | Like "p", but adjust the indent to the current line. !! Undo and Redo | {{ u }} | Undo [count] changes. | {{ :u }} | Undo one change. | {{ C-R }} | Redo [count] changes which were undone. | {{ :red }} | Redo one change which was undone. | {{ U }} | Undo all latest changes on one line. ---- The following are emacs commands to be eventually translated to vi. !!Frame Commands | {{C-x 5 o}} | other-frame | Move to other frame | {{C-x 5 0}} | delete-frame | Delete current frame | {{C-x 5 2}} | make-frame | Create a new frame on the current buffer | {{C-x 5 f}} | find-file-other-frame | Find file in a new frame | {{C-x 5 r}} | find-file-read-only-other-frame | find a file in a new frame, but it is read-only | {{C-x 5 b}} | switch-to-buffer-other-frame | Make frame and display other buffer in it !!Buffer manipulation commands | {{C-x b}} | switch-to-buffer | Move to buffer specified | {{C-x}} → | next-buffer | Move to the next buffer in the buffer list | {{C-x}} ← | previous-buffer | Move to the previous buffer in the buffer list | {{C-x C-b}} | list-buffers | Display the buffer list | {{C-x k}} | kill-buffer | Delete the buffer specified | | kill-some-buffers | Ask about deleting each buffer | | Change the buffer's name to the name specified | {{C-x s}} | save-some-buffers | Ask whether you want to save each modified buffer !!Window Commands | {{C-x 2}} | split-window-vertically | Divide current window into two windows, one above the other | {{C-x 3}} | split-window-horizontally | Divide current window into two side-by-side windows | {{C-x > }} | scroll-right | Scroll the window right | {{C-x < }} | scroll-left | Scroll the window left | {{C-x o }} | other-window | Move to the other window. If there are several, move to the next window | {{C-x 0 }} | delete-window | Delete the current window | {{C-x 1 }} | delete-other-windows | Delete all windows but this one | | delete-windows-on | Delete all windows on a given buffer | {{C-x ^ }} | enlarge-window | Make window taller | | shrink-window | Make window shorter | {{C-x } }} | enlarge-window-horizontally | Make window wider | {{C-x { }} | shrink-window-horizontally | Make window narrower | {{C-x -}} | shrink-window-if-larger-than-buffer | Make window smaller if buffer is smaller than window | {{C-x +}} | balance-windows | Make windows the same size | {{C-M-v}} | scroll-other-window | Scroll other window | {{C-x 4 f}} | find-file-other-window | Find a file in the other window | {{C-x 4 b}} | switch-to-buffer-other-window | Select a buffer in the other window | | compare-windows | Compare this window with the next window and show the first difference !! Compilation mode commands | {{C-x `}} | next-error | Move to the next error message and visit the corresponding source code | {{M-n}} | compilation-next-error | Move to the next error message | {{M-p}} | compilation-previous-error | Move the previous error message | {{C-c C-c}} | compilation-goto-error | Visit the source code for the current error message | Space | scroll-down | Scroll down one screen | Del | scroll-up | Scroll up one screen !!Search | {{C-s}} | Search | {{M-Shift-%}} | Search & Replace | {{C-M-Shift-%}} | Regex Search & Replace !! Python Mode | {{C-j}} | Insert a new line with the same indentation level as the current line | RET | Insert a new line with the same indentation level as the current line | {{C-M-a}} | Go to the beginning of the current function or class | {{C-M-e}} | Go to the end of the current function or class | {{C-M-h}} | Mark the current function or class for copying, etc. | {{C-M-x}} | Execute the current function or class | {{C-c C-b}} | Submit a bug report | {{C-c C-c}} | Execute the buffer (i.e., the file being displayed) | {{C-c C-d}} | Trace the stack of the process being executed | {{C-c C-h}} | Get context-based help | {{C-c}} TAB | Indent a highlighted (or marked) region | {{C-c C-k}} | Mark a block of text. Using this at the head of a class or function definition will mark the entire block. | {{C-c C-l}} | Shift the region to the left. If the cursor is in the middle of a region, the lower half of the region will shift. | {{C-c}} RET | Execute the current file, opening a new window to show the output. | {{C-c C-n}} | Jump to the next statement. | {{C-c C-p}} | Jump to the previous statement. | {{C-c C-r}} | Shift the region to the right. If the cursor is in the middle of a region, the lower half of the region will shift. | {{C-c C-s}} | Execute a Python command. | {{C-c C-t}} | Toggle shells | {{C-c C-u}} | Go up one block | {{C-c C-v}} | List the version of the Python mode | {{C-c C-w}} | Run PyChecker | {{C-c !}} | Open the Python interactive shell | {{C-c #}} | Comment the highlighted (marked) region | {{C-c :}} | Check the indentation off-set | {{C-c <}} | Shift the region to the left | {{C-c >}} | Shift the region to the right | {{C-c ?}} | Show Python mode documentation | {{C-c}} PIPE | Execute the highlighted (marked) part of the current program. !! Software Development | {{M-x}} compile | Will prompt for make command, then execute | {{M-x}} recompile | Will repeat last compile command without prompting ---- [IDE | CategoryArchive.Computing.IDE] - [Fixme | CategoryFixme]