Compare commits
72 Commits
master
...
439d3af7d3
| Author | SHA1 | Date | |
|---|---|---|---|
| 439d3af7d3 | |||
| ae9f787c81 | |||
| 76fe09f39b | |||
| fa36a633ee | |||
| 6c2f3f9005 | |||
| a3d850acd9 | |||
| 01eeb9f0ac | |||
| 711f92b7dd | |||
| 5d2a7fa0a1 | |||
| 45d665f8f6 | |||
| f531886255 | |||
| 4e9aedd34c | |||
| 78c13f5766 | |||
| 82ad3ab29f | |||
| dd55d7fc5f | |||
| aa4bf8aea6 | |||
| 029e0b2952 | |||
| a3c1065f96 | |||
| 0c87fda795 | |||
| a4413cd052 | |||
| 4d81cd51a6 | |||
| 7149ad0118 | |||
| 1e635ee059 | |||
| 42a40fe7f3 | |||
| ce2949159c | |||
| 3ffdcc2865 | |||
| ecd94a2621 | |||
| 2713d29285 | |||
| d2846e1e4e | |||
| bccc5a35e2 | |||
| e65eb20048 | |||
| f10d4cd41d | |||
| 507a4d8651 | |||
| ce6c12f068 | |||
| fe6390c1cd | |||
| a8de77f370 | |||
| b35b98743b | |||
| 733a43ccde | |||
| b65565adfa | |||
| fac6ea6bcd | |||
| 7fe3e3e14d | |||
| cf59fdfcca | |||
| 6a4957588d | |||
| f4242f7749 | |||
| fd3c8fb204 | |||
| fd9d47f0c0 | |||
| d53ef9aa1b | |||
| a29ae43e84 | |||
| 41a9a2a3bf | |||
| 7bf6c3299c | |||
| 90c10d2a16 | |||
| 2dcf0529d1 | |||
| f740ff347b | |||
| 9b86553513 | |||
| 365940267f | |||
| b426b88b79 | |||
| bdf942371c | |||
| b62dce631f | |||
| 1546eb1028 | |||
| 4f3aebe64f | |||
| 413500dad3 | |||
| b0064c2f69 | |||
| 0f055603a2 | |||
| 094ac92fe4 | |||
| 3b8e407632 | |||
| d2f5823594 | |||
| be9981291c | |||
| 500a329dea | |||
| 70e9f79c8a | |||
| 13a405a801 | |||
| a6d2fb9e31 | |||
| 8b71af06a8 |
65
README.md
65
README.md
@@ -3,7 +3,8 @@
|
|||||||
CLIDE is an extendable command-line driven development environment written in Rust using the Qt UI framework that supports both full and headless Linux environments.
|
CLIDE is an extendable command-line driven development environment written in Rust using the Qt UI framework that supports both full and headless Linux environments.
|
||||||
The GUI is written in QML compiled through Rust using the cxx-qt crate, while the TUI was implemented using the ratatui crate.
|
The GUI is written in QML compiled through Rust using the cxx-qt crate, while the TUI was implemented using the ratatui crate.
|
||||||
|
|
||||||
It's up to you to build your own development environment for your tools. Plugins are planned to be supported in the future for bringing your own language-specific tools or features.
|
It's up to you to build your own development environment for your tools.
|
||||||
|
To add tools for your purposes, create a plugin that implements the `ClidePlugin` trait. (This is currently under development and not yet available.)
|
||||||
Once you've created your plugin, you can submit a pull request to add a link to the git repository for your plugin to the final section in this README if you'd like to contribute.
|
Once you've created your plugin, you can submit a pull request to add a link to the git repository for your plugin to the final section in this README if you'd like to contribute.
|
||||||
|
|
||||||
The following packages must be installed before the application will build.
|
The following packages must be installed before the application will build.
|
||||||
@@ -19,68 +20,6 @@ And of course, [Rust](https://www.rust-lang.org/tools/install).
|
|||||||
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
|
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
|
||||||
```
|
```
|
||||||
|
|
||||||
## Usage
|
|
||||||
|
|
||||||
To install and run clide
|
|
||||||
|
|
||||||
```bash
|
|
||||||
git clone https://git.shaunreed.com/shaunrd0/clide
|
|
||||||
cd clide
|
|
||||||
cargo install --path .
|
|
||||||
```
|
|
||||||
|
|
||||||
After installation `clide` can be used directly
|
|
||||||
|
|
||||||
```bash
|
|
||||||
clide --help
|
|
||||||
|
|
||||||
Extendable command-line driven development environment written in Rust using the Qt UI framework.
|
|
||||||
If no flags are provided, the GUI editor is launched in a separate process.
|
|
||||||
If no path is provided, the current directory is used.
|
|
||||||
|
|
||||||
Usage: clide [OPTIONS] [PATH]
|
|
||||||
|
|
||||||
Arguments:
|
|
||||||
[PATH] The root directory for the project to open with the clide editor
|
|
||||||
|
|
||||||
Options:
|
|
||||||
-t, --tui Run clide in headless mode
|
|
||||||
-g, --gui Run the clide GUI in the current process, blocking the terminal and showing all output streams
|
|
||||||
-h, --help Print help
|
|
||||||
```
|
|
||||||
|
|
||||||
### TUI
|
|
||||||
|
|
||||||
The TUI is implemented using the ratatui crate and has the typical features you would expect from a text editor.
|
|
||||||
You can browse your project tree, open / close new editor tabs, and save / reload files.
|
|
||||||
Controls for the TUI are listed at the bottom of the window, and update depending on which widget you have focused.
|
|
||||||
For now, there are no language-specific features or plugins available for the TUI – it is only a text editor.
|
|
||||||
|
|
||||||
To run the TUI, pass the `-t` or `--tui` flags.
|
|
||||||
|
|
||||||
```bash
|
|
||||||
# With cargo from the project root
|
|
||||||
cargo run -- -t
|
|
||||||
# Or via clide directly after installation
|
|
||||||
clide -t
|
|
||||||
```
|
|
||||||
|
|
||||||

|
|
||||||
|
|
||||||
### GUI
|
|
||||||
|
|
||||||
The GUI is still in development. It is at this point a text viewer, instead of a text editor.
|
|
||||||
There are many placeholder buttons and features in the GUI that do nothing when used.
|
|
||||||
|
|
||||||
The GUI is run by default when executing the `clide` application.
|
|
||||||
|
|
||||||
```bash
|
|
||||||
# With cargo from the project root
|
|
||||||
cargo run
|
|
||||||
# Or via clide directly after installation
|
|
||||||
clide
|
|
||||||
```
|
|
||||||
|
|
||||||
## Development
|
## Development
|
||||||
|
|
||||||
It's recommended to use RustRover or Qt Creator for development.
|
It's recommended to use RustRover or Qt Creator for development.
|
||||||
|
|||||||
Binary file not shown.
|
Before Width: | Height: | Size: 533 KiB |
@@ -6,7 +6,7 @@ use std::process::{Command, Stdio};
|
|||||||
|
|
||||||
pub mod gui;
|
pub mod gui;
|
||||||
pub mod tui;
|
pub mod tui;
|
||||||
/// Extendable command-line driven development environment written in Rust using the Qt UI framework.
|
/// Command line interface IDE with full GUI and headless modes.
|
||||||
/// If no flags are provided, the GUI editor is launched in a separate process.
|
/// If no flags are provided, the GUI editor is launched in a separate process.
|
||||||
/// If no path is provided, the current directory is used.
|
/// If no path is provided, the current directory is used.
|
||||||
#[derive(Parser, Debug)]
|
#[derive(Parser, Debug)]
|
||||||
|
|||||||
Reference in New Issue
Block a user