\def\cA{{\cal A}}
\def\cB{{\cal B}}
\def\cC{{\cal C}}
% etc...
\def\CC{\mathbb{C}}
\def\RR{\mathbb{R}}
\def\PP{\mathbb{P}}
\def\ZZ{\mathbb{Z}}
\def\QQ{\mathbb{Q}}
\def\HH{\mathbb{H}}
\def\SS{\mathbb{S}}
\newcommand{\dd}{\mathrm{d}} % exterior d
\DeclareMathOperator*{\hodge}{\star} % hodge star
\newcommand{\vol}{\mathrm{vol}} % volume form
\DeclareMathOperator{\Lie}{\mathcal{L}} % Lie derivative
\DeclareMathOperator*{\diag}{\mathrm{diag}} % diagonal matrix
\DeclareMathOperator{\Span}{\mathrm{span}} % span
\DeclareMathOperator{\ad}{\mathrm{ad}} % Lie algebra adjoint
\DeclareMathOperator{\Ad}{\mathrm{Ad}} % group adjoint
\DeclareMathOperator{\Ric}{\mathrm{Ric}} % Ricci tensor
\DeclareMathOperator{\Rf}{\mathfrak{R}} % Ricci form
\DeclareMathOperator{\into}{\raisebox{0.2ex}{\reflectbox{\rotatebox[origin=c]{180}{$\neg$}}}}
% interior product
\DeclareMathOperator{\ins}{\iota} % insertion operator
\newcommand{\norm}[1]{{\lVert {#1} \rVert}} % norm
\newcommand{\abs}[1]{{\lvert {#1} \rvert}} % absolute value
\newcommand{\inprod}[2]{\langle {#1}, {#2} \rangle}
\newcommand{\binprod}[2]{\big \langle {#1}, \, {#2} \big \rangle}
\DeclareMathOperator{\codim}{codim} % codimension
\DeclareMathOperator{\sign}{sign} % signum
\DeclareMathOperator{\id}{\mathrm{id}} % identity
\DeclareMathOperator{\lcm}{\mathrm{lcm}} % least common multiple
% better overlines
\newcommand*\widebar[1]{%
\mkern2.2mu%
\overline{%
\mkern-2.2mu%
%\rule{0pt}{6pt}%
{#1}%
\mkern-1.8mu%
}%
\mkern1.8mu%
}
\usepackage{forloop}
\newcounter{ct}
% (-+++...) Minkowski signature
\newcommand{\mink}[1]{(\mathord{-} \forloop[-1]{ct}{#1}{\value{ct} > 1}{\, \mathord{+}})}
% (+++...) Euclidean signature
\newcommand{\eucl}[1]{(%
\ifthenelse{#1 > 0}{%
\mathord{+} \forloop[-1]{ct}{#1}{\value{ct} > 1}{\, \mathord{+}}%
}{}%
)}
% generic (---...+++...) signature
\newcommand{\sig}[2]{(%
\ifthenelse{#2 > 0}{%
\mathord{-} \forloop[-1]{ct}{#2}{\value{ct} > 1}{\, \mathord{-}}%
\ifthenelse{#1 > 0}{\,}{}%
}{}%
\ifthenelse{#1 > 0}{%
\mathord{+} \forloop[-1]{ct}{#1}{\value{ct} > 1}{\, \mathord{+}}%
}{}%
)}