theme extension added

This commit is contained in:
Sameer Rahmani 2015-07-09 15:35:26 +04:30
parent bc6ab002aa
commit f776a5ccc9
8 changed files with 46 additions and 17 deletions

View File

@ -2,18 +2,19 @@
(toggle-debug-on-error)
(require 'fg42)
;; Load the default theme
(theme themes/color-theme-monokai)
;; Activate these extensions
(activate-extensions 'editor
'development
'web
'editor-theme
'ruby)
;; Disable abilities which we do not want to load
(disable 'rbenv)
;; Load the default theme
(theme themes/color-theme-monokai)
;; Load user config file in ~/.fg42
(load-user-config "~/.fg42")

View File

@ -17,7 +17,7 @@
;; Extension -------------------------------------
(extension development
:version "2.67"
:version "2.31"
:on-initialize extension/development-initialize)
(provide 'extensions/development)

View File

@ -0,0 +1,17 @@
(require 'fpkg)
(require 'fg42/extension)
;; Dependencies ----------------------------------
(depends-on 'color-theme)
(defun extensions/editor-theme-initialize ()
"Initialize 'editor-theme' extension."
(message "Initializing 'editor-theme' extension.")
(load-default-theme))
;; Extension -------------------------------------
(extension editor-theme
:version "2.31"
:on-initialize extensions/editor-theme-initialize)
(provide 'extensions/editor-theme)

View File

@ -3,7 +3,6 @@
(require 'extensions/editor/init)
;; Dependencies ----------------------------------
(depends-on 'color-theme)
(depends-on 'ido)
(depends-on 'ido-vertical-mode)
(depends-on 'multiple-cursors)
@ -13,7 +12,7 @@
;; Extension -------------------------------------
(extension editor
:version "2.67"
:on-initialize extension/editor-initialize)
:version "2.31"
:on-initialize extensions/editor-initialize)
(provide 'extensions/editor)

View File

@ -6,7 +6,7 @@
(load-file (concat (getenv "FG42_HOME") "/fg42-config.el")))
;;;###autoload
(defun extension/editor-initialize ()
(defun extensions/editor-initialize ()
"Base plugin initialization."
(message "Initializing 'editor' extension.")

View File

@ -21,7 +21,7 @@
;; Extension -------------------------------------
(extension ruby
:version "2.67"
:version "2.31"
:on-initialize extensions/ruby-initialize)
(provide 'extensions/ruby)

View File

@ -18,7 +18,7 @@
;; Extension -------------------------------------
(extension web
:version "2.67"
:version "2.31"
:on-initialize extensions/web-initialize)
(provide 'extensions/web)

View File

@ -1,17 +1,29 @@
(require 'cl-lib)
(require 'fg42/extension)
;; Vars -----------------------------------
(defvar default-theme nil "Default FG42 theme.")
;; Macros ---------------------------------
(defmacro theme (name)
"Load the given theme name"
(defmacro theme (name &optional local)
"Mark the given theme name as default them.
local should be 't' if theme is on FG42 it self"
`(progn
(require ',(intern (symbol-name name)))
(eval-after-load "color-theme"
'(progn
(color-theme-initialize)
(,name)))))
(setq default-theme ',(intern (symbol-name name)))
(when (not (null ,local))
(depends-on default-theme))))
;; Functions ------------------------------
(defun load-default-theme ()
"Load the given theme name"
(require default-theme)
(eval-after-load "color-theme"
'(progn
(color-theme-initialize)
(funcall (symbol-function default-theme))))
(require 'color-theme))
(defun load--extension (extension)
"Load a single extension and call its :on-initialize function"
(let ((lib (concat "extensions/" (symbol-name extension))))