diff --git "a/\\" "b/\\" deleted file mode 100644 index bc49807..0000000 --- "a/\\" +++ /dev/null @@ -1,796 +0,0 @@ -Normal mode commands: - --> for navigating the file opened in vim: - - h: to go left. - l: to go right. - j: to go down. - k: to go up. - - ctrl + f: To do page down. Similar to page down button. - ctrl + b: To do page up. Similar to page up button. - z + : To bring the focus of vision to the top - where the cursor is currently present. - z + z: To bring the focus of vision to the center - where the cursor is currently present. - w: To move the cursor by one word on the file. It include the - punctuation as a word.(move one word forward) - W: To move the cursor by one word on file. It don't include the - punctuation as a word.(move one word forward) - b: To move the cursor by one word on file. It include the - punctuation as a word.(move on word backward) - B: To move the cursor by one word on file. It don't include the - punctuation as a word.(move on word backward) - - 0: To move the first column of the current line the cursor - is present. - ^: To move the first letter of the first word of the current - line the cursor is present. - $: To move the last letter of the last word of the current - line the cursor is present. - gg: To move the first column of the first line of the file. - G: To move to the last line of the file. - gg or G: To move the particular - as mentioned. - ctrl + g: To know the current line we are on, the file name, - the percentage of we have covered according to - current cursor position. - - g + (ctrl+g): To get more detailed information of whatever - the previous was showing. - --> Deleting text from file in normal mode: - - x: To delete the right side byte of the current cursor position. - X: To delete the left side byte of the current cursor position. - - Using d to delete words with motion operation: - - {motion} - for ex: - dw (this delete the what the w command would move - the cursor by) - - dw: To delete a word in front of the current cursor position. - - dl: To delete next byte towards right from current cursor position on - current line. - dh: To delete next byte towards left from current cursor position on - current line. - dj: To delete whole current line and the line below. - dk: To delete whole current line and the line above. - d$: To delete from current position of cursor to the end of - the line. - d0: To delete from current position to the first letter of the - current line the cursor is present. - D: Equivalent of of what d$ - dd: To delete the current line entirely no matter where the cursor - is present currently on that same line. - - dd: To delete the 3 lines below from current line where - the cursor is present. - - - Note: is telling in short hand on how many - times the delete-command given should be executed. Same as the - command shown above (dd). - - dw: delete-word command to be executed numbers of times. - - For ex: - 3w = Repeat word motion 3 times. - - d3w = Delete the 3w motion. - - 2d3w = Delete the 3w motion 2 times. - -Line mode: - --> for navigating using line mode: - - : : To go to the particular . - :$ : To move to the last line in the file. - - !(exclamation mark): This Operator can be used to force the commands - - for ex: - - :q! is used to force quit the vim even if the changes on files - are not saved. - --> help command (for vim documentation): - - :help : It will open vim documentation. - - :help [command] : It will open documentation to a specific location where - the specification for that specific command is present. - - :help {subject} : It will open documentation to a specific location where - the specification for the given subject. - - :h : It is a short cut for :help in line mode. - - (CTRL+w) + (CTRL+w): It is used to switch b/w windows currently open in vim - for editing. - - (CTRL+o): Take you to the location where the previous search is done in the - document. - - (CTRL+i): Take you to the location where the next search is done in the - document. - - (CTRL+]): Place the cursor on the "subject" you want to search (for ex. linewise) - and press this command. - - Note: Anything between [] in help documentation means it is optional in vim. - - - For autocompleting a command which is to be searched in help documentation - click CTRL+D, which shows suggestation. To iterate through all the suggestion - without writing it explicity use key. To iterate in reverse order use - +. - - --> Cut, Copy and Paste: - - * d and x cut text, not just delete it. - * cut = delete and save into a register. - * Register is a clipboard-like storage location. - * This register is also known as default register or unnamed register. - - > for pasting the text present in the default register use p command. - > if the line is cut using dd command then using 'p' will paste it below the current line where - the cursor is present. - > if 'P' command is used then it will paste above the current line where the cursor is - present. - > if a character is cut using 'x' or 'X' command using 'p' will paste the character - just after the current postion of the cursor. - > similarly, if 'P' command is used it will paste the character just before the current - position of the cursor. - - Note: - > The data cutted is linewise then it will paste below/above current line. - > The data cutted is characterwise then it will paste before or after the current line. - - > Standard - Vim terminology: - - Cut = Delete - Copy = yank - paste = put - - > for yanking(copying) use 'y' command. - > Just like 'd' command behavior with 'p' command is same. - - * Undo command: - - > To undo the action of previous command, use 'u' command to - undo the action. - > To redo the same command undone by undo 'u' command use 'CTRL+r' - command. - - * Type of registers: - - > Named registers : "a to "z - > Number register : "0 to "9 - > unnamed register : "" - - > unnamed register contains the data with acquired from one of the - commmands d, x, c, y and s. - c -> , s -> substitute. - - > "0 : Most recently yanked data - > "1 : The data which is deleted recently. - > "2 : The data which was deleted second last time. - > "3 : and so on till "9.... - - > use :reg to see the content of each register. - > use :reg - wherer arg -> register name to show the content - + arg can be string containing all the - registers named concatenated into a - single string. - --> Transforming and Substituting: - - - * Inserting: - - @ Command :- Shift + i or CAPS + i (Capital i) - - What does it do? - - It put the mode in insert mode and put the cursor in - the first character of the first word of the current - line where the cursor is present. - - @ Command :- Shift + a or CAPS + a (Capital a) - - What does it do? - - It put the mode in insert mode and put the cursor after - the last character of the last word of the current - line where the cursor is present. - - @ Command :- o - - What does it do? - - It puts the mode in insert mode and put the cursor below - the line where the current cursor is present. - - @ Command :- Shift + o - - What does it do? - - It puts the mode in insert mode and put the cursor above - the line where the current cursor is present. - - * Replacing (Replace Mode): - - @ Command :- Shift + r or CAPS + r (Capital r) - - What does it do? - - It pust the mode in replace mode. In replace mode, wherever - the cursor is present, it will start to replace each character - as we type and the previous character will be over-written by the - new character. - - * Changing (Changing Mode): - - @ Command :- + c + - - What does it do? - - It delete the series of bytes, based on the word-motion given, - and put the mode in INSERT mode. can be any - type of word motion that we have learnt. Here, - can be used to put the deleted or "replaced" word into the register - which we use to store as intended. - - For example: - - "a + c + w - - It will store the word into register "a which is replaced by using - command c + w. - - @ Command :- Shift + c or CAPS + c (capital + c) - - What does it do? - - Replace the sequence of characters from current cursor position is present at till end - of the line. - - @ Command :- cc - - Replace the entire current line where the cursor is present. - - @ Command :- ~ - - What does it do? - - Switch over the case of the character where the current is present. - - @ Command :- g + ~ + - - What does it do? - - Switch over the cases of the each character based on the motion command - range. - - @ Command :- g + U + - - What does it do? - - Changes the entire case of each character to upper-case based on the motion command - range. - - @ Command :- g + u + - - What does it do? - - Changes the entire case of each character to lower-case based on the - motion comand range. - - -> Joining: - - @ Command :- Shift + j or CAPS + j (Capital + j) - - What does it do? - - Joins the line below the current line where the cursor is present - to single line and add a space to it or add a double space if there - is a period at the end of the current line. - - @ Command :- g + J + - - What does it do? - - Do the same thing as "J" command. Only difference is that it doesn't - add any space between joining lines. - - --> Searching commands: - - - @ Command :- f + - - What does it do? - - Searches for the next occurence of the character passed as an argument - from current cursor position on the same line. - NOTE THE WORD, SAME LINE. - - @ Command :- F + - - What does it do? - - Do the same thing as previous command, but in opposite direction. - - @ Command :- ; - - What does it do? - - It repeat the command from the above two, whichever was executed - first. For example, if F + is executed, it will repeat - the same command. - - @ Command :- , - - What does it do? - - It do the opposite of what ";" command does. For example, if - F + is executed, it will execute f + - action, repeatedly. It will do the opposite of whichever - above mentioned command was executed first. - - @ Command :- t + - - - What does it do? - - It search for the and place the cursor just one - position before the current cursor. Note that, using the same - command again will not move the cursor to next position w.r.t - same that was mentioned earlier. - - We can use ";" and "," command to repeat the mentioned command - even if the cursor is present just before the searched , - it pass through the current position. - - Note that the searching is done from left to right. - - @ Command :- T + - - What does it do? - - It perform operation and behave in similar manner as done by t + - command. But, the searching is done in reverse order. - - **Note** - - All these are motion-commands. That means, we can use it with Editing - commands like d (delete), c (changing), y (yanking), etc. - - - @ Command :- / - - What does it do? - - It searches for the . - - Using "n" command will search for next occurance in current - opened file. - - Using "N" command does the same thing. But, in opposite direction. - - **Note** - - For "/" command for searching the incsearch option should be set. - - If it is not, we can use following line command: - - :set is - - To check if the configuration is set use command: - - :set is? - - For highlighting the searches, check for: - - Check :set hls? - - Output: nohlsearch - - Do: :set hls - - Note that hlsearch is enabled will highlight the s' until - new search is done which in turn highlight the new . - To turn off the highlight, use: - - :nohls. - - It will turn-off the highlights not disable it permanently. - - - %% Trick %% - - > Using "/" command to find a string or string containing the pattern specified - and pressing enter will take to the first such matching string. - - > If we now use "c + w" command the cursor which is present at the first letter - of the word will delete that word and we type certain word. - - > After getting out of the insert mode, pressing "n" command will move the cursor - the cursor to the next string and pressing the command "." will repeat the changes - that we did for first string i.e. repeat the process that we performed above. - - - @ Command: "? - - - What does it do? - - It search for the string matching the pattern in reverse direction of the current - cursor postion. - - Here, "n" search for next pattern match in reverse direction. "N" does the reverse - of what "n" command does. - - - @ Command: "*" - - What does it do? - - It search for the next occurances of the exact string(not string-pattern) which is near or where - the current cursor is positioned. - - - @ Commmand: "#" - - What does it do? - - It seah for the next occurances of the exact string(not string-pattern) which is near or where - the current cursor is positioned. - - %% TIPS %% - - We can use editing commands like deleting(d), yanking(y), etc. with these searching command. - - For ex: - - Pressing "d" command and then using "/" will leads to deleting of characters - from the current cursor position to the next occurance of the . - - Pressing " with "y" command and then using "/" will leads to - yanking(copying) from the current cursor position to the next occurance of the . - - - @ Command : [range]s///[flag] (Its a line command) - ^ ^ - | | - optional optional - - - What does it do? - - It replace the occurance of old string to new string over the range - in the file. - - [flag] - - * g : It represent to replace all the occurance of to in - current line where the cursor is present. - - - [range] - - Define the range of this command. Could be single line, multiple line - and even all the lines in the file, etc. - - * : On which line number this command to be executed. - To execute the command on same line as cursor, - don't mention . - - * , : From the starting line number - to the ending line number to - to execute the command. - - For ex: - :1s///g - - It will replace with in the entire line of line number 1. - - :1,5s///g - - It will do the same form line number 1 to 5. - - ://,//s///g - - It will do the same from line which has pattern matching with - with and ending with line which has pattern - matching with pattern . - - - ------------------------------------ - - - $ = last line; . = current line - - :.,$s///g - - % = All the line (entire file) - - :%s///g - - ----------------------------------- - - - For including character such as "/" for and - we can use "\" which is a escape character. - - For ex: - - :s/\/\//\/\// - - OR - - we can use other non-alphanumeric character as a separator. - - For ex: - - :s#//#// - - %% TIPS %% - - To set options in VIM, we can use :set