Commit graph

557 commits

Author SHA1 Message Date
deb0ch
0b824165b6 [centered-cursor-mode] add command to ignored commands
So that when you click in your window your code does not move instantly.
2019-09-16 17:37:42 +03:00
Gia Thanh Vuong
d6bbc257d0 layout layer: add more persistant actions to switch layout
helm-projectile-recent and project search
___
2019-09-15 21:40:34 +02:00
duianto
6440e2d5d7 TS formatting: workspaces & layouts
Remove empty lines:
- Two in the Layouts Transients State.
- Three in the Workspaces Transient State.

In the Layouts Transient State:

Move the navigation keys:
[n/C-l]    next layout
[N/p/C-h]  prev layout
closer to the top, to match the order in the Workspaces Transient State.

Change to a more generic description, without mentioning the other
completion name.
From: [l] layout w/helm/ivy
To:   [l] another layout

Shorten the descriptions:
From: [w] workspaces transient state
To:   [w] workspaces TS
and
From: [t] show a buffer without adding it to current layout
To:   [t] show buffer w/o adding to layout

Indicate what's being added:
From: [A] add all from layout
To:   [A] add all buffers from layout

In the Workspaces Transient State:

Rename "create" to "clone, because it's more descriptive and the
docstring for the variable "eyebrowse-new-workspace" says:
"nil: Clone last workspace."
From: [c/C] create workspace
To:   [c/C] clone workspace

Add "TS" to the description to indicate that it switches to the Layouts
Transient State and then it will match "workspaces TS" in the Layouts
Transient State.
From: [l] layouts
To:   [l] layouts TS

Instead of sorting "[l] layouts TS" alphabetically by it's key letter,
move it to the bottom of the "Go to" column. This has two benefits:
- The workspaces navigation keys are grouped together, without having
"[l] layouts TS" in the middle.
- And "[l] layouts TS" will be the last entry in the "Go to" column.
This matches the location of "[w] workspaces TS" in the Layouts
Transient State.

Change to a more generic description, without mentioning the other
completion name.
From: [w] workspace w/helm/ivy
To:   [w] another workspace
2019-09-13 23:57:33 +02:00
duianto
dccef21e97 Workspaces TS: Add single win workspace key
Updated the Workspaces Transient State "SPC l w".

Added a new key: "[s/S] single win workspace" to the Actions column.

It creates a new workspace with a single window, that shows the
Spacemacs home buffer.

Moved the existing key: "[c/C] create workspace" to the Actions column.
2019-09-10 22:24:27 +02:00
syl20bnr
dcb4da02a8 Bump undo limits to avoid frequent No further undo information
See https://github.com/syl20bnr/spacemacs/issues/12110#issuecomment-504079398
2019-08-20 22:54:46 -04:00
syl20bnr
31353d7b43 Revert "Change default value for spacemacs-layouts-restrict-spc-tab to t"
This reverts commit eef7f8f61a.
2019-08-20 01:17:36 -04:00
syl20bnr
bd97ef47ef Move doc for layout restriction and SPC TAB to DOCUMENTATION.org 2019-08-20 00:54:41 -04:00
syl20bnr
eef7f8f61a Change default value for spacemacs-layouts-restrict-spc-tab to t 2019-08-20 00:54:14 -04:00
duianto
3521d7a11e Switch recreated messages buffer to evil-normal-state
If the messages buffer is deleted.
When it's recreated, then it opens in evil-evilified-state
where the evil keys `w` and `b` are undefined.
2019-08-19 20:48:41 +02:00
Troy Pracy
3c67ba94f3 Add docstring to align-repeat-x commands
Update 'spacemacs|create-align-repeat-x macro to add a docstring to created
functions. The docstring refers the user to the macro, providing a link to
the source code.
2019-08-19 18:11:29 +02:00
emacspace
0ca502823c documentation formatting: Mon Aug 12 19:50:23 UTC 2019 2019-08-13 01:09:55 +02:00
Thanh Vuong
0e9866efce spacemacs-layout layer: limit commmands to work within layouts
Add options to restrict some functions to current layout's buffers

Thanks smile13241324 and duianto for suggestions and fixing typos
2019-08-12 21:41:12 +02:00
bb2020
8ed7e5e7a1 Add `spacemacs/iwb-region-or-buffer'. 2019-08-11 20:15:40 +02:00
Dominik Schrempf
11ee097707 Bugfix `spacemacs/avy-goto-url'.
- Use `avy-jump' instead of the deprecated `avy--generic-jump'.
- Add a keybinding to also open URLs (SPC j U).
2019-08-10 11:23:01 +02:00
smile13241324
85fca8f323 Restore winner-mode auto start without breaking dumping
As winner-mode was moved from init.el to dump-init.el winner-mode
was not longer properly started for non-dumped emacs sessions.
Having winner-mode auto activate at startup did fix the issue
for non-dumping users but in turn broke the dumping process.

I have now moved the necessary winner-mode init to
spacemacs/setup-startup-hook which is only called
in the non-dumping case. To allow customizations I activate
winner-mode prior to loading user-init this will allow users
to deactivate winner-mode in the dotfile and fix ediff themselves
if this is wished for.
2019-08-04 14:49:10 +02:00
duianto
4bcd3402fe [doc] Clarify line wrapping vs truncation 2019-08-04 00:13:18 +02:00
smile13241324
d5d26af533 Disable lazy loading for winner-mode
Lazy loading of `winner-mode` breaks `ediff` and
`winner-undo`. As a hotfix I have deactivated
lazy loading for that package for now.

Just activating `winner-mode` after `winner-undo`
or `winner-redo` has been called does not solve
the issues described in #12582.
2019-08-02 22:48:08 +02:00
smile13241324
175ed2bcc2 Fix winner lazy loading issues 2019-08-02 22:06:47 +02:00
Thanh Vuong
7bc23b895f Layout layer: counsel-projectile: requires fix
Guard :requires against ivy not projectile. projectile is already owned by
buil-in spacemacs-project layer, so it's always t.

This prevents install of ivy, counsel, swiper and counsel-projectile
packages regardless of helm layer
2019-07-28 16:45:53 +02:00
syl20bnr
0e2935b8d6 Add autoloads for winner-mode 2019-07-26 22:44:35 -04:00
duianto
eaed61fb39 Fix canceling spacemacs/ace-buffer-links
problem:
Canceling "spacemacs/ace-buffer-links" with "C-g" showed the error message:
"goto-char: Wrong type argument: number-or-marker-p, t"

solution:
Only go to and press the link if it's a position (number).
2019-07-14 23:10:57 +02:00
duianto
b9e61e6437 Add transient state keys _, j, k
Thanks sdwolfz for the suggestion to add underscore to the transient states,
then the shift key doesn't have to be released if it was held down to press `+`.

Added key bindings:
Evil numbers:
`SPC n _` decrease number under point
in the transient state:
`j` decrease number under point
`k` increase number under point

`SPC T T _` decrease transparency
`SPC z x _` scale down font
`SPC z f _` zoom out frame

Update documentation:
Zoom frame:
`q` quit transient state

Evil numbers:
`SPC n =` increase number under point
`SPC n _` decrease number under point
`0..9` add a number prefix argument
`q` quit transient state

Fixed a typo and made a small rewrite of the tip about using a prefix argument.

Added keys to transient states:
Font scaling:
Added `_` scale down
Reordered `k` assignment to match the order in the transient state

Frame transparency:
Added `_` decrease
Reordered `k` assignment to match the order in the transient state

Evil numbers:
Added `k` increase
Added `_` and `j` decrease

Zoom frame:
Added `_` zoom frame out
Reordered `k` assignment to match the order in the transient state

Which-key entries for Evil numbers `SPC n`:
Group together keys that call the same command:
From: + and =
To:   +,=

From: - and _
To:   -,_
2019-07-14 22:56:57 +02:00
smile13241324
2384c7e5d2 Fix small typo in default popwin config for *undo-tree* buffer 2019-07-14 22:30:18 +02:00
duianto
d6cdd6aa88 Add a tutorials section to SPC h T
`SPC h T e` for `emacs-tutorial` (aliased from `help-with-tutorial` for a more
descriptive name)
`SPC h T v` for `evil-tutor-start`

Added a wikipedia link to the `vi` article, where the origins of modal editing
is discussed.
2019-07-07 11:34:16 +02:00
Jake Romer
7c3d211726 Run foreign keys in evil-numbers transient state 2019-07-06 01:59:04 +02:00
Brandon T. Willard
2cfcf54458 Use return value from advised function in yank-indent-region
Closes #12479.
2019-06-28 12:08:49 +02:00
syl20bnr
1aa0af260e Move indirect buffer key bindings to SPC b N prefix 2019-06-26 00:10:01 -04:00
syl20bnr
f04ff9e837 Change SPC , to SPC j c to go to last change 2019-06-25 23:52:21 -04:00
syl20bnr
6ce974795e Change SPC j C to SPC j ( to jump to fist unbalanced parens 2019-06-25 23:49:21 -04:00
jcaw
d4cca74854 Add support for visual line numbers
Emacs 26 added built-in support for line numbers, relative line numbers, and
visual line numbers. Spacemacs supports only absolute and relative, but there is
no way to access the visual mode. It's hard to get around this, since Spacemacs
abstracts line numbers to a reasonably high degree.

Arguably, `visual` is much more useful than `relative` as a display type. Visual
line numbers are like relative line numbers, but only lines that are actually
showing are counted. This means:

  1. Hidden lines are not counted. If a large amount of text is folded, the line
     numbers won't jump from "10" to "546". This is particularly useful in
     buffers like `magit-status`, where a large amount of information is folded
     by default.

  2. Lines that are wrapped are counted as multiple lines, since they're being
     displayed as multiple lines in the editor. Each visual line will be
     numbered - unlike `relative`, where the entire thing is numbered... Once.

With standard relative line numbers, you can't actually navigate using the line
numbers in the sidebar as soon as folded or wrapped lines are introduced. Since
this is one of the main use cases for relative line numbers, this is a big
problem.

Visual mode fixes that problem. Every line that's being displayed is labelled.
Numbers always correspond to the actual number of lines you'd need to navigate
to reach that line.

This commit extends Spacemacs' line number interface to provide visual line
number support.
2019-06-23 19:16:44 +02:00
duianto
4d4d1b5b38 Update Helm Transient State, show g and G keys
Revealed already bound navigation keys:
- `g` go to first candidate
- `G` go to last candidate

Moved `[q] quit` from bottom left to bottom right, to match other TSs.
Reduced spacing between keys and descriptions from two to one space.
2019-06-21 19:30:30 +02:00
duianto
1554bdda9f Remove new layout confirmation question 2019-06-17 13:23:17 +02:00
duianto
de2297b2e1 Fix copied dir not in minibuffer, clipboard disabled
Fixed the minibuffer showing: `nil`
when `select-enable-clipboard` is `nil` and the current files
path/dir/file/line/column/etc. is copied with the keys under
the prefix: `SPC f y`
2019-06-17 09:20:01 +02:00
Juha Jeronen
672e3db625 Customizable major-mode for new empty buffers
New var: dotspacemacs-new-empty-buffer-major-mode

Set to a symbol naming a mode (e.g. 'text-mode) to apply that major mode to any
buffers newly created in Spacemacs by spacemacs/new-empty-buffer.

Fixes #12382.
2019-06-17 08:26:56 +02:00
Alexander Miller
2e14b4a88c Don't use large file check in buffers already in fundamental-mode.
This change will prevent unnecessary requests to literally open files that are
literal already (like elfeed's index file).
2019-06-13 15:05:34 +02:00
Miciah Masters
461a36b981 purpose: Add chat and mail purposes
Map erc, jabber, rcirc, and slack buffers to the "chat" purpose.

Map gnus, mu4e, and notmuch buffers to the "mail" purpose.
2019-06-09 21:47:21 +02:00
Anton Alekseev
b5027f8f2a Add key bindings for indirect buffer functions 2019-06-08 20:36:34 +02:00
duianto
3868a5364f [doc] Fix typos and add missing/remove extra ~
Add missing ~ (tilde) around key bindings.
Remove an extra ~.
2019-06-01 20:40:22 +02:00
emacspace
2aa62bb5ed documentation formatting: Tue May 28 14:41:10 UTC 2019 2019-05-28 17:43:54 +03:00
JAremko
ce4e6e355f tag docs 2019-05-28 17:35:49 +03:00
emacspace
c7c348a676 documentation formatting: Sun May 26 20:58:52 UTC 2019 2019-05-27 01:23:35 +03:00
bb2020
e1cde25da6 Add bindings for goto-last-change and check-parens 2019-05-24 18:42:55 +02:00
Sorawee Porncharoenwase
8671362aa9 evil-unimpaired switch from normal to motion state
This change will make buffers with the motion state
(e.g., spacemacs home buffer) be able to use the
evil-unimpaired navigation key bindings.

Note that the normal state will inherit the motion
state map anyway, so there's no need to set the
normal state map separately.
2019-05-23 08:59:58 +02:00
JAremko
8f7b979808 add devdocs tool 2019-05-20 13:10:10 +03:00
Ag Ibragimov
fd76a7f300 Add j and k to transient states
It is nicer when user can stay in the "home row" for basic operations like
zooming in and out

Font Scaling Transient State
`k` scale up
`j` scale down

Frame Transparency Transient State
`k` increase transparency
`j` decrease transparency

Zoom Frame Transient State
`k` zoom frame in
`j` zoom frame out

Added two additional Zoom Frame TS keys:
`m` max frame
`f` fullscreen
2019-05-19 22:24:11 +02:00
duianto
bf75b9d899 Move add-hook inside progn
And limit lines to 80 chars.
2019-05-16 15:43:36 +02:00
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