Commit Graph

71 Commits

Author SHA1 Message Date
Arif Er 00f9ab19ac chore: update copyright headers to 2022
The script used to identify and update the change is added into the GitHub
workflows script directory. A workflow action can be created to trigger the
script to update the headers on the first of every new year. Possibly a task for
a consequent PR.
2022-06-03 17:32:20 +02:00
jgart 2218a5e286
common-lisp: Fix typo (#15507) 2022-05-11 02:34:17 -04:00
Maximilian Wolff 3f795aebdb [parinfer] Remove path hack and obsolete layer specific hooks 2021-04-15 20:51:31 +00:00
syl20bnr 97cd83e169 Apply GPLv3 terms explicitly to all elisp files 2021-03-25 22:59:32 -04:00
syl20bnr d55a9e2e67 Update header for year 2021 2021-03-25 22:59:32 -04:00
Maximilian Wolff 8f854da649
Make auto-completion activate/deactivate smartparens properly
auto-completion did not respect the smartparens-mode
defined in the dotfile when disabling/restoring it.

In addition when starting a yasnippet expansion
smartparens-mode was not properly restored resulting
in having smartparens always disabled.

This PR tries to fix both issues. Though judging from
the comments this could kill `hippie-expand` expansion.
However as yasnippet is more common I think this is
to be preferred.
2021-03-16 22:21:40 +01:00
Maximilian Wolff 9ff2004706 Avoid special handling of smartparens in lisp layers
emacs-lisp and common-lisp-layer had both their own
logic to work with smartparens including manually
requiring it.

This PR makes them use the standard functions. In
addition it replaces the manual require with proper
autoloading of smartparens.
2021-03-16 18:54:18 +00:00
Robert O'Connor 82ba73a1c0
update copyright to 2020 2020-09-23 21:25:01 +02:00
madand e1ad035513 Improve rainbow-identifiers experience for Elisp and CL
Make rainbow-identifiers not colorize special operators and macros, so they
always visually stand out. Rationale behind this change is that special
operators and macros in Lisp may be considered "syntax" elements, so it makes
sense to have them visually distinguished at all times.
2020-01-20 11:37:20 +01:00
emacspace c7c348a676 documentation formatting: Sun May 26 20:58:52 UTC 2019 2019-05-27 01:23:35 +03:00
Anton-Latukha f6660f82d4
Switch to the new layers generator 2019-05-15 21:08:21 +03:00
Anton-Latukha 2ee74f55da layers: lang: new structure: add DSL (&markup), framework, util
layers: lang: mv framework -> programming/framework

layers: programming: framework: upd
2019-05-15 21:05:09 +03:00
syl20bnr 949b194bbd [common-lisp] Document new key bindings for evaluation 2019-05-12 09:54:39 -04:00
JAremko 77c680160e Add placeholder tags 2019-05-05 20:40:47 +03:00
Lukas Woell 1d77bf1046 Add eval-thing-at-point functions to Common Lisp Layer
Add functions equivalent to the custom eval-funtions of the elisp layer to the
common-lisp layer.

The functions are copied from the elisp layer only `eval-last-sexp' was replaced
with its slime equivalent `slime-eval-last-expression'.

Keybindings are chosen as they are in the elisp layer.
2019-04-09 23:29:09 +02:00
emacspace 45276bd96f documentation formatting: Wed Dec 5 03:03:03 UTC 2018 2018-12-04 22:06:14 -05:00
duianto ee811f7b13 Unify packages list parentheses style
problem:
some layer packages lists have the open and closing parentheses on the same line
as the first and last listed package, but most seem to have them on a separate
lines.

solution:
put the open and close parentheses on separate lines, except for lists with only
a single package, they are written on the same line as the variable name and
parentheses.

fix the lists indentation
2018-11-21 21:35:38 +00:00
JAremko cd39f80c24 Reformat documentation 2018-10-11 00:13:43 +03:00
syl20bnr 12a4d63b30 Fix counsel-gtags package name in common-lisp layer
Fixes #10591
2018-05-31 23:43:02 -04:00
syl20bnr ebe4c60264 Revert "Defer packages by default using use-package-always-defer"
This reverts commit 29c78ce841 and all other fixes
that have been made afterwards.

The motivation is that use-package is seen by many as a replacement for
`require`. Is use-package always defer the loading of packages then is breaks
this use case, this does not respect POLA so even if it was making Spacemacs
loading faster (up to 3s faster on some startup on my machine) we just cannot
use it, it would be irresponsible. Spacemacs should be easy to use, loading
performance will come with time but it is not a priority.
2018-03-03 23:40:10 -05:00
syl20bnr 29c78ce841 Defer packages by default using use-package-always-defer
Warning now `:defer t` is implied, to force a package to load `:demand t` is
now necessary.
2018-02-27 23:32:52 -05:00
smile13241324 1fb4e0f23d Fix doc for common-lisp, bibtex, cfengine and gnus layer 2018-01-12 00:37:15 -05:00
syl20bnr 41e546f040 Move all use-package hook declaration to pre-init functions
Had to create dummy init functions at some places since the owner of a package
is the last layer that defines the init function of a package. And a package
can be installed only if it has an owner.
2018-01-10 23:57:18 -05:00
syl20bnr 326965d4ce Happy New Year 2018! 2018-01-04 02:00:25 -05:00
syl20bnr 5700fc5b0a Fix typos in doc for safe structural editing 2018-01-04 01:55:54 -05:00
syl20bnr 2cb98447af Move evil-cleverparens to spacemacs-evil with major mode toggle
Delete layer evil-cleverparens and move the package to spacemacs-evil layer.

The feature is called "Safe structurral editing" for lisp dialects. Support for
it is added via pre-init functions in each of the concerned layer and proper
documentation is added to their README.org files.

This also removes the recently added package evil-smartparens. The goal is
to choose the best package for evil safe structural editing. For now we use
evil-cleverparens as we supported it first, if evil-smartparens is shown to be
a better package we will be able to switch to it.
2018-01-04 01:40:52 -05:00
Robbert van der Helm c61ae1a1c1 Add ivy support to the gtags layer
It would be much better to have a single function for each layer that
initializes ggtags, helm-gtags and counsel-gtags for a mode.
2017-12-17 22:03:01 -05:00
syl20bnr 82220fce3a Remove old wording "contribution layer" 2017-08-28 11:33:55 -04:00
Eivind Fonn f4b53d2a4f Rename :depends to :requires 2017-07-03 09:54:53 +02:00
Eivind Fonn 08561d8631 core: implement :depends for package declarations
This replaces the older pattern
:toggle (configuration-layer/package-usedp ..)

This implementation ensures that :disabled-for honors dependent packages, i.e.
if package a depends on package b, which is owned by layer c, and layer c is
disabled for layer d, then neither package a nor b will be configured for layer
d. Previously, this was only true for package a, but not b.

This commit also fixes:

- configuration-layer/describe-package now shows which post-init and pre-init
  functions are disabled, if any
- Does not recreate all layer objects unconditionally when calling
  configuration-layer/discover-layers. Previously, this led to all layers being
  recreated after e.g. `SPC h SPC`, without any of the dotfile information.
  Since this information is now necessary for
  configuration-layer/describe-package, it’s important that we don’t clear the
  indexed layers when invoking this function.
2017-06-22 11:53:05 +02:00
Eivind Fonn fab3b2a4e4 Clean up parinfer layer
- Move to misc instead of vim
- Move add-hook calls into dependent layers
- Improve readme
2017-05-29 11:36:46 +02:00
Kristoffer Haugsbakk 79ed1a6b4b Use proper markup for code in readmes
By convention, code markup (`~`) is reserved for keybindings in Org-based
documentation in Spacemacs.  Verbatim markup (`=`) is reserved for code and
other code-like things.  So change several readmes to reflect this convention.

Use verbatim markup for things like (non-exhaustive list):

- Emacs Lisp functions, modes, buffers, etc.
- Environment variables
- Directory paths
- Code in general
2017-05-24 11:57:17 +02:00
JAremko 6c5a0b2b14 update docs to the new toc-org format 2017-05-22 18:35:37 +03:00
LdBeth e17460f0e6 Fix init-slime-company
used `:pre-config` instead `:post-init`, otherwise `slime-company` won't be
initialized because `common-lisp/init-slime-company` is called after
`common-lisp/init-slime`, and `:post-init` probably won't make effect.

Fixes #8796
2017-05-04 00:29:08 -04:00
JAremko c1e4556882 Format and cleanup docs. Fix links. 2017-04-28 23:29:14 -04:00
syl20bnr 177da95904 common-lisp: move evil related configuration to evil pre-init 2017-04-23 13:25:04 -04:00
Boris Avdeev a6f8ebe94b common-lisp: make `SPC m e` keys behave like in elisp
* Make `SPC m e e` (eval last sexp) work in normal evil mode.
 * Add `SPC m e l` - go to end of line and eval last sexp.
2017-04-23 13:18:24 -04:00
syl20bnr 619609c8d7 common-lisp: move company related config to init-slime-company 2017-04-23 13:09:46 -04:00
Daniel Schoepe f2dd7a1be3 common-lisp: Add slime-asdf to slime-contribs
Some slime commands such as `,load-system` do not work without `slime-asdf`
being loaded. Since ASDF is the main system definition facility used by lisp
programs, I think this functionality should be available by default.
2017-04-09 23:00:49 -04:00
syl20bnr 70c6fcef02 common-lisp: add SPC m h i to inspect a definition 2017-01-12 22:33:09 -05:00
Michał Herda e12f469aa2 Layer common-lisp - set jump handler to SLIME-EDIT-DEFINITION
https://github.com/syl20bnr/spacemacs/issues/8043

"Go to definition" should go to the definition - meaning, where the function is defined in the source code.

I am for changing the default keybinding to `slime-edit-definition` because it fulfills this - allows the user to see the source code for a given function.

`slime-inspect-definition` does not open the source code - it opens the SLIME inspector with the function **object** open in the inspector. While the function **object** contains some valuable data, it does not contain the *definition* itself - which is what the user wants in this case.
2017-01-12 22:29:54 -05:00
syl20bnr fb27ede558 Bump year in copyright headers
Happy New Year 2017!
2017-01-05 23:08:17 -05:00
Tu Do 866d95baaf Common Lisp: enable fuzzy matching with comapny 2016-10-17 19:51:06 +02:00
Eivind Fonn 7cfb93d601 Define jump handlers for common-lisp-mode 2016-09-12 11:45:05 +02:00
syl20bnr 9066d073b2 Fix (void-variable spacemacs-jump-handlers-....)
Move the variable definitions to config.el and eval-after-load the
key binding on SPC m g g.
2016-09-04 22:31:47 -04:00
Eivind Fonn 5a869764dd Further improve gtags layer
- Add option to disable by default
- Use local-vars hook to allow per-project enable/disable
- Don’t enable helm-gtags-mode (no need)
- Move emacs bindings from helm-gtags-mode-map to ggtags-mode-map
2016-08-22 15:11:25 +02:00
Eivind Fonn 928983da47 Refactor jump to definition
This commit defines:

- spacemacs-default-jump-handlers: a list of functions that can jump to
  definition in ALL modes.

- spacemacs-jump-handlers-MODE: a list of functions that can jump to
  definition in MODE.

- spacemacs-jump-handlers: a buffer-local list of functions that can
  jump to definition. This is made up of the values of the two previous
  variables whenever a given major mode is activated.

- spacemacs/jump-to-definition: a function that tries each function in
  spacemacs-jump-handlers in order, and stops when one of them takes us
  somewhere new.

- spacemacs|define-jump-handlers: a macro that
  * defines spacemacs-jump-handlers-MODE, possibly filled with initial
    functions
  * defines a function that is added to the hook of the given MODE
  * binds “SPC m g g” of that MODE to spacemacs/jump-to-definition

This is an attempt to harmonize all the different approaches to jumping.
Specifically,

- Existing intelligent jump packages that work for only a single mode
  should go to the beginning of spacemacs-jump-handlers-MODE. E.g.
  anaconda for python, ensime for scala, etc.

- Packages like gtags that work for several modes (but potentially not
  all) and which is dumber than the intelligent jumpers should go the
  the END of spacemacs-jump-handlers-MODE.

- Packages like dumb-jump that work for all modes should go to
  spacemacs-default-jump-handlers.

In all cases the order of the jump handlers in each list should be from
most to least intelligent.

Fixes #6619
2016-08-22 15:08:25 +02:00
Christian E. Hopps b22702bc9e Expand gtags use to many more languages 2016-07-17 17:31:59 +02:00
hehe ac0e988588 Fix #5966, slime-eval-last-sexp is not defined 2016-07-05 00:23:16 -04:00
kr5x 07864f50d9 common-lisp: Remove <tab> key binding
'indent-command-for-tab' that already bound to <tab> globally is more useful.
2016-06-12 21:44:52 -04:00