Henrik Lissner
c7254e7bdc
Major optimization refactor, across the board
...
+ enable lexical-scope everywhere (lexical-binding = t): ~5-10% faster
startup; ~5-20% general boost
+ reduce consing, function calls & garbage collection by preferring
cl-loop & dolist over lambda closures (for mapc[ar], add-hook, and
various cl-lib filter/map/reduce functions) -- where possible
+ prefer functions with dedicated opcodes, like assq (see byte-defop's
in bytecomp.el for more)
+ prefer pcase & cond (faster) over cl-case
+ general refactor for code readability
+ ensure naming & style conventions are adhered to
+ appease byte-compiler by marking unused variables with underscore
+ defer minor mode activation to after-init, emacs-startup or
window-setup hooks; a customization opportunity for users + ensures
custom functionality won't interfere with startup.
2017-06-09 00:47:45 +02:00
Henrik Lissner
3c8e70c0d0
Refactor; don't autosave blank session
2017-06-04 02:38:02 +02:00
Henrik Lissner
b47b951a41
Make config more emacsclient-friendly
2017-04-22 01:49:15 -04:00
Henrik Lissner
0e7254d312
General cleanup + refactor
2017-04-17 02:20:07 -04:00
Henrik Lissner
e204df3c05
Replace obsolete functions/commands
2017-04-17 02:19:20 -04:00
Henrik Lissner
5ae94b765c
PRAISE BE TO THE BYTE COMPILER FOR THY SHARP QUOTES
2017-04-17 02:17:10 -04:00
Henrik Lissner
e25d945474
Fix :killall! & +workspace/kill-session awareness of main workspace
2017-04-16 16:55:05 -04:00
Henrik Lissner
0f16bcd04e
feature/workspaces: fix flipped condition on after-init-hook
2017-04-16 16:45:21 -04:00
Henrik Lissner
8e56c6c6a0
feature/workspaces: ignore nil perspective; fix +workspace/cycle
2017-04-12 11:27:43 -04:00
Henrik Lissner
2aac675978
General cleanup + docstring updates
2017-04-11 08:31:00 -04:00
Henrik Lissner
ac101e3af6
feature/workspaces: create a fallback 'main' workspace to deal with nil persp quirks
2017-04-10 18:21:42 -04:00
Henrik Lissner
2f9c158645
feature/workspaces: fix +workspace/cycle; add +workspace/switch-{left,right}
2017-04-08 23:28:24 -04:00
Henrik Lissner
2472668e61
feature/workspaces: refactor +workspace/kill-session
2017-04-02 23:07:05 -04:00
Henrik Lissner
a83729c57c
feature/workspaces: don't silence when saving (not important enough)
2017-04-02 23:06:27 -04:00
Henrik Lissner
84275d312d
feature/workspaces: simplify doom|new-workspace-on-project-change
2017-03-13 16:56:45 -04:00
Henrik Lissner
935aff99d7
feature/workspaces: set doom-popup-rules on load-session
2017-03-13 14:21:56 -04:00
Henrik Lissner
6a026fade2
feature/workspaces: save to autosave if name is omitted
2017-03-13 14:21:42 -04:00
Henrik Lissner
ae614c9c6f
General cleanup + refactor
2017-03-08 14:41:32 -05:00
Henrik Lissner
552684564e
feature/workspaces: add switch-or-create functionality to +workspace-switch
2017-03-06 19:24:25 -05:00
Henrik Lissner
4b63d79f68
feature/workspaces: kill buffers when killing workspace
2017-03-06 19:23:44 -05:00
Henrik Lissner
7d1b02cbed
feature/workspaces: announce workspace name when loading/saving
2017-03-04 00:01:48 -05:00
Henrik Lissner
343925e9ac
feature/workspaces: issue notice when switching to same buffer
2017-03-01 21:41:16 -05:00
Henrik Lissner
7aa8d54e08
feature/workspaces: don't error when +workspace-p recieves nil
2017-03-01 21:40:50 -05:00
Henrik Lissner
27cc4a9508
reverse => nreverse; other optimizations
2017-03-01 19:15:45 -05:00
Henrik Lissner
7ed243a398
feature/workspaces: create/delete persps when making/deleting frames
2017-02-25 01:36:41 -05:00
Henrik Lissner
75a5e55255
General cleanup + refactor
2017-02-24 03:14:13 -05:00
Henrik Lissner
7177827c41
feature/workspaces: update +workspaces|restore-popups (due to recent core-popups refactor)
2017-02-23 00:07:28 -05:00
Henrik Lissner
33c88d4f82
Revert macros to ...! name convention (elisp doesn't like @...)
2017-02-23 00:06:12 -05:00
Henrik Lissner
32bc9ce767
Minor refactoring
2017-02-22 04:28:45 -05:00
Henrik Lissner
e967c573d4
feature/workspaces: don't autosave/load + refactor session load/save commands
2017-02-22 04:28:20 -05:00
Henrik Lissner
38c3ef744d
completion/ivy: refactor
2017-02-22 04:27:23 -05:00
Henrik Lissner
fd93e705b4
General cleanup, refactor and documentation
2017-02-21 03:45:24 -05:00
Henrik Lissner
cb4b61b1ac
feature/workspaces: create new workspace when switching to new projectile project
2017-02-21 00:44:06 -05:00
Henrik Lissner
752e8e4fe4
feature/workspaces: fix +workspace/close-window-or-workspace (closes workspace on last window)
2017-02-21 00:43:51 -05:00
Henrik Lissner
21fc4508b6
feature/workspaces: use doom-fallback-buffer function, instead of variable
2017-02-20 16:33:52 -05:00
Henrik Lissner
43d0247d61
Update modules/feature/workspaces
2017-02-20 00:26:08 -05:00
Henrik Lissner
cf927acc07
@use-package => @def-package
2017-02-20 00:26:06 -05:00
Henrik Lissner
6a3e879501
feature/workspaces: refactor; more reliable session/popup persistence
2017-02-20 00:26:06 -05:00
Henrik Lissner
6c06aa0ce7
Macros now prefixed with @, instead of suffixed with !
2017-02-20 00:26:06 -05:00
Henrik Lissner
5d5c3bf92e
Refactor core-popups; improve popups/persp-mode integration
2017-02-20 00:26:05 -05:00
Henrik Lissner
42eac3eaa8
feature/workspaces: replace workgroups2 with persp-mode
2017-02-20 00:23:08 -05:00
Henrik Lissner
e6209291eb
Add modules/feature/workspaces
2017-02-20 00:23:07 -05:00