IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Shell et commandes GNU Discussion :

Editeur de texte VIM


Sujet :

Shell et commandes GNU

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2013
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2013
    Messages : 11
    Points : 7
    Points
    7
    Par défaut Editeur de texte VIM
    Bonsoir à tous,

    J'ai récemment installé Ubuntu 14.04 LTS sur mon PC et j'ai une question quant à l'utilisation de VIM enfin, la configuration de cet éditeur.

    Lorsque que je passe en mode insertion, le backspace ne fonctionne pas (il place le curseur sur le caractère précédent et n'efface pas le caractère) et les flèches ne font que m'afficher les caractères "A", "B", "C" et "D". Il s'agit certainement d'un problème de configuration. Est-ce que quelqu'un peut m'aider ?

    Merci d'avance pour vos réponse,

    alanmaly

  2. #2
    Modérateur
    Avatar de N_BaH
    Profil pro
    Inscrit en
    Février 2008
    Messages
    7 551
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 7 551
    Points : 19 385
    Points
    19 385
    Par défaut
    Bonjour,

    [...]et les flèches ne font que m'afficher les caractères "A", "B", "C" et "D"
    ça, c'est le comportement de vi, qui est ±différent de vim (vi improved), et qui, lui, n'est, il me semble, pas installé par défaut sur les distribs (au moins sur Debian).
    .
    N'oubliez pas de consulter les cours shell, la FAQ, et les pages man.

  3. #3
    Expert éminent sénior
    Avatar de Escapetiger
    Homme Profil pro
    Administrateur système Unix - Linux
    Inscrit en
    Juillet 2012
    Messages
    1 476
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Administrateur système Unix - Linux

    Informations forums :
    Inscription : Juillet 2012
    Messages : 1 476
    Points : 11 051
    Points
    11 051
    Par défaut
    Bonjour,

    Je confirme ce que dit N_Bah avec une distribution linux personnelle SliTaz et vérifié, de mémoire, entre-autres avec Red-Hat,etc ...

    Lorsque que je passe en mode insertion, le backspace ne fonctionne pas (il place le curseur sur le caractère précédent et n'efface pas le caractère) et les flèches ne font que m'afficher les caractères "A", "B", "C" et "D". Il s'agit certainement d'un problème de configuration. Est-ce que quelqu'un peut m'aider ?
    Voici deux articles issus du Wiki de Vim qui devraient t'apporter une solution :

    http://vim.wikia.com/wiki/Backspace_and_delete_problems
    Backspace and delete problems

    http://vim.wikia.com/wiki/Fix_arrow_...n_remote_shell
    Fix arrow keys that display A B C D on remote shell
    « Developpez.com est un groupe international de bénévoles dont la motivation est l'entraide au sens large » (incl. forums developpez.net)
    Club des professionnels en informatique

  4. #4
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2013
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2013
    Messages : 11
    Points : 7
    Points
    7
    Par défaut
    Bonjour,

    Vous avez raison, c'est VI que j'utilise. Je suis débutant sur linux et je pensais que VI et VIM était pareil.

    Ma question change donc, est-ce que quelqu'un pourrais m'aider à résoudre le problème pour VI et non pour VIM ? Car à l'école, nous utilisons VI et l'éditeur n'as pas le même comportement

    Merci d'avance pour vos réponse.

    alanmaly

  5. #5
    Expert éminent sénior
    Avatar de Escapetiger
    Homme Profil pro
    Administrateur système Unix - Linux
    Inscrit en
    Juillet 2012
    Messages
    1 476
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Administrateur système Unix - Linux

    Informations forums :
    Inscription : Juillet 2012
    Messages : 1 476
    Points : 11 051
    Points
    11 051
    Par défaut
    Bonjour,

    Je pensais que tu utiliserais Vim ensuite, alors pour s'en sortir avec Vi, je te propose une solution :

    Dans le terminal, avant d'utiliser vi, vérifier que le "backspace (erase)" est bien actif (le $ "dollar" est mon prompt) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    $ stty
    speed 38400 baud; line = 0;
    intr = ^C; quit = ^\; erase = ^?; kill = ^U; eof = ^D; eol = M-^?; eol2 = M-^?; swtch = M-^?; start = ^Q;
    stop = ^S; susp = ^Z; rprnt = ^R; werase = ^W; lnext = ^V; flush = ^O; min = 1; time = 0;
    Faire un $ echo $TERM, qu'est ce que cà retourne comme terminal utilisé ?

    Essayer avec la valeur xterm par la commande export TERM=xterm
    Vérifié avec ma configuration, le backspace et les flèches fonctionnent comme attendu.

    Dernière remarque, il arrive souvent quand on débute avec vi, que l'on ne sache plus si on est en mode insertion ou commande, je te conseille de positionner, dans un premier temps, l'option suivante :set showmode qui permet de l'afficher en bas de la fenêtre.
    « Developpez.com est un groupe international de bénévoles dont la motivation est l'entraide au sens large » (incl. forums developpez.net)
    Club des professionnels en informatique

  6. #6
    Expert éminent sénior Avatar de Flodelarab
    Homme Profil pro
    Inscrit en
    Septembre 2005
    Messages
    5 243
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente (Poitou Charente)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 5 243
    Points : 13 458
    Points
    13 458
    Par défaut
    Bonjour,

    pour info, j'ai le même problème avec vim dans Cygwin sous Windows. Pas de problème avec mon habituel vim dans xterm sous Ubuntu.
    Cette réponse vous apporte quelque chose ? Cliquez sur en bas à droite du message.

  7. #7
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2013
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2013
    Messages : 11
    Points : 7
    Points
    7
    Par défaut
    Lorsque je fais la commande echo *TERM, j'obtiens xterm comme résultat.

    Par contre, la commande stty me donne ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    speed 38400 baud; line = 0;
    eol = M-^?; eol2 = M-^?; swtch = M-^?;
    ixany iutf8

  8. #8
    Expert éminent sénior
    Avatar de Escapetiger
    Homme Profil pro
    Administrateur système Unix - Linux
    Inscrit en
    Juillet 2012
    Messages
    1 476
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Administrateur système Unix - Linux

    Informations forums :
    Inscription : Juillet 2012
    Messages : 1 476
    Points : 11 051
    Points
    11 051
    Par défaut
    Citation Envoyé par alanmaly Voir le message
    Lorsque je fais la commande echo *TERM, j'obtiens xterm comme résultat.

    Par contre, la commande stty me donne ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    speed 38400 baud; line = 0;
    eol = M-^?; eol2 = M-^?; swtch = M-^?;
    ixany iutf8
    Tu veux plutôt dire echo $TERM je suppose ?

    Merci à Flodelarab pour la confirmation de la validation de xterm sous Ubuntu.

    Alors, vérifie dans ton terminal que le "backspace" fonctionne correctement avant d'utiliser vi,
    si ce n'est pas le cas tape la commande stty erase = ^?
    Nota : suivant les claviers et terminaux, l'appui "physique" sur la touche "backspace" génère automatiquement la séquence ^?Quels sont tes retours d'expérience ?
    « Developpez.com est un groupe international de bénévoles dont la motivation est l'entraide au sens large » (incl. forums developpez.net)
    Club des professionnels en informatique

  9. #9
    Expert éminent sénior Avatar de Flodelarab
    Homme Profil pro
    Inscrit en
    Septembre 2005
    Messages
    5 243
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente (Poitou Charente)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 5 243
    Points : 13 458
    Points
    13 458
    Par défaut
    Avec quelque petits tests, il semblerait que les caractères sont réellement supprimés lorsqu'on sort du mode insertion. Dans le même temps, si on réécrit, les caractères sont écrasés. Par contre, rien de neuf pour les flèches.

    J'ai essayé la solution proposée de redéfinir erase mais le comportement "naturel" n'est pas retrouvé.
    Cette réponse vous apporte quelque chose ? Cliquez sur en bas à droite du message.

  10. #10
    Expert éminent sénior
    Avatar de Escapetiger
    Homme Profil pro
    Administrateur système Unix - Linux
    Inscrit en
    Juillet 2012
    Messages
    1 476
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Administrateur système Unix - Linux

    Informations forums :
    Inscription : Juillet 2012
    Messages : 1 476
    Points : 11 051
    Points
    11 051
    Par défaut
    Je me demande si ça ne viendrait pas du iutf8 positionné chez alanmaly.
    speed 38400 baud; line = 0;
    eol = M-^?; eol2 = M-^?; swtch = M-^?;
    ixany iutf8
    Ici, pas de positionnement :
    stty -a
    speed 38400 baud; rows 40; columns 113; line = 0;
    intr = ^C; quit = ^\; erase = ^?; kill = ^U; eof = ^D; eol = M-^?; eol2 = M-^?; swtch = M-^?; start = ^Q;
    stop = ^S; susp = ^Z; rprnt = ^R; werase = ^W; lnext = ^V; flush = ^O; min = 1; time = 0;
    -parenb -parodd cs8 hupcl -cstopb cread -clocal -crtscts
    -ignbrk brkint -ignpar -parmrk -inpck -istrip -inlcr -igncr icrnl ixon -ixoff -iuclc ixany imaxbel -iutf8
    opost -olcuc -ocrnl onlcr -onocr -onlret -ofill -ofdel nl0 cr0 tab0 bs0 vt0 ff0
    isig icanon iexten echo echoe echok -echonl -noflsh -xcase -tostop -echoprt echoctl echoke
    Bon, faut que je regarde le man stty pour ixany également.

    [Edit] Il faudrait tester d'autres valeurs de terminaux comme vt100 par exemple, mais ça dépend de la librairie terminfo disponible ....
    Ouh là, ca fait un bail que je n'ai plus testé ces "problèmes", espérons que des "vétérans" comme moi arrivent à la rescousse
    « Developpez.com est un groupe international de bénévoles dont la motivation est l'entraide au sens large » (incl. forums developpez.net)
    Club des professionnels en informatique

  11. #11
    Expert éminent sénior Avatar de Flodelarab
    Homme Profil pro
    Inscrit en
    Septembre 2005
    Messages
    5 243
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente (Poitou Charente)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 5 243
    Points : 13 458
    Points
    13 458
    Par défaut
    Manip qui a corrigé partiellement le bug chez moi:
    Une fois vim lancé (ou par le fichier .vimrc), taper Pour plus d'info:
    Cette réponse vous apporte quelque chose ? Cliquez sur en bas à droite du message.

  12. #12
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2013
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2013
    Messages : 11
    Points : 7
    Points
    7
    Par défaut
    Citation Envoyé par Escapetiger Voir le message
    Tu veux plutôt dire echo $TERM je suppose ?

    Merci à Flodelarab pour la confirmation de la validation de xterm sous Ubuntu.

    Alors, vérifie dans ton terminal que le "backspace" fonctionne correctement avant d'utiliser vi,
    si ce n'est pas le cas tape la commande stty erase = ^?
    Nota : suivant les claviers et terminaux, l'appui "physique" sur la touche "backspace" génère automatiquement la séquence ^?Quels sont tes retours d'expérience ?
    Oui, je voulais bien dire echo $TERM

    Dans le terminal, le backspace fonctionne parfaitement.

  13. #13
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2013
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2013
    Messages : 11
    Points : 7
    Points
    7
    Par défaut
    Citation Envoyé par Flodelarab Voir le message
    Manip qui a corrigé partiellement le bug chez moi:
    Une fois vim lancé (ou par le fichier .vimrc), taper Pour plus d'info:
    La manipulation fonctionne (j'ai ajouté la commande dans le fichier .vimrc) mais une fois que j'utilise une des flèches, le backspace ne fonctionne plus...

    Avec quelque petits tests, il semblerait que les caractères sont réellement supprimés lorsqu'on sort du mode insertion. Dans le même temps, si on réécrit, les caractères sont écrasés. Par contre, rien de neuf pour les flèches.

    J'ai essayé la solution proposée de redéfinir erase mais le comportement "naturel" n'est pas retrouvé.
    En effet, une fois que je quitte le mode insertion, les caractères sont réellement supprimés.

  14. #14
    Expert éminent sénior
    Avatar de Escapetiger
    Homme Profil pro
    Administrateur système Unix - Linux
    Inscrit en
    Juillet 2012
    Messages
    1 476
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Administrateur système Unix - Linux

    Informations forums :
    Inscription : Juillet 2012
    Messages : 1 476
    Points : 11 051
    Points
    11 051
    Par défaut
    Bon, excellent ce retour pour le "backspace", la combinaison de la touche "Ctrl" puis de la touche "H" donne normalement le même résultat que l'appui sur la touche "backspace", que ce soit "dans le terminal" ou sous "vi". (comme l' interruption quand on tape "Contrôle C").
    Ce compromis fonctionne-t-il ?
    « Developpez.com est un groupe international de bénévoles dont la motivation est l'entraide au sens large » (incl. forums developpez.net)
    Club des professionnels en informatique

  15. #15
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2013
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2013
    Messages : 11
    Points : 7
    Points
    7
    Par défaut
    Le CTRL+H fonctionne en effet comme le backspace mais lorsque j'utilise les flèches, le backspace ou le CTRL+H devient de nouveau obsolète

  16. #16
    Expert éminent sénior
    Avatar de Escapetiger
    Homme Profil pro
    Administrateur système Unix - Linux
    Inscrit en
    Juillet 2012
    Messages
    1 476
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Administrateur système Unix - Linux

    Informations forums :
    Inscription : Juillet 2012
    Messages : 1 476
    Points : 11 051
    Points
    11 051
    Par défaut
    Ok, il s'agit peut-être pour s'en sortir de basculer à temps en mode insertion ou commande avec la touche "Esc" (Escape, Echappe) ... toute référence à un tigre dans le pseudo est purement fortuite
    « Developpez.com est un groupe international de bénévoles dont la motivation est l'entraide au sens large » (incl. forums developpez.net)
    Club des professionnels en informatique

  17. #17
    Expert éminent sénior Avatar de disedorgue
    Homme Profil pro
    Ingénieur intégration
    Inscrit en
    Décembre 2012
    Messages
    4 279
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur intégration
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Décembre 2012
    Messages : 4 279
    Points : 12 727
    Points
    12 727
    Par défaut
    Bonjour,
    pour vim sous cygwin:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    :set nocompatible
    :set backspace=indent,eol,start
    Cordialement.

  18. #18
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2013
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2013
    Messages : 11
    Points : 7
    Points
    7
    Par défaut
    Citation Envoyé par Escapetiger Voir le message
    Ok, il s'agit peut-être pour s'en sortir de basculer à temps en mode insertion ou commande avec la touche "Esc" (Escape, Echappe) ... toute référence à un tigre dans le pseudo est purement fortuite
    Oui mais, encore faut-il trouver le bon moment

  19. #19
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2013
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2013
    Messages : 11
    Points : 7
    Points
    7
    Par défaut
    Citation Envoyé par disedorgue Voir le message
    Bonjour,
    pour vim sous cygwin:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    :set nocompatible
    :set backspace=indent,eol,start
    Cela fonctionne

    Merci à tous pour votre aide !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Composant] Editeur de texte java
    Par doudine dans le forum Général Java
    Réponses: 17
    Dernier message: 27/01/2010, 17h35
  2. Editeur de texte enrichi
    Par Bidouille dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 10/11/2004, 02h25
  3. [Composant] Editeur de texte
    Par fendavid dans le forum Général Java
    Réponses: 1
    Dernier message: 05/06/2004, 23h28
  4. [Kylix] [Kylix 3] Un editeur de texte ?
    Par drfreuderick dans le forum EDI
    Réponses: 2
    Dernier message: 14/03/2004, 01h33
  5. Quel EDI/editeur de texte preférez-vous ?
    Par Gandalf dans le forum Choisir un environnement de développement
    Réponses: 5
    Dernier message: 18/09/2003, 18h55

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo