Commit graph

120 commits

Author SHA1 Message Date
Henrik Lissner
04acb8fa98
completion/company: +auto by default
Questions regarding "completion not working" are very common, so the
+auto flag has been removed and idle completion enabled by default.
2019-05-04 19:13:25 -04:00
Henrik Lissner
77e4cc4d58
💥 Remove :feature category
:feature was a "catch-all" category. Many of its modules fit better in
other categories, so they've been moved:

- feature/debugger -> tools/debugger
- feature/evil -> editor/evil
- feature/eval -> tools/eval
- feature/lookup -> tools/lookup
- feature/snippets -> editor/snippets
- feature/file-templates -> editor/file-templates
- feature/workspaces -> ui/workspaces

More potential changes in the future:

- A new :term category for terminal emulation modules (eshell, term and
  vterm).
- A new :os category for modules dedicated to os-specific functionality.
  The :tools macos module would fit here, but so would modules for nixos
  and arch.
- A new :services category for web-service integration, like wakatime,
  twitter, elfeed, gist and pastebin services.
2019-04-24 18:16:04 -04:00
Henrik Lissner
5b43b2840b
Fix RET/TAB company keybinds in GUI Emacs 2019-04-01 13:12:03 -04:00
Andrew Whatson
979c201bf1 Fix latest company-box all-the-icons configuration 2019-03-12 23:23:19 +10:00
Henrik Lissner
1f23eecdc8
(Try to) homogenize TAB/RET/ESC keybinds
Map them to \t/^M/^[, rather than [tab], [return] and [escape].
2019-03-08 04:25:45 -05:00
Henrik Lissner
50de8a07dd
Reduce company+evil keymap conflicts #903
company-active-map and company-search-map were losing to global evil
state keymaps, causing an odd issue with the insert keybind for C-j was
overriding C-j (company-select-next) when company was active and
completing.
2019-03-02 02:04:28 -05:00
Henrik Lissner
e11ea611cf
Move company-dict-dir to DOOMDIR/dicts 2019-03-02 01:38:54 -05:00
Henrik Lissner
f45073880b
Use new company-box-show-single-candidate option
And remove old hack since sebastiencs/company-box#40 was merged.
2019-01-22 19:29:13 -05:00
Henrik Lissner
9f2dff02fa
Rethink config/default & keybindings
+ Added +smartparens flag to config/default for default smartparens
  config.
+ Fixed +tng support for completion/company.
+ Removed super keybinds (for all but MacOS)
+ Moved "keybind fixes" to config/default/config.el (these should be
  universally available).
+ Replaced both +default-repeat-forward-key and +default-repeat-backward-key
  with +default-repeat-keys. If this variable is nil, the universal
  repeat motions won't be bound.
2018-12-24 00:04:50 -05:00
Henrik Lissner
d21887149f
Minor refactor/reformatting 2018-10-06 20:44:25 -04:00
Henrik Lissner
b4b19c40bf
company-capf = universal default company-backend
Also removes company-files from sly-mrepl-mode, because sly's capf
completion includes file completion.
2018-10-03 11:18:58 -04:00
Henrik Lissner
5a079c7fd6
Enable company-mode in comint-modes 2018-09-23 16:30:23 -04:00
Henrik Lissner
5ef94de541 Minor refactor, reformat & comment revision 2018-09-18 21:39:54 -04:00
Henrik Lissner
daccdc3e53
completion/company: fix lsp icons
Fixes a wrong-type-argument error from company-box-frontend.

Also reformats elisp company-box-icons-elisp icon list.
2018-09-16 18:19:34 -04:00
Henrik Lissner
7d3ffdff06
Remove third line in section headers
This is truly important stuff. We've saved many lives with this update.
2018-09-09 09:58:19 -04:00
Henrik Lissner
3948704c69
completion/company: add +tng flag & support 2018-08-25 19:54:11 +02:00
Henrik Lissner
808c1356df
Don't sort company candidates by default 2018-08-08 23:37:30 +02:00
Henrik Lissner
c385ed7708
Set no default company-backends
No magic. Let the user decide exactly what backends to use for any given
buffer.
2018-08-07 21:31:34 +02:00
Henrik Lissner
316a9f06b2
completion/company: add company-prescient 2018-08-04 02:14:43 +02:00
Henrik Lissner
533cb13a02
Append default backends to buffer-local backends 2018-07-30 12:57:26 +02:00
Henrik Lissner
22aeaec399
Refactor how company-backends are set and stored
Company backends are now built from an alist (+company-backend-alist),
which can be manipulated through set-company-backend!. Backends can now
be set to all children of a parent mode (text-mode, prog-mode, etc),
like so:

  (set-company-backend! :derived 'text-mode 'company-dabbrev)

or only for an exact major-mode:

  (set-company-backend! 'markdown-mode 'company-dabbrev-code)

Backends cascade. So combining the two examples above will cause
company-backends in a markdown-buffer (which is derived from text-mode)
to be (company-dabbrev-code company-dabbrev).
2018-07-30 03:43:42 +02:00
Henrik Lissner
80a3c9bf62
Fix company-box not showing lone candidates
Revert this once sebastiencz/company-box#40 is merged.
2018-07-05 21:45:44 +02:00
Henrik Lissner
dfed54c7ad
Shrink oversized company-box icons
This would cause lines in company-box frames to be too large, making the
last candidate seem cut off by the frame edge.
2018-07-05 21:40:34 +02:00
Henrik Lissner
2e29455cb4
Disable company-mode in eshell-mode
It appears to be incompatible with pcomplete, causing random errors and
whitespace insertion at odd times.
2018-06-29 01:51:49 +02:00
Henrik Lissner
029824b6c1
Update company-box icons
Inspired by @fuxialexander's config
2018-06-27 19:13:54 +02:00
Henrik Lissner
1ef581d376
Load company (+auto) on post-self-insert-hook
This is a little later than pre-command-hook, but makes more sense.
Needs more testing though!
2018-06-05 12:04:43 +02:00
Henrik Lissner
cd0e9826ac
Remove company-statistics package
Was a little slow, not terribly helpful and would clash with certain
company backends (like company-lsp).
2018-06-03 23:28:44 +02:00
Henrik Lissner
0018d1c809
Change default company-backends to capf+yasnippet
And list their results separately.
2018-06-03 23:27:06 +02:00
Henrik Lissner
80bd587d87
Move :company-backend setting to autoload.el
This decouples the company module from module load-order.
2018-06-01 14:54:13 +02:00
Henrik Lissner
3b85720c9c
Fix incorrect uses of add-to-list 2018-05-28 12:26:03 +02:00
Henrik Lissner
09cb4f6716
Major refactor & optimization of how modules load their packages
Now that we are loading package autoloads files (as part of the
generated doom-package-autoload-file when running make autoloads), many
:commands properties are redundant. In fact, many def-package! blocks
are redundant.

In some cases, we can do without a config.el file entirely, and can move
into the autoloads file or rely entirely on package autoloads.

Also, many settings have been moved in their module's autoloads files,
which makes them available ASAP; their use no longer depends on module
load order.

This gained me a modest ~10% boost in startup speed.
2018-05-25 00:46:16 +02:00
Henrik Lissner
94f9e43f25
Rewrite :defer semantics
:defer now supports a hook, a cons cell with (SYMBOL . INTEGER) where
SYMBOL is a hook and INTEGER is a number of idle seconds before the
package is autoloaded, or just the integer (as per the default behavior
of :defer).

Also fixes an issue where switch-buffer-deffered packages (like
smartparens) wouldn't load.
2018-05-15 10:54:45 +02:00
Henrik Lissner
a631c10d05
Exploit new :defer input|buffer across various modules 2018-05-14 20:45:47 +02:00
Henrik Lissner
1ee9a1893f
completion/company: company-frontends bug fixed upstream 2018-05-10 19:27:14 +02:00
Henrik Lissner
7d7c978877
completion/company: enable company-mode in eshell-mode 2018-05-08 16:18:30 +02:00
Henrik Lissner
7ee689c57c
completion/company: reduce contrast of company-box icon colors 2018-04-23 04:30:44 -04:00
Henrik Lissner
2b0c681d7a
completion/company: refactor icons & add colors 2018-04-23 04:24:42 -04:00
Henrik Lissner
779184a9ee
completion/company: remove company-quickhelp
Quickhelp is unreliable and doesn't look very good. I'm searching for an
alternative.
2018-04-23 03:42:19 -04:00
Henrik Lissner
5e007ada08
completion/company: use company-pseudo-tooltip-frontend instead 2018-04-23 02:37:58 -04:00
Henrik Lissner
aef9724324
Add doom*shut-up advisor to core-lib 2018-04-23 00:03:28 -04:00
Henrik Lissner
97812583f0
completion/company: add company-box config & +childframe flag 2018-04-22 23:41:53 -04:00
Henrik Lissner
6bdaf2afbb
completion/company: refactor +auto implementation 2018-04-22 23:41:20 -04:00
Henrik Lissner
c583a89a15
completion/company: allow minor modes in :company-backend 2018-04-22 23:40:09 -04:00
Henrik Lissner
148f0a6e34
completion/company: set variables sooner (easier to override) 2018-04-18 18:22:23 -04:00
Henrik Lissner
c788224946
completion/company: company-tooltip-limit = 14 2018-02-02 20:47:32 -05:00
Henrik Lissner
08b2cc8ea3
completion/company: add +auto flag (for as-you-type completion) 2018-02-01 16:38:28 -05:00
Henrik Lissner
2d9e63d5bb
General & minor refactoring 2018-01-07 00:15:58 -05:00
Amoriello Hutti
f27d1b954c disable company for gud-mode 2017-10-06 21:55:06 -07: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