Commit Graph

363 Commits

Author SHA1 Message Date
Henrik Lissner
a41f02e6e7
completion/ivy: turn off my "very magic" regex mod
This makes regex consistent between evil-search, ivy, ripgrep and ag.
2017-12-10 14:54:33 -05:00
Henrik Lissner
76a4ae459d
Fix obsolete (when|if)-let messages in Emacs 26 2017-12-10 14:49:52 -05:00
Henrik Lissner
879c695f3a
completion/ivy: remove unnecessary help remaps 2017-12-09 16:22:06 -05:00
Henrik Lissner
f8e8dbad8f
General minor refactor 2017-12-08 23:14:12 -05:00
Henrik Lissner
09743b96e1
Add C-SPC to +ivy@coo hydra to preview candidate 2017-12-08 23:14:12 -05:00
Henrik Lissner
85cfcba8ff
completion/ivy: fix :rgcwd not showing any results 2017-12-08 23:14:12 -05:00
Henrik Lissner
9d81bc5a8b
Major refactor: use-package-always-defer = nil & use :hook
Possibly breaking change: packages are no longer deferred by default.

Addresses #286
2017-12-08 23:14:11 -05:00
Henrik Lissner
ea80992433
Implement :ag, :agcwd, :rg, & :rgcwd commands for helm 2017-12-07 21:43:31 -05:00
Henrik Lissner
ea7f0ddcc3
Add no-byte-compile to completion/company unit test file 2017-11-09 00:34:32 +01:00
Henrik Lissner
5ce249eaec
Fallback engine detection for +ivy file search 2017-11-05 01:16:36 +01:00
Henrik Lissner
bac286e8e2
Remove blank autoload files 2017-11-05 01:16:35 +01:00
Henrik Lissner
6b9849fd57
Add conditional autoload/compile cookies #229 2017-11-05 01:16:35 +01:00
Henrik Lissner
13cf6b3fb6
completion/helm: fix recentf remapping 2017-10-23 19:59:48 +02:00
Amoriello Hutti
f27d1b954c disable company for gud-mode 2017-10-06 21:55:06 -07:00
Henrik Lissner
59f39576de
Don't yank line at point for blank project searches 2017-10-04 18:07:49 +02:00
Henrik Lissner
91137f83b1
Move ivy-hydra into completion/ivy 2017-09-24 17:10:47 +02:00
Henrik Lissner
53fc24f0e0
Minor refactor: use sharp-quote syntax 2017-09-17 22:24:19 +02:00
Henrik Lissner
91783e0695
General refactor & cleanup 2017-09-15 14:37:20 +02:00
Henrik Lissner
55b9788351
ivy: fix void-variable counsel--git-grep-dir
Upstream updates replaced counsel--git-grep-dir with counsel--git-dir.
This broke a couple project-search utilities in doom.
2017-09-08 16:58:03 +02:00
Henrik Lissner
9e13ce0536
Revert deferred ivy-mode 2017-09-04 02:38:29 +02:00
Henrik Lissner
126beba8dc
recentf => recentf-open-files
recentf does not exist.
2017-09-04 02:37:29 +02:00
Henrik Lissner
d2d71795e5 Merge branch 'develop'
* develop: (64 commits)
  Prepare for v2.0.5
  Temporarily disable doom-themes-visual-bell-config
  Fix neotree always changing root
  Update changelog
  Fix wrong-type-argument error from +org/insert-item
  Make +ivy-buffer-transformer autoloadable
  General refactor & cleanup
  Correct troubleshooting link in README
  org: set org-ellipsis to downward chevron
  Add elfeed-(show|search)-mode to evil-snipe-disabled-modes
  Autoload json library
  Rethink smartparens config #181
  README: expand troubleshooting
  Fix wiki links in README (again)
  Correct intro in README
  Fix wiki links in README
  Prevent private commands from affecting projectile cache
  Remove recentf-filename-handlers fix for projectile-recentf-files
  lang/sh: remove unused setup.sh
  Convert +ivy/switch-buffer to transformers + add mode icons #169
  ...
2017-09-03 23:32:23 +02:00
Henrik Lissner
c7957c9321
Make +ivy-buffer-transformer autoloadable 2017-09-02 20:28:04 +02:00
Henrik Lissner
d28c64b4fa
General refactor & cleanup 2017-09-02 16:39:51 +02:00
Henrik Lissner
8e0e4d67b1
Convert +ivy/switch-buffer to transformers + add mode icons #169 2017-08-21 21:54:12 +02:00
Henrik Lissner
cbabf6849c
Standardize module READMEs 2017-08-21 20:13:31 +02:00
Brandon Orther
e07972cffb Gracefully handle +ivy-tasks match errors
When trying to use +ivy-tasks in one of my projects it was failing w/ error:
`(Stack overflow in regexp matcher)`. This was due to ripgrep searching a folder
in the project root containing a minified bootstrap CSS source map file (which
had a `TODO:` in it). Since that file was a single line of text concatenated
together, the regex was getting passed ~540KB of text.

To make it easier to recognize what is causing +ivy-tasks to fail I wrapped the
failing code in `condition-case-unless-debug` and report the error and the file
causing the error using `message!`. So now if there is a failure during the
extraction of task from the search cmd's results it moves onto the next and
alerts the user in separate pop-up.

To avoid including the bootstrap file in the ripgrep search result, I added a
`.ignore` file to the project that tells `rg` to ignore it.

NOTE: I was surprised that this problem file was include in the ivy-tasks search
because I expected the search to respect projectile ignore settings. Respecting
projectile's ignored/unignored files and directories wouldn't be too difficult
considering projectile provides a robust collection of functions to help support
this. Also projectile's `projectile-ag` function is a great reference.
2017-08-15 00:37:24 -07:00
Henrik Lissner
edeea02de3
Refactor +ivy--file-search & +ivy docstrings 2017-07-08 15:03:23 +02:00
Henrik Lissner
ddfcf11819
Remove current buffer from +ivy/switch-buffer #144 2017-07-08 13:42:21 +02:00
Henrik Lissner
32069eefd3
Add sharp-quote to function symbols 2017-07-07 14:44:49 +02:00
Henrik Lissner
0f76a2bc3d
completion/ivy: remove s.el dependency 2017-07-07 14:44:32 +02:00
Henrik Lissner
1fe1758335
Ensure idempotent company-dict init 2017-06-30 03:19:09 +02:00
Henrik Lissner
3801da0db1
Add company-(dabbrev|ispell) to default backends
Partially addresses #134
2017-06-30 03:18:31 +02:00
Henrik Lissner
0b3db8fcdd
Add completion/company test 2017-06-28 23:36:18 +02:00
Henrik Lissner
0a34d8627e
Fix duplicate backends by :company-backend #135 2017-06-28 23:10:53 +02:00
Henrik Lissner
451f2d6301
Ensure idempotence when setting company-transformers 2017-06-28 16:29:10 +02:00
Henrik Lissner
a7dc91e7bf
Improve :company-backend setting according to #125
(set! :company-backend MODES &rest BACKENDS)
2017-06-28 12:26:49 +02:00
Henrik Lissner
822c78554f
destructuring-bind => cl-destructuring-bind 2017-06-25 02:04:50 +02:00
Henrik Lissner
18ad96d156
Fix :company-backend 2017-06-24 16:43:39 +02:00
Henrik Lissner
c8757b85f7 Fix :company-backend not overwriting past settings
In case you want to alter a mode's company-backend later or in a private
module.
2017-06-24 02:25:15 +02:00
Henrik Lissner
14e69ca830
Fix max-lisp-eval-depth in :company-backend #115
Mode was inadvertantly run like a function in the :company-backend
setting macro.
2017-06-19 12:08:38 +02:00
Henrik Lissner
928812da8a
Make def-setting! behave more like defmacro
set! used to aggressively evaluate its arguments (at expansion-time),
even if placed inside an after! block. This causes unavoidable errors if
those arguments use functions/variables that don't exist yet.

Fixes #112
2017-06-19 00:32:44 +02:00
Henrik Lissner
9ccffc718e
Fix +ivy/switch-buffer when buffer-list is empty 2017-06-16 02:10:33 +02:00
Henrik Lissner
4984a548d1
Refactor DOOM init & add new init hooks
+ Add doom-init-hook and doom-post-init-hook to simplify Emacs init
  hooks into less ambiguous ones.
+ Attach former after-init-hook and emacs-startup-hook hooks to new doom
  init hooks.
+ Vastly improves daemon and tty support: preventing incorrect colors
  from bleeding across face class barriers, and into GUI Emacs and vice
  versa, when spawned with emacsclient.
+ Fix persp-mode breaking Emacs daemon, and ensuring that initialization
  is done properly in terminal Emacs (and emacsclient frames).
2017-06-12 00:37:14 +02:00
Henrik Lissner
bab738c56c
Move helm popup settings to core-popups 2017-06-10 01:53:51 +02:00
Henrik Lissner
e7b08082fd
Remove unused/redundant ivy bindings 2017-06-09 19:44:41 +02:00
Henrik Lissner
0bc182ef1a
Refactor helm config; fix remaps; move personal binds 2017-06-09 19:44:02 +02:00
Henrik Lissner
a0a7f3ec42
Fix helm-swoop 2017-06-09 15:40:32 +02:00
Henrik Lissner
f65ae53e2e
ivy: remap apropos; load ivy-mode sooner; refactor 2017-06-09 13:38:54 +02:00
Henrik Lissner
e8e9f7683a
Update completion/helm 2017-06-09 13:37:07 +02:00
Henrik Lissner
102c7df400
Fix #100: void variables in +ivy--get-buffers 2017-06-09 13:16:30 +02:00
Henrik Lissner
9b47d987aa
Add +company/dabbrev-code-previous 2017-06-09 01:09:20 +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
117e55f0c2 General cleanup + refactor 2017-05-29 01:05:34 +02:00
Henrik Lissner
fbe782df22 Heavily redesign keybinding design
+ SPC and SPC m as leader/localleader (spacemacs-ey)
+ Move all custom keybindings to private +bindings.el file
+ Redesign+rearrange keybindings
2017-05-28 02:48:20 +02:00
Henrik Lissner
717d0ec06f completion/ivy: revise documentation + slight refactor 2017-05-28 02:48:20 +02:00
Henrik Lissner
41a288d21d Refactor minibuffer bindings
+ conform their function names to naming conventions
+ place ivy-specific version in ivy autoloads
2017-05-26 20:22:45 +02:00
Henrik Lissner
10ea06b661 General cleanup + refactor 2017-05-25 20:12:43 +02:00
Henrik Lissner
e1f60b2bfd Update READMEs & add new ones 2017-05-25 20:09:12 +02:00
Henrik Lissner
99bf1c04fb Don't let derived modes inherit company backends 2017-05-23 21:19:15 +02:00
Henrik Lissner
5c34732266 +ivy/tasks: ag as a fallback 2017-05-20 18:40:13 +02:00
Bryan Gilbert
7ec980cb97 disable ivy magic slash non-match action 2017-05-19 05:45:11 -04:00
Henrik Lissner
7f385e6d6e private/hlissner: add q/Q help-mode-map bindings 2017-05-17 21:07:01 +02:00
Henrik Lissner
aeb2f23a3e completion/ivy: remove unused +ivy/kill-ring
It was also redundant with counsel-yank-pop
2017-05-16 18:05:39 +02:00
Henrik Lissner
dbceec4149 Refactor + rearrange popup rules 2017-05-15 20:26:33 +02:00
Henrik Lissner
28ba0607a5 completion/ivy: fix M-RET opening result in other-window 2017-05-14 17:40:33 +02:00
Henrik Lissner
6f6680489a completion/ivy: flexible column width for +ivy/tasks 2017-05-14 13:49:11 +02:00
Henrik Lissner
877ae26a96 completion/ivy: rewrite file search (:find => :ag/:rg) 2017-05-12 11:50:05 +02:00
Henrik Lissner
3f5f6752a2 completion/ivy: tweak README.org (again) 2017-05-10 14:25:24 +02:00
Henrik Lissner
08052b0db0 completion/ivy: tweak README.org 2017-05-10 14:20:05 +02:00
Henrik Lissner
7a939a945b Add compltion/ivy/README.org 2017-05-10 14:14:10 +02:00
Henrik Lissner
7310459f76 completion/ivy: adjust ivy & ivy-occur window heights 2017-05-10 14:05:52 +02:00
Henrik Lissner
d99519d077 completion/ivy: fewer false positives with +ivy/tasks 2017-05-10 14:05:09 +02:00
Henrik Lissner
2a6295a123 completion/ivy: refactor for consistency 2017-05-10 08:40:02 +02:00
Henrik Lissner
bfd79e78ce completion/ivy: fix +ivy/tasks, add :todo & +ivy:todo 2017-05-10 08:39:40 +02:00
Henrik Lissner
e265431507 General refactor, cleanup & commenting 2017-05-10 05:28:50 +02:00
Henrik Lissner
57a74b1761 completion/ivy: change +ivy:file-search
+ Removed literal search
+ Only escapes inserted selection
+ BANG now means: don't respect .gitignore
+ rg: use smart-case (-S) instead of case insensitivity (-i)
2017-05-10 05:25:40 +02:00
Henrik Lissner
f05819c85f completion/ivy: refactor ag other-window action; replace def-counsel-action macro 2017-05-10 05:20:54 +02:00
Henrik Lissner
db1deb4a18 Fix M-z in minibuffer (ivy/evil/etc) 2017-05-06 23:01:09 +02:00
Henrik Lissner
5d83fe83ca Prevent 'Text is read-only' monopolizing minibuffer (ivy/evil/minibuffer) 2017-05-06 22:56:43 +02:00
Henrik Lissner
b632319796 completion/ivy: add docstrings to evil funcs 2017-05-06 22:55:41 +02:00
Henrik Lissner
ce9fdaf839 completion/ivy: update ivy-minibuffer-map & +ivy/kill-ring docstring 2017-05-06 16:45:48 +02:00
Henrik Lissner
434a5efeda completion/ivy: switch from ag to ripgrep 2017-05-06 16:45:48 +02:00
Henrik Lissner
d20c8045ab General cleanup 2017-04-25 23:01:45 -04:00
Henrik Lissner
3daa1576ba completion/company: TAB auto-completion in comint/term buffers 2017-04-22 17:12:52 -04:00
Henrik Lissner
139cae6083 completion/company: silence company-statistic-mode load-file call 2017-04-17 17:05:17 -04:00
Henrik Lissner
dc9a7c9780 Refactor out more s.el dependency 2017-04-17 02:30:54 -04: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
f9ddc53bfc completion/ivy: escape regexp for literal ag searches 2017-04-11 09:25:04 -04:00
Henrik Lissner
9c4ae61476 Add modules/feature/jump (WIP) 2017-03-15 22:59:49 -04:00
Henrik Lissner
f0eeaec5a0 completion/ivy: don't prepend describe-* or M-x with ^ 2017-03-08 21:34:52 -05:00
Henrik Lissner
caf2b7f4f3 completion/company: general refactor + key rebinding + cleanup 2017-03-04 00:02:19 -05:00
Henrik Lissner
22e3baf184 Add minor-mode-specific snippets & company-dict dictionaries 2017-03-02 18:28:46 -05:00
Henrik Lissner
3bebdb68a3 completion/ivy: add other-window behavior to +ivy/switch-buffer 2017-02-24 20:03:08 -05:00
Henrik Lissner
33c88d4f82 Revert macros to ...! name convention (elisp doesn't like @...) 2017-02-23 00:06:12 -05:00
Henrik Lissner
bf691bec14 completion/ivy: recenter after counsel-ag + refactor 2017-02-22 17:18:04 -05:00
Henrik Lissner
38c3ef744d completion/ivy: refactor 2017-02-22 04:27:23 -05:00
Henrik Lissner
ebb30b1512 Move swiper config from core-editor to completion/ivy 2017-02-21 16:03:51 -05:00
Henrik Lissner
fe4429fa40 completion/helm: update for v2 (untested) 2017-02-21 03:46:22 -05:00
Henrik Lissner
fd93e705b4 General cleanup, refactor and documentation 2017-02-21 03:45:24 -05:00
Henrik Lissner
f1b2c18476 core-popups: add :autokill popup property; update popup rules 2017-02-21 01:08:57 -05:00
Henrik Lissner
e129caf931 completion/ivy: recenter after following imenu links 2017-02-21 00:53:00 -05:00
Henrik Lissner
22a1b2b41a completion/ivy: fix key remapping; custom ivy switch-buffer commands work now 2017-02-21 00:45:50 -05:00
Henrik Lissner
5374d96781 Make buffer library (and ivy switch-buffer commands) workspace-centric, rather than project centric 2017-02-21 00:43:15 -05:00
Henrik Lissner
b1828d458b completion/company: refactor 2017-02-20 20:43:22 -05:00
Henrik Lissner
9d30f95972 Move wgrep+ivy popup def to ivy module 2017-02-20 20:43:08 -05:00
Henrik Lissner
f0adef1b01 Add modules/completion/ido 2017-02-20 00:26:08 -05:00
Henrik Lissner
5c13f2eced Update modules/completion/ivy 2017-02-20 00:26:08 -05:00
Henrik Lissner
2b027c0052 Add modules/completion/company 2017-02-20 00:26:08 -05:00
Henrik Lissner
b8f5d549ea Add modules/completion/helm 2017-02-20 00:26:07 -05:00
Henrik Lissner
54d58c358e Improve v2.0 compatibility for modules/completion/ivy 2017-02-20 00:26:07 -05:00
Henrik Lissner
4978af4f76 Add modules/completion/ivy 2017-02-20 00:26:07 -05:00