This is a pre-production deployment of Warehouse. Changes made here affect the production instance of PyPI (pypi.python.org).
Help us improve Python packaging - Donate today!

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).

Release History

Release History

This version
History Node

0.0.3

History Node

0.0.2

History Node

0.0.1

Download Files

Download Files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

File Name & Checksum SHA256 Checksum Help Version File Type Upload Date
jep_cmake-0.0.3-py3-none-any.whl (17.4 kB) Copy SHA256 Checksum SHA256 py3 Wheel Jan 26, 2016
jep-cmake-0.0.3.zip (21.8 kB) Copy SHA256 Checksum SHA256 Source Jan 26, 2016

Supported By

WebFaction WebFaction Technical Writing Elastic Elastic Search Pingdom Pingdom Monitoring Dyn Dyn DNS Sentry Sentry Error Logging CloudAMQP CloudAMQP RabbitMQ Heroku Heroku PaaS Kabu Creative Kabu Creative UX & Design Fastly Fastly CDN DigiCert DigiCert EV Certificate Rackspace Rackspace Cloud Servers DreamHost DreamHost Log Hosting