blob: 871b4110dc260e8d15cb937d9d6f7ecb51bcc918 (
plain) (
blame)
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
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
|
(require 'fcuny-vars)
(use-package ace-window
:ensure t
:pretty-hydra
((:title "Window Management"
:foreign-keys warn :quit-key "q")
("Actions"
(("TAB" other-window "switch")
("x" ace-delete-window "delete" :exit t)
("m" ace-delete-other-windows "maximize" :exit t)
("s" ace-swap-window "swap" :exit t)
("a" ace-select-window "select" :exit t)
("f" toggle-frame-fullscreen "fullscreen" :exit t))
"Resize"
(("h" shrink-window-horizontally "←")
("j" enlarge-window "↓")
("k" shrink-window "↑")
("l" enlarge-window-horizontally "→")
("n" balance-windows "balance"))
"Split"
(("b" split-window-right "horizontally")
("v" split-window-below "vertically"))
"Zoom"
(("+" text-scale-increase "in")
("-" text-scale-decrease "out")
("0" (text-scale-increase 0) "reset"))))
:bind (([remap other-window] . ace-window)
("C-c w" . ace-window-hydra/body))
:custom-face
(aw-leading-char-face ((t (:inherit font-lock-keyword-face :bold t :height 3.0))))
(aw-mode-line-face ((t (:inherit mode-line-emphasis :bold t))))
:hook (emacs-startup . ace-window-display-mode)
:config
;; Bind hydra to dispatch list
(add-to-list 'aw-dispatch-alist '(?w ace-window-hydra/body) t))
(use-package bookmark
:custom
(bookmark-default-file (expand-file-name "bookmarks" fcuny/path-emacs-var))
(bookmark-save-flag 1))
(use-package ls-lisp
:ensure nil
:custom
(ls-lisp-use-insert-directory-program nil)
(ls-lisp-dirs-first t))
(use-package dired
:defer t
:bind (("C-x C-d" . dired)
("C-x C-j" . dired-jump))
:init
(setq-default dired-dwim-target t)
(setq-default dired-listing-switches "-alh")
(setq dired-recursive-deletes 'always)
(setq dired-recursive-copies 'always))
(use-package dired-git-info
:ensure t
:bind (:map dired-mode-map
(")" . dired-git-info-mode)))
(use-package dired-x
:ensure nil
:config
(progn
(setq dired-omit-verbose nil)
;; hide backup, autosave, *.*~ files
;; omit mode can be toggled using `C-x M-o' in dired buffer.
(add-hook 'dired-mode-hook #'dired-omit-mode)
(setq dired-omit-files
(concat dired-omit-files "\\|^.DS_Store$\\|^.localized$\\|^.projectile$\\|^.git$"))))
(use-package ibuffer
:bind ("C-x C-b" . ibuffer)
:custom
(ibuffer-saved-filter-groups
(quote (("default"
("org" (mode . org-mode))
("go" (mode . go-mode))
("python" (mode . python-mode))
("config" (or
(name . "\\.conf$")
(name . "\\.json$")
(mode . yaml-mode)))
("puppet" (or
(mode . "\\.erb$")
(mode . puppet-mode)))
("scripts" (mode . sh-mode))
("documentation" (or
(mode . markdown-mode)
(mode . rst-mode)))
("dired" (mode . dired-mode))
("Emacs" (or
(mode . emacs-lisp-mode)
(name . "^\\*scratch\\*$")
(name . "^\\.emacs")
(name . "^\\*Messages\\*$")))))))
:init
(add-hook 'ibuffer-mode-hook (lambda () (ibuffer-switch-to-saved-filter-groups "default"))))
(use-package recentf
:init (recentf-mode 1)
:config
(add-to-list 'recentf-exclude "\\.emacs.d")
(add-to-list 'recentf-exclude ".+tmp......\\.org")
(setq recentf-max-saved-items 500
recentf-save-file (expand-file-name "var/recentf" user-emacs-directory)))
(use-package rg
:ensure t
:custom
(rg-group-result t)
(rg-show-columns t)
(rg-align-position-numbers t)
(rg-align-line-number-field-length 3)
(rg-align-column-number-field-length 3)
(rg-align-line-column-separator "#")
(rg-align-position-content-separator "|"))
(provide 'fcuny-navigation)
|