web-dev-qa-db-fra.com

Emacs Keybindings dans Visual Studio 2012 ou 2013

Je préférerais avoir des raccourcis clavier Emacs dans MSVS. Dans MSVS 2008, cela était pris en charge nativement, et dans MSVS2010, il y avait une extension pour y parvenir.

http://blogs.msdn.com/b/visualstudio/archive/2010/09/01/emacs-emulation-extension-now-available.aspx

Puis-je installer cette extension dans MSVS 2012? (J'ai jusqu'à présent échoué ...) Existe-t-il un autre moyen de réaliser des raccourcis clavier Emacs?

56
Woodrow Douglass

J'ai compris comment obtenir l'extension d'émulation emacs pour VS 2010 à installer et à exécuter sur VS 2012. C'est un peu de la mémoire, mais voici ce que j'ai fait.

  1. Téléchargez extension d'émulation Emacs .

  2. Renommez-le d'EmacsEmulations.vsix en EmacsEmulations.Zip et décompressez-le dans un dossier.

  3. Modifiez le <VisualStudio Version="10.0"> valeur sur le fichier extensions.vsixmanifest (XML):

    <SupportedProducts>
        <VisualStudio Version="11.0">
        <Edition>Pro</Edition>
        </VisualStudio>
    </SupportedProducts>
    

Remarque: Visual Studio 2013 fonctionne en définissant Version="12.0". Et VS Express peut être utilisé en définissant <Edition>Express_All</Edition>

  1. Compressez le contenu dans le dossier et sauvegardez-le en EmacsEmulations.vsix.

  2. Exécutez le fichier vsix en tant qu'administrateur. Ceci est nécessaire pour que l'extension puisse écrire Emacs.vsk dans le dossier des fichiers du programme. Je n'étais pas sûr de la meilleure façon de le faire, j'ai donc exécuté une invite de commande en tant qu'administrateur, puis j'ai exécuté start emacsemulations.vsix de l'invite.

  3. Démarrez VS 2012 en tant qu'administrateur (une seule fois). À ce stade, l'extension doit apparaître comme installée dans le gestionnaire d'extensions et la liaison de touches doit être répertoriée dans Tools/Options/Keyboard. Sélectionnez les raccourcis clavier emacs.

  4. À ce stade, cela devrait fonctionner. Cela ne fonctionnait pas pour moi cependant, mais j'ai négligé d'exécuter l'étape 5 en tant qu'administrateur, j'ai donc dû manuellement copier emacs.vsk au bon endroit . Quand cela ne fonctionnait toujours pas, j'ai fait apparaître la fenêtre de commande VS (Windows/Autres fenêtres/Fenêtre de commande) et j'ai tapé Edit.EmacsBreakLine et l'invite et le tour est joué.

Je n'ai pas plus d'informations que cela donc YMMV. Bonne chance!

76
jaket

Pour info: l'extension d'émulation emacs est désormais open source.

7
ganaware

Si vous souhaitez le faire fonctionner avec les éditions Express de VS2013, assurez-vous également de changer la ligne Edition en <Edition>Express_All</Edition>. Voir aussi la description de l'élément Edition .

4
skwillt

La méthode de Jaket a d'abord fonctionné pour moi mais a cessé de fonctionner après quelques jours. Après avoir cherché une solution en désespoir de cause, j'ai ensuite trouvé XKeymacs [1] via une entrée de blog [2]. XKeymacs ajoute des raccourcis clavier de style keymacs à l'ensemble de l'environnement Windows et fonctionne également dans Visual Studio. Cela peut prendre un certain temps pour s'y habituer (par exemple, Ctr-T ne fonctionne plus dans IE plus), mais je suis très heureux de pouvoir utiliser les raccourcis clavier emacs partout :)

  1. http://www.cam.hi-ho.ne.jp/oishi/indexen.html
  2. http://lexicalclosures.blogspot.com/2010/10/emacs-resharper-visual-studio-xkeymacs.html
3
Rahul Jha

Je ne crois pas que toutes les étapes de la réponse acceptée soient correctes. Au lieu:

  1. Suivez 1-4 comme ci-dessus pour produire un EmacsEmulations.vsix fichier.
  2. Installez l'extension en tant qu'utilisateur qui a besoin des liaisons et pas en tant qu'administrateur.
  3. Copiez manuellement le Emacs.vsk fichier du contenu décompressé de l'extension au Common7\IDE dossier dans le répertoire du programme Visual Studio (pour lequel vous aurez besoin d'autorisations élevées).

L'exécution de l'extension en tant qu'administrateur n'obtiendra pas la copie de fichier souhaitée et ne permettra pas aux autres utilisateurs d'utiliser avec succès les nouvelles liaisons de touches.

3
Tracy Wadleigh

L'astuce qui a fonctionné pour moi a été de copier le fichier Emacs.vsk dans:

C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE>

annuaire. D'une certaine manière, lorsque je l'ai installé pour la première fois, il avait été copié sur le

C:\Program Files\Microsoft Visual Studio 12.0\Common7\IDE>

annuaire

2
emlap

Pour installer le fichier EmacsEmulations.vsix pour Microsoft Visual Studio Community 2015 (qui indique sa version comme 14.0), il existe un outil d'installation, VSIXInstaller.exe, dans le dossier:

C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE>

Après avoir modifié le fichier vsix comme ci-dessus (en insérant la version "14.0" et l'édition "Community" dans mon cas), ce qui suit a fonctionné pour moi à partir d'une ligne de commande admin (remplissez vos propres chemins d'accès complets):

VSIXInstaller.exe/a EmacsEmulations.vsix

Notez qu'après avoir sélectionné Emacs dans la liste déroulante de mappage du clavier dans Outils/Options/Environnement, le changement ne semble pas avoir pris tout de suite. J'ai redémarré Visual Studio et cela n'a pas pris non plus.

J'ai ensuite recherché les liaisons de clés installées avec "emacs" dans le nom et elles étaient là. Apparemment, après cela, ils étaient alors actifs dans l'éditeur, donc je ne suis pas sûr à 100% de ce qui a déclenché l'activation.

0
limey