-
-
Notifications
You must be signed in to change notification settings - Fork 32
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Updating for 4.0 Update #46
base: master
Are you sure you want to change the base?
Conversation
Thank you so much for this work! I'll see if I can't give this a try some time in the next week, and I'll also see what's up with the logs in vim-sonic-pi so I can fix that |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Neat! Could you document how to use the tool now and the version requirements? Thanks
Hi @lpil - Thank you. Version Requirements:
Regarding Documentation:
The only case that I guess would not be supported any more would be: Before
Now
But is that a common use case where people starting the sonic pi application vs doing sonic-pi-start server? |
Fab, thanks. Could we get these new requirements documented in the README? It would be fab to have it work with the application if possible, this is how I would typically run it as I like to be able to read the documentation. I'm not sure if that is possible though. |
Thanks for your work - this is the closest I've been to a comfortable SuperCollider experience. I'm still having a few issues around the paths for
I managed to get the server to start by adding the following to the paths in String::from("/nix/store/53ra8y5nw6zkipm5cglr3343q1x1zygi-sonic-pi-4.4.0/app/server/ruby/bin"), It "worked" in that it started the server but playback sounded like garbage, presumably because it is missing some paths that would be configured when run through the I started the Sonic Pi GUI and manually configured
Any idea what's going on? Is there a more portable way to detect the paths for |
@lpil - A bit of a necro, but I have been into other things and this wasn't really a priority. I added a sync command that allows you to sync with the GUI with a bit of unix command-ering to get the port and token. Couldn't think of a different way of doing it - but added some documentation for it. @pnelson - Thanks for reminding me about this branch :P - I don't know if there's a more portable way of detecting where the binary lives without some potentially involved work, not familiar with how NixOS is installing SonicPi. |
|
||
```sh | ||
sonic-pi-tool sync 33926 1839294199 | ||
### Now sonic-pi-tool is sync'd with that server |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The user should be able to read this document and then know all need to know to be able to use the tool, so they'll need to know what numbers to use here.
fn write_config_toml(cfg: &config::SonicPiToolCfg) { | ||
std::fs::create_dir_all(&config::SonicPiToolCfg::get_default_cfg_folder()).unwrap(); | ||
std::fs::write(&config::SonicPiToolCfg::get_default_cfg_file_path(), | ||
toml::to_string(cfg).unwrap()).unwrap(); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Could you run the formatter please? Thank you
Updated to SonicPi 4.3 and it broke all my vim integrations - So I figured I could wire it up.
I tested with vim-sonic-pi and everything is working but the
:ShowLogs
command. But running:!sonic-pi-tool logs
works correctly - so it seems to be somewhere in the VimScript which I can't really get too deep into.But outside of that, tests are passing and all commands are working as previous versions.
Changes Required:
server.rb
todaemon.rb
Some Crates Added:
Serde / Serde_derive / toml: To easily serialize and deserialize the configuration file. Picked toml because it's well supported in rust and the configuration files of sonic pi are already toml. I figured using the same sonic-pi path was a good idea cause it avoids more clutter on the user's
~/
duct: To easily run the daemon and get the ports from the output.
Thanks for the tool :)! - Hope this helps!