diff --git a/init.el b/init.el
index 8c4770b..7712eb3 100644
--- a/init.el
+++ b/init.el
@@ -244,7 +244,8 @@ init file, which initializes the package manager during compile time."
   "Open the scratch buffer, (re)creating it if not present."
   (interactive)
   (pop-to-buffer (get-buffer-create "*scratch*") '((display-buffer-reuse-window display-buffer-same-window)))
-  (lisp-interaction-mode))
+  (unless (derived-mode-p initial-major-mode)
+    (funcall initial-major-mode)))
 
 (defun user/scan-directory-for-projects ()
   "Prompt for a directory and then scan for any project roots within.