web-dev-qa-db-fra.com

Utiliser Vi, Vim ou GVim en tant que IDE

Je suis obligé d'utiliser VS2008 pour le gros de mes projets au travail, mais chaque fois que le fichier texte impair doit être édité, j'utilise Vim.

Maintenant, je sais qu’il existe des plugins et tout ce qui peut faire en sorte que VIM fonctionne comme un IDE. Je me demande donc si quelqu'un l'utilise réellement comme IDE?

MODIFIER:

Pour ceux d'entre vous qui pensent parler au nom des masses en déclarant que Vim ne doit pas être utilisé en tant qu'EDI, considérez que les fonctionnalités IDE sont la principale fonctionnalité de la liste des demandes de fonctionnalités officielles sur vim.org. .

43
Nippysaurus

Vim est un logiciel étonnant, mais assez désordonné en raison de son âge. Vi a été publié en 1976 et Vim a été publié en 1991. Par exemple, Vim propose différentes manières de compléter le texte, du simple mot clé au système de complétion "omni". En plus de cela, certains plugins choisissent de travailler avec la fonctionnalité intégrée, alors que d'autres le remplacent simplement en gros. Espérons que les suggestions suivantes vous permettent de commencer.

IDE avec Vim

Vous voudrez peut-être essayer ce nouveau correctif pour Vim qui permet d’utiliser Vim dans Visual Studio en tant qu’éditeur:

Vundle

Tout d’abord, installez le plugin Vundle plugin manager pour Vim! Cela fonctionne très bien et facilite la gestion des plugins Vim. Gère l’installation, les mises à jour et la suppression.

Par exemple, votre .vimrc ne contient plus que:

" === Plugins! ===
Plugin 'junegunn/fzf'
Plugin 'scrooloose/nerdtree'
Plugin 'w0rp/ale'
...

Et une commande PluginUpdate les installera ou les mettra à jour.

Plugins pour un Vim-IDE

Les scripts vim suivants donnent à Vim plus de convivialité IDE. Gardez à l'esprit que Vim possède un grand nombre de fonctionnalités intégrées, prenez donc le temps de les apprendre (ce qui est un voyage en cours) avant de charger 20 plugins.

Les plugins ayant le plus grand impact pour moi sont fzf et ALE . Vous voudrez installer fzf et ripgrep .

La navigation:

  • FZF - Plugin favori, navigation dans un système de fichiers génial et recherche de texte
  • Nerd Tree - Navigation dans le système de fichiers
  • Command-T - Rechercher un projet par nom de fichier à ouvrir, recommanderais plutôt FZF
  • CtrlP - Alternative à Command-T, recherche de fichiers flous et de tampons. Généralement plus lent, mais ne nécessite pas de compilation
  • Barre de balises - Navigation dans les codes par fonctions
  • Bookmarking - Signets pour vim (mon propre plugin :))

Complétion du texte: _

  • delimitMate - Fermeture automatique des parenthèses, des accolades .. etc
  • tcomment - Commentaire facile/commenter les commandes de code source
  • Ultisnips - Great Vim snippets system
  • YouCompleteMe - Achèvement du code, nombreuses fonctionnalités
  • neocomplete - Complétion de code légèrement plus simple que YCM

Personnellement, j’ai trop de complétude de code et je ne fais que compter sur la fonction de complétion de texte CTRL-N de Vim, à vous de choisir, mais souvenez-vous de CTRL-N! Le système de complétion intégré de Vim va au-delà de cela, avec différents modes de complétion tels que la complétion de nom de fichier avec CTRL-X CTRL-F ou "omni-complétion", qui tente d'offrir une complétion dépendante du contexte spécifique au type de fichier jusqu'à CTRL-X CTRL-O. Omni-completion nécessite des plugins spécifiques au type de fichier, le paquet vim-go pour Golang le prend en charge.

Formatage:

  • tabulaire - Aligner facilement le texte
  • vim-surround - Entourez rapidement du texte (par exemple, des crochets, des balises ...)

Tout simplement génial:

  • ALE - La vérification de la syntaxe Live dans de nombreuses langues prend en charge les nouvelles fonctionnalités de Vim 8, telles que les tâches asynchrones, afin de ne pas geler Vim pendant son exécution.
  • fugitive - Git dans vim, diffs, blâme ... etc
  • gitgutter - Diff en direct de la version git du fichier
  • YankRing - Accès facile aux objets texte précédemment copiés ou supprimés

Meilleure interface graphique:

  • Airline - Plus facile à lire la ligne d'état avec plus d'informations utiles
  • Gundo - Visualisez l’historique d'annulation de vim sous forme d'arborescence (mon préféré, assurez-vous d'activer l'annulation persistante dans Vim)

Schémas de couleurs:

Distributions Vim

Plutôt que de vous charger vous-même de l'installation et de la configuration, vous pouvez utiliser les projets suivants pour démarrer rapidement avec un plus IDE comme Vim. Les deux projets ci-dessous incluent de nombreux plugins que j'ai mentionnés ci-dessus:

Je vous recommande de ne pas les utiliser cependant. Vous en apprendrez beaucoup plus si vous prenez le temps de configurer vim vous-même et d'installer des plugins dans un processus échelonné pour bien apprendre chacun d'eux.

Vim Plugin Guides

VimAwesome peut être un bon endroit pour parcourir les plugins Vim et en trouver des utiles et populaires.

Patches Vim

En plus de ces scripts, vous voudrez peut-être examiner certains des correctifs suivants pour Vim. Je ne les ai pas utilisés, donc je ne suis pas sûr de leur qualité, mais la plupart d'entre eux semblent prometteurs. Vous pouvez voir tous les patches ici , ceux qui font que vim est davantage un IDE sont:

  • Vérification du code - Vérification du code à la volée (note: Syntastic est un meilleur choix de nos jours).
  • Clewn - Permet de déboguer et de parcourir le code dans Vim en utilisant GDB.

Une fois ces scripts et ces correctifs installés, les fonctionnalités de Vim devraient être assez proches de celles de Visual Studio ou d'Eclipse.

46
David Terei

Vous pouvez également faire l’inverse et utiliser un plugin appelé viemu . Celui-ci vous donne le mode vi au sein de VS IDE, ce qui permet aux collègues de co-diriger plus facilement votre système.

15
xtofl

Taglist est un plugin formidable - ne partez pas sans elle.

Vous pouvez également configurer la complétion de l'onglet .

Omnicompletion est une bonne chose si votre langue est prise en charge.

Et VIM tip 1439 propose une liste complète de conseils IDE-ification.

7
daotoad

Je n'essaie pas d'être incendiaire avec cette réponse, mais je veux vous épargner des maux de tête. C’est la même réponse que je donne à toutes les personnes qui posent des questions similaires dans #vim.

Vim n'est pas un IDE. C'est un éditeur. Il n'a jamais été conçu pour être un IDE et toute tentative de le rendre conforme ne vous causera que des problèmes. Il existe des plugins qui essaient de donner à Vim une impression de type IDE, mais ceux-ci sont horribles.

Par contre, je recommande certains plugins qui vous aideront à obtenir des fonctionnalités étendues de Vim. Ceux-ci pourraient convenir à vos besoins.

  • taglist - Idéal pour naviguer dans votre code par fonction/méthode/classe
  • NERDTree - Un merveilleux plugin de navigation dans les systèmes de fichiers
6
Jeremy Cantrell

Si vous utilisez Linux, essayez simplement Pida . Vous pouvez y intégrer Vim ou Emacs. De nombreuses intégrations, telles que l'explorateur de fichiers, la structure de projet et la console, font ressembler Vim à Eclipse. IMHO, c'est un moyen facile d'utiliser Vim en tant qu'IDE.

6
tonkla

VIM dispose d’un support de premier ordre pour C et C++ en tant qu’EDI. Vous avez même un débogueur visuel avec clewn et gdb. Dans d’autres langues, vous devrez faire quelques ajustements et retouches et le résultat pourrait ne pas aboutir à ce que vous voulez. La peine d'essayer pendant une heure et de voir comment ça se passe. 

J'ai l'impression qu'Emacs fait un meilleur travail en tant que IDE pour plus de langues.

3
Ian Kelling

essayez avec exVim dans http://code.google.com/p/exvim Ce projet transforme vim en tant que IDE pour le développement multilingue.

2
Freeman

J'utilise Vim seul - il possède certaines capacités de base pour la saisie semi-automatique via ^ X, puis diverses options (^ P pour les mots clés, ^ O pour les commandes omnicomplete (convient pour basculer entre HTML, CSS, etc. dans les fichiers Web).

Il a également la possibilité de lancer des commandes via:! (Compilateur ou autres commandes).

Intégration assez simple et indolore au développement de base, sans besoin d'espace de travail ou similaire, et de modélisation pour les paramètres de fichier, si vous le souhaitez.

Edit: En ce qui concerne les modules, il existe généralement des modules pour incorporer des langages de script pertinents à l'intérieur ou à côté de l'environnement Vim. Je ne connais toutefois pas de modules similaires du framework .NET.

1
Jon

J'utilise parfois Vim en tant que IDE dans Kate alors que, sinon, plusieurs onglets auraient été ouverts dans Vim, qu'il est difficile de modifier.

Sinon, je reste avec Vim ordinaire ordinaire.

KDE pour Windows vous permettra d'installer Kate sous Windows.

0
Alan Haggai Alavi

Je suis tombé sur gvide aujourd'hui en regardant O.T. Fonctionnalités NDK Android - utilisateur de vim de longue date, a utilisé eclim dans Eclipse, mais franchement, mon environnement vim est destiné à l'écriture de code et non à son développement. C'était vraiment intéressant de lire différents rebondissements pour faire de vim un environnement de développement, et gvide propose des éléments convaincants ...

http://www.crystax.net/en/gvide

0
rektide