{"id":18606469,"url":"https://github.com/ok97465/spyder_okvim","last_synced_at":"2025-04-10T20:31:41.843Z","repository":{"id":38384118,"uuid":"309342512","full_name":"ok97465/spyder_okvim","owner":"ok97465","description":"A plugin for Spyder to enable Vim keybindings","archived":false,"fork":false,"pushed_at":"2024-09-09T14:08:31.000Z","size":4761,"stargazers_count":12,"open_issues_count":8,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-09-09T16:46:08.947Z","etag":null,"topics":["easymotion","plugin","python","spyder","spyder-plugin","vim"],"latest_commit_sha":null,"homepage":"","language":"Python","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/ok97465.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","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},"funding":{"github":["ok97465"],"patreon":null,"open_collective":null,"ko_fi":null,"tidelift":null,"community_bridge":null,"liberapay":null,"issuehunt":null,"otechie":null,"lfx_crowdfunding":null,"custom":null}},"created_at":"2020-11-02T10:58:15.000Z","updated_at":"2024-09-09T13:51:41.000Z","dependencies_parsed_at":"2024-09-09T16:34:54.118Z","dependency_job_id":"19145854-b743-45c7-bb0f-d737befb0202","html_url":"https://github.com/ok97465/spyder_okvim","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ok97465%2Fspyder_okvim","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ok97465%2Fspyder_okvim/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ok97465%2Fspyder_okvim/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ok97465%2Fspyder_okvim/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ok97465","download_url":"https://codeload.github.com/ok97465/spyder_okvim/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":223445830,"owners_count":17146361,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":["easymotion","plugin","python","spyder","spyder-plugin","vim"],"created_at":"2024-11-07T02:25:43.193Z","updated_at":"2024-11-07T02:25:43.854Z","avatar_url":"https://github.com/ok97465.png","language":"Python","funding_links":["https://github.com/sponsors/ok97465"],"categories":[],"sub_categories":[],"readme":"# Spyder Okvim\n\n![Linux tests](https://github.com/ok97465/spyder_okvim/workflows/Linux%20tests/badge.svg)\n![Macos tests](https://github.com/ok97465/spyder_okvim/workflows/Macos%20tests/badge.svg)\n![Window tests](https://github.com/ok97465/spyder_okvim/workflows/Windows%20tests/badge.svg)\n[![codecov](https://codecov.io/gh/ok97465/spyder_okvim/branch/main/graph/badge.svg?token=7JIIKTOZMO)](https://codecov.io/gh/ok97465/spyder_okvim)\n\nSpyder Plugin for executing Vim commands inside the code editor.\nThis repository is reusing some codes of [spyder-ide/spyder-vim](https://github.com/spyder-ide/spyder-vim)\n\n```text\nDon't make an issue to spyder github after install okvim.\n```\n\nIf you have a problem after installing this, please retry after uninstalling okvim.\n\n## Known Issues\n\n- Okvim is not working when the spyder editor is undocked from mainwindow.\n\n## Overview\n\nThis plugin supports movements.\n\n- hjkl, ^u, %, iw, i(, /, n, N, ;, ...\n  \nThis plugin supports a combination of operators and motions\n\n- diw, di(, c%, c/foo, cn, ygg, d2w, 2d2W ...\n  \nThis plugin supports spyder command.\n\n- run selection, formatting, toggle break, toggle comment, ...\n\nThis plugin support macro(experimental).\n\n| Movements | Combination | Spyder command |\n|------|-------------|----------------|\n|![movement gif](/doc/ex_movement.gif) | ![combination gif](/doc/ex_combination.gif)| ![spyder cmd gif](/doc/ex_spyder_cmd.gif) |\n\n## Installation\n\nTo install this plugin, you can install the package locally using pip as it follows.\n\n```text\npip install -U .\n```\n\nIf spyder-vim is installed, you need to uninstall it.\n\n## Modes\n\nThe following modes are supported:\n\n- Normal\n- Visual\n- Visual Line\n\n## Actions\n\nThe following actions are supported:\n\n- x, s, r\n- C, D, S\n- dd, cc, yy\n- \u003c\u003c, \u003e\u003e\n- p, P\n- d{motion}, c{motion}\n- \u003c{motion}, \u003e{motion}\n- gu{motion}, gU{motion} g~{motion}, ~\n- u, ^R\n- J\n- .\n\n## Motions\n\nThe following motions are supported:\n\n- hjkl\n- 0, ^, $\n- w, W, b, e\n- iwW, i()[]{}bB, i'\"\n- G, g\n- ^D, ^U, ^F, ^B\n- HLM\n- %\n- f, F, t, T, ;, ,\n- /, N, n\n- Enter, Space, Backspace\n- easymotion\n\n## Vim keys\n\n- ^A : Add [count] to number\n- ^X : Subtract [count] to number\n- K : Inspect current object\n- gd : Go to definition.\n- gt, gT : Cycle to next/previous file.\n- zz, zt, tb : Cursor line to some locations of screen.\n- ZZ : Save and close current file.\n- q, @: macro\n\n## Special keys\n\n- \\\u003cleader\\\u003ef : autoformatting\n- \\\u003cleader\\\u003eb : Toggle break point\n- \\\u003cleader\\\u003er : run selected text or current line in console.\n- \\\u003cleader\\\u003eenter :  run cell and advance\n- \\\u003cleader\\\u003ep : spyder switcher\n- \\\u003cleader\\\u003es : spyder symbol switcher\n- [d : goto previous warning/error\n- ]d : goto next warning/error\n- gc{motion} : toggle comment (support visual mode)\n  - gcc : toggle comment of current line\n\n## Vim Surround\n\n- surroundings : '\"()[]{}bB\n\nThe following action are supported:\n\n- ys{motion}{surroundings} in normal mode: add surroundings in pairs.\n- ds{surroundings} in normal mode: delete surroundings in pairs.\n- cs{surroundings}{surroundings} in normal mode: change surroundings in pairs.\n- S{surroundings} in visual mode: add surroundings in pairs.\n\n## Fuzzy path finder\n\nThe shortcut to invoke the fuzzy path finder is Ctrl+p.\nYou can use ^p, ^n, ^f, ^b, ^u, ^d to navigate the path list.\n\n![fuzzy path finder](/doc/path_finder.gif)\n\n## Config page\n\n![config page](/doc/config_page.png)\n\n## Easymotion\n\n![easymotion](/doc/easymotion.gif)\n\nYou can use EasyMotion commands as an argument for d, c, or any other command that takes motion as an argument.\n\n| Motion Command                      | Description                                                                                                    |\n| ----------------------------------- | -------------------------------------------------------------------------------------------------------------- |\n| `\u003cleader\u003e\u003cleader\u003e w`                | Start of word forwards                                                                                         |\n| `\u003cleader\u003e\u003cleader\u003e b`                | Start of word backwards                                                                                        |\n| `\u003cleader\u003e\u003cleader\u003e j`                | Start of line forwards                                                                                         |\n| `\u003cleader\u003e\u003cleader\u003e k`                | Start of line backwards                                                                                        |\n| `\u003cleader\u003e\u003cleader\u003e f \u003cchar\u003e`         | Find character forwards                                                                                        |\n| `\u003cleader\u003e\u003cleader\u003e F \u003cchar\u003e`         | Find character backwards                                                                                       |\n\n## Search 2ch(like vim-sneak)\n\nJump to any location specified by two characters.\n\nIt works with multiple lines, operators (including repeat .) motion-repeat (; and ,), visual mode.\n\nThis search is invoked with s by exactly two characters.\nThis search is invoked with operators via z (because s is taken by vim surround)\n\nAfter searching for two characters, if there are the characters in another group, a comment is displayed around the group.\n![sneak](/doc/sneak.gif)","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fok97465%2Fspyder_okvim","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fok97465%2Fspyder_okvim","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fok97465%2Fspyder_okvim/lists"}