All Projects → nosami → Xsvim

nosami / Xsvim

Licence: mit
[Obsolete] Vim emulation layer for Xamarin Studio / Visual Studio for Mac

Programming Languages

fsharp
127 projects

Projects that are alternatives of or similar to Xsvim

Chameleon
Chameleon is a flexible media player build with Xamarin.Forms
Stars: ✭ 137 (-12.18%)
Mutual labels:  xamarin
Xamu Infrastructure
Extensions, MVVM classes, behaviors and other misc. useful code bits from Xamarin University
Stars: ✭ 144 (-7.69%)
Mutual labels:  xamarin
Keralua
C# Native bindings of Lua 5.4 (compatible with iOS/Mac/Android/.NET/.NET Core/UWP)
Stars: ✭ 147 (-5.77%)
Mutual labels:  xamarin
Xam.plugin.simpleappintro
Just a nice and simple AppIntro for your Xamarin Forms project
Stars: ✭ 139 (-10.9%)
Mutual labels:  xamarin
Httptracer
Stars: ✭ 142 (-8.97%)
Mutual labels:  xamarin
Nplus1daysofmvvmcross
Repos from the video series for N+1 days of MvvmCross - from http://slodge.blogspot.co.uk - indexed by Aboo at http://mvvmcross.wordpress.com
Stars: ✭ 144 (-7.69%)
Mutual labels:  xamarin
Bingmapsresttoolkit
This is a portable class library which makes it easy to access the Bing Maps REST services from .NET.
Stars: ✭ 136 (-12.82%)
Mutual labels:  xamarin
Xamarines
🕹️📱Cross-Platform Nintendo Emulator using Xamarin and .Net Standard!
Stars: ✭ 153 (-1.92%)
Mutual labels:  xamarin
Restclient.net
.NET REST Client Framework for all platforms
Stars: ✭ 143 (-8.33%)
Mutual labels:  xamarin
Simpleauth
The Simplest way to Authenticate and make Rest API calls in .Net
Stars: ✭ 148 (-5.13%)
Mutual labels:  xamarin
Plugin.audiorecorder
Audio Recorder plugin for Xamarin and Windows
Stars: ✭ 140 (-10.26%)
Mutual labels:  xamarin
Mvvmvalidation
Lightweight library that helps reduce boilerplate when implementing validation in XAML MVVM applications
Stars: ✭ 141 (-9.62%)
Mutual labels:  xamarin
Xamarin.bindings
A list of existing Xamarin binding libraries.
Stars: ✭ 146 (-6.41%)
Mutual labels:  xamarin
Ble.net
Cross-platform Bluetooth Low Energy (BLE) library for Android, iOS, and UWP
Stars: ✭ 137 (-12.18%)
Mutual labels:  xamarin
Graphicscontrols
Experimental GraphicsControls - Build drawn controls (Cupertino, Fluent and Material)
Stars: ✭ 149 (-4.49%)
Mutual labels:  xamarin
Xamarin.gradlebindings
VS add-in. Creates Xamarin.Android Binding Projects using gradle
Stars: ✭ 136 (-12.82%)
Mutual labels:  xamarin
Androidsupportcomponents
Xamarin bindings for Android Support libraries - For AndroidX see https://github.com/xamarin/AndroidX
Stars: ✭ 144 (-7.69%)
Mutual labels:  xamarin
Protobuild
This project has been retired.
Stars: ✭ 153 (-1.92%)
Mutual labels:  xamarin
Megaapiclient
MegaApiClient is a C# .Net library to access http://mega.co.nz / http://mega.nz cloud storage and file hosting service.
Stars: ✭ 151 (-3.21%)
Mutual labels:  xamarin
Xamarin Forms Carouselview
A Xamarin.Forms custom control recipe that mirrors the functionality of the CarouselPage - except the "pages" are simply Content Views.
Stars: ✭ 147 (-5.77%)
Mutual labels:  xamarin

XSVim Gitter Build Status

This addin is obsolete

This extension only works for the older editor. For VSMac 8.4, you should install VsVim instead VsVim installation from the Gallery as VsVim works on the new editor.

Some 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.

Installation

Interact with Visual Studio for Mac as follows:

Visual Studio -> Extensions -> Gallery -> IDE Extensions -> "VIM" -> Install

Then close the current document that you are working on and open a new document to activate the plugin.

8.1 New Editor

Unfortunately, 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.

image

Alternatively, I have been working on making VsVim work for the new editor. If you want to try this out, please follow the instructions here

What works?

Most 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.

What doesn't work

  • 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. <C-w>s and <C-w>v both switch to side by side mode.
  • 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.
  • Selecting text with the mouse or using cmd+arrow keys doesn't switch to Visual mode
  • No leader key support or configurable key bindings.

Why don't the control keys work?

Some 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)

image

Extras

  • gd - Goto declaration
  • gu - Find usages
  • gb - Go to base symbol
  • gh - Show tooltip at current caret location (Go Hover)
  • hjkl support on the Solution Explorer pad and Test Explorer pad. Pressing <esc> on these will switch focus back to the last editor window. jk support on the Search Results pad.
  • Goto Pad shortcuts start with gp
    • gps - Go to solution explorer
    • gpc - Go to class pad
    • gpe - Go to error list pad
    • gpt - Go to Task List pad
    • gpp - Go to Property pad
    • gpo - Go to document outline pad
    • gpb - Go to breakpoint pad
    • gpl - Go to locals pad
    • gpw - Go to watch pad
    • gpi - Go to immediate pad
    • gpn - Go to F# Interactive pad
    • gpf - When there is only one search results pad, go to it
    • gpf1 - When there is more than one search results pad, go to the 1st
    • gpf2 - When there is more than one search results pad, go to the 2nd....etc.
    • gpdt - Go to debugger threads pad
    • gpds - Go to debugger stack trace pad
    • gput - Go to unit test pad
    • gpur - Go to unit test results pad
  • Insert mode escape binding. See example screenshot to see how to configure jj to escape when in insert mode.

Insert mode escape screenshot

Looking for the latest release?

Check the release page 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 -> Extensions -> Install from file

Support & Contributions

Jump in our Gitter channel and introduce yourself.

With thanks to

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].