63 lines
1.9 KiB
ReStructuredText
63 lines
1.9 KiB
ReStructuredText
======
|
|
astyle
|
|
======
|
|
|
|
This is a modified version of astyle: http://astyle.sourceforge.net
|
|
|
|
Our intention is to patch astyle to follow the Steinwurf coding style
|
|
as closely as possible: http://docs.steinwurf.com/coding_style.html
|
|
|
|
Steinwurf uses heavily-templated C++11 code that can be a true challenge
|
|
for a code formatting tool.
|
|
|
|
Quick start
|
|
-----------
|
|
|
|
If you already installed a C++11 compiler, git and python on your system,
|
|
then you can clone this repository to a suitable folder::
|
|
|
|
git clone git@github.com:steinwurf/astyle.git
|
|
|
|
Configure and build the project (use the ``cxx_default`` mkspec, because
|
|
fabric will look for the ``astyle`` binary at this default location)::
|
|
|
|
cd astyle
|
|
python waf configure --cxx_mkspec=cxx_default
|
|
python waf build
|
|
|
|
Running astyle manually
|
|
-----------------------
|
|
|
|
First of all, you should copy the ``.astylerc`` options file to your home
|
|
folder.
|
|
|
|
On Unix systems::
|
|
|
|
cp .astylerc ~
|
|
|
|
On Windows::
|
|
|
|
copy .astylerc %USERPROFILE%\astylerc
|
|
|
|
After this, you can call ``astyle`` to format a single file (be careful,
|
|
because **it will not make a backup** for the original file)::
|
|
|
|
build/cxx_default/astyle test.cpp --print-changes
|
|
|
|
The ``--print-changes`` option prints out every line that is changed
|
|
during the formatting. This is especially useful with the ``--dry-run``
|
|
option that will not write any modifications to the file::
|
|
|
|
build/cxx_default/astyle test.cpp --print-changes --dry-run
|
|
|
|
**Warning**: Be careful about the working directory if you invoke the
|
|
following command, because you can accidentally format a lot of files!
|
|
|
|
You can format all C/C++ source files within the current directory with the
|
|
recursive search (``-R``) option::
|
|
|
|
cd my-project
|
|
path/to/astyle -Q -R *.cpp *.hpp *.c *.h --print-changes
|
|
|
|
With the ``-Q`` option, astyle will only display information about the
|
|
formatted files (it will not list the unchanged files). |