(defvar current-theme
  nil
  "The currently enabled theme.")

(defun switch-to-theme (theme)
  "Enable the theme THEME. Disable the current theme."
  (if current-theme (disable-theme current-theme))
  (if (member theme custom-known-themes)
      (enable-theme theme)
    (load-theme theme 'no-confirm))
  (setf current-theme theme))

(switch-to-theme 'solarized-dark)

(provide 'theme)

(defvar current-theme
  nil
  "The currently enabled theme.")

(defun switch-to-theme (theme)
  "Enable the theme THEME. Disable the current theme."
  (if current-theme (disable-theme current-theme))
  (if (member theme custom-known-themes)
      (enable-theme theme)
    (load-theme theme 'no-confirm))
  (setf current-theme theme)
  (cond ((or (string= current-theme 'solarized-dark)
	     (string= current-theme 'solarized-light))
	 (progn
	   (setf x-underline-at-descent-line t)))
	(t nil)))

(switch-to-theme 'solarized-dark)

(provide 'theme)

Make x-underline at descender line, not base line
Make x-underline at descender line, not base line

kotct/dot,kotct/dot