Вайпер-вставить неверное количество аргументов ошибка - PullRequest
0 голосов
/ 26 февраля 2010

В моем файле .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

Спасибо

1 Ответ

2 голосов
/ 26 февраля 2010

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

(viper-insert current-prefix-arg) 
...