<commit_before>;; Ensure that package use-package is initialized
(unless (package-installed-p 'use-package)
  (package-refresh-contents)
  (package-install 'use-package))

(require 'use-package)

(use-package exec-path-from-shell
  ;; Used to get environment variables for mac
  :ensure t
  :if (memq window-system '(mac ns))
  :init (progn
          (setq-default default-directory "/Users/warren")
          (exec-path-from-shell-initialize)
          (exec-path-from-shell-copy-env "GOPATH")
          (exec-path-from-shell-copy-env "PATH")))


(use-package diminish
  :ensure t
  )
          

(use-package monokai-theme
  ;; Dark theme
  :ensure t
  :config (load-theme 'monokai t))

(use-package ido
  ;; Nice mini-buffer
  :ensure t
  :init (progn
          (require 'ido)
          (ido-mode t)))

(use-package ido-ubiquitous
  ;; ido ubiquitously
  :ensure t
  :config (ido-ubiquitous-mode 1))

(use-package ido-vertical-mode
  ;; Vertical
  :ensure
  :config (ido-vertical-mode 1))

(use-package smex
  ;; M-x with ido-style
  :ensure t
  :config (smex-initialize)
  :bind (("M-x" . smex)))

(use-package multiple-cursors
  ;; Multiple Cursors for Emacs.
  :ensure t
  :bind (("C-<" . mc/mark-previous-like-this)
         ("C-c <" . mc/skip-to-previous-like-this)
         ("C->" . mc/mark-next-like-this)
         ("C-c >" . mc/skip-to-next-like-this)
         ("C-c C-a" . mc/mark-all-like-this)))

(use-package ace-jump-mode
  :ensure t
  :bind (("C-c SPC" . ace-jump-char-mode)))



(use-package term
	     ;; Terminal
	     :init (add-hook 'term-mode-hook (lambda ()
					       "Remove global-linum-mode to stop flashing and line-spacing to fix less"
					       (linum-mode -1)
					       (set (make-local-variable 'line-spacing) nil)))
  :config (progn
            ;; Open terminal only if one doesn't exist
            (defun wh-ansi-term ()
              (interactive)
              (let ((buffer (get-buffer "*ansi-term*")))
                (if buffer
                    (switch-to-buffer buffer)
                  (ansi-term (getenv "SHELL")))))
            (define-key global-map (kbd "C-x t") 'wh-ansi-term)
            ;; Kill terminal buffer on terminal exit
            (defadvice term-sentinel (around my-advice-term-sentinel (proc msg))
              (if (memq (process-status proc) '(signal exit))
                  (let ((buffer (process-buffer proc)))
                    ad-do-it
                    (kill-buffer buffer))
                ad-do-it))
            (ad-activate 'term-sentinel)))

(use-package tramp-term
  ;; Tramp Terminal
  :init (progn
          (setq auto-revert-remote-files t)
          (require 'tramp-term))
  :config (defalias 'ssh 'tramp-term))




(use-package magit
  :ensure t
  :diminish magit-auto-revert-mode
  :init (setq magit-last-seen-setup-instructions "1.4.0"))

(use-package powerline
  :ensure t
  :init (progn

          (require 'powerline)
          (setq powerline-default-separator 'utf-8)
          (powerline-default-theme)))




(use-package go-mode
  ;; GO Mode for editing go programs
  :ensure t
  :mode "\\.go\\'"
  :config (let (( gopath (getenv "GOPATH")))
            (require 'go-mode)
            (setq gofmt-command "goimports")
            (add-hook 'before-save-hook 'gofmt-before-save)
            (load-file (concat gopath "/src/golang.org/x/tools/cmd/oracle/oracle.el"))
            (setq go-oracle-command (concat gopath "/bin/oracle"))
            (add-hook 'go-mode-hook (lambda ()<commit_msg>Remove diminish magit-auto-revert<commit_after>;; Ensure that package use-package is initialized
(unless (package-installed-p 'use-package)
  (package-refresh-contents)
  (package-install 'use-package))

(require 'use-package)

(use-package exec-path-from-shell
  ;; Used to get environment variables for mac
  :ensure t
  :if (memq window-system '(mac ns))
  :init (progn
          (setq-default default-directory "/Users/warren")
          (exec-path-from-shell-initialize)
          (exec-path-from-shell-copy-env "GOPATH")
          (exec-path-from-shell-copy-env "PATH")))


(use-package diminish
  :ensure t
  )
          

(use-package monokai-theme
  ;; Dark theme
  :ensure t
  :config (load-theme 'monokai t))

(use-package ido
  ;; Nice mini-buffer
  :ensure t
  :init (progn
          (require 'ido)
          (ido-mode t)))

(use-package ido-ubiquitous
  ;; ido ubiquitously
  :ensure t
  :config (ido-ubiquitous-mode 1))

(use-package ido-vertical-mode
  ;; Vertical
  :ensure
  :config (ido-vertical-mode 1))

(use-package smex
  ;; M-x with ido-style
  :ensure t
  :config (smex-initialize)
  :bind (("M-x" . smex)))

(use-package multiple-cursors
  ;; Multiple Cursors for Emacs.
  :ensure t
  :bind (("C-<" . mc/mark-previous-like-this)
         ("C-c <" . mc/skip-to-previous-like-this)
         ("C->" . mc/mark-next-like-this)
         ("C-c >" . mc/skip-to-next-like-this)
         ("C-c C-a" . mc/mark-all-like-this)))

(use-package ace-jump-mode
  :ensure t
  :bind (("C-c SPC" . ace-jump-char-mode)))



(use-package term
	     ;; Terminal
	     :init (add-hook 'term-mode-hook (lambda ()
					       "Remove global-linum-mode to stop flashing and line-spacing to fix less"
					       (linum-mode -1)
					       (set (make-local-variable 'line-spacing) nil)))
  :config (progn
            ;; Open terminal only if one doesn't exist
            (defun wh-ansi-term ()
              (interactive)
              (let ((buffer (get-buffer "*ansi-term*")))
                (if buffer
                    (switch-to-buffer buffer)
                  (ansi-term (getenv "SHELL")))))
            (define-key global-map (kbd "C-x t") 'wh-ansi-term)
            ;; Kill terminal buffer on terminal exit
            (defadvice term-sentinel (around my-advice-term-sentinel (proc msg))
              (if (memq (process-status proc) '(signal exit))
                  (let ((buffer (process-buffer proc)))
                    ad-do-it
                    (kill-buffer buffer))
                ad-do-it))
            (ad-activate 'term-sentinel)))

(use-package tramp-term
  ;; Tramp Terminal
  :init (progn
          (setq auto-revert-remote-files t)
          (require 'tramp-term))
  :config (defalias 'ssh 'tramp-term))




(use-package magit
  :ensure t
  :init (setq magit-last-seen-setup-instructions "1.4.0"))

(use-package powerline
  :ensure t
  :init (progn

          (require 'powerline)
          (setq powerline-default-separator 'utf-8)
          (powerline-default-theme)))




(use-package go-mode
  ;; GO Mode for editing go programs
  :ensure t
  :mode "\\.go\\'"
  :config (let (( gopath (getenv "GOPATH")))
            (require 'go-mode)
            (setq gofmt-command "goimports")
            (add-hook 'before-save-hook 'gofmt-before-save)
            (load-file (concat gopath "/src/golang.org/x/tools/cmd/oracle/oracle.el"))
            (setq go-oracle-command (concat gopath "/bin/oracle"))
            (add-hook 'go-mode-hook (lambda ()
{'fraction_non_alphanumeric': 0.14640447825462896, 'fraction_numerical': 0.0020094732309458877, 'mean_word_length': 2.116279069767442, 'pattern_counts': {'":': 0, '<': 7, '<?xml version=': 0, '>': 7, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '6797225', 'n_tokens_mistral': 2489, 'n_tokens_neox': 2331, 'n_words': 554}