IMP Manual
for IMP version 2.21.0
|
IMP provides a variety of scripts to aid the lives of developers.
Creating a module is the easiest way to get started developing code for IMP. First, choose a name for the module. The name should only contain letters, numbers and underscores as it needs to be a valid file name as well as an identifier in Python and C++.
To create the module run tools/make-module.py my_module
from the top-level IMP directory. The new module includes a number of examples and comments to help you add code to the module. The directory structure of the new module is identical to that of existing modules.
If you feel your module is of interest to other IMP users and developers, see the contributing code to IMP section.
The tools/dev_tools/cleanup_code.py
script uses the external clang-format
and autopep8
programs to reformat C++ and Python code respectively to conform to our preferred indentation, working around some eccentricities of IMP code. clang-format
is part of llvm >= 3.4. You should always inspect the changes made by clang-format
before submitting.
The tools/dev_tools/check_standards.py
runs a number of IMP-specific standards checks on C++ and Python files. It is also run as part of git
commits. This can help you conform to IMP's code conventions.
The tools/codespell.sh
script can be run in any IMP directory to check for common spelling mistakes in source code. It uses the codespell library.