Skip to content

Commit ee02091

Browse files
Updating documentations
1 parent af30f05 commit ee02091

File tree

11 files changed

+719
-662
lines changed

11 files changed

+719
-662
lines changed

README.md

Lines changed: 7 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -28,48 +28,17 @@ you can run c++ files anywhere you want.
2828

2929
## ⚡️ Getting Started
3030

31-
### 1. Running source file directly
32-
Suppose you have a c++ file called `script.cpp`, you can run it immediately by doing
31+
### Interactive Tutorial
3332

34-
> *shell*
35-
```shell
36-
runcpp2 ./script.cpp <any arguments>
37-
```
33+
You can get started by running the tutorial with `runcpp2 --tutorial` and follow the instructions
3834

39-
> [!NOTE]
40-
> On Unix, if you have added runcpp2 to your PATH and add this line `//bin/true;runcpp2 "$0" "$@"; exit $?;`
41-
> to the top of your script, you can run the script directly by `./script.cpp <arguments>`
35+
### User Guide
4236

43-
---
37+
You can also follow the documentation guide on
38+
[https://neko-box-coder.github.io/runcpp2/latest/guides/basics/](https://neko-box-coder.github.io/runcpp2/latest/guides/basics/)
4439

45-
### 2. Watch and give compile errors
46-
If you want to edit the script but want to have feedback for any error, you can use "watch" mode.
40+
### Examples
4741

48-
> *shell*
49-
```shell
50-
runcpp2 --watch ./script.cpp
51-
```
52-
53-
---
54-
55-
### 3. Sepcifying Build Settings
56-
Build settings such as compile/link flags, external dependencies, command hooks, etc.
57-
can be spcified inlined inside a source file or as a separate yaml file in the format of YAML
58-
59-
- To specify build settings in a dedicated yaml file:
60-
- The yaml file in the same directory and share the same as the source file being run will be used
61-
- To specify inline build settings inside a source file:
62-
- Put them inside a comment with `runcpp2` at the beginning of the build settings
63-
- The inline build settings can exist in anywhere of the source file
64-
- Both inline (but continuous) comments (`//`) and block comments are supported (`/* */`)
65-
66-
For a complete list of build settings, see [Build Settings](https://neko-box-coder.github.io/runcpp2/latest/build_settings/) or generate the template with
67-
68-
> *shell*
69-
```shell
70-
runcpp2 --create-script-template ./script.cpp # Embeds the build settings template as comment
71-
runcpp2 --create-script-template ./script.yaml # Creates the build settings template as dedicated yaml file
72-
runcpp2 -t ./script.cpp # Short form
73-
```
42+
You can find all the examples you can run out of the box in [https://github.com/Neko-Box-Coder/runcpp2/tree/master/Examples](https://github.com/Neko-Box-Coder/runcpp2/tree/master/Examples)
7443

7544

mkdocs/docs/TODO.md

Lines changed: 25 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -1,46 +1,48 @@
11
# Roadmap
22

3+
34
## Done
45

5-
!!! info "`latest` version"
6-
- More git options
7-
- Add branch/tag option for git
8-
- Add initialize submodule option for git
9-
- Async/Multi-thread compile and dependencies processing
10-
- Ability to skip DefaultPlatform and DefaultProfile
11-
- Handle escape characters at the end
12-
- To avoid situation like this:
13-
- Substitution string: `-I "{path}"`
14-
- Substitution value: `.\`
15-
- Substituted string: `-I ".\"`
16-
- Where the path contains escape character which escaped the wrapping quotes
17-
- Add platform map for PreferredProfile for user config
18-
- Add ability to reference local YAML file for config profiles
6+
### v0.3.0
7+
- More git options
8+
- Add branch/tag option for git
9+
- Add initialize submodule option for git
10+
- Async/Multi-thread compile and dependencies processing
11+
- Ability to skip DefaultPlatform and DefaultProfile
12+
- Handle escape characters at the end
13+
- To avoid situation like this:
14+
- Substitution string: `-I "{path}"`
15+
- Substitution value: `.\`
16+
- Substituted string: `-I ".\"`
17+
- Where the path contains escape character which escaped the wrapping quotes
18+
- Add platform map for PreferredProfile for user config
19+
- Add ability to reference local YAML file for config profiles
20+
- Add interactive tutorials and redo documentations
21+
22+
### Nightly
1923

2024
## Planned
2125

22-
### v0.3.0
23-
- Add interactive tutorials and redo documentations
26+
### v0.4.0
2427

2528
- Allow runcpp2 to be library for scriptable pipeline
2629
- Add version for default user config and prompt for update
2730
- Add more default profiles
28-
29-
### v0.4.0
30-
3131
- Migrate to libyaml
3232
- Ability to compile runcpp2 as single cpp
3333

34-
### TBD
34+
## High Priority
3535

36+
- Update `FileProperties.hpp` to use list of string for prefix and extension
37+
- Merge `SharedLinkFile` and `SharedLibraryFile`
3638
- Add the ability for user to specify custom substitution options which applies to all fields
3739
- Add the ability to append defines coming from the dependencies
38-
- Check last run is shared lib or executable. Reset cache when necessary if different type
40+
- Check last run is shared lib or executable. Reset cache when necessary if different type (`Src/runcpp2/CompilingLinking.cpp:502 LinkScript()`)
3941
- Add wildcard support for filenames and extensions (Files Globbing)
4042
- Add the ability to query script build directory
4143
- Add the ability to list script dependencies
4244

43-
## Planned But Low Priority
45+
## TBD
4446

4547
- Smoother CMake support by reading cmake target properties (https://stackoverflow.com/a/56738858/23479578)
4648
<!--
@@ -82,7 +84,7 @@ endfunction()
8284
print_target_properties(matplot)
8385
-->
8486
- Add the ability to specify different profiles(?)/defines for different source files
85-
- Use <csignal> to handle potential segfaults
87+
- Use `<csignal>` to handle potential segfaults
8688
- Use System2 subprocess if no prepend commands to be safer
8789
- Add tests and examples (On Windows as well)
8890
- Make SearchLibraryNames and SearchDirectories optional (?)

0 commit comments

Comments
 (0)