Comment “Éditer avec Vim” en tant qu'administrateur sous Windows?

6

Lorsque vous installez gvim sous Windows, vous obtenez un élément de menu contextuel Explorer: "Éditer avec Vim". Existe-t-il un moyen d'ajouter un "Éditer avec Vim en tant qu'administrateur" ou simplement de changer le raccourci existant pour toujours ouvrir le fichier avec Vim en mode Administrateur? J'ai essayé de configurer gvim.exepour toujours exécuter en tant qu'administrateur, mais cela semble casser l'élément de menu contextuel; cela donne l'erreur "Erreur lors de la création du processus: Vérifiez si gvim est sur votre chemin!"

MISE À JOUR: magicandre1981 m'a montré un bon moyen d'utiliser nircmd pour réaliser partiellement ce que je veux. Une fois que j’ai installé nircmd.exe dans le répertoire system32 de Windows, l’ajouter au registre (le placer dans un .regfichier et le lancer ) a ajouté un élément du menu contextuel qui me permettait de modifier les fichiers en tant qu’administrateur:

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\*\shell\Edit with Vim as Administrator]

[HKEY_CLASSES_ROOT\*\shell\Edit with Vim as Administrator\command]
@="nircmd.exe elevate \"C:\\Program Files (x86)\\Vim\\vim74\\gvim.exe\" \"%1\""

Il n'est toujours pas aussi bien intégré que je le souhaiterais, car il n'utilise pas la DLL d'assistance Vim et nécessite l'utilisation de l'outil supplémentaire nircmd.

Jez
la source
Vous devriez marquer sa réponse comme étant la bonne.
AzP
Attends quoi? La solution est-elle maintenant dans la question et la réponse, qui est en réalité un indice qui n'a rien à voir avec vim, est sélectionnée comme correcte? Ce n'est pas comme ça que StackOverflow fonctionne. S'il vous plaît nettoyer cela.
Bruno Bronosky

Réponses:

4

J'utilise l' outil nircmd qui offre la possibilité elevated'exécuter des programmes en tant qu'administrateur.

Voici une option pour ouvrir des projets Visual Studio (fichiers sln) en tant qu'administrateur:

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\VisualStudio.Launcher.sln\Shell\Open Solution elevated]
"HasLUAShield"=""

[HKEY_CLASSES_ROOT\VisualStudio.Launcher.sln\Shell\Open Solution elevated\Command]
@="\"C:\\Windows\\nircmd.exe\" elevate \"C:\\Program Files (x86)\\Common Files\\Microsoft Shared\\MSEnv\\VSLauncher.exe\" \"%1\""

Je ne sais pas comment gvim s'ajoute au clic droit, donc modifiez les entrées. L' HasLUAShieldentrée ajoute le bouclier UAC à l'entrée pour qu'il soit plus facile de voir que cela exécute une tâche en tant qu'administrateur.

magicandre1981
la source
L'idée de magicandre1981 fonctionne effectivement. Merci. Je viens de joindre une capture d'écran ici. Une chose à ajouter: lorsque vous enregistrez le fichier .reg, vous feriez mieux de l’enregistrer à l’aide de l’encodage Unicode. Vérifiez également la version de Vim et le chemin dans le fichier .reg pour voir s’il est correct pour votre cas. Ça marche!
Bianco le
Je ne pense pas que cela contienne réellement la réponse pour vim. Je pense que c'est un indice basé sur Visual Studio. Pouvons-nous obtenir une réponse réelle pour vim?
Bruno Bronosky
@BrunoBronosky allez, prenez un peu d'initiative et cherchez la clé car je n'ai pas installé vim.
magicandre1981
En toute honnêteté, je dois avouer que je me sers de Windows pour la première fois depuis environ 1997. Cela dit, cela pourrait être une mine d’informations pour quelqu'un de plus au courant. Mais pour moi, cela ressemble plus à une blague. Je l'ai compris. Mais c'était très peu-StackOverflow.
Bruno Bronosky