CMake backend for JEP-enabled editors.
Project description
JEP-based CMake support in the making.
This is a command line application implementing a JEP backend for CMake. It enables editors that have JEP-plugin installed to improve their CMake editing support beyong pure syntax highlighting.
Current state and features
Parser for CMake files.
Builds dictionary of user functions and macros.
Code completion of commands (built-in and user functions and macros), from local and (directly or indirectly) imported modules.
Upcoming features and feature ideas
Code completion for all files in a project, including parent CMake files.
Code completion for variables (respecting scope rules).
Code completion for targets.
Go to definition of commands, variables, targets.
Error annotations.
Renaming of user commands, variables, targets.
Installation
jep-cmake can be installed in various ways. To run it requires an installed Python interpreter, version 3.3 or greater.
After installation, the used Python environment has a new command jep-cmake, that will run the backend.
From Source Code
> git clone https://github.com/jep-project/jep-cmake.git > cd jep-cmake > pip install .
From PyPI
> pip install jep-cmake
Usage
See the JEP protocol for detailed instruction how to configure JEP via a .jep file. In the most simple situation (jep-cmake in path, …) the following .jep file in the root folder of your project that contains CMake files should be enough:
*.cmake,CMakeLists.txt: jep-cmake
See jep-cmake -h for available command line options:
> jep-cmake -h usage: jep-cmake-script.py [-h] [--version {2.8.12,3.4}] [--builtin-cmake] [--builtin-ctest] [--builtin-deprecated] JEP backend providing CMake editing support. optional arguments: -h, --help show this help message and exit --version {2.8.12,3.4} CMake version to be supported, mainly used for completion of built-in commands. --builtin-cmake If specified, built-in CMake commands are part of code completion. --builtin-ctest If specified, built-in ctest commands are part of code completion. --builtin-deprecated If specified, built-in CMake commands that have been deprecated are part of code completion.
The various built-in options are available to finetune the backend’s interaction with the editor being used. Some editors already support code completion for built-in CMake commands. In that case it is more efficient remove them from the backends completion options (by not specifying the corresponding command line option).
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file jep-cmake-0.0.3.zip
.
File metadata
- Download URL: jep-cmake-0.0.3.zip
- Upload date:
- Size: 21.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | c9e3c17753fde6b942949f4e035e8e5ff22b6b620bb20067a5e9117082de99a1 |
|
MD5 | e9668e75a57fa0c502f75f6447bfe899 |
|
BLAKE2b-256 | b10dde66dcd5182308416bbc8e88b95131c1acc6a190b76322db150686b64ab8 |
File details
Details for the file jep_cmake-0.0.3-py3-none-any.whl
.
File metadata
- Download URL: jep_cmake-0.0.3-py3-none-any.whl
- Upload date:
- Size: 17.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | c48260fb68a10bc8e66e5d2d061f47f37d820e92f940ba1c82634ace9d44f0fa |
|
MD5 | db3c599efbf559baaa0dd9d4db60f6ad |
|
BLAKE2b-256 | 5174f57fe5d495f850b44a181f18697f17596b8efb04c40d0d928ba43642fc5f |