As it was mentioned above, there is a need of storing some additional information about Python files. One of the options would be to support a separate storage on per project or per Python file basis – another file which stores the markup. I do not like this idea because of a few reasons:
- imagine that there is a team of developers and some of them prefer to use the approach of switching between graphics and text. However another half of the team despise graphics and principally use text only. So the line information in the separately stored markup could easily become broken and it is generally hard to support the consistency using this approach
- another file or files would require to keep track of them in a VCS system which introduces another effort for the team
- lastly, the markup information was introduced by the developers who use the graphics not for fun but because it has a value. Thus it would be nice if this additional value is also available in some way for those who accept nothing but vim.
Thus, a suggested solution is to introduce a micro markup language which uses the Python comments. I called this language CML – Codimension Markup Language, currently of version 1. The markup will be stored right in the Python files at appropriate points in the code so all the mentioned above problems will be addressed.