Cyberpunk color theme for the emacs 24+ built-in color theme support known loosely as
deftheme. The theme is mostly a direct port of the overtone/emacs-live theme of the same name (designed originally for the
color-theme package). Many mode-specific customizations, listed below, have also been added.
Ensure that cyberpunk-theme.el is on the custom-theme-load-path like this:
(add-to-list 'custom-theme-load-path "~/path/to/cyberpunk-theme.el")
You can then load the theme at any time by running the command
M-x load-theme RET cyberpunk.
Cyberpunk is available in MELPA. This installation method assumes that you have added MELPA to your package archive list. This can be accomplished in your init file with the following command:
(add-to-list 'package-archives '("melpa" . "https://melpa.org/packages/") t)
Alternatively, if you prefer stability you can install from the MELPA-stable repository by instead adding the following to your init file:
(add-to-list 'package-archives '("melpa-stable" . "https://stable.melpa.org/packages/") t)
Once set up, you can install
cyberpunk using the following command:
M-x package-install cyberpunk-theme
or, by alternatively running the command
list-packages, marking the cyberpunk-theme package with the command "i" and running the execute command "x".
If you want cyberpunk-theme to be set at startup, add the following line to your .emacs init file:
(load-theme 'cyberpunk t)
If you've installed cyberpunk using package-install, you may need to wait to load the cyberpunk theme until startup initialization is complete. In this case, instead of
(load-theme 'cyberpunk t), you may need something like:
(add-hook 'after-init-hook (lambda () (load-theme 'cyberpunk t)))
In addition to basic face settings, cyberpunk-theme has specially-tailored support for the following modes. Please share any suggestions for additional modes. Modes marked with * are currently defined, but may benefit from further adjustments to blend more seamlessly with the cyberpunk experience. If you use one of these modes and have customization suggestions I would greatly appreciate any feedback on how to make a more seamless experience.
- enhanced ruby mode
- multiple cursors
Like the theme but wish a few details could be adjusted to your own individual needs? No problem--you can adjust individual theme face attributes anywhere in your ~/.emacs.d configurations files. One way to accomplish this would be to create a hook that runs after load-theme is ran. Then, you can add hooks to change individual faces in the theme. For example, if rather than the default you wanted isearch matches to be underlined in yellow, you could place the following anywhere in your emacs configuration:
(defvar after-load-theme-hook nil "Hook run after a color theme is loaded using `load-theme'.") (defadvice load-theme (after run-after-load-theme-hook activate) "Run `after-load-theme-hook'." (run-hooks 'after-load-theme-hook)) (add-hook 'after-load-theme-hook (lambda () (set-face-attribute 'lazy-highlight nil :underline '(:color "yellow") :foreground 'unspecified :background 'unspecified)))
This theme began as a port of the overtone/emacs-live theme of the same name and evolved from there. The original theme was designed for use with the color-theme package.
Bugs & Improvements
Please report any problems that you find, along with any suggestions or contributions to the theme.
You can support this project, or my other projects via ChangeTip
Copyright (C) 2012-2020 Nicholas M. Van Horn
Author: Nicholas M. Van Horn firstname.lastname@example.org Keywords: color theme, cyberpunk, emacs
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/.