chenyanming / spacemacs_module_for_doom

Aim to port spacemacs features (defaults keybinding, transient state, layers and more) to doom, and provides a spacemacs module for doom.
146 stars 15 forks source link

Error in private config: modules/private/spacemacs/config.el, (error Key sequence a o / starts with non-prefix key a) #12

Closed shlee625 closed 2 years ago

shlee625 commented 3 years ago

Hi. First of all, thanks for your great work. I installed emacs-27.2 and DOOM v21.12.0-alpha on OS X 11.6. I tried to install this module but it kept being failed. I tried the easier instruction as a private module.

Error in private config: modules/private/spacemacs/config.el, (error Key sequence a o / starts with non-prefix key a)

Here is my ~/.doom.d/init.el.

(doom! :input
       ;;chinese
       ;;japanese
       ;;layout            ; auie,ctsrnm is the superior home row

       :completion
       company           ; the ultimate code completion backend
       ;;helm              ; the *other* search engine for love and life
       ;;ido               ; the other *other* search engine...
       ;;ivy               ; a search engine for love and life
       vertico           ; the search engine of the future

       :ui
       ;;deft              ; notational velocity for Emacs
       doom              ; what makes DOOM look the way it does
       doom-dashboard    ; a nifty splash screen for Emacs
       doom-quit         ; DOOM quit-message prompts when you quit Emacs
       ;;(emoji +unicode)  ; üôÇ
       hl-todo           ; highlight TODO/FIXME/NOTE/DEPRECATED/HACK/REVIEW
       ;;hydra
       ;;indent-guides     ; highlighted indent columns
       ;;ligatures         ; ligatures and symbols to make your code pretty again
       ;;minimap           ; show a map of the code on the side
       modeline          ; snazzy, Atom-inspired modeline, plus API
       ;;nav-flash         ; blink cursor line after big motions
       ;;neotree           ; a project drawer, like NERDTree for vim
       ophints           ; highlight the region an operation acts on
       (popup +defaults)   ; tame sudden yet inevitable temporary windows
       ;;tabs              ; a tab bar for Emacs
       treemacs          ; a project drawer, like neotree but cooler
       unicode           ; extended unicode support for various languages
       vc-gutter         ; vcs diff in the fringe
       vi-tilde-fringe   ; fringe tildes to mark beyond EOB
       ;;window-select     ; visually switch windows
       workspaces        ; tab emulation, persistence & separate workspaces
       ;;zen               ; distraction-free coding or writing

       :editor
       (evil +everywhere); come to the dark side, we have cookies
       file-templates    ; auto-snippets for empty files
       fold              ; (nigh) universal code folding
       ;;(format +onsave)  ; automated prettiness
       ;;god               ; run Emacs commands without modifier keys
       ;;lispy             ; vim for lisp, for people who don't like vim
       ;;multiple-cursors  ; editing in many places at once
       ;;objed             ; text object editing for the innocent
       ;;parinfer          ; turn lisp into python, sort of
       ;;rotate-text       ; cycle region at point between text candidates
       snippets          ; my elves. They type so I don't have to
       word-wrap         ; soft wrapping with language-aware indent

       :emacs
       dired             ; making dired pretty [functional]
       electric          ; smarter, keyword-based electric-indent
       ;;ibuffer         ; interactive buffer management
       undo              ; persistent, smarter undo for your inevitable mistakes
       vc                ; version-control and Emacs, sitting in a tree

       :term
       ;;eshell            ; the elisp shell that works everywhere
       ;;shell             ; simple shell REPL for Emacs
       ;;term              ; basic terminal emulator for Emacs
       ;;vterm             ; the best terminal emulation in Emacs

       :checkers
       syntax              ; tasing you for every semicolon you forget
       ;;(spell +flyspell) ; tasing you for misspelling mispelling
       ;;grammar           ; tasing grammar mistake every you make

       :tools
       ;;ansible
       ;;debugger          ; FIXME stepping through code, to help you add bugs
       ;;direnv
       ;;docker
       ;;editorconfig      ; let someone else argue about tabs vs spaces
       ;;ein               ; tame Jupyter notebooks with emacs
       (eval +overlay)     ; run code, run (also, repls)
       ;;gist              ; interacting with github gists
       lookup              ; navigate your code and its documentation
       ;;lsp               ; M-x vscode
       magit             ; a git porcelain for Emacs
       ;;make              ; run make tasks from Emacs
       ;;pass              ; password manager for nerds
       ;;pdf               ; pdf enhancements
       ;;prodigy           ; FIXME managing external services & code builders
       ;;rgb               ; creating color strings
       ;;taskrunner        ; taskrunner for all your projects
       ;;terraform         ; infrastructure as code
       ;;tmux              ; an API for interacting with tmux
       ;;upload            ; map local to remote projects via ssh/ftp

       :os
       (:if IS-MAC macos)  ; improve compatibility with macOS
       ;;tty               ; improve the terminal Emacs experience

       :lang
       ;;agda              ; types of types of types of types...
       ;;beancount         ; mind the GAAP
       ;;cc                ; C > C++ == 1
       ;;clojure           ; java with a lisp
       ;;common-lisp       ; if you've seen one lisp, you've seen them all
       ;;coq               ; proofs-as-programs
       ;;crystal           ; ruby at the speed of c
       ;;csharp            ; unity, .NET, and mono shenanigans
       ;;data              ; config/data formats
       ;;(dart +flutter)   ; paint ui and not much else
       ;;dhall
       ;;elixir            ; erlang done right
       ;;elm               ; care for a cup of TEA?
       emacs-lisp        ; drown in parentheses
       ;;erlang            ; an elegant language for a more civilized age
       ;;ess               ; emacs speaks statistics
       ;;factor
       ;;faust             ; dsp, but you get to keep your soul
       ;;fsharp            ; ML stands for Microsoft's Language
       ;;fstar             ; (dependent) types and (monadic) effects and Z3
       ;;gdscript          ; the language you waited for
       ;;(go +lsp)         ; the hipster dialect
       ;;(haskell +lsp)    ; a language that's lazier than I am
       ;;hy                ; readability of scheme w/ speed of python
       ;;idris             ; a language you can depend on
       json              ; At least it ain't XML
       ;;(java +meghanada) ; the poster child for carpal tunnel syndrome
       ;;javascript        ; all(hope(abandon(ye(who(enter(here))))))
       ;;julia             ; a better, faster MATLAB
       ;;kotlin            ; a better, slicker Java(Script)
       ;;latex             ; writing papers in Emacs has never been so fun
       ;;lean              ; for folks with too much to prove
       ;;ledger            ; be audit you can be
       ;;lua               ; one-based indices? one-based indices
       markdown          ; writing docs for people to ignore
       ;;nim               ; python + lisp at the speed of c
       ;;nix               ; I hereby declare "nix geht mehr!"
       ;;ocaml             ; an objective camel
       org               ; organize your plain life in plain text
       ;;php               ; perl's insecure younger brother
       ;;plantuml          ; diagrams for confusing people more
       ;;purescript        ; javascript, but functional
       python            ; beautiful is better than ugly
       ;;qt                ; the 'cutest' gui framework ever
       ;;racket            ; a DSL for DSLs
       ;;raku              ; the artist formerly known as perl6
       ;;rest              ; Emacs as a REST client
       ;;rst               ; ReST in peace
       ;;(ruby +rails)     ; 1.step {|i| p "Ruby is #{i.even? ? 'love' : 'life'}"}
       ;;rust              ; Fe2O3.unwrap().unwrap().unwrap().unwrap()
       ;;scala             ; java, but good
       ;;(scheme +guile)   ; a fully conniving family of lisps
       sh                ; she sells {ba,z,fi}sh shells on the C xor
       ;;sml
       ;;solidity          ; do you need a blockchain? No.
       ;;swift             ; who asked for emoji variables?
       ;;terra             ; Earth and Moon in alignment for performance.
       ;;web               ; the tubes
       yaml              ; JSON, but readable
       ;;zig               ; C, but simpler

       :email
       ;;(mu4e +org +gmail)
       ;;notmuch
       ;;(wanderlust +gmail)

       :app
       ;;calendar
       ;;emms
       ;;everywhere        ; *leave* Emacs!? You must be joking
       ;;irc               ; how neckbeards socialize
       ;;(rss +org)        ; emacs as an RSS reader
       ;;twitter           ; twitter client https://twitter.com/vnought

       :config
       ;;literate
       (default +smartparens)
       :private spacemacs)

I figured out that "ao/" is being used in https://github.com/chenyanming/spacemacs_module_for_doom/blob/82950bb3912c53fb65006a59288390aa223e4dcc/layer/org/packages.el#L356 but I'm a noob in emacs, so I have no idea what to do to solve this problem. I tried the solution from https://github.com/chenyanming/spacemacs_module_for_doom/issues/9 but it didn't work. It would be grateful if you help me. Thank you.

edited I tried this module on ubuntu machine (emacs-27.1, ubuntu-20.04), but the same error occurs.

chenyanming commented 3 years ago

How about you add

 ​(map! ​:leader 
 ​      ​"​ao"​ ​nil​) 

 ​;​; unbind the keys when necessary 
 ​(general-auto-unbind-keys)
jeremyjh commented 2 years ago

@chenyanming Where are you suggesting to add that code? I tried adding it in the config.el or in the :config section of init.el before the :private spacemacs directive and I still get the same error reported by OP.

chenyanming commented 2 years ago

Did you do

(remove-hook 'org-load-hook #'+org-init-keybinds-h) 

in config.el

If you don't do that, doom's org keybindings and spacemacs's would mess up.

chenyanming commented 2 years ago

All settings could be added in your personal config.el. If that dont work you may need to add it in this package's config.el, using method 2 (Load this module directly) in README.

chenyanming commented 2 years ago

Or later I can add it directly in this package.

jeremyjh commented 2 years ago

@chenyanming yes thanks, there is no change with having the remove-hook there.

jeremyjh commented 2 years ago

@chenyanming I doubt it will work to have that code anywhere, even if I do not load the spacemacs module having the code

(map! ​:leader 
 ​      ​"​ao"​ ​nil​)

Produces the error all on its own.

chenyanming commented 2 years ago

I see. Seems have some other problems on your doom settings (not loading spacemacs module demonstrates that), try reinstall doom.

jeremyjh commented 2 years ago

@chenyanming I doubt that can change anything as this is already a vanilla install of doom with no other configuration changed, this package is literally the first thing I've tried. Have you tried updating doom to master to try to reproduce?

jeremyjh commented 2 years ago

Sorry I guess I had not redone doom sync, we won't get that error without the spacemacs package active.

michael-stokley-tractmanager commented 2 years ago

I'm running into this as well. Emacs 27.2 on mac, a brand new completely clean install of doom and this spacemacs module.

mastokley commented 2 years ago

Just confirmed I'm running into this issue on debian, too. Emacs 27.2, brand new installation of doom.

chenyanming commented 2 years ago

I reinstalled doom with emacs 28 on win and mac, no problems, did you still have this issue?

tnira commented 2 years ago

I tried a fresh install of emacs-28.1 and Doom Emacs on macOS. At least in my environment, I am getting the same error. doom.error.log

chenyanming commented 2 years ago

I had time today to clone a new doom with new emacs 28, and installed with the bug fix commit.

One thing is that, please enable hydra in init.el which is disabled by default.