{"id":17976426,"url":"https://github.com/rupav/vimcheat","last_synced_at":"2026-02-07T06:31:18.491Z","repository":{"id":252335143,"uuid":"160677383","full_name":"rupav/vimCheat","owner":"rupav","description":"Not a vimrc, just the commands to get started, and use in development!","archived":false,"fork":false,"pushed_at":"2019-05-30T06:06:13.000Z","size":10,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-08-01T04:31:42.716Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/rupav.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-12-06T13:17:35.000Z","updated_at":"2019-05-30T06:06:15.000Z","dependencies_parsed_at":null,"dependency_job_id":"015990e8-0320-49cf-b352-3692db6419fc","html_url":"https://github.com/rupav/vimCheat","commit_stats":null,"previous_names":["rupav/vimcheat"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/rupav/vimCheat","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rupav%2FvimCheat","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rupav%2FvimCheat/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rupav%2FvimCheat/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rupav%2FvimCheat/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rupav","download_url":"https://codeload.github.com/rupav/vimCheat/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rupav%2FvimCheat/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29188226,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-07T05:07:31.176Z","status":"ssl_error","status_checked_at":"2026-02-07T05:06:15.227Z","response_time":63,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-10-29T17:23:51.849Z","updated_at":"2026-02-07T06:31:18.475Z","avatar_url":"https://github.com/rupav.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"This repo is not for setting up vimrc, instead for starting with  [VIM](https://www.vim.org/).\nCommands that I have discovered and found quite useful so far through youtube tutorials, vimtutor, awesome vim are all shared here. Commands list will soon go beyond infinity! :rocket:\n\u003cbr/\u003e\n\u003cbr/\u003e\n\n--------\nreadme instruction format:\n\n**Command for:**\n* `command`  # comment\n--------\n\n\u003cbr/\u003e\n\u003cbr/\u003e\n\n**quit:**\n* q!\n---------\n**save and quit:**\n* wq!\n---------\n**Move commands:**\n* j: down\n* h: left\n* k: up\n* l: right\n---------\n**end of line:**\n* $\n* A  # start in insert mode as well\n---------\n**start of line:**\n* 0\n* ^\n* I  # start in insert mode as well.\n---------\n**end of file:**\n* G\n---------\n**start of file:**\n* gg\n---------\n**set line numbers:**\n* :set nu\n* :set rnu # line numbering relative to current cursor position.\n---------\n**unset line numbers:**\n* :set nu!\n* :set rnu!\n---------\n**search pattern:**\n* :/[pattern] # then enter\n* n # to iterate over next pattern matched.\n* N # to iterate over previous pattern matched.\n---------\n**repeat previous task:**\n* . \n---------\n**macro: # execute following in same order as given.**\n* q[macro alphabet] # starts recording the macro, e.g. `:qa`\n* q # stops the current macro.\n* @[macro alphabet] # to execute the macro.\n* V [n]j :normal @[macro alphabet]  # to execute the macro on the 'n' consecytive lines.\n---------\n**delete:**\n* x  # delete a character\n* dd # delete whole line\n* d[n]j # delete n number of lines from current position\n* di[x] # delete inside x where x can be t for \u003ctag\u003e,   ' for inverted comma\n---------\n**copy:**\n* y # y stands for yank.\n* yy # yank whole line, and similar to delete commands\n---------\n**paste:**\n* p # p stands for p whatever being copied or deleted recently.\n* P # capital 'P' pastes above the current line.\n* viw p # paste the txt in register on a word (by replacing it), by first `visual insert word` command\n---------\n**Increment a number:**\n* ctrl+A\n---------\n**Undo:**\n* u\n---------\n**Redo:**\n* Ctr-R\n---------\n**Indent:**\n* '\u003e\u003e' # indent right\n* '\u003c\u003c' # indent left\n---------\n**append(insert mode):**\n* a\n* A # append from last character of current line.\n* I # insert from beginning of the line.\n---------\n**replace:**\n* r[x] # where x is the new letter to substitute for current cursor character.\n---------\n**end of word:**\n* e\n---------\n**start of word:**\n* w\n---------\n**Delete and enter insert mode:**\n* c[motion] # `ce` will delete till end of word, and enters insert mode, check `cw`\n---------\n**Cursor-screen Movements:**\n* H # cursor to top(high) of the screen\n* M # move cursor to middle(middle) of the screen\n* L # move cursor to bottom(low) of the screen. \n---------\n**Screen movement, withough affecting cursor: (Shifting screen)**\n* zt  # current line to top\n* zz  # current line to middle\n* zb  # current line to bottom.\n* [n]Ctr-e  # scroll at a time, without cursor movement, n times optional, e.g. `10Ctr-e`\n* [n]Ctr-y  # scroll upward, without cursor movement.\n* Ctr-[D/U]  # jump half the screen\n* CTR-[F/B]  # jump full screen\n---------\n**Find next word currently cursor at:**\n* *\n* '#'  # previous\n---------\n**Find next character:**\n* f[x]  # find next first x character\n* ;  # find net x\n* ,  # find last x\n---------\n**Mark:**\n* mm  # or m[any register]\n* `m  # return to where mark was set.\n* 'm  # return to start of line where mark was set.\n---------\n**Special delete/change:**\n* [d/c]f[x]  # delete/change/replace till first x found and delete x too.\n* dt[x]  # delete till first x found, but not delete x!\n---------\n**Delete till next blank line:**\n* d}\n---------\n**Delete from previous blank line:**\n* d{\n---------\n**Check enclosing parenthesis:**\n* %  # put cursor at starting or closing parenthesis, and then write this.\n---------\n**Write from last insert position:**\n* gi  # write at x pos, do something else, press this command, to resume writing from where you left earlier!\n---------\n**jump sentences:**\n* ()\n---------\n**jump paragraphs:**\n* {}\n---------\n**Change:**\n* c[a/i]w[[/{]  # changes inside **word**[[/{], change all word (include space next to it), changes will the word end. \n---------\n**virtually select all inside:**\n* va[\"/[] or vi[\"/[]  # and then yank using y or change using c\n---------\n**Earlier - back to history!**\n* :earlier [n][m/s]  # n is number, go back to point of 2minutes/seconds earlier in the file say!\n---------\n**Store in register:**![#f03c15](https://placehold.it/15/f03c15/000000?text=+)\n* \"[a]yy  # 'a' is register name, yy is yank the whole line into the register\n* \"[a]p  # to paste anywhere the stored value in register a\n* Ctrl-R [a]  # **in insert mode**, use ctrl-r to indicate putting register value!\n---------\n**Last inserted text:**![#f03c15](https://placehold.it/15/f03c15/000000?text=+)\n* Ctrl-a  # **in insert mode.**\n---------\n**Autocompletion words:(context-aware)**![#f03c15](https://placehold.it/15/f03c15/000000?text=+)\n* Ctrl-p  # in insert mode\n* Ctrl-n  # in insert mode\n---------\n**Autocompletion line:(context-aware)**![#f03c15](https://placehold.it/15/f03c15/000000?text=+)\n* Ctrl-x Ctrl-l  # **works in insert mode only**\n---------\n**Go to C-Tag:**![#f03c15](https://placehold.it/15/f03c15/000000?text=+)\n* Ctrl-]\n* Ctrl-x Ctrl-]  # **in insert mode**, autocomplete the c-tag, instead of using Ctrl-p\n--------\n**File completion:**![#f03c15](https://placehold.it/15/f03c15/000000?text=+)\n* Ctrl-x  # **in insert mode**, to enter special completion mode\n* Ctrl-f  # to complete the file name (current or in the directory)\n--------\n**Open a new file:**![#f03c15](https://placehold.it/15/f03c15/000000?text=+)\n* :e '\u003cfile_name\u003e'\n--------\n\n**Credits:**\n\n\u003cbr/\u003e\n\n![#f03c15](https://placehold.it/15/f03c15/000000?text=+) [Autocompletion mode](http://georgebrock.github.io/talks/vim-completion/)\n\n[vim+tmux - OMG!Code](https://www.youtube.com/watch?v=5r6yzFEXajQ)\n\n[To Read](http://www.yolinux.com/TUTORIALS/LinuxTutorialAdvanced_vi.html)\n\n-------------------------------------------------------------------------\n\n**Vimium chrome Extension:**\n\nSelect a text, select that line, yank it and search.\nv / [search pattern] ESC shift-0 y p[/P]\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frupav%2Fvimcheat","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frupav%2Fvimcheat","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frupav%2Fvimcheat/lists"}