Created attachment 89707 [details] vim rc I do not know if it's a bug or a feature, but it does not happen with xterm so I decided to post it. In vim when we type Alt+L in insert mode it goes to normal mode. To avoid this behavior according to http://vim.wikia.com/wiki/Fix_meta-keys_that_break_out_of_Insert_mode I added in my ~/.vimrc these lines: ''' " fix meta-keys which generate <Esc>a .. <Esc>z let c='a' while c <= 'z' exec "set <M-".toupper(c).">=\e".c exec "imap \e".c." <M-".toupper(c).">" let c = nr2char(1+char2nr(c)) endw ''' In xterm the above works, but in Konsole when I type Alt+J or +K or +L I get Ê Ë Ì respectively which is not what I want. I encounter this problem because I want to be able to write with "polymorphic Alt Key Macros" as described in 3.10.1 at http://vim-latex.sourceforge.net/documentation/latex-suite.html So when I open a .tex file with vim test.tex and I type i to go into insert mode and then left parenthesis and then Alt+L like: (<<<press Alt+L>>> I want to get (as vim-latex-suite dictates): \left(\right)<++> Instead, the Alt-Key binding does not work and I get an accented "I": (Ì I attach my ~/.vimrc for easier reproducibility. Thanks!
Is there a quick fix/workaround?
(reposting my mailing list post:) This is a bug in vim. vim itself can't cope with the distinction between Alt+letter keys, and Unicode characters. This has nothing to do with the terminal. For more background on the subject, see my infamous "Dear Bram" thread on vim-dev: https://groups.google.com/forum/#!topic/vim_dev/2bp9UdfZ63M[1-25-false]
Thank you for your fast reply. A lot of people requested this and after 3+ years it's still active! However, why do I have the feeling that it should work? Why does it work In xterm, then?
I suppose you can close this listing. It's kind of a babel tower and is quite sufficiently explained on: http://vim.wikia.com/wiki/Get_Alt_key_to_work_in_terminal I was quite emotional and perturbed on being forced to abandon konsole in favor of xterm+uxterm I discovered that I can get "\left(\right)<++>" just by double-typing "((". So I am fine and happy with konsole. :) All the best and thanks!