Ad

YouCompleteMe: Vim Code Completion Engine

YouCompleteMe provides fast, as-you-type code completion, comprehension, and refactoring for Vim, supporting numerous languages with various language servers.
Screenshot of ycm-core/YouCompleteMe homepage

YouCompleteMe is a comprehensive code completion engine for Vim that delivers fast, fuzzy-search completion, comprehension, and refactoring capabilities. It features a versatile identifier-based engine compatible with virtually any programming language and integrates powerful language server completion engines like clangd, Jedi, and OmniSharp-Roslyn. YCM provides semantic completion for C/C++/Objective-C/Objective-C++/CUDA, Python, C#, Go, JavaScript/TypeScript, Rust, and Java. This allows for intent-based completions, enhancing developer productivity.

YCompleteMe distinguishes itself through its ability to provide semantic completion for a wide array of languages using LLPs like clangd, Jedi, and OmniSharp-Roslyn. The engine is designed for speed and responsiveness, offering suggestions as the user types without requiring explicit keyboard shortcuts. Furthermore, it supports sophisticated filtering and ranking systems to ensure the most relevant completions appear first, improving the overall coding experience.

  • Identifier-Based Engine: Provides completion for any language based on identifier lookups, regardless of language-specific features.
  • Semantic Completion: Integrates with various Language Servers (clangd, Jedi, OmniSharp-Roslyn, etc.) for deeper, more context-aware suggestions.
  • Wide Language Support: Supports a growing number of languages including Python, C++, Java, JavaScript, Go, Rust and more.
  • Diagnostic Display: Highlights errors and warnings directly in the Vim editor's gutter, providing immediate feedback.
  • Extensible Architecture: Designed for easy integration with Language Servers and supports custom completers and autocommands.

YouCompleteMe is a mature and actively maintained project with a long history of development, a large user base, and regular updates. The project boasts comprehensive documentation, a responsive community, and a high level of reliability. Recent commits indicate ongoing development and issue resolution, ensuring its continued functionality and adaptability to new languages and features.

YouCompleteMe benefits developers by significantly accelerating code writing and reducing errors through intelligent, context-aware completion suggestions. It streamlines the coding workflow, enhances code quality, and improves overall productivity by providing deeper insights into code structure and available options, addressing the limitations of simple keyword-based completion.

Summarize:
Share:
Stars
25,907
Forks
2,754
Issues
34
Created
14 years ago
Commit
16 days ago
License
GPL-3.0
Archived
No
Updated 16 days ago

Similar Repositories