syl20bnr / spacemacs

A community-driven Emacs distribution - The best editor is neither Emacs nor Vim, it's Emacs *and* Vim!
http://spacemacs.org
GNU General Public License v3.0
23.7k stars 4.9k forks source link

Theme selection broken on latest release #8704

Closed stormpat closed 7 years ago

stormpat commented 7 years ago

Description :octocat:

After the latest version, themes seems to be broken. SPC T s and choose from the list will change only font colors, and some themes look really broken.

I was using emacs --HEAD previously, and now "downgraded" to 25.1 (using the emacs-plus homebrew version) I also nuked my emacs folder, and cloned spacemacs again, but the issue still exists.

Reproduction guide :beetle:

Observed behaviour: :eyes: :broken_heart: The chosen theme is totally broken. Only some text colors change.

Expected behaviour: :heart: :smile: Theme should change as previously happened.

System Info :computer:

.spacemacs :paw_prints:

;; -*- 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
   dotspacemacs-distribution 'spacemacs
   dotspacemacs-enable-lazy-installation 'unused
   dotspacemacs-ask-for-lazy-falseinstallation t
   dotspacemacs-configuration-layer-path '()
   dotspacemacs-configuration-layers
   '(
     nginx
     markdown
     yaml
     docker
     sql
     helm
     better-defaults
     emacs-lisp
     javascript
     php
     github
     html
     react
     evil-snipe
     vim-empty-lines
     evil-commentary
     syntax-checking
     version-control
     git
     org
     deft
     (osx
      :variables
      osx-use-option-as-meta nil)
     (auto-completion
      :variables
      auto-completion-enable-snippets-in-popup t
      auto-completion-enable-help-tooltip t
      auto-completion-enable-sort-by-usage t)
     (gtags
      :variables
      gtags-enable-by-default t)
     (elixir
      :variables
      elixir-enable-compilation-checking t))
   dotspacemacs-additional-packages
   '(
     wolfram
     zenburn-theme
     nodejs-repl
     (php-cs-fixer
      :location (recipe
                 :fetcher github
                 :repo "OVYA/php-cs-fixer")))
   dotspacemacs-frozen-packages '()
   dotspacemacs-excluded-packages
   '(
     spaceline
     )
   dotspacemacs-install-packages 'used-only))

(defun dotspacemacs/init ()
  (setq-default
   dotspacemacs-elpa-https t
   dotspacemacs-elpa-timeout 5
   dotspacemacs-check-for-update nil
   dotspacemacs-elpa-subdirectory nil
   dotspacemacs-editing-style 'vim
   dotspacemacs-verbose-loading nil
   dotspacemacs-startup-banner nil
   dotspacemacs-startup-lists '((recents . 5) (projects . 7))
   dotspacemacs-startup-buffer-responsive t
   dotspacemacs-scratch-mode 'lisp-interaction-mode
   dotspacemacs-themes '(zenburn)
   dotspacemacs-colorize-cursor-according-to-state t
   dotspacemacs-default-font '("SF Mono"
                               :size 12
                               :weight normal
                               :width normal
                               :powerline-scale 1.1)
   dotspacemacs-leader-key "SPC"
   dotspacemacs-emacs-command-key "SPC"
   dotspacemacs-ex-command-key ":"
   dotspacemacs-emacs-leader-key "M-m"
   dotspacemacs-major-mode-leader-key ","
   dotspacemacs-major-mode-emacs-leader-key "C-M-m"
   dotspacemacs-distinguish-gui-tab nil
   ;; If non nil `Y' is remapped to `y$' in Evil states. (default nil)
   dotspacemacs-remap-Y-to-y$ nil
   dotspacemacs-retain-visual-state-on-shift t
   dotspacemacs-visual-line-move-text t
   ;; If non nil, inverse the meaning of `g' in `:substitute' Evil ex-command.
   ;; (default nil)
   dotspacemacs-ex-substitute-global nil
   ;; Name of the default layout (default "Default")
   dotspacemacs-default-layout-name "Default"
   dotspacemacs-display-default-layout nil
   dotspacemacs-auto-resume-layouts nil
   dotspacemacs-large-file-size 1
   dotspacemacs-auto-save-file-location 'cache
   dotspacemacs-max-rollback-slots 5
   dotspacemacs-helm-resize 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
   dotspacemacs-helm-use-fuzzy 'always
   dotspacemacs-enable-paste-transient-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
   dotspacemacs-fullscreen-use-non-native nil
   dotspacemacs-maximized-at-startup nil
   dotspacemacs-active-transparency 90
   dotspacemacs-inactive-transparency 90
   dotspacemacs-show-transient-state-title t
   dotspacemacs-show-transient-state-color-guide t
   dotspacemacs-mode-line-unicode-symbols nil
   dotspacemacs-smooth-scrolling nil
   dotspacemacs-line-numbers nil
   ;; Code folding method. Possible values are `evil' and `origami'.
   dotspacemacs-folding-method 'evil
   ;; If non-nil smartparens-strict-mode will be enabled in programming modes.
   ;; (default nil)
   dotspacemacs-smartparens-strict-mode nil
   ;; If non-nil pressing the closing parenthesis `)' key in insert mode passes
   ;; over any automatically added closing parenthesis, bracket, quote, etc…
   ;; This can be temporary disabled by pressing `C-q' before `)'. (default nil)
   dotspacemacs-smart-closing-parenthesis 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
   dotspacemacs-persistent-server nil
   dotspacemacs-search-tools '("ag" "pt" "ack" "grep")
   dotspacemacs-default-package-repository nil
   dotspacemacs-whitespace-cleanup 'changed
   ))

(defun stormpat/web-hook ()
  "Custom hooks for web-mode"
  (setq web-mode-markup-indent-offset 2)
  (setq web-mode-css-indent-offset 2)
  (setq css-indent-offset 2)
  (setq web-mode-style-padding 2)
  (setq web-mode-script-padding 2)
  (setq web-mode-code-indent-offset 2)
  (setq-default web-mode-markup-indent-offset 2))

(defun stormpat/javascript-hook ()
  (setq js-indent-level 2)
  (setq js2-mode-show-strict-warnings nil) ;; disable emacs built-in errors.
  (setq flycheck-javascript-standard-executable "semistandard")
  )

(defun stormpat/php-hook ()
  (setq flycheck-phpcs-standard "PSR2")
  (setq php-mode-coding-style (quote PSR-2))
  (setq php-cs-fixer-level-option "psr2"))

;; => USER INIT
(defun dotspacemacs/user-init ()
  (setq-default mac-right-option-modifier nil)
  (add-hook 'web-mode-hook 'stormpat/web-hook))

;; => USER-CONFIG
(defun dotspacemacs/user-config ()
  (setq-default wolfram-alpha-app-id "<****>")
  (setq-default line-spacing 6)
  (setq-default truncate-lines t)
  ;;(setq-default flycheck-highlighting-mode 'lines)

  ;; Org
  (setq org-agenda-files (list "~/org/work.org"))

  ;; Custom bindings
  (spacemacs/set-leader-keys "onr" 'nodejs-repl-send-region)
  (spacemacs/set-leader-keys "onb" 'nodejs-repl-send-buffer)
  (spacemacs/set-leader-keys "ow" 'wolfram-alpha)
  (spacemacs/set-leader-keys "oee" 'eval-expression)
  (spacemacs/set-leader-keys "ogn" 'spacemacs/vcs-next-hunk)
  (spacemacs/set-leader-keys "ogp" 'spacemacs/vcs-previous-hunk)

  ;; PHP
  (stormpat/php-hook)
  (add-hook 'php-mode-hook 'php-enable-psr2-coding-style)

  ;; Javascript
  (stormpat/javascript-hook)
  ;; (require 'flycheck-flow)
  ;; (add-hook 'javascript-mode-hook 'flycheck-mode)
  ;; (flycheck-add-next-checker 'javascript-flow 'javascript-flow-coverage)

  ;; Dart mode
  (setq dart-enable-analysis-server t)
  (add-hook 'dart-mode-hook 'flycheck-mode)

  ;;(global-prettify-symbols-mode +1)
  (show-paren-mode +1)

  ;; Deft setup
  (setq deft-extensions '("org" "md" "txt"))
  (setq deft-directory "~/Dropbox/deftNotes")
  )

;; Do not write anything past this comment. This is where Emacs will
;; auto-generate custom variable definitions.
(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.
 '(package-selected-packages
   (quote
    (flx goto-chg undo-tree diminish bind-map bind-key packed dash pkg-info epl popup nginx-mode mmm-mode markdown-toc markdown-mode gh-md dockerfile-mode docker tablist docker-tramp sql-indent flycheck-flow magit-gh-pulls github-search github-clone github-browse-file gist gh marshal logito pcache ht anaconda-mode winum unfill fuzzy flycheck-credo dart-mode live-py-mode avy hydra tide typescript-mode racket-mode faceup projectile evil async material-theme helm helm-core reveal-in-osx-finder pbcopy osx-trash osx-dictionary launchctl spaceline powerline spinner parent-mode smartparens iedit anzu highlight rainbow-mode rainbow-identifiers color-identifiers-mode request evil-commentary f alert log4e gntp org skewer-mode simple-httpd json-snatcher json-reformat multiple-cursors js2-mode haml-mode gitignore-mode fringe-helper git-gutter+ git-gutter flycheck magit magit-popup git-commit with-editor php-mode web-completion-data s dash-functional tern pos-tip yasnippet company elixir-mode auto-complete wgrep smex ivy-hydra counsel-projectile counsel swiper ivy zenburn-theme yaml-mode ws-butler wolfram window-numbering which-key web-mode web-beautify volatile-highlights vi-tilde-fringe uuidgen use-package toc-org tagedit spacemacs-theme smeargle slim-mode scss-mode sass-mode restart-emacs rainbow-delimiters quelpa pug-mode popwin phpunit phpcbf php-extras php-cs-fixer php-auto-yasnippets persp-mode pcre2el paradox orgit org-projectile org-present org-pomodoro org-plus-contrib org-download org-bullets open-junk-file ob-elixir nodejs-repl neotree mwim move-text magit-gitflow macrostep lorem-ipsum livid-mode linum-relative link-hint less-css-mode json-mode js2-refactor js-doc info+ indent-guide ido-vertical-mode hungry-delete htmlize hl-todo highlight-parentheses highlight-numbers highlight-indentation hide-comnt help-fns+ helm-themes helm-swoop helm-projectile helm-mode-manager helm-make helm-gtags helm-gitignore helm-flx helm-descbinds helm-css-scss helm-company helm-c-yasnippet helm-ag google-translate golden-ratio gnuplot github-theme gitconfig-mode gitattributes-mode git-timemachine git-messenger git-link git-gutter-fringe git-gutter-fringe+ ggtags flycheck-pos-tip flycheck-mix flycheck-elm flx-ido fill-column-indicator fancy-battery eyebrowse expand-region exec-path-from-shell evil-visualstar evil-visual-mark-mode evil-unimpaired evil-tutor evil-surround evil-snipe evil-search-highlight-persist evil-numbers evil-nerd-commenter evil-mc evil-matchit evil-magit evil-lisp-state evil-indent-plus evil-iedit-state evil-exchange evil-escape evil-ediff evil-args evil-anzu eval-sexp-fu emmet-mode elm-mode elisp-slime-nav dumb-jump drupal-mode doom-themes diff-hl deft define-word company-web company-tern company-statistics company-quickhelp column-enforce-mode coffee-mode clean-aindent-mode auto-yasnippet auto-highlight-symbol auto-compile atom-dark-theme alchemist aggressive-indent adaptive-wrap ace-window ace-link ace-jump-helm-line ac-ispell))))
(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.
 '(default ((t (:foreground "#DCDCCC" :background "#3F3F3F")))))
(defun dotspacemacs/emacs-custom-settings ()
  "Emacs custom settings.
This is an auto-generated function, do not modify its content directly, use
Emacs customize menu instead.
This function is called at the very end of Spacemacs initialization."
(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.
 '(package-selected-packages
   (quote
    (packed yapfify pyvenv pytest pyenv-mode py-isort pip-requirements live-py-mode hy-mode helm-pydoc cython-mode company-anaconda anaconda-mode pythonic winum unfill helm-purpose window-purpose imenu-list projectile evil async material-theme helm helm-core reveal-in-osx-finder pbcopy osx-trash osx-dictionary launchctl spaceline powerline spinner parent-mode smartparens iedit anzu highlight rainbow-mode rainbow-identifiers color-identifiers-mode request evil-commentary f alert log4e gntp org skewer-mode simple-httpd json-snatcher json-reformat multiple-cursors js2-mode haml-mode gitignore-mode fringe-helper git-gutter+ git-gutter flycheck magit magit-popup git-commit with-editor php-mode web-completion-data s dash-functional tern pos-tip yasnippet company elixir-mode auto-complete wgrep smex ivy-hydra counsel-projectile counsel swiper ivy zenburn-theme yaml-mode ws-butler wolfram window-numbering which-key web-mode web-beautify volatile-highlights vi-tilde-fringe uuidgen use-package toc-org tagedit spacemacs-theme smeargle slim-mode scss-mode sass-mode restart-emacs rainbow-delimiters quelpa pug-mode popwin phpunit phpcbf php-extras php-cs-fixer php-auto-yasnippets persp-mode pcre2el paradox orgit org-projectile org-present org-pomodoro org-plus-contrib org-download org-bullets open-junk-file ob-elixir nodejs-repl neotree mwim move-text magit-gitflow macrostep lorem-ipsum livid-mode linum-relative link-hint less-css-mode json-mode js2-refactor js-doc info+ indent-guide ido-vertical-mode hungry-delete htmlize hl-todo highlight-parentheses highlight-numbers highlight-indentation hide-comnt help-fns+ helm-themes helm-swoop helm-projectile helm-mode-manager helm-make helm-gtags helm-gitignore helm-flx helm-descbinds helm-css-scss helm-company helm-c-yasnippet helm-ag google-translate golden-ratio gnuplot github-theme gitconfig-mode gitattributes-mode git-timemachine git-messenger git-link git-gutter-fringe git-gutter-fringe+ ggtags flycheck-pos-tip flycheck-mix flycheck-elm flx-ido fill-column-indicator fancy-battery eyebrowse expand-region exec-path-from-shell evil-visualstar evil-visual-mark-mode evil-unimpaired evil-tutor evil-surround evil-snipe evil-search-highlight-persist evil-numbers evil-nerd-commenter evil-mc evil-matchit evil-magit evil-lisp-state evil-indent-plus evil-iedit-state evil-exchange evil-escape evil-ediff evil-args evil-anzu eval-sexp-fu emmet-mode elm-mode elisp-slime-nav dumb-jump drupal-mode doom-themes diff-hl deft define-word company-web company-tern company-statistics company-quickhelp column-enforce-mode coffee-mode clean-aindent-mode auto-yasnippet auto-highlight-symbol auto-compile atom-dark-theme alchemist aggressive-indent adaptive-wrap ace-window ace-link ace-jump-helm-line ac-ispell))))
(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.
 )
)
stormpat commented 7 years ago

Somehow my dotfile was busted. Seems like emacs played a prank and wrote some stuff there...

z3t0 commented 7 years ago

I'm having this exact issue. I'll create a new issue

ghost commented 7 years ago

Ditto... I'm having the same issue.

elatomo commented 7 years ago

Having exacly the same issue.

The problem is related with one autogenerated custom variable that appeared in my dotfiles custom-set-variables:

(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.
 '(default ((((class color) (min-colors 257)) (:foreground "#F8F8F2" :background "#272822")) (((class color) (min-colors 89)) (:foreground "#F5F5F5" :background "#1B1E1C")))))

Commenting or removing the declaration and restarting emacs solves the issue.

peterhadlaw commented 7 years ago

I had a similar issue. Maybe this can be documented somewhere, happy to help with that, but haven't contributed to spacemacs before. Commenting out that last line, did fix the issue.

peterhoeg commented 7 years ago

What is the new issue for this?