rearrange README / small document tweaks
This commit is contained in:
parent
e428c90803
commit
229e39fc26
3 changed files with 47 additions and 14 deletions
52
README.md
52
README.md
|
|
@ -1,21 +1,51 @@
|
|||
# swayconf
|
||||
Graphical interface for generating / editing i3/Sway configuration files.
|
||||
Configuration generator for the [Sway window manager](https://github.com/swaywm/sway).
|
||||
|
||||
## Building
|
||||
*Note: This project is still under heavy development and isn't even in alpha yet. Once I am able to generate my personal
|
||||
Sway config (see samples/config.toml), I may consider it an alpha build. Some of the features listed are not implemented
|
||||
yet, and EVERYTHING is subject to change.*
|
||||
|
||||
## Features
|
||||
|
||||
- Write your Sway configuration using TOML
|
||||
- Support for some Sway commands (WIP)
|
||||
- Automatically generate common groups of commands using our autogen module (coming soon)
|
||||
- Avoid errors in your Sway configuration with built-in validation (coming soon)
|
||||
- Export your config directly to Sway's command format
|
||||
|
||||
### Goals
|
||||
|
||||
- Full support for Sway config
|
||||
- Includes sway-output, sway-input, and swaybar.
|
||||
- Support for additional programs
|
||||
- Handle differences in configuration for i3
|
||||
- Configuration for Sway extension programs (swaylock, swayidle, swaybg)
|
||||
- Common third-party programs used with Sway (i.e. waybar, rofi, dmenu, mako, dunst, etc.)
|
||||
- Possibly some sort of schema format to automatically generate config structure, or make it module based
|
||||
- (very long way off) Other tiling window managers (i.e. hyprland, xmonad)
|
||||
- Graphical interface for managing configuration files
|
||||
- More examples / documentation
|
||||
|
||||
## Getting Started
|
||||
|
||||
First, clone the repo:
|
||||
```shell
|
||||
git clone https://github.com/cptlobster/swayconf.git
|
||||
cd swayconf
|
||||
```
|
||||
|
||||
The project is managed using Cargo. Make sure that it is installed, then you can build and run using:
|
||||
```shell
|
||||
cargo build
|
||||
```
|
||||
|
||||
## Testing
|
||||
```shell
|
||||
cargo test
|
||||
```
|
||||
|
||||
## Running
|
||||
```shell
|
||||
cargo run
|
||||
```
|
||||
|
||||
## Documentation
|
||||
|
||||
Documentation is a work in progress. Rustdoc can be generated using `cargo doc`, but a proper user guide does not exist.
|
||||
Potentially could resolve this by setting up Sphinx alongside this project and generating documentation there (there's
|
||||
an extension for Rustdoc support).
|
||||
|
||||
## License
|
||||
This program is licensed under the [GNU General Public License, version 3](LICENSE.md).
|
||||
|
||||
|
|
|
|||
|
|
@ -20,9 +20,11 @@ use crate::sway::options::{bind, exec};
|
|||
use crate::sway::options::exec::ExecParams;
|
||||
use crate::sway::runtime::Runtime;
|
||||
|
||||
/// Basic structure for a config file. While this structure is more defined than the Sway config
|
||||
/// file normally allows, this provides simple compatibility with Serde and allows for formatting
|
||||
/// your configs in TOML.
|
||||
/// Basic structure for a config file.
|
||||
///
|
||||
/// By default, Sway allows for configuration commands to be input in arbitrary order. While this
|
||||
/// structure has a much more rigid arrangement than Sway normally allows, this provides much
|
||||
/// simpler compatibility with Serde and allows for formatting your configs in TOML.
|
||||
///
|
||||
/// ## Example
|
||||
/// This TOML config:
|
||||
|
|
|
|||
|
|
@ -45,6 +45,7 @@ pub enum Runtime {
|
|||
#[strum(to_string = "floating {0}")]
|
||||
Floating(options::TogglableBool),
|
||||
Nop,
|
||||
Reload,
|
||||
#[strum(to_string = "split {0}")]
|
||||
Split(options::Split),
|
||||
#[strum(to_string = "set ${name} {value}")]
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue