Commit Graph

55 Commits

Author SHA1 Message Date
e24b8cd1d1 Slim down from lang/data
+ Removes jsonnet, graphql, dhall & protobuf packages from the module.
+ Removes +data-vagrant-mode project minor mode (unused).

I'm phasing out the lang/data module. Its original purpose was to be for
data interchange formats, like JSON, but over time it became the dumping
ground for languages with no clear defining feature.

These packages are being removed first because their configs are
non-existent or so trivial that it offers nothing a user couldn't set up
themselves.

graphql and jsonnet might get heir own modules (or jsonnet might be
gated behind a flag in the :lang json module), but for now they gotta
go.

fixup! Remove jsonnet, graphql, dhall & protobuf modes from lang/data
2020-04-23 23:56:17 -04:00
4a8c4815f1 Add :lang yaml module
Removes yaml-mode from :lang data and adds LSP support (#2502).

Closes #2502

Co-authored-by: Seong Yong-ju <sei40kr@gmail.com>
2020-04-23 23:56:14 -04:00
b151abfd34 Add :lang json module
Removes json-mode from :lang data and adds LSP support (#2502).
2020-04-23 23:28:50 -04:00
0fa93a089f Bump :lang
Alexander-Miller/company-shell@HEAD -> Alexander-Miller/company-shell@52f3bf2
FStarLang/fstar-mode.el@HEAD -> FStarLang/fstar-mode.el@aaaf256
JuliaEditorSupport/julia-emacs@5238f9a -> JuliaEditorSupport/julia-emacs@1c122f1
Kungsgeten/org-brain@6b7fced -> Kungsgeten/org-brain@cae8e22
OVYA/php-cs-fixer@6540006 -> OVYA/php-cs-fixer@95eace9
ProofGeneral/PG@2a17093 -> ProofGeneral/PG@9196749
aaronjensen/eslintd-fix@98c669e -> aaronjensen/eslintd-fix@0c43114
abicky/nodejs-repl.el@8b90948 -> abicky/nodejs-repl.el@6fad7d7
abo-abo/org-download@3c48102 -> abo-abo/org-download@b96fd7b
agda/agda@74d9fd5 -> agda/agda@ff9173e
alf/ob-restclient.el@c5c22e6 -> alf/ob-restclient.el@f7449b2
ananthakumaran/tide@1878a09 -> ananthakumaran/tide@3b45610
bastibe/org-journal@9d40f62 -> bastibe/org-journal@664c08e
brotzeit/rustic@373f5a1 -> brotzeit/rustic@61032ea
clojure-emacs/cider@7437c67 -> clojure-emacs/cider@52dcc60
clojure-emacs/clj-refactor.el@e24ba62 -> clojure-emacs/clj-refactor.el@92d3723
cpitclaudel/company-coq@6e8bc2e -> cpitclaudel/company-coq@f9dba9d
cython/cython@f6bf6aa -> cython/cython@48dc1f0
defunkt/coffee-mode@86ab8aa -> defunkt/coffee-mode@35a41c7
dgutov/robe@8190cb7 -> dgutov/robe@68503b3
diml/utop@7c99d8c -> diml/utop@30c77ce
dzop/emacs-jupyter@d4b06c5 -> dzop/emacs-jupyter@de7af25
emacs-ess/ESS@a2be8cb -> emacs-ess/ESS@625041a
emacs-lsp/lsp-haskell@6d481f9 -> emacs-lsp/lsp-haskell@582fa27
emacs-lsp/lsp-java@dbeeee9 -> emacs-lsp/lsp-java@6efb741
emacs-php/php-mode@cade4ce -> emacs-php/php-mode@b5d9988
emacs-php/phpactor.el@5ccf65d -> emacs-php/phpactor.el@31fe2ea
emacs-php/phpactor.el@5ccf65d) -> emacs-php/phpactor.el@31fe2ea)
emacs-straight/csv-mode@fbf942e -> emacs-straight/csv-mode@6353374
emacs-straight/org-mode@0a8faec -> emacs-straight/org-mode@ba68555
emacs-typescript/typescript.el@a0f2c3e -> emacs-typescript/typescript.el@102587e
emacsorphanage/gnuplot@a406143 -> emacsorphanage/gnuplot@f0001c3
erlang/otp@c15eb5f -> erlang/otp@3065fbf
factor/factor@a62ea78 -> factor/factor@497d649
felipeochoa/rjsx-mode@014c760 -> felipeochoa/rjsx-mode@0061587
fxbois/web-mode@d1b6660 -> fxbois/web-mode@b0bb4ab
greghendershott/racket-mode@5f396fa -> greghendershott/racket-mode@bd4c8cf
haskell/haskell-mode@4a87d72 -> haskell/haskell-mode@7032966
jaor/geiser@645e477 -> jaor/geiser@83ad875
joaotavora/sly@cfecd21 -> joaotavora/sly@1382bda
jorgenschaefer/emacs-buttercup@178c795 -> jorgenschaefer/emacs-buttercup@b360e35
leanprover/lean-mode@f26e40d -> leanprover/lean-mode@65b55b1
leanprover/lean-mode@f26e40d -> leanprover/lean-mode@65b55b1
ledger/ledger-mode@a514953 -> ledger/ledger-mode@7d78645
mgyucht/jsonnet-mode@2b90b4e -> mgyucht/jsonnet-mode@d8b486c
necaris/conda.el@814439d -> necaris/conda.el@335474e
nonsequitur/inf-ruby@e4ae089 -> nonsequitur/inf-ruby@41e5ed3
ocaml-ppx/ocamlformat@dba4487 -> ocaml-ppx/ocamlformat@5282e04
ocaml/dune@f3df7ab -> ocaml/dune@1944d0f
ocaml/merlin@f6954e9 -> ocaml/merlin@37e38e4
polymode/poly-R@0443c89 -> polymode/poly-R@51ffeb6
polymode/polymode@3eab3c9 -> polymode/polymode@44265e3
purcell/flycheck-ledger@2065bea -> purcell/flycheck-ledger@628e25b
purescript-emacs/psc-ide-emacs@2a93944 -> purescript-emacs/psc-ide-emacs@7fc2b84
s-kostyaev/ivy-erlang-complete@7d60ed1 -> s-kostyaev/ivy-erlang-complete@c443dba
seagle0128/grip-mode@1a61bb7 -> seagle0128/grip-mode@9615c47
skeeto/skewer-mode@123215d -> skeeto/skewer-mode@e5bed35
tpapp/julia-repl@b11a572 -> tpapp/julia-repl@5fa04de
wwwjfy/emacs-fish@688c82d -> wwwjfy/emacs-fish@db257db
xuchunyang/elisp-demos@bec206b -> xuchunyang/elisp-demos@0d74766
yjwen/org-reveal@0d947cb -> yjwen/org-reveal@ea8b502
2020-03-27 16:57:56 -04:00
a9402cfb55 Fix #2373: bring back package pinning
This needs some serious refactoring...
2020-01-25 19:02:00 -05:00
4cc14389e8 PIN ALL THE PACKAGES 2020-01-14 22:32:11 -05:00
99cd52e70f 💥 Drop Emacs 25.x support
Emacs 26.1 is Doom's new minimum supported version

Closes #2026
2019-11-08 16:02:06 -05:00
af7f75089f lang/data: sync tab-width with mode indent vars 2019-10-21 09:39:54 -04:00
92a5b5fb93 lang/data: use conf-toml-mode instead, if available 2019-10-20 10:58:52 -04:00
3b7711420f General comment revision & cleanup 2019-09-06 00:25:35 -04:00
720a8abf17 use emacsmirror for cmake-mode and protobuf-mode
to avoid giant git repos
2019-08-13 09:40:23 -07:00
28a2d718c6 defer loading jsonnet-mode 2019-08-06 14:42:46 -04:00
df9509a298 minor fixes 2019-08-06 14:34:22 -04:00
f95c8bf2c8 Feature: Added support for jsonnet 2019-08-06 13:53:04 -04:00
76cacb5bfe 💥 Rename def-package! -> use-package!
Calling this pivotal macro "def-package!" has frequently been a source
of confusion. It is a thin wrapper around use-package, and it should be
obvious that it is so. For this reason, and to match the naming
convention used with other convenience macros/wrappers, it is now
use-package!.

Also changes def-package-hook! -> use-package-hook!

The old macros are now marked obsolete and will be removed when straight
integration is merged.
2019-07-23 12:50:45 +02:00
10c808466f lang/data: improve nxml-mode support 2019-07-22 02:37:45 +02:00
060ede0e2e General, minor reformatting across the board
And an offering of blood to our great lord Byte Compiler-sama.
2019-07-22 02:37:45 +02:00
0a84d2f0a9 core-lib: add auto-minor-mode, revise def-project-mode!
- Adds the auto-minor-mode package to replace our in-house
  implementation.
- Merges associate! into the def-project-mode! macro because associate!
  on its own is less useful than auto-minor-mode-alist,
  auto-minor-mode-magic-alist or hooks.
- Changes the semantics of :modes and :add-hooks properties of
  def-project-mode!. Its arguments are evaluated as is; lists will need
  to be quoted.

squash! core-lib: remove associate! macro
2019-07-22 02:30:39 +02:00
92138dc8e2 Move mode-protobuf package to data module 2019-05-03 16:29:48 -03:00
c82faf7f10 General reformatting & minor refactors 2019-02-19 15:53:26 -05:00
43975d3cd4 lang/data: remove vimrc-mode
This package/mode isn't "data".

Relevant to #973
2019-02-19 15:53:23 -05:00
3f195614d9 Normalize :leader/:localleader keybinds
Evil states no longer apply to them. Also removes x-alt-keysym.
2018-12-23 23:54:27 -05:00
62212a4b94 Add tools/ansible 2018-09-11 22:42:05 +03:00
a64b06aa77 lang/data: remove dockerfile-mode
Now in tools/docker
2018-09-09 10:05:14 -04:00
c58077810d General refactor of modules
General code and comment improvements.

Also, removed the :desc's for csv-mode because map! is currently unable
to set which-key descriptions mode-locally, and should be avoided for
anything but global keybinds. This will be fixed when General is
introduced into Doom.
2018-09-09 09:58:20 -04:00
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
6b971e91b1 Remove dhall def-package block
dhall registers `\\.dhall\\'` in auto-mode-alist in its autoloads file, so this block is unnecessary.
2018-07-19 15:25:45 +02:00
e9207b09bb Add support for the dhall configuration language 2018-07-19 11:36:34 +02:00
f6dc6ac74e Refactor out map.el usage
After some profiling, it turns out map-put and map-delete are 5-7x
slower (more on Emacs 25) than delq, setf/alist-get and add-to-list for
small lists (under 250 items), which is exactly how I've been using
them.

The only caveat is alist-get's signature is different on Emacs 25, thus
a polyfill is necessary in core-lib.
2018-06-23 19:53:54 +02:00
e05d7cfee0 Change flycheck initialization strategy
Initialize it globally and turn it off where needed, instead of enabling
it on demand. Also fixes void-function: flycheck-mode errors when
:feature syntax-checker is disabled. This is experimental.

Indirectly fixes #710
2018-06-22 01:49:20 +02:00
9f0ebe42e8 Replace :electric with set-electric-rules!
And general refactor of the emacs/electric-indent module.

Also updates (set! :electric ...) references in various :lang modules
2018-06-15 13:32:07 +02:00
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
3bdb3d4e5d Update uses of associate! 2018-06-01 02:20:00 +02:00
27cee0bf5a Remove redundant hexl-mode block 2018-05-25 18:33:30 +02:00
4456907ad0 Merge branch 'develop' into patch-csv 2018-05-25 18:31:38 +02:00
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
48c65c2a2d Add csv mode to data 2018-05-17 08:47:38 +10:00
6b573bc66b Refactor :lang auto-mode-alist entries 2018-05-07 19:26:31 +02:00
23d887303d lang/data: .gql => graphql-mode 2018-05-07 19:26:31 +02:00
fd3d2ebf0d lang/data: alphabetize package configs 2018-04-03 04:18:11 -04:00
7c5832c285 lang/data: add graphql-mode 2018-04-03 04:16:40 -04:00
6c4e048c23 General refactor & cleanup 2018-02-14 07:47:22 -05:00
294f858875 lang/data: enable flycheck-mode for json-mode 2018-01-28 04:29:10 -05:00
d0fcb23314 Replace feature/eval build system with def-menu! 2017-10-03 02:58:09 +02:00
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
89db7ac2b9 lang/data: fix hexl-mode 2017-06-08 11:16:44 +02:00
0e7254d312 General cleanup + refactor 2017-04-17 02:20:07 -04:00
648c4c1d3b Update lang modules' :build settings 2017-04-07 01:46:33 -04:00
0abc4cc60d Fix #37: remove aggressive electric indentation 2017-03-15 12:57:54 -04:00
3ac1d382be Fix project mode definitions 2017-03-02 18:28:46 -05:00