{"id":13492558,"url":"https://github.com/nosami/XSVim","last_synced_at":"2025-03-28T10:32:34.796Z","repository":{"id":97351324,"uuid":"76753091","full_name":"nosami/XSVim","owner":"nosami","description":"[Obsolete] Vim emulation layer for Xamarin Studio / Visual Studio for Mac","archived":false,"fork":false,"pushed_at":"2022-01-08T23:23:54.000Z","size":44496,"stargazers_count":158,"open_issues_count":13,"forks_count":12,"subscribers_count":7,"default_branch":"8.1","last_synced_at":"2025-03-12T04:24:05.245Z","etag":null,"topics":["f-sharp","fsharp","vim","xamarin"],"latest_commit_sha":null,"homepage":"","language":"F#","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/nosami.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}},"created_at":"2016-12-17T23:31:20.000Z","updated_at":"2025-03-09T19:05:28.000Z","dependencies_parsed_at":"2023-07-21T09:30:16.636Z","dependency_job_id":null,"html_url":"https://github.com/nosami/XSVim","commit_stats":null,"previous_names":[],"tags_count":180,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nosami%2FXSVim","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nosami%2FXSVim/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nosami%2FXSVim/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nosami%2FXSVim/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/nosami","download_url":"https://codeload.github.com/nosami/XSVim/tar.gz/refs/heads/8.1","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246012689,"owners_count":20709495,"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":["f-sharp","fsharp","vim","xamarin"],"created_at":"2024-07-31T19:01:07.048Z","updated_at":"2025-03-28T10:32:30.419Z","avatar_url":"https://github.com/nosami.png","language":"F#","readme":"# XSVim [![Gitter](https://badges.gitter.im/XSVim/Lobby.svg)](https://gitter.im/XSVim/Lobby?utm_source=badge\u0026utm_medium=badge\u0026utm_campaign=pr-badge\u0026utm_content=badge) [![Build Status](https://travis-ci.org/nosami/XSVim.svg?branch=7.4)](https://travis-ci.org/nosami/XSVim)\n\n# This addin is obsolete\n\nThis extension only works for the older editor. For VSMac 8.4, you should install VsVim instead ![VsVim installation from the Gallery](https://user-images.githubusercontent.com/667194/71757513-71efdc00-2e8e-11ea-898d-167d5d40cb17.png) as VsVim works on the new editor.\n\nSome file types (e.g. F#) are still currently using the old editor in VSMac. This addin will still work for those file types while the transition is made to the new editor.\n\n# Installation\n\nInteract with Visual Studio for Mac as follows:\n\n```\nVisual Studio -\u003e Extensions -\u003e Gallery -\u003e IDE Extensions -\u003e \"VIM\" -\u003e Install\n```\n\nThen close the current document that you are working on and open a new document to activate the plugin.\n\n## 8.1 New Editor\n\nUnfortunately, this addin does not work with the new editor that was made default in 8.1. To use this addin, make sure that the old editor is in use.\n\n![image](https://user-images.githubusercontent.com/667194/59626372-9de68280-9133-11e9-9fbe-035553d7042e.png)\n\nAlternatively, I have been working on making VsVim work for the new editor. If you want to try this out, please follow the instructions [here](https://github.com/VsVim/VsVim/pull/2733#issuecomment-538998555)\n\n# What works?\n\nMost Vim commands should work. If you see something that doesn't work, please file an issue. There's a good chance that I just don't know about it.\n\n# What doesn't work\n\n- Vim split windows. XSVim uses VS for Mac's side by side mode to emulate this, but it's only possible to have 2 vertical split windows. `\u003cC-w\u003es` and `\u003cC-w\u003ev` both switch to side by side mode.\n- Visual block mode works for most tasks, but there are some differences in the way that VS handles virtual spacing at the end of lines.\n- Selecting text with the mouse or using cmd+arrow keys doesn't switch to Visual mode\n- No leader key support or configurable key bindings.\n\n# Why don't the control keys work?\n\nSome Vim keybindings (such as Ctrl-F, Ctrl-D etc) conflict with VS's own built in keybindings. However, there is a keybinding scheme included that you may apply if you want (Visual Studio + Vim)\n\n![image](https://user-images.githubusercontent.com/667194/37340194-39775566-26b5-11e8-9119-58d171aa9a01.png)\n\n# Extras\n\n- `gd` - Goto declaration\n- `gu` - Find usages\n- `gb` - Go to base symbol\n- `gh` - Show tooltip at current caret location (`G`o `H`over)\n- `hjkl` support on the Solution Explorer pad and Test Explorer pad. Pressing `\u003cesc\u003e` on these will switch focus back to the last editor window. `jk` support on the Search Results pad.\n- Goto Pad shortcuts start with `gp`\n  - `gps` - Go to solution explorer \n  - `gpc` - Go to class pad\n  - `gpe` - Go to error list pad\n  - `gpt` - Go to Task List pad\n  - `gpp` - Go to Property pad\n  - `gpo` - Go to document outline pad\n  - `gpb` - Go to breakpoint pad\n  - `gpl` - Go to locals pad\n  - `gpw` - Go to watch pad\n  - `gpi` - Go to immediate pad\n  - `gpn` - Go to F# Interactive pad\n  - `gpf` - When there is only one search results pad, go to it\n  - `gpf1` - When there is more than one search results pad, go to the 1st\n  - `gpf2` - When there is more than one search results pad, go to the 2nd....etc.\n  - `gpdt` - Go to debugger threads pad\n  - `gpds` - Go to debugger stack trace pad\n  - `gput` - Go to unit test pad\n  - `gpur` - Go to unit test results pad\n- Insert mode escape binding. See example screenshot to see how to configure `jj` to escape when in insert mode.\n\n![Insert mode escape screenshot](screenshots/InsertModeMapping.png)\n# Looking for the latest release?\n\nCheck the [release page](https://github.com/nosami/XSVim/releases) as there is usually a more recent version of the addin here than on the Visual Studio for Mac feed. Grab the .mpack file and install it via Visual Studio -\u003e Extensions -\u003e Install from file\n\n# Support \u0026 Contributions\n\nJump in our [Gitter channel](https://gitter.im/XSVim/Lobby) and introduce yourself. \n\n# With thanks to\n\n- @shirshov\n- @mdizzy\n- @tdfacer\n\n","funding_links":[],"categories":["Addins"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnosami%2FXSVim","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnosami%2FXSVim","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnosami%2FXSVim/lists"}