Я не использую режим dired
слишком часто, но пытался немного попрактиковаться с ним. Поэтому я создал несколько пустых тренировочных текстовых файлов и пометил их обычным быстрым сочетанием клавиш. Затем я попытался переименовать файлы с помощью команды «R» - чтобы переместить файлы в новую папку. Я получаю эту странную ошибку, и операция не удается.
apply: Wrong number of arguments: (8 . 8), 10 [3 times]
Я столкнулся с той же ошибкой, когда пытался сделать копию с помощью команды "C". Но достаточно интересно, что проблема не возникает, когда я пытался удалить с помощью «D». Удалить сделал работу. Похоже, что где-то функция apply
используется неправильно.
Я использую emacs версии 25.3 и Spacemacs версии 0.200.13.x в Ubuntu Linux 16.04 LTS.
У кого-нибудь есть чувство, почему происходит эта ошибка? Поскольку dired
является частью ядра emacs, я думаю, что может быть конфликт с другим пакетом или чем-то еще. Я проверил список проблем репозитория spacemacs github, но не увидел упомянутых проблем. Любая помощь будет оценена.
ОБНОВЛЕНО
Согласно предложению Фила, вот трассировка стека:
Debugger entered--Lisp error: (wrong-number-of-arguments (8 . 8) 10)
helm-read-file-name-handler-1("Rename jarrett-iccv-09.pdf to: " read-file-name-internal file-exists-p nil "~/Downloads/" file-name-history nil nil "dired-do-rename" "*helm-mode-dired-do-rename*")
apply(helm-read-file-name-handler-1 ("Rename jarrett-iccv-09.pdf to: " read-file-name-internal file-exists-p nil "~/Downloads/" file-name-history nil nil "dired-do-rename" "*helm-mode-dired-do-rename*"))
helm--completing-read-default("Rename jarrett-iccv-09.pdf to: " read-file-name-internal file-exists-p nil "~/Downloads/" file-name-history nil nil)
apply(helm--completing-read-default ("Rename jarrett-iccv-09.pdf to: " read-file-name-internal file-exists-p nil "~/Downloads/" file-name-history nil nil))
#f(advice-wrapper :override completing-read-default helm--completing-read-default)("Rename jarrett-iccv-09.pdf to: " read-file-name-internal file-exists-p nil "~/Downloads/" file-name-history nil nil)
completing-read("Rename jarrett-iccv-09.pdf to: " read-file-name-internal file-exists-p nil "~/Downloads/" file-name-history nil)
read-file-name-default("Rename jarrett-iccv-09.pdf to: " "/home/krishnab/Downloads/" nil nil nil nil)
read-file-name("Rename jarrett-iccv-09.pdf to: " "/home/krishnab/Downloads/" nil nil nil nil)
ido-read-file-name("Rename jarrett-iccv-09.pdf to: " "/home/krishnab/Downloads/" nil nil nil nil)
apply(ido-read-file-name ("Rename jarrett-iccv-09.pdf to: " "/home/krishnab/Downloads/" nil nil nil nil))
#f(advice-wrapper :override #f(advice-wrapper :override read-file-name-default helm--generic-read-file-name) ido-read-file-name)("Rename jarrett-iccv-09.pdf to: " "/home/krishnab/Downloads/" nil nil nil nil)
read-file-name("Rename jarrett-iccv-09.pdf to: " "/home/krishnab/Downloads/" nil)
apply(read-file-name ("Rename jarrett-iccv-09.pdf to: " "/home/krishnab/Downloads/" nil))
dired-mark-pop-up(nil move ("jarrett-iccv-09.pdf") read-file-name "Rename jarrett-iccv-09.pdf to: " "/home/krishnab/Downloads/" nil)
dired-mark-read-file-name("Rename %s to: " "/home/krishnab/Downloads/" move nil ("jarrett-iccv-09.pdf") nil)
dired-do-create-files(move dired-rename-file "Move" nil t "Rename")
dired-do-rename(nil)
funcall-interactively(dired-do-rename nil)
call-interactively(dired-do-rename nil nil)
command-execute(dired-do-rename)
ОБНОВЛЕНО 2
Похоже, что подобная проблема обнаружена в репозитории helm
github. Кажется, что helm и режим ido несовместимы.
https://github.com/emacs-helm/helm/issues/1819
В вики helm
есть ссылка на это.
https://github.com/emacs-helm/helm/wiki#use-helm-mode-and-ido-mode
Я попробовал некоторые из их предложений, например добавление
'(helm-completing-read-handlers-alist
(quote
((find-file-read-only . ido)
(find-alternate-file . nil))
Но все равно получаю ту же ошибку.