summaryrefslogtreecommitdiffstats
path: root/emacs.d/00-functions.el
blob: 20d75ff686b7647ac75cf76d7dd11b7956d89a8a (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
(defun what-face (pos)
  "Find out which face the current position uses"
  (interactive "d")
  (let ((face (or (get-char-property (point) 'read-face-name)
                  (get-char-property (point) 'face))))
    (if face
        (message "Face: %s" face)
      (message "No face at %d" pos))))

(defun my-comp-finish-function (buf str)
  "Don't show compilation window if everything went ok"
  (if (string-match "exited abnormally" str)
      ;; there were errors
      (message "compilation errors, press C-x ` to visit")
    ;; no errors, make the compilation window go away in 0.5 seconds
    (run-at-time 0.5 nil 'delete-windows-on buf)
    (message "NO COMPILATION ERRORS!")))

(defun show-whitespace ()
  (interactive)
  (whitespace-mode t))

(defun fullscreen ()
  (interactive)
  (x-send-client-message nil 0 nil "_NET_WM_STATE" 32
                         '(2 "_NET_WM_STATE_MAXIMIZED_VERT" 0))
  (x-send-client-message nil 0 nil "_NET_WM_STATE" 32
                         '(2 "_NET_WM_STATE_MAXIMIZED_HORZ" 0)))

(defun c-toggle-header-source ()
  (interactive)
  (let ((ext (file-name-extension (buffer-file-name)))
        (noext (file-name-sans-extension (buffer-file-name))))
    (if (string= (substring ext 0 1) "c")
        (find-file (concat noext ".h"))
      (find-file (concat noext ".c")))))

(defun browse-to-current-file ()
  (interactive)
  (browse-url buffer-file-name))