GitHub Previews Improved Code Search: 'Way More than grep'
GitHub is inviting developers to take part in a technology preview of improved code search, which it describes as "way more than grep," the Linux command-line search utility.
The project has its own web site and a temporary interface separate from GitHub.com, though functionality may be baked into IDEs and code editors later, with GitHub asking developers what tools would make good candidates for integration.
One aspect of the project is improved search syntax, which differs from the regular GitHub.com search syntax with introduction of new operators for regular expression and symbol searching.
Functionality highlighted by the Microsoft-owned development platform include:
- Easily find what you're looking for among the top results, with smart ranking and an index that is optimized for code.
- Search for an exact string, with support for substring matches and special characters, or use regular expressions (enclosed in
- Scope your searches with
repo: qualifiers, with auto-completion suggestions in the search box.
- Refine your results using filters like
extension: and Boolean operators (
NOT). Search for definitions of a symbol with
- Get your bearings quickly with additional features, like a directory tree view, symbol information for the active scope, jump-to-definition, select-to-search, and more!
Access to the technology preview is limited, and developers can apply to be put on the waitlist here.
Going forward, GitHub plans to experiment with scoring and ranking heuristics to find the best approach, explore the most potentially impactful APIs and integrations and add support for more languages to the language-specific features.
"For code search, our vision is to help every developer search, discover, navigate, and understand code quickly and intuitively," the company said. "GitHub code search puts the world's code at your fingertips: everything is just a search away. It helps you maintain a flow state by showing you the most relevant results first and helping you with auto-completion at every step. And once you get to a result page, the rich browsing experience is optimized for reading and understanding code, allowing you to make sense of unfamiliar logic quickly, even for code outside your IDE."
David Ramel is an editor and writer for Converge360.