reuse.comment module#

Module for parsing and creating comments. Just enough to deal with comment headers, in any case.

class reuse.comment.AppleScriptCommentStyle[source]#

Bases: CommentStyle

AppleScript comment style.

INDENT_AFTER_SINGLE = ' '#
MULTI_LINE = MultiLineSegments(start='(*', middle='', end='*)')#
SHORTHAND = 'applescript'#
SINGLE_LINE = '--'#
class reuse.comment.AspxCommentStyle[source]#

Bases: CommentStyle

ASPX comment style.

MULTI_LINE = MultiLineSegments(start='<%--', middle='', end='--%>')#
SHORTHAND = 'aspx'#
class reuse.comment.BatchFileCommentStyle[source]#

Bases: CommentStyle

Windows batch file comment style.

INDENT_AFTER_SINGLE = ' '#
SHORTHAND = 'bat'#
SINGLE_LINE = 'REM'#
class reuse.comment.BibTexCommentStyle[source]#

Bases: CommentStyle

BibTex comment style.

MULTI_LINE = MultiLineSegments(start='@Comment{', middle='', end='}')#
SHORTHAND = 'bibtex'#
class reuse.comment.CCommentStyle[source]#

Bases: CommentStyle

C comment style.

INDENT_AFTER_MIDDLE = ' '#
INDENT_AFTER_SINGLE = ' '#
INDENT_BEFORE_END = ' '#
INDENT_BEFORE_MIDDLE = ' '#
MULTI_LINE = MultiLineSegments(start='/*', middle='*', end='*/')#
SHEBANGS: List[str] = ['#!', '<?php']#
SHORTHAND = 'c'#
SINGLE_LINE = '//'#
class reuse.comment.CSingleCommentStyle[source]#

Bases: CommentStyle

C single-only comment style.

INDENT_AFTER_SINGLE = ' '#
SHORTHAND = 'csingle'#
SINGLE_LINE = '//'#
exception reuse.comment.CommentCreateError[source]#

Bases: Exception

An error occurred during the creation of a comment.

exception reuse.comment.CommentParseError[source]#

Bases: Exception

An error occurred during the parsing of a comment.

class reuse.comment.CommentStyle[source]#

Bases: object

Base class for comment style.

INDENT_AFTER_MIDDLE = ''#
INDENT_AFTER_SINGLE = ''#
INDENT_BEFORE_END = ''#
INDENT_BEFORE_MIDDLE = ''#
MULTI_LINE = MultiLineSegments(start='', middle='', end='')#
SHEBANGS: List[str] = []#
SHORTHAND = ''#
SINGLE_LINE = ''#
SINGLE_LINE_REGEXP: Pattern | None = None#
classmethod can_handle_multi() bool[source]#

Whether the CommentStyle can handle multi-line comments.

classmethod can_handle_single() bool[source]#

Whether the CommentStyle can handle single-line comments.

classmethod comment_at_first_character(text: str) str[source]#

Return the comment block that starts at the first character of text. This is chiefly handy to get the header comment of a file, assuming that the header comment starts at the first character in the file.

Raises:

CommentParseError – if text does not start with a parseable comment block.

classmethod create_comment(text: str, force_multi: bool = False) str[source]#

Comment all lines in text. Single-line comments are preferred over multi-line comments, unless force_multi is provided.

Raises:

CommentCreateError – if text could not be commented.

classmethod parse_comment(text: str) str[source]#

Uncomment all lines in text.

Raises:

CommentParseError – if text could not be parsed.

class reuse.comment.CssCommentStyle[source]#

Bases: CommentStyle

CSS comment style.

INDENT_AFTER_MIDDLE = ' '#
INDENT_BEFORE_END = ' '#
INDENT_BEFORE_MIDDLE = ' '#
MULTI_LINE = MultiLineSegments(start='/*', middle='*', end='*/')#
SHORTHAND = 'css'#
reuse.comment.EXTENSION_COMMENT_STYLE_MAP = {'.R': <class 'reuse.comment.PythonCommentStyle'>, '.Rmd': <class 'reuse.comment.HtmlCommentStyle'>, '.adb': <class 'reuse.comment.HaskellCommentStyle'>, '.adoc': <class 'reuse.comment.CCommentStyle'>, '.ads': <class 'reuse.comment.HaskellCommentStyle'>, '.aes': <class 'reuse.comment.UncommentableCommentStyle'>, '.ahk': <class 'reuse.comment.SemicolonCommentStyle'>, '.ahkl': <class 'reuse.comment.SemicolonCommentStyle'>, '.aidl': <class 'reuse.comment.CCommentStyle'>, '.applescript': <class 'reuse.comment.AppleScriptCommentStyle'>, '.arb': <class 'reuse.comment.UncommentableCommentStyle'>, '.asax': <class 'reuse.comment.AspxCommentStyle'>, '.asc': <class 'reuse.comment.CCommentStyle'>, '.asciidoc': <class 'reuse.comment.CCommentStyle'>, '.ashx': <class 'reuse.comment.AspxCommentStyle'>, '.asm': <class 'reuse.comment.LispCommentStyle'>, '.asmx': <class 'reuse.comment.AspxCommentStyle'>, '.aspx': <class 'reuse.comment.AspxCommentStyle'>, '.aux': <class 'reuse.comment.TexCommentStyle'>, '.awk': <class 'reuse.comment.PythonCommentStyle'>, '.axd': <class 'reuse.comment.AspxCommentStyle'>, '.bash': <class 'reuse.comment.PythonCommentStyle'>, '.bat': <class 'reuse.comment.BatchFileCommentStyle'>, '.bb': <class 'reuse.comment.PythonCommentStyle'>, '.bbappend': <class 'reuse.comment.PythonCommentStyle'>, '.bbclass': <class 'reuse.comment.PythonCommentStyle'>, '.bib': <class 'reuse.comment.BibTexCommentStyle'>, '.bzl': <class 'reuse.comment.PythonCommentStyle'>, '.c': <class 'reuse.comment.CCommentStyle'>, '.cc': <class 'reuse.comment.CCommentStyle'>, '.cjs': <class 'reuse.comment.CCommentStyle'>, '.cl': <class 'reuse.comment.LispCommentStyle'>, '.clj': <class 'reuse.comment.LispCommentStyle'>, '.cljc': <class 'reuse.comment.LispCommentStyle'>, '.cljs': <class 'reuse.comment.LispCommentStyle'>, '.cmake': <class 'reuse.comment.PythonCommentStyle'>, '.code-workspace': <class 'reuse.comment.CCommentStyle'>, '.coffee': <class 'reuse.comment.PythonCommentStyle'>, '.cpp': <class 'reuse.comment.CCommentStyle'>, '.cs': <class 'reuse.comment.CCommentStyle'>, '.csl': <class 'reuse.comment.HtmlCommentStyle'>, '.csproj': <class 'reuse.comment.HtmlCommentStyle'>, '.css': <class 'reuse.comment.CssCommentStyle'>, '.csv': <class 'reuse.comment.UncommentableCommentStyle'>, '.cu': <class 'reuse.comment.CCommentStyle'>, '.cuh': <class 'reuse.comment.CCommentStyle'>, '.cxx': <class 'reuse.comment.CCommentStyle'>, '.d': <class 'reuse.comment.CCommentStyle'>, '.dart': <class 'reuse.comment.CCommentStyle'>, '.di': <class 'reuse.comment.CCommentStyle'>, '.doc': <class 'reuse.comment.UncommentableCommentStyle'>, '.docx': <class 'reuse.comment.UncommentableCommentStyle'>, '.dotx': <class 'reuse.comment.UncommentableCommentStyle'>, '.dts': <class 'reuse.comment.CCommentStyle'>, '.dtsi': <class 'reuse.comment.CCommentStyle'>, '.el': <class 'reuse.comment.LispCommentStyle'>, '.erl': <class 'reuse.comment.TexCommentStyle'>, '.ex': <class 'reuse.comment.PythonCommentStyle'>, '.exs': <class 'reuse.comment.PythonCommentStyle'>, '.f': <class 'reuse.comment.FortranCommentStyle'>, '.f03': <class 'reuse.comment.ModernFortranCommentStyle'>, '.f08': <class 'reuse.comment.ModernFortranCommentStyle'>, '.f90': <class 'reuse.comment.ModernFortranCommentStyle'>, '.f95': <class 'reuse.comment.ModernFortranCommentStyle'>, '.fish': <class 'reuse.comment.PythonCommentStyle'>, '.fnl': <class 'reuse.comment.LispCommentStyle'>, '.fodp': <class 'reuse.comment.UncommentableCommentStyle'>, '.fods': <class 'reuse.comment.UncommentableCommentStyle'>, '.fodt': <class 'reuse.comment.UncommentableCommentStyle'>, '.for': <class 'reuse.comment.FortranCommentStyle'>, '.fpp': <class 'reuse.comment.FortranCommentStyle'>, '.fs': <class 'reuse.comment.CCommentStyle'>, '.fsproj': <class 'reuse.comment.HtmlCommentStyle'>, '.fsx': <class 'reuse.comment.CCommentStyle'>, '.ftl': <class 'reuse.comment.FtlCommentStyle'>, '.ftn': <class 'reuse.comment.FortranCommentStyle'>, '.gemspec': <class 'reuse.comment.PythonCommentStyle'>, '.go': <class 'reuse.comment.CCommentStyle'>, '.gqls': <class 'reuse.comment.PythonCommentStyle'>, '.gradle': <class 'reuse.comment.CCommentStyle'>, '.graphql': <class 'reuse.comment.PythonCommentStyle'>, '.graphqls': <class 'reuse.comment.PythonCommentStyle'>, '.groovy': <class 'reuse.comment.CCommentStyle'>, '.h': <class 'reuse.comment.CCommentStyle'>, '.ha': <class 'reuse.comment.CSingleCommentStyle'>, '.hbs': <class 'reuse.comment.HandlebarsCommentStyle'>, '.hcl': <class 'reuse.comment.PythonCommentStyle'>, '.hh': <class 'reuse.comment.CCommentStyle'>, '.hpp': <class 'reuse.comment.CCommentStyle'>, '.hrl': <class 'reuse.comment.TexCommentStyle'>, '.hs': <class 'reuse.comment.HaskellCommentStyle'>, '.html': <class 'reuse.comment.HtmlCommentStyle'>, '.hx': <class 'reuse.comment.CCommentStyle'>, '.hxsl': <class 'reuse.comment.CCommentStyle'>, '.ini': <class 'reuse.comment.SemicolonCommentStyle'>, '.ino': <class 'reuse.comment.CCommentStyle'>, '.ipynb': <class 'reuse.comment.UncommentableCommentStyle'>, '.iuml': <class 'reuse.comment.PlantUmlCommentStyle'>, '.java': <class 'reuse.comment.CCommentStyle'>, '.jinja': <class 'reuse.comment.JinjaCommentStyle'>, '.jinja2': <class 'reuse.comment.JinjaCommentStyle'>, '.jl': <class 'reuse.comment.JuliaCommentStyle'>, '.jpeg': <class 'reuse.comment.UncommentableCommentStyle'>, '.jpg': <class 'reuse.comment.UncommentableCommentStyle'>, '.js': <class 'reuse.comment.CCommentStyle'>, '.json': <class 'reuse.comment.UncommentableCommentStyle'>, '.jsp': <class 'reuse.comment.AspxCommentStyle'>, '.jsx': <class 'reuse.comment.CCommentStyle'>, '.jy': <class 'reuse.comment.PythonCommentStyle'>, '.ksh': <class 'reuse.comment.PythonCommentStyle'>, '.kt': <class 'reuse.comment.CCommentStyle'>, '.kts': <class 'reuse.comment.CCommentStyle'>, '.l': <class 'reuse.comment.LispCommentStyle'>, '.latex': <class 'reuse.comment.TexCommentStyle'>, '.ld': <class 'reuse.comment.CCommentStyle'>, '.less': <class 'reuse.comment.CssCommentStyle'>, '.license': <class 'reuse.comment.EmptyCommentStyle'>, '.lisp': <class 'reuse.comment.LispCommentStyle'>, '.lsp': <class 'reuse.comment.LispCommentStyle'>, '.lua': <class 'reuse.comment.HaskellCommentStyle'>, '.m4': <class 'reuse.comment.M4CommentStyle'>, '.man': <class 'reuse.comment.UnixManCommentStyle'>, '.markdown': <class 'reuse.comment.HtmlCommentStyle'>, '.md': <class 'reuse.comment.HtmlCommentStyle'>, '.mjs': <class 'reuse.comment.CCommentStyle'>, '.mk': <class 'reuse.comment.PythonCommentStyle'>, '.ml': <class 'reuse.comment.MlCommentStyle'>, '.mli': <class 'reuse.comment.MlCommentStyle'>, '.nim': <class 'reuse.comment.PythonCommentStyle'>, '.nim.cfg': <class 'reuse.comment.PythonCommentStyle'>, '.nimble': <class 'reuse.comment.PythonCommentStyle'>, '.nimrod': <class 'reuse.comment.PythonCommentStyle'>, '.nix': <class 'reuse.comment.PythonCommentStyle'>, '.odb': <class 'reuse.comment.UncommentableCommentStyle'>, '.odf': <class 'reuse.comment.UncommentableCommentStyle'>, '.odg': <class 'reuse.comment.UncommentableCommentStyle'>, '.odm': <class 'reuse.comment.UncommentableCommentStyle'>, '.odp': <class 'reuse.comment.UncommentableCommentStyle'>, '.ods': <class 'reuse.comment.UncommentableCommentStyle'>, '.odt': <class 'reuse.comment.UncommentableCommentStyle'>, '.org': <class 'reuse.comment.PythonCommentStyle'>, '.otp': <class 'reuse.comment.UncommentableCommentStyle'>, '.ots': <class 'reuse.comment.UncommentableCommentStyle'>, '.ott': <class 'reuse.comment.UncommentableCommentStyle'>, '.pdf': <class 'reuse.comment.UncommentableCommentStyle'>, '.pem': <class 'reuse.comment.UncommentableCommentStyle'>, '.php': <class 'reuse.comment.CCommentStyle'>, '.php3': <class 'reuse.comment.CCommentStyle'>, '.php4': <class 'reuse.comment.CCommentStyle'>, '.php5': <class 'reuse.comment.CCommentStyle'>, '.pl': <class 'reuse.comment.PythonCommentStyle'>, '.plantuml': <class 'reuse.comment.PlantUmlCommentStyle'>, '.png': <class 'reuse.comment.UncommentableCommentStyle'>, '.po': <class 'reuse.comment.PythonCommentStyle'>, '.pod': <class 'reuse.comment.PythonCommentStyle'>, '.pot': <class 'reuse.comment.PythonCommentStyle'>, '.ppt': <class 'reuse.comment.UncommentableCommentStyle'>, '.pptx': <class 'reuse.comment.UncommentableCommentStyle'>, '.pri': <class 'reuse.comment.PythonCommentStyle'>, '.pro': <class 'reuse.comment.PythonCommentStyle'>, '.properties': <class 'reuse.comment.PythonCommentStyle'>, '.props': <class 'reuse.comment.HtmlCommentStyle'>, '.proto': <class 'reuse.comment.CCommentStyle'>, '.ps1': <class 'reuse.comment.PythonCommentStyle'>, '.psm1': <class 'reuse.comment.PythonCommentStyle'>, '.pu': <class 'reuse.comment.PlantUmlCommentStyle'>, '.puml': <class 'reuse.comment.PlantUmlCommentStyle'>, '.pxd': <class 'reuse.comment.PythonCommentStyle'>, '.py': <class 'reuse.comment.PythonCommentStyle'>, '.pyi': <class 'reuse.comment.PythonCommentStyle'>, '.pyw': <class 'reuse.comment.PythonCommentStyle'>, '.pyx': <class 'reuse.comment.PythonCommentStyle'>, '.qbs': <class 'reuse.comment.CCommentStyle'>, '.qml': <class 'reuse.comment.CCommentStyle'>, '.qrc': <class 'reuse.comment.HtmlCommentStyle'>, '.qss': <class 'reuse.comment.CssCommentStyle'>, '.rake': <class 'reuse.comment.PythonCommentStyle'>, '.rb': <class 'reuse.comment.PythonCommentStyle'>, '.rbw': <class 'reuse.comment.PythonCommentStyle'>, '.rbx': <class 'reuse.comment.PythonCommentStyle'>, '.rkt': <class 'reuse.comment.LispCommentStyle'>, '.rs': <class 'reuse.comment.CCommentStyle'>, '.rss': <class 'reuse.comment.HtmlCommentStyle'>, '.rst': <class 'reuse.comment.ReStructedTextCommentStyle'>, '.s': <class 'reuse.comment.PythonCommentStyle'>, '.sass': <class 'reuse.comment.CssCommentStyle'>, '.sbt': <class 'reuse.comment.CCommentStyle'>, '.sc': <class 'reuse.comment.CCommentStyle'>, '.scad': <class 'reuse.comment.CCommentStyle'>, '.scala': <class 'reuse.comment.CCommentStyle'>, '.scm': <class 'reuse.comment.LispCommentStyle'>, '.scpt': <class 'reuse.comment.AppleScriptCommentStyle'>, '.scptd': <class 'reuse.comment.AppleScriptCommentStyle'>, '.scss': <class 'reuse.comment.CssCommentStyle'>, '.scsyndef': <class 'reuse.comment.UncommentableCommentStyle'>, '.sh': <class 'reuse.comment.PythonCommentStyle'>, '.sld': <class 'reuse.comment.LispCommentStyle'>, '.sln': <class 'reuse.comment.UncommentableCommentStyle'>, '.sls': <class 'reuse.comment.LispCommentStyle'>, '.sml': <class 'reuse.comment.MlCommentStyle'>, '.soy': <class 'reuse.comment.CCommentStyle'>, '.sps': <class 'reuse.comment.LispCommentStyle'>, '.sql': <class 'reuse.comment.HaskellCommentStyle'>, '.sty': <class 'reuse.comment.TexCommentStyle'>, '.svelte': <class 'reuse.comment.HtmlCommentStyle'>, '.svg': <class 'reuse.comment.UncommentableCommentStyle'>, '.swift': <class 'reuse.comment.CCommentStyle'>, '.tcl': <class 'reuse.comment.PythonCommentStyle'>, '.tex': <class 'reuse.comment.TexCommentStyle'>, '.textile': <class 'reuse.comment.HtmlCommentStyle'>, '.tf': <class 'reuse.comment.PythonCommentStyle'>, '.tfvars': <class 'reuse.comment.PythonCommentStyle'>, '.thy': <class 'reuse.comment.MlCommentStyle'>, '.toc': <class 'reuse.comment.TexCommentStyle'>, '.toml': <class 'reuse.comment.PythonCommentStyle'>, '.ts': <class 'reuse.comment.CCommentStyle'>, '.tsx': <class 'reuse.comment.CCommentStyle'>, '.ttl': <class 'reuse.comment.PythonCommentStyle'>, '.typ': <class 'reuse.comment.CCommentStyle'>, '.ui': <class 'reuse.comment.HtmlCommentStyle'>, '.v': <class 'reuse.comment.CCommentStyle'>, '.vala': <class 'reuse.comment.CCommentStyle'>, '.vbproj': <class 'reuse.comment.HtmlCommentStyle'>, '.vim': <class 'reuse.comment.VimCommentStyle'>, '.vm': <class 'reuse.comment.VelocityCommentStyle'>, '.vsh': <class 'reuse.comment.CCommentStyle'>, '.vtl': <class 'reuse.comment.VelocityCommentStyle'>, '.vue': <class 'reuse.comment.HtmlCommentStyle'>, '.webp': <class 'reuse.comment.UncommentableCommentStyle'>, '.xls': <class 'reuse.comment.UncommentableCommentStyle'>, '.xlsx': <class 'reuse.comment.UncommentableCommentStyle'>, '.xml': <class 'reuse.comment.HtmlCommentStyle'>, '.xq': <class 'reuse.comment.XQueryCommentStyle'>, '.xql': <class 'reuse.comment.XQueryCommentStyle'>, '.xqm': <class 'reuse.comment.XQueryCommentStyle'>, '.xquery': <class 'reuse.comment.XQueryCommentStyle'>, '.xqy': <class 'reuse.comment.XQueryCommentStyle'>, '.xsd': <class 'reuse.comment.HtmlCommentStyle'>, '.xsh': <class 'reuse.comment.PythonCommentStyle'>, '.xsl': <class 'reuse.comment.HtmlCommentStyle'>, '.yaml': <class 'reuse.comment.PythonCommentStyle'>, '.yml': <class 'reuse.comment.PythonCommentStyle'>, '.zig': <class 'reuse.comment.CSingleCommentStyle'>, '.zsh': <class 'reuse.comment.PythonCommentStyle'>}#

A map of (common) file extensions against comment types.

class reuse.comment.EmptyCommentStyle[source]#

Bases: CommentStyle

Hacky comment style for files that have no comments.

classmethod comment_at_first_character(text: str) str[source]#

Return the comment block that starts at the first character of text. This is chiefly handy to get the header comment of a file, assuming that the header comment starts at the first character in the file.

Raises:

CommentParseError – if text does not start with a parseable comment block.

classmethod create_comment(text: str, force_multi: bool = False) str[source]#

Comment all lines in text. Single-line comments are preferred over multi-line comments, unless force_multi is provided.

Raises:

CommentCreateError – if text could not be commented.

classmethod parse_comment(text: str) str[source]#

Uncomment all lines in text.

Raises:

CommentParseError – if text could not be parsed.

class reuse.comment.FortranCommentStyle[source]#

Bases: CommentStyle

Fortran (fixed form) comment style.

INDENT_AFTER_SINGLE = ' '#
SHORTHAND = 'f'#
SINGLE_LINE = 'c'#
class reuse.comment.FtlCommentStyle[source]#

Bases: CommentStyle

FreeMarker Template Language comment style.

MULTI_LINE = MultiLineSegments(start='<#--', middle='', end='-->')#
SHORTHAND = 'ftl'#
class reuse.comment.HandlebarsCommentStyle[source]#

Bases: CommentStyle

Handlebars comment style.

MULTI_LINE = MultiLineSegments(start='{{!--', middle='', end='--}}')#
SHORTHAND = 'handlebars'#
class reuse.comment.HaskellCommentStyle[source]#

Bases: CommentStyle

Haskell comment style.

INDENT_AFTER_SINGLE = ' '#
SHORTHAND = 'haskell'#
SINGLE_LINE = '--'#
class reuse.comment.HtmlCommentStyle[source]#

Bases: CommentStyle

HTML comment style.

MULTI_LINE = MultiLineSegments(start='<!--', middle='', end='-->')#
SHEBANGS: List[str] = ['<?xml']#
SHORTHAND = 'html'#
class reuse.comment.JinjaCommentStyle[source]#

Bases: CommentStyle

Jinja2 comment style.

MULTI_LINE = MultiLineSegments(start='{#', middle='', end='#}')#
SHORTHAND = 'jinja'#
class reuse.comment.JuliaCommentStyle[source]#

Bases: CommentStyle

Julia comment style.

INDENT_AFTER_SINGLE = ' '#
MULTI_LINE = MultiLineSegments(start='#=', middle='', end='=#')#
SHEBANGS: List[str] = ['#!']#
SHORTHAND = 'julia'#
SINGLE_LINE = '#'#
class reuse.comment.LispCommentStyle[source]#

Bases: CommentStyle

Lisp comment style.

INDENT_AFTER_SINGLE = ' '#
SHORTHAND = 'lisp'#
SINGLE_LINE = ';;;'#
SINGLE_LINE_REGEXP: Pattern | None = re.compile('^;+\\s*')#
class reuse.comment.M4CommentStyle[source]#

Bases: CommentStyle

M4 (autoconf) comment style.

INDENT_AFTER_SINGLE = ' '#
SHORTHAND = 'm4'#
SINGLE_LINE = 'dnl'#
class reuse.comment.MlCommentStyle[source]#

Bases: CommentStyle

ML comment style.

INDENT_AFTER_MIDDLE = ' '#
INDENT_BEFORE_END = ' '#
INDENT_BEFORE_MIDDLE = ' '#
MULTI_LINE = MultiLineSegments(start='(*', middle='*', end='*)')#
SHORTHAND = 'ml'#
class reuse.comment.ModernFortranCommentStyle[source]#

Bases: CommentStyle

Fortran (free form) comment style.

INDENT_AFTER_SINGLE = ' '#
SHORTHAND = 'f90'#
SINGLE_LINE = '!'#
class reuse.comment.MultiLineSegments(start: str, middle: str, end: str)[source]#

Bases: tuple

Components that make up a multi-line comment style, e.g. ‘/’, ‘’, and ‘*/’.

end: str#

Alias for field number 2

middle: str#

Alias for field number 1

start: str#

Alias for field number 0

reuse.comment.NAME_STYLE_MAP = {'applescript': <class 'reuse.comment.AppleScriptCommentStyle'>, 'aspx': <class 'reuse.comment.AspxCommentStyle'>, 'bat': <class 'reuse.comment.BatchFileCommentStyle'>, 'bibtex': <class 'reuse.comment.BibTexCommentStyle'>, 'c': <class 'reuse.comment.CCommentStyle'>, 'csingle': <class 'reuse.comment.CSingleCommentStyle'>, 'css': <class 'reuse.comment.CssCommentStyle'>, 'f': <class 'reuse.comment.FortranCommentStyle'>, 'f90': <class 'reuse.comment.ModernFortranCommentStyle'>, 'ftl': <class 'reuse.comment.FtlCommentStyle'>, 'handlebars': <class 'reuse.comment.HandlebarsCommentStyle'>, 'haskell': <class 'reuse.comment.HaskellCommentStyle'>, 'html': <class 'reuse.comment.HtmlCommentStyle'>, 'jinja': <class 'reuse.comment.JinjaCommentStyle'>, 'julia': <class 'reuse.comment.JuliaCommentStyle'>, 'lisp': <class 'reuse.comment.LispCommentStyle'>, 'm4': <class 'reuse.comment.M4CommentStyle'>, 'man': <class 'reuse.comment.UnixManCommentStyle'>, 'ml': <class 'reuse.comment.MlCommentStyle'>, 'plantuml': <class 'reuse.comment.PlantUmlCommentStyle'>, 'python': <class 'reuse.comment.PythonCommentStyle'>, 'rst': <class 'reuse.comment.ReStructedTextCommentStyle'>, 'semicolon': <class 'reuse.comment.SemicolonCommentStyle'>, 'tex': <class 'reuse.comment.TexCommentStyle'>, 'vim': <class 'reuse.comment.VimCommentStyle'>, 'vst': <class 'reuse.comment.VelocityCommentStyle'>, 'xquery': <class 'reuse.comment.XQueryCommentStyle'>}#

A map of human-friendly names against style classes.

class reuse.comment.PlantUmlCommentStyle[source]#

Bases: CommentStyle

PlantUML comment style.

INDENT_AFTER_MIDDLE = ' '#
INDENT_AFTER_SINGLE = ' '#
INDENT_BEFORE_END = ' '#
INDENT_BEFORE_MIDDLE = ' '#
MULTI_LINE = MultiLineSegments(start="/'", middle="'", end="'/")#
SHORTHAND = 'plantuml'#
SINGLE_LINE = "'"#
class reuse.comment.PythonCommentStyle[source]#

Bases: CommentStyle

Python comment style.

INDENT_AFTER_SINGLE = ' '#
SHEBANGS: List[str] = ['#!']#
SHORTHAND = 'python'#
SINGLE_LINE = '#'#
class reuse.comment.ReStructedTextCommentStyle[source]#

Bases: CommentStyle

reStructuredText comment style.

INDENT_AFTER_SINGLE = ' '#
SHORTHAND = 'rst'#
SINGLE_LINE = '..'#
class reuse.comment.SemicolonCommentStyle[source]#

Bases: CommentStyle

Semicolon comment style.

INDENT_AFTER_SINGLE = ' '#
SHORTHAND = 'semicolon'#
SINGLE_LINE = ';'#
class reuse.comment.TexCommentStyle[source]#

Bases: CommentStyle

TeX comment style.

INDENT_AFTER_SINGLE = ' '#
SHORTHAND = 'tex'#
SINGLE_LINE = '%'#
class reuse.comment.UncommentableCommentStyle[source]#

Bases: EmptyCommentStyle

A pseudo comment style to indicate that this file is uncommentable. This results in an external .license file for binaries and –force-dot-license.

class reuse.comment.UnixManCommentStyle[source]#

Bases: CommentStyle

UNIX manual page comment style.

INDENT_AFTER_SINGLE = ' '#
SHORTHAND = 'man'#
SINGLE_LINE = '.\\"'#
class reuse.comment.VelocityCommentStyle[source]#

Bases: CommentStyle

Apache Velocity Template Language comment style.

MULTI_LINE = MultiLineSegments(start='#*', middle='  ', end='*#')#
SHORTHAND = 'vst'#
class reuse.comment.VimCommentStyle[source]#

Bases: CommentStyle

Vim(Script|Config) style.

INDENT_AFTER_SINGLE = ' '#
SHORTHAND = 'vim'#
SINGLE_LINE = '"'#
class reuse.comment.XQueryCommentStyle[source]#

Bases: CommentStyle

XQuery comment style.

INDENT_AFTER_MIDDLE = ' '#
INDENT_BEFORE_END = ' '#
INDENT_BEFORE_MIDDLE = ' '#
MULTI_LINE = MultiLineSegments(start='(:', middle=':', end=':)')#
SHORTHAND = 'xquery'#