diff options
| author | Joel Klinghed <the_jk@spawned.biz> | 2020-11-11 22:24:03 +0100 |
|---|---|---|
| committer | Joel Klinghed <the_jk@spawned.biz> | 2020-11-11 22:24:03 +0100 |
| commit | cb094d574aa6ea1d672ee17a3cf2513cac6e5156 (patch) | |
| tree | a938eeacbc135f06427b49c97cfcd9259afb3cda | |
| parent | f10029645ef689e05b31d654804cd5541151ce8e (diff) | |
willow: Remove ycmd
Add kotlin-mode
Increase clean-buffer-list to 3days
Add rename-current-buffer-file
Go back to ProggyCleanTT
Improve Java template (org instead of com as base package name and fiddling with the indentation)
Add Kotlin template
Bump flycheck c++ to c++17
| -rw-r--r-- | emacs-willow | 81 |
1 files changed, 39 insertions, 42 deletions
diff --git a/emacs-willow b/emacs-willow index e64ba92..cf7f5da 100644 --- a/emacs-willow +++ b/emacs-willow @@ -12,7 +12,7 @@ '("melpa" . "https://melpa.org/packages/")) (package-initialize) (setq - package-selected-packages '(meson-mode groovy-mode gradle-mode flycheck-ycmd company-ycmd ido-vertical-mode rg)) + package-selected-packages '(meson-mode groovy-mode gradle-mode kotlin-mode flycheck ido-vertical-mode rg)) ;; use (package-install-selected-packages) to install the ones above ;; show matching parentheses (and other characters) @@ -45,14 +45,32 @@ ;; Clean the buffer list at midnight (require 'midnight) -;; Set clean-buffer-list delay to 1 day -(setq clean-buffer-list-delay-general 1) +;; Set clean-buffer-list delay to 3 days +(setq clean-buffer-list-delay-general 3) (if (not (boundp 'clean-buffer-list-kill-regexps)) (setq clean-buffer-list-kill-regexps '())) ;; Add preprocessed buffers to the list (add-to-list 'clean-buffer-list-kill-regexps '("\\`\\*.*-preprocessed\\*\\'")) +(defun rename-current-buffer-file () + "Renames current buffer and file it is visiting." + (interactive) + (let* ((name (buffer-name)) + (filename (buffer-file-name)) + (basename (file-name-nondirectory filename))) + (if (not (and filename (file-exists-p filename))) + (error "Buffer '%s' is not visiting a file!" name) + (let ((new-name (read-file-name "New name: " (file-name-directory filename) basename nil basename))) + (if (get-buffer new-name) + (error "A buffer named '%s' already exists!" new-name) + (rename-file filename new-name 1) + (rename-buffer new-name) + (set-visited-file-name new-name) + (set-buffer-modified-p nil) + (message "File '%s' successfully renamed to '%s'" + name (file-name-nondirectory new-name))))))) + ;; load rg (require 'rg) @@ -81,7 +99,7 @@ (add-to-list 'default-frame-alist '(user-size . t)) ;; frame font and color (add-to-list 'default-frame-alist - '(font . "-*-inconsolata-*-*-*-*-*-120-*-*-*-*-*")) + '(font . "-*-ProggyCleanTT-*-*-*-*-*-120-*-*-*-*-*")) (add-to-list 'default-frame-alist '(cursor-color . "green")) (add-to-list 'default-frame-alist '(foreground-color . "grey")) (add-to-list 'default-frame-alist '(background-color . "black")) @@ -195,12 +213,21 @@ '(define-auto-insert '("\\.\\(java\\)\\'" . "Java source") '((file-name-base buffer-file-name) - "package " (mapconcat 'identity (member "com" (split-string (file-name-directory buffer-file-name) "/" t)) ".") ";" \n + "package " (mapconcat 'identity (member "org" (split-string (file-name-directory buffer-file-name) "/" t)) ".") ";" \n \n "class " str " {" \n - _ \n - str "() {" ?\n - " " "}" ?\n ;; > should work here but it doesn't + str "() {" \n + > _ ?\n + " }" ?\n + "}" \n))) +(eval-after-load 'autoinsert + '(define-auto-insert + '("\\.\\(kt\\)\\'" . "Kotlin source") + '((file-name-base buffer-file-name) + "package " (mapconcat 'identity (member "org" (split-string (file-name-directory buffer-file-name) "/" t)) ".") \n + \n + "class " str "() {" \n + > _ ?\n "}" \n))) (auto-insert-mode t) ;; don't ask before using auto-insert @@ -229,38 +256,8 @@ ;; flycheck (require 'flycheck) (global-flycheck-mode) - -;; code completion - -;; ycmd setup -;; # make sure to use python3 -;; # git clone https://github.com/Valloric/ycmd.git -;; # cd ycmd -;; # git submodule update --init --recursive -;; # ./build.py --system-libclang --clang-completer -;; # mkdir -p ~/.emacs.d/ycmd/third_party -;; # cp -r {ycmd,ycm_core.so,CORE_VERSION,cpp} ~/.emacs.d/ycmd/ -;; # cp -r third_party/{bottle,clang,frozendict,jedi_deps,python-future,requests_deps,waitress} ~/.emacs.d/ycmd/third_party/ - -(set-variable 'ycmd-server-command `("python3" ,(file-truename "~/.emacs.d/ycmd/ycmd/"))) -(set-variable 'ycmd-extra-conf-whitelist '("~/source/*")) -(require 'ycmd) -(add-hook 'after-init-hook #'global-ycmd-mode) - -(require 'company-ycmd) -(company-ycmd-setup) -(add-hook 'after-init-hook 'global-company-mode) - -(require 'flycheck-ycmd) -(flycheck-ycmd-setup) - -(add-hook 'python-mode-hook (lambda () (add-to-list 'flycheck-disabled-checkers 'ycmd))) -(add-hook 'java-mode-hook (lambda () (add-to-list 'flycheck-disabled-checkers 'ycmd))) - -;; disable flycheck indicatoion in terminal mode as it will conflict with -;; company -(when (not (display-graphic-p)) - (setq flycheck-indication-mode nil)) +(setq flycheck-check-syntax-automatically '(save new-line)) +(setq flycheck-python-pylint-executable "/usr/bin/python3") ;; replace ch alias fro grep with cchh alias, ie if starting with a ".h" file ;; you might still want to search in cc files @@ -293,10 +290,10 @@ (add-hook 'c++-mode-hook (lambda() - (setq flycheck-clang-language-standard "c++14" + (setq flycheck-clang-language-standard "c++17" flycheck-clang-definitions '("HAVE_CONFIG_H") flycheck-clang-include-path - '("../src" "../build")) + '("../src" "../build" "/usr/include/taglib")) (c-set-style "default c++"))) ;; Opera Java hook |
