bind <tab> to vimpulse-abbrev-expand-before in insert mode

Vegard Øye vegard_oye at hotmail.com
Sat Dec 18 17:31:55 CET 2010


On 2010-12-17 18:23, Titus von der Malsburg wrote:

>>>   (vimpulse-imap [(tab)] 'vimpulse-abbrev-expand-before)
>>>
>>> But when I press tab in insert mode after evaluating this nothing
>>> happens.  I'm was running emacs -nw.   The strange thing is that it
>>> does work when I run emacs with the graphical user interface (GNU
>>> Emacs 23.1.1 from Ubuntu lucid).

Hi Titus, welcome to the list!

In the terminal, C-i and <tab> are the same key, and any binding for
the former has precedence over the latter -- regardless of keymap
order. Since indent.el binds `indent-for-tab-command' to C-i, any
binding you make for <tab> is overridden. This should work:

    (vimpulse-imap "\C-i" 'vimpulse-abbrev-expand-before)

>>> The other problem I'm having is that C-v does not activate block
>>> selection but inserts text.  I'd be happy about any suggestion!
>
> C-h c C-v says "C-v runs the command cua-paste"

It seems that Cua-mode and Vimpulse fight over priority in `
`emulation-mode-map-alists'. This should be fixed in commit d21311d.

>>> Here's my init.el, not much going on there:
>>>
>>>   (load "~/.emacs.d/vimpulse.el")

To get the latest bugfixes, you should upgrade to the Git version.
In the ~/.emacs.d/ directory, do

    git clone git://gitorious.org/vimpulse/vimpulse.git

(If Git isn't installed, do "sudo aptitude install git-all" first.
Later on, you can grab updates by cd-ing into ~/.emacs.d/vimpulse/
and entering "git pull".) Also, add ~/.emacs.d/vimpulse/ to
`load-path' by placing this line in your .emacs:

    (add-to-list 'load-path "~/.emacs.d/vimpulse")

Then, for good measure, nail the old vimpulse.el to a frisbee and
fling it over a rainbow.

-- 
Vegard



More information about the implementations-list mailing list