Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

Vous n'êtes pas identifié(e).

#1 13-01-2017 12:08:45

romain
Membre
Lieu : Suisse
Distrib. : Debian, "Jessie"
Noyau : Linux 3.16.0-4-amd64
(G)UI : XFCE, LXDE ou openbox
Inscription : 31-01-2013

Dans screen: vim remplace la navigation des flêches par A B C D

Bonjour,

Je commence par vous souhaiter la bonne année à tous!

Je viens faire appel à vous car j'ai un bug qui me fait chaque fois abandonner l'utilisation de screen et j'aimerais y remédier!

Sur mon post de travail, j'ai créé un ~/.vimrc pour avoir vim à ma convenance. Je me souviens, j'avais du mette comme paramètre set nocompatible pour que je puisse utiliser les flèche pour la navigation.
J'ai pris pour habitude de me connecter sur mes serveurs avec SSH à travers screen (ssh -t serveur screen -R). Je n'ai jamais créer de ~/.vimrc ou ~/.screenrc sur mes serveurs. Dernièrement, j'ai découvert des options sympa avec screen. J'ai en profité pour rapatrier mes fichiers de configuration sur mes serveurs histoire de profiter un maximum des ces nouveaux réglages quand je travaille. Et là au grand dam! Quand je suis connecté via le terminal screen et que je suis en mode -INSERT- sous vim, quand j'utilise les flèche pour me déplacer j'ai les fameuse lettre A B C D qui s'inscrive. La même chose sur mon poste de travaille! Par contre si je me connecte pas via screen ou que je supprime le fichier ~/.vimrc, aucun problème.

Quelqu'un aurait une idée sur mon problème?
Merci à tous

Voici mes fichiers de configuration:

cat ~/.screenrc


startup_message off
deflogin on
vbell off
vbell_msg "   Wuff  ----  Wuff!!  "
defscrollback 1024
bind ^k
bind ^\
bind \\ quit
bind K kill
bind I login on
bind O login off
bind } history
termcapinfo vt100 dl=5\E[M
hardstatus on
termcapinfo xterm*|rxvt*|kterm*|Eterm* hs:ts=\E]0;:fs=\007:ds=\E]0;\007
hardstatus string "%h%? users: %u%?"
termcapinfo xterm*|linux*|rxvt*|Eterm* OP
termcapinfo xterm 'is=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;4;6l'
defnonblock 5
screen htop
screen -t vim 1 mc
screen -t mc 2 vim
screen -t bash 3 bash
sessionname "rom1"
hardstatus alwayslastline "%H|%c|%d.%m.%y"
caption always "%{wk}%?%-w%?%{rk}%n %t%{wk}%?%+w%?"
 


cat ~/.vimrc


set nocompatible
set modeline
set mouse=a
set number
set cursorline
set encoding=utf-8
set backspace=indent,eol,start
filetype off
set rtp+=~/.vim/bundle/Vundle.vim/
call vundle#begin()
 Plugin 'VundleVim/Vundle.vim'
 Plugin 'scrooloose/nerdtree'
 Plugin 'jistr/vim-nerdtree-tabs'
 Plugin 'tpope/vim-fugitive'
 Plugin 'Lokaltog/powerline', {'rtp': 'powerline/bindings/vim/'}
 Plugin 'ervandew/supertab'
 Plugin 'AutoClose'
 Plugin 'davidhalter/jedi-vim'
 Plugin 'vim-scripts/indentpython.vim'
 Plugin 'fs111/pydoc.vim'
 Plugin 'scrooloose/syntastic'
 Plugin 'nvie/vim-flake8'
 Plugin 'sirtaj/openscad.vim'
 Plugin 'joonty/vim-do.git'
call vundle#end()
filetype plugin indent on
if &t_Co> 2 || has("gui_running")
  syntax on
  set hlsearch
endif
 
if has("autocmd")
  autocmd BufRead *.txt set tw=78
endif
set laststatus=2
set showtabline=2
set noshowmode 
let g:miniBufExplMapWindowNavVim = 1
let g:miniBufExplMapWindowNavArrows = 1
let g:miniBufExplMapCTabSwitchBufs = 1
let g:miniBufExplModSelTarget = 1
let g:NERDTreeDirArrowExpandable = '▸'
let g:NERDTreeDirArrowCollapsible = '▾'
map <F2> :NERDTreeToggle<CR>
let python_highlight_all=1
autocmd FileType python map <silent> <F5> <Esc>:w!<cr>:!python3 %<cr>
let g:jedi#popup_select_first = 0
let g:jedi#popup_on_dot = 0
let g:jedi#show_call_signatures = 2
let g:jedi#max_doc_height = 0.33
let g:pydoc_highlight = 0
let g:pydoc_window_lines = 0.33
autocmd FileType openscad noremap <silent> <F5> <Esc>:w!<cr>:DoQuietly openscad %<cr>
nmap <F3> <Esc>:bn<CR>
nmap <F9> <Esc>:noh<CR>
 

Hors ligne

#2 13-01-2017 12:28:57

captnfab
Admin-Girafe
Lieu : /dev/random
Distrib. : Debian Stretch/Sid/Rc-Buggy
Noyau : Linux (≥ 4.3)
(G)UI : i3-wm (≥ 4.11)
Inscription : 07-07-2008
Site Web

Re : Dans screen: vim remplace la navigation des flêches par A B C D

Plop, et bonne année à toi smile

Alors, clairement, le problème que tu décris est un problème de caractères de contrôle.
Les flèches ne sont pas des caractères comme les autres, ce sont des caractères dits « de contrôle ». Ces caractères ne sont pas représentés de la même manière pour tous les terminaux. xterm, rxvt, gnome-terminal, screen, etc. n'utilisent pas tous les mêmes conventions. Aussi, quand tu lances un vim dans un screen, il doit s'attendre à ce que son terminal père soit « screen » pour écouter les bons caractères de contrôle, et quand tu lances un screen dans un rxvt-unicode, il doit aussi savoir qui est son père.
Normalement, cela se gère via les variables d'environnement TERM.
Mais le comportement des terminaux peut être changé via la config, et c'est là que ça se gâte.
Je ne sais pas trop ce que font tes lignes xtermcap de ton fichier de conf screen, mais je dirais qu'elles peuvent être à la source du problème…
Pour le reste, il te faudra probablement rechercher sur le net les problèmes de « term » de « control chars » et « vim » smile

captnfab,
Association Debian-Facile, bépo.
TheDoctor: Your wish is my command… But be careful what you wish for.

Hors ligne

#3 13-01-2017 14:17:28

romain
Membre
Lieu : Suisse
Distrib. : Debian, "Jessie"
Noyau : Linux 3.16.0-4-amd64
(G)UI : XFCE, LXDE ou openbox
Inscription : 31-01-2013

Re : Dans screen: vim remplace la navigation des flêches par A B C D

Merci pour cette éclaircissement, je vais creuser cette après-midi. Je sens que ce problème va me faire mal à la tête

Hors ligne

#4 13-01-2017 15:21:05

romain
Membre
Lieu : Suisse
Distrib. : Debian, "Jessie"
Noyau : Linux 3.16.0-4-amd64
(G)UI : XFCE, LXDE ou openbox
Inscription : 31-01-2013

Re : Dans screen: vim remplace la navigation des flêches par A B C D

Je constate surtout que je ne connais pas grand chose aux terminaux!! Ce que je comprends, c'est que le problème vient de la variable $TERM. Quand j'ouvre terminator (le terminal graphique), $TERM = xterm et des que je lance screen, $TERM = screen! Donc si je mets dans ~/.screenrc: term xterm, là je modifie ma variable $TERM = xterm et je résouds mon bug des flèches directionnelles. Par contre je trouve d'autre bug graphique.
Je suis un perdu avec tous ces paramètres et différences et duckduckgo me noie sous l'infromation! Y aurait-il un/des tuto en français qui pour m'aider à mieux appréhender tous ca??

Hors ligne

Pied de page des forums