diff --git a/ace-jump-mode b/ace-jump-mode index 07b7137..8351e2d 160000 --- a/ace-jump-mode +++ b/ace-jump-mode @@ -1 +1 @@ -Subproject commit 07b713792aec8cfb1bed7e1effaa9bf2b1cf3282 +Subproject commit 8351e2df4fbbeb2a4003f2fb39f46d33803f3dac diff --git a/alert b/alert index 9725bd8..dfb0034 160000 --- a/alert +++ b/alert @@ -1 +1 @@ -Subproject commit 9725bd8bbf9109903d54cb0c850ab81a27d261c5 +Subproject commit dfb003476aeb26d08782c17257f3a81934bcf6ce diff --git a/dash.el b/dash.el index 4ecfea6..8a46d3c 160000 --- a/dash.el +++ b/dash.el @@ -1 +1 @@ -Subproject commit 4ecfea65300dc1b129f9cf738625b875dc353e2a +Subproject commit 8a46d3c7c126d3e979f7f9b36867a413694cd8df diff --git a/emacs-deferred b/emacs-deferred index 896d4b5..8827106 160000 --- a/emacs-deferred +++ b/emacs-deferred @@ -1 +1 @@ -Subproject commit 896d4b53210289afe489e1ee7db4e12cb9248109 +Subproject commit 8827106c83f0fc773bc406d381ea25a29a5965e1 diff --git a/fringe-helper.el b/fringe-helper.el index c02fae1..ef4a9c0 160000 --- a/fringe-helper.el +++ b/fringe-helper.el @@ -1 +1 @@ -Subproject commit c02fae16cda709f102dee56338075e257240b385 +Subproject commit ef4a9c023bae18ec1ddd7265f1f2d6d2e775efdd diff --git a/init.el b/init.el index 05f27f4..66eb74d 100644 --- a/init.el +++ b/init.el @@ -18,6 +18,7 @@ '(current-language-environment "English") '(default-input-method "rfc1345") '(delete-active-region nil) + '(delete-selection-mode nil) '(flyspell-duplicate-distance 0) '(flyspell-mark-duplications-flag t) '(font-latex-fontify-sectioning (quote color)) @@ -96,6 +97,7 @@ '(font-lock-comment-delimiter-face ((t (:foreground "lightslategray")))) '(font-lock-comment-face ((t (:foreground "SlateGray")))) '(highlight ((t (:background "Darkslategray")))) + '(hl-line ((t (:inherit fringe)))) '(hl-sexp-face ((t (:underline t))) t) '(italic ((((supports :underline t)) nil))) '(linum-highlight-face ((t (:inherit (highlight default))))) @@ -105,7 +107,7 @@ '(mouse ((t (:background "orchid")))) '(org-pomodoro-mode-line ((t (:foreground "tomato3")))) '(paren-face-match ((t (:background "turquoise" :foreground "black")))) - '(region ((t (:background "DodgerBlue4")))) + '(region ((t (:inherit highlight)))) '(shadow ((t (:foreground "grey60")))) '(tooltip ((t (:inherit default :background "lightyellow" :foreground "black" :foundry "xos4" :family "terminus")))) '(variable-pitch ((t (:family "default")))) @@ -126,6 +128,7 @@ (setq compilation-scroll-output t compilation-window-height 12) +(transient-mark-mode 0) (tool-bar-mode 0) (scroll-bar-mode -1) (setq-default show-trailing-whitespace t) @@ -152,10 +155,13 @@ (setq mouse-autoselect-window nil) (mouse-wheel-mode t) +(defvar outline-minor-mode-prefix "\M-#") + +;; * include other files (load "init-latex.el") (load "init-org.el") (load "init-c++.el") - +(load "init-elisp.el") ;; KDE stuff ;; @@ -168,7 +174,7 @@ (setq frame-title-format '((buffer-file-name "%f" - (dired-directory dired-directory "%b")) " · emacs " kde-current-activity-name "%S")) + (dired-directory dired-directory "%b")) " · emacs · " (:eval (kde-current-activity-name)))) ;; "%S")) ;; Put autosave files (ie #foo#) and backup files (ie foo~) in ~/.emacs.d/. ;; create the autosave dir if necessary, since emacs won't. @@ -345,6 +351,7 @@ a file in the home directory." (concat emacs-dir basename) (concat "~/.emacs-" basename))))) +;; * Multiple cursors galore (require 'multiple-cursors) (global-set-key (kbd "C->") 'mc/mark-next-like-this) (global-set-key (kbd "C-<") 'mc/mark-previous-like-this) @@ -359,7 +366,7 @@ a file in the home directory." (global-set-key (kbd "") 'set-mark-command) -;; clever mark stuff +;; * clever mark stuff (defun push-mark-no-activate () "Pushes `point' to `mark-ring' and does not activate the region Equivalent to \\[set-mark-command] when \\[transient-mark-mode] is disabled" @@ -377,8 +384,8 @@ This is the same as using \\[set-mark-command] with the prefix argument." (defun just-activate-mark () (interactive) - (exchange-point-and-mark) - (exchange-point-and-mark)) + (activate-mark)) + (global-set-key (kbd "") 'just-activate-mark) ;; (defun exchange-point-and-mark-no-activate () @@ -388,12 +395,10 @@ This is the same as using \\[set-mark-command] with the prefix argument." ;; (deactivate-mark nil)) ;; (define-key global-map [remap exchange-point-and-mark] 'exchange-point-and-mark-no-activate) -(byte-recompile-directory "~/.emacs.d/bibretrieve" 0) -(load "bibretrieve") - +;; * Wordnik stuff - does not work anymore (require 'wordnik-synonym) (global-set-key (kbd "H-=") 'wn/synonym-at-point) - +;; * kill annoying completion buffer (add-hook 'minibuffer-exit-hook '(lambda () (let ((buffer "*Completions*")) @@ -401,11 +406,11 @@ This is the same as using \\[set-mark-command] with the prefix argument." (kill-buffer buffer))) )) -;; Open gpg encrypted files on the fly +;; * Open gpg encrypted files on the fly (require 'epa-file) (epa-file-enable) -;; Time stamps +;; * Time stamps ;; write ;; Time-stamp: <> ;; in your file and save it to see time stamps at work. @@ -417,17 +422,23 @@ This is the same as using \\[set-mark-command] with the prefix argument." ;; first day of the week is monday instead of sunday: (setq calendar--week--start--day 1) +;; * Misc --- sort thme out (require 'highlight-sexps) (setq echo-keystrokes 0.10) (set-default 'cursor-type 'box) + (require 'fringe-current-line) (global-fringe-current-line-mode 1) (require 'hlinum) (hlinum-activate) -;; (require 'completion-ui) ; +;; * Try again with ido +;; ** Load ido +(require 'ido) +(ido-mode t) +;; ** Organize ibuffer according to some rules (setq ibuffer-saved-filter-groups (quote (("default" ("LaTeχ" (mode . latex-mode)) @@ -443,16 +454,15 @@ This is the same as using \\[set-mark-command] with the prefix argument." '(lambda () (ibuffer-switch-to-saved-filter-groups "default"))) -;; Try again with ido -(require 'ido) -(ido-mode t) -(set-face-font 'default "-xos4-TerminusPlus-Medium-R-Normal--12-120-72-72-C-60-ISO10646-1") - (mapc - (lambda (face) - (set-face-attribute face nil :weight 'normal)) - (face-list)) +;; * This used to set my patched version of terminus +;; (set-face-font 'default "-xos4-TerminusPlus-Medium-R-Normal--12-120-72-72-C-60-ISO10646-1") +;; (mapc +;; (lambda (face) +;; (set-face-attribute face nil :weight 'normal)) +;; (face-list)) +;; * mode-line setting (setq-default mode-line-modified '(:eval (if (buffer-modified-p) "●" "·"))) ;still needs some improvements, does not report Readonly state (setq-default mode-line-remote '(:eval (let ((s (format-mode-line "%@"))) (cond @@ -488,6 +498,18 @@ This is the same as using \\[set-mark-command] with the prefix argument." mode-line-misc-info mode-line-end-spaces)) +;; * Organize differently +(require 'outshine) +(add-hook 'outline-minor-mode-hook 'outshine-hook-function) +(setq outshine-use-speed-commands t) + +(add-hook 'sh-mode-hook 'outline-minor-mode) + +(require 'package) +(add-to-list 'package-archives + '("melpa-stable" . "http://stable.melpa.org/packages/") t) + +;; * start server named after kde activity id (setq server-name (kde-current-activity)) -(server-start) (menu-bar-mode -99) +(server-start) diff --git a/init/init-latex.el b/init/init-latex.el index 07a8f51..ac74f6b 100644 --- a/init/init-latex.el +++ b/init/init-latex.el @@ -34,6 +34,7 @@ (turn-on-auto-fill) (subword-mode) (TeX-fold-mode 1) + (outline-minor-mode) ;; Move around commands in the Right Way™ (modify-syntax-entry ?\\ "w" LaTeX-mode-syntax-table) (setq subword-forward-regexp "\\W*\\(\\([\\\\[:upper:]]*\\W?\\)[[:lower:][:digit:]]*\\)") @@ -54,7 +55,7 @@ (if arg (LaTeX-insert-environment "align") (LaTeX-insert-environment "align*")))) - ;; EXPERIMENTAL: try C-RETURN DEL + ;; EXPERIMENTAL: try C-RETURN → DEL (define-key LaTeX-mode-map (kbd "C-") 'backward-delete-char-untabify) ;; EXPERIMENTAL: unbind return - NOTE it is important to unbind and not RET. If we @@ -155,4 +156,101 @@ closing brace." (if (string= (string (following-char)) " ") () (insert " ")) ;; decide what to do with the point ) + +;; this reimplements LaTeX-insert-environment to my taste +;; +(defun LaTeX-insert-environment (environment &optional extra) + "Insert LaTeX ENVIRONMENT with optional argument EXTRA." + (let ((active-mark (and (TeX-active-mark) (not (eq (mark) (point))))) + prefix content-start env-start env-end) + (when (and active-mark (< (mark) (point))) (exchange-point-and-mark)) + ;; Compute the prefix. + (when (and LaTeX-insert-into-comments (TeX-in-commented-line)) + (save-excursion + (beginning-of-line) + (looking-at + (concat "^\\([ \t]*" TeX-comment-start-regexp "+\\)+[ \t]*")) + (setq prefix (match-string 0)))) + ;; What to do with the line containing point. + (cond + ;; if the line is made of blanks, erase them and start on the same line + ((save-excursion (beginning-of-line) + (looking-at (concat prefix "[ \t]*$"))) + (delete-region (match-beginning 0) (match-end 0))) + ;; if after the point there are only blanks, erase them and dont add extra newline + ((looking-at "[ \t]*$") + (delete-horizontal-space) + (newline)) + ((TeX-looking-at-backward (concat "^" prefix "[ \t]*") + (line-beginning-position)) + (beginning-of-line) + (newline) + (beginning-of-line 0));; if we are at the beginning of the line (maybe with some spaces + ((bolp) + (delete-horizontal-space) + (newline) + (beginning-of-line 0)) + ((eolp) + (delete-horizontal-space) + (newline) + ) + (t + (delete-horizontal-space) + (newline 2) + (when prefix (insert prefix)) + (beginning-of-line 0))) + ;; What to do with the line containing mark. + (when active-mark + (save-excursion + (goto-char (mark)) + (cond ((save-excursion (beginning-of-line) + (or (looking-at (concat prefix "[ \t]*$")) + (looking-at "[ \t]*$"))) + (delete-region (match-beginning 0) (match-end 0))) + ((TeX-looking-at-backward (concat "^" prefix "[ \t]*") + (line-beginning-position)) + (beginning-of-line) + (newline) + (beginning-of-line 0)) + (t + (delete-horizontal-space) + (insert-before-markers "\n") + (newline) + (when prefix (insert prefix)))))) + ;; Now insert the environment. + (when prefix (insert prefix)) + (setq env-start (point)) + (insert TeX-esc "begin" TeX-grop environment TeX-grcl) + (indent-according-to-mode) + (when extra (insert extra)) + (setq content-start (line-beginning-position 2)) + (unless active-mark + (newline) + (when prefix (insert prefix)) + (newline)) + (when active-mark (goto-char (mark))) + (when prefix (insert prefix)) + (insert TeX-esc "end" TeX-grop environment TeX-grcl "%") + (end-of-line 0) + (if active-mark + (progn + (or (assoc environment LaTeX-indent-environment-list) + (LaTeX-fill-region content-start (line-beginning-position 2))) + (set-mark content-start)) + (indent-according-to-mode)) + (save-excursion (beginning-of-line 2) (indent-according-to-mode)) + (TeX-math-input-method-off) + (setq env-end (save-excursion + (search-forward + (concat TeX-esc "end" TeX-grop + environment TeX-grcl)) + (match-beginning 0))) + (indent-region env-start env-end) ;;does this work? + (run-hook-with-args 'LaTeX-after-insert-env-hooks + environment env-start env-end))) + (load "latex-compile-filters.el") + +;; * add bibretrieve +(byte-recompile-directory "~/.emacs.d/bibretrieve" 0) +(load "bibretrieve") diff --git a/multiple-cursors.el b/multiple-cursors.el index a3e6ec7..68961b4 160000 --- a/multiple-cursors.el +++ b/multiple-cursors.el @@ -1 +1 @@ -Subproject commit a3e6ec7c93c376f35c9add3ff8d155bdf2e079a4 +Subproject commit 68961b4cf39b6d56d21ece0246f8c215f95cc3e1 diff --git a/org-clock-save.el b/org-clock-save.el index 2f374fb..9fc36c0 100644 --- a/org-clock-save.el +++ b/org-clock-save.el @@ -1,2 +1,2 @@ -;; org-persist.el - fourhpoons at <2016-02-15 Mon 12:47> -(setq stored-clock-history '(("/home/jacopods/org/notes.org" . 4393))) +;; org-persist.el - fourhpoons at <2016-02-26 Fri 17:34> +(setq stored-clock-history '(("/home/jacopods/org/notes.org" . 4561))) diff --git a/org-pomodoro b/org-pomodoro index 680b1f3..95e2b1f 160000 --- a/org-pomodoro +++ b/org-pomodoro @@ -1 +1 @@ -Subproject commit 680b1f3893fa89da01cc770acbb1dbe086749e96 +Subproject commit 95e2b1f555359a6096a19634814e1d93b2072f25 diff --git a/sage-shell-mode b/sage-shell-mode index 8fc9cd7..ad78c16 160000 --- a/sage-shell-mode +++ b/sage-shell-mode @@ -1 +1 @@ -Subproject commit 8fc9cd7d065bbea8ac5caacbcb3ee86b3900697e +Subproject commit ad78c168c1fb702eebc74f30eba830adc3fe0079 diff --git a/smart-tab b/smart-tab index da4168b..28918a7 160000 --- a/smart-tab +++ b/smart-tab @@ -1 +1 @@ -Subproject commit da4168baeb5fd213f1c3b8f7656648aaae79fbcf +Subproject commit 28918a72045811294ecb33f666ba23fe66c169af diff --git a/smartparens b/smartparens index ab74554..108ecf4 160000 --- a/smartparens +++ b/smartparens @@ -1 +1 @@ -Subproject commit ab74554e655416966e6731f1d4d3b24608a34dfd +Subproject commit 108ecf401901f94dd08b0746d89fe999f98d84df