Most modern Integrated Development Environments (IDEs) and code editors have a feature to search across available functionality and items in an open project. In JetBrains IDEs, this feature is called Search Everywhere: it allows users to search for files, actions, classes, symbols, settings, and anything from VCS history from a single entry point. However, it works with the candidates obtained by algorithms that don’t account for semantics, e.g., synonyms, complex word permutations, part of the speech modifications, and typos. In this work, we describe the machine learning approach we implemented to improve the discoverability of search items. We also share the obstacles encountered during this process and how we overcame them.
Attila Szatmári Szegedi Tudományegyetem, Qusay Idrees Sarhan Department of Software Engineering, University of Szeged, Péter Attila Soha Department of Software Engineering, University of Szeged, Gergő Balogh Department of Software Engineering, University of Szeged, Árpád Beszédes Department of Software Engineering, University of Szeged
Niklas Krieger Institute of Software Engineering, University of Stuttgart, Sandro Speth Institute of Software Engineering, University of Stuttgart, Steffen Becker University of Stuttgart
Tim Kräuter Western Norway University of Applied Sciences, Patrick Stünkel Western Norway University of Applied Sciences, Adrian Rutle Western Norway University of Applied Sciences, Yngve Lamo Western Norway University of Applied Sciences