File: reformat_project.py

package info (click to toggle)
gnat-gps 5.3dfsg-1
  • links: PTS, VCS
  • area: main
  • in suites: jessie, jessie-kfreebsd
  • size: 50,360 kB
  • ctags: 11,617
  • sloc: ada: 374,346; ansic: 92,327; python: 15,979; xml: 12,186; sh: 3,277; makefile: 1,113; awk: 154; perl: 128; java: 17
file content (31 lines) | stat: -rw-r--r-- 1,020 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
# This example demonstrates how to reformat all sources of a project
# You can do that with the following command line:
#
#    $ gps -P<your_project> --load=python:reformat_project.py
#
# where <your_project> is your project file.

import GPS

# You can update the following preference values to suit your needs:
GPS.Preference ("Ada-Ident-Casing").set ("Automatic")
GPS.Preference ("Ada-Casing-Policy").set ("On_The_Fly")
GPS.Preference ("Ada-Align-On-Colons").set (True)
GPS.Preference ("Ada-Align-On-Arrows").set (True)
GPS.Preference ("Ada-Format-Operators").set (True)
GPS.Preference ("Ada-Align-Decl-On_Colon").set (True)
GPS.Preference ("Ada-Stick-Comments").set (False)
GPS.Preference ("Ada-Reserved-Casing").set ("Lower")

# Beginning of the processing
for buf in GPS.EditorBuffer.list():
   buf.close()

for f in GPS.Project.root().sources (recursive=True):
   buf = GPS.EditorBuffer.get (f)
   buf.select()
   GPS.execute_action ("Format Selection")
   buf.save (interactive=False)
   buf.close()

GPS.exit()