{"id":18488790,"url":"https://github.com/samk13/vim","last_synced_at":"2026-02-03T01:36:21.332Z","repository":{"id":103473378,"uuid":"254729413","full_name":"Samk13/vim","owner":"Samk13","description":"Vin fish and other","archived":false,"fork":false,"pushed_at":"2020-06-14T13:49:30.000Z","size":35,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"master","last_synced_at":"2025-06-28T01:41:24.013Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Samk13.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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":"2020-04-10T20:26:04.000Z","updated_at":"2020-06-14T13:49:33.000Z","dependencies_parsed_at":"2024-01-21T21:03:55.186Z","dependency_job_id":null,"html_url":"https://github.com/Samk13/vim","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Samk13/vim","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Samk13%2Fvim","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Samk13%2Fvim/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Samk13%2Fvim/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Samk13%2Fvim/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Samk13","download_url":"https://codeload.github.com/Samk13/vim/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Samk13%2Fvim/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29026382,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-03T00:53:18.321Z","status":"ssl_error","status_checked_at":"2026-02-03T00:51:45.186Z","response_time":58,"last_error":"SSL_read: 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-11-06T12:52:50.319Z","updated_at":"2026-02-03T01:36:21.314Z","avatar_url":"https://github.com/Samk13.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# Vim\n\nModes\n===\nmodes: [normal, insert, commend, visual]\n\ninsert -\u003e normal = ESC\ninsert -\u003e commend = ESC : \ninsert -\u003e visual = ESC v\nnormal -\u003e insert = iI aA cC oO \ncommend -\u003e normal = ENTER\n\n\n\n\n\nJoy of Painting[1] with Bob Ross[2]\n=\n\n\t[1] - Vim\n\t[2] - Shawn Biddle\n\nModality\n===\n\n\tInsert  - Brush is on the canvas\n\tNormal  - Brush is off the canvas\n\tCommand - Mixing your pallette\n\nStarting Vim\n===\n\n\tvim \u003cfile\u003e\n\tvim, :e \u003cfile\u003e\n\nPen to the page\n===\n\n\ti - Enter insert mode at cursor\n\tI - Enter insert mode at first non-blank character\n\ts - Delete character under cursor and enter insert mode\n\tS - Delete line and begin insert at beginning of same line\n\ta - Enter insert mode _after_ cursor\n\tA - Enter insert mode at the end of the line\n\to - Enter insert mode on the next line\n\tO - enter insert mode on the above line\n\tC - Delete from cursor to end of line and begin insert\n\n\tThis is a test sentence\n\t\n(Next class will cover 'c')\n\nPicking up the brush\n===\n\n\tESC\n\tCtrl+[\n\nScanning the canvas\n===\n\n\t    k\n\t    ^\n\th \u003c   \u003e l\n\t    v\n\t    j\n\nyy - Copies a line\n\nyw - Copies a word\n\ny$ - Copies from where your cursor is to the end of a line\n\nv - Highlight one character at a time using arrow buttons or the h, k, j, l buttons\n\nV - Highlights one line, and movement keys can allow you to highlight additional lines\n\np - Paste whatever has been copied to the unnamed register\n\nd - Deletes highlighted text\n\ndd - Deletes a line of text\n\ndw - Deletes a word\n\nD - Deletes everything from where your cursor is to the end of the line\n\nd0 - Deletes everything from where your cursor is to the beginning of the line\n\ndgg - Deletes everything from where your cursor is to the beginning of the file\n\ndG - Deletes everything from where your cursor is to the end of the file\n\nx - Deletes a single character\n\nu - Undo the last operation; u# allows you to undo multiple actions\n\nCtrl + r - Redo the last undo\n\n. - Repeats the last action\n\n4. Vim commands \n\nGetting from a to b: Motions\n===\nBasics: wWbBeE\n\n\tw - Forward to the beginning of next word\n\tW - Forward to the beginning of the next WORD\n\tb - Backward to the next beginning of a word\n\tB - Backward to the next beginning of a WORD\n\te - Forward to the next end of word\n\tE - Forward to the next end of WORD\n\nSlightly less basic: fFtT\nAll follow [(n)um]\u003cverb\u003e\u003cn(o)un\u003e syntax\n\n\t[n]f\u003co\u003e - Forward until (nth) (o)  (Inclusive)\n\t[n]F\u003co\u003e - Backward until (nth) (o) (Inclusive)\n\t[n]t\u003co\u003e - Forward until (nth) (o)  (Exclusive)\n\t[n]T\u003co\u003e - Backward until (nth) (o) (Exclusive)\n\n\tabcdefg, abcdefg, abcdefg\n\nSearching\n===\n\n\t/  - Forward  turn off highlight \":nohl\" : (no highlight) \n\t?  - Backward\n\t*  - Word under cursor - forward  (bounded)\n\tg* - Word under cursor - forward  (unbounded)\n\t#  - Word under cursor - backward (bounded)\n\tg# - Word under cursor - backward (unbounded)\n\tn  - Next result, forward\n\tN  - Next result, backward\n\n(Note here to explain what bounded/unbounded mean)\n\nCopy/Paste\n===\n\n\ty - Yank. Example: yw (yank word)\n\tp - paste after cursor\n\tP - paste before cursor\n\t\n\tgg - go to the begenning of the file\n\tG - go to the end\n\t\n\tggvG  - select all\n\t\n\n# vim: set syn=mkd :\n\n\n\n\n\nHuckleberry Vim\n===============\n\n\tOverview of class one:\n\tMoving: [NORM] hjklwbefFtT\n\tInserting: [NORM] aAsSoOiIC\n\tWriting: [NORM]:w \u003cfile\u003e\n\tQuitting: [NORM]:q\n\tSearching: /?*,g*,#,g#,nN\n\tCopy/Paste: yYpP\n\nUnderstanding the Argument/Noun/Verb Relationship\n=================================================\nEditing commands generally follow the structure of:\n\n\t[register][num/range]\u003cverb\u003e\u003cnoun|(i|a)\u003ctext object\u003e\u003e\t\n\nExample #1:\n\n\t3dw - delete 3 words\n\t3 d w\n\t| | ` word ---.\n\t| ` delete     } 3 words\n\t` 3 ----------/\n\nExample #2: (More detail later)\n\n\tci(\n\tc i (\n\t| | ` Parenthesis text-object\n\t| ` Inside text-object\n\t` change\n\nArguments = Ranges\nNouns     = Motions/Text Objects\nVerbs     = Commands\n\nCommon Edit commands\n====================\n\n\td - Delete: [range]d\u003cmotion\u003e\n\t\tdd  - delete current line\n\t\tdj  - delete current and next line (j = down)\n\t\t2dj - delete current and 2 lines downward\n\t\n\tc - Change (Same as d but put me in insert mode)\n\t\tcw - change word\n\t\tcc = S - Delete current line and enter insert mode\t\n\t\t2cw - Delete 2 words and enter insert mode\n\t\n\t~  - Toggle the case of character under cursor\n\tg~ - Toggle case of [motion]\n\t\tg~w - Toggle case of cursor -\u003e end of word\n\t\t\ttr|ue -\u003e g~w -\u003e trUE\n\t\tg~iw - Toggle case of entire word under cursor\n\t\t\ttr|ue -\u003e g~iw -\u003e TRUE\n\t\n\tp - Paste \n\t\n\nRegisters\n=========\nAccessing:\n\n\t\"\u003creg\u003e\n\t\tExample:\n\t\t\t\"ayy - Yank current line into 'a' register\n\t\t\t\"ap  - Paste 'a' register\n\n\t\u003cC-r\u003e\u003creg\u003e - Paste contents of \u003creg\u003e\n\t\tExample:\n\t\t\t[INS] Hello [ESC] byw [INS]\u003cC-r\u003e\" -\u003e HelloHello\n\nListing:\n\n\t:reg\n\nSpecial registers:\n\n\t\" - Noname buffer - Last dcsxy\n\t_ - Blackhole buffer\n\t% - Filename\n\t/ - Last search\n\t: - Last command\n\t. - Last edit\n\t\nRegister assignment commands\n============================\n\n\ty - Yank\n\tq - Macros (much later)\n\tm - Marks  (a little later)\n\t(Any command that edits will assign to the \"\" [noname buffer])\n\n\nAdvanced motions\n================\n\t\n\t() - Sentences  (\". \" delimited words)\n\t{} - Paragraphs (Next empty line)\n\t\n\t\tExample:\n\t\t\td} - Delete until next paragraph (useful for deleting unnecessary conditional blocks)\n\t\n\t\t\tif (something)\n\t\t\t{\n\t\t\t\ttest\n\t\t\t}\n\t\n\t; - Repeat last motion forward\n\t, - Repeat last motion backward\n\tg\u003chjkl\u003e - Go down a _visual_ line\n\t\tThis is some text that's going to wrap so I have to fill in a lot of words. I can never think of things to type here because I'm not a creative person but this will demonstrate visual versus hardbroken lines.\n\t\tThis is a second line\n\t\n\t\u003c#\u003eG - Go to Line #\n\tgg   - Go to the top of the file\n\t\n\t]] - Next section (Depending on your current filetype this may move between functions)\n\t[[ - Previous section (see above note)\n\t0 - Front of line\n\t^ - Front of line (first non-blank)\n\t% - Matching brace/bracket/paren/tag(with matchtag plugin, see session 3)\n\t$ - End of line\n\t\nText objects\n============\n\t\n\t{}[]()w\u003c\u003et'\"`\n\t\n\ti vs a:\n\t\ti = Inside\n\t\t\tExample:\n\t\t\t\tself.test[obj|ect] -\u003e ci[ -\u003e self.test[|]\n\t\n\t\ta = Around\n\t\t\tExample:\n\t\t\t\tself.test[obj|ect] -\u003e ca[ -\u003e self.test|\n\t\n\nMisc. commands\n==============\n\n\t[count](\u003c|\u003e) - Indent count\tlines\n\t\tExample:\n\t\t\t3\u003e\n\n1\n2\n3\n\n\t\u003crange\u003e[count](\u003c|\u003e) - Indent given range count times\n\n1\n2\n3\n4\n\n\tu - Undo (See :help undo, it's complicated)\n\tC-r - Redo\n\t. - Redo last change\n\tzz - Center screen\n\tZZ - Write and quit. Only write if file has changed (preserves last mod time)\n\t\n\nManaging multiple files at once\n===============================\n\t\n\t:tabnew [file]       - Open a new tab with given file (or empty file)\n\tgt or :tabn[ext]     - Next tab\n\tgT or :tabp[revious] - Previous tab\n\t:tabm[ove] # - Move current tab to position # (zero-indexed), no argument = end\n\t:tabc        - Close current tab\n\t:tabo        - Close all other tabs except current\n\t\nGoing over my vimrc\n===================\n...\n\nQuestions\n=========\n....\n\n# vim: set syn=mkd nonu nolist :\n\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsamk13%2Fvim","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsamk13%2Fvim","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsamk13%2Fvim/lists"}