summaryrefslogtreecommitdiff
path: root/emacs/inits/70-global-keybinds.el
blob: 6b02fe83f3a4641388943e999096def1801385a1 (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
;; Time-stamp: <2021-08-13 20h11 EDT (academic)>

(setq time-stamp-active t
			time-stamp-line-limit 3
			time-stamp-format "%Y-%02m-%02d %02Hh%02M %Z (%s)")

(add-hook 'before-save-hook #'time-stamp)

(defun insert-timestamp ()
	(interactive)
	(save-excursion
		(goto-char (point-min))
		(unless (search-forward "Time-stamp: "
														(line-beginning-position (1+ time-stamp-line-limit))
														t)
			(goto-char (point-min))
			(newline)
			(beginning-of-line 0)
			(comment-dwim nil)
			(insert (concat "Time-stamp: " "<>"))
			(newline))
		(time-stamp)))
(global-set-key (kbd "C-x t") 'insert-timestamp)

(global-set-key (kbd "C-z") 'nil)

(use-package eterm-256color
	:ensure t
	:config
	(add-hook 'term-mode-hook #'eterm-256color-mode)
	(global-set-key (kbd "C-c c") 'ansi-term))

(global-set-key (kbd "C-x e") 'eval-expression)

(global-set-key (kbd "M-i") 'indent-region)

(global-set-key (kbd "C-v") 'delete-indentation)

;; -----------------------------------------------------------------------------
;; Killing
(global-set-key (kbd "C-c C-k") 'kill-whole-line)
(global-set-key (kbd "M-z") 'zap-up-to-char)

(defun kill-region-or-backward-kill-word (arg)
	(interactive "p")
	(if (region-active-p) (kill-region 0 0 t)
		(backward-kill-word arg)))

(global-set-key (kbd "C-w") 'kill-region-or-backward-kill-word)

(global-set-key (kbd "M-SPC") '(lambda () (interactive) (insert ?\\))) ; Never used just-one-space