 
 ;; scheme-complete package
 (autoload 'scheme-smart-complete "scheme-complete" nil t)
-(eval-after-load 'scheme
-  '(define-key scheme-mode-map "\t" 'scheme-complete-or-indent))
+
+;; Special keys in scheme mode. Use <tab> to indent scheme code to the
+;; proper level.
+(eval-after-load
+ 'scheme
+ '(define-key scheme-mode-map "\t" 'scheme-complete-or-indent))
+
+(eval-after-load
+ 'cmuscheme
+ '(define-key inferior-scheme-mode-map "\t" 'scheme-complete-or-indent))
+
+(eval-after-load
+ 'xscheme
+ '(define-key scheme-interaction-mode-map "\t" 'scheme-complete-or-indent))
+
 ; scheme docs
 (autoload 'scheme-get-current-symbol-info "scheme-complete" nil t)
 (add-hook 'scheme-mode-hook

 ;; Your init file should contain only one such instance.
 ;; If there is more than one, they won't work right.
 )

(require 'package)
(add-to-list 'package-archives '("melpa" . "https://melpa.org/packages/") t)
(package-initialize)

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;         MIT-scheme config                        ;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

;; This is the place where you have installed scheme. Be sure to set
;; this to an appropriate value!!!
; (setq scheme-root "/usr")
;; Linux
;; (setq scheme-program-name
;;       (concat
;;        scheme-root "/bin/mit-scheme "
;;        "--library " scheme-root "/lib/x86_64-linux-gnu/mit-scheme "
;;        "--band " scheme-root "/lib/x86_64-linux-gnu/mit-scheme/all.com "
;;        "-heap 10000"))

;; macOS
(setq scheme-root "/usr/local/Cellar/mit-scheme/10.1.11")

(setq scheme-program-name
      (concat
        scheme-root "/bin/mit-scheme "
        "--library " scheme-root " "
        "--band " scheme-root "/lib/mit-scheme-x86-64/all.com "
        "-heap 10000"))

;; Use the Edwin-like MIT/Scheme interpreter:
(load "xscheme")

;; enable mouse
(xterm-mouse-mode 1)

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;         General Emacs Apperance                  ;;;;;
