Commit graph

113 commits

Author SHA1 Message Date
Daniel Nicolai 65121ddd30 Improve spacemacs/default-pop-shell docstring
Add instruction for controlling automatic change to working directory ('fixes'
2021-07-30 17:10:38 +02:00
SpacemacsBot 284f56a397 [bot] "spacemacs_fix_org" Mon Jul 5 23:23:52 UTC 2021 2021-07-05 16:24:48 -07:00
Ryan Prior be74dd786f
Adds function to run default shell in project root, with leader keys SPC p $ (#14856)
By using `projectile-acquire-root`, we will prompt the user for a project when
they call `spacemacs/projectile-pop-shell` outside a project directory.
2021-07-04 07:02:19 +00:00
syl20bnr 97cd83e169 Apply GPLv3 terms explicitly to all elisp files 2021-03-25 22:59:32 -04:00
syl20bnr d55a9e2e67 Update header for year 2021 2021-03-25 22:59:32 -04:00
Maximilian Wolff 13a5d5c95f
[shell] Make vterm support C-o in evil insert state again
vterm in evil mode did not longer support to switch
to normal mode for one command in insert mode.

This commit restores this key binding again.
2021-03-21 22:58:31 +01:00
Boris Sergeev b71e5fdb17 Enhance shell-default-position validation spec
to match values listed in it's documentation.
2021-03-19 02:34:30 +02:00
JAremko 0f2df2727d Validate .spacemacs variables. 2021-03-18 15:47:02 +02:00
Thanh Vuong a6d364e0f2 [spacemacs-evil] add evil-collection
It is impossible to ignore `evil-collection` anymore. `evil-magit` has been
deprecated recently and moved to `evil-collection`.

It will save time and effort for both Spacemacs and Evil to share and contribute
to `evil-collection` imo.

However I strongly prefer Spacemacs binding scheme over evil-collection's one.
We should only pick what we need from `evil-collection`.

This PR add mechanism to embrace `evil-collection` and apply it to shell layer (`vterm`)
and git layer.
2021-01-30 01:11:07 +00:00
Youmu 483d5493cd Remove eshell obsolete variable
`eshell-buffer-shorthand` was removed in Emacs 25, see https://github.com/emacs-mirror/emacs/blob/master/etc/NEWS.25#L1078-L1082
2020-11-12 22:33:06 +01:00
emacspace 45691dd545 documentation formatting: Sat Oct 31 08:55:13 UTC 2020 2020-10-31 13:07:55 +01:00
Thanh Vuong 97868ced62 fix #14100
Vterm => VTerm sorry :)
2020-10-31 09:52:49 +01:00
Maximilian Wolff abac41e8d0
Fix small doc typos in shell and latex layers 2020-10-30 21:44:17 +01:00
Thanh Vuong a477ea63ce [shell] new helm/ivy functions to search vterm history
Based on http://xenodium.com/search-bash-history-with-emacs-helm/

Add new helm/ivy functions `spacemacs/helm-vterm-search-history`,
spacemacs/counsel-vterm-search-history to search bash history and insert to
vterm/shell

Bind this function to M-r for vterm

New layer variable spacemacs-vterm-history-file-locatition to customize bash file

Default is nil.

Also bind add counsel-shell-history to `, H` for shell-mode in the same
convention as helm counterpart.

[shell] wip
2020-10-30 21:17:04 +01:00
Benjamin Yang 0fe36bed57 [shell] Update vterm binding in README
Back in commit ac3752ffd, the binding for `vterm` was updated to fit in with the
rest of the `shell` layer bindings (under `SPC a t s v`).  However, the `README`
was not updated to match.  This commit updates the `README` for the `shell`
layer.

Relates to #13503.
2020-07-18 09:35:11 +02:00
kenkangxgwe 21b3ae20b3
Update key bindings for vterm
* Sending <kbd>Esc</kbd> to vterm using `vterm--self-insert` results in `1;5u`,
using `vterm-send-escape` instead.
* <kbd>Ret</kbd> is not sent by `vterm--self-insert`, using `vterm-send-return`
instead.
2020-07-12 20:41:07 +02:00
Maximilian Wolff ac3752ffd7
Add missing prefixes to global application bindings 2020-07-06 23:13:52 +02:00
Maximilian Wolff c4e420cf36
[purpose] Document how to properly declare and overwrite purposes
Also refactor purpose config in shell layer to
use the correct `post-init-window-purpose`
function.
2020-06-26 01:10:17 +02:00
John Practicalli Stevenson e38c33feb0 [applications] refactor key bindings to tools
refactor key bindings for packages under +layers/tools

Relates to #13503
2020-06-24 22:43:30 +02:00
duianto a0b099b54e [spacemacs-base] Fix void layout local variable and function
The variable: layouts-enable-local-variables
and function: spacemacs/make-variable-layout-local
are defined in the layer: spacemacs-layouts

But the spacemacs-layouts layer isn't loaded
in the distribution: spacemacs-base
2020-05-16 13:44:23 +02:00
emacspace 20881cafee
documentation formatting: Fri May 15 21:10:12 UTC 2020 2020-05-15 23:57:28 +02:00
WH b81475a45c
[doc] Update latest libvterm install guide
Install ubuntu(18.04) libvterm-dev will cause compilation error,
update latest doc from emacs-libvterm, it shall download
latest libvterm automatically.
2020-05-15 22:50:46 +02:00
CeleritasCelery fef3187337 fixed window-live issue 2020-05-11 14:49:18 +02:00
CeleritasCelery 1c47f3e8f4 Make pop-shell layout local 2020-05-11 14:49:18 +02:00
Steven Allen 36230346ea [eshell] Skip prompt text on insert
When entering insert mode, don't start editing in the middle of the prompt text.

That is, given:

~/foo/bar> some command
  ^            ^       ^
  A            B       C

Cursor A will jump to position C but cursor B won't.

Edit by duianto
This also stops the cursor from jumping to the end of the last line,
when entering insert state, from all but the last line in a multi line.

Example:
~/foo/bar>(+
1{cursor in normal state on the 1}
2)

Entering insert state: i

Before:
~/foo/bar>(+
1
2){cursor in insert state after the close parenthesis}

After:
~/foo/bar>(+
{cursor in insert state before the 1}1
2)
2020-02-14 13:09:29 +01:00
Nikita Leshenko 0417379a2f
shell: Wrap terminal-here in use-package
Introduced in PR #11949, terminal-here wasn't wrapped in `use-package'. This
made it impossible to use `spacemacs|use-package-add-hook' to customize it.
2019-12-20 10:09:27 +01:00
Nikita Leshenko aaa11a6823 Convert case' to cl-case' to fix cl-lib related errors
Broken since PR #13059
2019-12-18 12:08:05 +01:00
Kalle Lindqvist 1095d3b7d3
shell: enable prompt autojump when using smart-eshell 2019-12-15 22:01:41 +00:00
emacspace 76245081d6 documentation formatting: Mon Dec 9 21:44:48 UTC 2019 2019-12-09 23:52:24 +02:00
Uros Perisic 628fe9adba
Add support to start external terminal emulators in context.
Integrated terminal emulators/integrated shells get the job done for
quick-and-dirty shell commands, but a lot of people take great care to tweak
their terminal workflow exactly to their liking. This makes it possible to
switch to that workflow seamlessly, by opening their terminal emulator of
choosing in the current directory or at the project root, and even supports
working over `ssh` using `tramp`.
2019-12-06 22:21:15 +01:00
emacspace c91779aff4 documentation formatting: Fri Nov 8 16:03:53 UTC 2019 2019-11-08 16:08:22 +00:00
Ag Ibragimov 08fdb02d7d [shell] Add vterm key bindings
- ~M-n~     =vterm-send-down= (next command)
- ~M-p~     =vterm-send-up=   (previous command)
- ~M-y~     =vterm-yank-pop=  (previous paste)
- ~M-/~     =vterm-send-tab=  (hippie expand)
Evil insert state:
- ~C-y~     =vterm-yank=      (paste)
Evil normal state:
- ~p~       =vterm-yank=      (paste)
- ~u~       =vterm-undo=

vterm: more keys
2019-11-06 12:01:31 +01:00
br3athein e528c6b038 shell: Set initial shell state better 2019-10-19 22:58:22 +02:00
smile13241324 bbe3e5bde1 [shell] Revise documentation 2019-10-19 22:34:49 +02:00
br3athein 72844d2ae9 shell: Tell vterm to respect shell-default-term-shell setting
Effectively, this forces `vterm` to spawn a shell set in a
`shell-default-term-shell` variable i/o default "/bin/bash" - just like
other shells from `shell-pop` do.
2019-10-19 22:21:05 +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 7db8815ee5 Simplify loading logic for eshell-z
* layers/+tools/shell/packages.el (shell/init-eshell-z): Replace use of
with-eval-after-load by using use-package's :after keyword to load eshell-z
when eshell is loaded.
2019-10-13 11:15:46 +02:00
syl20bnr fdd38eec9b [shell] Add instruction to install cmake on MacOS 2019-09-30 02:29:50 -04:00
deb0ch 2d232232d0 [shell] regroup redundant evil-define-key 2019-09-16 17:41:15 +03:00
deb0ch 2f8f21b3b1 [shell] enter insert mode when entering a terminal 2019-09-16 17:41:15 +03:00
deb0ch 3643bc7b6d [shell] add support for vterm
Support for https://github.com/akermu/emacs-libvterm
2019-09-16 17:40:32 +03:00
deb0ch 29e2fa11d9 [shell] inhibit global-centered-cursor-mode in terminals 2019-09-16 17:38:35 +03:00
Benjamin Hipple cea98bcd54 shell: allow evil normal-mode movement in terminal buffer
As mentioned in https://github.com/syl20bnr/spacemacs/issues/10779#issuecomment-427712967,
emacs 26.1 changed the default behavior for term-char-mode to prevent cursor
movement. This change restores consistent behavior on all versions of emacs and
allows normal-mode motions to work again.

Note that the buffer is still read-only while in normal-mode, so operators that
change the line (such as `C`, `D`, `S`) still don't work.

Fixes #10956
Fixes #10779
2019-08-05 18:17:36 +02:00
Sheng Yang 0a202138b9 Allow mouse pasting in term based shells 2019-06-21 19:22:25 +02:00
Taegil Bae 95940a64ee Add a layer variable to close window with terminal
Currently, when a terminal is ended, its window is also closed. This behavior is
not satisfying to all. Thus a layer variable is added to give an option whether
to close window with terminal.
2019-05-27 22:31:09 +02:00
emacspace c7c348a676 documentation formatting: Sun May 26 20:58:52 UTC 2019 2019-05-27 01:23:35 +03:00
Anton-Latukha f6660f82d4
Switch to the new layers generator 2019-05-15 21:08:21 +03:00
bb2020 e22cfadf1f [shell] Add Eshell Ivy completion bindings
M-l calls spacemacs/ivy-eshell-history
TAB calls spacemacs/pcomplete-std-complete
2019-05-12 18:47:27 +02:00
bb2020 9044aedf01 Enable helm-esh-pcomplete for eshell completion 2019-05-10 12:12:12 +02:00
bb2020 697d3b88ac [shell] Move eshell-z-freq-dir-hash-table-file-name into cache dir 2019-05-08 19:49:24 +02:00