   :ensure t
   :commands imenu-list-smart-toggle
   :init (global-set-key (kbd "M--")
-                        (lambda (&optional alternate)
-                          (interactive "P")
-                          (if alternate
-                              (imenu-list-smart-toggle)
-                            (call-interactively 'imenu)))):config
+                        (meain/with-alternate (call-interactively 'imenu)
+                                              (imenu-list-smart-toggle))):config
   (progn
     (setq imenu-list-focus-after-activation t)
     (setq imenu-list-after-jump-hook nil)

  :ensure t
  :diminish t
  :config (progn
            (defun meain/buffer-switcher (&optional alternate)
              "Choose between ivy-switch-buffer or ibuffer-other-window based on ALTERNATE."
              (interactive "P")
              (if alternate
                  (ibuffer-other-window)
                (ivy-switch-buffer)))
            (ivy-mode 1)
            (setq ivy-use-virtual-buffers t) ; extend searching to bookmarks and
            (setq ivy-height 10) ; Set height of the ivy window

  :ensure t
  :commands scratch
  :init (progn
          (evil-leader/set-key "c"
            (meain/with-alternate (switch-to-buffer "*scratch*")
                                  (call-interactively 'scratch)))))

;; Highlight color codes
(use-package rainbow-mode
