All Projects → BigBahss → vscode-cmantic

BigBahss / vscode-cmantic

Licence: MIT license
C/C++ code generation for VS Code: Generate Definitions, Getters, Setters, and much more.

Programming Languages

typescript
32286 projects
javascript
184084 projects - #8 most used programming language
C++
36643 projects - #6 most used programming language

Projects that are alternatives of or similar to vscode-cmantic

jsish
Jsi is a small, C-embeddable javascript interpreter with tightly woven Web and DB support.
Stars: ✭ 32 (-47.54%)
Mutual labels:  code-generation
aptk
A toolkit project to enable you to build annotation processors more easily
Stars: ✭ 28 (-54.1%)
Mutual labels:  code-generation
openapi-client
Generate ES6 or Typescript service integration code from an OpenAPI 2 spec
Stars: ✭ 92 (+50.82%)
Mutual labels:  code-generation
pyodesys
∫ Straightforward numerical integration of systems of ordinary differential equations
Stars: ✭ 85 (+39.34%)
Mutual labels:  code-generation
Friendly Code Editor
Try this Friendly Code Editor. You'll love it. I made it with a lot of effort. It has some great features. I will update it adequately later. Very helpful for developers. Enjoy and share.
Stars: ✭ 20 (-67.21%)
Mutual labels:  code-generation
solregex
Regex compilation to Solidity
Stars: ✭ 37 (-39.34%)
Mutual labels:  code-generation
WebApiToTypeScript
A tool for code generating TypeScript endpoints for your ASP.NET Web API controllers
Stars: ✭ 26 (-57.38%)
Mutual labels:  code-generation
orm
Go Typed ORM
Stars: ✭ 16 (-73.77%)
Mutual labels:  code-generation
acgt
Auto Code Generation Tools (DSL)
Stars: ✭ 18 (-70.49%)
Mutual labels:  code-generation
django-code-generator
Generate code from your Django models for faster development
Stars: ✭ 35 (-42.62%)
Mutual labels:  code-generation
wb-toolbox
Simulink toolbox to rapidly prototype robot controllers
Stars: ✭ 20 (-67.21%)
Mutual labels:  code-generation
UI2CODE
A tidied repo for UI2CODE, a reverse engineering system convert UI design to code automatically and precisely.
Stars: ✭ 24 (-60.66%)
Mutual labels:  code-generation
seamer
refactoring tool that aims at making it easy to create characterization tests
Stars: ✭ 16 (-73.77%)
Mutual labels:  refactoring-tools
js.metaret
lightweight mutual tail recursion optimization without trampoline
Stars: ✭ 16 (-73.77%)
Mutual labels:  code-generation
cog
Command-line utility that makes it easy to organize a project which uses code generation
Stars: ✭ 15 (-75.41%)
Mutual labels:  code-generation
mybatis-generator-gui-plus
基于MyBatis-Generator+SQLite+beautyeye_lnf开发的一款图形化代码生成器
Stars: ✭ 16 (-73.77%)
Mutual labels:  code-generation
gdbus-codegen-glibmm
Code generator for C++ D-Bus stubs and proxies using Giomm/Glibmm
Stars: ✭ 21 (-65.57%)
Mutual labels:  code-generation
ParNMPC
A Parallel Optimization Toolkit for Nonlinear Model Predictive Control (NMPC)
Stars: ✭ 173 (+183.61%)
Mutual labels:  code-generation
1c http
Подсистема 1С для работы с HTTP
Stars: ✭ 48 (-21.31%)
Mutual labels:  code-generation
swaggie
Tool for generating TypeScript services for given Swagger API endpoints
Stars: ✭ 18 (-70.49%)
Mutual labels:  code-generation


C-mantic

C-mantic provides code generation and refactorings for C/C++. Relevant code-actions are suggested via the light-bulb menu 💡, and can be accessed directly by selecting Refactor... or Source Actions... in the editor context menu. Code-actions are also available from the command palette or by keyboard shortcut.

Full Documentation: https://bigbahss.github.io/vscode-cmantic/

Features at a glance

Requirements

Requires a C/C++ language server extension (IntelliSense) for full functionality, such as Microsoft's C/C++ extension. See Language Server below for more details.

Issues and Feedback

If you find a bug or would like to request a new feature, please open an Issue on Github. Also, consider leaving the extension a rating.

Examples

Add Definition

Add Definition

Update Function Signature

Update Function Signature

Generate Getters and Setters

Generate Getters and Setters

Language Server

C-mantic is designed to work with any C/C++ language server, and is primarily tested with C/C++ (ms-vscode.cpptools) and clangd (llvm-vs-code-extensions.vscode-clangd), but will also work on ccls (ccls-project.ccls). If you use a different language server, C-mantic may still work, but is untested. If you find a bug that you suspect might be related to your language server, please open an Issue and state what language server you are using.

Troubleshooting

If you find that features of C-mantic aren't working, first make sure that your language server (IntelliSense) is working correctly. To do this, check out the Outline View, usually found in the Explorer side-bar. The Outline View should show all source code symbols for the current file. Also, make sure Go to Definition and Go to Declaration are working. If C-mantic still isn't working correctly, open an Issue on GitHub and describe the problem along with any relevant information.

Tips

  • C-mantic relies on the language server to provide information about your source code in order to function correctly. Because of this, if the language server running slowly, C-mantic may fail to provide code-actions right away. For instance, if you type out a function declaration, C-mantic won't be able to provide the Add Definition code-actions until the language server updates. To mitigate this, you can change how often the language server updates in response to code changes:
    • For C/C++ (ms-vscode.cpptools), you can lower the C_Cpp: Intelli Sense Update Delay setting (default 2000ms).
    • For ccls (ccls-project.ccls), you can lower the Status Update Interval setting (default 2000ms).

Planned Features

The list of planned features can be found here. Requests for new features/functionalities are welcome, just open an Issue on Github. If you'd like to contribute, feel free to open a pull-request.

License

This software is released under the MIT License

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].