Commit graph

98 commits

Author SHA1 Message Date
emacspace
eddf1dc460 documentation formatting: Fri Apr 23 14:03:32 UTC 2021 2021-04-23 23:00:39 +03:00
JAremko
982a3db01f [doc]fix the rest of exwm readme hls 2021-04-23 17:00:24 +03:00
JAremko
7f0f93d765 fix exwm readme 2021-04-23 16:54:12 +03:00
Kjartan Óli Ágústsson
7ef15a561a
Fix issues with EXWM layer (#14693)
Added header.
Removed cl-generic dependency which is not needed for current minimum version (or later) of Emacs.
2021-04-21 17:12:52 -04:00
Kjartan Óli Ágústsson
e290b10060
Replace function aliases with their real names (#14688)
`first` and `list-length` are aliases for `car` and `cl-list-length`
respectively. Using these aliases causes emacs to error with a `symbol's function
definition is void` error, but using their real names causes no error.

Replaced them with `car` and `length`.
2021-04-21 19:42:26 +00:00
Maximilian Wolff
2e02ac0a31
[exwm] Adjust layer README to match current standards 2021-04-19 23:04:38 +02:00
Diego Berrocal
a664569a48
Add Emacs Window Manager (EXWM) Layer AKA SpacemacsOS (#3321)
* Add Emacs Window Manager (EXWM) Layer

The time has come of SpacemacsOS

* set window manager name to EXWM

* update copyright notice

* start server when EXWM is active

When using EXWM, Emacs should be ready to receive clients but the final choice
should be the user's in their shell configuration.

* respect Spacemacs naming conventions and layer organization

* leave keyboard remapping to users

* add EXWM states for Evil

* add support for helm-exwm when helm is in use

* use both exwm-randr and exwm-systemtray

* set up workspaces to match displays by default

* use ido-config instead of the deprecated workaround

When using helm-exwm, its sources distinguish title and class automatically. It
is only necessary to keep the buffer name updated when the window title changes.
When using ido, rename differently for different applications.

* add bindings for common X keys

* use standard prefix commands where available

Spacemacs already has prefix commands for controlling windows.
These are directly available in exwm-state as well as in exwm-insert-state
through leader

* remove most keybindings as they are available directly in exwm-state

* enable exwm directly in the layer configuration

It is safe to enable it here as an existing window manager will simply fail with
a warning.

* add user-configurable variables for RandR and workspaces

By default, create as many workspaces as there are displays and assign them in
RandR order.

* fix naming convention for variables

* use helm for launching applications when possible

* fix conditional helm-exwm leader keys

* remove redundant function

EXWM provides the equivalent

* conform to naming convention for Spacemacs

* separate prefix commands into those for major mode and global

* remove all default bindings

* improve readability

* clean up bindings

* remove obsolete comments

Co-authored-by: M. Domenzain <luis.domenzain@parrot.com>
2021-04-19 22:53:59 +02:00
syl20bnr
8306626504 Move window-purpose layer to spacemacs-purpose layer
Update README.org and add spacemacs-purpose layer to spacemacs
distribution.
Move functions of the layer to funcs.el and prefix variables and
functions introduced by the layer with `spacemacs`.
2016-10-16 22:25:04 -04:00
Bar Magal
edb27a089e Create window-purpose layer
- Proper integration with popwin
- Integrate with Helm via helm-purpose
- Integrate with Ivy via ivy-purpose
- Integrate with opening a new eyebrowse workspace
- Enable purpose-x-kill: purpose-aware replacement of a window's buffer
  when a  buffer is killed
2016-10-16 22:25:04 -04:00
syl20bnr
944960daf8 Move eyebrowse to spacemacs-layouts layer and add documentation
Add toggle capability with ? for workspaces transient state
Remove the variable eyebrowse-display-help
2016-03-20 21:48:06 -04:00
syl20bnr
4d46a5e423 layouts: prefer symbol-value instead of eval
See first paragraph of
https://www.gnu.org/software/emacs/manual/html_node/elisp/Eval.html
2016-03-12 13:58:46 -05:00
Eivind Fonn
3412429360 Custom layout: eval name and binding 2016-03-12 17:59:28 +01:00
Eivind Fonn
1b503000c8 Move layouts functions to packages-funcs.el 2016-03-12 17:59:28 +01:00
Diego Berrocal
a86a0ee1ca Add IRC buffers to respective perspectives
This attempts to fix https://github.com/syl20bnr/spacemacs/issues/4781
2016-03-12 17:59:28 +01:00
syl20bnr
e2dbe1938c layouts and workspace: use new transient state keywords
Also cleanup the code and unify key bindings to make them consistent
between the two transient states.
2016-03-04 19:05:28 -05:00
syl20bnr
534cb7a7cd eyebrowse: respect 80 chars per line 2016-03-03 22:29:13 -05:00
syl20bnr
bc9123e265 eyebrowse: prefix workspace number in transient state 2016-03-03 22:28:50 -05:00
syl20bnr
09edfe3e37 Add C-0...C-9 bindings to layouts and workspaces
These key bindings does not exit the transient state
2016-03-03 22:21:05 -05:00
Muneeb Shaikh
28a1b50cdb eyebrowse: highlight current workspace in transient state 2016-03-03 20:55:40 +01:00
Muneeb Shaikh
cc544b1654 layouts: highlight current layout in transient state 2016-03-03 20:55:37 +01:00
Christian E. Hopps
2b99909491 also exit layout selection on number key
Match workspace exit behavior with layouts
2016-03-01 18:49:21 +01:00
Diego Berrocal
71d48e0952 Exit layout transient state on select custom layout
This was asked for in the gitter chat. I thought at first it would be
great for when people wanted to open many perspectives at the same time,
but now I don't think the same. It'd be very hard to modify the macro
for adding custom layouts to make this argument optional, so I leave it
at @syl20bnr discretion.
2016-02-27 14:58:15 +01:00
Eivind Fonn
5b345a6f07 Add dynamic list of workspaces in transient state 2016-02-27 14:57:55 +01:00
Eivind Fonn
e061b13eb5 Add binding to spacemacs/goto-buffer-workspace 2016-02-25 20:41:37 +01:00
bmag
ecaeb8db3b Eyebrowse: goto buffer in workspace
spacemacs/find-workspace, spacemacs/display-in-workspace and
spacemacs/goto-buffer-workspace allow us to find and display a buffer's
workspace.
2016-02-25 20:36:08 +01:00
Andrew Cates
3a77158a74 fix call to correctly go to transient-state
we want to call workspaces-transient-state vs workspaces-micro-state.
this was probably just an oversight, but nonetheless keeps the fn from
working properly and needs to be updated.
2016-02-25 20:30:00 +01:00
justbur
d0cec17919 ivy: spacemacs layouts support
- port helm-perspectives
- port persp switch buffer
- port persp-close[kill]-other to use ivy
- layouts-ts: Make help more consistent
- layouts-ts: Reorganize docstring
Instead of one big list, try to organize into sections to make it easier
to find the right key
2016-02-16 23:55:23 -05:00
syl20bnr
f0e113391c Fix docstring for layout transient state 2016-02-15 00:07:46 -05:00
syl20bnr
5ac51287cd Replace close words by delete in documentation 2016-02-14 23:11:52 -05:00
Robert O'Connor
4348c17433 Switch “bc”->“bd” and “wc”->“wd”
Also:
- switch spacemacs layouts to the same.
- Add “wD” for ace-delete-window
- switch window dedication toggle to “wt”
- all documentation has been updated to reflect these changes

Closes #5031
2016-02-14 23:09:45 -05:00
Fabien Dubosson
24f0e8cc4b Restart Spacemacs restoring layouts
Fix #5058
2016-02-14 20:59:05 -05:00
Muneeb Shaikh
5bdb8ae1af eyebrowse: transient-state doc fix 2016-02-09 21:33:51 +01:00
Bar
e1ddc75024 Switch project layout: rename buffer
Rename "*Projectile Layouts*" to start with "*Helm" like the other helm buffers.
2016-02-07 14:52:47 +01:00
justbur
b149f4e13a transient-state: new dotspacemacs variable to hide titles
dotspacemacs-show-transient-state-title
2016-01-31 23:50:10 -05:00
justbur
e80ae8ac93 eyebrowse: Remove old doc declaration 2016-01-31 23:49:49 -05:00
justbur
be077294c1 layouts: Use :additional-docs option for transient state 2016-01-31 23:49:44 -05:00
justbur
3a810b43a2 layouts-ts: Temp fix for dynamic docstring 2016-01-31 23:48:18 -05:00
bmag
407f98a1c8 Ensure new workspace/layout only shows home buffer
Previous code would show two windows when invoked from a window that is
dedicated to its buffer: the home buffer and the dedicated buffer.
2016-01-31 23:19:39 -05:00
Balaji Sivaraman
2b1ed603dc Change all references of micro-state in codebase to transient-state 2016-01-31 23:04:47 -05:00
Diego Berrocal
f386cbc801 Let SPC TAB work only in the current buffer 2016-01-31 11:11:26 -05:00
Diego Berrocal
fbcfe42605 Allow perspectives to change buffer-list 2016-01-31 11:08:47 -05:00
Diego Berrocal
8239c950f9 [layouts] Remove warnings for repeated bindings
This fixes:
1. Repeated bindings
2016-01-31 11:08:47 -05:00
Eivind Fonn
72e1413e22 Fix workspaces transient state 2016-01-26 12:16:54 +01:00
bmag
26cda7ef12 Fix transient workspace tags
Switching between layouts didn't save the tag of any (eyebrowse)
workspace, resulting in transient workspace tags.  This fixes it so tags
are saved correctly.
2016-01-26 01:21:02 -05:00
syl20bnr
7472991d44 eyebrowse: fix error with TAB binding in docstring
[_TAB_] does not work, changed it to [_[tab]_]
2016-01-26 01:21:01 -05:00
justbur
d2582fceec transient-state: Improve some docs 2016-01-26 01:21:01 -05:00
justbur
e97af03ff7 Call new micro-state a transient state 2016-01-26 01:21:00 -05:00
justbur
d38d64dad7 layouts: Translate layouts micro-states 2016-01-26 01:21:00 -05:00
justbur
ca5b67c2f2 eyebrowse: Translate workspaces micro-state 2016-01-26 01:21:00 -05:00
Joris Engbers
c5166bc155 Update the documentation for spacemacs-layouts
Two specific issues have been addressed. In README.org there was no
mention of the workspaces micro-state.
The micro-state documentation erroneously stated that 'R' could be used
to create a new layout. 'l' was mentioned nowhere as the way to create a
new layout.

The rest of this commit only updates both docs to contain the same info.
2016-01-18 00:34:57 -05:00