新入了2016mbp,无法安装quickhelp了,求解答

以前用linux就是直接安装就可以了,也不用additional-package就可以使用,换了新电脑之后就不好使了,不知道为什么。是emacsformac 25.1.1 的问题么?google上都没有发现同类的问题。

进入emacs提示 - Unknown layer company-jedi declared in dotfile.
- Unknown layer company-quickhelp-mode declared in dotfile.
- Unknown layer elpy declared in dotfile.
- Unknown layer flake8 declared in dotfile.
- Unknown layer org-pomodoro declared in dotfile.
- Unknown layer jupyter declared in dotfile.
- tern binary not found!

我的配置如下 (defun dotspacemacs/layers () 下 添加 auto-completion dotspacemacs-additional-packages '(youdao-dictionary) '(company-quickhelp-mode) '(elpy-mode)

user-config 和 .spacemacs最下面添加了 (add-hook 'after-init-hook 'global-company-mode 'company-quickhelp-mode)

用同样的方法, youdao-dictionary 安装了就没有问题,是不是我additional 的写法不对? 我在linux和windows里上面所有的都可以直接安装,不用再配置任何东西,只要在layer里写上就可以,难道是我一开始就用山人的elpa的问题?哈哈

没有确实答案没关系,至少给个推测嘛,没人回复,感觉怪怪得。

emacs不是自行编译的版本? 如果新出的MBP系统构架改了,那么可能需要从源码编译。或者等Emacs for Mac更新。


GNU Emacs for Mac 25.1.1是9月的(MBP好像是10月发布的)。可能真是这个问题。

顺带问一下是国际标准键盘嘛?使用感受如何?键盘打字爽不爽?我还在用2012版,正在考虑要入MBP还是Mac Pro。

我是在emacs for mac 官网下载dmg的25.1.1后来用了24.5和25.1.0都不行。今天打算把我公司的配置拿回家直接替换emacs.d试试。

我的是国行键盘,预订的时候忘了跟店里说了,实际上国航键盘和美式键盘一样,除了esc是touchbar上的,其他的都有,touchbar非常好用,比想象中方便很多,触控的感觉真心不错,一句话概括就是“至少感觉多花了将近6分之一的价格,没白花”。

关于键盘,手感比一代蝴蝶键盘强太多了,对我来说甚至比老款的mac键盘还要舒服,虽然还是有一点敲钢板的感觉,但是手感和键位感觉都很不错,总体感觉上基本算是不弱于100左右的薄膜键盘,虽然完全不是一类的键盘(排除单个按键大小和布局以外,感觉很接近罗技310水健将的感觉。当然和机械键盘的触感没法比。

但是关于购买方面,我觉得你既然有mac,可以先用一段时间吧,现在买要5周到货。体验店都很难有,有了基本直接就被人买了。我是2号发售就去体验店官网价全额付款预订的,18号才到货。

我是之前没有自己的mac,其实以你的情况,再等3到6个月,等新版升级再买。我的是体验店的样机,530的显卡,听说官方预订的正版货(非样机)是540显卡(虽然写着是530显卡),会产生花屏的效果。如果是软件和系统问题还可以更新,如果是硬件问题就蛋疼了,就算被召回也会巨麻烦。

关于emacs for mac的问题:如果急着用的话,可以用链接里的办法安装 链接里提到的homebrew编译算是比较方便的办法。不过还是不能保证不出问题。 不着急的话,不建议这样安装。(因为homebrew会把app装到usr/local目录里,然后链接到Application目录,而且编译出来的是没有封包的,不方便软件管理——纯属个人见解)

实际上国航键盘和美式键盘一样,除了esc是touchbar上的,其他的都有

esc 有不在touchbar上的版本?我 homebrew 编译没有任何问题 我用的spacemacs

如果你不用外界键盘,都不舒服。第一代(用了超过1年)第二代用了(快一周了)。不知道楼上为什么这么爱 TouchBar,更能键以前不用现在也不用(玻璃板子的 ESC 其实还有有一点别扭的,虽然可以按的区域很大包括最左边不是显示的区域都可以按的有效区域)。TouchID 好用,1Password再不用傻了吧唧的敲半天了。如果你 MBP 和 Mac Pro 选 果断等更新 Mac Pro 或者等更新 iMac。

多核处理器性能 Geekbank 比较 不如 2013 MacBook Pro。

没有touchbar的话,当然就不再touchbar上了呀。哈哈。

我从来几乎不用esc,所以虽然esc确实不舒服,但是无所谓的,除了这一点,touchbar真心很不错,操作起来很流畅,声音调大小,或者自定义touchbar,很多软件都支持自定义touchbar。

个人偏好,我外界键盘对我影响不是很大就是觉得升级了有些不值。 @LdBeth 如果有移动的需求还是可以买。老15还是太沉了,新13和 Air 一样重,TouchBar 用了一周聊胜于无(个人感觉),TouchID 是非常好用的!

常驻一个 Siri 的图标真他娘烦。。。

Touch Bar 上的 Siri 图标是可以去掉的。

System Preferences - Keyboard - Customize Control Strip

1 个赞

开始播放按钮固定绑定了 itunes 估计 spotify 升级后会好吧。十分感谢。

感觉还是不值。然而mac pro没有降价。

1 个赞

还是回到题主的问题.

按照目前你给出的代码段来看, 要么是你使用了不正确的语法, 要么你在不正确的位置加入了无法生效的配置.

所以, 最好还是用 markdown 的格式贴出你的配置文件. 建议仔细对比阅读 .spacemacs.template 中的注释, 比对修改你自己的 .spacemacs 文件.

OK,以下是我的配置文件代码,但我越来越觉得是版本的问题,因为我把我windows和linux里的emacs配置直接粘贴到mac里也报同样的错,配置文件我检查了好几遍,而且一行一行的做过修改,还是不好用。 我只修改了.spacemacs和.emacs.d/init.el 我用的一直是原版的spacemacs,今晚上换山人的配置试试。

emacs for mac 25.1.1 & 24.5 & 25.1.0 / spacemacs 0.200.5 branch master & develop

.spacemacs

;; -*- mode: emacs-lisp -*-
;; This file is loaded by Spacemacs at startup.
;; It must be stored in your home directory.

(defun dotspacemacs/layers ()
  "Configuration Layers declaration.
You should not put any user code in this function besides modifying the variable
values."
  (setq-default
   ;; Base distribution to use. This is a layer contained in the directory
   ;; `+distribution'. For now available distributions are `spacemacs-base'
   ;; or `spacemacs'. (default 'spacemacs)
   dotspacemacs-distribution 'spacemacs
   ;; List of additional paths where to look for configuration layers.
   ;; Paths must have a trailing slash (i.e. `~/.mycontribs/')
   dotspacemacs-configuration-layer-path '()
   ;; List of configuration layers to load. If it is the symbol `all' instead
   ;; of a list then all discovered layers will be installed.
   dotspacemacs-configuration-layers
   '(
     ;; ----------------------------------------------------------------
     ;; Example of useful layers you may want to use right away.
     ;; Uncomment some layer names and press <SPC f e R> (Vim style) or
     ;; <M-m f e R> (Emacs style) to install them.
     ;; ----------------------------------------------------------------
     auto-completion
     better-defaults
     emacs-lisp
     git
     markdown
     org
     (shell :variables
            shell-default-height 30
            shell-default-position 'bottom)
     spell-checking
     ;; syntax-checking
     version-control
     ;; ----------------------------------------------------------
     ;; MY CONFIG
     ivy
     ;; python-mode
     python
     ;; elpy
     ;; flake8
     ;; syntax-checking
     ;; Html
     (html :variables
           css-indent-offset 2
           web-mode-code-indent-offset 2
           web-mode-markup-indent-offset 2
           web-mode-css-indent-offset 2)
     ;; javascript-mode
     javascript
     org-pomodoro
     ;; jupyter
     ;; ;; theme
     sanityinc-solarized
     color-themes-solarized
     ;; nyan cat
     (colors :variables
             colors-enable-nyan-cat-progress-bar t)
     ;; other
     ;; themes
     ;; (setq-default dotspacemacs-configuration-layers '(themes-megapack))
     )
   ;; List of additional packages that will be installed without being
   ;; wrapped in a layer. If you need some configuration for these
   ;; packages, then consider creating a layer. You can also put the
   ;; configuration in `dotspacemacs/user-config'.
   dotspacemacs-additional-packages '(youdao-dictionary)
   ;; A list of packages and/or extensions that will not be install and loaded.
   dotspacemacs-excluded-packages '()
   ;; If non-nil spacemacs will delete any orphan packages, i.e. packages that
   ;; are declared in a layer which is not a member of
   ;; the list `dotspacemacs-configuration-layers'. (default t)
   dotspacemacs-delete-orphan-packages t))

(defun dotspacemacs/init ()
  "Initialization function.
This function is called at the very startup of Spacemacs initialization
before layers configuration.
You should not put any user code in there besides modifying the variable
values."
  ;; This setq-default sexp is an exhaustive list of all the supported
  ;; spacemacs settings.
  (setq-default
   ;; If non nil ELPA repositories are contacted via HTTPS whenever it's
   ;; possible. Set it to nil if you have no way to use HTTPS in your
   ;; environment, otherwise it is strongly recommended to let it set to t.
   ;; This variable has no effect if Emacs is launched with the parameter
   ;; `--insecure' which forces the value of this variable to nil.
   ;; (default t)
   dotspacemacs-elpa-https t
   ;; Maximum allowed time in seconds to contact an ELPA repository.
   dotspacemacs-elpa-timeout 5
   ;; If non nil then spacemacs will check for updates at startup
   ;; when the current branch is not `develop'. (default t)
   dotspacemacs-check-for-update t
   ;; One of `vim', `emacs' or `hybrid'. Evil is always enabled but if the
   ;; variable is `emacs' then the `holy-mode' is enabled at startup. `hybrid'
   ;; uses emacs key bindings for vim's insert mode, but otherwise leaves evil
   ;; unchanged. (default 'vim)
   dotspacemacs-editing-style 'vim
   ;; If non nil output loading progress in `*Messages*' buffer. (default nil)
   dotspacemacs-verbose-loading nil
   ;; Specify the startup banner. Default value is `official', it displays
   ;; the official spacemacs logo. An integer value is the index of text
   ;; banner, `random' chooses a random text banner in `core/banners'
   ;; directory. A string value must be a path to an image format supported
   ;; by your Emacs build.
   ;; If the value is nil then no banner is displayed. (default 'official)
   dotspacemacs-startup-banner 'official
   ;; List of items to show in the startup buffer. If nil it is disabled.
   ;; Possible values are: `recents' `bookmarks' `projects'.
   ;; (default '(recents projects))
   dotspacemacs-startup-lists '(recents projects)
   ;; Number of recent files to show in the startup buffer. Ignored if
   ;; `dotspacemacs-startup-lists' doesn't include `recents'. (default 5)
   dotspacemacs-startup-recent-list-size 5
   ;; Default major mode of the scratch buffer (default `text-mode')
   dotspacemacs-scratch-mode 'text-mode
   ;; List of themes, the first of the list is loaded when spacemacs starts.
   ;; Press <SPC> T n to cycle to the next theme in the list (works great
   ;; with 2 themes variants, one dark and one light)
   dotspacemacs-themes '(spacemacs-dark
                         spacemacs-light
                         solarized-light
                         solarized-dark
                         solarized
                         leuven
                         monokai
                         zenburn)
   ;; If non nil the cursor color matches the state color in GUI Emacs.
   dotspacemacs-colorize-cursor-according-to-state t
   ;; Default font. `powerline-scale' allows to quickly tweak the mode-line
   ;; size to make separators look not too crappy.
   dotspacemacs-default-font '("Source Code Pro"
                               :size 18
                               :weight normal
                               :width normal
                               :powerline-scale 1.1)
   ;; The leader key
   dotspacemacs-leader-key "SPC"
   ;; The leader key accessible in `emacs state' and `insert state'
   ;; (default "M-m")
   dotspacemacs-emacs-leader-key "M-m"
   ;; Major mode leader key is a shortcut key which is the equivalent of
   ;; pressing `<leader> m`. Set it to `nil` to disable it. (default ",")
   dotspacemacs-major-mode-leader-key ","
   ;; Major mode leader key accessible in `emacs state' and `insert state'.
   ;; (default "C-M-m)
   dotspacemacs-major-mode-emacs-leader-key "C-M-m"
   ;; These variables control whether separate commands are bound in the GUI to
   ;; the key pairs C-i, TAB and C-m, RET.
   ;; Setting it to a non-nil value, allows for separate commands under <C-i>
   ;; and TAB or <C-m> and RET.
   ;; In the terminal, these pairs are generally indistinguishable, so this only
   ;; works in the GUI. (default nil)
   dotspacemacs-distinguish-gui-tab nil
   ;; (Not implemented) dotspacemacs-distinguish-gui-ret nil
   ;; The command key used for Evil commands (ex-commands) and
   ;; Emacs commands (M-x).
   ;; By default the command key is `:' so ex-commands are executed like in Vim
   ;; with `:' and Emacs commands are executed with `<leader> :'.
   dotspacemacs-command-key ":"
   ;; If non nil `Y' is remapped to `y$'. (default t)
   dotspacemacs-remap-Y-to-y$ t
   ;; Name of the default layout (default "Default")
   dotspacemacs-default-layout-name "Default"
   ;; If non nil the default layout name is displayed in the mode-line.
   ;; (default nil)
   dotspacemacs-display-default-layout nil
   ;; If non nil then the last auto saved layouts are resume automatically upon
   ;; start. (default nil)
   dotspacemacs-auto-resume-layouts nil
   ;; Location where to auto-save files. Possible values are `original' to
   ;; auto-save the file in-place, `cache' to auto-save the file to another
   ;; file stored in the cache directory and `nil' to disable auto-saving.
   ;; (default 'cache)
   dotspacemacs-auto-save-file-location 'cache
   ;; Maximum number of rollback slots to keep in the cache. (default 5)
   dotspacemacs-max-rollback-slots 5
   ;; If non nil then `ido' replaces `helm' for some commands. For now only
   ;; `find-files' (SPC f f), `find-spacemacs-file' (SPC f e s), and
   ;; `find-contrib-file' (SPC f e c) are replaced. (default nil)
   dotspacemacs-use-ido nil
   ;; If non nil, `helm' will try to minimize the space it uses. (default nil)
   dotspacemacs-helm-resize nil
   ;; if non nil, the helm header is hidden when there is only one source.
   ;; (default nil)
   dotspacemacs-helm-no-header nil
   ;; define the position to display `helm', options are `bottom', `top',
   ;; `left', or `right'. (default 'bottom)
   dotspacemacs-helm-position 'bottom
   ;; If non nil the paste micro-state is enabled. When enabled pressing `p`
   ;; several times cycle between the kill ring content. (default nil)
   dotspacemacs-enable-paste-micro-state nil
   ;; Which-key delay in seconds. The which-key buffer is the popup listing
   ;; the commands bound to the current keystroke sequence. (default 0.4)
   dotspacemacs-which-key-delay 0.4
   ;; Which-key frame position. Possible values are `right', `bottom' and
   ;; `right-then-bottom'. right-then-bottom tries to display the frame to the
   ;; right; if there is insufficient space it displays it at the bottom.
   ;; (default 'bottom)
   dotspacemacs-which-key-position 'bottom
   ;; If non nil a progress bar is displayed when spacemacs is loading. This
   ;; may increase the boot time on some systems and emacs builds, set it to
   ;; nil to boost the loading time. (default t)
   dotspacemacs-loading-progress-bar t
   ;; If non nil the frame is fullscreen when Emacs starts up. (default nil)
   ;; (Emacs 24.4+ only)
   dotspacemacs-fullscreen-at-startup nil
   ;; If non nil `spacemacs/toggle-fullscreen' will not use native fullscreen.
   ;; Use to disable fullscreen animations in OSX. (default nil)
   dotspacemacs-fullscreen-use-non-native nil
   ;; If non nil the frame is maximized when Emacs starts up.
   ;; Takes effect only if `dotspacemacs-fullscreen-at-startup' is nil.
   ;; (default nil) (Emacs 24.4+ only)
   dotspacemacs-maximized-at-startup nil
   ;; A value from the range (0..100), in increasing opacity, which describes
   ;; the transparency level of a frame when it's active or selected.
   ;; Transparency can be toggled through `toggle-transparency'. (default 90)
   dotspacemacs-active-transparency 90
   ;; A value from the range (0..100), in increasing opacity, which describes
   ;; the transparency level of a frame when it's inactive or deselected.
   ;; Transparency can be toggled through `toggle-transparency'. (default 90)
   dotspacemacs-inactive-transparency 90
   ;; If non nil unicode symbols are displayed in the mode line. (default t)
   dotspacemacs-mode-line-unicode-symbols t
   ;; If non nil smooth scrolling (native-scrolling) is enabled. Smooth
   ;; scrolling overrides the default behavior of Emacs which recenters the
   ;; point when it reaches the top or bottom of the screen. (default t)
   dotspacemacs-smooth-scrolling t
   ;; If non nil line numbers are turned on in all `prog-mode' and `text-mode'
   ;; derivatives. If set to `relative', also turns on relative line numbers.
   ;; (default nil)
   dotspacemacs-line-numbers nil
   ;; If non-nil smartparens-strict-mode will be enabled in programming modes.
   ;; (default nil)
   dotspacemacs-smartparens-strict-mode nil
   ;; Select a scope to highlight delimiters. Possible values are `any',
   ;; `current', `all' or `nil'. Default is `all' (highlight any scope and
   ;; emphasis the current one). (default 'all)
   dotspacemacs-highlight-delimiters 'all
   ;; If non nil advises quit functions to keep server open when quitting.
   ;; (default nil)
   dotspacemacs-persistent-server nil
   ;; List of search tool executable names. Spacemacs uses the first installed
   ;; tool of the list. Supported tools are `ag', `pt', `ack' and `grep'.
   ;; (default '("ag" "pt" "ack" "grep"))
   dotspacemacs-search-tools '("ag" "pt" "ack" "grep")
   ;; The default package repository used if no explicit repository has been
   ;; specified with an installed package.
   ;; Not used for now. (default nil)
   dotspacemacs-default-package-repository nil
   ;; Delete whitespace while saving buffer. Possible values are `all'
   ;; to aggressively delete empty line and long sequences of whitespace,
   ;; `trailing' to delete only the whitespace at end of lines, `changed'to
   ;; delete only whitespace for changed lines or `nil' to disable cleanup.
   ;; (default nil)
   dotspacemacs-whitespace-cleanup nil
   ))

(defun dotspacemacs/user-init ()
  "Initialization function for user code.
It is called immediately after `dotspacemacs/init', before layer configuration
executes.
 This function is mostly useful for variables that need to be set
before packages are loaded. If you are unsure, you should try in setting them in
`dotspacemacs/user-config' first."
  (setq configuration-layer--elpa-archives
        '(("melpa-cn" . "http://elpa.zilongshanren.com/melpa/")
          ("org-cn"   . "http://elpa.zilongshanren.com/org/")
          ("gnu-cn"   . "http://elpa.zilongshanren.com/gnu/")))
  (setq tramp-ssh-controlmaster-options
        "-o ControlMaster=auto -o ControlPath='tramp.%%C' -o ControlPersist=no")
  )

(defun dotspacemacs/user-config ()
  "Configuration function for user code.
This function is called at the very end of Spacemacs initialization after
layers configuration.
This is the place where most of your configurations should be done. Unless it is
explicitly specified that a variable should be set before a package is loaded,
you should place your code here."
  ;; MY CONFIG
  )

;; Do not write anything past this comment. This is where Emacs will
;; auto-generate custom variable definitions.


;; MY CONFIG
;; -----------------------------

;; load theme
;; (load-theme 'solarized t) --> An error occurred while loading
;; (dotspacemacs-additional-packages '(color-theme sanityinc-colarized-dark))
;; (dotspacemacs-additional-packages '(color-theme sanityinc-colarized-light))


;; kbd
(global-set-key (kbd "<f5>") 'pyvenv-activate)
(global-set-key (kbd "<f6>") 'pyvenv-deactivate)
(global-set-key (kbd "<f7>") 'linum-mode)
(global-set-key (kbd "<f8>") 'linum-relative-mode)
(global-set-key (kbd "<f9>") 'list-bookmarks)
(global-set-key (kbd "C-'") 'anaconda-mode-show-doc)
(global-set-key (kbd "C-c C-'") 'youdao-dictionary-search)
;; mouse
(global-set-key (kbd "<C-mouse-4>") 'text-scale-increase)
(global-set-key (kbd "<C-mouse-5>") 'text-scale-decrease)


;; Org-Mode blod have color "#ef0064"
(defface hi-red-b '((t (:foreground "#e50064"))) t)
;; Org-Mode blod have hightlight
(defun org-bold-highlight ()
  (interactive)
  (hi-lock-mode)
  (highlight-regexp "[ \\t]\\(\\*\\(\\S-[^*]+\\S-\\|[^*]\\{1,2\\}\\)\\*\\)[ \\t\\n]*" 'hi-red-b))
(add-hook 'org-mode-hook 'org-bold-highlight)



;; tags
;; etags -R * => create TAGS
;; etags -a * => append TAGS
(defun etags-select-get-tag-files ()
  "Get tag files."
  (if etags-select-use-xemacs-etags-p
      (buffer-tag-table-list)
    (mapcar 'tags-expand-table-name tags-table-list)
    (tags-table-check-computed-list)
    tags-table-computed-list))


;; M-x package-install etags-select
;; tools => GNU-Serv
;; (gnuserv-start)



;; sb-speedbar
;; M-x package-install sr-speedbar
(setq speedbar-initial-expansion-list-name "sb-imenu")

;; company-quickhelp
;; add (company-quickhelp-mode 1) to the init.el

;; start fullscreen
(defun toggle-fullscreen ()
  (interactive)
  (x-send-client-message nil 0 nil "_NET_WM_STATE" 32
                         '(2 "_NET_WM_STATE_MAXIMIZED_VERT" 0))
  (x-send-client-message nil 0 nil "_NET_WM_STATE" 32
                         '(2 "_NET_WM_STATE_MAXIMIZED_HORZ" 0))
  )
(toggle-fullscreen)
(custom-set-variables
 ;; custom-set-variables was added by Custom.
 ;; If you edit it by hand, you could mess it up, so be careful.
 ;; Your init file should contain only one such instance.
 ;; If there is more than one, they won't work right.
 '(ansi-color-names-vector
   ["#2e3436" "#a40000" "#4e9a06" "#c4a000" "#204a87" "#5c3566" "#729fcf" "#eeeeec"])
 '(custom-enabled-themes (quote (solarized)))
 '(custom-safe-themes
   (quote
    ("8db4b03b9ae654d4a57804286eb3e332725c84d7cdab38463cb6b97d5762ad26" default))))
(custom-set-faces
 ;; custom-set-faces was added by Custom.
 ;; If you edit it by hand, you could mess it up, so be careful.
 ;; Your init file should contain only one such instance.
 ;; If there is more than one, they won't work right.
 '(company-tooltip-common ((t (:inherit company-tooltip :weight bold :underline nil))))
 '(company-tooltip-common-selection ((t (:inherit company-tooltip-selection :weight bold :underline nil)))))


;; INSTALL PACKAGES
;; (require 'package)

;; (add-to-list 'package-archives
;;              '("melpa" . "http://melpa.org/packages/") t)

;; (package-initialize)
;;  (when (not package-archive-contents)
;;    (package-refresh-contents))

;; (defvar mypackages
;;   '(elpy))

;; (mapc #'(lambda (package)
;;           (unless (package-installed-p package)
;;             (package-install package)))
;;           mypackages)

;; (elpy-enable)
;; (elpy-use-ipython)

;; clear repl
(defun clear-repl()
  (interactive)
  (let ((comint-buffer-maximum-size 0))
    (comint-truncate-buffer)))

;; key C-e to line end

.emacs.d/init.el

;;; init.el --- Spacemacs Initialization File
;;
;; Copyright (c) 2012-2016 Sylvain Benner & Contributors
;;
;; Author: Sylvain Benner <[email protected]>
;; URL: https://github.com/syl20bnr/spacemacs
;;
;; This file is not part of GNU Emacs.
;;
;;; License: GPLv3

;; Without this comment emacs25 adds (package-initialize) here
;; (package-initialize)

(setq gc-cons-threshold 100000000)

(defconst spacemacs-version         "0.105.22" "Spacemacs version.")
(defconst spacemacs-emacs-min-version   "24.3" "Minimal version of Emacs.")

(if (not (version<= spacemacs-emacs-min-version emacs-version))
    (message (concat "Your version of Emacs (%s) is too old. "
                     "Spacemacs requires Emacs version %d or above.")
             emacs-version spacemacs-emacs-min-version)
  (load-file (concat user-emacs-directory "core/core-load-paths.el"))
  (require 'core-spacemacs)
  (spacemacs/init)
  (spacemacs/maybe-install-dotfile)
  (configuration-layer/sync)
  (company-quickhelp-mode 1)
  (spacemacs/setup-startup-hook)
  (require 'server)
  (unless (server-running-p) (server-start)))

其他的配置及文件都没做任何修改

在你的配置中, 应该需要这样添加 auto-completion layer 才可以使得 company-quickhelp 生效.

     (auto-completion :variables
                      auto-completion-enable-sort-by-usage t
                      auto-completion-enable-help-tooltip t
                      auto-completion-enable-snippets-in-popup t)

我linux和windows都不需要添加,我也不知道同样的配置,mac就不好用。 我今晚回去试试,这个是放在 dotspacemacs-configuration-layers 下的吧? 求原理,不是说调用不掉用,而是说为什么mac和linux的配置会用不同的方式配置~?

设定 auto-completion-enable-help-tooltipt 之后 spacemacs 就会为你安装 company-quickhelp 的,不需要再在其它地方添加任何设置。

对我而言,没有很大的补全需求,macOS 和 Linux 在 emacs-lisp-mode 都可以用我给出的 auto-completion 的配置给出 tool-tip的。

建议你还是试试 zilongshanren 的配置,他用的是 macOS,而且维护勤快,经验丰富,有问题可以向他提 issue

已经解决了,十分感谢,linux和mac的emacs配置果然不一样,linux只要在layers里解除auto-completion的注释就可以了,而mac必须要用你那个配置才行。

我也不是特别需要auto-completion注释,emacs-lisp给出的传入参数就已经完全够用了,我只是个人配置习惯,我写python习惯性的看__doc__文档,也算一种提高(写文档能力和英文能力),所以平时一直都开启auto-completion帮助。因为auto-completion和flake8有冲突我还专门卸载了flake8。

我clone了山人的配置,有空多看看,了解下mac和linux配置上的差异。

最后再次十分感谢哈 >_<~~~