 (use-package org
   :ensure t
   :config
-    (setq org-agenda-files '("~/Documents/personal/org-mode/"))
-    
-    ;; https://orgmode.org/worg/org-tutorials/orgtutorial_dto.html
-    (define-key global-map "\C-cl" 'org-store-link)
-    (define-key global-map "\C-ca" 'org-agenda)
-    (setq org-log-done t)
-
-    ;; Tell the latex export to use the minted package for source
-    ;; code coloration.
-    (setq org-latex-listings 'minted)
-    ;; Let the exporter use the -shell-escape option to let latex
-    ;; execute external programs.
-    ;; This obviously and can be dangerous to activate!
-    (setq org-latex-pdf-process
-'("xelatex -shell-escape -interaction nonstopmode -output-directory %o %f")))
-
-    ;; make org mode allow eval of some langs
-    (org-babel-do-load-languages
-    'org-babel-load-languages
-    '((emacs-lisp . t)
-    (C . t)
-    (haskell . t)
-    (js . t)
-    (python . t)
-    (scheme . t)
-    (shell . t)
-    (sql . t)
-    (ruby . t)))
-
-    (setq org-confirm-babel-evaluate nil)
-    (setq org-src-fontify-natively t)
-
-    (setq htmlize-output-type 'css)
-    (setq org-html-htmlize-output-type 'css)
-    (setq org-html-validation-link 'nil)
-
-    (eval-after-load 'autoinsert
-      '(define-auto-insert
-         '("\.org\'" . "org skeleton")
-         '("#+TITLE:" \n
-            "#+SETUPFILE: ~/main.org" \n\n)))
+  (setq org-agenda-files '("~/Documents/personal/org-mode/"))
+  (add-hook 'org-src-mode-hook 'display-line-numbers-mode)
+  
+  ;; https://orgmode.org/worg/org-tutorials/orgtutorial_dto.html
+  (define-key global-map "\C-cl" 'org-store-link)
+  (define-key global-map "\C-ca" 'org-agenda)
+  (setq org-log-done t)
+
+  ;; Tell the latex export to use the minted package for source
+  ;; code coloration.
+  (setq org-latex-listings 'minted)
+  ;; Let the exporter use the -shell-escape option to let latex
+  ;; execute external programs.
+  ;; This obviously and can be dangerous to activate!
+  (setq org-latex-pdf-process
+        '("xelatex -shell-escape -interaction nonstopmode -output-directory %o %f")))
+
+;; make org mode allow eval of some langs
+(org-babel-do-load-languages
+ 'org-babel-load-languages
+ '((emacs-lisp . t)
+   (C . t)
+   (haskell . t)
+   (js . t)
+   (latex . t)
+   (python . t)
+   (scheme . t)
+   (shell . t)
+   (sql . t)
+   (ruby . t)))
+
+(setq org-confirm-babel-evaluate nil)
+(setq org-export-babel-evaluate t)
+(setq org-src-fontify-natively t)
+
+(setq htmlize-output-type 'css)
+(setq org-html-htmlize-output-type 'css)
+(setq org-html-validation-link 'nil)
+
+(eval-after-load 'autoinsert
+  '(define-auto-insert
+     '("\.org\'" . "org skeleton")
+     '("#+TITLE:" \n
+       "#+SETUPFILE: ~/main.org" \n\n)))
 
 
 
 (setq org-src-preserve-indentation 't)
-    
+
 (setq org-latex-minted-options '(("breaklines" "true")
                                  ("breakanywhere" "true")))
 

(setq org-src-tab-acts-natively t)

;; if indent-tabs-mode is off, untabify before saving
(add-hook 'write-file-hooks 
    (lambda () (if (not indent-tabs-mode)
                    (untabify (point-min) (point-max)))
                nil ))

;; flycheck
(set-face-attribute 'flyspell-incorrect nil :underline '(:color "deep pink" :style line))


;;  https://www.reddit.com/r/emacs/comments/7v6fll/whats_in_your_initialscratchmessage/
(setq initial-scratch-message
      ";; - 'Tis but a scratch!\n;; - A scratch? Your arm's off!\n;; - No, it isn't!\n\n")
(setq inhibit-startup-screen t)
(setq inhibit-splash-screen t)

;; https://stackoverflow.com/questions/10545437/how-to-disable-the-beep-in-emacs-on-windows
(setq visible-bell 1)
(setq visual-linum-mode t)
(setq global-visual-line-mode t)
(setq global-linum-mode t)
(setq linum-mode t)

;; https://www.emacswiki.org/emacs/ToolBar
;; https://www.emacswiki.org/emacs/MenuBar#toc7
