I needed TypeWriter, a great tool, but it was designed with Skia in mind. I want to use it with Stride and GlobalKeyboard. But the input to TypeWriter needs a device, a keyboard. I have worked out that I need to remove a node from the input and leave an Observable on the input. Made Vl.CoreLib editable and edited it, works fine. Then the problems start. If I make the library uneditable again, for some reason the library is not recompiled. Such changes also lead to export problems. Both in editable and non-editable mode. Exporting results in an error. I tried to do it with Nuget Overdrive, but that is also impossible because Vl.TypeWriter starts to conflict with itself and does not overdrive anything.
to work with any type of keyboard, it only needed to be changed in a few places and it worked. I am projecting experience from Beta, when modification âin placeâ was standard and always practised. But how to deal with this kind of situation now? Is there a strategy for immediate modification?
All of the options offered are very long, complicated and time consuming. Donât take this the wrong way, but my hands are dropping.
Letâs say this is the part where itâs an option to share code changes â github, wip section, addons. But the problem now is that I canât apply such a change. Does that mean I canât change CoreLib at all and in case there is an error there, I need to wait for the changes in the main branch?
Since there is a need to build a standard library, I think the problem is at that level.
UPD: Changed the thread title to make my suggestion
I had a similar issue recently, I ended up making a new patch, with a unique name, copied and pasted everything in, including any internal patches, then modifying and using that. The reverting to library thing confused me too!
I just tried and in principle it works as described in the other thread. But it looks like there is a bug with caching . The--nocache parameter doesnât seem to work and once a pack is deleted from the cache it doesnât get âre-cachedâ. @Elias .
I tried with a 6.2 installation though to not mess up the 6.3 one I am currently working with.
start vvvv with --editable-packages VL.CoreLib
make your changes
quit vvvv
go into the package-cache folder and delete the VL.CoreLib.2024.6 folder
The --nocache flag only works for packages not shipped with vvvv itself. For example the ones you installed via nuget or those you load from source.
Those shipped with vvvv itself get compiled on our build server and get some sort of special treatment apparently, bypassing that particular flag.
In any case, you should not modify files in the vvvv install folder or any installed nuget package for that matter. It will give you troubles in the long run, for example when starting the patch on another machine, or updating the package or updating vvvv or when building a new patch, or worse other patches depending on that node might break apart.
Like others pointed out already, make a copy of the patch and give it a new name. Should that copy have red nodes because of dependencies to internal nodes and itâs too much of a hassle to copy those too, you can mark the dependency to for example VL.CoreLib with IsFriend="true" in the .vl file (this needs to be done with a text editor, we donât offer this in the UI as we donât want to encourage anyone of doing so. Itâs an undocumented feature to get you out of some rare cases like the one you describe).
@yar
I just updated VL.IO.MouseKeyGlobal to the latest version of SharpHook, while at it I also added the TypeWriter node with Key Notification input, so it now comes with the package (>= v.5.3.5).
@bjoern thank you very much! a small thing, but important
In any case, it makes sense to change this in the main repository by adding such a node. Because currently TypeWriter from the standard library is only compatible with Skia