summaryrefslogtreecommitdiff
path: root/emacs-blue
diff options
context:
space:
mode:
authorJoel Klinghed <the_jk@opera.com>2017-09-21 16:15:16 +0200
committerJoel Klinghed <the_jk@opera.com>2017-09-21 16:15:16 +0200
commit9f60ebc23f04c409d89a379b69cf0b5116310aa4 (patch)
tree29227ead0ecbee5c870e652996eeceaf49ece999 /emacs-blue
parent6a742f3fcff1387105e98c23d63788275492d0c2 (diff)
Merge some fixes between the emacs files
Diffstat (limited to 'emacs-blue')
-rw-r--r--emacs-blue60
1 files changed, 55 insertions, 5 deletions
diff --git a/emacs-blue b/emacs-blue
index 617b997..749759b 100644
--- a/emacs-blue
+++ b/emacs-blue
@@ -4,6 +4,9 @@
;;; Code:
+;; support local packages
+(add-to-list 'load-path "~/.emacs.d/site-lisp/")
+
(require 'package)
(add-to-list 'package-archives
'("melpa" . "https://melpa.org/packages/"))
@@ -12,7 +15,7 @@
package-selected-packages '(meson-mode groovy-mode gradle-mode flycheck))
;; use (package-install-selected-packages) to install the ones above
- ;; show matching parentheses (and other characters)
+;; show matching parentheses (and other characters)
(show-paren-mode t)
;; hide toolbar
@@ -81,6 +84,21 @@
(add-to-list 'default-frame-alist '(background-color . "black"))
(add-to-list 'default-frame-alist '(background-mode . "dark"))
+;; Toggle frame width
+(defun toggle-frame-width (frame)
+ "Toggle FRAME width between 100 and 80."
+ (when window-system
+ (let ((width (frame-width frame)))
+ (cond ((eq width 80)
+ (set-frame-width frame 100))
+ (t
+ (set-frame-width frame 80))))))
+
+(defun toggle-selected-frame-width ()
+ "Toggle selected frame width between 100 and 80."
+ (interactive)
+ (toggle-frame-width (selected-frame)))
+
;; default styles
(setq-default
;; no tabs in indentation
@@ -170,8 +188,7 @@
(eval-after-load 'autoinsert
'(define-auto-insert
'("\\.\\(java\\)\\'" . "Java source")
- '((capitalize
- (file-name-base buffer-file-name))
+ '((file-name-base buffer-file-name)
"package " (mapconcat 'identity (member "com" (split-string (file-name-directory buffer-file-name) "/" t)) ".") ";" \n
\n
"class " str " {" \n
@@ -189,6 +206,7 @@
;; keys
(global-set-key (kbd "C-c o") 'ff-find-other-file)
+(global-set-key [?\C-x ?\t] 'toggle-selected-frame-width)
;; flycheck
(require 'flycheck)
@@ -213,13 +231,37 @@
'("common c"
(c-basic-offset . 2)))
+(make-variable-buffer-local 'flycheck-clang-definitions)
+(make-variable-buffer-local 'flycheck-clang-include-path)
+(make-variable-buffer-local 'flycheck-clang-language-standard)
+
(add-hook 'c++-mode-hook
(lambda()
(setq flycheck-clang-language-standard "c++11"
flycheck-clang-definitions '("HAVE_CONFIG_H")
flycheck-clang-include-path
'("../src" "../build"))
- (c-set-style "default c++")))
+ (c-set-style "default c++")
+ (when (and buffer-file-name
+ (string-match "/source/monmon/" buffer-file-name))
+ (setq flycheck-clang-include-path
+ '("../src" "../build"
+ "/usr/include/cairo"
+ "/usr/include/pango-1.0"
+ "/usr/include/pixman-1"
+ "/usr/include/freetype2"
+ "/usr/include/libpng16"
+ "/usr/include/harfbuzz"
+ "/usr/include/glib-2.0"
+ "/usr/lib/glib-2.0/include"
+ "/usr/lib/icecream/include")))
+ (when (and buffer-file-name
+ (string-match "/source/sawmill-0.5/" buffer-file-name))
+ (setq flycheck-clang-include-path
+ '("../src" "../build"
+ "../subprojects/googletest-release-1.8.0/googletest/include"
+ "../subprojects/googletest-release-1.8.0/googlemock/include"
+ )))))
;; Opera Java hook
(add-hook 'java-mode-hook
@@ -234,6 +276,14 @@
flycheck-android-java-checkstyle-config
"checkstyle-config-android.xml"
flycheck-android-java-checkstyle-properties
- "checkstyle.properties"))))
+ "checkstyle.properties")
+ (require 'google-c-style)
+ (google-set-c-style)
+ (setq c-file-style "Google")
+ (c-set-offset 'arglist-intro '++)
+ (c-set-offset 'arglist-cont nil)
+ (c-set-offset 'arglist-cont-nonempty '++)
+ (setq indent-tabs-mode nil)
+ (setq c-basic-offset 4))))
;;;