Commit graph

511 commits

Author SHA1 Message Date
Anton-Latukha
f6660f82d4
Switch to the new layers generator 2019-05-15 21:08:21 +03:00
Miciah Masters
322528ca8d spacemacs-layouts: Fix adding buffers to new persp
Delete the hook that commit 9fcf8c898d added
to persp-created-functions, and change spacemacs/ivy-spacemacs-layouts,
spacemacs/helm-perspectives, spacemacs/helm-persp-switch-project, and
spacemacs/ivy-persp-switch-project to achieve the intended goal of adding
the desired buffers after creating a new perspective.

Change spacemacs/helm-persp-switch-project and
spacemacs/ivy-persp-switch-project as follows: If the user selects a
project but then quits without selecting a file or buffer, the new
perspective is now immediately killed.  Otherwise, if the perspective did
not already exist, any buffers that belong to the selected project are
added to the perspective.

Add the following actions to spacemacs/ivy-spacemacs-layouts and
spacemacs/helm-perspectives:

* Create a new perspective with the Spacemacs home buffer (default action).
* Create a new perspective with the buffers that belong to the current
  buffer's project.
* Create a new perspective with the buffers that belong to the current
  perspective (i.e., make a copy of the current perspective).

This commit resolves the problem reported in
9fcf8c898d (commitcomment-33343455).

This commit also fixes a problem with the default action for
spacemacs/ivy-spacemacs-layouts and spacemacs/helm-perspectives.  According to
commit 7b931a9f5b, the default action is supposed
to display the home buffer if the action creates a new perspective, which was
determined by checking whether the perspective was missing from the list of
perspectives _before_ switching.  However, commit
eb7ca651fe changed this logic so it was checking
whether the perspective was missing from the list of perspectives _after_
switching.  This commit restores the correct logic.

* CHANGELOG.develop: Update.
* layers/+completion/ivy/funcs.el (spacemacs/ivy-spacemacs-layouts): Add
"Copy Current Layout" and "Create Project Layout" actions to the docstring.
Use spacemacs//create-persp-with-home-buffer for the default action.
* layers/+completion/ivy/packages.el (ivy/post-init-persp-mode): Add
actions for spacemacs//create-persp-with-current-project-buffers and
persp-copy.
* layers/+spacemacs/spacemacs-layouts/funcs.el
(spacemacs||switch-layout): New macro.  Switch to the named perspective,
and initialize it using the provided forms if the perspective is new.
(spacemacs//create-persp-with-current-project-buffers): New function.
Create a new perspective with the current project's buffers.
(spacemacs||switch-project-persp): New macro.  Switch to the named
perspective, and evaluate the provided forms with
projectile-after-switch-project-hook bound with a hook that adds the
current project's buffers to the perspective.  If the user quits during the
evaluation of the forms, kill the perspective.
(spacemacs//create-persp-with-home-buffer): New function.  Switch to the
named perspective, and go to the Spacemacs home buffer if the perspective
is new.
(spacemacs/helm-perspectives): Use spacemacs//create-persp-with-home-buffer
for the default action.  Add actions for
spacemacs//create-persp-with-current-project-buffers and persp-copy.
(spacemacs//helm-persp-switch-project-action): New function.  Switch to the
named perspective and call projectile-switch-project-by-name, using the new
spacemacs||switch-project-persp macro.  Bind helm-quit-hook with a hook
that kills the new perspective if the user quits
projectile-switch-project-by-name.
(spacemacs/helm-persp-switch-project): Use
spacemacs//helm-persp-switch-project-action.
(spacemacs//ivy-persp-switch-project-action): New function.  Switch to the
named perspective and call counsel-projectile-switch-project-action with a
hook to add the project's buffers to the new perspective.
(spacemacs/ivy-persp-switch-project): Delete advice for
counsel-projectile-switch-project-action.  Use
spacemacs//ivy-persp-switch-project-action instead.
(spacemacs//add-project-buffers-to-persp): Deleted.
* layers/+spacemacs/spacemacs-layouts/packages.el
(spacemacs-layouts/init-persp-mode): Don't add a hook to
persp-created-functions.
2019-05-13 17:11:27 +02:00
syl20bnr
8fa16d19a9 [editing] Document key binding ~SPC x y~ and sort them 2019-05-12 10:59:57 -04:00
Sam Pillsworth
89aae06f86 global-hl-todo-mode prevents activation in org
global-hl-todo-mode uses function to activate only for modes that are in the
activate list but are not org-mode.

Reference: 24b9925b1b/hl-todo.el (L185-L188)

Adds a comment re `hl-todo-activate-in-modes` var
2019-05-10 12:38:38 +02:00
Charlie Barto
e27f89e529 fix finding find on windows 2019-05-09 18:56:05 +02:00
Benno Fünfstück
d6b7e335ed spacemacs-modeline: fix modeline if daemon is used 2019-05-09 18:34:10 +02:00
William Casarin
42d6e143fc link-hint: bind link-hint-copy-link to SPC x y
Signed-off-by: William Casarin <jb55@jb55.com>
2019-05-09 16:44:55 +02:00
bb2020
dd67908f75 Remap M-SPC and SPC-x-d-SPC to cycle-spacing 2019-05-08 19:00:14 +02:00
Compro-Prasad
989da8bb8f Fix void function error when recentf-save-list is undefined
This happens because there is an idle timer which runs `recentf-save-list` every
600 secs.
2019-05-06 00:54:01 +02:00
JAremko
77c680160e Add placeholder tags 2019-05-05 20:40:47 +03:00
JAremko
5d02b1c4bb Add more tags 2019-05-03 03:44:19 +03:00
duianto
b26ea277fb Add documentation to two toggles
Two `SPC h SPC` toggles were missing their documentation:
- Nameless
- Minibuffer System Monitor (the symon package)

Now they match the other entries by showing:
- current state
- name (this was only shown before)
- documentation
- key binding (only minibuffer-system-monitor shows a key binding)

The nameless key binding `SPC m T n` only works in emacs-lisp-mode. It's key
binding might need to be described another way.
2019-05-01 01:24:12 +02:00
康小广
2e6817ef34 Add symbol-overlay package to spacemacs/navigation layer
Defines a transient state for symbol-overlay, and bind it to ~SPC s o~ and ~SPC s O~.

Updates:

* update due to the signature change of `symbol-overlay-get-list`.
* align the docstring using `^^` and add `quit` button.
2019-04-30 17:42:40 +02:00
Christian Bäuerlein
dd5240d55e Fix spacemacs-project setup readme
Before this, the readme file was just a copy of the spacemacs-org readme file.
2019-04-28 10:39:31 +02:00
Bet4
d4b180a735 Various improvements when indent code 2019-04-28 01:19:14 +02:00
smile13241324
2c449f72af Fix SPC h SPC binding after latest change
I have introduced a bug by merging
efa04de617.

This change removes the symptom with the
cost of again violating the 80 chars limit
in spacemacs-editing-visual's packages.el.
2019-04-26 23:58:18 +02:00
duianto
efa04de617 spacemacs-editing-visual/packages.el 80 char limit 2019-04-26 22:27:33 +02:00
Bet4
44cd57d2e2 Remove the use of 'spacemacs|advise-commands' 2019-04-25 19:30:29 +02:00
Bet4
554ca097f2 Check for universal arg before paste
This commit fixes #4219 and fixes #8897
2019-04-25 19:30:29 +02:00
Miciah Masters
9fcf8c898d spacemacs-layouts: Add project buffers to new persp
Fix issue #11282.

When a new perspective (layout) is created and we are in a Projectile
project, add all buffers belonging to that project to the perspective.

* layers/+spacemacs/spacemacs-layouts/funcs.el
(spacemacs//add-project-buffers-to-persp): Add new function.
* layers/+spacemacs/spacemacs-layouts/packages.el
(spacemacs-layouts/init-persp-mode): Add
spacemacs//add-project-buffers-to-persp to persp-created-functions.
2019-04-24 19:31:26 +02:00
duianto
b646b75ece Fix doom-modeline in the messages buffer
problem:
the doom-modeline isn't applied to the messages buffer

solution:
call `(doom-modeline-init)` without a hook
2019-04-23 22:40:24 +02:00
duianto
29a6ce0ec1 Update Symbol Highlight TS: reorder keys
What: Move "[z] recenter" to end of first row.
Why:  Top row (red keys) will not exit, bottom row (blue keys) exits.
2019-04-22 23:26:12 +02:00
emacspace
202da65b1c documentation formatting: Sun Apr 21 20:04:25 UTC 2019 2019-04-22 23:16:20 +02:00
JAremko
23842fa77e Simplify descriptions of layers 2019-04-21 22:09:34 +03:00
duianto
2342f76cf1 Exclude which-key from layer sync powerline restore
When syncing the configuration layers `SPC f e R`,
don't restore the powerline to the which-key buffer.
2019-04-15 10:29:59 +02:00
yuhan0
a3469c04ea Add window maximization bindings to transient state 2019-04-11 10:50:41 +02:00
yuhan0
13fd53d65d Make window manipulation transient hint collapsible
Window sizing and layouts can be affected by a large transient state hint,
so having a option for minified hint is especially useful here.

Also reformats the full hint to place `golden ratio` under the "Resize" heading,
reducing overall height by one row.
2019-04-11 10:50:41 +02:00
yuhan0
f961d622cf Add 'SPC w' leader bindings for window resizing
For convenience they directly enter the window manipulation transient state,
since resizing operations tend to involve repeated key presses.
2019-04-11 10:50:40 +02:00
Hoyon Mak
beab291332 Don't lazy load keybindings for evil surround 2019-04-10 19:30:32 +02:00
Langston Barrett
a60bc0f52e Add ranger-mode to golden-ratio-exclude-modes
Ranger manages window sizing in a way that conflicts with golden-ratio
2019-04-08 17:44:18 +02:00
yuhan0
cc094c85d2 Move purpose-x config to spacemacs-purpose layer
This would otherwise cause a void-function error for users of the spacemacs-base
distribution without window-purpose installed.
2019-04-07 18:07:57 +02:00
duianto
2ef94efbf4 Add line text object using evil-textobj-line 2019-04-07 15:34:02 +02:00
Aaron Jensen
91914378c1 editing: Enable smartparens in eldoc-eval-expression
This was enabled before in eval-expression.
2019-04-06 16:11:57 +02:00
duianto
3819cf4dbd Add SPC o which-key prefix name: user bindings 2019-04-06 16:00:34 +02:00
duianto
f8ed4739fe Load helm before read-file-name and completing-read
Fixes helm not being loaded before calls to:
read-file-name and completing-read.

These are some commands that call either of those two functions:
spacemacs/rename-current-buffer-file (SPC f R)

In a Treemacs window:
treemacs-add-project-to-workspace (C-c C-p a)

In a Magit buffer:
magit-checkout (b b)

Thanks Miciah for a more elegant solution.

This commit also reverts:
Fix helm loading for layouts transient state #11705
because it's not needed anymore.

And the previously commented out transient hook minibuffer-setup-hook (it
doesn't seem to ever have been used) is removed because:
- It loads helm after a command is called that uses helm (instead of before)
- (spacemacs|hide-lighter helm-mode) has previously been moved to the
helm/init-helm :config section.
2019-04-03 21:27:08 +02:00
duianto
3de7081950 Cleanup which-key names
Moved:
- ("ai" "irc") to both the `erc` and `rcirc` layers. They don't have to be
  renamed until the layers are loaded.

- ("ay" "ipython notebook") to the `ipython-notebook` layer.

- ("p$" "projects/shell")
  ("'"  "open shell")
  ("as" "shells")
  to the `shell` layer.

- The commands with keybindings from spacemacs-bootstrap/packages.el to
  spacemacs-defaults/keybindings.el.

Removed:
- ("gd" "diff") it seems to be an old group name, there's no `SPC g d` group at
  the moment.

- ("Re" "elisp") and ("Rp" "pcre") because they have moved to:
  ("xr" "regular expressions")
  ("xre" "elisp")
  ("xrp" "pcre")

- ("xm" "move") seems to be an old move text group, the current keybindings are
  `SPC x J` and `SPC x K` which opens the Move Text Transient State.

- ("b" "persp-buffers") because `SPC b` is also renamed as ("b" "buffers") which
  is more general and not persp-mode specific.
2019-02-18 14:35:00 -05:00
syl20bnr
95422ae5d5 Second part of review and tweaks of release notes 2019-02-10 12:37:41 -05:00
syl20bnr
474f945709 defaults: add SPC T N key binding to cycle theme backward 2019-02-10 10:10:51 -05:00
JAremko
24d875e193 Add transient state for centered buffer 2019-01-27 20:49:40 +02:00
Richard Kim
a46b784e85 ported Info-find-file from emacs 27 by adding third argument 2019-01-22 00:00:42 +02:00
yuhan0
6737c8c8e5 Add ivy option to buffer transient state 2019-01-21 23:06:08 +02:00
deb0ch
b7dedb9bd6 layouts layer: fix helm loading 2019-01-20 16:24:11 +02:00
syl20bnr
7cc06ce63e Update change logs
Thank you everybody for participating in #11741 in order to make this
possible!
2019-01-13 16:32:47 +02:00
emacspace
45276bd96f documentation formatting: Wed Dec 5 03:03:03 UTC 2018 2018-12-04 22:06:14 -05:00
JAremko
69a89cc412 Replace centered-buffer-mode with writeroom-mode 2018-11-26 11:14:04 -05:00
duianto
438ad905da Update delete file messages
problems:
the delete file prompt doesn't show which file it's about to delete,
and when the deletion request is canceled, then the question remains in the
minibuffer (the text disappears when an action updates the minibuffer, like
moving the cursor, but it might be confusing to still be seeing the question
after it's been answered)

solution:
show the file name in the delete file prompt, and show a canceled message
2018-11-12 22:07:25 +00:00
Ag Ibragimov
27b2fb424a Keeps previous position on toggle-maximize-buffer 2018-11-12 22:01:56 +00:00
yuhan0
0596e90c3d Add 'z' recenter bindings for various transient states
By analogy with the "zz", "zb", "zt" vim / evil bindings, this adds an
additional key binding "z" for `recenter-top-bottom` to the following
transient states which navigate around the buffer in large jumps:
- auto-symbol-highlight
- error
- buffer
- vcs
- org-babel

This allows for repositioning of the buffer for visibility without having to
exit the transient state.

Minor updates are also made to documentation of other transient states.
2018-11-12 21:47:17 +00:00
deb0ch
1402b1bacc formatting 2018-11-05 22:14:32 +00:00
Boris Buliga
69a1e056ff
support directories in spacemacs/rename-file
1. Fix `short-name` for directories. Previously it was empty string.
2. Remove redundant check for existing buffer:
   1. `(get-buffer new-name)` always return `nil`, because `new-name` is a path
      to file, not a file name.
   2. `(find-file new-name)` handles this situation.
   3. `dired-rename-file` handles this situation as well.
3. Use `dired-rename-file` to do the dirty stuff.
   1. Renames files and directories.
   2. All associated buffers are updated. If you rename a directory, all buffers
      that were visiting files from that directory now visit files from new
      directory.
4. Properly handle recentf list update for directories - all files from the
   renamed directory are removed from recentf list and the same files but from
   new directory are added back.
2018-10-31 20:56:28 +02:00