diff --git a/behaviour.el b/behaviour.el index 86fd5cc..291df1e 100644 --- a/behaviour.el +++ b/behaviour.el @@ -23,6 +23,9 @@ (tool-bar-mode -1) (scroll-bar-mode -1) +;; Open files in the existing emacs window +(setq ns-pop-up-frames nil) + ; Enable diff highlights (useful for git) (global-diff-hl-mode) (diff-hl-flydiff-mode) @@ -38,13 +41,6 @@ (column-number-mode 1) (global-hl-line-mode) -;; Neotree -;; (require 'neotree) -;; (require 'all-the-icons) -;; (setq neo-window-width 40) -;; ;; (neotree-toggle) -;; (setq projectile-switch-project-action 'neotree-projectile-action) - ;;;;;;;;;;;;;;;;;;;;;;;; code behaviour ;;;;;;;;;;;;;;;;;;;;;;;;;;; ; Add ruler at 80, do not wrap lines (can be overwritten later) @@ -138,16 +134,42 @@ ;; Add magit for git (require 'evil-magit) -;; ; Change cursor depending on the evil-mode -;; ; (setq evil-insert-state-cursor '(hbar)) -;; (unless (display-graphic-p) -;; (require 'evil-terminal-cursor-changer) -;; (evil-terminal-cursor-changer-activate) ; or (etcc-on) -;; ) +;; Remove unused buffers every 2 hours +(require 'midnight) -; Add opacity -;; (set-frame-parameter (selected-frame) 'alpha '(94 . 90)) -;; (add-to-list 'default-frame-alist '(alpha . (94 . 90))) +;;kill buffers if they were last disabled more than this seconds ago +(setq clean-buffer-list-delay-special 900) + +(defvar clean-buffer-list-timer nil + "Stores 'clean-buffer-list timer' if there is one. +You can disable `clean-buffer-list' by (cancel-timer clean-buffer-list-timer)." + ) + +;; run clean-buffer-list every 2 hours +(setq clean-buffer-list-timer (run-at-time t 7200 'clean-buffer-list)) + +;; kill everything, clean-buffer-list is very intelligent at not killing +;; unsaved buffer. +(setq clean-buffer-list-kill-regexps '("^.*$")) + +;; keep these buffer untouched +;; prevent append multiple times +(defvar clean-buffer-list-kill-never-buffer-names-init + clean-buffer-list-kill-never-buffer-names + "Init value for `clean-buffer-list-kill-never-buffer-names'.") +(setq clean-buffer-list-kill-never-buffer-names + (append + '("*Messages*" "*cmd*" "*scratch*" "*w3m*" "*w3m-cache*" "*Inferior Octave*") + clean-buffer-list-kill-never-buffer-names-init)) + +;; prevent append multiple times +(defvar clean-buffer-list-kill-never-regexps-init + clean-buffer-list-kill-never-regexps + "Init value for `clean-buffer-list-kill-never-regexps'.") +;; append to *-init instead of itself +(setq clean-buffer-list-kill-never-regexps + (append '("^\\*EMMS Playlist\\*.*$") + clean-buffer-list-kill-never-regexps-init)) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Additional loads ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; (load "~/.emacs.d/languages.el") diff --git a/key-bindings.el b/key-bindings.el index 65dacf5..d93ef81 100644 --- a/key-bindings.el +++ b/key-bindings.el @@ -1,5 +1,5 @@ -;;; keybindings.el --- Summary -;;; Commentary: Maciej Szlosarczyk keybindings +;;; keybindings.el -- Summary +;;; Commentary: ;;; Code: ;;;;;;;;; Emacs bindings ;;;;;;;;;;;;;;;;;;;;; (global-set-key (kbd "RET") 'newline) @@ -36,8 +36,6 @@ "gL" 'magit-log "gco" 'magit-checkout) -(evil-leader/set-key "fc" 'global-flycheck-mode) - (evil-leader/set-key "al" 'align-regexp) (evil-leader/set-key "ir" 'indent-region) (evil-leader/set-key "ac" 'align-to-colon) diff --git a/languages.el b/languages.el index c9ef158..2e4a02f 100644 --- a/languages.el +++ b/languages.el @@ -1,9 +1,7 @@ ;;; Languages -- summary ;;; Commentary: - ;;; Code: - ;;;; Major languages ;;;; ;;; Ruby (defun ruby-mode-config () @@ -44,6 +42,7 @@ (add-hook 'rust-mode-hook 'rust-mode-config) ;;; Elixir +;; Note: there is no flycheck support for Elixir yet (require 'alchemist) (defun elixir-mode-config () "Call elixir mode config." @@ -51,7 +50,6 @@ (remove-hook 'rust-mode-hook 'rust-mode-config) (remove-hook 'emacs-lisp-mode-hook 'elisp-mode-config) (alchemist-mode 1) - (flycheck-mode 1) (set-line-limit-80-tab-2) (ruby-end-mode))