[Request for Feedback] Searching in Dynamo

image
Warning suggests “Convert Units” but no node exists and the search returns nothing.
image
“Convert By Units” will return its respective node but not ConvertByUnits.
“ConvertByUnits” will return its respective node but not Convert By Units.

4 Likes

What you need to do FIRST is to standardize Node NAMING.
Second, the search would cover node names AND node descriptions (or make the latter optional with “expanded search”)

2 Likes

First at all is, I think team need to define again node name standard, may node with standard is having space, many name nodes are standard with no space between word.
Example :

  • Select Model Element => It should be can follow standard SelectModelElement
    And then when user search, easy to consider search because at the moment :

  • With search Select Model Element => have result

  • With search SelectModel... => Nothing.

And then with create a new package, also have standard is recommended developer is following with name standard, it will be help first, and then can think for another algorithm to optimize search.

2 Likes

A huge thank you to everyone who has passed in failing cases here, we are happy to report that with initial work we have solved all of the Dynamo core failures by implementing Lucene and indexing heavily into… search indexing :nerd_face:

Apache Lucene is a high-performance, full-featured text search engine library written in Java.

A handful of such successes show below with implementation in the right-click only search and failures currently in the Library search. Ongoing work will unify both and improve across the board :slight_smile:

Convert Units

String from Object

Coordinate System Origin

Curve Trim

List Join

Sneak peek of also seeing a mock-up of ability to search for Documentation in this search also (Such as Extended Node Help and Sample Files), referenced by the jarring icons :wink:

7 Likes

Looks promising.

What would also be very helpful is the possibility to limit the search to nodes with a specific input type and/or output type. (I don’t think this is possible yet, correct me if I’m wrong).

Could be solved via checkboxes or additional input fields. Or by simply typing it into the search bar with “input:xyz” and “output:abc” in addition to the search word.

E.g:
“element output:string” will only return nodes that have “element” in the name or description AND have at least one output of type “string” / “strings”.
This should list nodes like “element.name” for example.

“Input:Double” should list every node with at least one number (double) as input.
And so on…

These are the basics. Of course you could extend this with the many possible input and output types, including those of custom packages perhaps.
E.g. a search for “input:parameter” would only show nodes that have at least one input of type “parameter”. In this case all types of parameter (e.g. also “FamilyParameter”). Of course you could also specify it in the search e.g. enter exactly “Revit.Elements.Parameter” where then also only these types are shown and no others.

I hope this is somehow possible to implement.

Thanks for the work so far.

2 Likes

Hi,
some nodes became untraceable with the search engine, or they changed name?

Element Classes I believe.

2 Likes

Ha thanks, good to know

image

4 Likes

Hello everyone - The blog post will be out immanently, but suffice it to say that Dynamo Search has been dramatically upgraded in Dynamo 2.19 :star_struck:

Sneak peek of functionality:

  • It simply works much better
  • Spaces or periods don’t matter anymore
  • Typo support
  • In all instances of Search (Library, in-canvas, Package Manager, Graph Node Manager etc.)
  • Hierarchy preferences correct match, name and category above description and lower-tier elements
10 Likes

After Revit 2019 the dynamo version with search is bad, i don’t find nodes anymore.

I am expecting to find any node that contains any word or part of words in the dynamo library: node name, node description, node inputs.

Could be good to search as well in the nodes used in the script but doesn’t matter if working only with python code.

Would be good to be able to search words in python node code as well

Have you tried search inDynamo Core 2.19?

1 Like

Can we use that dynamo version on revit 2019 to 2022?

Not in a supported way. Nor should you be using 1/2 of the versions listed as they are not supported. Utilization of 2019 and 2020 is a security risk.

2 Likes

Hi all,

Just wanted to make a small note that searcing for SpecTypes will not retrieve the node called Spec Types.

1 Like

I just came here to ask if there was any development on the search. The first post mentions “this year”, I have the latest dynamo version and search is just as bad as it was.

To give feedback and not just complain, none of the exact names give match:
list.getitem → no match
getitem → match

element.setparam → no match
setparam → match

Hi,

When you say the latest version, is it Dynamo Core 2.19?

Given that the Dynamo version is tied to the version of Revit used, mine is only at 2.16 and I am on the latest update of Revit 2023…

Hope that helps,

Mark

1 Like

Hi @daninet - In Dynamo 2.19 we have updated the base Search from our legacy version to the new Lucene powered Search. This naturally has some differences as outlined here Dynamo 2.19 Release - #5 by solamour.

We see this baseline as much better than the previous but still have some room to improve and are working on the specific case of typing in the node name in it’s entirely - i.e. Element.SetPar returning Element.SetParamterValueByname

Hello Mark, Yes I’m aware, we are using Revit 2024.2 and my Dynamo version is 2.19.3

1 Like

Hi,
Thank you for your work.
I’m going to be honest I felt little to no improvement when upgrading my dynamo core version. If I’m looking on the release notes “set parameter” or “get parameter” should return the element.setparameterbyname or element.getparameterbyname nodes but it is not happening.
2023-12-08 11_02_16-Autodesk Revit 2024.2 - 1TB05500-500D06-AME-04-ZZ-LS-MOD-10100.rvt - Sheet_ 600

2023-12-08 11_02_38-Dynamo

At this point I’m lost at how to search for certain kind of nodes. If I remain with the previous example and I want the element.setparameterbyname node I have tried the following keywords with no match:

  • element set parameter
  • set parameter
  • element.setparameter
  • parameter

however this works: setparameter

So I guess the logic is now I will search for the exact node name without the input type?
I know you guys don’t have much to do with this, but certain projects are tied to certain revit versions for years, and it is really messy that I have to memorize search logic for different kind of dynamos as I have running project on 2022, 2024 and next time we upgrade will be 2026. So maybe I get two more update then nothing for years.

2 Likes