Developpez.com - Rubrique Perl

Le Club des Développeurs et IT Pro

Configurer vos éditeurs de texte ou EDI pour programmer en Perl aisément

Le 2015-06-13 14:49:18, par djibril, Responsable Perl et Outils
Bonjour,

Voici un nouveau tutoriel PERL qui se nomme :

Configurer vos éditeurs de texte ou EDI pour programmer en Perl aisément

Le but de ce tutoriel est de lister les différents éditeurs de texte ou EDI que l'on utilise en Perl et surtout leur configuration. Pour cela, j'ai besoin de la participation de tout le monde afin d'enrichir le tutoriel dans lequel vous serez cités.
Je souhaite donc votre participation dans ce post afin de j'enrichisse le tutoriel au fur et à mesure. Je le mettrai en ligne dès le premier éditeur de texte ou IDE mentionné.

Comment participer ?

Vous créez un message à la suite avec en titre le nom de l'éditeur de texte et dans votre message, vous mentionnez ce que vous faites pour le configurer pour vous faciliter la vie en Perl. Vous pouvez aussi me contacter par MP.
En ce qui me concerne, je parlerai de Notepad++ dans lequel je me suis créé une macro que j'utilise tous les jours pour indenter mon code comme je le souhaite en un clic-bouton. Bous pouvez proposer autre chose pour Notepad++ !

d'avance pour votre participation
  Discussion forum
19 commentaires
  • magicshark
    Membre averti
    Bonjour,
    Pour ma part je souhaiterais parler de NetBeans qui serte est une grosse usine à gaz, mais pas que.

    En effet, le premier avantage que je lui trouve c'est de permettre la polyvalence. Car on peut faire plusieurs projets en même temps sur différent langages et jouer avec un gestionnaire de source ...

    Mais ce n'est pas tout.

    ->Coloration syntaxique
    ->Templating pour nouveaux scripts/modules
    ->Gestion en mode projet
    -> Supporte Dancer (pas testé)

    les pitis boutons trop rigolos :

    ->lancer le script
    ->lancer le script avec paramètres
    ->Perl::Tidy pour formater
    ->Perl::Critic pour critiquer notre code
    ->La possibilité de se créer ses propres plugins (une mini interface pour pp nom du .exe + avec/sans console pour ma part [édit] et un bouton pour lancer prove (teste voir tutorial perl moderne 2014)[/édit]).

    Installation :

    Pour l'utiliser il suffit de télécharger NetBeans puis le plugins qui se trouve ici.

    Ensuite Tools->Plugins->Downloaded ->Add Plugins... -> cocher le -> install
    un petit reboot et on rentrera dans le paramétrage de trucs marrants.

    Paramétrage :

    Tools->Optons->Perl On NetBeans
    1/ lien vers perl.exe
    2/ lien vers Perl::Critic + niveau de sévérité (C:\Strawberry\perl\site\bin\perlcritic.bat chez moi)
    3/ lien vers Perl::Tidy (C:\Strawberry\perl\bin\perltidy.bat chez moi)

    Et voilà c'est tous bon y a plus cas
    p-s si besoin je joindre des captures d'écran.
  • magicshark
    Membre averti
    1. INTRODUCTION
    2. Notepad++
    3. NetBeans
      1. Introduction
        NetBeans est un IDE (Integrated Development Environment open source. Il permet de développer avec beaucoup de langages.
        En effet il fonctionne avec des modules qui permettent d'intégrer facilement de nouvelles fonctionnalités/langages.
        Perl ne faisant pas exception (pour un fois) il va falloir passer par un module.
      2. Les avantages de NetBeans
        Comme dis précédemment, NetBeans fonctionne par modules. Il est donc tout à fait possible d’ajouter à votre environnement différents modules pour vous aider dans les à-côtés du projet.
        Un Git, Un FTP, un SSH … Quasiment tout est possible (sauf le café le module est encore en cours de développement).
        De plus vous pourrez initialiser plusieurs projets dans différents langages. Cela va sans dire mais la coloration syntaxique est présente.
      3. Les modules Perl
        Pour pouvoir développer en PERL avec NetBeans vous devez aller télécharger le module perl ici

        N’ayez pas peur un .nbm (comprenez NetBeans Module) vas être téléchargé.
        Pendant qu'on y est rendez-vous ici pour télécharger un autre module qui n'est pas obligatoire (il sert pour faire des tests avec Prove) il est disponible ici

        Maintenant vous pouvez lancer votre outil préférer (ou celui qui va le devenir ).
      4. Installation
        Pour installer vos modules, rendez-vous dans Tools->Plugins

        maintenant dans l'onglet Download

        Maintenant faites "next" accepter la licence, puis soit vous redémarrer netBeans maintenant soit vous voulez installer le deuxième module et dans ce cas-là vous le ferez à la fin.
        Pour le deuxième Module je ne détaillerai pas la marche à suivre, en effet c'est la même.
        Une fois redémarrer regarder la différence

        Il y a des nouveaux boutons.
      5. Paramétrage
        Maintenant que vous êtes grand et votre IDE aussi vous êtes tenté de faire votre premier projet ... mais attention, vous devez encore paramétrer le premier module.
        Pour cela rendez-vous dans Tools-> Options

        (juste en dessous de Plugins)
        Onglet "Perl On NetBeans"
        dans général je vous laisse mettre le .exe qui va bien.
        Ensuite il y a Perl::Critic idem rechercher perlcritic.bat sur votre pc (moi il est dans C:\Strawberry\perl\site\bin\perlcritic.bat) vous pouvez ensuite le configurer pour être plus ou moins sympa avec vous.
        Puis le dernier onglet Perl::Tidy faites là même chose pour moi il est dans C:\Strawberry\perl\bin\perltidy.bat
        faites ok et c'est bon vous pouvez démarrer.
      6. Présentation de l’espace de travail.
        Notez bien les différentes partie je les nommerais comme ça tous le long du tutoriel.
      7. On peut commencer à jouer
        Maintenant que tout est ok, on va enfin pouvoir jouer et faire notre tout premier projet.
        Le but de ce tutoriel n’étant pas de vous faire développer, nous ne ferons pas un méga projet qui fait plein de choses faramineuses.

        Dans la partie « Vos projet »,
        Faites click droit « New Project »
        Catégories : perl
        Projects : Perl Project

        « Next »

        On va renseigner maintenant le nom du projet ici Sandbox
        Choisissez le lieu de stockage et faites « finish ».

        Maintenant un nouveau projet est apparu #Victoire

        Vous pouvez à présent faire un click droit sur votre projet pour créer un nouveau fichier perl (New->NewPerlFile)
        Renseigner les infos demandés puis copier collé ce code.
        Code :
        1
        2
        3
        4
        5
        6
        7
        8
        9
        10
        11
        #!/usr/bin/perl
        #
        # @File newperlTemplate.pl
        # @Author magicshark
        # @Created 24 juin 2015
        #
        
        use Modern::Perl '2013';
        use autodie;
        
        say ‘toto’;
        Vous pouvez d’ores et déjà tester ce super code en cliquant sur
      8. Le tour des nouvelles icones
        Pour le module perl on netBeans :

        Dans l’ordre :
        1. Perl ::Critic
        2. Perl ::Tidy
        3. Générer en HTML (jamais testé)
        4. Lancer le programme avec des arguments
        5. PerlDoc je n’arrive pas à m’en servir un ticket est ouvert (voir fin du tuto)

        Pour Perl_Prove :
        Lance le teste avec prove.
        Code :
        1
        2
        3
        4
        5
        6
        7
        8
        9
        10
        11
        12
        use 5.20.2;
        use warnings;
        use Test::More tests => 4;
        use TAP::Harness;
        use autodie;
        
        ok(   1, 'le nombre un devrait être vrai'               );
        ok(   0, '... et le zéro ne le devrait pas'             );
        ok(  '', 'la chaîne vide devrait être fausse'           );
        ok( '!', '... et une chaîne non vide ne le devrait pas' );
        
        done_testing();
        vous pouvez testé ce bouton avec ce code.
      9. Quelques astuces
        Vous pouvez redéfinir vous-même vos Template.
        Allez dans Tools->template et là modifier/ajouter le template que vous voulez.

        Vous pouvez également faire des raccourcis pour ma part j’en avais marre décrire use warnings ; du coup j’écris juste wg+espace et ça s’écrit tout seul
        Tools->options->Editor->Code Template
      10. Bugs
        Si vous trouvez un bug sur l’un des deux modules vous pouvez le déclarer ici pour perlOnNetBeans et ici pour perlProve.

  • djibril
    Responsable Perl et Outils
    Bonjour,

    Tutoriel maintenant disponible :


    Bonne lecture et n'hésitez pas si vous souhaitez contribuer avec d'autres éditeurs de texte.
  • Lolo78
    Rédacteur/Modérateur
    Configurer FTP pour travailler directement sur un serveur, ça fait partie de ce que l'on peut proposer? Et créer un fichier de coloration syntaxique pour un langage de programmation non listé?

    Sinon, je suis intéressé par ta macro pour indenter du code, je pourrais peut-être l'adapter aux éditeurs que j'utilise.
  • djibril
    Responsable Perl et Outils
    Envoyé par Lolo78
    Configurer FTP pour travailler directement sur un serveur, ça fait partie de ce que l'on peut proposer? Et créer un fichier de coloration syntaxique pour un langage de programmation non listé?

    Sinon, je suis intéressé par ta macro pour indenter du code, je pourrais peut-être l'adapter aux éditeurs que j'utilise.
    Oui tu peux proposer pour le FTP. Pour le fichier de coloration, pourquoi pas, ça ne touche pas Perl mais cela donne toujours des idées de configuration si la coloration Perl est à changer.
    Pour l'indentation du code, je le mettrai dans le tutoriel, pas de souci.
  • magicshark
    Membre averti
    1. INTRODUCTION
    2. Notepad++
    3. NetBeans
      1. Introduction
        netBeans est un IDE (Integrated Development Environment open source. Il permet de développer avec beaucoup de langage. En effet il fonctionne avec des modules qui permettent d'intégrer facilement de nouvelles fonctionnalités/langages.
        Perl ne faisant pas exception (pour un fois) il va falloir passer par un module.
      2. Les modules Perl
        Pour pouvoir développer en PERL avec NetBeans vous devez aller télécharger le module perl ici

        N’ayez pas peur un .nbm (comprenez NetBeans Module) vas être télécharger.
        Pendant qu'on y est rendez vous ici pour télécharger un autre module qui n'est pas obligatoire (il sert pour faire des tests avec Prove) il est disponnible ici

        Maintenant vous pouvez lancer votre outil préférer (ou celui qui va le devenir ).
      3. Installation
        Pour installer vos modules, rendez vous dans Tools->Plugins

        maintenant dans l'onglet Download

        Maintenant faites "next" accepter la licence, puis soit vous redémarrer netBeans maintenant soit vous voulez installer le deuxième module et dans ce cas là vous le ferez à la fin.
        Pour le deuxième Module je ne détaillerai pas la marche à suivre, en effet c'est la même.
        Une fois redémarrer regarder la différence
        Il y a des nouveaux boutons.
      4. Paramétrage
        Maintenant que vous êtes grand et votre IDE aussi vous êtes tenter de faire votre premier projet ... mais attention, vous devez encore paramétrer le premier module.
        Pour cela rendez-vous dans Tools-> Options

        (juste en dessous de Plugins)
        Onglet "Perl On NetBeans"
        dans général je vous laisse mettre le .exe qui va bien.
        Ensuite il y a Perl::Critic idem rechercher perlcritic.bat sur votre pc (moi il est dans C:\Strawberry\perl\site\bin\perlcritic.bat) vous pouvez ensuite le configurer pour être plus ou moins sympa avec vous.
        Puis le dernier onglet Perl::Tidy faites là même chose pour moi il est dans C:\Strawberry\perl\bin\perltidy.bat
        faites ok et c'est bon vous pouvez démarrer.
      5. On peut commencer à jouer
      6. Le tour des nouvelles icones
      7. Quelques astuces



    Pour l’instant je suis au travail ce n'est qu'une ébauche je terminerais demain
  • ptonnerre
    Membre habitué
    Je développe sur des serveurs RHEL 6.x et utilise Vim et le plugin perl-support :
    Un résumé de la doc du plugin à l'adresse https://github.com/vim-scripts/perl-support.vim/blob/master/doc/perl-hot-keys.pdf

    Quelques exemples d'utilisation des commandes du plugin :
    • Pour commenter tout un bloc, je le sélectionne en mode visual et tape \cc.
      Exécuter cette même commande sur le bloc le décommente
    • La commande \cl permet quant à elle d'aligner les commentaires de fin de ligne sur plusieurs lignes successives.


    Pour installer le plugin, il suffit de dézipper l'archive dans son répertoire ~/.vim

    Le fichier de configuration Vim est ~/.vimrc
    Il est relativement aisé à adapter en fonction de ses besoins.
    Le mien (en fin de ce message) est relativement simple, j'ai rajouté pour le fun quelques abbréviations et map.
    Ensuite, les goûts et les couleurs, c'est en fonction de chacun.

    Aperçu du visuel :


    Pour plus d'informations sur la configuration de Vim, la doc en ligne est la meilleure source
    De nombreux tutos sur le net permettent d'appréhender progressivement cet énorme éditeur et sa configuration.
    De plus, le répertoire rc du plugin contient une suggestion commentée de fichier de configuration .vimrc

    Pour info, mon poste de travail est sous Windows 10, et j'utilise MobaXterm pour me connecter aux serveurs distants.

    Fichier de configuration ~/.vimrc

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
      1 set encoding=utf-8
      2 set fileencoding=utf-8
      3 syntax on
      4 set nocompatible
      5
      6 filetype indent plugin on
      7 filetype plugin on
      8 highlight Comment ctermfg=blue
      9 set hidden
     10 set wildmenu
     11 set showcmd
     12 set hlsearch
     13 set ignorecase
     14 set smartcase
     15 set backspace=indent,eol,start
     16 set nostartofline
     17 set ruler
     18 set laststatus=2
     19 set confirm
     20 set visualbell
     21 set t_vb=
     22 set cmdheight=2
     23 set number
     24 set notimeout ttimeout ttimeoutlen=200
     25 set shiftwidth=4
     26 set softtabstop=4
     27 set expandtab
     28 set showmatch
     29 set ffs=unix
     30
     31 "--------------------------------------------------------------------------------
     32 " Status line customization
     33
     34 function! InsertStatuslineColor(mode)
     35     if a:mode == 'i'
     36         hi statusline ctermfg=196 ctermbg=15
     37     elseif a:mode == 'r'
     38         hi statusline ctermfg=5 ctermbg=0
     39     else
     40         hi statusline ctermfg=226 ctermbg=0
     41     endif
     42 endfunction
     43
     44 au InsertEnter * call InsertStatuslineColor(v:insertmode)
     45 au InsertLeave * hi statusline ctermfg=243 ctermbg=46
     46
     47 " default the statusline when entering Vim
     48 hi statusline ctermfg=243 ctermbg=46
     49
     50 "set statusline=%t[%{strlen(&fenc)?&fenc:'none'},%{&ff}]%h%m%r%y%=%c,%l/%L\ %P
     51
     52 set statusline=[%n]                                 "buffer number
     53 set statusline+=\ %t                                "tail of the filename
     54 set statusline+=\ %m                                "modified flag
     55 set statusline+=\ %r                                "read only flag
     56 set statusline+=\ [%{strlen(&fenc)?&fenc:'none'},   "file encoding
     57 set statusline+=%{&ff}]                             "file format
     58 set statusline+=%h                                  "help file flag
     59 set statusline+=%y                                  "filetype
     60 set statusline+=\ \ \ Char(D-H):%b-%B               "Value of byte under cursor in dec & hex
     61 set statusline+=\ Offset(D-H):%o-%O                 "Byte number in file of byte under cursor in dex & hex, first byte is 1 - Mnemonic: Offset from start of file (with one added)k
     62 set statusline+=%=                                  "left/right separator
     63 set statusline+=%v-%c,                              "virtual and real cursor column
     64 set statusline+=%l/%L                               "cursor line/total lines
     65 set statusline+=\ %P                                "percent through file
     66 "--------------------------------------------------------------------------------
     67
     68 autocmd FileType * setlocal formatoptions-=c formatoptions-=r formatoptions-=o
     69
     70 " abréviations
     71 abbreviate ch chomp
     72 abbreviate lb next if $_ =~ m{^ \s* ([#].*)* $}x; # lignes commentaires ou vides
     73 abbreviate re3 # my @vars = $str =~ /\$\{([^}]+)\}/g;
     74 abbreviate hdp #!/usr/bin/env perl^Muse strict;^Muse warnings;^Muse feature 'say';
     75
     76
     77 " mapping
     78 ":map <F2> a<C-R>=strftime("%c")<CR><Esc>
     79 :map <F2> a# Last modified : <C-R>=strftime("%A %d %B %Y %H:%M")<CR><Esc>
     80 :map HDP  a#!/usr/bin/env perl^Muse strict;^Muse warnings;^Muse feature 'say';^M
  • djibril
    Responsable Perl et Outils
    pour ce début de retour !
  • Jasmine80
    Membre émérite
    Oui, j'ai modifié la configuration de base de Scite, pour programmer plus aisément, mais ça n'est pas spécifique à Perl.

    dans le fichier Options > Open Global Options File
    enlever les # qui placent ces lignes en commentaire

    1) rendre les numéros de lignes visibles
    line.margin.visible=1
    line.margin.width=4

    2) garder en mémoire ma précédente session et réouvrir automatiquement les scripts sur lesquels je travaillais la dernière fois
    save.session=1

    3) colorer la ligne courante (enlever le commentaire et choisir une couleur)
    caret.line.back=#FFFED8
  • djibril
    Responsable Perl et Outils
    Merci Jasmine pour ta réponse.
    Comme tu l'as dit, bien qu'utile, ce n'est pas spécifique à Perl. Tes configurations pourront toujours aider un utilisateur de Scite, mais pour le tutoriel, je ne vois pas comment en faire un petit chapitre.
    @magicshark As-tu des captures d'écran ?
    Il faudrait qu'en lisant le tutoriel, l'utilisateur débutant de netbeans puisse concevoir ses boutons pour utiliser perltidy et perlcritic...

    d'avance !