ergoemacs / ergoemacs-mode

ergoemacs-mode
ergoemacs.github.io/
GNU General Public License v3.0
293 stars 35 forks source link

Symbol's function definition is void: ergoemacs-translate-layout #394

Closed magichowl closed 3 years ago

magichowl commented 8 years ago

Emacs 24.5.1 with latest elpa ergoemacs-mode, after startup, warning is

Symbol's function definition is void: ergoemacs-translate-layout

debug info is

 entered--Lisp error: (void-function ergoemacs-translate-layout)
  (ergoemacs-translate-layout lay :quail)
  (cons lay (ergoemacs-translate-layout lay :quail))
  (lambda (lay) (cons lay (ergoemacs-translate-layout lay :quail)))("sw")
  mapcar((lambda (lay) (cons lay (ergoemacs-translate-layout lay :quail))) ("sw" "us" "gb-dv" "bepo" "colemak" "workman" "programmer-dv" "neo" "es-dv-1" "pt-nativo" "asset" "be" "da" "de" "dv" "eo" "fa" "es" "fr" "gb" "it" "no" "eo-displaced" "de-truly-andw"))
  (append quail-keyboard-layout-alist (mapcar (function (lambda (lay) (cons lay (ergoemacs-translate-layout lay :quail)))) (ergoemacs-layouts--list)))
  (setq ergoemacs-layout--quail-alist quail-keyboard-layout-alist quail-keyboard-layout-alist (append quail-keyboard-layout-alist (mapcar (function (lambda (lay) (cons lay (ergoemacs-translate-layout lay :quail)))) (ergoemacs-layouts--list))))
  (cond ((and ergoemacs-layout--quail-alist (eq restore :refresh)) (setq quail-keyboard-layout-alist (append ergoemacs-layout--quail-alist (mapcar (function (lambda (lay) (cons lay ...))) (ergoemacs-layouts--list))))) ((and ergoemacs-layout--quail-alist restore) (setq quail-keyboard-layout-alist ergoemacs-layout--quail-alist ergoemacs-layout--quail-alist nil)) (ergoemacs-layout--quail-alist) (t (setq ergoemacs-layout--quail-alist quail-keyboard-layout-alist quail-keyboard-layout-alist (append quail-keyboard-layout-alist (mapcar (function (lambda (lay) (cons lay ...))) (ergoemacs-layouts--list))))))
  ergoemacs-layout--quail-alist()
  (progn (ergoemacs-layout--quail-alist) (ergoemacs-layout--update-quail))
  (lambda nil (progn (ergoemacs-layout--quail-alist) (ergoemacs-layout--update-quail)))()
  eval-after-load(quail (lambda nil (progn (ergoemacs-layout--quail-alist) (ergoemacs-layout--update-quail))))
  #<subr eval-buffer>(#<buffer  *load*-732987> nil "/home/sspan/.emacs.d/elpa/ergoemacs-mode-20160106.1239/ergoemacs-layouts.el" nil t)
  ad-Advice-eval-buffer(#<subr eval-buffer> #<buffer  *load*-732987> nil "/home/sspan/.emacs.d/elpa/ergoemacs-mode-20160106.1239/ergoemacs-layouts.el" nil t)
  apply(ad-Advice-eval-buffer #<subr eval-buffer> (#<buffer  *load*-732987> nil "/home/sspan/.emacs.d/elpa/ergoemacs-mode-20160106.1239/ergoemacs-layouts.el" nil t))
  eval-buffer(#<buffer  *load*-732987> nil "/home/sspan/.emacs.d/elpa/ergoemacs-mode-20160106.1239/ergoemacs-layouts.el" nil t)  ; Reading at buffer position 21533
  load-with-code-conversion("/home/sspan/.emacs.d/elpa/ergoemacs-mode-20160106.1239/ergoemacs-layouts.el" "/home/sspan/.emacs.d/elpa/ergoemacs-mode-20160106.1239/ergoemacs-layouts.el" nil nil)
  #<subr load>("ergoemacs-layouts" nil nil nil nil)
  ad-Advice-load(#<subr load> "ergoemacs-layouts")
  apply(ad-Advice-load #<subr load> "ergoemacs-layouts")
  load("ergoemacs-layouts")
  (closure ((pkg . ergoemacs-layouts) (--dolist-tail-- ergoemacs-layouts ergoemacs-lib ergoemacs-map ergoemacs-map-properties ergoemacs-mapkeymap ergoemacs-theme-engine ergoemacs-translate ergoemacs-macros) ergoemacs-component-struct--apply-ensure-p pcache-directory ergoemacs-require ergoemacs-require--ini-p ergoemacs-map--hashkey ergoemacs-keyboard-layout ergoemacs-component-struct--refresh-variables cl-struct-ergoemacs-component-struct-tags t) nil (load (symbol-name pkg)))()
  funcall((closure ((pkg . ergoemacs-layouts) (--dolist-tail-- ergoemacs-layouts ergoemacs-lib ergoemacs-map ergoemacs-map-properties ergoemacs-mapkeymap ergoemacs-theme-engine ergoemacs-translate ergoemacs-macros) ergoemacs-component-struct--apply-ensure-p pcache-directory ergoemacs-require ergoemacs-require--ini-p ergoemacs-map--hashkey ergoemacs-keyboard-layout ergoemacs-component-struct--refresh-variables cl-struct-ergoemacs-component-struct-tags t) nil (load (symbol-name pkg))))
  (let* ((entry-time (current-time)) (ret (funcall function)) val time file) (if (not ergoemacs-timing-hash) (setq ergoemacs-timing-hash (make-hash-table)) (if (not (setq val (gethash key ergoemacs-timing-hash))) (puthash key (vector 1 (setq val (float-time (time-subtract ... entry-time))) val val (or (and (setq file ...) (expand-file-name ... ergoemacs-dir)) load-file-name buffer-file-name)) ergoemacs-timing-hash) (let* ((v val)) (aset v 0 (+ (aref v 0) 1))) (let* ((v val)) (aset v 1 (+ (aref v 1) (setq time (float-time ...))))) (let* ((v val)) (aset v 2 (min time (aref val 2)))) (let* ((v val)) (aset v 3 (max time (aref val 3)))) (puthash key val ergoemacs-timing-hash))) ret)
  ergoemacs-timing--(load-ergoemacs-layouts (closure ((pkg . ergoemacs-layouts) (--dolist-tail-- ergoemacs-layouts ergoemacs-lib ergoemacs-map ergoemacs-map-properties ergoemacs-mapkeymap ergoemacs-theme-engine ergoemacs-translate ergoemacs-macros) ergoemacs-component-struct--apply-ensure-p pcache-directory ergoemacs-require ergoemacs-require--ini-p ergoemacs-map--hashkey ergoemacs-keyboard-layout ergoemacs-component-struct--refresh-variables cl-struct-ergoemacs-component-struct-tags t) nil (load (symbol-name pkg))))
  (if (featurep pkg) nil (ergoemacs-timing-- (intern (format "load-%s" pkg)) (function (lambda nil (load (symbol-name pkg))))))
  (let ((pkg (car --dolist-tail--))) (if (featurep pkg) nil (ergoemacs-timing-- (intern (format "load-%s" pkg)) (function (lambda nil (load (symbol-name pkg)))))) (setq --dolist-tail-- (cdr --dolist-tail--)))
  (while --dolist-tail-- (let ((pkg (car --dolist-tail--))) (if (featurep pkg) nil (ergoemacs-timing-- (intern (format "load-%s" pkg)) (function (lambda nil (load (symbol-name pkg)))))) (setq --dolist-tail-- (cdr --dolist-tail--))))
  (let ((--dolist-tail-- (quote (ergoemacs-command-loop ergoemacs-advice ergoemacs-component ergoemacs-debug ergoemacs-functions ergoemacs-key-description ergoemacs-layouts ergoemacs-lib ergoemacs-map ergoemacs-map-properties ergoemacs-mapkeymap ergoemacs-theme-engine ergoemacs-translate ergoemacs-macros)))) (while --dolist-tail-- (let ((pkg (car --dolist-tail--))) (if (featurep pkg) nil (ergoemacs-timing-- (intern (format "load-%s" pkg)) (function (lambda nil (load ...))))) (setq --dolist-tail-- (cdr --dolist-tail--)))))
  eval-buffer(#<buffer  *load*-529009> nil "/home/sspan/.emacs.d/elpa/ergoemacs-mode-20160106.1239/ergoemacs-mode.el" nil t)  ; Reading at buffer position 24604
  load-with-code-conversion("/home/sspan/.emacs.d/elpa/ergoemacs-mode-20160106.1239/ergoemacs-mode.el" "/home/sspan/.emacs.d/elpa/ergoemacs-mode-20160106.1239/ergoemacs-mode.el" nil t)
  (ergoemacs-mode 1)
  eval-buffer(#<buffer  *load*-982882> nil "/home/sspan/.emacs.d/lisp/init-ergoemacs.el" nil t)  ; Reading at buffer position 194
  load-with-code-conversion("/home/sspan/.emacs.d/lisp/init-ergoemacs.el" "/home/sspan/.emacs.d/lisp/init-ergoemacs.el" nil t)
  #<subr require>(init-ergoemacs nil nil)
  ad-Advice-require(#<subr require> init-ergoemacs)
  apply(ad-Advice-require #<subr require> init-ergoemacs)
  require(init-ergoemacs)
  eval-buffer(#<buffer  *load*> nil "/home/sspan/.emacs.d/init.el" nil t)  ; Reading at buffer position 3861
  load-with-code-conversion("/home/sspan/.emacs.d/init.el" "/home/sspan/.emacs.d/init.el" t t)
  load("/home/sspan/.emacs.d/init" t t)
  #[0 "\205\262
mattfidler commented 8 years ago

Did you remove all the elc files and restart?

magichowl commented 8 years ago

Yes, I removed elc files and my config for ergoemacs, ergoemacs-mode-20160106.1239 and ergoemacs-mode-5.14.7.2, output the same warning.

mattfidler commented 8 years ago

can you post your configuration?

mattfidler commented 8 years ago

I can't reproduce this, probably because I don't load quail first. I'm assuming you do that. I hope this fixes that.

mattfidler commented 8 years ago

Did this work for you?

magichowl commented 8 years ago

seems the symptom is alleviated: ergoemacs runs normally in emacs with just one line in Message 'ergoemacs-map--alist-atom: Wrong type argument: listp, t

mattfidler commented 8 years ago

I think the above commit should fix the ergoemacs-map--alist-atom arguments.

magichowl commented 8 years ago

start issue is solved, but when I call some hot key like "ido-switch-buffer", error comes before cursor appear in the minibuffer: Error in post-command-hook (ergoemacs-post-command-hook): (wrong-type-argument stringp nil)