Quelles sont vos suggestions pour un idéal de configuration de Vim pour Perl développement?
Il y a beaucoup de discussions concernant la façon de configurer Vim/GVim pour Perl développement sur PerlMonks.org. Mon but, en publiant cette question est d'essayer de créer, autant que possible, une configuration idéale pour Perl développement à l'aide de Vim/GVim. Veuillez poster vos suggestions pour .vimrc
paramètres ainsi que les plugins utiles.
Je vais essayer de fusionner les recommandations dans un ensemble de .vimrc
paramètres et à une liste de plugins, ftplugins et la syntaxe des fichiers.
.vimrc paramètres
"Create a command :Tidy to invoke perltidy"
"By default it operates on the whole file, but you can give it a"
"range or visual range as well if you know what you're doing."
command -range=% -nargs=* Tidy <line1>,<line2>!
\perltidy -your -preferred -default -options <args>
vmap <tab> >gv "make tab in v mode indent code"
vmap <s-tab> <gv
nmap <tab> I<tab><esc> "make tab in normal mode indent code"
nmap <s-tab> ^i<bs><esc>
let perl_include_pod = 1 "include pod.vim syntax file with perl.vim"
let perl_extended_vars = 1 "highlight complex expressions such as @{[$x, $y]}"
let perl_sync_dist = 250 "use more context for highlighting"
set nocompatible "Use Vim defaults"
set backspace=2 "Allow backspacing over everything in insert mode"
set autoindent "Always set auto-indenting on"
set expandtab "Insert spaces instead of tabs in insert mode. Use spaces for indents"
set tabstop=4 "Number of spaces that a <Tab> in the file counts for"
set shiftwidth=4 "Number of spaces to use for each step of (auto)indent"
set showmatch "When a bracket is inserted, briefly jump to the matching one"
syntaxe
plugins
-
delimitMate fournit l'auto-complétion pour les guillemets, les parenthèses, les crochets, etc. en mode insertion. Il gère les apostrophes de manière plus intelligente que closepairs.vim n'.
ftplugins
Modules CPAN
Outils de débogage
Je viens de découvrir sur VimDebug. Je n'ai pas encore été capable de l'installer sur Windows, mais semble prometteur partir de la description.
- L' .vimrc paramètres doivent être très bien commenté. E. g., ce n'perl_include_pod faire?
- Merci!!!! (Mon cher Seigneur, pourquoi ne sommes-nous pas le droit de le dire "Merci!" dans un commentaire?)
- Vous êtes les bienvenus. J'ai été en utilisant le même
.vimrc
depuis de nombreuses années et récemment un tas de vim questions liées à m'curieux. J'ai eu la flemme de lire tout ce qui a été posté sur PerlMonks (et de voir ce qui était courant etc.), alors j'ai pensé que nous pourrions mettre sur pied quelque chose ici. - Je pense que c'est une excellente idée. Désolé que ma contribution est que lame.
- Bonne idée. De voter !
- Plutôt que de closepairs, je vous recommande delimitMate ou de l'un des différents autoclose plugins. (Il y a environ trois nommée autoclose, je pense.) Le closepairs plugin ne peut pas gérer une apostrophe dans une chaîne (c'est à dire
print "This isn't so hard, is it?"
), mais delimitMate et d'autres peuvent. github.com/Raimondi/delimitMate - Excellente suggestion.
- Vim-perl projet intègre le contenu de "perl-mauke.vim: amélioration de la syntaxe de perl de mettre en avant".
Vous devez vous connecter pour publier un commentaire.
De chromatique du blog (légèrement adapté pour être en mesure d'utiliser le même mappage à partir de tous les modes).
frappé
,pt
en mode normal pour nettoyer l'ensemble du fichier, ou en mode visuel pour nettoyer la sélection. Vous pouvez également ajouter:Mais à l'aide des commandes du mode d'entrée n'est pas recommandé.
v
puis utilisez les commandes de déplacement).,pt
, vim attend que vous tapez quelque chose d'autre (par exemple, <cr>) comme un signal que la commande est terminée. Frapper,ptv
immédiatement format de la région. Je voudrais donc s'attendre à ce que vim reconnaît qu'il y a un chevauchement entre les mappages, et attend pour la désambiguïsation avant de continuer.Regardez aussi perl-support.vim (Perl IDE pour Vim/gVim).
Est fourni avec des suggestions pour la personnalisation de Vim (.vimrc), gVim (.gvimrc),
ctags, perltidy, et Devel:SmallProf à côté de beaucoup d'autres choses.
Perl Best Practices a une annexe sur L'Éditeur De Configurations. vim est le premier éditeur de liste.
Andy Lester et d'autres maintenir officiel Perl, Perl 6 et la Gousse d'fichiers de support pour Vim sur Github: https://github.com/vim-perl/vim-perl
Pour le rangement, j'utilise la suite; soit
\t
pour ranger l'ensemble du fichier, ou je sélectionne quelques lignes dansshift+V
mode et ensuite faire\t
Parfois, il est également utile de deparse code. Comme les lignes ci-dessus, soit pour la totalité du fichier ou pour une sélection.
.vimrc:
pltags.pl
plutôt quetaglist.vim
w/ctags
?vimparse.pl
différents que Vim est quickfix mode? Voir vimdoc.sourceforge.net/htmldoc/quickfix.htmlVi::QuickFix
?Voici une intéressante module que j'ai trouvé sur le week-end:
App::EditorTools::Vim
. Sa partie la plus intéressante semble être sa capacité à renommer les variables lexicales. Malheureusement, mes tests ont révélé qu'il ne semble pas être encore prêt pour toute la production, mais il semble intéressant de garder un oeil sur.Ici sont un couple de mes .vimrc paramètres. Ils ne peuvent pas être Perl spécifique, mais je ne pourrais pas travailler sans eux:
J'ai 2.
Le premier, je sais, j'ai ramassé une partie de quelqu'un d'autre, mais je ne me souviens plus qui. Désolé inconnu. Voici comment j'ai fait "C^N" auto de travail complet avec Perl. Voici mon .vimrc commandes.
Puis j'ai mis en place un cron pour créer le installed_modules.dat fichier. Le mien est pour mon système mandriva. Ajuster en conséquence.
Le second me permet d'utiliser gf en Perl. Gf est un raccourci vers d'autres fichiers. il suffit de placer votre curseur sur le fichier et le type gf et il va ouvrir ce fichier.
- Je trouver les abréviations suivantes utile
Vous pouvez les faire perl seulement avec
my
partout où il y a, je vous l'habitude d'écrire des scripts Cgi avec aucuneuse strict;
? (juste curieux de savoir si c'est le cas)De loin les plus utiles sont
éléments
qui vous empêche d'enregistrer un mauvais code (vous pouvez remplacer avec la normale 'w').
De l'installation, il les plugins sont un peu dicky que la version de vim (et linux) mettre les plugins dans des endroits différents. Les miennes sont dans ~/.vim/après/
mon .vimrc ci-dessous.