 (use-package jedi
   :ensure t
   :hook   (python-mode . 'jedi:setup)
-  :config (setq jedi:complete-on-dot t))
+  :custom (jedi:complete-on-dot t))
 
 (use-package linum
   :config (global-linum-mode t)
-          (setq linum-format "%3d| "))
+  :custom (linum-format "%3d| "))
 
 (use-package rainbow-delimiters
   :ensure t
   :hook   (prog-mode . rainbow-delimiters-mode))
 
 (use-package undo-tree
-  :ensure t
+  :ensure   t
   :diminish undo-tree-mode
-  :config (global-undo-tree-mode))
+  :config   (global-undo-tree-mode))
 
 (use-package whitespace
   :diminish global-whitespace-mode
-  :hook     ((c-mode .       (lambda () (setq whitespace-line-column 80)))
+  :config   (global-whitespace-mode)
+  :custom   (whitespace-style '(face lines-tail))
+  :hook     ((prog-mode .    (lambda () (setq show-trailing-whitespace 1)))
+              (c-mode .      (lambda () (setq whitespace-line-column 80)))
               (c++-mode .    (lambda () (setq whitespace-line-column 80)))
               (elixir-mode . (lambda () (setq whitespace-line-column 80)))
               (java-mode .   (lambda () (setq whitespace-line-column 100)))
               (python-mode . (lambda () (setq whitespace-line-column 79)))
               (rust-mode .   (lambda () (setq whitespace-line-column 99)))))
+
+(use-package windmove
+  :config (windmove-default-keybindings)
+  :custom (shift-select-mode nil))
 
 ;; language support
 (use-package cython-mode     :ensure t)

(global-set-key (kbd "<f5>") 'compile-go)
(global-set-key (kbd "C-t") 'ansi-term)
(global-set-key [mouse-8] 'previous-buffer)
  (global-set-key [mouse-9] 'next-buffer)
(setq shift-select-mode nil)
(windmove-default-keybindings)
(setq whitespace-style '(face lines-tail))
(global-whitespace-mode)
(delete-selection-mode)
(global-undo-tree-mode)
(add-hook 'prog-mode-hook (lambda () (setq show-trailing-whitespace 1)))

;; c/++ stuff
(add-to-list 'auto-mode-alist '("\\.h\\'" . c++-mode))

(use-package rust-mode       :ensure t)
(use-package yaml-mode       :ensure t)

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; low tech manual configuration

;;; ui stuff ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; theme
(load-theme 'indoors t)
;; don't show startup screen in gui mode
(setq inhibit-startup-screen t)
;; show only column numbers along the bottom
