(global-set-key (kbd "C-c eo") (lambda () (interactive) (find-file (expand-file-name "org-setup.el" user-emacs-directory))))
(global-set-key (kbd "C-c eh") (lambda () (interactive) (find-file (expand-file-name "hooks-puts.el" user-emacs-directory))))
(global-set-key (kbd "C-c eb") (lambda () (interactive) (find-file (expand-file-name "bindings.el" user-emacs-directory))))
-(global-set-key (kbd "C-c r") 'rotate-windows)
(global-set-key (kbd "C-c s") 'eshell)
-(global-set-key (kbd "C-c t") 'toggle-window-split)
(global-set-key (kbd "<f8>") 'recentf-open-files)
;; OVERRIDES
(global-set-key [remap move-beginning-of-line] 'smart-beginning-of-line)
+(global-set-key (kbd "C-h") 'backward-delete-char-untabify)
(global-set-key (kbd "M-j") 'backward-join-line)
(global-set-key (kbd "C-S-k") 'kill-whole-line)
(global-set-key (kbd "C-o") 'open-line-below)
(global-set-key (kbd "C-x C-b") 'buffer-menu)
(global-set-key (kbd "C-x .") 'next-buffer)
(global-set-key (kbd "C-x ,") 'previous-buffer)
+(global-set-key (kbd "C-x ?") 'describe-key)
+(global-set-key (kbd "C-x /") 'describe-symbol)
(global-set-key (kbd "C-%") 'replace-regexp)
(global-set-key (kbd "M-%") 'slot/replace-string-many)
(global-set-key (kbd "C-M-%") 'slot/query-replace-many)
+(global-set-key (kbd "<home>") 'beginning-of-buffer)
+(global-set-key (kbd "<end>") 'end-of-buffer)
+(global-set-key (kbd "<up>") 'scroll-up-command)
+(global-set-key (kbd "<down>") 'scroll-down-command)
;; MODE-SPECIFIC
(add-hook 'eshell-mode-hook (lambda ()
(define-key eshell-mode-map (kbd ")") 'eshell-send-on-close-paren)))
(interactive)
(join-line 0))
-(defun toggle-window-split ()
- "If two windows are open, toggle their split layout between vert. and horiz.
-Stolen from http://whattheemacsd.com"
- (interactive)
- (when (= (count-windows) 2)
- (let* ((this-win-buffer (window-buffer))
- (next-win-buffer (window-buffer (next-window)))
- (this-win-edges (window-edges (selected-window)))
- (next-win-edges (window-edges (next-window)))
- (this-win-2nd (not (and (<= (car this-win-edges)
- (car next-win-edges))
- (<= (cadr this-win-edges)
- (cadr next-win-edges)))))
- (splitter
- (if (= (car this-win-edges)
- (car (window-edges (next-window))))
- 'split-window-horizontally
- 'split-window-vertically)))
- (delete-other-windows)
- (let ((first-win (selected-window)))
- (funcall splitter)
- (when this-win-2nd (other-window 1))
- (set-window-buffer (selected-window) this-win-buffer)
- (set-window-buffer (next-window) next-win-buffer)
- (select-window first-win)
- (when this-win-2nd (other-window 1))))))
-
-(defun rotate-windows ()
- "Rotate your windows.
-Stolen from http://whattheemacsd.com"
- (interactive)
- (cond ((not (> (count-windows)1))
- (message "You can't rotate a single window!"))
- ((> (count-windows) 2)
- (message "You can't rotate more than two windows!"))
- (t
- (setq i 1)
- (setq numWindows (count-windows))
- (while (< i numWindows)
- (let* (
- (w1 (elt (window-list) i))
- (w2 (elt (window-list) (+ (% i numWindows) 1)))
-
- (b1 (window-buffer w1))
- (b2 (window-buffer w2))
-
- (s1 (window-start w1))
- (s2 (window-start w2))
- )
- (set-window-buffer w1 b2)
- (set-window-buffer w2 b1)
- (set-window-start w1 s2)
- (set-window-start w2 s1)
- (setq i (1+ i)))))))
-
(defun smart-beginning-of-line ()
"Move point to first non-whitespace character or beginning-of-line.
If point was already at that position, move point to beginning of line.