This reverts commit 91af298090.
it breaks (kill-whole-line) `kill-whole-line` (C-S <backspace>)
the SO link mentioned in it got 0 point.
and hack like this can be put it to user's own config.
When `dotspacemacs-enable-paste-transient-state` is on, there exists a minor
annoyance that deleted whitespaces appear in the kill ring. This requires an
extra C-j/C-k to bypass the noise.
This commit uses a advice function to `kill-new` to prevent text with only
whitespaces from entering kill ring.
Credit: https://stackoverflow.com/questions/12102554/emacs-skip-whitespace-kills
Co-authored-by: Lucius Hu <1222865+lebensterben@users.noreply.github.com>
Co-authored-by: Lucius Hu <lebensterben@users.noreply.github.com>
There is an unreported bug that when startup list is set to shown `recents-by-project`,
Emacs reports that `projectile-mode` is an unknown symbol.
This commit fixed this bug by checking the existence of `projectile-mode`, which is
automatically loaded during startup.
1. Delete vim-empty-lines layer and merge its code into spacemacs-evil
2. Remove unused function from spacemacs-evil/funcs.el
3. Add variable dotspacemacs-evil-show-empty-line-indicators to toggle vim-empty-lines-mode
4. Update related documents
5. Compatibilities
A final 'force push' to PR #15574 implemented functionality to make the banner
size depend on the actual 'startup list' instead of the configured maximum
startup list size. However, that 'new' functionality uses
`spacemacs-buffer//do-insert-startupify-lists` which activates `recentf-mode`,
and unfortunately, activating `recentf-mode` this early in the startup process
somehow breaks recentf functionality, see comments at
a485b5a84b.
This commit 'reverts' the functionality by making the banner size depend on the
configured maximum startup list size.
The default logo is rather big. Users might prefer to use the screen size for
other information (while still showing a banner).
This commit adds a configuration variable `dotspacemacs-startup-banner-scale`
to the dotfile
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.
with this curent (package :location local) can be replaced with (package
:location (recipe :fetcher local)) then quelpa will install local pacakge. We
have the benefit of bytecompile and autoload
[packages] use new fetcher for local
- Remove the two functions that add directories to the load path.
- Inline the body forms of the functions to be removed.
- Rename the variables to be more explicit.
Fix let varlist in core-load-path.el
- When reporting issues on GitHub, it will copy the issue body to clipboard and
ask user to manually paste the content to the web browser, when the resulting
URL become too long.
- Cleaning up.
- Suppressed all compiler warnings.
- Re-ordered all top-level forms into various sections according to its functionality.
First, change read syntax for anonymous functions currently written '(lambda to
instead just be (lambda; otherwise this raises a warning.
Next, while we're at it, change all instances of #'(lambda to just (lambda,
since the two are equivalent and the latter is more concise (excepting anything
in core/libs or in /local/ subdirs of layers)
https://www.gnu.org/software/emacs/manual/html_node/elisp/Anonymous-Functions.html#index-_0023_0027-syntax
in #15421 core cannot find a certain text in the home buffer
to start adding additional elements. This did fail the
start up process.
Now if the starting point is not found the cursor is set
to the end of the buffer instead and no error is signaled.
This allows to still have the home buffer work as expected
even when the starting point has been somehow removed.
- Fixed a bug that when `all-the-icons` is excluded by user, Emacs reports
that using undefined `all-the-icons` functions.
- Changed the `spacemacs-buffer-mode` that now it derives from `special-mode`.
- Also defined a new command `spacemacs-buffer/return` which binds to `RET`
key in `spacemacs-buffer-mode`. It opens the button on the current line if
there's any, or move the cursor to next line.
For example, in `rust-mode`, `(spacemacs//get-jump-handlers)` returns
`((lsp-ui-peek-find-definitions :async t) evil-goto-definition)`.
So `-handler` is bound to the first one, i.e. `(lsp-ui-peek-find-definitions :async t)`.
We need to figure out whether it's asynchronous by checking the `:async` keyword argument.
But before this commit, we wrongly checks the second handler in the handlers list.
Even when multiple handlers do exist and they are all async, the typo made it sub-optimal since it uses not the best handler.
This commit fixes that.
This commit locks the spacemacs home buffer in read-only mode.
Before this, users may use `SPC b w` to toggle it to writable but
this buffer really should not be modified by users.
Note that, when we need to modify the home buffer in LISP program,
we can always set `inihibit-read-only` to nil. Thus this commit
won't disallow us to update the home buffer when it's needed.
Move closing parens on all dotspacemacs/user-* functions to a new line so the
function documentation and closing paren are not part of the config diff when a
user runs `SPC f e D`. This should make it faster to check config changes versus
the template.
This commit changes the yes-or-no-p to a read-answer with three options y, s and
n (for yes, some and no. This of course could be a, s, c for 'all',
'some/select' and 'cancel', but I decided to keep yes no as users are already
familiar with the y and n).
Finally the user can select packages by answer for each package in the list a
yes-or-no-p (pressing y or n, if you upgrade regularly the list usually is not
too long. It is anyway better than having only the options all or none).
The `nonc` construction is just a non cl alternative to cl-remove-if (I've added
the comment with the explanation).
From org version 9.5 org will not be distributed from Org ELPA but from
ELPA (see https://list.orgmode.org/87lfa7tc9v.fsf@gnu.org/t/). This commit makes
Spacemacs use/install org from ELPA.
Besides that, this commit removes some 'hack' that seemed to have no effect. As
org comes with Emacs `package-installed-p 'org` will always return t. Also
activating org via `configuration-layer//activate-package` seems to have no
effect.
Finally, the package is declared including a :min-version because appending only
`:location melpa` seems to have no effect (this can probably be considered a
bug).
I am almost certain that the information that was added when making org install
from Org ELPA is still relevant also for installing org from ELPA so I have just
adapted the version number from 0.104 to 0.300.
As the "org" archive has been removed, the `ert-deftest` for it can be removed
also.
* Warn user they are reading develop docs
Draft commit, definitely still needs work.
The intent is to let users know they are reading documentation that might not
apply to their version of spacemacs. The default install is based on master,
but the docs for both master and develop show up in search engine results.
Currently the only way to see that you are reading the develop docs is by
looking at the subdomain. You'd also need to know that a non-develop website
exists, which is not obvious.
* Use real redirect link back to non-develop docs
Co-authored-by: Lucius Hu <lebensterben@users.noreply.github.com>
Currently when running the env shell-command, emacs does so using its current
process-environment. Instead we should run the command with the
`initial-environment`, which fixes issue #14919.