Rack v1 development blog

I think if there was an option to move a row left/right from a first module, which would be great btw, it would stand to reason that it could move both left and right not just right. So it would be solving for a solution that would need to be implemented before the fact! Moving a row down not too sure that would be good. Inserting a row on the other hand…

oh I see what you mean, you would have to unlock if you wanted to patch outside of the window. Perhaps a key combo would be good for that e.g. ctrl + pipe ( | ) drag to stop going over bounds of the window or just pipe drag.

The pipe key/symbol is no good for keyboard modifiers. On most of the worlds keyboard layouts, special symbols like the pipe are not a single key, but in itself requires a modifier key to produce. English/American keyboard layout users often forget this. With today’s ever slimmer (mutilated) keyboard layouts, the only really safe and universal ones to use are: CTRL/ALT/SUPER+{Shift}+(a-z)/(1-0)

1 Like

I’m sure it wouldn’t be pipe if it ever came to be. I was using it as an example…

The fuzzy search algorithm is not ideal. I’d be happy for a C or C++ programmer to send me an algorithm that scores a query against a match with the following rules. Suppose that “Fundamental VCA” is the matched string.

  • Higher score for longer contiguous matches. “fundam” should score higher than “fund”.
  • Slightly higher score for more subsets. “fdm” should score higher than “fd” but significantly lower score than “fun”.

I’m aware of the author and tag list items not giving graphical feedback for being selected. The design of Module Browser is not yet finalized.

I’ve removed a few nonrelated feature requests from this thread. See https://vcvrack.com/manual/FAQ.html#i-have-a-feature-request for feature requests.

I’m not sure this wouldn’t make it feel very much “all at sea” and not very grounded navigation wise. I’d almost say go the other way with fixed width and maybe 3 rows, but allow extra racks to be added top/bottom/left/right and inserted as needed. can still have arbitrary large sizes, just more of a grow as you go kinda thing.

with the current model you can at least get a very satisfying and definite thunk to the left/top, finding your base easily.

2 Likes

If it was infinite in both directions or not. Would a navigation window or plugin be worth a look also. Floating window would be most ideal, bring it up with a hotkey. Dragging a cable to this panel/window would jump to the coordinates of the the module underneath the cable upon release of a certain key. Or just clicking on the spot on the floating window would jump to that point in the rack. It could be a zoomed out view smaller than the inner window.

Something like this:

2 Likes

If I was making 7 figures, sure.

:laughing:

I submit for general consideration to steal a page from Quicksilver’s book here. Quicksilver (a mac launcher app) uses flex matching to narrow actions, but it also remembers what option you actually chose after typing it in. So after a couple of uses it remembered “VC1” was “VCA-1” regardless of what the best match actually was.

So basically a C version of grizzl. (a.k.a. the flx or flex matching algorithm, as it seems to be known in text editing culture.)

1 Like

If you want to tackle that, use a function signature similar to

float fuzzyScore(const char *s, const char *query);

No globals please, so you’ll have to omit the “remembering” thing you’re talking about.

Will the multicore option be global, ie not patch depended? I’m using the fork (that I forget the name of) and having to set it every time I open a patch is a bit annoying.

The number of threads is saved to settings.json.

Rack now associates .vcv patch files with itself when installed on Mac and Windows. You’ll need to update GLFW after pulling.

git submodule sync
git submodule update
rm dep/lib/libglfw3.a
make dep
7 Likes

on Linux can you open a patch with Rack patch.vcv?

2 Likes

That works on all platforms.

2 Likes

Running into this problem today with v1 and the new glfw:

src/main.cpp:128:53: error: ‘glfwGetOpenedFilename’ was not declared in this scope
const char *openedFilename = glfwGetOpenedFilename();

Apologies if this isn’t the place to post the error. Do you prefer all v1 issues posted on github ?

having the same problem on MAC 10.13 Xcode 9.2

src/main.cpp:128:31: error: use of undeclared identifier 'glfwGetOpenedFilename'
        const char *openedFilename = glfwGetOpenedFilename();