Commit graph

574 commits

Author SHA1 Message Date
duianto d125f2abd2 Fix void counsel-find-file-map
When the ivy package is installed without counsel,
and (require 'ivy) is called, then an error message
appears: void-variable counsel-find-file-map
2019-11-08 11:23:10 +01:00
duianto 7af300a225 Add visual line navigation keys, up and down
up   evil-previous-visual-line
down evil-next-visual-line
2019-11-03 22:44:27 +01:00
duianto 38752beffa Descriptive rename function file variables
problem:
the variable names: `dir`, `name`, and `filename` leads to confusion if they are
the old or new names

solution:
add the prefix `old-` to match `new-`,
use (`old-` `new-`) + `short-name` for just the `file.ext` (the `short-` idea
came from the `spacemacs/rename-file` function that's defined above this one),
and `old-full-path` instead of `old-filename` makes it clear that it's not just
the files name and extension.
2019-11-03 22:05:14 +01:00
duianto 4c728f041a Update file renaming, handle same new and old name
problem:
renaming a file to it's current name, results in the message:
"File 'current-name' successfully renamed to 'current-name'"

solution:
when the new and old names are the same, show a rename failed message, and call
the rename function again
2019-11-03 21:03:10 +01:00
duianto 8fbdd61e1e Update renaming, move and/or rename messages
problem:
the rename command shows the same message:
"File 'old-file-name' successfully renamed to 'new-file-name'"
(without the directory path) for all three file operations:
move, rename and both move & rename

solution:
show messages that fit the rename operation,
and align the from and to path/file names,
to make it easier to see what changed.

And use the same message format when renaming a buffer.
2019-11-03 20:40:56 +01:00
smile13241324 e74fc70de8 Revise spacemacs/last-error function and change key binding 2019-11-03 20:14:10 +01:00
Benoit Coste 93ac5203b4 Add function 'spacemacs/last-error
Sometimes it is useful to go directly to the last error message in the buffer.
This function recursively calls 'spacemacs/next-error until the last error is
reached.
The binding "SPC e l" is associated with it
2019-11-03 20:14:10 +01:00
Hong Xu 383da46e38 Keep ~C-h~ binding in =counsel-find-file-map= only for hjkl navigation
It has already been bound to <kbd>C-backspace</kbd> and
<kbd>C-delete</kbd>. Such an
additional binding is redundant (if hjkl navigation is not used) and
makes the original <kbd>C-h</kbd> binding
(help) unavailable.
2019-10-30 18:18:54 +01:00
Matt Kramer e4c8cef412 Add toggle visual-line-navigation-globally 2019-10-29 18:19:05 +01:00
duianto a7d45a5221 [ivy] Fix spacemacs/layouts-ts-close-other
Problem: It called: (spacemacs/helm-persp-close)
Solution: Call (spacemacs/ivy-spacemacs-layout-close-other) when ivy is used.
2019-10-19 23:20:55 +02:00
Hong Xu 301d867aff tags-table-mode should be in spacemacs-large-file-modes-list
It is light-weight and it is common that tags are large.
2019-10-19 00:20:21 +02:00
Miciah Masters 97ba556142 Various documentation copy-edits
Follow up the changes in the previous commit with some minor improvements
to formatting, grammar, spelling, and wording.

* layers/+distributions/spacemacs-docker/README.org: Replace "+" with
"and".
* layers/+email/mu4e/README.org: Use full sentences in the comments in the
mu4e-alert example.
* layers/+intl/japanese/README.org: Use verbatim markers for names of
files, functions, packages, and variables.  Capitalize "Linux".
* layers/+os/osx/README.org: Capitalize "Emacs", "Vim", and "Evil".
* layers/+os/osx/config.el (osx-command-as, osx-use-dictionary-app):
* layers/+os/osx/keybindings.el (spacemacs/system-is-mac): Improve
docstrings.
* layers/+readers/dash/README.org: Capitalize "API", "Helm", and "Ivy".
* layers/+spacemacs/spacemacs-defaults/config.el
(delete-by-moving-to-trash): Use full sentences in comment.
* layers/+spacemacs/spacemacs-defaults/funcs.el
(spacemacs/toggle-frame-fullscreen-non-native): Improve docstrings.
2019-10-13 12:04:59 +02:00
Miciah Masters 552fd5953c Update references to macOS
Apple renamed "Mac OS X" to "OS X" in 2012 and then to "macOS" in 2016.
Update references to use the current name.
2019-10-13 12:04:40 +02:00
Miciah Masters e8cdaac8d3 Unique defvar for each ts full-hint toggle
Instead of using a single variable for all transient states' full-hint
toggle functions, define a unique variable for each toggle function so that
toggling the full hint for one transient state does not affect the others.

* CHANGELOG.develop: Add an entry for this change.
* layers/+spacemacs/spacemacs-defaults/keybindings.el
(spacemacs--window-manipulation-ts-full-hint-toggle): New variable.
(spacemacs//window-manipulation-ts-toggle-hint)
(spacemacs//window-manipulation-ts-hint): Replace
spacemacs--ts-full-hint-toggle with
spacemacs--window-manipulation-ts-full-hint-toggle.
* layers/+spacemacs/spacemacs-layouts/config.el
(spacemacs--ts-full-hint-toggle): Delete variable.
(spacemacs--layouts-ts-full-hint-toggle)
(spacemacs--workspaces-ts-full-hint-toggle): New variables.
* layers/+spacemacs/spacemacs-layouts/funcs.el
(spacemacs//layouts-ts-toggle-hint, spacemacs//layouts-ts-hint): Replace
spacemacs--ts-full-hint-toggle with spacemacs--layouts-ts-full-hint-toggle.
(spacemacs//workspaces-ts-toggle-hint, spacemacs//workspaces-ts-hint):
Replace spacemacs--ts-full-hint-toggle with
spacemacs--workspaces-ts-full-hint-toggle.
2019-10-13 10:09:42 +02:00
Miciah Masters 7be37a2aed Use truth values for spacemacs--ts-full-hint
Use nil and t instead of 0 and 1 for spacemacs--ts-full-hint values.

* layers/+spacemacs/spacemacs-layouts/config.el
(spacemacs--ts-full-hint-toggle): Define with an initial value of nil.
* layers/+spacemacs/spacemacs-defaults/keybindings.el
(spacemacs//window-manipulation-ts-toggle-hint)
(spacemacs//window-manipulation-ts-hint):
* layers/+spacemacs/spacemacs-layouts/funcs.el
(spacemacs//layouts-ts-toggle-hint, spacemacs//layouts-ts-hint)
(spacemacs//workspaces-ts-toggle-hint, spacemacs//workspaces-ts-hint):
Replace (logxor ... 1) and (equal 1 ...) with (not ...) and a simple truth
check.
2019-10-13 10:09:42 +02:00
duianto 556433f95c Limit lines to 80 chars
And fix comment indentation. Vertically aligned comments in function
definitions, indents them in the help buffer.
2019-09-17 20:36:30 +02:00
duianto 5894c396cb Fix C-k ivy-previous-line in ivy-switch-buffer
It applies to the editing styles:
- hybrid with the variable hybrid-style-enable-hjkl-bindings set to t
- vim

Moved the default key binding for ivy-switch-buffer-kill:
From: C-k
To:   C-M-k

Thanks for the suggestion: asok
2019-09-17 18:28:02 +02:00
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