Commit graph

1677 commits

Author SHA1 Message Date
Lin Sun 722fa45ea1 [core-env] #14348 ignore env "DISPLAY" for .spacemacs.env 2021-02-22 23:46:20 +02:00
emacspace 228097a19e
Built-in files auto-update: Sat Feb 13 22:24:06 UTC 2021 2021-02-13 23:30:05 +01:00
JAremko 7238eb03e8 Better .elc cleanup 2021-02-11 16:08:29 +02:00
emacspace e11fb63f2e Built-in files auto-update: Tue Feb 9 14:26:29 UTC 2021 2021-02-09 22:16:33 +01:00
emacspace ea58a79715
Built-in files auto-update: Sun Feb 7 20:27:36 UTC 2021 2021-02-07 22:27:56 +01:00
Thanh Vuong ae65f3cedd
Fix #14213 remove dash and ht from core libs
- delete dash and ht in core
- reimplemented all ht functions we need in `spacemacs-ht.el` and use them
- add dash to spacemacs-bootstrap
2021-02-07 22:22:39 +01:00
duianto 2a4cd98afc [core] Refactor spacemacs-buffer//do-insert-startupify-lists 2021-02-04 22:40:10 +01:00
duianto ba8f5414c9 Add home buffer named shortcuts functions
Define named functions: spacemacs-buffer/jump-to-...
for the home buffer shortcuts. So that a descriptive name is shown,
in for example the view-lossage (C-h l) buffer.

Before:
 r                      ;; anonymous-command
 p                      ;; anonymous-command

After:
 r                      ;; spacemacs-buffer/jump-to-recent-files
 p                      ;; spacemacs-buffer/jump-to-projects
2021-02-03 22:35:34 +01:00
emacspace 137ed73fce Built-in files auto-update: Sun Jan 31 19:57:56 UTC 2021 2021-02-03 03:53:30 +02:00
JAremko 725d585341 Do not delete non existent files 2021-01-31 21:20:52 +02:00
JAremko 16073171d8 Make Spacemacs byte-compilation optional 2021-01-31 13:32:06 +02:00
JAremko 88980363b6 Recompile Spacemacs core .elc files when Emacs version changes 2021-01-31 13:32:06 +02:00
JAremko 6ae9364a57 cleanup 2021-01-31 13:32:06 +02:00
JAremko 9eb11bb7a2 refactor bytecomp 2021-01-31 13:32:06 +02:00
JAremko 370798262e Make sure that some core files never byte compiled 2021-01-31 13:32:06 +02:00
duianto c590d84f72 Fix key: home buffer list Recent Files by Project
The shortcut was searching for "Recent Files:"
instead of the expected: "Recent Files by Project"
2021-01-29 19:38:43 +01:00
duianto 38a314f7cc Limit home buffer recent files numbers to 9 2021-01-29 19:05:47 +01:00
duianto 963e8a9b69 Add home buffer recent files numbers
Prepend numbers to the Recent Files list.
and bind the number keys to open that file.
2021-01-29 18:24:57 +01:00
JAremko 5182a450e6 Rework byte recompile of built-in libs 2021-01-26 12:54:03 +02:00
emacspace e712eae9f1 Built-in files auto-update: Mon Jan 25 02:12:52 UTC 2021 2021-01-25 09:01:25 +02:00
JAremko 0fd0af5d8c Remove core .elc files on rev change 2021-01-25 04:03:14 +02:00
JAremko 6e275d0b83 fix var name in doc-string 2021-01-25 04:03:14 +02:00
JAremko 78a3adc7e4 Refactor core-compile stuff 2021-01-25 04:03:14 +02:00
duianto b4922325c7 [core] Shorten package update restart message
problem:
When the Emacs frame has the default window width (80 characters).

Then the current restart to update message:
Emacs has to be restarted to actually install the new version of the packages (SPC q r)

is cut off at the Emacs frames right edge:
Emacs has to be restarted to actually install the new version of the packages (S

solution:
Shortening the message:
Restart Emacs to install the updated packages. (SPC q r)

says the same thing, and keeps it within 80 characters.
2021-01-24 21:56:14 +01:00
duianto 92796dc121 [dotfile] new var: dotspacemacs-show-trailing-whitespace
Moved the function definitions for:
spacemacs//trailing-whitespace
spacemacs//set-whitespace-style-for-diff

from: spacemacs-default/packages.el
to:   spacemacs-default/funcs.el
2021-01-24 21:54:40 +01:00
Lin Sun ba9e0afa34 [Core] *core-spacemacs.el: fix default-path for compiling built-in libs 2021-01-20 02:54:13 +02:00
emacspace fc20d1b4c1 Built-in files auto-update: Thu Jan 14 11:25:17 UTC 2021 2021-01-18 20:02:37 +02:00
JAremko 787820a7ad Compile built-in libs 2021-01-18 16:52:39 +02:00
JAremko 9f1f0742c7 Make sure that auto recompile starts asap 2021-01-18 16:52:39 +02:00
JAremko b59e0821bc Move forked libs into separate directory 2021-01-18 16:52:39 +02:00
emacspace a65497be79 Built-in files auto-update: Mon Jan 11 22:37:28 UTC 2021 2021-01-14 13:22:53 +02:00
emacspace 54054ee8d4 Built-in files auto-update: Mon Jan 11 09:35:17 UTC 2021 2021-01-11 22:11:01 +00:00
emacspace b59be2b15e Built-in files auto-update: Mon Jan 11 09:12:37 UTC 2021 2021-01-11 11:33:32 +02:00
emacspace 01f8ccbefb Built-in files auto-update: Sun Jan 10 20:14:15 UTC 2021 2021-01-11 11:11:03 +02:00
JAremko 5d76849737 fix latest mocker.el compat 2021-01-09 15:56:41 +02:00
Daniel Nicolai 34e336402f fix page-break-lines-mode alias definition
This definition requires 3 arguments. Having only two can cause Emacs a
wrong-number-of-arguments error. So this PR just adds the date when the orginal
functions were removed and the alias was created.
2021-01-09 08:58:43 +01:00
Keith Pinson 41c4d5c104 [core] support recents-by-projects in dotspacemacs-startup-lists
`dotspacemacs-startup-lists` by default shows a number of recent files and
projects as two separate lists. If I've been working with a lot of files in one
project, then all the recent files are from one project, even if I set `recents`
to a large amount like 24. This change allows me to see the recent files by
project. Suppose, for example, I have a `vegetables` project and a `fruit`
project, and set `dotspacemacs-startup-lists` to `(recents-by-file . (2 . 3))`.
In the home buffer I will see something like:

    ~/vegetables
        lettuce.el
        squash.el
        tomatoes.el
    ~/fruit
        apple.py
        orange.py
        banana.py

Even though only a subpath is displayed for each file, the click functionality
still works---i.e. the link still has the full path under the covers.

I originally asked a [question](https://emacs.stackexchange.com/q/62524/19069)
on Emacs StackExchange to see if there were any pointers or if this was already
a solved problem. After several days of receiving no answers, and having a
little time to poke at it, I figured I'd implement it myself.

What this does not cover: mixing recent files totally outside projects into this
list. Today they are just filtered out. That is a usecase I didn't need so I
figured that could be done in a subsequent pass if somebody wanted it.
2021-01-09 08:50:08 +01:00
JAremko eccdcbb1db Use keymap based replacement for prefixes. 2020-12-22 14:34:29 +02:00
JAremko 8cf703887f Cleanup 2020-12-18 17:45:38 +02:00
JAremko b869a05ebc Store mode based prefixes in keymaps 2020-12-18 17:45:38 +02:00
JAremko eb31481c17 Refactor some names and simplify tests 2020-12-18 17:45:38 +02:00
duianto c0f61fa035 [core] Fix package update restart message
Problem:
When the restart-emacs package is being updated.

The update packages restart message, still shows the (SPC q r) key binding even
though it doesn't work.

Cause:
The member function compared a string against a list of symbols.

A possible improvement:
Explain that the key binding won't work this time.

Before:
Emacs has to be restarted to actually install the new version of the packages (SPC q r).

After:
Emacs has to be restarted to actually install the new version of the packages
(SPC q r) won't work this time, because the restart-emacs package is being updated.
2020-12-08 20:14:52 +01:00
duianto c2fb123248 [core] Update dotfile, font :size comment: int vs float
Add a comment about the font :size difference between:
integer (pixel size)
floating-point (point size)

Point size is recommended, because it's device independent.

source:
https://www.x.org/releases/X11R7.6/doc/xorg-docs/specs/XLFD/xlfd.html

Thanks libensterben for the info about point size being device independent.
https://github.com/syl20bnr/spacemacs/issues/14142#issuecomment-738218635

The font size comment was requested in:
ui/font is too small in default .spacemacs even with all prerequisites #14142
2020-12-08 20:13:13 +01:00
JAremko f761d1e389 cleanup 2020-12-06 07:02:04 +02:00
JAremko 97418aaa4f Do not store major mode replacements in keymap [bugged] 2020-12-04 09:26:09 +02:00
JAremko f31b6f28f0 Store major mode replacements in keymap (when possible).
It should give a good performance boost to which-key since
major mode replacements are stored in a global variable and
we have a lot of them.
2020-12-04 08:15:39 +02:00
thanhvg e3b6464649
[core][tide][lsp] improve spacemacs/set-leader-keys-for-minor-mode and apply it to tide and lsp layers (#14141)
* [core][keybinng] improve minor mode binding

This commit added add a new function defun spacemacs/declare-prefix-for-minor-mode
and improved spacemacs/set-leader-keys-for-minor-mode.

`which-key` package recently introduced a new api
which-key-add-keymap-based-replacements which improves perfomance and allows
prefix and namings to be stored directly in keymap. This is a great improvement.

With this new api we now make change to spacemacs/declare-prefix-for-minor-mode
to manage prefix also. For example:

  (spacemacs/set-leader-keys-for-minor-mode 'lsp-mode
    "=" "format"
    "=b" #'lsp-format-buffer)

Before we had to use another api to bind prefix
spacemacs/declare-prefix-for-mode which only works on major-mode. As lsp-mode is
a minor mode this api causes a lot of problems to which-key performance. An
example is https://github.com/syl20bnr/spacemacs/issues/12455 which led to my
hack in https://github.com/syl20bnr/spacemacs/pull/12474.

The improved spacemacs/set-leader-keys-for-minor-mode will take care of both
prefix and key naming for the minor mode. This will allows us to have a better
set up for dynamic minor modes such as lsp-mode, tide-mode etc.

Also another api is created to make prefix for minor mode:
spacemacs/declare-prefix-for-minor-mode.

Usage:
(spacemacs/declare-prefix-for-minor-mode 'tide-mode "E" "errors")"

* [tide] improve prefix

* [lsp] improve prefix
2020-11-21 07:34:55 +01:00
Ray 31cff79099
Add persistent-scratch and unkillable-scratch into core/spacemacs-editing layer (#14115) 2020-11-14 10:02:51 +01:00
Ray Wang 905d4392c5
Add spacemacs-scratch-mode-hook
Also run-hooks in spacemacs/switch-to-scratch-buffer

update CHANGELOG.develop and retrigger workflow
2020-10-23 18:34:25 +02:00
Daniel Nicolai acc136168f
Update additional-packages docstring with info about loading package
Many new users (quite logically) assume that the additional-packages list
behaves like installing a layer, so they assume the file is also loaded
automatically. This commit adds info about the requirement to also load the
package with load/require/use-package in the user-config section of the dotfile.
2020-10-22 23:32:38 +02:00