User Tools

Site Tools


informatique:logiciels:vim

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
informatique:logiciels:vim [2020/10/22 09:03] – [Divers] lancer vim en mode insertion pteuinformatique:logiciels:vim [2020/11/17 08:39] (current) – Désactiver l'indentation pour coller du texte pteu
Line 308: Line 308:
  
 La solution est de se rendre dans les options de Kitty/Putty, dans : Terminal/Features et de cocher l'option "Disable application keypad mode". La solution est de se rendre dans les options de Kitty/Putty, dans : Terminal/Features et de cocher l'option "Disable application keypad mode".
 +
 +====Désactiver l'indentation pour coller du texte====
 +
 +L'auto-indentation c'est pratique lorsqu'on écrit du code mais lorsqu'on copie/colle du texte ça devient infernal car chaque nouvelle ligne se décale un peu plus pour devenir une suite informe de bouts de mots.
 +<code bash>
 +ligne 1
 +     ligne 2
 +          ligne 3
 +</code>
 +Pour éviter cela il suffit d'activer l'option '':set paste'', qui désactive toute initiative de vim d'auto-indenter quoi que ce soit. On copie/colle le contenu, puis on réactive : '':set nopaste''.
 +
 +Un premier niveau de sagesse consiste à mapper ce switch sur une touche, comme par exemple ''F3'' :
 +<code bash>
 +set pastetoggle=<F3>
 +</code>
 +
 +Un second niveau d'érudition est d'activer ce switch automatiquement lors du copier/coller (lignes à ajouter dans le vimrc) :
 +<code bash>
 +let &t_SI .= "\<Esc>[?2004h"
 +let &t_EI .= "\<Esc>[?2004l"
 +
 +inoremap <special> <expr> <Esc>[200~ XTermPasteBegin()
 +
 +function! XTermPasteBegin()
 +  set pastetoggle=<Esc>[201~
 +  set paste
 +  return ""
 +endfunction
 +</code>
 +
 +source: [[https://coderwall.com/p/if9mda/automatically-set-paste-mode-in-vim-when-pasting-in-insert-mode|Automatically set paste mode in Vim when pasting in insert mode]]
  
  
informatique/logiciels/vim.txt · Last modified: 2020/11/17 08:39 by pteu