viper-insert неправильное количество аргументов ошибка

У меня есть следующая функция и привязка клавиш в моем файле .viper:

(defun th-change-to-regexp (regexp)
  (interactive "s")
  (kill-region (point) (progn
                         (re-search-forward regexp nil nil 1)
                         (- (point) 1)))
  (backward-char)
  (viper-insert))

(define-key viper-vi-global-user-map "ct" 'th-change-to-regexp)

Я получаю следующую ошибку в команде viper-insert, я думаю:

Wrong number of arguments: #[(arg) "Ä \210^H\211^X\204^M^@Å\202(^@^H:\203'@\203^^^@H
@Æ\232\203\"^@Å\202(^@^H@\202(^@^H)^YÇÈ ÉÊ\211\211¯^F!\210Ë=\203S@ \211^[ÌV
\205O^@ÊÍÎ\217\210^KS\211^S\202>^@)\202U^@Ï )\207"  
[arg val viper-intermediate-command count viper-set-complex-command-for-undo 1 (nil) 
viper-set-destructive-command viper-insert 114 ...] 8 ("/contrib/projects/emacs23/32bit
/share/emacs/23.1/lisp/emulation/viper-cmd.elc" . 54774) "P"], 0

Спасибо


person Opt    schedule 26.02.2010    source источник


Ответы (1)


Я не пользователь viper, поэтому я мог бы быть совершенно не в курсе, но viper-insert принимает 1 обязательный аргумент, и вы не даете ему никаких аргументов. Вы можете отправить ему текущий аргумент префикса с помощью

(viper-insert current-prefix-arg) 
person haxney    schedule 26.02.2010