% \iffalse meta-comment
%
% Copyright (C) 2023 by Mario Fantini <marfant7@gmail.com>
% ---------------------------------------------------------
% 
% This work may be distributed and/or modified under the 
% conditions of the LaTeX Project Public License, either version 1.3
% of this license or (at your option) any later version.
% The latest version of this license is in:
%
%    http://www.latex-project.org/lppl.txt
%
% and version 1.3 or later is part of all distributions of LaTeX 
% version 2005/12/01 or later.
%
% This work has the LPPL maintenance status 'maintained'.
% 
% The Current Maintainer of this work is Mario Fantini.
%
% This work consists of the files isphysicalmath.dtx and isphysicalmath.ins
% and the derived file isphysicalmath.sty.
%
% \fi
%
% \iffalse
%<*driver>
\ProvidesFile{isphysicalmath.dtx}
%</driver>
%<package>\NeedsTeXFormat{LaTeX2e}[2005/12/01]
%<package>\ProvidesPackage{isphysicalmath}
%<*package>
[2024/01/03 v1.1.0 .dtx isphysicalmath file]
%</package>
%<package>\RequirePackage{xstring}
%<package>%
%<package>% Notation section:
%<package>% option [dc]: changes dots in commas (\ispmc), or commas in dots (\ispmrc).
%<package>\DeclareOption{dc}{
%<package>\def\ispmc#1.#2{{#1,#2}}
%<package>\def\ispmrc#1,#2{{#1.#2}}
%<package>}
%<package>%
%<package>% option [comma]: scientific international notation for thousands and their multiples.
%<package>\DeclareOption{comma}{
%<package>\def\ispmc#1{%
%<package>\StrLen{#1}[\temp]%
%<package>\ifnum\temp=4%
%<package>\StrChar{#1}{1}[\unoq]%
%<package>\StrChar{#1}{2}[\dueq]%
%<package>\StrChar{#1}{3}[\treq]%
%<package>\StrChar{#1}{4}[\quattroq]%
%<package>\unoq,\dueq\treq\quattroq%
%<package>\fi%
%<package>\ifnum\temp=5%
%<package>\StrChar{#1}{1}[\unoq]%
%<package>\StrChar{#1}{2}[\dueq]%
%<package>\StrChar{#1}{3}[\treq]%
%<package>\StrChar{#1}{4}[\quattroq]%
%<package>\StrChar{#1}{5}[\cinqueq]%
%<package>\unoq\dueq,\treq\quattroq\cinqueq%
%<package>\fi%
%<package>\ifnum\temp=6%
%<package>\StrChar{#1}{1}[\unoq]%
%<package>\StrChar{#1}{2}[\dueq]%
%<package>\StrChar{#1}{3}[\treq]%
%<package>\StrChar{#1}{4}[\quattroq]%
%<package>\StrChar{#1}{5}[\cinqueq]%
%<package>\StrChar{#1}{6}[\seiq]%
%<package>\unoq\dueq\treq,\quattroq\cinqueq\seiq%
%<package>\fi%
%<package>\ifnum\temp=7%
%<package>\StrChar{#1}{1}[\unoq]%
%<package>\StrChar{#1}{2}[\dueq]%
%<package>\StrChar{#1}{3}[\treq]%
%<package>\StrChar{#1}{4}[\quattroq]%
%<package>\StrChar{#1}{5}[\cinqueq]%
%<package>\StrChar{#1}{6}[\seiq]%
%<package>\StrChar{#1}{7}[\setteq]%
%<package>\unoq,\dueq\treq\quattroq,\cinqueq\seiq\setteq%
%<package>\fi%
%<package>\ifnum\temp=8%
%<package>\StrChar{#1}{1}[\unoq]%
%<package>\StrChar{#1}{2}[\dueq]%
%<package>\StrChar{#1}{3}[\treq]%
%<package>\StrChar{#1}{4}[\quattroq]%
%<package>\StrChar{#1}{5}[\cinqueq]%
%<package>\StrChar{#1}{6}[\seiq]%
%<package>\StrChar{#1}{7}[\setteq]%
%<package>\StrChar{#1}{8}[\ottoq]%
%<package>\unoq\dueq,\treq\quattroq\cinqueq,\seiq\setteq\ottoq%
%<package>\fi%
%<package>\ifnum\temp=9%
%<package>\StrChar{#1}{1}[\unoq]%
%<package>\StrChar{#1}{2}[\dueq]%
%<package>\StrChar{#1}{3}[\treq]%
%<package>\StrChar{#1}{4}[\quattroq]%
%<package>\StrChar{#1}{5}[\cinqueq]%
%<package>\StrChar{#1}{6}[\seiq]%
%<package>\StrChar{#1}{7}[\setteq]%
%<package>\StrChar{#1}{8}[\ottoq]%
%<package>\StrChar{#1}{9}[\noveq]%
%<package>\unoq\dueq\treq,\quattroq\cinqueq\seiq,\setteq\ottoq\noveq%
%<package>\fi%
%<package>}
%<package>}
%<package>\ExecuteOptions{dc}
%<package>\ExecuteOptions{comma}
%<package>\ProcessOptions\relax
%<package>%
%<package>% command \ispmcomma: scientific international notation for thousands and their multiples.
%<package>\newcommand{\ispmcomma}[1]{%
%<package>\StrLen{#1}[\temp]%
%<package>\ifnum\temp=4%
%<package>\StrChar{#1}{1}[\unoq]%
%<package>\StrChar{#1}{2}[\dueq]%
%<package>\StrChar{#1}{3}[\treq]%
%<package>\StrChar{#1}{4}[\quattroq]%
%<package>\unoq,\dueq\treq\quattroq%
%<package>\fi%
%<package>\ifnum\temp=5%
%<package>\StrChar{#1}{1}[\unoq]%
%<package>\StrChar{#1}{2}[\dueq]%
%<package>\StrChar{#1}{3}[\treq]%
%<package>\StrChar{#1}{4}[\quattroq]%
%<package>\StrChar{#1}{5}[\cinqueq]%
%<package>\unoq\dueq,\treq\quattroq\cinqueq%
%<package>\fi%
%<package>\ifnum\temp=6%
%<package>\StrChar{#1}{1}[\unoq]%
%<package>\StrChar{#1}{2}[\dueq]%
%<package>\StrChar{#1}{3}[\treq]%
%<package>\StrChar{#1}{4}[\quattroq]%
%<package>\StrChar{#1}{5}[\cinqueq]%
%<package>\StrChar{#1}{6}[\seiq]%
%<package>\unoq\dueq\treq,\quattroq\cinqueq\seiq%
%<package>\fi%
%<package>\ifnum\temp=7%
%<package>\StrChar{#1}{1}[\unoq]%
%<package>\StrChar{#1}{2}[\dueq]%
%<package>\StrChar{#1}{3}[\treq]%
%<package>\StrChar{#1}{4}[\quattroq]%
%<package>\StrChar{#1}{5}[\cinqueq]%
%<package>\StrChar{#1}{6}[\seiq]%
%<package>\StrChar{#1}{7}[\setteq]%
%<package>\unoq,\dueq\treq\quattroq,\cinqueq\seiq\setteq%
%<package>\fi%
%<package>\ifnum\temp=8%
%<package>\StrChar{#1}{1}[\unoq]%
%<package>\StrChar{#1}{2}[\dueq]%
%<package>\StrChar{#1}{3}[\treq]%
%<package>\StrChar{#1}{4}[\quattroq]%
%<package>\StrChar{#1}{5}[\cinqueq]%
%<package>\StrChar{#1}{6}[\seiq]%
%<package>\StrChar{#1}{7}[\setteq]%
%<package>\StrChar{#1}{8}[\ottoq]%
%<package>\unoq\dueq,\treq\quattroq\cinqueq,\seiq\setteq\ottoq%
%<package>\fi%
%<package>\ifnum\temp=9%
%<package>\StrChar{#1}{1}[\unoq]%
%<package>\StrChar{#1}{2}[\dueq]%
%<package>\StrChar{#1}{3}[\treq]%
%<package>\StrChar{#1}{4}[\quattroq]%
%<package>\StrChar{#1}{5}[\cinqueq]%
%<package>\StrChar{#1}{6}[\seiq]%
%<package>\StrChar{#1}{7}[\setteq]%
%<package>\StrChar{#1}{8}[\ottoq]%
%<package>\StrChar{#1}{9}[\noveq]%
%<package>\unoq\dueq\treq,\quattroq\cinqueq\seiq,\setteq\ottoq\noveq%
%<package>\fi%
%<package>}
%<package>%
%<package>%
%<package>% Formatting section:
%<package>% a small space between value and measurement unit
%<package>\newcommand{\ispms}{\,}
%<package>% normal text rendering for first measurement unit
%<package>\newcommand{\ispmntone}[1]{\textnormal{#1}}
%<package>% jolly: the default setting consists in --- a $0.15\ispmone{mm}$ of space 
%<package>% and normal text rendering for a generic 'entity'.
%<package>% If you are a developer, you can modify it when and how you want.
%<package>\newcommand{\ispm}[1]{\hspace{0.15mm}\textnormal{#1}}
%<package>% normal text rendering for first and second measurement units
%<package>\newcommand{\ispmnttwo}[2]{\textnormal{#1}\textnormal{#2}}
%<package>% space between first and second measurement units
%<package>\newcommand{\ispmss}{\hspace{0.15mm}}
%<package>% \ispm if you have only a measurement unit
%<package>% e.g. $F = 20 \ispmone{N}$
%<package>\newcommand{\ispmone}{\ispms\ispmntone}
%<package>% \ispm if you have two measurement units
%<package>% e.g. $L = 20 \ispmtwo{N}{m}$
%<package>\newcommand{\ispmtwo}[2]{\ispms\ispmnttwo\ispmss{#1}\ispmnttwo\ispmss{#2}}
%<package>% ispm if you have three measurement units
%<package>% e.g. $V = 8 \ispmtwo{m}{m}\ispmthird{m}$
%<package>\newcommand{\ispmthird}[1]{\ispmss\ispm{#1}}
%<package>% and so on until ninth measurement unit
%<package>\newcommand{\ispmfourth}[1]{\ispmss\ispm{#1}}
%<package>\newcommand{\ispmfifth}[1]{\ispmss\ispm{#1}}
%<package>\newcommand{\ispmsixth}[1]{\ispmss\ispm{#1}}
%<package>\newcommand{\ispmseventh}[1]{\ispmss\ispm{#1}}
%<package>\newcommand{\ispmeighth}[1]{\ispmss\ispm{#1}}
%<package>\newcommand{\ispmninth}[1]{\ispmss\ispm{#1}}
%<package>% If you don't want numerical order, you could use generic \ispmn command
%<package>\newcommand{\ispmn}[1]{\ispmss\ispm{#1}}
%<*driver>
\documentclass{ltxdoc}
\usepackage{isphysicalmath}[2024/01/03]
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{lmodern} 
\usepackage{hyperref}
\usepackage{amssymb}
\usepackage{makeidx}
\makeindex
\def\indice{%
\renewcommand*\contentsname{General index}%
\tableofcontents%
\clearpage}
\EnableCrossrefs         
\CodelineIndex
\begin{document}
\DocInput{isphysicalmath.dtx}
\end{document}
%</driver>
% \fi
%
% \CharacterTable
%  {Upper-case    \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
%   Lower-case    \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
%   Digits        \0\1\2\3\4\5\6\7\8\9
%   Exclamation   \!     Double quote  \"     Hash (number) \#
%   Dollar        \$     Percent       \%     Ampersand     \&
%   Acute accent  \'     Left paren    \(     Right paren   \)
%   Asterisk      \*     Plus          \+     Comma         \,
%   Minus         \-     Point         \.     Solidus       \/
%   Colon         \:     Semicolon     \;     Less than     \<
%   Equals        \=     Greater than  \>     Question mark \?
%   Commercial at \@     Left bracket  \[     Backslash     \\
%   Right bracket \]     Circumflex    \^     Underscore    \_
%   Grave accent  \`     Left brace    \{     Vertical bar  \|
%   Right brace   \}     Tilde         \~}
%
%\indice
%
%\GetFileInfo{isphysicalmath.dtx}
%
%\title{The \textsf{isphysicalmath} package\thanks{This document
%corresponds to  \textsf{isphysicalmath}~\fileversion, dated \filedate.}}
%\author{Mario Fantini \\ \texttt{marfant7@gmail.com}}
%
%\maketitle
%
%\begin{abstract}
%This package helps user to write mathematical and  physical formulas
%-- their numerical values, their measurement units, their factors, their
%dimensions -- in a 
%scientific way (international mainly), by an elegant formatting.
%\end{abstract}
%\section{Introduction}
%
%\LaTeX{} is a powerful language, but to take advantage of it, to respect 
%its quality and to observe the discipline of matters that \LaTeX{} interacts with---it
%requires some devices.
%
%If you are interested in math and physics, here comes \textsl{isphysicalmath} inside \LaTeX{}
%as far as international scientific notation and formatting of formulas,
% quantities, numerical values, factors, dimensions, measurement units. \\
%
%The name \textsl{isphysicalmath} means either:
%\begin{itemize}
%	\item Physics is Math's daughter;
%	\item International System of units (SI) is observed.
%\end{itemize}
%
%\section{Conventions}
%To have a clear doc text, I'll not refer to physical quantities
%dimensions every times; for them, the measurement units 
%\textsl{isphysicalmath} acting is valid too.
%
%\section{Dependencies}
%\label{sec:dependencies}
%\textsl{isphysicalmath} has \textsl{xstring} package dependency.
%
%Internally,  it uses standard \LaTeX{} built-in commands like: \texttt{\textbackslash textnormal},
%\texttt{\textbackslash hspace\{\}}, \texttt{\textbackslash ,};
% however, it performs its activity in complex math environment too.
%\newpage
%\section{Usage}
%\label{sec:usage}
%\DescribeMacro{\ispm}
%
%\textit{hp.} It is a jolly command.
%The default setting consists in --- a $0.15\ispmone{mm}$ of space  and normal text rendering for a generic 'entity'.
%In other words  <\texttt{\textbackslash textnormal}> and <0.15mm> are the values of \texttt{\textbackslash ispm}
% variable. So, if you are a developer  you can modify this variable how and when you want.
% I use it for  generic ``entities''.  \\
%\textit{th.} Default setting: normal text rendering for a generic ``entity''.\\
%|\ispm|\marg{generic ``entity'' in place of argument}  \\ \\
%
%\DescribeMacro{\ispmone}
%
%\textit{hp.} You have only a measurement unit. \\
%\textit{th.} Horizontal space between measurement unit
%and numerical value,
%and normal text rendering for the measurement unit.\\
%|\ispmone|\marg{measurement unit in place of  argument}  \\ \\
% \DescribeMacro{\ispmtwo}
%
%\textit{hp.} You have two measurement units. \\
%\textit{th.} Horizontal space between the first measurement unit
%and numerical value, horizontal space  between the first measurement unit 
%and second measurement unit; normal text rendering for both measurement units.\\
%|\ispmtwo|\marg{the first measurement unit in place of the I argument}\marg{second
%measurement unit in place of II argument}  \\ \\
%\DescribeMacro{\ispmthird}
%
%\textit{hp.} You have three measurement units. \\
%\textit{th.} Horizontal space between the first measurement unit
%and numerical value, horizontal space between the first
%measurement unit and the second %measurement unit, horizontal space between
%the second measurement unit and  third measurement unit; normal text 
%rendering for all the measurement units.\\
%|\ispmtwo|\marg{the first measurement unit in place of the I argument}\marg{the second 
%measurement unit in place of the II argument}%
%|\ispmthird|\marg{third measurement unit in place of III argument} \\ 
% Or, e.g. if you have a fraction [see In-depth formatting' 
%(\autoref{subsec:inDepthFormatting})]:\\
%|\ispmone|\marg{the first measurement unit in place of the I argument (numerator)}
%|\ispmone|\marg{the second %measurement unit in place of the II argument (denominator)}
%|\ispmthird|\marg{third measurement unit in place of III argument} \\ \\
%
%\DescribeMacro{ ~\ } And so on until ninth measurement unit, having: \\
%\DescribeMacro{\ispmfourth}\\
%\DescribeMacro{\ispmfifth} \\
%\DescribeMacro{\ispmsixth}\\
%\DescribeMacro{\ispmseventh} \\
%\DescribeMacro{\ispmeighth} \\
%\DescribeMacro{\ispmninth} ~\ \\ \\
%\DescribeMacro{\ispmn} 
%
%If you don't want to follow a numerical order, you can use this command. 
%
%\textit{hp.} You have three measurement units. \\
%\textit{th.} Horizontal space between the first measurement unit
%and numerical value, horizontal space between the first
%measurement unit and the second %measurement unit, horizontal space between
%the second measurement unit and  third measurement unit; normal text 
%rendering for all the measurement units.\\
%|\ispmtwo|\marg{the first measurement unit in place of the I argument}\marg{the second 
%measurement unit in place of the II argument}%
%|\ispmn|\marg{third measurement unit in place of III argument} \\ 
% Or, e.g. if you have a fraction [see In-depth formatting' 
%(\autoref{subsec:inDepthFormatting})]:\\
%|\ispmone|\marg{the first measurement unit in place of the I argument (numerator)}
%|\ispmn|\marg{the second %measurement unit in place of the II argument (denominator)}
%|\ispmn|\marg{third measurement unit in place of III argument} \\ \\
%
%
%\begin{environment}{dc}
% option \textit{dc} \\
%\textbackslash usepackage\oarg{dc}\{isphysicalmath\} \\
%
%$\forall x,y,\ldots,+\infty \in \mathbb{N}$:\\ 
%|\ispmc| \meta{x.y}  \\
%|\ispmrc| \meta{x,y}  \\
%\end{environment}
%
%\begin{environment}{comma}
% option \textit{comma} \\
%\textbackslash usepackage\oarg{comma}\{isphysicalmath\} \\
%
%$\forall a,b,c,d,e,f,g,h,i \in \mathbb{N}$ [0,9]: \\ 
%|\ispmc|\{abcdefghi\} \\
%|\ispmc|\{abcdefghi\}.aa \\
%\end{environment}
%\newpage
% \section{In-depth usage}
%\subsection{In-depth formatting}
%\label{subsec:inDepthFormatting}
% \textsl{isphysicalmath} command, in mathematical environments, can be joined or detached to previous term;
%while, in not mathematical environments, \textsl{isphysicalmath} command must be joined to previous term. \\ \\
%	\textsl{isphysicalmath} automatical settings:
%	\begin{itemize}
%		\item a small space between numerical value and first
%			measurement unit, <<first>> if there are others.
%		\item 0.15\ispmone{mm}  between two or three 
%			measurement units, or between  measurement units and their factors.
%		\item Normal text for measurement unit.
%	\end{itemize}
%
%\begin{description}
%	\item [Without \textsl{isphysicalmath}] ~\ \\
%		\begin{itemize}
%			\item Without mathematical environment:  
%			\begin{center}
%				F = 1 N
%			\end{center}
%I don't like this style, and it has not a logical meaning.
%		        \item By mathematical environment:
%
%\[F = 1 N\]
%
%I don't like this style, and it has not a logical meaning.
%
%The code:
%\begin{verbatim}
%\[ F = 1 N \]
%\end{verbatim}
%\end{itemize}
%
%
%\item [By \textsl{isphysicalmath}] ~\ \\
%	\begin{itemize}
%		\item With one measurement unit.
%
%	\[F = 1 \ispmone{N}\]
%	\[P = 1 \ispmone{bar}\]
%
%	The code: 
%\begin{center}
%\begin{verbatim}
%\[
%F = 1 \ispmone{N}  
%\]
%\[P = 1 \ispmone{bar}\]
%\end{verbatim}
%\end{center}
%
%\item With two measurement units (a).
%
%	\[L = 1 \ispmtwo{N}{m}\]
%
%The code: 
%\begin{center}
%\begin{verbatim}
%\[
%	L = 1 \ispmtwo{N}{m}  
%\]
%\end{verbatim}
%\end{center}
%
%\item With two measurement units and a factor for the last unit. 
%\[L = 1 \ispmtwo{N}{mm}\ispmthird{(10$^{-3}$)}\]
%
%The code: 
%\begin{center}
%\begin{verbatim}
%\[
%	L = 1 \ispmtwo{N}{mm}\ispmthird{(10$^{-3}$)}  
%\]
%\end{verbatim}
%\end{center}
%
%\item With three measurement units.
%
%	\[V = 8 \ispmtwo{m}{m}\ispmthird{m}\]
%
%The code: 
%\begin{center}
%\begin{verbatim}
%\[
%V = 8 \ispmtwo{m}{m}\ispmthird{m} 
%\]
%\end{verbatim}
%\end{center}
%
%\item With a  declared additional inner \texttt{\textbackslash textnormal}, with inner 
%	\texttt{\textbackslash tiny} environment, 
%	and with inner mathematical environment (a).
%	\[
%		m = \gamma V = 1 \frac{\ispmone{kg}}
%		{\ispmone{m$^{\textnormal{\tiny 3}}$}}
%		\ispmthird{m$^3$}
%\]
%
%The code: 
%\begin{center}
%\begin{verbatim}
%\[
%m = \gamma V = 1 \frac{\ispmone{kg}}
%{\ispmone{m$^{\textnormal{\tiny 3}}$}}\ispmthird{m$^3$}
%\]
%\end{verbatim}
%\end{center}
%
%\item With inner mathematical environment (b).
%	\[
%		m = \gamma V = 1 \frac{\ispmone{kg}}
%		{\ispmone{m$^3$}}\ispmthird{m$^3$}
%	\]
%The code: 
%\begin{center}
%\begin{verbatim}
%\[
%m = \gamma V = 1 \frac{\ispmone{kg}}
%{\ispmone{m$^3$}}\ispmthird{m$^3$}
%\]
%\end{verbatim}
%\end{center}
%
%\item  With inner mathematical environment (c) and 
%	\texttt{\textbackslash large}, \texttt{\textbackslash normalsize} environments.
%\[
%	m = \gamma V = 1 \textnormal{\large$\frac{\ispmone{kg}}
%	{\ispmone{m$^3$}}$}\textnormal{\normalsize\ispmthird{m$^3$}}
%\]
%The code: 
%\begin{center}
%\begin{verbatim}
%\[
%m = \gamma V = 1 \large\frac{\ispmone{kg}}
%{\ispmone{m$^3$}}\normalsize\ispmthird{m$^3$}
%\]
%\end{verbatim}
%\end{center}
%
%\item With inner mathematical environments (d).
%
%The following is a  trascendental physical example, but it  could be useful like
%material for some mathematical need; however, this case demonstrates
%\LaTeX{} power and \textsl{isphysicalmath}.
%
%	\[u = 7  \ispmtwo{$\alpha$m}{$\beta$m$^2$}
%		\ispmthird{$\delta$s}
%	\]
%The code: 
%\begin{center}
%\begin{verbatim}
%\[
%u = 7  \ispmtwo{$\alpha$m}{$\beta$m$^2$}
%		\ispmthird{$\delta$s}
%\]
%\end{verbatim}
%\end{center}
%
%\item With inner mathematical environments (e).
%
%\[
%P_p = (V_{cls})(\gamma_{cls}) = (29.6\ispmone{m$^3$})\Big(25\frac{\ispmone{kN}}{\ispmone{m$^3$}}\Big) = 740 \ispmone{kN}
%\]
%
%The code: 
%\begin{center}
%\begin{verbatim}
%\[
%P_p = (V_{cls})(\gamma_{cls}) = (29.6\ispmone{m$^3$})
%\Big(25\frac{\ispmone{kN}}
%{\ispmone{m$^3$}}\Big) = 740 \ispmone{kN}
%\]
%\end{verbatim}
%\end{center}
%
%\item About physical quantities dimensions.
%
%e.g.
%\[
%F = m a \equiv \ispmtwo{[M]}{[L]}\ispmthird{[T]$^{-2}$}
%\]
%The code: 
%\begin{center}
%\begin{verbatim}
%F = m a \equiv \ispmtwo{[M]}{[L]}\ispmthird{[T]$^{-2}$}
%\end{verbatim}
%\end{center}
%
%\item Final example.
%
%e.g.
%\[1\ispmtwo{a}{b}\ispmthird{c}\ispmfourth{d}\ispmfifth{e}\ispmsixth{f}\ispmseventh{g}\ispmeighth{h}\ispmninth{i}\] 
%\[1\ispmone{a}\ispmn{b}\ispmn{c}\ispmn{d}\ispmn{e}\ispmn{f}\ispmn{g}\ispmn{h}\ispmn{i}\]
%The code: 
%\begin{center}
%\begin{verbatim}
%\[1\ispmtwo{a}{b}\ispmthird{c}\ispmfourth{d}\ispmfifth{e}
%\ispmsixth{f}\ispmseventh{g}\ispmeighth{h}\ispmninth{i}\]
%
%\[1\ispmone{a}\ispmn{b}\ispmn{c}\ispmn{d}\ispmn{e}
%\ispmn{f}\ispmn{g}\ispmn{h}\ispmn{i}\]
%\end{verbatim}
%\end{center}
%
%\end{itemize}
%\end{description}
%
%\newpage
%\subsection{In-depth notation}
%\label{subsec:in-depthNotation}
%Option \textsl{dc} and option \textsl{comma} are not compatible, but you can use option \textsl{dc} and 
%\texttt{\textbackslash ispmcomma} command, both in the same document. \\ \\
%\texttt{\textbackslash usepackage[dc]\{isphysicalmath\}} \\
%\texttt{\textbackslash usepackage[comma]\{isphysicalmath\}} \\ \\
%In a document by \textsl{dc} option: \\
%1,234 \\ \\
%In an other document by \textsl{comma} option: \\
%1,234,567 \\ \\
%Both in the same document, by \textsl{dc} option and \texttt{\textbackslash ispmcomma} command:\\
%1,234  1,234,567 \\ \\
%The code: 
%\begin{verbatim}
%\ispmc 1.234 \\
%\ispmc{1234567} \\
%\ispmc 1.234 \ispmcomma{1234567}
%\end{verbatim}
%
%\subsubsection{option <dc>}
%\label{subsubsec:optionDc}
%\textsl{Usage}: \texttt{\textbackslash usepackage[dc]\{isphysicalmath\}} \\ 
%
%The code of this option is not mine, it already exists in \LaTeX{} literature, 
% I discovered it in \tiny\url{https://en.wikibooks.org/wiki/LaTeX}\normalsize. \\
%
%This option by \texttt{\textbackslash ispmc} changes dots in commas. It is useful for some users who don't 
%use scientific international notation. It is convenient for users who 
%respect scientific international notation, so they change dots
%in commas to select thousands and not to express numbers under the unit. \\
%
%e.g.
%\begin{center}
%	1.234 becomes 1,234
%\end{center}
%The code: 
%\begin{center}
%\begin{verbatim}
%\ispmc 1.234
%\end{verbatim}
%\end{center}
%~\ \\
%This option by \texttt{\textbackslash ispmrc} changes commas in dots. It is useful for some users who want to 
%use scientific international notation. It is convenient for users who 
%respect scientific international notation, so they change commas
%in dots to express numbers under the unit. \\
%
%e.g.
%\begin{center}
%	1,234 becomes 1.234
%\end{center}
%The code: 
%\begin{center}
%\begin{verbatim}
%\ispmrc 1,234
%\end{verbatim}
%\end{center}
%
%\subsubsection{option <comma>}
%\label{subsubsec:optionComma}
%\textsl{Usage}: \texttt{\textbackslash
%\{usepackage\}[comma]\{isphysicalmath\}} \\ 
%
%It adds comma after every three digits, according to international
%scientific notation.
%
%\begin{center}
%	100,000,000 \\
%	100,000,000.00\\
%	10,000,000.00 \\
%	1,000,000.00 \\
%	100,000.00 \\
%	10,000.00 \\
%	1,000.00
%\end{center}
%
%The code: 
%\begin{center}
%\begin{verbatim}
%\ispmc{100000000} \\
%\ispmc{100000000}.00 \\
%\ispmc{10000000}.00 \\
%\ispmc{1000000}.00 \\
%\ispmc{100000}.00 \\
%\ispmc{10000}.00 \\
%\ispmc{1000}.00
%\end{verbatim}
%\end{center}
%\subsubsection{command <comma>}
%\label{subsubsec:commandComma}
%\textsl{Usage}: \texttt{\textbackslash
%\{usepackage\}[dc]\{isphysicalmath\}} \\ 
%or \\
%\texttt{\textbackslash \{usepackage\}\{isphysicalmath\}} \\ 
%It adds comma after every three digits, according to international
%scientific notation.
%
%\begin{center}
%	100,000,000 \\
%	100,000,000.00\\
%	10,000,000.00 \\
%	1,000,000.00 \\
%	100,000.00 \\
%	10,000.00 \\
%	1,000.00
%\end{center}
%
%The code: 
%\begin{center}
%\begin{verbatim}
%\ispmcomma{100000000} \\
%\ispmcomma{100000000}.00 \\
%\ispmcomma{10000000}.00 \\
%\ispmcomma{1000000}.00 \\
%\ispmcomma{100000}.00 \\
%\ispmcomma{10000}.00 \\
%\ispmcomma{1000}.00
%\end{verbatim}
%\end{center}
%\newpage
%
%\section{isphysicalmath url}%
%Package home URL: 
%\tiny \url{https://ctan.org/pkg/isphysicalmath} \\
%\url{https://github.com/MartDiVenus/LaTeX/tree/isphysicalmath} \normalsize%
%
%\section{Copyright}
%
%Copyright (C) 2024 by Mario Fantini <marfant7@gmail.com>
%
%This file may be distributed and/or modified under the conditions of
%the \LaTeX\ Project Public License, either version 1.3 of this license
%or (at your option) any later version.  The latest version of this
%license is in: \\
%\url{http://www.latex-project.org/lppl.txt} \\
%and version 1.3 or later is part of all distributions of  \LaTeX\ version
%2005/12/01 or later.
%
% This work has the LPPL maintenance status `maintained'. 
% 
% The Current Maintainer of this work is Mario Fantini.
%
% This work consists of the files isphysicalmath.dtx and isphysicalmath.ins
% and the derived file isphysicalmath.sty.
%\section{Change history}
%\subsection{v1.0.0}
%2023.09.18 First version.
%\subsection{v1.1.0}
%2024.01.03 Following improvements have been brought:
%\begin{enumerate}
%\item \autoref{sec:dependencies} changed.
%\item URL \tiny \url{https://ctan.org/pkg/isphysicalmath} \normalsize specified.
%\item Original  \textsl{comma} option changed in command, and new \textsl{comma} option \texttt{\textbackslash ispmc}  added.
%\item Example added in \autoref{subsec:inDepthFormatting}.
%\item Doc \textsl{dc} option improved in \autoref{sec:usage}.
%\item \textsl{dc} option changed in \texttt{\textbackslash ispmc}.
%\item \textsl{dc} option improved adding \texttt{\textbackslash ispmrc} to change commas in dots.
%\item Doc \textsl{comma} option improved in \autoref{sec:usage}.
%\item Doc \textsl{comma} option changed in \autoref{subsec:in-depthNotation}.
%\item Option \textsl{comma} improved, now the goal is reached by a single command.
%\item \autoref{subsubsec:optionComma} changed.
%\item \autoref{subsubsec:commandComma} added.
%\item Following commands added:
%\begin{itemize}
%	\item \texttt{\textbackslash ispmfourth};
%	\item \texttt{\textbackslash ispmfifth};
%	\item \texttt{\textbackslash ispmsixth};
%\item \texttt{\textbackslash ispmseventh};
%\item \texttt{\textbackslash ispmeighth};
%\item \texttt{\textbackslash ispmninth};
%\item \texttt{\textbackslash ispmn}.
%\end{itemize}
%\item Example `With inner mathematical environments (e)' added in \autoref{subsec:inDepthFormatting}.
%\item Example `Final example' added in \autoref{subsec:inDepthFormatting}.
%\item \autoref{subsubsec:optionDc} changed. 
%\item \texttt{\textbackslash ispm} command changed, so \autoref{sec:usage} changed.
%\item `About physical quantities dimensions' (\autoref{subsec:inDepthFormatting}) improved.
%\item Clarified in \autoref{subsec:inDepthFormatting} when to join or to detach formatting commands to previous term.
%\item Year of the copyright modified.
%\item README.md:
%\begin{itemize}
%\item Year of the copyright modified.
%\item `Change History' added.
%\item `URL' modified.
%\item `Documentation' modified.
%\item `Dependencies' modified.
%\item `Build the documentation' removed.
%\item `Build isphysicalmath.sty' removed.
%\end{itemize}
%\end{enumerate}
%
% \Finale
\endinput
