Skip to content

Commit

Permalink
Dm/init (#770)
Browse files Browse the repository at this point in the history
* do not log imports

* update ui

* 2d parsing might be ready to try

* WIP

* csv working...gotta think about it

* working on init

* new years eve

* 1d and 2d csv working

* WIP

* tests passing

* ready to update docs

* WIP

* hrm maybe no need to track first x in watch?

* only create file if needed

* readme

* improve logging on watch

* improve new

* csv2d tests passing

* cleanup

* add back csv1d

* demo working

* demo working

* wip

* some lints
  • Loading branch information
xasopheno authored and WereSoCool Bot committed Mar 14, 2023
1 parent fcb1eb9 commit 3cded50
Show file tree
Hide file tree
Showing 80 changed files with 1,206 additions and 644 deletions.
45 changes: 27 additions & 18 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

36 changes: 18 additions & 18 deletions Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "weresocool"
version = "1.0.43"
version = "1.0.44"
edition = "2021"
authors = ["Danny <weresocool@xasopheno.com>"]
description = "***** WereSoCool __!Now In Stereo!__ ****** Make cool sounds. Impress your friends."
Expand All @@ -24,27 +24,27 @@ depends = ["lame", "vorbis-tools"]
provides = ["weresocool"]

[target.'cfg(target_os = "windows")'.dependencies]
weresocool_core = { path="core", version = "^1.0.43", features = ["windows"] }
weresocool_error = { path = "error", version = "^1.0.43", features=["windows"] }
weresocool_core = { path="core", version = "^1.0.44", features = ["windows"] }
weresocool_error = { path = "error", version = "^1.0.44", features=["windows"] }
[target.'cfg(target_os = "linux")'.dependencies]
weresocool_core = { path="core", version = "^1.0.43", features = ["windows"] }
weresocool_error = { path = "error", version = "^1.0.43", features=["windows"] }
weresocool_core = { path="core", version = "^1.0.44", features = ["windows"] }
weresocool_error = { path = "error", version = "^1.0.44", features=["windows"] }
[target.'cfg(target_os = "macos")'.dependencies]
weresocool_core = { path="core", version = "^1.0.43", features = ["app"] }
weresocool_error = { path = "error", version = "^1.0.43", features=["app"] }
weresocool_core = { path="core", version = "^1.0.44", features = ["app"] }
weresocool_error = { path = "error", version = "^1.0.44", features=["app"] }

[dependencies]
weresocool_core = { path="core", version = "^1.0.43", default_features=false }
weresocool_error = { path = "error", version = "^1.0.43", default_features=false }
weresocool_parser = { path = "parser", version = "^1.0.43", default_features=false, optional=true }
weresocool_ast = { path = "ast", version = "^1.0.43", default_features=false, optional=true }
weresocool_instrument = { path = "instrument", version = "^1.0.43", default_features=false, optional=true }
weresocool_portaudio = { path = "portaudio", version = "^1.0.43", default_features=false, optional=true }
scop = { path = "scop", version = "^1.0.43" }
opmap = { path = "opmap", version = "^1.0.43" }
weresocool_shared = { path = "shared", version = "^1.0.43" }
weresocool_analyze = { path = "analyze", version = "^1.0.43" }
weresocool_ring_buffer = { path = "ring_buffer", version = "^1.0.43" }
weresocool_core = { path="core", version = "^1.0.44", default_features=false }
weresocool_error = { path = "error", version = "^1.0.44", default_features=false }
weresocool_parser = { path = "parser", version = "^1.0.44", default_features=false, optional=true }
weresocool_ast = { path = "ast", version = "^1.0.44", default_features=false, optional=true }
weresocool_instrument = { path = "instrument", version = "^1.0.44", default_features=false, optional=true }
weresocool_portaudio = { path = "portaudio", version = "^1.0.44", default_features=false, optional=true }
scop = { path = "scop", version = "^1.0.44" }
opmap = { path = "opmap", version = "^1.0.44" }
weresocool_shared = { path = "shared", version = "^1.0.44" }
weresocool_analyze = { path = "analyze", version = "^1.0.44" }
weresocool_ring_buffer = { path = "ring_buffer", version = "^1.0.44" }
clap = "4.0.27"
thiserror = "1.0.31"
notify = "5.0.0-pre.14"
Expand Down
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@

A language for composing mictoronal music built in Rust. You might find this language useful if you want to make cool sounds and impress your friends/pets/plants.

This language does not require familiarity with either microtonal music or computer programming, but experience with either will certainly help.
This language is designed to be easy to use, and you don't need any prior knowledge of microtonal music or computer programming. However, experience in either area will certainly be helpful.

The **WereSoCool CLI** is availble on **macOS**, **Linux** and **Windows**. You can also explore the language in a Firefox or Chrome browser on a desktop computer in the [WereSoCool Playground](https://www.weresocool.org/playground). Live coding in the browser currently only works on desktop in a Firefox or Chrome browser.

Expand All @@ -12,7 +12,7 @@ If you want to learn how to make cool sounds using WereSoCool, you'll find cool
at [weresocool.org](https://www.weresocool.org/).


My recommended approach to learning the language is to do the tutorials in order and write your own composition after completing each one. I'm currently working on additional documentation as well as a record I've made using WereSoCool featuring a great band. Stay tuned.
I recommend following the tutorials in order and writing your own composition after completing each one. Additional documentation is currently being worked on, as well as a record featuring a great band, so stay tuned.

On mobile, you can still view the tutorials, but you won't be able to hear anything.

Expand Down
4 changes: 2 additions & 2 deletions analyze/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "weresocool_analyze"
version = "1.0.43"
version = "1.0.44"
authors = ["Danny Meyer <weresocool@xasopheno.com>"]
edition = "2021"
description = "audio analysis for WereSoCool"
Expand All @@ -10,4 +10,4 @@ resolver="2"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html

[dependencies]
weresocool_shared = { path = "../shared", version = "^1.0.43" }
weresocool_shared = { path = "../shared", version = "^1.0.44" }
12 changes: 7 additions & 5 deletions ast/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,17 +1,17 @@
[package]
name = "weresocool_ast"
version = "1.0.43"
version = "1.0.44"
authors = ["Danny Meyer <weresocool@xasopheno.com>"]
edition = "2021"
description = "AST for WereSoCool"
license = "GPL-3.0"
resolver="2"

[dependencies]
weresocool_ring_buffer = { path = "../ring_buffer", version = "^1.0.43" }
weresocool_error = { path = "../error", version = "^1.0.43", default_features=false, optional=true }
weresocool_shared = { path = "../shared", version = "^1.0.43" }
scop = { path = "../scop", version = "^1.0.43" }
weresocool_ring_buffer = { path = "../ring_buffer", version = "^1.0.44" }
weresocool_error = { path = "../error", version = "^1.0.44", default_features=false, optional=true }
weresocool_shared = { path = "../shared", version = "^1.0.44" }
scop = { path = "../scop", version = "^1.0.44" }
num-rational = { version = "0.3.2", features = ["serde"] }
rand = { version="0.7.3", features=["wasm-bindgen"]}
serde = { version = "1.0.119", features = ["derive"] }
Expand All @@ -23,6 +23,8 @@ num-integer = "0.1.44"
polynomials = "0.2.4"
meval = "0.2.0"
csv = "1.1.6"
hamcrest2 = "0.3.0"
peekread = "0.1.1"

[features]
default=["app"]
Expand Down
7 changes: 6 additions & 1 deletion ast/src/ast.rs
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
use crate::datagen::Scale;
use crate::Term;
use num_rational::Rational64;

Expand All @@ -14,10 +15,14 @@ pub enum Op {
Id(String),
Tag(String),
//
CSV {
CSV1d {
path: String,
scale: Option<Rational64>,
},
CSV2d {
path: String,
scales: Vec<Scale>,
},
//
FunctionCall {
name: String,
Expand Down
File renamed without changes.
3 changes: 3 additions & 0 deletions ast/src/datagen/2d_test_data.csv
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
2.5,1.0
1.0,2.0
1.5,2.0
6 changes: 4 additions & 2 deletions ast/src/datagen/test.rs → ast/src/datagen/csv1d_test.rs
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,9 @@ mod eeg_test {
use num_rational::Rational64;

use crate::{
datagen::{csv_to_normalform, eeg_data_to_normal_form, eeg_datum_to_point_op, CsvData},
datagen::mod_1d::{
csv1d_to_normalform, eeg_data_to_normal_form, eeg_datum_to_point_op, CsvData,
},
NameSet, NormalForm, PointOp,
};
#[test]
Expand Down Expand Up @@ -55,7 +57,7 @@ mod eeg_test {
}
#[test]
fn test_csv_to_normalform() {
let result = csv_to_normalform(
let result = csv1d_to_normalform(
"./src/datagen/test_data.csv",
Some(Rational64::new(200_000_000_000_000, 1)),
)
Expand Down
Loading

0 comments on commit 3cded50

Please sign in to comment.