Hey, swift community!
I'm Vivek, a junior year Computer Science and Engineering student at RGIPT, with three months of Swift development experience, including the creation of small-scale apps. My fascination with compilers and parsers has led me to SwiftSyntax and the prospect of improving code completion in Swift.
Project Overview:
This project aims to enhance code completion in Swift by leveraging swift-syntax. By analyzing Swift's grammar rules, we'll identify valid completions and implement algorithms to filter out irrelevant suggestions. Integration with SourceKit or SourceKit-LSP will ensure seamless transmission of results to Xcode.
Approach:
- Familiarize with SwiftSyntax to understand parsing and traversal capabilities.
- Analyze Swift's grammar rules to identify valid completions.
- Implement algorithms for contextual filtering to refine completion suggestions.
- Integrate completion engine with SourceKit or SourceKit-LSP for Xcode compatibility.
Expected Outcomes:
Comprehensive keyword and punctuator completions within the Swift syntax tree, minimizing manual maintenance and ensuring accuracy.
Timeline:
This is the general project flow I've come up after some reasearch:
- Weeks 1-2: Learn SwiftSyntax intricacies.
- Weeks 3-4: Analyze Swift's grammar rules.
- Weeks 5-6: Implement filtering algorithms.
- Weeks 7-8: Integrate with SourceKit/SourceKit-LSP.
- Weeks 9-10: Test, debug, and document.
- Weeks 11-12: Finalize project and documentation.
Conclusion:
This project offers a technical solution to enhance code completion in Swift, providing developers with a more efficient coding experience. I'm excited to contribute to this project and improve the Swift development ecosystem.
Thank you for considering my proposal!
Warm regards,
Vivek