summaryrefslogtreecommitdiff
path: root/lisp/general.el
blob: 5e066c4c3883bd2a1b12f136f7052dbedcb9a0bf (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
(defun setup-general()
  ;; menu bars
  (menu-bar-mode -1)
  (toggle-scroll-bar -1)
  (tool-bar-mode -1)
  (setq mac-shift-modifier 'meta)

  ;; Default Values
  ;(setq-default indent-tabs-mode t)  ; use spaces only if nil
  (setq-default tab-width 4) ; Assuming you want your tabs to be four spaces wide
  (set-face-attribute 'default nil :font "Droid Sans Mono-12")
  (set-fontset-font t nil "Courier New" nil 'append)
  (set-fontset-font t '(?😊 . ?😎) "Segoe UI Emoji")

  ;;(set-face-attribute 'default nil :height 110 :family  "Consolas")
  (set-language-environment "UTF-8")
  (set-default-coding-systems 'utf-8)

  ;; Cursor
  (setq-default cursor-type 'bar)
  (blink-cursor-mode 1)

  ;; Margin
  (global-linum-mode 1)
  ;; (require 'minimap)
  ;; (minimap-mode 1)
  (require 'perfect-margin)
  (perfect-margin-mode 1)

  ;; Highlight line
  (require 'hl-line)
  (global-hl-line-mode 1)
  (set-face-background hl-line-face "#EFEFEF")

  ;; Initialization screen
  (setq inhibit-splash-screen t)
  (setq initial-scratch-message "")
  (setq initial-major-mode 'text-mode)
  (desktop-save-mode 1)

  ;; Projectile for projects
  (require 'projectile)
  (projectile-mode +1)
  (define-key projectile-mode-map (kbd "C-c p") 'projectile-command-map)

  ;; Tree
  (require 'neotree)
  (global-set-key [f8] 'neotree-toggle)
  (setq neo-smart-open t)
  (setq projectile-switch-project-action 'neotree-projectile-action)
  (setq neo-theme (if (display-graphic-p) 'icons 'arrow))

  ;; Smooth scroll
  (require 'smooth-scrolling)
  (smooth-scrolling-mode 1)

  ;; Show flycheck always and after save
  (use-package flycheck :ensure t)
  (global-flycheck-mode)
  (add-hook 'after-init-hook #'global-flycheck-mode)
)

(provide 'general)