CCGrep
tree-sitter-swift
CCGrep | tree-sitter-swift | |
---|---|---|
1 | 2 | |
6 | 57 | |
- | - | |
0.0 | 0.0 | |
about 3 years ago | over 2 years ago | |
Java | JavaScript | |
MIT License | - |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
CCGrep
-
Semgrep: Like Grep but for Code
I wrote a small VS code extension and pre-commit hook that might meet 80% of your needs:
https://github.com/elanning/checkr
It is just simple regex at this time, but hopefully I can add something like CCGrep syntax in the future:
https://github.com/yuy-m/CCGrep
tree-sitter-swift
-
NeoVim setup for iOS Dev ( xcodebuild etc. ) ?
You could probably set up something to work on Swift packages, however the tree sitter grammar for Swift hasn’t been updated since 2019. sourcekit-lsp also isn’t likely to help you out either because it’s not made to understand Xcode projects. You’d need an LSP capable of parsing a .pbxproj (I highly doubt there is one, but I haven’t looked around), which has the terrible downside of not being something Apple considers a public API and can and will introduce breaking changes on any Xcode update. An Apple engineer confirmed this with me during a lab in 2020 when I was asking about how doing some hacky things with binary Swift packages.
-
Semgrep: Like Grep but for Code
https://github.com/returntocorp/ocaml-tree-sitter/blob/maste... appears to be the general answer to your question, but navigating to the tree-sitter docs shows that tree-sitter has one in progress: https://github.com/tree-sitter/tree-sitter-swift so hopefully the machinery to incorporate it into semgrep will not be horrific
What are some alternatives?
ocaml-tree-sitter-semgrep - Generate parsers from tree-sitter grammars extended to support Semgrep patterns
Bear - Bear is a tool that generates a compilation database for clang tooling.
refex - A syntactically aware search-and-replace tool for Python.
sourcekit-lsp - Language Server Protocol implementation for Swift and C-based languages
semgrep - Lightweight static analysis for many languages. Find bug variants with patterns that look like source code.
terraform-provider-aws - The AWS Provider enables Terraform to manage AWS resources.
pre-commit - A framework for managing and maintaining multi-language pre-commit hooks.
checkr - Custom static analysis rules for the lazy. Write project specific static analysis checks in a few lines of code.