Commit Graph

39 Commits

Author SHA1 Message Date
Henrik Lissner
f52008873e
Refactor app/rss & improve kill-buffer process 2018-06-29 15:08:06 +02:00
Henrik Lissner
ba674c8744
Slice images in rss entries for easier scrolling
Can be disabled with +rss-enable-sliced-images.
2018-06-29 14:12:50 +02:00
Henrik Lissner
db0ad48e4d
Enable evil-collection-elfeed 2018-06-29 14:12:50 +02:00
Henrik Lissner
1a923441ff
Fix infinite-recursion when killing elfeed buffers 2018-06-29 14:12:50 +02:00
Henrik Lissner
b583af198d
Pop up elfeed-show buffers below current
Instead of in a frame popup. You no longer are required to run elfeed in
fullscreen.
2018-06-29 13:57:21 +02:00
Henrik Lissner
6c0c6ee47b
Fix infinite recursion when quitting elfeed
+rss/quit kills the buffer, triggering its kill-buffer-hook, which calls
+rss/quit, triggering its kill-buffer-hook, which calls +rss/quit,
triggering its kill-buffer-hook, which calls +rss/quit, triggering its
kill-buffer-hook, which calls +rss/quit, triggering its
kill-buffer-hook, which calls +rss/quit, triggering its
kill-buffer-hook, which calls +rss/quit, triggering its
kill-buffer-hook, which calls +rss/quit, which summons Cthulhu...
2018-06-28 14:40:12 +02:00
Henrik Lissner
e9ccc09fe4
Fix featurep! check in app/rss
Reported by @sarg
2018-06-27 20:35:49 +02:00
Henrik Lissner
e6a89e4bf9
app/rss: fix keymapp error & refactor keybinds 2018-06-26 18:58:02 +02:00
Henrik Lissner
6808c46b58
💥 Change set-popup-rule! usage
Now accepts a flat plist of all its former parameters, including new
:parameters and :actions properties to increase your control over the
fate of your windows.

The old usage of set-popup-rule! is deprecated and may not work right!

The :ui popup module has also seen a major refactor to improve
efficiency and load times.

Sorry! This is the last "big" change before 2.1!
2018-06-18 02:34:16 +02:00
Henrik Lissner
d8b1e469bc
Introduce autodefs to replace some settings
+ :popup -> set-popup-rule!
+ :popups -> set-popup-rules!
+ :company-backend -> set-company-backend!
+ :evil-state -> set-evil-initial-state!

I am slowly phasing out the setting system (def-setting! and set!),
starting with these.

What are autodefs? These are functions that are always defined, whether
or not their respective modules are enabled. However, when their modules
are disabled, they are replaced with macros that no-op and don't
waste time evaluating their arguments.

The old set! function will still work, for a while.
2018-06-15 03:42:01 +02:00
Henrik Lissner
6693db48af
Mark +org-dir obsolete (use org-directory instead)
I prefer not to invent new variables when they aren't strictly
necessary. org-directory is one such variable (although the other path
variables are still necessary).
2018-06-15 01:05:22 +02:00
Henrik Lissner
32a2a2b64d
General, minor refactor
+ Group hooks with add-hook!
+ Sharpquote elfeed call
+ Extract elfeed buffer detector into function and ensure idempotency of
  doom-real-buffer-functions
2018-06-03 15:51:59 +02:00
Henrik Lissner
1e81a35461
Minimize dependence on map!
This is in preparation for general.el integration coming in 2.1.1. It is
very likely that map! will change (and even more, be split into several
macros). Not much, but change none-the-less. Specifically, the state
keywords (e.g. :nvi, :n, :i) will be removed in favor of a :state
property that takes a list, e.g. (normal visual insert).

In any case, both map! and general are also relatively expensive
compared to define-key and evil-define-key* (and the new define-key!
macro), so use that when we can.

This also means changes to either API won't affect Doom's modules in the
long term.
2018-06-03 15:46:00 +02:00
Henrik Lissner
8f847682fa app/rss: fix invalid window errors #646
The popup system cleans up after closed popup windows, so a
delete-window following a kill-buffer will operate on a dead window,
causing this error.
2018-06-02 18:20:09 +02:00
Henrik Lissner
da416736ef
app/rss: minor refactor; new flag (+org) 2018-02-19 20:20:25 -05:00
Henrik Lissner
70c8e3cb52
app/rss: bind M-RET = open entry in browser 2018-02-17 04:56:27 -05:00
Henrik Lissner
9f471806fe
app/rss: add :popup rule for elfeed-entry windows 2018-02-17 04:56:16 -05:00
Henrik Lissner
d8be0a5f4c
app/rss: move default elfeed file 2018-02-17 04:56:03 -05:00
Henrik Lissner
8240771846
app/rss: fix +rss/quit & compact db 2018-02-17 04:55:35 -05:00
Sergey Trofimov
efce68bc29 Make elfeed-org ready at elfeed start. 2018-02-10 19:52:00 +03:00
Henrik Lissner
414383e5f4
Remove vestigial references to doom/{next,previous}-buffer 2018-02-04 05:05:40 -05:00
Henrik Lissner
b681917082
Remove/replace references to doom-popup-buffer 2018-01-06 03:27:23 -05:00
Henrik Lissner
8e875bfa0e
Phase out doom-kill-buffer 2018-01-04 03:01:35 -05:00
Henrik Lissner
649c9649c1
app/rss: elfeed-org after elfeed *and* org 2017-12-26 19:27:49 -05:00
Henrik Lissner
22a721fd15
app/rss: fix doom-popup-buffer call #288 2017-12-10 23:35:18 -05:00
Henrik Lissner
76a4ae459d
Fix obsolete (when|if)-let messages in Emacs 26 2017-12-10 14:49:52 -05:00
Henrik Lissner
a24e22cf57
cl-pushnew => push
Now that doom//byte-compile and doom//reload-autoloads always run in an
isolated Emacs session, there is little need to ensure idempotency of
the current session's state.
2017-11-10 00:19:05 +01:00
Henrik Lissner
be0e23686b
org/org: resolve +rss-elfeed-files later
This gives the user more time to change +org-dir.
2017-09-12 14:52:37 +02:00
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
af3b6ee7e0 app/rss: revise maps & popup rules 2017-05-14 10:12:41 +02:00
Henrik Lissner
0e7254d312 General cleanup + refactor 2017-04-17 02:20:07 -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
8f970eb1d8 Rearrange .local file structure (voids previous cache structure) 2017-04-16 20:36:15 -04:00
Henrik Lissner
813630fc56 app/rss: add +rss/quit command 2017-04-10 15:54:54 -04:00
Henrik Lissner
c14a61946b app/rss: don't hide mode-line in listing window + make =rss less opinionated 2017-04-08 01:31:09 -04:00
Henrik Lissner
dd8aa48887 app/rss: add +rss-dead-feeds function 2017-04-05 15:05:40 -04:00
Henrik Lissner
3d77989c66 app/rss: add elfeed-search-live-filter keybinding 2017-03-08 21:34:18 -05:00
Henrik Lissner
ae614c9c6f General cleanup + refactor 2017-03-08 14:41:32 -05:00
Henrik Lissner
ca8b3b18fa Add modules/app/rss (WIP) 2017-03-06 22:01:37 -05:00