Commit graph

11310 commits

Author SHA1 Message Date
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
duianto
61ff12cbfc [base] Show a winum required message
problem:
key bindings that use the winum package,
don't work in the spacemacs-base distribution.

for example in the buffer transient state: SPC b .
{number}, C-{number} or M-{number}

shows messages like these:
Wrong type argument: commandp, winum-select-window-1
Symbol’s function definition is void: winum-get-window-by-number

cause:
the winum package is loaded in the spacemacs-navigation layer,
but the layer isn't used in the spacemacs-base distribution.

solution:
show the message:
This command requires the winum package,
winum is part of the spacemacs-navigation layer.
2021-01-09 08:40:32 +01:00
Sid Raval
9b6a49d6c0
Support prettier formatter for Ruby layer (#14252)
* First working pass

- Runs prettier on save when in ruby-mode.
- Adds `node_modules/.bin/` to local `exec-path`
  - This means project-local `prettier` executables are preferred

* Making ruby layer prettier formatting configurable

- Adds a variable to control whether prettier is used to format-on-save.
- Documents use, configuration, and keybindings in the README

* Add to CHANGELOG.develop

* Delete spurious comment

* Use prettier as a dependency only when config variable is present
2021-01-09 08:34:04 +01:00
Hanshen Wang
f75ac7a239 Fix typo found in commit ab4877f218 2021-01-09 07:19:15 +00:00
JAremko
64900229a1 [ci] don't abort prematurely 2021-01-08 10:59:50 +02:00
JAremko
1f13032956 [ci] Save docker images in tmp dir 2021-01-08 10:59:50 +02:00
JAremko
6697f7a931 [ci] fix path 2021-01-08 10:40:48 +02:00
JAremko
03b2990b12 [ci] Cache images 2021-01-08 10:26:08 +02:00
JAremko
55264e9cd2 fix CI path 2021-01-08 10:26:08 +02:00
JAremko
bfed28d3c2 Auto update built-in 2021-01-08 10:12:33 +02:00
emacspace
ee9201efe7 documentation formatting: Sun Jan 3 07:55:29 UTC 2021 2021-01-03 09:11:18 +01:00
timor
86ca64939c
Small Fixes and Improvents to Factor Layer (#14253)
* [factor] Add two useful snippets

* [factor] Make binding match documentation

* [factor] Fix startup command for graphical listener
2021-01-03 09:09:54 +01:00
Daniel Nicolai
11345a8392 Add consistent org-agenda transient-state keybinding
I do not see any reason why the keybinding to enter org-agenda should not be on
`. ,`. Therefore I propose here to make that keybinding consistent with the
keybindings for entering transient states in most/all other modes
2021-01-03 09:00:09 +01:00
Fan Yang
ab4877f218 Improve org-mu4e integration
Changes:

- Added two configuration variables for the mu4e layer to control mu4e-org
  integration.

- Optionally configures mu4e compose mode to support Org-mode syntax.

- Improves lazy-loading of relevant features. E.g. loading org-mode does not
  automatically trigger loading of mu4e.
2021-01-03 08:52:49 +01:00
Maximilian Wolff
7b7076d4ba [python] Define purposes for specialised buffers 2021-01-02 20:30:45 +00:00
Maximilian Wolff
344b6a51f7 [markdown] Use valign for table formating if available 2021-01-02 19:39:11 +00:00
emacspace
d545dcbdbe documentation formatting: Wed Dec 30 21:04:48 UTC 2020 2020-12-30 23:41:14 +01:00
Maximilian Wolff
08355b0b6f
[python] Fix one small issue in latest doc additions 2020-12-30 21:55:27 +01:00
Peter Kuchar
638bbb0c38
[+lang/python] Poetry integration for python layer
Adding Poetry integration (tool for managing virtual environments in Python)
2020-12-30 21:53:27 +01:00
Fan Yang
8f093ff2a3 Configure org-roam to lazy load
Set up autoload for a few org-roam commands via use-package.
Replace a number of obsolete functions (org-roam-dailies-...).
2020-12-30 21:11:30 +01:00
Maximilian Wolff
563b6d7188
[doc] Fix some trivial typos in latest additions 2020-12-30 21:04:47 +01:00
Benjamin Hipple
ce0674bf56
[docs] Elaborate on fetchers to include git
Although the docs show an example, but the paragraph below seems to imply that a
package can't be fetched directly off git. Update to make it more clear that it can.
2020-12-30 20:57:12 +01:00
duianto
a82d2292b6 [base] Fix void helm-use-fuzzy
problem:
The spacemacs-completion layer defines the variable:
helm-use-fuzzy

But the spacemacs-base distribution doesn't use the
spacemacs-completion layer by default.

helm-use-fuzzy is used in the helm layer.

When a helm buffer is opened, for example: `SPC SPC`
Then a warnings buffer opens:
>Error (use-package): helm/:config: Symbol’s value as variable is void: helm-use-fuzzy

solution:
Make sure that helm-use-fuzzy is bound and true.
2020-12-30 20:54:00 +01:00
duianto
8839858d54 [git] Restore magit transient args between sessions
problem:
The Magit w (apply patches) arguments are not remembered between sessions.

cause:
Magit reads the transient files:
history.el, levels.el, and values.el
before Spacemacs has redirected them to the .cache directory.

solution:
Redirect the files before magit reads them.
2020-12-30 20:49:25 +01:00
duianto
f62934620d [base] Fix evil undo
problem:
Pressing: u
in the spacemacs-base distribution, shows:
evil-undo: Symbol’s function definition is void: undo-tree-undo

cause:
The evil undo system is setup as: undo-tree
but undo-tree is loaded in the spacemacs-editing layer,
and the layer isn't used by default in the spacemacs-base distribution.

solution:
Set the evil undo system to undo-tree when the undo-tree package is used.

Now if undo-tree isn't setup, then:
- u   uses the default Emacs undo command.
- C-r says: Customize ‘evil-undo-system’ for redo functionality.
2020-12-30 20:46:20 +01:00
duianto
444c6a7565 [defaults] Prevent fullscreen on config reload
problem:
Reloading the configuration: SPC f e R
after changing the variable: dotspacemacs-fullscreen-at-startup
to: t
changes Emacs into fullscreen mode.

solution:
Only check the variable and change to fullscreen mode on startup,
before Spacemacs has been initialized.

Fixes: Reloading config with fullscreen-at-startup t (in macOS) toggles fullscreen mode #13073
2020-12-30 20:43:52 +01:00
duianto
5281c3a17b [treemacs] Check for git and python 3 upstream
problem:
The Treemacs layer is unable to find python 3 in Windows.

cause:
The Treemacs layer looks for "python3", but the executable is called
"python.exe" in Windows.

solution:
Let Treemacs check for python 3 upstream, it has a better method for finding the
python 3 executable in Windows.
2020-12-30 20:41:44 +01:00
Senghoo Kim
b2f014107f Make ipython notebook work with company-mode
By using the Jupyter notebook api, the ipython-notebook layer can be auto-completed by using the company-mode
2020-12-30 10:32:10 +01:00
Maximilian Wolff
0333173f18
Restore old ace bindings and revise documentation changes 2020-12-29 21:29:50 +01:00
Daniel Nicolai
db819a6bbd
Add link-hint-open-link to woman-mode keybinding to navigation layer 2020-12-29 21:05:39 +01:00
Ray Wang
dfd208cf89 valign-mode should be disabled in default 2020-12-28 17:16:55 +01:00
Evan Klitzke
c4ad14a73a fix some errors in the lsp readme 2020-12-26 14:59:29 +01:00
Tim Ruffing
f0256b7eca Fix typo in spell-checking docs 2020-12-26 14:44:21 +01:00
JAremko
eccdcbb1db Use keymap based replacement for prefixes. 2020-12-22 14:34:29 +02:00
Claude
1254095217
Make valign-mode opt-out in org-mode-hook (#14211)
* Make valign-mode opt-out in org-mode-hook

* Clean org-enable-valign documentation
2020-12-19 00:01:31 +01:00
Daniel Nicolai
0174002ebf Add evil consistent navigate history keybindings to pdf-layer 2020-12-18 23:56:32 +01:00
Daniel Nicolai
ad4ee80e56 Add convenient scroll keybindings to epub layer
Similar to the keybindings added to the info layer in PR #14188, I here propose to add the same
keybindings to the epub layer. These J/K keybindings are currently undefined in the epub
layer. These keybindings are used in the Zathura document reader, they are very
convenient and I guess they feel very natural and are preferred over d/u by most people.
2020-12-18 23:40:58 +01:00
Maximilian Wolff
9d7090cee3
[clojure] Add instructions to disable lsp server support
Standard LSP support auto-activates the server
if LSP layer is loaded. I have now added instructions
to explicitly disable this behaviour if someone wants
to work in LSP in one layer but only with CIDER in
clojure.
2020-12-18 23:35:40 +01: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
Hong Xu
47d02ba970 Use transient and set dired-quick-sort-suppress-setup-warning to 'message
Related to #14156
2020-12-16 19:14:12 +01:00
Ray
0f21303cad
Use valign to align tables in spacemacs-org layer (#14196)
* Use valign package in org-mode to align tables

* update CHANGELOG.develop
2020-12-13 22:08:36 +01:00
Maximilian Wolff
f4ee26ce33 [dap] Set bindings after setting prefixes 2020-12-13 21:07:07 +00:00
Daniel Nicolai
c595640a34 In navigation layer, Bind J/K to scroll up/down in Info-mode
Spacemacs lacks a keybinding alternative to the most natural way of scrolling
Info pages (i.e. SPC) in vanilla emacs.
Anyway, this commit adds J/K to scroll most naturally through info pages.
Currently, in Info-mode, a keybinding for J is not defined while K is bound to
evil-lookup.

Issue #2828 already adresses the inconsistent experience, and in my opinion this
can and should be improved as navigating Info pages is a very crucial part of
using Emacs.

Personally I have bound J/K to scroll page up/down in buffers/pdf/djvu/doc-view,
which I inherited from using the zathura pdf reader, and I think this is a better
default than the default vim alternatives.
2020-12-13 21:58:24 +01:00
emacspace
35b8e063de documentation formatting: Sun Dec 13 10:32:28 UTC 2020 2020-12-13 21:56:49 +01:00
Keith Pinson
e7c9eda3fb [markdown] fix: mmm clobbering comment-start in Markdown Git commit
Fixes #14195.
2020-12-13 10:26:56 +00:00
Maximilian Wolff
1be72042e1 [ivy] Add doc for new C-SPC binding 2020-12-13 09:52:43 +00:00
Thanh Vuong
49a4fa072d [ivy] improve key bindings
bind c-spc to  ivy-call-and-recenter
this is the closest thing to helm follow mode in ivy world

unbin `g` key and map `U` for
for ivy-occur-mode-map and ivy-occur-grep-mode-map
2020-12-13 10:36:37 +01:00
Lucius Hu
2d1d338f46
LaTeX: improved i18n support and documentation (#14204)
* LaTeX: improved i18n support and documentation

- Added a new layer config variable `latex-build-engine`, a thin wrapper of
  `TeX-engine`:
  - For better support of non-european character set rendering, `xetex` is
    chosen when it's found on PATH, and when eithe `chinese` or `japanese`
    layer is enabled
- Added a new layer config variable `latex-enable-preview`:
  - When non-nil, `auto-revert-mode` is added to `doc-view-mode-hook`
  - Previously this is described in documentation but requires users to set it
    manually
- Documentation:
  - Added a section that lists are layer config variables
  - Improved all documentation examples, s.t. they are valid elisp forms to be
    evaluated directly
  - Improved the section on backend:
    - Emphsized that LSP layer is always preferred
    - Provided information on installing the language server
  - Added the default value for layer config variable, `latex-nofil-env`

* minor edits

- Updated CHANGELOG.develop
- Renamed `latex-enable-preview` to `latex-refresh-preview`
- Replaced a fuzzy intra-link in documentation with a proper link

Co-authored-by: Lucius Hu <lebensterben@users.noreply.github.com>
2020-12-13 10:33:04 +01:00