# List of all formatting elements available for .m files

I'm looking into generating .m files programmatically and would like to explore different possibilities of formatting their content when opened in the front end.

For example, if you write

(* ::Subsection:: *)
(* ::Text:: *)
(*foo, bar.*)


inside a .m file, the front end will display this as

This way, one can actually make .m files look nice while preserving their key advantages against notebooks (plain text, perfect for version control system, editing a single block doesn't modify the whole file etc.)

Apparently, there are special keywords inside comments such as (* ::Section:: *), (* ::Subsection:: *), (* ::Text:: *), (* ::Title:: *) etc. that are parsed by the front end in a special way.

Does someone know, where can I find the full list of such keywords and their usage examples?

EDIT: While my original question regarding styles has been answered by Brett Champion, I'm also interested in general tips and tricks or guides regarding the output/style formatting of .m files. So please don't hesitate to post an answer if you can share some interesting piece of information on that.

The XXXX in (* ::XXXX:: *) can be any named style such as you might find in the Format > Style menu.
Cell[..., "XXXX"]

Note that the XXXX is automatically turned into a string when the frontend is reading the file, so you can't use this to apply arbitrary styling options to the content.