texlive[73239] Master/texmf-dist: isphysicalmath (30dec24)

commits+karl at tug.org commits+karl at tug.org
Mon Dec 30 22:18:39 CET 2024


Revision: 73239
          https://tug.org/svn/texlive?view=revision&revision=73239
Author:   karl
Date:     2024-12-30 22:18:39 +0100 (Mon, 30 Dec 2024)
Log Message:
-----------
isphysicalmath (30dec24)

Modified Paths:
--------------
    trunk/Master/texmf-dist/doc/latex/isphysicalmath/README.md
    trunk/Master/texmf-dist/doc/latex/isphysicalmath/isphysicalmath-doc.pdf
    trunk/Master/texmf-dist/source/latex/isphysicalmath/isphysicalmath.dtx
    trunk/Master/texmf-dist/source/latex/isphysicalmath/isphysicalmath.ins
    trunk/Master/texmf-dist/tex/latex/isphysicalmath/isphysicalmath.sty

Modified: trunk/Master/texmf-dist/doc/latex/isphysicalmath/README.md
===================================================================
--- trunk/Master/texmf-dist/doc/latex/isphysicalmath/README.md	2024-12-30 21:18:29 UTC (rev 73238)
+++ trunk/Master/texmf-dist/doc/latex/isphysicalmath/README.md	2024-12-30 21:18:39 UTC (rev 73239)
@@ -1,7 +1,7 @@
 ---
 isphysicalmath package
 
-Author: Mario Fantini, <marfant7 at gmail.com>
+Author: Mario Fantini, <ing.mariofantini at gmail.com>
 
 License: LaTeX Project Public License lppl
 
@@ -11,22 +11,24 @@
 
 # Overview
 
-LaTeX is a powerful language, but to take advantage of it, to respect its quality
-and to observe the discipline of matters that it interacts with: it requires some devices.
+LaTeX is a powerful language, but to take advantage of it, to respect its quality \
+and to observe the discipline of matters that it interacts with: it requires some \
+devices.
 
-If you are interested in the form of math and physics, here comes `isphysicalmath` inside LaTeX;
-as far as international scientific notation and formatting of formulas, quantities,
-numerical values, factors, dimensions, measurement units.
+If you are interested in the form of math and physics, here comes `isphysicalmath` \
+inside LaTeX; as far as international scientific notation and formatting of formulas, \
+quantities, numerical values, factors, dimensions, measurement units.
 
-So, isphysicalmath` package helps user to write mathematical and physical contents, 
+So, isphysicalmath` package helps user to write mathematical and physical contents, \
 according to the scientific notation (international mainly), in an elegant way.
 
 
 # Dependencies
 
-`isphysicalmath` has xstring package dependency.
+`isphysicalmath` has xstring package dependency, but you don’t need to specify \
+it in your document preamble.
 
-Internally, it uses standard commands like: \textnormal, \hspace{}, \,; however,
+Internally, it uses standard commands like: \textnormal, \hspace{}, \,; however, \
 it performs its activity in complex math environment too.
 
 
@@ -52,10 +54,24 @@
 
         - option 'dc'
 
-        - option 'comma'
-
         - command 'comma'
 
+        - Rendering of a number as it multiplied by number ten raised to positive \
+          exponents of power
+
+            - By first digit as leading digit, without truncated digits on the right of it
+
+            - By first digit as leading digit, with truncated digits on the right of it
+
+        - Rendering of a number as it multiplied by number ten raised to negative \
+          exponents of power
+
+            - By first digit as leading digit, without truncated digits on the right of it
+            
+            - By first digit as leading digit, with truncated digits on the right of it
+
+        - option 'flushpostdot'
+
 - isphysicalmath url
  
 - Copyright
@@ -65,9 +81,8 @@
 
 # Credits
 
-Thanks to all  TeX/LaTeX contributors, in  particular to Scott Pakin
-for his packaging tutorial, and to CTAN team  for its tutoring, tools
-and services.
+Thanks to all  TeX/LaTeX contributors, in  particular to Scott Pakin for his \
+packaging tutorial, and to CTAN team  for its tutoring, tools and services.
 
 
 # URL
@@ -76,29 +91,26 @@
 
 https://ctan.org/pkg/isphysicalmath
 
-https://github.com/MartDiVenus/LaTeX/tree/isphysicalmath
 
-
 # License 
 
-Copyright (C) 2024 by Mario Fantini <marfant7 at gmail.com>
+Copyright (C) 2024 by Mario Fantini <ing.mariofantini at 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:
+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:
  
     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.
+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.
+This work consists of the files isphysicalmath.dtx and isphysicalmath.ins and the \
+derived file isphysicalmath.sty.
 
 
 # Change History
@@ -110,5 +122,30 @@
 
 - v1.1.0
 
-2024.01.03 improvements have been brought, see isphysicalmath-doc.pdf.
+2024.01.03 Improvements have been brought, see isphysicalmath-doc.pdf.
 
+
+- v2.0.0
+
+2024.12.24 Following corrections, improvements and new features have been brought: 
+
+- I have corrected some distraction mistakes. However, perfect operation of 
+`isphysicalmath`\ 
+ was guarenteed before these corrections too.
+
+- I have removed `comma option`.
+
+- I have changed the order of `options` in the documentation index.
+
+- I have added the following new features:
+
+    - `\ispmdexpp` command;
+
+    - `\ispmdexppt` command;
+
+    - `\ispmdexpm` command;
+
+    - `flushpostdot` option;
+
+- I have changed my e-mail contact.
+

Modified: trunk/Master/texmf-dist/doc/latex/isphysicalmath/isphysicalmath-doc.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/source/latex/isphysicalmath/isphysicalmath.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/isphysicalmath/isphysicalmath.dtx	2024-12-30 21:18:29 UTC (rev 73238)
+++ trunk/Master/texmf-dist/source/latex/isphysicalmath/isphysicalmath.dtx	2024-12-30 21:18:39 UTC (rev 73239)
@@ -1,6 +1,6 @@
 % \iffalse meta-comment
 %
-% Copyright (C) 2023 by Mario Fantini <marfant7 at gmail.com>
+% Copyright (C) 2024 by Mario Fantini <ing.mariofantini at gmail.com>
 % ---------------------------------------------------------
 % 
 % This work may be distributed and/or modified under the 
@@ -29,7 +29,7 @@
 %<package>\NeedsTeXFormat{LaTeX2e}[2005/12/01]
 %<package>\ProvidesPackage{isphysicalmath}
 %<*package>
-[2024/01/03 v1.1.0 .dtx isphysicalmath file]
+[2024/12/27 v2.0.0 .dtx isphysicalmath file]
 %</package>
 %<package>\RequirePackage{xstring}
 %<package>%
@@ -40,9 +40,10 @@
 %<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>\ExecuteOptions{dc}
+%<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]%
@@ -102,21 +103,205 @@
 %<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}}
+%<package>
+%<package>
+%<package>%% Delete digits after dot
+%<package>\DeclareOption{flushpostdot}{
+%<package>% e.g. \ispmflushpd 1.2 = 1
+%<package>\def\ispmflushpd#1.#2{{#1}}
 %<package>}
-%<package>\ExecuteOptions{dc}
-%<package>\ExecuteOptions{comma}
-%<package>\ProcessOptions\relax
+%<package>\ExecuteOptions{flushpostdot}
+%<package>
+%<package>
+%<package>%% Potenze del numero dieci
+%<package>\newcommand{\ispmpl}{(}
+%<package>\newcommand{\ispmpr}{)}
+%<package>\newcommand{\ispmten}{10}
+%<package>\newcommand{\ispmtenf}{\ispmpl\ispmten\ispmpr}
+%<package>
+%<package>%% Esponenti positivi con la prima cifra "leading": numeri interi
+%<package>% commentato perché limitante, quello per i numeri reali è invece completo (universale)
+%<package>%\newcommand{\ispmdexpp}[1]{%
+%<package>%\StrLen{#1}[\temp]%
+%<package>%\ifnum\temp=2%
+%<package>%\StrChar{#1}{1}[\unoq]%
+%<package>%\StrChar{#1}{2}[\dueq]%
+%<package>%\ispmpl{\unoq}.{\dueq}\ispmpr\ispmtenf%
+%<package>%\fi%
+%<package>%\ifnum\temp=3%
+%<package>%\StrChar{#1}{1}[\unoq]%
+%<package>%\StrChar{#1}{2}[\dueq]%
+%<package>%\StrChar{#1}{3}[\treq]%
+%<package>%\ispmpl{\unoq}.{\dueq}{\treq}\ispmpr\ispmtenf$^2$%
+%<package>%\fi%
+%<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>%\ispmpl{\unoq}.{\dueq}{\treq}{\quattroq}\ispmpr\ispmtenf$^3$%
+%<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>%\ispmpl{\unoq}.{\dueq}{\treq}{\quattroq}{\cinqueq}\ispmpr\ispmtenf$^4$%
+%<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>%\ispmpl{\unoq}.{\dueq}{\treq}{\quattroq}{\cinqueq}{\seiq}\ispmpr\ispmtenf$^5$%
+%<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>%\ispmpl{\unoq}.{\dueq}{\treq}{\quattroq}{\cinqueq}{\seiq}{\setteq}\ispmpr\ispmtenf$^6$%
+%<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>%\ispmpl{\unoq}.{\dueq}{\treq}{\quattroq}{\cinqueq}{\seiq}{\setteq}{\ottoq}\ispmpr\ispmtenf$^7$%
+%<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>%\ispmpl{\unoq}.{\dueq}{\treq}{\quattroq}{\cinqueq}{\seiq}{\setteq}{\ottoq}{\noveq}\ispmpr\ispmtenf$^8$%
+%<package>%\fi%
+%<package>%}
 %<package>%
-%<package>% command \ispmcomma: scientific international notation for thousands and their multiples.
-%<package>\newcommand{\ispmcomma}[1]{%
+%<package>%% Esponenti positivi Reali con la prima cifra "leading"
+%<package>\newcommand{\ispmdexpp}[1]{%
+%<package>%
+%<package>%% Two digits, two arguments
 %<package>\StrLen{#1}[\temp]%
+%<package>\ifnum\temp=2%
+%<package>\StrChar{#1}{1}[\unoq]%
+%<package>\StrChar{#1}{2}[\dueq]%
+%<package>\ispmpl{\unoq}.{\dueq}\ispmpr\ispmtenf%
+%<package>\fi%
+%<package>%
+%<package>% Three arguments
+%<package>\ifnum\temp=3%
+%<package>\StrChar{#1}{1}[\unoq]%
+%<package>\StrChar{#1}{2}[\dueq]%
+%<package>\StrChar{#1}{3}[\treq]%
+%<package>% if A.1
+%<package>\ifx\dueq\undefined
+%<package>indefinito
+%<package>% else A.1
+%<package>\else
+%<package>% Two digits, three arguments \\
+%<package>% if A.1.1
+%<package>\if\dueq.
+%<package>\unoq\dueq\treq%
+%<package>% else A.1.1
+%<package>\else 
+%<package>% Three digits, three arguments \\
+%<package>\ispmpl{\unoq}.{\dueq}{\treq}\ispmpr\ispmtenf$^2$%
+%<package>% fi A.1.1
+%<package>\fi
+%<package>% fi A.1
+%<package>\fi
+%<package>% fi A
+%<package>\fi%
+%<package>%
+%<package>%
+%<package>% if A
 %<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>% if A.1
+%<package>\ifx\dueq\undefined
+%<package>indefinito
+%<package>% else A.1
+%<package>\else
+%<package>% if A.1.1
+%<package>\if\dueq.
+%<package>\unoq\dueq\treq\quattroq%
+%<package>% else A.1.1
+%<package>\else
+%<package>% if A.1.1.1
+%<package>\ifx\treq\undefined
+%<package>indefinito
+%<package>% else A.1.1.1
+%<package>\else
+%<package>% if A.1.1.1.1
+%<package>\if\treq.
+%<package>\ispmpl{\unoq}.{\dueq}{\quattroq}\ispmpr\ispmtenf%
+%<package>% else A.1.1.1.1
+%<package>\else
+%<package>\ispmpl{\unoq}.{\dueq}{\treq}{\quattroq}\ispmpr\ispmtenf$^3$%
+%<package>% fi A.1.1.1.1
+%<package>\fi
+%<package>% fi A.1.1.1
+%<package>\fi
+%<package>% fi A.1.1
+%<package>\fi
+%<package>% fi A.1
+%<package>\fi
+%<package>% fi A
 %<package>\fi%
+%<package>%
+%<package>% if A
 %<package>\ifnum\temp=5%
 %<package>\StrChar{#1}{1}[\unoq]%
 %<package>\StrChar{#1}{2}[\dueq]%
@@ -123,8 +308,522 @@
 %<package>\StrChar{#1}{3}[\treq]%
 %<package>\StrChar{#1}{4}[\quattroq]%
 %<package>\StrChar{#1}{5}[\cinqueq]%
-%<package>\unoq\dueq,\treq\quattroq\cinqueq%
+%<package>% if A.1
+%<package>\ifx\dueq\undefined
+%<package>indefinito
+%<package>% else A.1
+%<package>\else
+%<package>% if A.1.1
+%<package>\if\dueq.
+%<package>\unoq\dueq\treq\quattroq\cinqueq%
+%<package>% else A.1.1
+%<package>\else
+%<package>% if A.1.1.1
+%<package>\ifx\treq\undefined
+%<package>indefinito
+%<package>% else A.1.1.1
+%<package>\else
+%<package>% if A.1.1.1.1
+%<package>\if\treq.
+%<package>% 12.3 -> 1.23(10)
+%<package>\ispmpl{\unoq}.{\dueq}{\quattroq}\ispmpr\ispmtenf%
+%<package>% else A.1.1.1.1
+%<package>\else
+%<package>% if A.1.1.1.1.1
+%<package>\ifx\quattroq\undefined
+%<package>indefinito
+%<package>% else A.1.1.1.1.1
+%<package>\else
+%<package>% if A.1.1.1.1.1.1
+%<package>\if\quattroq.
+%<package>\ispmpl{\unoq}.{\dueq}{\treq}{\cinqueq}\ispmpr\ispmtenf$^2$%
+%<package>% else A.1.1.1.1.1.1
+%<package>\else
+%<package>\ispmpl{\unoq}.{\dueq}{\treq}{\quattroq}{\cinqueq}\ispmpr\ispmtenf$^4$%
+%<package>% fi A.1.1.1.1.1.1
+%<package>\fi
+%<package>% fi A.1.1.1.1.1
+%<package>\fi
+%<package>% fi A.1.1.1.1
+%<package>\fi
+%<package>% fi A.1.1.1
+%<package>\fi
+%<package>% fi A.1.1
+%<package>\fi
+%<package>% fi A.1
+%<package>\fi
+%<package>% fi A
+%<package>\fi
+%<package>%
+%<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>% if A.1
+%<package>\ifx\dueq\undefined
+%<package>indefinito
+%<package>% else A.1
+%<package>\else
+%<package>% if A.1.1
+%<package>\if\dueq.
+%<package>\unoq\dueq\treq\quattroq\cinqueq\seiq%
+%<package>% else A.1.1
+%<package>\else
+%<package>% if A.1.1.1
+%<package>\ifx\treq\undefined
+%<package>indefinito
+%<package>% else A.1.1.1
+%<package>\else
+%<package>% if A.1.1.1.1
+%<package>\if\treq.
+%<package>% 12.3 -> 1.23(10)
+%<package>\ispmpl{\unoq}.{\dueq}{\quattroq}\ispmpr\ispmtenf%
+%<package>% else A.1.1.1.1
+%<package>\else
+%<package>% if A.1.1.1.1.1
+%<package>\ifx\quattroq\undefined
+%<package>indefinito
+%<package>% else A.1.1.1.1.1
+%<package>\else
+%<package>% if A.1.1.1.1.1.1
+%<package>\if\quattroq.
+%<package>%123.4 -> 1.234(10)^2
+%<package>\ispmpl{\unoq}.{\dueq}{\treq}{\cinqueq}\ispmpr\ispmtenf$^2$%
+%<package>% else A.1.1.1.1.1.1
+%<package>\else
+%<package>% if A.1.1.1.1.1.1.1
+%<package>\ifx\cinqueq\undefined
+%<package>indefinito
+%<package>% else A.1.1.1.1.1.1.1
+%<package>\else
+%<package>% if A.1.1.1.1.1.1.1.1
+%<package>\if\cinqueq.
+%<package>%1234.5 -> 1.2345(10)^3
+%<package>\ispmpl{\unoq}.{\dueq}{\treq}{\quattroq}{\seiq}\ispmpr\ispmtenf$^3$%
+%<package>% else A.1.1.1.1.1.1.1.1
+%<package>\else
+%<package>\ispmpl{\unoq}.{\dueq}{\treq}{\quattroq}{\cinqueq}{\seiq}\ispmpr\ispmtenf$^5$%
+%<package>% fi A.1.1.1.1.1.1.1.1
+%<package>\fi
+%<package>% fi A.1.1.1.1.1.1.1
+%<package>\fi
+%<package>% fi A.1.1.1.1.1.1
+%<package>\fi
+%<package>% fi A.1.1.1.1.1
+%<package>\fi
+%<package>% fi A.1.1.1.1
+%<package>\fi
+%<package>% fi A.1.1.1
+%<package>\fi
+%<package>% fi A.1.1
+%<package>\fi
+%<package>% fi A.1
+%<package>\fi
+%<package>% fi A
 %<package>\fi%
+%<package>%
+%<package>%
+%<package>% if A
+%<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>% if A.1
+%<package>\ifx\dueq\undefined
+%<package>indefinito
+%<package>% else A.1
+%<package>\else
+%<package>% if A.1.1
+%<package>\if\dueq.
+%<package>\unoq\dueq\treq\quattroq\cinqueq\seiq\setteq%
+%<package>% else A.1.1
+%<package>\else
+%<package>% if A.1.1.1
+%<package>\ifx\treq\undefined
+%<package>indefinito
+%<package>% else A.1.1.1
+%<package>\else
+%<package>% if A.1.1.1.1
+%<package>\if\treq.
+%<package>% 12.3 -> 1.23(10)
+%<package>\ispmpl{\unoq}.{\dueq}{\quattroq}\ispmpr\ispmtenf%
+%<package>% else A.1.1.1.1
+%<package>\else
+%<package>% if A.1.1.1.1.1
+%<package>\ifx\quattroq\undefined
+%<package>indefinito
+%<package>% else A.1.1.1.1.1
+%<package>\else
+%<package>% if A.1.1.1.1.1.1
+%<package>\if\quattroq.
+%<package>%123.4 -> 1.234(10)^2
+%<package>\ispmpl{\unoq}.{\dueq}{\treq}{\cinqueq}\ispmpr\ispmtenf$^2$%
+%<package>% else A.1.1.1.1.1.1
+%<package>\else
+%<package>% if A.1.1.1.1.1.1.1
+%<package>\ifx\cinqueq\undefined
+%<package>indefinito
+%<package>% else A.1.1.1.1.1.1.1
+%<package>\else
+%<package>% if A.1.1.1.1.1.1.1.1
+%<package>\if\cinqueq.
+%<package>%1234.5 -> 1.2345(10)^3
+%<package>\ispmpl{\unoq}.{\dueq}{\treq}{\quattroq}{\seiq}\ispmpr\ispmtenf$^3$%
+%<package>% else A.1.1.1.1.1.1.1.1
+%<package>\else
+%<package>% if A.1.1.1.1.1.1.1.1.1
+%<package>\if\seiq.
+%<package>%12345.6 -> 1.23456(10)^4
+%<package>\ispmpl{\unoq}.{\dueq}{\treq}{\quattroq}{\cinqueq}{\setteq}\ispmpr\ispmtenf$^4$%
+%<package>% else A.1.1.1.1.1.1.1.1.1
+%<package>\else
+%<package>\ispmpl{\unoq}.{\dueq}{\treq}{\quattroq}{\cinqueq}{\seiq}{\setteq}\ispmpr\ispmtenf$^6$%
+%<package>% fi A.1.1.1.1.1.1.1.1.1
+%<package>\fi
+%<package>% fi A.1.1.1.1.1.1.1.1
+%<package>\fi
+%<package>% fi A.1.1.1.1.1.1.1
+%<package>\fi
+%<package>% fi A.1.1.1.1.1.1
+%<package>\fi
+%<package>% fi A.1.1.1.1.1
+%<package>\fi
+%<package>% fi A.1.1.1.1
+%<package>\fi
+%<package>% fi A.1.1.1
+%<package>\fi
+%<package>% fi A.1.1
+%<package>\fi
+%<package>% fi A.1
+%<package>\fi
+%<package>% fi A
+%<package>\fi%
+%<package>%
+%<package>%
+%<package>% if A
+%<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>% if A.1
+%<package>\ifx\dueq\undefined
+%<package>indefinito
+%<package>% else A.1
+%<package>\else
+%<package>% if A.1.1
+%<package>\if\dueq.
+%<package>\unoq\dueq\treq\quattroq\cinqueq\seiq\setteq\ottoq%
+%<package>% else A.1.1
+%<package>\else
+%<package>% if A.1.1.1
+%<package>\ifx\treq\undefined
+%<package>indefinito
+%<package>% else A.1.1.1
+%<package>\else
+%<package>% if A.1.1.1.1
+%<package>\if\treq.
+%<package>% 12.3 -> 1.23(10)
+%<package>\ispmpl{\unoq}.{\dueq}{\quattroq}\ispmpr\ispmtenf%
+%<package>% else A.1.1.1.1
+%<package>\else
+%<package>% if A.1.1.1.1.1
+%<package>\ifx\quattroq\undefined
+%<package>indefinito
+%<package>% else A.1.1.1.1.1
+%<package>\else
+%<package>% if A.1.1.1.1.1.1
+%<package>\if\quattroq.
+%<package>\ispmpl{\unoq}.{\dueq}{\treq}{\cinqueq}\ispmpr\ispmtenf$^2$%
+%<package>% else A.1.1.1.1.1.1
+%<package>\else
+%<package>% if A.1.1.1.1.1.1.1
+%<package>\ifx\cinqueq\undefined
+%<package>indefinito
+%<package>% else A.1.1.1.1.1.1.1
+%<package>\else
+%<package>% if A.1.1.1.1.1.1.1.1
+%<package>\if\cinqueq.
+%<package>\ispmpl{\unoq}.{\dueq}{\treq}{\quattroq}{\seiq}\ispmpr\ispmtenf$^3$%
+%<package>% else A.1.1.1.1.1.1.1.1
+%<package>\else
+%<package>% if A.1.1.1.1.1.1.1.1.1
+%<package>\if\seiq.
+%<package>%12345.6 -> 1.23456(10)^4
+%<package>\ispmpl{\unoq}.{\dueq}{\treq}{\quattroq}{\cinqueq}{\setteq}\ispmpr\ispmtenf$^4$%
+%<package>% else A.1.1.1.1.1.1.1.1.1
+%<package>\else
+%<package>% if A.1.1.1.1.1.1.1.1.1.1
+%<package>\if\setteq.
+%<package>\ispmpl{\unoq}.{\dueq}{\treq}{\quattroq}{\cinqueq}{\seiq}{\ottoq}\ispmpr\ispmtenf$^5$%
+%<package>% else A.1.1.1.1.1.1.1.1.1.1 
+%<package>\else
+%<package>\ispmpl{\unoq}.{\dueq}{\treq}{\quattroq}{\cinqueq}{\seiq}{\setteq}{\ottoq}\ispmpr\ispmtenf$^7$%
+%<package>% fi A.1.1.1.1.1.1.1.1.1.1
+%<package>\fi
+%<package>% fi A.1.1.1.1.1.1.1.1.1
+%<package>\fi
+%<package>% fi A.1.1.1.1.1.1.1.1
+%<package>\fi
+%<package>% fi A.1.1.1.1.1.1.1
+%<package>\fi
+%<package>% fi A.1.1.1.1.1.1
+%<package>\fi
+%<package>% fi A.1.1.1.1.1
+%<package>\fi
+%<package>% fi A.1.1.1.1
+%<package>\fi
+%<package>% fi A.1.1.1
+%<package>\fi
+%<package>% fi A.1.1
+%<package>\fi
+%<package>% fi A.1
+%<package>\fi
+%<package>% fi A
+%<package>\fi%
+%<package>%
+%<package>%
+%<package>% if A
+%<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>% if A.1
+%<package>\ifx\dueq\undefined
+%<package>indefinito
+%<package>% else A.1
+%<package>\else
+%<package>% if A.1.1
+%<package>\if\dueq.
+%<package>\unoq\dueq\treq\quattroq\cinqueq\seiq\setteq\ottoq\noveq%
+%<package>% else A.1.1
+%<package>\else
+%<package>% if A.1.1.1
+%<package>\ifx\treq\undefined
+%<package>indefinito
+%<package>% else A.1.1.1
+%<package>\else
+%<package>% if A.1.1.1.1
+%<package>\if\treq.
+%<package>% 12.3 -> 1.23(10)
+%<package>\ispmpl{\unoq}.{\dueq}{\quattroq}\ispmpr\ispmtenf%
+%<package>% else A.1.1.1.1
+%<package>\else
+%<package>% if A.1.1.1.1.1
+%<package>\ifx\quattroq\undefined
+%<package>indefinito
+%<package>% else A.1.1.1.1.1
+%<package>\else
+%<package>% if A.1.1.1.1.1.1
+%<package>\if\quattroq.
+%<package>%123.4 -> 1.234(10)^2
+%<package>\ispmpl{\unoq}.{\dueq}{\treq}{\cinqueq}\ispmpr\ispmtenf$^2$%
+%<package>% else A.1.1.1.1.1.1
+%<package>\else
+%<package>% if A.1.1.1.1.1.1.1
+%<package>\ifx\cinqueq\undefined
+%<package>indefinito
+%<package>% else A.1.1.1.1.1.1.1
+%<package>\else
+%<package>% if A.1.1.1.1.1.1.1.1
+%<package>\if\cinqueq.
+%<package>%1234.5 -> 1.2345(10)^3
+%<package>\ispmpl{\unoq}.{\dueq}{\treq}{\quattroq}{\seiq}\ispmpr\ispmtenf$^3$%
+%<package>% else A.1.1.1.1.1.1.1.1
+%<package>\else
+%<package>% if A.1.1.1.1.1.1.1.1.1
+%<package>\if\seiq.
+%<package>%12345.6 -> 1.23456(10)^4
+%<package>\ispmpl{\unoq}.{\dueq}{\treq}{\quattroq}{\cinqueq}{\setteq}\ispmpr\ispmtenf$^4$%
+%<package>% else A.1.1.1.1.1.1.1.1.1
+%<package>\else
+%<package>% if A.1.1.1.1.1.1.1.1.1.1
+%<package>\if\setteq.
+%<package>%123456.7 -> 1.234567(10)^5
+%<package>\ispmpl{\unoq}.{\dueq}{\treq}{\quattroq}{\cinqueq}{\seiq}{\ottoq}\ispmpr\ispmtenf$^5$%
+%<package>% else A.1.1.1.1.1.1.1.1.1.1 
+%<package>\else
+%<package>% if A.1.1.1.1.1.1.1.1.1.1.1
+%<package>\if\ottoq.
+%<package>%1234567.8 -> 1.2345678(10)^6
+%<package>\ispmpl{\unoq}.{\dueq}{\treq}{\quattroq}{\cinqueq}{\seiq}{\setteq}{\noveq}\ispmpr\ispmtenf$^6$%
+%<package>% else A.1.1.1.1.1.1.1.1.1.1.1
+%<package>\else
+%<package>\ispmpl{\unoq}.{\dueq}{\treq}{\quattroq}{\cinqueq}{\seiq}{\setteq}{\ottoq}{\noveq}\ispmpr\ispmtenf$^8$%
+%<package>% fi A.1.1.1.1.1.1.1.1.1.1.1
+%<package>\fi
+%<package>% fi A.1.1.1.1.1.1.1.1.1.1
+%<package>\fi
+%<package>% fi A.1.1.1.1.1.1.1.1.1
+%<package>\fi
+%<package>% fi A.1.1.1.1.1.1.1.1
+%<package>\fi
+%<package>% fi A.1.1.1.1.1.1.1
+%<package>\fi
+%<package>% fi A.1.1.1.1.1.1
+%<package>\fi
+%<package>% fi A.1.1.1.1.1
+%<package>\fi
+%<package>% fi A.1.1.1.1
+%<package>\fi
+%<package>% fi A.1.1.1
+%<package>\fi
+%<package>% fi A.1.1
+%<package>\fi
+%<package>% fi A.1
+%<package>\fi
+%<package>% fi A
+%<package>\fi%
+%<package>%
+%<package>}
+%<package>%
+%<package>%
+%<package>%
+%<package>%% Esponenti positivi Reali con la prima cifra "leading", quelle a dx invece troncate
+%<package>\newcommand{\ispmdexppt}[1]{%
+%<package>%
+%<package>%% Two digits, two arguments
+%<package>\StrLen{#1}[\temp]%
+%<package>\ifnum\temp=2%
+%<package>\StrChar{#1}{1}[\unoq]%
+%<package>\StrChar{#1}{2}[\dueq]%
+%<package>\ispmpl{\unoq}\ispmpr\ispmtenf%
+%<package>\fi%
+%<package>%
+%<package>% Three arguments
+%<package>\ifnum\temp=3%
+%<package>\StrChar{#1}{1}[\unoq]%
+%<package>\StrChar{#1}{2}[\dueq]%
+%<package>\StrChar{#1}{3}[\treq]%
+%<package>% if A.1
+%<package>\ifx\dueq\undefined
+%<package>indefinito
+%<package>% else A.1
+%<package>\else
+%<package>% Two digits, three arguments \\
+%<package>% if A.1.1
+%<package>\if\dueq.
+%<package>\unoq%
+%<package>% else A.1.1
+%<package>\else 
+%<package>% Three digits, three arguments \\
+%<package>\ispmpl{\unoq}\ispmpr\ispmtenf$^2$%
+%<package>% fi A.1.1
+%<package>\fi
+%<package>% fi A.1
+%<package>\fi
+%<package>% fi A
+%<package>\fi%
+%<package>%
+%<package>%
+%<package>% if A
+%<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>% if A.1
+%<package>\ifx\dueq\undefined
+%<package>indefinito
+%<package>% else A.1
+%<package>\else
+%<package>% if A.1.1
+%<package>\if\dueq.
+%<package>\unoq%
+%<package>% else A.1.1
+%<package>\else
+%<package>% if A.1.1.1
+%<package>\ifx\treq\undefined
+%<package>indefinito
+%<package>% else A.1.1.1
+%<package>\else
+%<package>% if A.1.1.1.1
+%<package>\if\treq.
+%<package>\ispmpl{\unoq}\ispmpr\ispmtenf%
+%<package>% else A.1.1.1.1
+%<package>\else
+%<package>\ispmpl{\unoq}\ispmpr\ispmtenf$^3$%
+%<package>% fi A.1.1.1.1
+%<package>\fi
+%<package>% fi A.1.1.1
+%<package>\fi
+%<package>% fi A.1.1
+%<package>\fi
+%<package>% fi A.1
+%<package>\fi
+%<package>% fi A
+%<package>\fi%
+%<package>%
+%<package>% if A
+%<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>% if A.1
+%<package>\ifx\dueq\undefined
+%<package>indefinito
+%<package>% else A.1
+%<package>\else
+%<package>% if A.1.1
+%<package>\if\dueq.
+%<package>\unoq%
+%<package>% else A.1.1
+%<package>\else
+%<package>% if A.1.1.1
+%<package>\ifx\treq\undefined
+%<package>indefinito
+%<package>% else A.1.1.1
+%<package>\else
+%<package>% if A.1.1.1.1
+%<package>\if\treq.
+%<package>\ispmpl{\unoq}\ispmpr\ispmtenf%
+%<package>% else A.1.1.1.1
+%<package>\else
+%<package>% if A.1.1.1.1.1
+%<package>\ifx\quattroq\undefined
+%<package>indefinito
+%<package>% else A.1.1.1.1.1
+%<package>\else
+%<package>% if A.1.1.1.1.1.1
+%<package>\if\quattroq.
+%<package>\ispmpl{\unoq}\ispmpr\ispmtenf$^2$%
+%<package>% else A.1.1.1.1.1.1
+%<package>\else
+%<package>\ispmpl{\unoq}\ispmpr\ispmtenf$^4$%
+%<package>% fi A.1.1.1.1.1.1
+%<package>\fi
+%<package>% fi A.1.1.1.1.1
+%<package>\fi
+%<package>% fi A.1.1.1.1
+%<package>\fi
+%<package>% fi A.1.1.1
+%<package>\fi
+%<package>% fi A.1.1
+%<package>\fi
+%<package>% fi A.1
+%<package>\fi
+%<package>% fi A
+%<package>\fi
+%<package>%
 %<package>\ifnum\temp=6%
 %<package>\StrChar{#1}{1}[\unoq]%
 %<package>\StrChar{#1}{2}[\dueq]%
@@ -132,8 +831,68 @@
 %<package>\StrChar{#1}{4}[\quattroq]%
 %<package>\StrChar{#1}{5}[\cinqueq]%
 %<package>\StrChar{#1}{6}[\seiq]%
-%<package>\unoq\dueq\treq,\quattroq\cinqueq\seiq%
+%<package>% if A.1
+%<package>\ifx\dueq\undefined
+%<package>indefinito
+%<package>% else A.1
+%<package>\else
+%<package>% if A.1.1
+%<package>\if\dueq.
+%<package>\unoq%
+%<package>% else A.1.1
+%<package>\else
+%<package>% if A.1.1.1
+%<package>\ifx\treq\undefined
+%<package>indefinito
+%<package>% else A.1.1.1
+%<package>\else
+%<package>% if A.1.1.1.1
+%<package>\if\treq.
+%<package>\ispmpl{\unoq}\ispmpr\ispmtenf%
+%<package>% else A.1.1.1.1
+%<package>\else
+%<package>% if A.1.1.1.1.1
+%<package>\ifx\quattroq\undefined
+%<package>indefinito
+%<package>% else A.1.1.1.1.1
+%<package>\else
+%<package>% if A.1.1.1.1.1.1
+%<package>\if\quattroq.
+%<package>\ispmpl{\unoq}\ispmpr\ispmtenf$^2$%
+%<package>% else A.1.1.1.1.1.1
+%<package>\else
+%<package>% if A.1.1.1.1.1.1.1
+%<package>\ifx\cinqueq\undefined
+%<package>indefinito
+%<package>% else A.1.1.1.1.1.1.1
+%<package>\else
+%<package>% if A.1.1.1.1.1.1.1.1
+%<package>\if\cinqueq.
+%<package>\ispmpl{\unoq}\ispmpr\ispmtenf$^3$%
+%<package>% else A.1.1.1.1.1.1.1.1
+%<package>\else
+%<package>\ispmpl{\unoq}\ispmpr\ispmtenf$^5$%
+%<package>% fi A.1.1.1.1.1.1.1.1
+%<package>\fi
+%<package>% fi A.1.1.1.1.1.1.1
+%<package>\fi
+%<package>% fi A.1.1.1.1.1.1
+%<package>\fi
+%<package>% fi A.1.1.1.1.1
+%<package>\fi
+%<package>% fi A.1.1.1.1
+%<package>\fi
+%<package>% fi A.1.1.1
+%<package>\fi
+%<package>% fi A.1.1
+%<package>\fi
+%<package>% fi A.1
+%<package>\fi
+%<package>% fi A
 %<package>\fi%
+%<package>%
+%<package>%
+%<package>% if A
 %<package>\ifnum\temp=7%
 %<package>\StrChar{#1}{1}[\unoq]%
 %<package>\StrChar{#1}{2}[\dueq]%
@@ -142,8 +901,75 @@
 %<package>\StrChar{#1}{5}[\cinqueq]%
 %<package>\StrChar{#1}{6}[\seiq]%
 %<package>\StrChar{#1}{7}[\setteq]%
-%<package>\unoq,\dueq\treq\quattroq,\cinqueq\seiq\setteq%
+%<package>% if A.1
+%<package>\ifx\dueq\undefined
+%<package>indefinito
+%<package>% else A.1
+%<package>\else
+%<package>% if A.1.1
+%<package>\if\dueq.
+%<package>\unoq%
+%<package>% else A.1.1
+%<package>\else
+%<package>% if A.1.1.1
+%<package>\ifx\treq\undefined
+%<package>indefinito
+%<package>% else A.1.1.1
+%<package>\else
+%<package>% if A.1.1.1.1
+%<package>\if\treq.
+%<package>\ispmpl{\unoq}\ispmpr\ispmtenf%
+%<package>% else A.1.1.1.1
+%<package>\else
+%<package>% if A.1.1.1.1.1
+%<package>\ifx\quattroq\undefined
+%<package>indefinito
+%<package>% else A.1.1.1.1.1
+%<package>\else
+%<package>% if A.1.1.1.1.1.1
+%<package>\if\quattroq.
+%<package>\ispmpl{\unoq}\ispmpr\ispmtenf$^2$%
+%<package>% else A.1.1.1.1.1.1
+%<package>\else
+%<package>% if A.1.1.1.1.1.1.1
+%<package>\ifx\cinqueq\undefined
+%<package>indefinito
+%<package>% else A.1.1.1.1.1.1.1
+%<package>\else
+%<package>% if A.1.1.1.1.1.1.1.1
+%<package>\if\cinqueq.
+%<package>\ispmpl{\unoq}\ispmpr\ispmtenf$^3$%
+%<package>% else A.1.1.1.1.1.1.1.1
+%<package>\else
+%<package>% if A.1.1.1.1.1.1.1.1.1
+%<package>\if\seiq.
+%<package>\ispmpl{\unoq}\ispmpr\ispmtenf$^4$%
+%<package>% else A.1.1.1.1.1.1.1.1.1
+%<package>\else
+%<package>\ispmpl{\unoq}\ispmpr\ispmtenf$^6$%
+%<package>% fi A.1.1.1.1.1.1.1.1.1
+%<package>\fi
+%<package>% fi A.1.1.1.1.1.1.1.1
+%<package>\fi
+%<package>% fi A.1.1.1.1.1.1.1
+%<package>\fi
+%<package>% fi A.1.1.1.1.1.1
+%<package>\fi
+%<package>% fi A.1.1.1.1.1
+%<package>\fi
+%<package>% fi A.1.1.1.1
+%<package>\fi
+%<package>% fi A.1.1.1
+%<package>\fi
+%<package>% fi A.1.1
+%<package>\fi
+%<package>% fi A.1
+%<package>\fi
+%<package>% fi A
 %<package>\fi%
+%<package>%
+%<package>%
+%<package>% if A
 %<package>\ifnum\temp=8%
 %<package>\StrChar{#1}{1}[\unoq]%
 %<package>\StrChar{#1}{2}[\dueq]%
@@ -153,8 +979,82 @@
 %<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>% if A.1
+%<package>\ifx\dueq\undefined
+%<package>indefinito
+%<package>% else A.1
+%<package>\else
+%<package>% if A.1.1
+%<package>\if\dueq.
+%<package>\unoq%
+%<package>% else A.1.1
+%<package>\else
+%<package>% if A.1.1.1
+%<package>\ifx\treq\undefined
+%<package>indefinito
+%<package>% else A.1.1.1
+%<package>\else
+%<package>% if A.1.1.1.1
+%<package>\if\treq.
+%<package>\ispmpl{\unoq}\ispmpr\ispmtenf%
+%<package>% else A.1.1.1.1
+%<package>\else
+%<package>% if A.1.1.1.1.1
+%<package>\ifx\quattroq\undefined
+%<package>indefinito
+%<package>% else A.1.1.1.1.1
+%<package>\else
+%<package>% if A.1.1.1.1.1.1
+%<package>\if\quattroq.
+%<package>\ispmpl{\unoq}\ispmpr\ispmtenf$^2$%
+%<package>% else A.1.1.1.1.1.1
+%<package>\else
+%<package>% if A.1.1.1.1.1.1.1
+%<package>\ifx\cinqueq\undefined
+%<package>indefinito
+%<package>% else A.1.1.1.1.1.1.1
+%<package>\else
+%<package>% if A.1.1.1.1.1.1.1.1
+%<package>\if\cinqueq.
+%<package>\ispmpl{\unoq}\ispmpr\ispmtenf$^3$%
+%<package>% else A.1.1.1.1.1.1.1.1
+%<package>\else
+%<package>% if A.1.1.1.1.1.1.1.1.1
+%<package>\if\seiq.
+%<package>\ispmpl{\unoq}\ispmpr\ispmtenf$^4$%
+%<package>% else A.1.1.1.1.1.1.1.1.1
+%<package>\else
+%<package>% if A.1.1.1.1.1.1.1.1.1.1
+%<package>\if\setteq.
+%<package>\ispmpl{\unoq}\ispmpr\ispmtenf$^5$%
+%<package>% else A.1.1.1.1.1.1.1.1.1.1 
+%<package>\else
+%<package>\ispmpl{\unoq}\ispmpr\ispmtenf$^7$%
+%<package>% fi A.1.1.1.1.1.1.1.1.1.1
+%<package>\fi
+%<package>% fi A.1.1.1.1.1.1.1.1.1
+%<package>\fi
+%<package>% fi A.1.1.1.1.1.1.1.1
+%<package>\fi
+%<package>% fi A.1.1.1.1.1.1.1
+%<package>\fi
+%<package>% fi A.1.1.1.1.1.1
+%<package>\fi
+%<package>% fi A.1.1.1.1.1
+%<package>\fi
+%<package>% fi A.1.1.1.1
+%<package>\fi
+%<package>% fi A.1.1.1
+%<package>\fi
+%<package>% fi A.1.1
+%<package>\fi
+%<package>% fi A.1
+%<package>\fi
+%<package>% fi A
 %<package>\fi%
+%<package>%
+%<package>%
+%<package>% if A
 %<package>\ifnum\temp=9%
 %<package>\StrChar{#1}{1}[\unoq]%
 %<package>\StrChar{#1}{2}[\dueq]%
@@ -165,45 +1065,711 @@
 %<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>% if A.1
+%<package>\ifx\dueq\undefined
+%<package>indefinito
+%<package>% else A.1
+%<package>\else
+%<package>% if A.1.1
+%<package>\if\dueq.
+%<package>\unoq%
+%<package>% else A.1.1
+%<package>\else
+%<package>% if A.1.1.1
+%<package>\ifx\treq\undefined
+%<package>indefinito
+%<package>% else A.1.1.1
+%<package>\else
+%<package>% if A.1.1.1.1
+%<package>\if\treq.
+%<package>\ispmpl{\unoq}\ispmpr\ispmtenf%
+%<package>% else A.1.1.1.1
+%<package>\else
+%<package>% if A.1.1.1.1.1
+%<package>\ifx\quattroq\undefined
+%<package>indefinito
+%<package>% else A.1.1.1.1.1
+%<package>\else
+%<package>% if A.1.1.1.1.1.1
+%<package>\if\quattroq.
+%<package>\ispmpl{\unoq}\ispmpr\ispmtenf$^2$%
+%<package>% else A.1.1.1.1.1.1
+%<package>\else
+%<package>% if A.1.1.1.1.1.1.1
+%<package>\ifx\cinqueq\undefined
+%<package>indefinito
+%<package>% else A.1.1.1.1.1.1.1
+%<package>\else
+%<package>% if A.1.1.1.1.1.1.1.1
+%<package>\if\cinqueq.
+%<package>\ispmpl{\unoq}\ispmpr\ispmtenf$^3$%
+%<package>% else A.1.1.1.1.1.1.1.1
+%<package>\else
+%<package>% if A.1.1.1.1.1.1.1.1.1
+%<package>\if\seiq.
+%<package>\ispmpl{\unoq}\ispmpr\ispmtenf$^4$%
+%<package>% else A.1.1.1.1.1.1.1.1.1
+%<package>\else
+%<package>% if A.1.1.1.1.1.1.1.1.1.1
+%<package>\if\setteq.
+%<package>\ispmpl{\unoq}\ispmpr\ispmtenf$^5$%
+%<package>% else A.1.1.1.1.1.1.1.1.1.1 
+%<package>\else
+%<package>% if A.1.1.1.1.1.1.1.1.1.1.1
+%<package>\if\ottoq.
+%<package>\ispmpl{\unoq}\ispmpr\ispmtenf$^6$%
+%<package>% else A.1.1.1.1.1.1.1.1.1.1.1
+%<package>\else
+%<package>\ispmpl{\unoq}\ispmpr\ispmtenf$^8$%
+%<package>% fi A.1.1.1.1.1.1.1.1.1.1.1
+%<package>\fi
+%<package>% fi A.1.1.1.1.1.1.1.1.1.1
+%<package>\fi
+%<package>% fi A.1.1.1.1.1.1.1.1.1
+%<package>\fi
+%<package>% fi A.1.1.1.1.1.1.1.1
+%<package>\fi
+%<package>% fi A.1.1.1.1.1.1.1
+%<package>\fi
+%<package>% fi A.1.1.1.1.1.1
+%<package>\fi
+%<package>% fi A.1.1.1.1.1
+%<package>\fi
+%<package>% fi A.1.1.1.1
+%<package>\fi
+%<package>% fi A.1.1.1
+%<package>\fi
+%<package>% fi A.1.1
+%<package>\fi
+%<package>% fi A.1
+%<package>\fi
+%<package>% fi A
 %<package>\fi%
+%<package>%
 %<package>}
+%<package>
+%<package>%% Esponenti positivi con la prima cifra "leading", cifre troncate a dx
+%<package>% Commentato perché limitante, quello per i numeri reali invece è completo (universale).
+%<package>%\newcommand{\ispmdexppt}[1]{%
+%<package>%\StrLen{#1}[\temp]%
+%<package>%\ifnum\temp=2%
+%<package>%\StrChar{#1}{1}[\unoq]%
+%<package>%\StrChar{#1}{2}[\dueq]%
+%<package>%\ispmpl{\unoq}\ispmpr\ispmtenf%
+%<package>%\fi%
+%<package>%\ifnum\temp=3%
+%<package>%\StrChar{#1}{1}[\unoq]%
+%<package>%\StrChar{#1}{2}[\dueq]%
+%<package>%\StrChar{#1}{3}[\treq]%
+%<package>%\ispmpl{\unoq}\ispmpr\ispmtenf$^2$%
+%<package>%\fi%
+%<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>%\ispmpl{\unoq}\ispmpr\ispmtenf$^3$%
+%<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>%\ispmpl{\unoq}\ispmpr\ispmtenf$^4$%
+%<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>%\ispmpl{\unoq}\ispmpr\ispmtenf$^5$%
+%<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>%\ispmpl{\unoq}\ispmpr\ispmtenf$^6$%
+%<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>%\ispmpl{\unoq}\ispmpr\ispmtenf$^7$%
+%<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>%\ispmpl{\unoq}\ispmpr\ispmtenf$^8$%
+%<package>%\fi%
+%<package>%}
+%<package>
+%<package>%% Esponenti negativi di numeri razionali (che si risolvono in numeri non interi)
+%<package>% senza cifre troncate a dx del punto
+%<package>\newcommand{\ispmdexpm}[1]{%
+%<package>\StrLen{#1}[\temp]%
+%<package>%% Inizio con 3 perché il punto è considerato argomento,
+%<package>% quindi e.g. 0.1 ha tre argomenti.
+%<package>\ifnum\temp=3%
+%<package>\StrChar{#1}{1}[\unoq]%
+%<package>\StrChar{#1}{2}[\dueq]%
+%<package>\StrChar{#1}{3}[\treq]%
+%<package>\ispmpl{\treq}\ispmpr\ispmtenf$^{-1}$%
+%<package>\fi%
+%<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>\ifx\treq\undefined
+%<package>indefinito
+%<package>\else
+%<package>  \if\treq0
+%<package>\ispmpl{\quattroq}\ispmpr\ispmtenf$^{-2}$%
+%<package>    \else
+%<package>\ispmpl{\treq.\quattroq}\ispmpr\ispmtenf$^{-1}$%
+%<package>  \fi
+%<package>\fi
+%<package>\fi%
+%<package>% if A
+%<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>% if A.1
+%<package>\ifx\treq\undefined
+%<package>indefinito
+%<package>% else A.1
+%<package>\else
+%<package>% if A.1.1
+%<package>\if\treq0
+%<package>% if A.1.1.1
+%<package>\if\quattroq0
+%<package>\ispmpl{\cinqueq}\ispmpr\ispmtenf$^{-3}$%
+%<package>% else A.1.1.1
+%<package>\else
+%<package>\ispmpl{\quattroq.\cinqueq}\ispmpr\ispmtenf$^{-2}$%
+%<package>% fi A.1.1.1
+%<package>\fi
+%<package>% else A.1.1
+%<package>\else
+%<package>\ispmpl{\treq.\quattroq\cinqueq}\ispmpr\ispmtenf$^{-1}$%
+%<package>% fi A.1.1
+%<package>\fi
+%<package>% fi A.1
+%<package>\fi
+%<package>% fi A
+%<package>\fi
 %<package>%
+%<package>% 
+%<package>% if A
+%<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>% if A.1
+%<package>\ifx\treq\undefined
+%<package>indefinito
+%<package>% else A.1
+%<package>\else
+%<package>% if A.1.1
+%<package>\if\treq0
+%<package>% if A.1.1.1
+%<package>\if\quattroq0
+%<package>% if A.1.1.1.1
+%<package>\if\cinqueq0
+%<package>\ispmpl{\seiq}\ispmpr\ispmtenf$^{-4}$%
+%<package>% else A.1.1.1.1
+%<package>\else
+%<package>\ispmpl{\cinqueq.\seiq}\ispmpr\ispmtenf$^{-3}$%
+%<package>% fi A.1.1.1.1
+%<package>\fi
+%<package>% else A.1.1.1
+%<package>\else
+%<package>\ispmpl{\quattroq.\cinqueq\seiq}\ispmpr\ispmtenf$^{-2}$%
+%<package>% fi A.1.1.1
+%<package>\fi
+%<package>% else A.1.1
+%<package>\else
+%<package>\ispmpl{\treq.\quattroq\cinqueq\seiq}\ispmpr\ispmtenf$^{-1}$%
+%<package>% fi A.1.1
+%<package>\fi
+%<package>% fi A.1
+%<package>\fi
+%<package>% fi A
+%<package>\fi
 %<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}}
+%<package>%
+%<package>% if A
+%<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>% if A.1
+%<package>\ifx\treq\undefined
+%<package>indefinito
+%<package>% else A.1
+%<package>\else
+%<package>% if A.1.1
+%<package>\if\treq0
+%<package>% if A.1.1.1
+%<package>\if\quattroq0
+%<package>% if A.1.1.1.1
+%<package>\if\cinqueq0
+%<package>% if A.1.1.1.1.1
+%<package>\if\seiq0
+%<package>\ispmpl{\setteq}\ispmpr\ispmtenf$^{-5}$%
+%<package>% else A.1.1.1.1.1
+%<package>\else 
+%<package>\ispmpl{\seiq.\setteq}\ispmpr\ispmtenf$^{-4}$%
+%<package>% fi A.1.1.1.1.1
+%<package>\fi
+%<package>% else A.1.1.1.1
+%<package>\else
+%<package>\ispmpl{\cinqueq.\seiq\setteq}\ispmpr\ispmtenf$^{-3}$%
+%<package>% fi A.1.1.1.1
+%<package>\fi
+%<package>% else A.1.1.1
+%<package>\else
+%<package>\ispmpl{\quattroq.\cinqueq\seiq\setteq}\ispmpr\ispmtenf$^{-2}$%
+%<package>% fi A.1.1.1
+%<package>\fi
+%<package>% else A.1.1
+%<package>\else
+%<package>\ispmpl{\treq.\quattroq\cinqueq\seiq\setteq}\ispmpr\ispmtenf$^{-1}$%
+%<package>% fi A.1.1
+%<package>\fi
+%<package>% fi A.1
+%<package>\fi
+%<package>% fi A
+%<package>\fi
+%<package>%
+%<package>%
+%<package>% if A
+%<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>% if A.1
+%<package>\ifx\treq\undefined
+%<package>indefinito
+%<package>% else A.1
+%<package>\else
+%<package>% if A.1.1
+%<package>\if\treq0
+%<package>% if A.1.1.1
+%<package>\if\quattroq0
+%<package>% if A.1.1.1.1
+%<package>\if\cinqueq0
+%<package>% if A.1.1.1.1.1
+%<package>\if\seiq0
+%<package>% if A.1.1.1.1.1.1
+%<package>\if\setteq0
+%<package>\ispmpl{\ottoq}\ispmpr\ispmtenf$^{-6}$%
+%<package>% else A.1.1.1.1.1.1
+%<package>\else
+%<package>\ispmpl{\setteq.\ottoq}\ispmpr\ispmtenf$^{-5}$%
+%<package>% fi A.1.1.1.1.1.1
+%<package>\fi
+%<package>% else A.1.1.1.1.1
+%<package>\else 
+%<package>\ispmpl{\seiq.\setteq\ottoq}\ispmpr\ispmtenf$^{-4}$%
+%<package>% fi A.1.1.1.1.1
+%<package>\fi
+%<package>% else A.1.1.1.1
+%<package>\else
+%<package>\ispmpl{\cinqueq.\seiq\setteq\ottoq}\ispmpr\ispmtenf$^{-3}$%
+%<package>% fi A.1.1.1.1
+%<package>\fi
+%<package>% else A.1.1.1
+%<package>\else
+%<package>\ispmpl{\quattroq.\cinqueq\seiq\setteq\ottoq}\ispmpr\ispmtenf$^{-2}$%
+%<package>% fi A.1.1.1
+%<package>\fi
+%<package>% else A.1.1
+%<package>\else
+%<package>\ispmpl{\treq.\quattroq\cinqueq\seiq\setteq\ottoq}\ispmpr\ispmtenf$^{-1}$%
+%<package>% fi A.1.1
+%<package>\fi
+%<package>% fi A.1
+%<package>\fi
+%<package>% fi A
+%<package>\fi
+%<package>%
+%<package>%
+%<package>% if A
+%<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>% if A.1
+%<package>\ifx\treq\undefined
+%<package>indefinito
+%<package>% else A.1
+%<package>\else
+%<package>% if A.1.1
+%<package>\if\treq0
+%<package>% if A.1.1.1
+%<package>\if\quattroq0
+%<package>% if A.1.1.1.1
+%<package>\if\cinqueq0
+%<package>% if A.1.1.1.1.1
+%<package>\if\seiq0
+%<package>% if A.1.1.1.1.1.1
+%<package>\if\setteq0
+%<package>% if A.1.1.1.1.1.1.1
+%<package>\if\ottoq0
+%<package>\ispmpl{\noveq}\ispmpr\ispmtenf$^{-7}$%
+%<package>% else A.1.1.1.1.1.1.1
+%<package>\else
+%<package>\ispmpl{\ottoq.\noveq}\ispmpr\ispmtenf$^{-6}$%
+%<package>% if A.1.1.1.1.1.1.1
+%<package>\fi
+%<package>% else A.1.1.1.1.1.1
+%<package>\else
+%<package>\ispmpl{\setteq.\ottoq\noveq}\ispmpr\ispmtenf$^{-5}$%
+%<package>% fi A.1.1.1.1.1.1
+%<package>\fi
+%<package>% else A.1.1.1.1.1
+%<package>\else 
+%<package>\ispmpl{\seiq.\setteq\ottoq\noveq}\ispmpr\ispmtenf$^{-4}$%
+%<package>% fi A.1.1.1.1.1
+%<package>\fi
+%<package>% else A.1.1.1.1
+%<package>\else
+%<package>\ispmpl{\cinqueq.\seiq\setteq\ottoq\noveq}\ispmpr\ispmtenf$^{-3}$%
+%<package>% fi A.1.1.1.1
+%<package>\fi
+%<package>% else A.1.1.1
+%<package>\else
+%<package>\ispmpl{\quattroq.\cinqueq\seiq\setteq\ottoq\noveq}\ispmpr\ispmtenf$^{-2}$%
+%<package>% fi A.1.1.1
+%<package>\fi
+%<package>% else A.1.1
+%<package>\else
+%<package>\ispmpl{\treq.\quattroq\cinqueq\seiq\setteq\ottoq\noveq}\ispmpr\ispmtenf$^{-1}$%
+%<package>% fi A.1.1
+%<package>\fi
+%<package>% fi A.1
+%<package>\fi
+%<package>% fi A
+%<package>\fi
+%<package>%
+%<package>}
+%<package>%
+%<package>% Esponenti negativi di numeri razionali (che si risolvono in numeri non interi), con cifre troncate a dx del punto
+%<package>\newcommand{\ispmdexpmt}[1]{%
+%<package>\StrLen{#1}[\temp]%
+%<package>%% Inizio con 3 perché il punto è considerato argomento,
+%<package>% quindi e.g. 0.1 ha tre argomenti.
+%<package>\ifnum\temp=3%
+%<package>\StrChar{#1}{1}[\unoq]%
+%<package>\StrChar{#1}{2}[\dueq]%
+%<package>\StrChar{#1}{3}[\treq]%
+%<package>\ispmpl{\treq}\ispmpr\ispmtenf$^{-1}$%
+%<package>\fi%
+%<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>\ifx\treq\undefined
+%<package>indefinito
+%<package>\else
+%<package>  \if\treq0
+%<package>\ispmpl{\quattroq}\ispmpr\ispmtenf$^{-2}$%
+%<package>    \else
+%<package>\ispmpl{\treq}\ispmpr\ispmtenf$^{-1}$%
+%<package>  \fi
+%<package>\fi
+%<package>\fi%
+%<package>% if A
+%<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>% if A.1
+%<package>\ifx\treq\undefined
+%<package>indefinito
+%<package>% else A.1
+%<package>\else
+%<package>% if A.1.1
+%<package>\if\treq0
+%<package>% if A.1.1.1
+%<package>\if\quattroq0
+%<package>\ispmpl{\cinqueq}\ispmpr\ispmtenf$^{-3}$%
+%<package>% else A.1.1.1
+%<package>\else
+%<package>\ispmpl{\quattroq}\ispmpr\ispmtenf$^{-2}$%
+%<package>% fi A.1.1.1
+%<package>\fi
+%<package>% else A.1.1
+%<package>\else
+%<package>\ispmpl{\treq}\ispmpr\ispmtenf$^{-1}$%
+%<package>% fi A.1.1
+%<package>\fi
+%<package>% fi A.1
+%<package>\fi
+%<package>% fi A
+%<package>\fi
+%<package>%
+%<package>% 
+%<package>% if A
+%<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>% if A.1
+%<package>\ifx\treq\undefined
+%<package>indefinito
+%<package>% else A.1
+%<package>\else
+%<package>% if A.1.1
+%<package>\if\treq0
+%<package>% if A.1.1.1
+%<package>\if\quattroq0
+%<package>% if A.1.1.1.1
+%<package>\if\cinqueq0
+%<package>\ispmpl{\seiq}\ispmpr\ispmtenf$^{-4}$%
+%<package>% else A.1.1.1.1
+%<package>\else
+%<package>\ispmpl{\cinqueq}\ispmpr\ispmtenf$^{-3}$%
+%<package>% fi A.1.1.1.1
+%<package>\fi
+%<package>% else A.1.1.1
+%<package>\else
+%<package>\ispmpl{\quattroq}\ispmpr\ispmtenf$^{-2}$%
+%<package>% fi A.1.1.1
+%<package>\fi
+%<package>% else A.1.1
+%<package>\else
+%<package>\ispmpl{\treq}\ispmpr\ispmtenf$^{-1}$%
+%<package>% fi A.1.1
+%<package>\fi
+%<package>% fi A.1
+%<package>\fi
+%<package>% fi A
+%<package>\fi
+%<package>%
+%<package>%
+%<package>% if A
+%<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>% if A.1
+%<package>\ifx\treq\undefined
+%<package>indefinito
+%<package>% else A.1
+%<package>\else
+%<package>% if A.1.1
+%<package>\if\treq0
+%<package>% if A.1.1.1
+%<package>\if\quattroq0
+%<package>% if A.1.1.1.1
+%<package>\if\cinqueq0
+%<package>% if A.1.1.1.1.1
+%<package>\if\seiq0
+%<package>\ispmpl{\setteq}\ispmpr\ispmtenf$^{-5}$%
+%<package>% else A.1.1.1.1.1
+%<package>\else 
+%<package>\ispmpl{\seiq}\ispmpr\ispmtenf$^{-4}$%
+%<package>% fi A.1.1.1.1.1
+%<package>\fi
+%<package>% else A.1.1.1.1
+%<package>\else
+%<package>\ispmpl{\cinqueq}\ispmpr\ispmtenf$^{-3}$%
+%<package>% fi A.1.1.1.1
+%<package>\fi
+%<package>% else A.1.1.1
+%<package>\else
+%<package>\ispmpl{\quattroq}\ispmpr\ispmtenf$^{-2}$%
+%<package>% fi A.1.1.1
+%<package>\fi
+%<package>% else A.1.1
+%<package>\else
+%<package>\ispmpl{\treq}\ispmpr\ispmtenf$^{-1}$%
+%<package>% fi A.1.1
+%<package>\fi
+%<package>% fi A.1
+%<package>\fi
+%<package>% fi A
+%<package>\fi
+%<package>%
+%<package>%
+%<package>% if A
+%<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>% if A.1
+%<package>\ifx\treq\undefined
+%<package>indefinito
+%<package>% else A.1
+%<package>\else
+%<package>% if A.1.1
+%<package>\if\treq0
+%<package>% if A.1.1.1
+%<package>\if\quattroq0
+%<package>% if A.1.1.1.1
+%<package>\if\cinqueq0
+%<package>% if A.1.1.1.1.1
+%<package>\if\seiq0
+%<package>% if A.1.1.1.1.1.1
+%<package>\if\setteq0
+%<package>\ispmpl{\ottoq}\ispmpr\ispmtenf$^{-6}$%
+%<package>% else A.1.1.1.1.1.1
+%<package>\else
+%<package>\ispmpl{\setteq}\ispmpr\ispmtenf$^{-5}$%
+%<package>% fi A.1.1.1.1.1.1
+%<package>\fi
+%<package>% else A.1.1.1.1.1
+%<package>\else 
+%<package>\ispmpl{\seiq}\ispmpr\ispmtenf$^{-4}$%
+%<package>% fi A.1.1.1.1.1
+%<package>\fi
+%<package>% else A.1.1.1.1
+%<package>\else
+%<package>\ispmpl{\cinqueq}\ispmpr\ispmtenf$^{-3}$%
+%<package>% fi A.1.1.1.1
+%<package>\fi
+%<package>% else A.1.1.1
+%<package>\else
+%<package>\ispmpl{\quattroq}\ispmpr\ispmtenf$^{-2}$%
+%<package>% fi A.1.1.1
+%<package>\fi
+%<package>% else A.1.1
+%<package>\else
+%<package>\ispmpl{\treq}\ispmpr\ispmtenf$^{-1}$%
+%<package>% fi A.1.1
+%<package>\fi
+%<package>% fi A.1
+%<package>\fi
+%<package>% fi A
+%<package>\fi
+%<package>%
+%<package>%
+%<package>% if A
+%<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>% if A.1
+%<package>\ifx\treq\undefined
+%<package>indefinito
+%<package>% else A.1
+%<package>\else
+%<package>% if A.1.1
+%<package>\if\treq0
+%<package>% if A.1.1.1
+%<package>\if\quattroq0
+%<package>% if A.1.1.1.1
+%<package>\if\cinqueq0
+%<package>% if A.1.1.1.1.1
+%<package>\if\seiq0
+%<package>% if A.1.1.1.1.1.1
+%<package>\if\setteq0
+%<package>% if A.1.1.1.1.1.1.1
+%<package>\if\ottoq0
+%<package>\ispmpl{\noveq}\ispmpr\ispmtenf$^{-7}$%
+%<package>% else A.1.1.1.1.1.1.1
+%<package>\else
+%<package>\ispmpl{\ottoq}\ispmpr\ispmtenf$^{-6}$%
+%<package>% if A.1.1.1.1.1.1.1
+%<package>\fi
+%<package>% else A.1.1.1.1.1.1
+%<package>\else
+%<package>\ispmpl{\setteq}\ispmpr\ispmtenf$^{-5}$%
+%<package>% fi A.1.1.1.1.1.1
+%<package>\fi
+%<package>% else A.1.1.1.1.1
+%<package>\else 
+%<package>\ispmpl{\seiq}\ispmpr\ispmtenf$^{-4}$%
+%<package>% fi A.1.1.1.1.1
+%<package>\fi
+%<package>% else A.1.1.1.1
+%<package>\else
+%<package>\ispmpl{\cinqueq}\ispmpr\ispmtenf$^{-3}$%
+%<package>% fi A.1.1.1.1
+%<package>\fi
+%<package>% else A.1.1.1
+%<package>\else
+%<package>\ispmpl{\quattroq}\ispmpr\ispmtenf$^{-2}$%
+%<package>% fi A.1.1.1
+%<package>\fi
+%<package>% else A.1.1
+%<package>\else
+%<package>\ispmpl{\treq}\ispmpr\ispmtenf$^{-1}$%
+%<package>% fi A.1.1
+%<package>\fi
+%<package>% fi A.1
+%<package>\fi
+%<package>% fi A
+%<package>\fi
+%<package>%
+%<package>}
+%<package>\ProcessOptions\relax
 %<*driver>
 \documentclass{ltxdoc}
-\usepackage{isphysicalmath}[2024/01/03]
+\usepackage{isphysicalmath}[2024/12/27]
 \usepackage[T1]{fontenc}
 \usepackage[utf8]{inputenc}
 \usepackage{lmodern} 
@@ -215,10 +1781,13 @@
 \renewcommand*\contentsname{General index}%
 \tableofcontents%
 \clearpage}
+
 \EnableCrossrefs         
 \CodelineIndex
+\RecordChanges
 \begin{document}
-\DocInput{isphysicalmath.dtx}
+  \DocInput{isphysicalmath.dtx}
+  \PrintChanges
 \end{document}
 %</driver>
 % \fi
@@ -239,6 +1808,10 @@
 %   Grave accent  \`     Left brace    \{     Vertical bar  \|
 %   Right brace   \}     Tilde         \~}
 %
+%
+%
+%\changes{v2.0.0}{2024/12/27}{third version}
+%
 %\indice
 %
 %\GetFileInfo{isphysicalmath.dtx}
@@ -245,7 +1818,7 @@
 %
 %\title{The \textsf{isphysicalmath} package\thanks{This document
 %corresponds to  \textsf{isphysicalmath}~\fileversion, dated \filedate.}}
-%\author{Mario Fantini \\ \texttt{marfant7 at gmail.com}}
+%\author{Mario Fantini \\ \texttt{ing.mariofantini at gmail.com}}
 %
 %\maketitle
 %
@@ -253,9 +1826,10 @@
 %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.
+%scientific way (international mainly), by an elegant formatting and notation.
 %\end{abstract}
 %\section{Introduction}
+%The name \textsl{isphysicalmath} means: Physics is Math's daughter. 
 %
 %\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
@@ -265,33 +1839,33 @@
 %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}
-%
+%I respect Donald Knuth limit of nine arguments. I know that is possible to break this limit,
+%but I prefer to respect Knuth's limit for pureness reasons. 
 %\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.
 %
+%\textit{hp.} stands for \textsl{hypothesis}, \textit{th.} stands for \textsl{thesis}.
+%
 %\section{Dependencies}
 %\label{sec:dependencies}
-%\textsl{isphysicalmath} has \textsl{xstring} package dependency.
+%\textsl{isphysicalmath} has \textsl{xstring} package dependency, but you don't need to specify it
+%in your document preamble.
 %
 %Internally,  it uses standard \LaTeX{} built-in commands like: \texttt{\textbackslash textnormal},
-%\texttt{\textbackslash hspace\{\}}, \texttt{\textbackslash ,};
+%\texttt{\textbackslash hspace\{\}}, \texttt{\textbackslash ,}, etc.;
 % however, it performs its activity in complex math environment too.
 %\newpage
 %\section{Usage}
+%\subsection{Formatting}
 %\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'.
+%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.
+% ``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}  \\ \\
@@ -322,7 +1896,7 @@
 %|\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' 
+% 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)}
@@ -337,7 +1911,8 @@
 %\DescribeMacro{\ispmninth} ~\ \\ \\
 %\DescribeMacro{\ispmn} 
 %
-%If you don't want to follow a numerical order, you can use this command. 
+%If you don't want to follow a numerical order, useful in some cases to have the visual control and
+%in complex environments always, you can use this command. 
 %
 %\textit{hp.} You have three measurement units. \\
 %\textit{th.} Horizontal space between the first measurement unit
@@ -346,38 +1921,68 @@
 %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}%
+%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' 
+% 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} \\ \\
+%|\ispmn|\marg{the second measurement unit in place of the II argument (denominator)}
+%|\ispmn|\marg{third measurement unit in place of III argument} \\
+% aka:  \\
+%|\ispmn|\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\} \\
+%\subsection{Notation}
 %
-%$\forall x,y,\ldots,+\infty \in \mathbb{N}$:\\ 
+%\DescribeMacro{\ispmdexpp}
+%
+%It concerns rendering of a number as it multiplied by number ten raised to positive exponents of power,
+%within real numbers field.
+%The order sees first digit as leading digit, without truncated digits on the right of it. \\ 
+%|\ispmdexpp|\marg{number to render} \\ \\
+%
+%\DescribeMacro{\ispmdexppt}
+%
+%It's about rendering of a number as it multiplied by number ten raised to positive exponents of power,
+%within real numbers field.
+%The order sees first digit as leading digit, with truncated digits on the right of it. \\
+%|\ispmdexppt|\marg{number to render} \\ \\
+%
+%\DescribeMacro{\ispmdexpm}
+%
+%It concerns rendering of a number as it multiplied by number ten raised to negative exponents of power,
+%within real numbers field. 
+%The order sees first digit as leading digit, without truncated digits on the right of it. \\
+%|\ispmdexpm|\marg{number to render} \\ \\
+%
+%\DescribeMacro{\ispmdexpmt}
+%
+%It concerns rendering of a number as it multiplied by number ten raised to negative exponents of power,
+%within real numbers field. 
+%The order sees first digit as leading digit, with truncated digits on the right of it. \\
+%|\ispmdexpmt|\marg{number to render}  
+%
+%\textbf{Option} \textit{flushpostdot} \\ \\
+%$\forall x,y,\ldots,+\infty \in \mathbb{R}$:\\ 
+%|\ispmflushpd| \meta{x.y}  \\
+%It deletes all digits that are after dot. \\ \\
+%
+%\textbf{Option} \textit{dc} \\ \\
+%$\forall x,y,\ldots,+\infty \in \mathbb{R}$:\\ 
 %|\ispmc| \meta{x.y}  \\
+%It changes commas in dots. \\ \\
+%
+%$\forall x,y,\ldots,+\infty \in \mathbb{Z}$:\\ 
 %|\ispmrc| \meta{x,y}  \\
-%\end{environment}
+%It changes dots in commas. \\ \\
 %
-%\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}
+%\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} formatting commands, inside mathematical environments, can be joined or detached to previous term;
+%while, outside mathematical environments, \textsl{isphysicalmath} commands must be joined to previous term. \\ \\
 %	\textsl{isphysicalmath} automatical settings:
 %	\begin{itemize}
 %		\item a small space between numerical value and first
@@ -395,8 +2000,7 @@
 %				F = 1 N
 %			\end{center}
 %I don't like this style, and it has not a logical meaning.
-%		        \item By mathematical environment:
-%
+%		        \item By mathematical environment: \\
 %\[F = 1 N\]
 %
 %I don't like this style, and it has not a logical meaning.
@@ -516,7 +2120,7 @@
 %\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
+%material for some mathematical needs; however, this case demonstrates
 %\LaTeX{} power and \textsl{isphysicalmath}.
 %
 %	\[u = 7  \ispmtwo{$\alpha$m}{$\beta$m$^2$}
@@ -567,6 +2171,7 @@
 %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}\]
+%\[1\ispmn{a}\ispmn{b}\ispmn{c}\ispmn{d}\ispmn{e}\ispmn{f}\ispmn{g}\ispmn{h}\ispmn{i}\]
 %The code: 
 %\begin{center}
 %\begin{verbatim}
@@ -575,6 +2180,9 @@
 %
 %\[1\ispmone{a}\ispmn{b}\ispmn{c}\ispmn{d}\ispmn{e}
 %\ispmn{f}\ispmn{g}\ispmn{h}\ispmn{i}\]
+%
+%\[1\ispmn{a}\ispmn{b}\ispmn{c}\ispmn{d}\ispmn{e}
+%\ispmn{f}\ispmn{g}\ispmn{h}\ispmn{i}\]
 %\end{verbatim}
 %\end{center}
 %
@@ -581,27 +2189,453 @@
 %\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 \\ \\
+%\subsubsection{command \textbackslash ispmcomma}
+%\label{subsubsec:commandComma}
+%It adds comma after every three digits, according to international
+%scientific notation. It is independent of \textsl{dc},  option but
+%compatible with it.
+%
+%$\forall a,b,c,d,e,f,g,h,i \in \mathbb{Z}$ [0,9]: 
+%\begin{center}
+%	\ispmcomma{100000000} \\
+%	\ispmcomma{100000000}.00\\
+%	\ispmcomma{10000000}.00 \\
+%	\ispmcomma{1000000}.00 \\
+%	\ispmcomma{100000}.00 \\
+%	\ispmcomma{10000}.00 \\
+%	\ispmcomma{1000}.00
+%\end{center}
+%
 %The code: 
+%\begin{center}
 %\begin{verbatim}
-%\ispmc 1.234 \\
-%\ispmc{1234567} \\
-%\ispmc 1.234 \ispmcomma{1234567}
+%\ispmcomma{100000000} \\
+%\ispmcomma{100000000}.00 \\
+%\ispmcomma{10000000}.00 \\
+%\ispmcomma{1000000}.00 \\
+%\ispmcomma{100000}.00 \\
+%\ispmcomma{10000}.00 \\
+%\ispmcomma{1000}.00
 %\end{verbatim}
+%\end{center}
 %
-%\subsubsection{option <dc>}
+%\newpage
+%
+%\subsubsection{Rendering by positive exponents of number ten powers}
+%Rendering of a number as it multiplied by number ten raised to positive exponents of power.
+%
+%\paragraph{By first digit as leading digit, without truncated digits on the right of it} ~\ \\
+%
+%\textsc{Two arguments} \\
+%
+%Two digits, two arguments: \\
+%input: \texttt{\textbackslash{}ispmdexpp\{12\}} \\
+%output: \ispmdexpp{12} \\
+%
+%Inside mathematical environment: \\
+%input: \texttt{\$F = \textbackslash{}ispmdexpp\{12\} \textbackslash{}ispmone\{N\}\$} \\
+%output: $F = \ispmdexpp{12} \ispmone{N}$\\
+%And so on for other \texttt{\textbackslash{}ispmdexp$^{\ast}$} commands. \\ 
+%
+%\textsc{Three arguments} \\
+%
+%Two digits, three arguments: \\
+%input: \texttt{\textbackslash{}ispmdexpp\{1.2\}} \\
+%output: \ispmdexpp{1.2} \\
+%
+%Three digits, three arguments: \\
+%input: \texttt{\textbackslash{}ispmdexpp\{123\}} \\
+%output: \ispmdexpp{123} \\ 
+%
+%\textsc{Four arguments} \\
+%
+%Three digits, four arguments: \\
+%\texttt{\textbackslash{}ispmdexpp\{1.23\}} \\
+%\ispmdexpp{1.23} \\\\
+%\texttt{\textbackslash{}ispmdexpp\{12.3\}} \\
+%\ispmdexpp{12.3} \\\\
+%\texttt{\textbackslash{}ispmdexpp\{1234\}} \\
+%\ispmdexpp{1234}  \\
+%
+%\textsc{Five arguments} \\
+%
+%Four digits, five arguments: \\
+%\texttt{\textbackslash{}ispmdexpp\{1.234\}} \\
+%\ispmdexpp{1.234} \\\\
+%\texttt{\textbackslash{}ispmdexpp\{12.34\}} \\
+%\ispmdexpp{12.34} \\\\
+%\texttt{\textbackslash{}ispmdexpp\{123.4\}} \\
+%\ispmdexpp{123.4} \\
+%
+%Five digits, five arguments: \\
+%\texttt{\textbackslash{}ispmdexpp\{12345\}} \\
+%\ispmdexpp{12345} \\
+%
+%\textsc{Six arguments} \\
+%
+%Five digits, six arguments: \\
+%\texttt{\textbackslash{}ispmdexpp\{1.2345\}} \\
+%\ispmdexpp{1.2345} \\\\
+%\texttt{\textbackslash{}ispmdexpp\{12.345\}} \\
+%\ispmdexpp{12.345} \\\\
+%\texttt{\textbackslash{}ispmdexpp\{123.45\}} \\
+%\ispmdexpp{123.45} \\\\
+%\texttt{\textbackslash{}ispmdexpp\{1234.5\}} \\
+%\ispmdexpp{1234.5} \\
+%
+%Six digits, six arguments: \\
+%\texttt{\textbackslash{}ispmdexpp\{123456\}} \\
+%\ispmdexpp{123456} \\ 
+%
+%\textsc{Seven arguments} \\
+%
+%Six digits, seven arguments: \\
+%\texttt{\textbackslash{}ispmdexpp\{1.23456\}} \\
+%\ispmdexpp{1.23456} \\\\
+%\texttt{\textbackslash{}ispmdexpp\{12.3456\}} \\
+%\ispmdexpp{12.3456} \\\\
+%\texttt{\textbackslash{}ispmdexpp\{123.456\}} \\
+%\ispmdexpp{123.456} \\\\
+%\texttt{\textbackslash{}ispmdexpp\{1234.56\}} \\
+%\ispmdexpp{1234.56} \\\\
+%\texttt{\textbackslash{}ispmdexpp\{12345.6\}} \\
+%\ispmdexpp{12345.6} \\
+%
+%Seven digits, seven arguments: \\
+%\texttt{\textbackslash{}ispmdexpp\{1234567\}} \\
+%\ispmdexpp{1234567} \\ 
+%
+%\newpage
+%
+%\textsc{Eight arguments} \\
+%
+%Seven digits, eight arguments: \\
+%\texttt{\textbackslash{}ispmdexpp\{1.234567\}} \\
+%\ispmdexpp{1.234567} \\\\
+%\texttt{\textbackslash{}ispmdexpp\{12.34567\}} \\
+%\ispmdexpp{12.34567} \\\\
+%\texttt{\textbackslash{}ispmdexpp\{123.4567\}} \\
+%\ispmdexpp{123.4567} \\\\
+%\texttt{\textbackslash{}ispmdexpp\{1234.567\}} \\
+%\ispmdexpp{1234.567} \\\\
+%\texttt{\textbackslash{}ispmdexpp\{12345.67\}} \\
+%\ispmdexpp{12345.67} \\\\
+%\texttt{\textbackslash{}ispmdexpp\{123456.7\}} \\
+%\ispmdexpp{123456.7} \\
+%
+%Eight digits, eight arguments: \\
+%\texttt{\textbackslash{}ispmdexpp\{12345678\}} \\
+%\ispmdexpp{12345678} \\ 
+%
+%\textsc{Nine arguments} \\
+%
+%Eight digits, nine arguments: \\
+%\texttt{\textbackslash{}ispmdexpp\{1.2345678\}} \\
+%\ispmdexpp{1.2345678} \\\\
+%\texttt{\textbackslash{}ispmdexpp\{12.345678\}} \\
+%\ispmdexpp{12.345678} \\\\
+%\texttt{\textbackslash{}ispmdexpp\{123.45678\}} \\
+%\ispmdexpp{123.45678} \\\\
+%\texttt{\textbackslash{}ispmdexpp\{1234.5678\}} \\
+%\ispmdexpp{1234.5678} \\\\
+%\texttt{\textbackslash{}ispmdexpp\{12345.678\}} \\
+%\ispmdexpp{12345.678} \\\\
+%\texttt{\textbackslash{}ispmdexpp\{123456.78\}} \\
+%\ispmdexpp{123456.78} \\\\
+%\texttt{\textbackslash{}ispmdexpp\{1234567.8\}} \\
+%\ispmdexpp{1234567.8} \\
+%
+%\newpage
+%
+%Nine digits, nine arguments: \\
+%\texttt{\textbackslash{}ispmdexpp\{123456789\}} \\
+%\ispmdexpp{123456789} \\ \\ 
+%
+%\paragraph{By first digit as leading digit, with truncated digits on the right of it} ~\ \\
+%
+%\textsc{Two arguments} \\
+%
+%Two digits, two arguments: \\
+%\texttt{\textbackslash{}ispmdexppt\{12\}} \\
+%\ispmdexppt{12} \\ 
+%
+%\textsc{Three arguments} \\
+%
+%Two digits, three arguments: \\
+%\texttt{\textbackslash{}ispmdexppt\{1.2\}} \\
+%\ispmdexppt{1.2} \\
+%
+%Three digits, three arguments: \\
+%\texttt{\textbackslash{}ispmdexppt\{123\}} \\
+%\ispmdexppt{123} \\ 
+%
+%\textsc{Four arguments} \\
+%
+%Three digits, four arguments: \\
+%\texttt{\textbackslash{}ispmdexppt\{1.23\}} \\
+%\ispmdexppt{1.23} \\\\
+%\texttt{\textbackslash{}ispmdexppt\{12.3\}} \\
+%\ispmdexppt{12.3} \\\\
+%\texttt{\textbackslash{}ispmdexppt\{1234\}} \\
+%\ispmdexppt{1234}  \\
+%
+%\textsc{Five arguments} \\
+%
+%Four digits, five arguments: \\
+%\texttt{\textbackslash{}ispmdexppt\{1.234\}} \\
+%\ispmdexppt{1.234} \\\\
+%\texttt{\textbackslash{}ispmdexppt\{12.34\}} \\
+%\ispmdexppt{12.34} \\\\
+%\texttt{\textbackslash{}ispmdexppt\{123.4\}} \\
+%\ispmdexppt{123.4} \\
+%
+%\newpage
+%
+%Five digits, five arguments: \\
+%\texttt{\textbackslash{}ispmdexppt\{12345\}} \\
+%\ispmdexppt{12345} \\
+%
+%\textsc{Six arguments} \\
+%
+%Five digits, six arguments: \\
+%\texttt{\textbackslash{}ispmdexppt\{1.2345\}} \\
+%\ispmdexppt{1.2345} \\\\
+%\texttt{\textbackslash{}ispmdexppt\{12.345\}} \\
+%\ispmdexppt{12.345} \\\\
+%\texttt{\textbackslash{}ispmdexppt\{123.45\}} \\
+%\ispmdexppt{123.45} \\\\
+%\texttt{\textbackslash{}ispmdexppt\{1234.5\}} \\
+%\ispmdexppt{1234.5} \\
+%
+%Six digits, six arguments: \\
+%\texttt{\textbackslash{}ispmdexppt\{123456\}} \\
+%\ispmdexppt{123456} \\ 
+%
+%\textsc{Seven arguments} \\
+%
+%Six digits, seven arguments: \\
+%\texttt{\textbackslash{}ispmdexppt\{1.23456\}} \\
+%\ispmdexppt{1.23456} \\\\
+%\texttt{\textbackslash{}ispmdexppt\{12.3456\}} \\
+%\ispmdexppt{12.3456} \\\\
+%\texttt{\textbackslash{}ispmdexppt\{123.456\}} \\
+%\ispmdexppt{123.456} \\\\
+%\texttt{\textbackslash{}ispmdexppt\{1234.56\}} \\
+%\ispmdexppt{1234.56} \\\\
+%\texttt{\textbackslash{}ispmdexppt\{12345.6\}} \\
+%\ispmdexppt{12345.6} \\
+%
+%Seven digits, seven arguments: \\
+%\texttt{\textbackslash{}ispmdexppt\{1234567\}} \\
+%\ispmdexppt{1234567} \\ 
+%
+%\textsc{Eight arguments} \\
+%
+%Seven digits, eight arguments: \\
+%\texttt{\textbackslash{}ispmdexppt\{1.234567\}} \\
+%\ispmdexppt{1.234567} \\\\
+%\texttt{\textbackslash{}ispmdexppt\{12.34567\}} \\
+%\ispmdexppt{12.34567} \\\\
+%\texttt{\textbackslash{}ispmdexppt\{123.4567\}} \\
+%\ispmdexppt{123.4567} \\\\
+%\texttt{\textbackslash{}ispmdexppt\{1234.567\}} \\
+%\ispmdexppt{1234.567} \\\\
+%\texttt{\textbackslash{}ispmdexppt\{12345.67\}} \\
+%\ispmdexppt{12345.67} \\\\
+%\texttt{\textbackslash{}ispmdexppt\{123456.7\}} \\
+%\ispmdexppt{123456.7} \\
+%
+%Eight digits, eight arguments: \\
+%\texttt{\textbackslash{}ispmdexppt\{12345678\}} \\
+%\ispmdexppt{12345678} \\ 
+%
+%\textsc{Nine arguments} \\
+%
+%Eight digits, nine arguments: \\
+%\texttt{\textbackslash{}ispmdexppt\{1.2345678\}} \\
+%\ispmdexppt{1.2345678} \\\\
+%\texttt{\textbackslash{}ispmdexppt\{12.345678\}} \\
+%\ispmdexppt{12.345678} \\\\
+%\texttt{\textbackslash{}ispmdexppt\{123.45678\}} \\
+%\ispmdexppt{123.45678} \\\\
+%\texttt{\textbackslash{}ispmdexppt\{1234.5678\}} \\
+%\ispmdexppt{1234.5678} \\\\
+%\texttt{\textbackslash{}ispmdexppt\{12345.678\}} \\
+%\ispmdexppt{12345.678} \\\\
+%\texttt{\textbackslash{}ispmdexppt\{123456.78\}} \\
+%\ispmdexpp{123456.78} \\\\
+%\texttt{\textbackslash{}ispmdexppt\{1234567.8\}} \\
+%\ispmdexppt{1234567.8} \\
+%
+%Nine digits, nine arguments: \\
+%\texttt{\textbackslash{}ispmdexppt\{123456789\}} \\
+%\ispmdexppt{123456789} \\ \\ 
+%
+%
+%%\subsubsection{Rendering by negative exponents of number ten powers}
+%Rendering of a number as it multiplied by number ten raised to negative exponents of power.
+%\paragraph{By first digit as leading digit, without truncated digits on the right of it} ~\ \\
+%
+%\textsc{One digit after dot}  \\
+%\texttt{\textbackslash{}ispmdexpm\{0.1\}}\\
+%\ispmdexpm{0.1} \\
+%
+%\textsc{Two digits after dot} \\
+%\texttt{\textbackslash{}ispmdexpm\{0.12\}}\\
+%\ispmdexpm{0.12} \\ \\
+%\texttt{\textbackslash{}ispmdexpm\{0.01\}}\\
+%\ispmdexpm{0.01} \\ \\
+%\texttt{\textbackslash{}ispmdexpm\{0.10\}}\\
+%\ispmdexpm{0.10} \\
+%
+%\textsc{Three digits after dot} \\
+%\texttt{\textbackslash{}ispmdexpm\{0.123\}}\\
+%\ispmdexpm{0.123} \\ \\
+%\texttt{\textbackslash{}ispmdexpm\{0.012\}}\\
+%\ispmdexpm{0.012} \\ \\
+%\texttt{\textbackslash{}ispmdexpm\{0.001\}}\\
+%\ispmdexpm{0.001} \\
+%
+%\textsc{Four digits after dot} \\
+%\texttt{\textbackslash{}ispmdexpm\{0.1234\}}\\
+%\ispmdexpm{0.1234} \\ \\
+%\texttt{\textbackslash{}ispmdexpm\{0.0123\}}\\
+%\ispmdexpm{0.0123} \\ \\
+%\texttt{\textbackslash{}ispmdexpm\{0.0012\}}\\
+%\ispmdexpm{0.0012} \\ \\
+%\texttt{\textbackslash{}ispmdexpm\{0.0001\}}\\
+%\ispmdexpm{0.0001} \\
+%
+%\textsc{Five digits after dot} \\
+%\texttt{\textbackslash{}ispmdexpm\{0.12345\}}\\
+%\ispmdexpm{0.12345} \\ \\
+%\texttt{\textbackslash{}ispmdexpm\{0.01234\}}\\
+%\ispmdexpm{0.01234} \\ \\
+%\texttt{\textbackslash{}ispmdexpm\{0.00123\}}\\
+%\ispmdexpm{0.00123} \\ \\
+%\texttt{\textbackslash{}ispmdexpm\{0.00012\}}\\
+%\ispmdexpm{0.00012} \\ \\
+%\texttt{\textbackslash{}ispmdexpm\{0.00001\}}\\
+%\ispmdexpm{0.00001} \\
+%
+%\textsc{Six digits after dot} \\
+%\texttt{\textbackslash{}ispmdexpm\{0.123456\}}\\
+%\ispmdexpm{0.123456} \\ \\
+%\texttt{\textbackslash{}ispmdexpm\{0.012345\}}\\
+%\ispmdexpm{0.012345} \\ \\
+%\texttt{\textbackslash{}ispmdexpm\{0.001234\}}\\
+%\ispmdexpm{0.001234} \\ \\
+%\texttt{\textbackslash{}ispmdexpm\{0.000123\}}\\
+%\ispmdexpm{0.000123} \\ \\
+%\texttt{\textbackslash{}ispmdexpm\{0.000012\}}\\
+%\ispmdexpm{0.000012} \\ \\
+%\texttt{\textbackslash{}ispmdexpm\{0.000001\}}\\
+%\ispmdexpm{0.000001} \\
+%
+%\textsc{Seven digits after dot} \\
+%\texttt{\textbackslash{}ispmdexpm\{0.1234567\}}\\
+%\ispmdexpm{0.1234567} \\\\
+%\texttt{\textbackslash{}ispmdexpm\{0.0123456\}}\\
+%\ispmdexpm{0.0123456} \\\\
+%\texttt{\textbackslash{}ispmdexpm\{0.0012345\}}\\
+%\ispmdexpm{0.0012345} \\\\
+%\texttt{\textbackslash{}ispmdexpm\{0.0001234\}}\\
+%\ispmdexpm{0.0001234} \\\\
+%\texttt{\textbackslash{}ispmdexpm\{0.0000123\}}\\
+%\ispmdexpm{0.0000123} \\\\
+%\texttt{\textbackslash{}ispmdexpm\{0.0000012\}}\\
+%\ispmdexpm{0.0000012} \\ \\
+%\texttt{\textbackslash{}ispmdexpm\{0.0000001\}}\\
+%\ispmdexpm{0.0000001}
+%
+%\paragraph{By first digit as leading digit, with truncated digits on the right of it} ~\ \\
+%
+%\textsc{One digit after dot}  \\
+%\texttt{\textbackslash{}ispmdexpmt\{0.1\}}\\
+%\ispmdexpmt{0.1} \\
+%
+%\textsc{Two digits after dot} \\
+%\texttt{\textbackslash{}ispmdexpmt\{0.12\}}\\
+%\ispmdexpmt{0.12} \\ \\
+%\texttt{\textbackslash{}ispmdexpmt\{0.01\}}\\
+%\ispmdexpmt{0.01} \\ \\
+%\texttt{\textbackslash{}ispmdexpmt\{0.10\}}\\
+%\ispmdexpmt{0.10} \\
+%
+%\textsc{Three digits after dot} \\
+%\texttt{\textbackslash{}ispmdexpmt\{0.123\}}\\
+%\ispmdexpmt{0.123} \\ \\
+%\texttt{\textbackslash{}ispmdexpmt\{0.012\}}\\
+%\ispmdexpmt{0.012} \\ \\
+%\texttt{\textbackslash{}ispmdexpmt\{0.001\}}\\
+%\ispmdexpmt{0.001} \\
+%
+%\textsc{Four digits after dot} \\
+%\texttt{\textbackslash{}ispmdexpmt\{0.1234\}}\\
+%\ispmdexpmt{0.1234} \\ \\
+%\texttt{\textbackslash{}ispmdexpmt\{0.0123\}}\\
+%\ispmdexpmt{0.0123} \\ \\
+%\texttt{\textbackslash{}ispmdexpmt\{0.0012\}}\\
+%\ispmdexpmt{0.0012} \\ \\
+%\texttt{\textbackslash{}ispmdexpmt\{0.0001\}}\\
+%\ispmdexpmt{0.0001} \\
+%
+%\textsc{Five digits after dot} \\
+%\texttt{\textbackslash{}ispmdexpmt\{0.12345\}}\\
+%\ispmdexpmt{0.12345} \\ \\
+%\texttt{\textbackslash{}ispmdexpmt\{0.01234\}}\\
+%\ispmdexpmt{0.01234} \\ \\
+%\texttt{\textbackslash{}ispmdexpmt\{0.00123\}}\\
+%\ispmdexpmt{0.00123} \\ \\
+%\texttt{\textbackslash{}ispmdexpmt\{0.00012\}}\\
+%\ispmdexpmt{0.00012} \\ \\
+%\texttt{\textbackslash{}ispmdexpmt\{0.00001\}}\\
+%\ispmdexpmt{0.00001} \\
+%
+%\textsc{Six digits after dot} \\
+%\texttt{\textbackslash{}ispmdexpmt\{0.123456\}}\\
+%\ispmdexpmt{0.123456} \\ \\
+%\texttt{\textbackslash{}ispmdexpmt\{0.012345\}}\\
+%\ispmdexpmt{0.012345} \\ \\
+%\texttt{\textbackslash{}ispmdexpmt\{0.001234\}}\\
+%\ispmdexpmt{0.001234} \\ \\
+%\texttt{\textbackslash{}ispmdexpmt\{0.000123\}}\\
+%\ispmdexpmt{0.000123} \\ \\
+%\texttt{\textbackslash{}ispmdexpmt\{0.000012\}}\\
+%\ispmdexpmt{0.000012} \\ \\
+%\texttt{\textbackslash{}ispmdexpmt\{0.000001\}}\\
+%\ispmdexpmt{0.000001} \\
+%
+%\textsc{Seven digits after dot} \\
+%\texttt{\textbackslash{}ispmdexpmt\{0.1234567\}}\\
+%\ispmdexpmt{0.1234567} \\\\
+%\texttt{\textbackslash{}ispmdexpmt\{0.0123456\}}\\
+%\ispmdexpmt{0.0123456} \\\\
+%\texttt{\textbackslash{}ispmdexpmt\{0.0012345\}}\\
+%\ispmdexpmt{0.0012345} \\\\
+%\texttt{\textbackslash{}ispmdexpmt\{0.0001234\}}\\
+%\ispmdexpmt{0.0001234} \\\\
+%\texttt{\textbackslash{}ispmdexpmt\{0.0000123\}}\\
+%\ispmdexpmt{0.0000123} \\\\
+%\texttt{\textbackslash{}ispmdexpmt\{0.0000012\}}\\
+%\ispmdexpmt{0.0000012} \\
+%\texttt{\textbackslash{}ispmdexpmt\{0.0000001\}}\\
+%\ispmdexpmt{0.0000001}
+%
+%\subsubsection{option `flushpostdot'}
+%\textsl{Usage}: \texttt{\textbackslash usepackage[flushpostdot]\{isphysicalmath\}} \\
+%
+%Outside mathematical environment:\\
+%\texttt{\textbackslash{}ispmflushpd 12.3} \\
+%\ispmflushpd 12.3 \\ \\
+%Inside mathematical environment:\\
+%\texttt{\$\textbackslash{}ispmflushpd 12.3\$} \\ 
+%$\ispmflushpd 12.3$
+%
+%
+%\subsubsection{option `dc'}
 %\label{subsubsec:optionDc}
 %\textsl{Usage}: \texttt{\textbackslash usepackage[dc]\{isphysicalmath\}} \\ 
 %
@@ -640,84 +2674,19 @@
 %\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%
+%\tiny \url{https://ctan.org/pkg/isphysicalmath} \normalsize
 %
 %\section{Copyright}
+%Copyright \copyright{} 2024 by Mario Fantini <ing.mariofantini at gmail.com>.
 %
-%Copyright (C) 2024 by Mario Fantini <marfant7 at 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
+%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
+%\tiny \url{http://www.latex-project.org/lppl.txt} \normalsize \\
+%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'. 
@@ -742,7 +2711,7 @@
 %\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 Option \textsl{comma} changed.
 %\item \autoref{subsubsec:commandComma} added.
 %\item Following commands added:
 %\begin{itemize}
@@ -773,5 +2742,21 @@
 %\end{itemize}
 %\end{enumerate}
 %
+%\subsection{v2.0.0}
+%2024.12.24 Following corrections, improvements and new features have been brought:
+%\begin{enumerate}
+%\item I have corrected some distraction mistakes. However, perfect operation of \textsl{isphysicalmath} was guarenteed
+% before these corrections too.
+%\item I have removed \textit{comma option}.
+%\item I have changed the order of \textit{options} in the documentation index.
+%\item I have added the following new features:
+%\begin{itemize}
+%\item \texttt{\textbackslash ispmdexpp} command;
+%\item \texttt{\textbackslash ispmdexppt} command;
+%\item \texttt{\textbackslash ispmdexpm} command;
+%\item \texttt{flushpostdot} option.
+%\end{itemize}
+%\item I have changed my e-mail contact.
+%\end{enumerate}
 % \Finale
 \endinput

Modified: trunk/Master/texmf-dist/source/latex/isphysicalmath/isphysicalmath.ins
===================================================================
--- trunk/Master/texmf-dist/source/latex/isphysicalmath/isphysicalmath.ins	2024-12-30 21:18:29 UTC (rev 73238)
+++ trunk/Master/texmf-dist/source/latex/isphysicalmath/isphysicalmath.ins	2024-12-30 21:18:39 UTC (rev 73239)
@@ -1,5 +1,5 @@
 %%
-%% Copyright (C) 2024 by Mario Fantini <marfant7 at gmail.com>
+%% Copyright (C) 2024 by Mario Fantini <ing.mariofantini at 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
@@ -28,7 +28,7 @@
 
 This is a generated file.
 
-Copyright (C) 2024 by Mario Fantini <marfant7 at gmail.com>
+Copyright (C) 2024 by Mario Fantini <ing.mariofantini at 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

Modified: trunk/Master/texmf-dist/tex/latex/isphysicalmath/isphysicalmath.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/isphysicalmath/isphysicalmath.sty	2024-12-30 21:18:29 UTC (rev 73238)
+++ trunk/Master/texmf-dist/tex/latex/isphysicalmath/isphysicalmath.sty	2024-12-30 21:18:39 UTC (rev 73239)
@@ -8,7 +8,7 @@
 %% 
 %% This is a generated file.
 %% 
-%% Copyright (C) 2024 by Mario Fantini <marfant7 at gmail.com>
+%% Copyright (C) 2024 by Mario Fantini <ing.mariofantini at 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
@@ -22,7 +22,7 @@
 %% 
 \NeedsTeXFormat{LaTeX2e}[2005/12/01]
 \ProvidesPackage{isphysicalmath}
-[2024/01/03 v1.1.0 .dtx isphysicalmath file]
+[2024/12/27 v2.0.0 .dtx isphysicalmath file]
 \RequirePackage{xstring}
 %
 % Notation section:
@@ -32,9 +32,10 @@
 \def\ispmrc#1,#2{{#1.#2}}
 }
 %
-% option [comma]: scientific international notation for thousands and their multiples.
-\DeclareOption{comma}{
-\def\ispmc#1{%
+\ExecuteOptions{dc}
+%
+% command \ispmcomma: scientific international notation for thousands and their multiples.
+\newcommand{\ispmcomma}[1]{%
 \StrLen{#1}[\temp]%
 \ifnum\temp=4%
 \StrChar{#1}{1}[\unoq]%
@@ -94,21 +95,205 @@
 \unoq\dueq\treq,\quattroq\cinqueq\seiq,\setteq\ottoq\noveq%
 \fi%
 }
+%
+%
+% Formatting section:
+% a small space between value and measurement unit
+\newcommand{\ispms}{\,}
+% normal text rendering for first measurement unit
+\newcommand{\ispmntone}[1]{\textnormal{#1}}
+% jolly: the default setting consists in --- a $0.15\ispmone{mm}$ of space
+% and normal text rendering for a generic 'entity'.
+% If you are a developer, you can modify it when and how you want.
+\newcommand{\ispm}[1]{\hspace{0.15mm}\textnormal{#1}}
+% normal text rendering for first and second measurement units
+\newcommand{\ispmnttwo}[2]{\textnormal{#1}\textnormal{#2}}
+% space between first and second measurement units
+\newcommand{\ispmss}{\hspace{0.15mm}}
+% \ispm if you have only a measurement unit
+% e.g. $F = 20 \ispmone{N}$
+\newcommand{\ispmone}{\ispms\ispmntone}
+% \ispm if you have two measurement units
+% e.g. $L = 20 \ispmtwo{N}{m}$
+\newcommand{\ispmtwo}[2]{\ispms\ispmnttwo\ispmss{#1}\ispmnttwo\ispmss{#2}}
+% ispm if you have three measurement units
+% e.g. $V = 8 \ispmtwo{m}{m}\ispmthird{m}$
+\newcommand{\ispmthird}[1]{\ispmss\ispm{#1}}
+% and so on until ninth measurement unit
+\newcommand{\ispmfourth}[1]{\ispmss\ispm{#1}}
+\newcommand{\ispmfifth}[1]{\ispmss\ispm{#1}}
+\newcommand{\ispmsixth}[1]{\ispmss\ispm{#1}}
+\newcommand{\ispmseventh}[1]{\ispmss\ispm{#1}}
+\newcommand{\ispmeighth}[1]{\ispmss\ispm{#1}}
+\newcommand{\ispmninth}[1]{\ispmss\ispm{#1}}
+% If you don't want numerical order, you could use generic \ispmn command
+\newcommand{\ispmn}[1]{\ispmss\ispm{#1}}
+
+
+%% Delete digits after dot
+\DeclareOption{flushpostdot}{
+% e.g. \ispmflushpd 1.2 = 1
+\def\ispmflushpd#1.#2{{#1}}
 }
-\ExecuteOptions{dc}
-\ExecuteOptions{comma}
-\ProcessOptions\relax
+\ExecuteOptions{flushpostdot}
+
+
+%% Potenze del numero dieci
+\newcommand{\ispmpl}{(}
+\newcommand{\ispmpr}{)}
+\newcommand{\ispmten}{10}
+\newcommand{\ispmtenf}{\ispmpl\ispmten\ispmpr}
+
+%% Esponenti positivi con la prima cifra "leading": numeri interi
+% commentato perché limitante, quello per i numeri reali è invece completo (universale)
+%\newcommand{\ispmdexpp}[1]{%
+%\StrLen{#1}[\temp]%
+%\ifnum\temp=2%
+%\StrChar{#1}{1}[\unoq]%
+%\StrChar{#1}{2}[\dueq]%
+%\ispmpl{\unoq}.{\dueq}\ispmpr\ispmtenf%
+%\fi%
+%\ifnum\temp=3%
+%\StrChar{#1}{1}[\unoq]%
+%\StrChar{#1}{2}[\dueq]%
+%\StrChar{#1}{3}[\treq]%
+%\ispmpl{\unoq}.{\dueq}{\treq}\ispmpr\ispmtenf$^2$%
+%\fi%
+%\ifnum\temp=4%
+%\StrChar{#1}{1}[\unoq]%
+%\StrChar{#1}{2}[\dueq]%
+%\StrChar{#1}{3}[\treq]%
+%\StrChar{#1}{4}[\quattroq]%
+%\ispmpl{\unoq}.{\dueq}{\treq}{\quattroq}\ispmpr\ispmtenf$^3$%
+%\fi%
+%\ifnum\temp=5%
+%\StrChar{#1}{1}[\unoq]%
+%\StrChar{#1}{2}[\dueq]%
+%\StrChar{#1}{3}[\treq]%
+%\StrChar{#1}{4}[\quattroq]%
+%\StrChar{#1}{5}[\cinqueq]%
+%\ispmpl{\unoq}.{\dueq}{\treq}{\quattroq}{\cinqueq}\ispmpr\ispmtenf$^4$%
+%\fi%
+%\ifnum\temp=6%
+%\StrChar{#1}{1}[\unoq]%
+%\StrChar{#1}{2}[\dueq]%
+%\StrChar{#1}{3}[\treq]%
+%\StrChar{#1}{4}[\quattroq]%
+%\StrChar{#1}{5}[\cinqueq]%
+%\StrChar{#1}{6}[\seiq]%
+%\ispmpl{\unoq}.{\dueq}{\treq}{\quattroq}{\cinqueq}{\seiq}\ispmpr\ispmtenf$^5$%
+%\fi%
+%\ifnum\temp=7%
+%\StrChar{#1}{1}[\unoq]%
+%\StrChar{#1}{2}[\dueq]%
+%\StrChar{#1}{3}[\treq]%
+%\StrChar{#1}{4}[\quattroq]%
+%\StrChar{#1}{5}[\cinqueq]%
+%\StrChar{#1}{6}[\seiq]%
+%\StrChar{#1}{7}[\setteq]%
+%\ispmpl{\unoq}.{\dueq}{\treq}{\quattroq}{\cinqueq}{\seiq}{\setteq}\ispmpr\ispmtenf$^6$%
+%\fi%
+%\ifnum\temp=8%
+%\StrChar{#1}{1}[\unoq]%
+%\StrChar{#1}{2}[\dueq]%
+%\StrChar{#1}{3}[\treq]%
+%\StrChar{#1}{4}[\quattroq]%
+%\StrChar{#1}{5}[\cinqueq]%
+%\StrChar{#1}{6}[\seiq]%
+%\StrChar{#1}{7}[\setteq]%
+%\StrChar{#1}{8}[\ottoq]%
+%\ispmpl{\unoq}.{\dueq}{\treq}{\quattroq}{\cinqueq}{\seiq}{\setteq}{\ottoq}\ispmpr\ispmtenf$^7$%
+%\fi%
+%\ifnum\temp=9%
+%\StrChar{#1}{1}[\unoq]%
+%\StrChar{#1}{2}[\dueq]%
+%\StrChar{#1}{3}[\treq]%
+%\StrChar{#1}{4}[\quattroq]%
+%\StrChar{#1}{5}[\cinqueq]%
+%\StrChar{#1}{6}[\seiq]%
+%\StrChar{#1}{7}[\setteq]%
+%\StrChar{#1}{8}[\ottoq]%
+%\StrChar{#1}{9}[\noveq]%
+%\ispmpl{\unoq}.{\dueq}{\treq}{\quattroq}{\cinqueq}{\seiq}{\setteq}{\ottoq}{\noveq}\ispmpr\ispmtenf$^8$%
+%\fi%
+%}
 %
-% command \ispmcomma: scientific international notation for thousands and their multiples.
-\newcommand{\ispmcomma}[1]{%
+%% Esponenti positivi Reali con la prima cifra "leading"
+\newcommand{\ispmdexpp}[1]{%
+%
+%% Two digits, two arguments
 \StrLen{#1}[\temp]%
+\ifnum\temp=2%
+\StrChar{#1}{1}[\unoq]%
+\StrChar{#1}{2}[\dueq]%
+\ispmpl{\unoq}.{\dueq}\ispmpr\ispmtenf%
+\fi%
+%
+% Three arguments
+\ifnum\temp=3%
+\StrChar{#1}{1}[\unoq]%
+\StrChar{#1}{2}[\dueq]%
+\StrChar{#1}{3}[\treq]%
+% if A.1
+\ifx\dueq\undefined
+indefinito
+% else A.1
+\else
+% Two digits, three arguments \\
+% if A.1.1
+\if\dueq.
+\unoq\dueq\treq%
+% else A.1.1
+\else
+% Three digits, three arguments \\
+\ispmpl{\unoq}.{\dueq}{\treq}\ispmpr\ispmtenf$^2$%
+% fi A.1.1
+\fi
+% fi A.1
+\fi
+% fi A
+\fi%
+%
+%
+% if A
 \ifnum\temp=4%
 \StrChar{#1}{1}[\unoq]%
 \StrChar{#1}{2}[\dueq]%
 \StrChar{#1}{3}[\treq]%
 \StrChar{#1}{4}[\quattroq]%
-\unoq,\dueq\treq\quattroq%
+% if A.1
+\ifx\dueq\undefined
+indefinito
+% else A.1
+\else
+% if A.1.1
+\if\dueq.
+\unoq\dueq\treq\quattroq%
+% else A.1.1
+\else
+% if A.1.1.1
+\ifx\treq\undefined
+indefinito
+% else A.1.1.1
+\else
+% if A.1.1.1.1
+\if\treq.
+\ispmpl{\unoq}.{\dueq}{\quattroq}\ispmpr\ispmtenf%
+% else A.1.1.1.1
+\else
+\ispmpl{\unoq}.{\dueq}{\treq}{\quattroq}\ispmpr\ispmtenf$^3$%
+% fi A.1.1.1.1
+\fi
+% fi A.1.1.1
+\fi
+% fi A.1.1
+\fi
+% fi A.1
+\fi
+% fi A
 \fi%
+%
+% if A
 \ifnum\temp=5%
 \StrChar{#1}{1}[\unoq]%
 \StrChar{#1}{2}[\dueq]%
@@ -115,8 +300,522 @@
 \StrChar{#1}{3}[\treq]%
 \StrChar{#1}{4}[\quattroq]%
 \StrChar{#1}{5}[\cinqueq]%
-\unoq\dueq,\treq\quattroq\cinqueq%
+% if A.1
+\ifx\dueq\undefined
+indefinito
+% else A.1
+\else
+% if A.1.1
+\if\dueq.
+\unoq\dueq\treq\quattroq\cinqueq%
+% else A.1.1
+\else
+% if A.1.1.1
+\ifx\treq\undefined
+indefinito
+% else A.1.1.1
+\else
+% if A.1.1.1.1
+\if\treq.
+% 12.3 -> 1.23(10)
+\ispmpl{\unoq}.{\dueq}{\quattroq}\ispmpr\ispmtenf%
+% else A.1.1.1.1
+\else
+% if A.1.1.1.1.1
+\ifx\quattroq\undefined
+indefinito
+% else A.1.1.1.1.1
+\else
+% if A.1.1.1.1.1.1
+\if\quattroq.
+\ispmpl{\unoq}.{\dueq}{\treq}{\cinqueq}\ispmpr\ispmtenf$^2$%
+% else A.1.1.1.1.1.1
+\else
+\ispmpl{\unoq}.{\dueq}{\treq}{\quattroq}{\cinqueq}\ispmpr\ispmtenf$^4$%
+% fi A.1.1.1.1.1.1
+\fi
+% fi A.1.1.1.1.1
+\fi
+% fi A.1.1.1.1
+\fi
+% fi A.1.1.1
+\fi
+% fi A.1.1
+\fi
+% fi A.1
+\fi
+% fi A
+\fi
+%
+\ifnum\temp=6%
+\StrChar{#1}{1}[\unoq]%
+\StrChar{#1}{2}[\dueq]%
+\StrChar{#1}{3}[\treq]%
+\StrChar{#1}{4}[\quattroq]%
+\StrChar{#1}{5}[\cinqueq]%
+\StrChar{#1}{6}[\seiq]%
+% if A.1
+\ifx\dueq\undefined
+indefinito
+% else A.1
+\else
+% if A.1.1
+\if\dueq.
+\unoq\dueq\treq\quattroq\cinqueq\seiq%
+% else A.1.1
+\else
+% if A.1.1.1
+\ifx\treq\undefined
+indefinito
+% else A.1.1.1
+\else
+% if A.1.1.1.1
+\if\treq.
+% 12.3 -> 1.23(10)
+\ispmpl{\unoq}.{\dueq}{\quattroq}\ispmpr\ispmtenf%
+% else A.1.1.1.1
+\else
+% if A.1.1.1.1.1
+\ifx\quattroq\undefined
+indefinito
+% else A.1.1.1.1.1
+\else
+% if A.1.1.1.1.1.1
+\if\quattroq.
+%123.4 -> 1.234(10)^2
+\ispmpl{\unoq}.{\dueq}{\treq}{\cinqueq}\ispmpr\ispmtenf$^2$%
+% else A.1.1.1.1.1.1
+\else
+% if A.1.1.1.1.1.1.1
+\ifx\cinqueq\undefined
+indefinito
+% else A.1.1.1.1.1.1.1
+\else
+% if A.1.1.1.1.1.1.1.1
+\if\cinqueq.
+%1234.5 -> 1.2345(10)^3
+\ispmpl{\unoq}.{\dueq}{\treq}{\quattroq}{\seiq}\ispmpr\ispmtenf$^3$%
+% else A.1.1.1.1.1.1.1.1
+\else
+\ispmpl{\unoq}.{\dueq}{\treq}{\quattroq}{\cinqueq}{\seiq}\ispmpr\ispmtenf$^5$%
+% fi A.1.1.1.1.1.1.1.1
+\fi
+% fi A.1.1.1.1.1.1.1
+\fi
+% fi A.1.1.1.1.1.1
+\fi
+% fi A.1.1.1.1.1
+\fi
+% fi A.1.1.1.1
+\fi
+% fi A.1.1.1
+\fi
+% fi A.1.1
+\fi
+% fi A.1
+\fi
+% fi A
 \fi%
+%
+%
+% if A
+\ifnum\temp=7%
+\StrChar{#1}{1}[\unoq]%
+\StrChar{#1}{2}[\dueq]%
+\StrChar{#1}{3}[\treq]%
+\StrChar{#1}{4}[\quattroq]%
+\StrChar{#1}{5}[\cinqueq]%
+\StrChar{#1}{6}[\seiq]%
+\StrChar{#1}{7}[\setteq]%
+% if A.1
+\ifx\dueq\undefined
+indefinito
+% else A.1
+\else
+% if A.1.1
+\if\dueq.
+\unoq\dueq\treq\quattroq\cinqueq\seiq\setteq%
+% else A.1.1
+\else
+% if A.1.1.1
+\ifx\treq\undefined
+indefinito
+% else A.1.1.1
+\else
+% if A.1.1.1.1
+\if\treq.
+% 12.3 -> 1.23(10)
+\ispmpl{\unoq}.{\dueq}{\quattroq}\ispmpr\ispmtenf%
+% else A.1.1.1.1
+\else
+% if A.1.1.1.1.1
+\ifx\quattroq\undefined
+indefinito
+% else A.1.1.1.1.1
+\else
+% if A.1.1.1.1.1.1
+\if\quattroq.
+%123.4 -> 1.234(10)^2
+\ispmpl{\unoq}.{\dueq}{\treq}{\cinqueq}\ispmpr\ispmtenf$^2$%
+% else A.1.1.1.1.1.1
+\else
+% if A.1.1.1.1.1.1.1
+\ifx\cinqueq\undefined
+indefinito
+% else A.1.1.1.1.1.1.1
+\else
+% if A.1.1.1.1.1.1.1.1
+\if\cinqueq.
+%1234.5 -> 1.2345(10)^3
+\ispmpl{\unoq}.{\dueq}{\treq}{\quattroq}{\seiq}\ispmpr\ispmtenf$^3$%
+% else A.1.1.1.1.1.1.1.1
+\else
+% if A.1.1.1.1.1.1.1.1.1
+\if\seiq.
+%12345.6 -> 1.23456(10)^4
+\ispmpl{\unoq}.{\dueq}{\treq}{\quattroq}{\cinqueq}{\setteq}\ispmpr\ispmtenf$^4$%
+% else A.1.1.1.1.1.1.1.1.1
+\else
+\ispmpl{\unoq}.{\dueq}{\treq}{\quattroq}{\cinqueq}{\seiq}{\setteq}\ispmpr\ispmtenf$^6$%
+% fi A.1.1.1.1.1.1.1.1.1
+\fi
+% fi A.1.1.1.1.1.1.1.1
+\fi
+% fi A.1.1.1.1.1.1.1
+\fi
+% fi A.1.1.1.1.1.1
+\fi
+% fi A.1.1.1.1.1
+\fi
+% fi A.1.1.1.1
+\fi
+% fi A.1.1.1
+\fi
+% fi A.1.1
+\fi
+% fi A.1
+\fi
+% fi A
+\fi%
+%
+%
+% if A
+\ifnum\temp=8%
+\StrChar{#1}{1}[\unoq]%
+\StrChar{#1}{2}[\dueq]%
+\StrChar{#1}{3}[\treq]%
+\StrChar{#1}{4}[\quattroq]%
+\StrChar{#1}{5}[\cinqueq]%
+\StrChar{#1}{6}[\seiq]%
+\StrChar{#1}{7}[\setteq]%
+\StrChar{#1}{8}[\ottoq]%
+% if A.1
+\ifx\dueq\undefined
+indefinito
+% else A.1
+\else
+% if A.1.1
+\if\dueq.
+\unoq\dueq\treq\quattroq\cinqueq\seiq\setteq\ottoq%
+% else A.1.1
+\else
+% if A.1.1.1
+\ifx\treq\undefined
+indefinito
+% else A.1.1.1
+\else
+% if A.1.1.1.1
+\if\treq.
+% 12.3 -> 1.23(10)
+\ispmpl{\unoq}.{\dueq}{\quattroq}\ispmpr\ispmtenf%
+% else A.1.1.1.1
+\else
+% if A.1.1.1.1.1
+\ifx\quattroq\undefined
+indefinito
+% else A.1.1.1.1.1
+\else
+% if A.1.1.1.1.1.1
+\if\quattroq.
+\ispmpl{\unoq}.{\dueq}{\treq}{\cinqueq}\ispmpr\ispmtenf$^2$%
+% else A.1.1.1.1.1.1
+\else
+% if A.1.1.1.1.1.1.1
+\ifx\cinqueq\undefined
+indefinito
+% else A.1.1.1.1.1.1.1
+\else
+% if A.1.1.1.1.1.1.1.1
+\if\cinqueq.
+\ispmpl{\unoq}.{\dueq}{\treq}{\quattroq}{\seiq}\ispmpr\ispmtenf$^3$%
+% else A.1.1.1.1.1.1.1.1
+\else
+% if A.1.1.1.1.1.1.1.1.1
+\if\seiq.
+%12345.6 -> 1.23456(10)^4
+\ispmpl{\unoq}.{\dueq}{\treq}{\quattroq}{\cinqueq}{\setteq}\ispmpr\ispmtenf$^4$%
+% else A.1.1.1.1.1.1.1.1.1
+\else
+% if A.1.1.1.1.1.1.1.1.1.1
+\if\setteq.
+\ispmpl{\unoq}.{\dueq}{\treq}{\quattroq}{\cinqueq}{\seiq}{\ottoq}\ispmpr\ispmtenf$^5$%
+% else A.1.1.1.1.1.1.1.1.1.1
+\else
+\ispmpl{\unoq}.{\dueq}{\treq}{\quattroq}{\cinqueq}{\seiq}{\setteq}{\ottoq}\ispmpr\ispmtenf$^7$%
+% fi A.1.1.1.1.1.1.1.1.1.1
+\fi
+% fi A.1.1.1.1.1.1.1.1.1
+\fi
+% fi A.1.1.1.1.1.1.1.1
+\fi
+% fi A.1.1.1.1.1.1.1
+\fi
+% fi A.1.1.1.1.1.1
+\fi
+% fi A.1.1.1.1.1
+\fi
+% fi A.1.1.1.1
+\fi
+% fi A.1.1.1
+\fi
+% fi A.1.1
+\fi
+% fi A.1
+\fi
+% fi A
+\fi%
+%
+%
+% if A
+\ifnum\temp=9%
+\StrChar{#1}{1}[\unoq]%
+\StrChar{#1}{2}[\dueq]%
+\StrChar{#1}{3}[\treq]%
+\StrChar{#1}{4}[\quattroq]%
+\StrChar{#1}{5}[\cinqueq]%
+\StrChar{#1}{6}[\seiq]%
+\StrChar{#1}{7}[\setteq]%
+\StrChar{#1}{8}[\ottoq]%
+\StrChar{#1}{9}[\noveq]%
+% if A.1
+\ifx\dueq\undefined
+indefinito
+% else A.1
+\else
+% if A.1.1
+\if\dueq.
+\unoq\dueq\treq\quattroq\cinqueq\seiq\setteq\ottoq\noveq%
+% else A.1.1
+\else
+% if A.1.1.1
+\ifx\treq\undefined
+indefinito
+% else A.1.1.1
+\else
+% if A.1.1.1.1
+\if\treq.
+% 12.3 -> 1.23(10)
+\ispmpl{\unoq}.{\dueq}{\quattroq}\ispmpr\ispmtenf%
+% else A.1.1.1.1
+\else
+% if A.1.1.1.1.1
+\ifx\quattroq\undefined
+indefinito
+% else A.1.1.1.1.1
+\else
+% if A.1.1.1.1.1.1
+\if\quattroq.
+%123.4 -> 1.234(10)^2
+\ispmpl{\unoq}.{\dueq}{\treq}{\cinqueq}\ispmpr\ispmtenf$^2$%
+% else A.1.1.1.1.1.1
+\else
+% if A.1.1.1.1.1.1.1
+\ifx\cinqueq\undefined
+indefinito
+% else A.1.1.1.1.1.1.1
+\else
+% if A.1.1.1.1.1.1.1.1
+\if\cinqueq.
+%1234.5 -> 1.2345(10)^3
+\ispmpl{\unoq}.{\dueq}{\treq}{\quattroq}{\seiq}\ispmpr\ispmtenf$^3$%
+% else A.1.1.1.1.1.1.1.1
+\else
+% if A.1.1.1.1.1.1.1.1.1
+\if\seiq.
+%12345.6 -> 1.23456(10)^4
+\ispmpl{\unoq}.{\dueq}{\treq}{\quattroq}{\cinqueq}{\setteq}\ispmpr\ispmtenf$^4$%
+% else A.1.1.1.1.1.1.1.1.1
+\else
+% if A.1.1.1.1.1.1.1.1.1.1
+\if\setteq.
+%123456.7 -> 1.234567(10)^5
+\ispmpl{\unoq}.{\dueq}{\treq}{\quattroq}{\cinqueq}{\seiq}{\ottoq}\ispmpr\ispmtenf$^5$%
+% else A.1.1.1.1.1.1.1.1.1.1
+\else
+% if A.1.1.1.1.1.1.1.1.1.1.1
+\if\ottoq.
+%1234567.8 -> 1.2345678(10)^6
+\ispmpl{\unoq}.{\dueq}{\treq}{\quattroq}{\cinqueq}{\seiq}{\setteq}{\noveq}\ispmpr\ispmtenf$^6$%
+% else A.1.1.1.1.1.1.1.1.1.1.1
+\else
+\ispmpl{\unoq}.{\dueq}{\treq}{\quattroq}{\cinqueq}{\seiq}{\setteq}{\ottoq}{\noveq}\ispmpr\ispmtenf$^8$%
+% fi A.1.1.1.1.1.1.1.1.1.1.1
+\fi
+% fi A.1.1.1.1.1.1.1.1.1.1
+\fi
+% fi A.1.1.1.1.1.1.1.1.1
+\fi
+% fi A.1.1.1.1.1.1.1.1
+\fi
+% fi A.1.1.1.1.1.1.1
+\fi
+% fi A.1.1.1.1.1.1
+\fi
+% fi A.1.1.1.1.1
+\fi
+% fi A.1.1.1.1
+\fi
+% fi A.1.1.1
+\fi
+% fi A.1.1
+\fi
+% fi A.1
+\fi
+% fi A
+\fi%
+%
+}
+%
+%
+%
+%% Esponenti positivi Reali con la prima cifra "leading", quelle a dx invece troncate
+\newcommand{\ispmdexppt}[1]{%
+%
+%% Two digits, two arguments
+\StrLen{#1}[\temp]%
+\ifnum\temp=2%
+\StrChar{#1}{1}[\unoq]%
+\StrChar{#1}{2}[\dueq]%
+\ispmpl{\unoq}\ispmpr\ispmtenf%
+\fi%
+%
+% Three arguments
+\ifnum\temp=3%
+\StrChar{#1}{1}[\unoq]%
+\StrChar{#1}{2}[\dueq]%
+\StrChar{#1}{3}[\treq]%
+% if A.1
+\ifx\dueq\undefined
+indefinito
+% else A.1
+\else
+% Two digits, three arguments \\
+% if A.1.1
+\if\dueq.
+\unoq%
+% else A.1.1
+\else
+% Three digits, three arguments \\
+\ispmpl{\unoq}\ispmpr\ispmtenf$^2$%
+% fi A.1.1
+\fi
+% fi A.1
+\fi
+% fi A
+\fi%
+%
+%
+% if A
+\ifnum\temp=4%
+\StrChar{#1}{1}[\unoq]%
+\StrChar{#1}{2}[\dueq]%
+\StrChar{#1}{3}[\treq]%
+\StrChar{#1}{4}[\quattroq]%
+% if A.1
+\ifx\dueq\undefined
+indefinito
+% else A.1
+\else
+% if A.1.1
+\if\dueq.
+\unoq%
+% else A.1.1
+\else
+% if A.1.1.1
+\ifx\treq\undefined
+indefinito
+% else A.1.1.1
+\else
+% if A.1.1.1.1
+\if\treq.
+\ispmpl{\unoq}\ispmpr\ispmtenf%
+% else A.1.1.1.1
+\else
+\ispmpl{\unoq}\ispmpr\ispmtenf$^3$%
+% fi A.1.1.1.1
+\fi
+% fi A.1.1.1
+\fi
+% fi A.1.1
+\fi
+% fi A.1
+\fi
+% fi A
+\fi%
+%
+% if A
+\ifnum\temp=5%
+\StrChar{#1}{1}[\unoq]%
+\StrChar{#1}{2}[\dueq]%
+\StrChar{#1}{3}[\treq]%
+\StrChar{#1}{4}[\quattroq]%
+\StrChar{#1}{5}[\cinqueq]%
+% if A.1
+\ifx\dueq\undefined
+indefinito
+% else A.1
+\else
+% if A.1.1
+\if\dueq.
+\unoq%
+% else A.1.1
+\else
+% if A.1.1.1
+\ifx\treq\undefined
+indefinito
+% else A.1.1.1
+\else
+% if A.1.1.1.1
+\if\treq.
+\ispmpl{\unoq}\ispmpr\ispmtenf%
+% else A.1.1.1.1
+\else
+% if A.1.1.1.1.1
+\ifx\quattroq\undefined
+indefinito
+% else A.1.1.1.1.1
+\else
+% if A.1.1.1.1.1.1
+\if\quattroq.
+\ispmpl{\unoq}\ispmpr\ispmtenf$^2$%
+% else A.1.1.1.1.1.1
+\else
+\ispmpl{\unoq}\ispmpr\ispmtenf$^4$%
+% fi A.1.1.1.1.1.1
+\fi
+% fi A.1.1.1.1.1
+\fi
+% fi A.1.1.1.1
+\fi
+% fi A.1.1.1
+\fi
+% fi A.1.1
+\fi
+% fi A.1
+\fi
+% fi A
+\fi
+%
 \ifnum\temp=6%
 \StrChar{#1}{1}[\unoq]%
 \StrChar{#1}{2}[\dueq]%
@@ -124,8 +823,68 @@
 \StrChar{#1}{4}[\quattroq]%
 \StrChar{#1}{5}[\cinqueq]%
 \StrChar{#1}{6}[\seiq]%
-\unoq\dueq\treq,\quattroq\cinqueq\seiq%
+% if A.1
+\ifx\dueq\undefined
+indefinito
+% else A.1
+\else
+% if A.1.1
+\if\dueq.
+\unoq%
+% else A.1.1
+\else
+% if A.1.1.1
+\ifx\treq\undefined
+indefinito
+% else A.1.1.1
+\else
+% if A.1.1.1.1
+\if\treq.
+\ispmpl{\unoq}\ispmpr\ispmtenf%
+% else A.1.1.1.1
+\else
+% if A.1.1.1.1.1
+\ifx\quattroq\undefined
+indefinito
+% else A.1.1.1.1.1
+\else
+% if A.1.1.1.1.1.1
+\if\quattroq.
+\ispmpl{\unoq}\ispmpr\ispmtenf$^2$%
+% else A.1.1.1.1.1.1
+\else
+% if A.1.1.1.1.1.1.1
+\ifx\cinqueq\undefined
+indefinito
+% else A.1.1.1.1.1.1.1
+\else
+% if A.1.1.1.1.1.1.1.1
+\if\cinqueq.
+\ispmpl{\unoq}\ispmpr\ispmtenf$^3$%
+% else A.1.1.1.1.1.1.1.1
+\else
+\ispmpl{\unoq}\ispmpr\ispmtenf$^5$%
+% fi A.1.1.1.1.1.1.1.1
+\fi
+% fi A.1.1.1.1.1.1.1
+\fi
+% fi A.1.1.1.1.1.1
+\fi
+% fi A.1.1.1.1.1
+\fi
+% fi A.1.1.1.1
+\fi
+% fi A.1.1.1
+\fi
+% fi A.1.1
+\fi
+% fi A.1
+\fi
+% fi A
 \fi%
+%
+%
+% if A
 \ifnum\temp=7%
 \StrChar{#1}{1}[\unoq]%
 \StrChar{#1}{2}[\dueq]%
@@ -134,8 +893,75 @@
 \StrChar{#1}{5}[\cinqueq]%
 \StrChar{#1}{6}[\seiq]%
 \StrChar{#1}{7}[\setteq]%
-\unoq,\dueq\treq\quattroq,\cinqueq\seiq\setteq%
+% if A.1
+\ifx\dueq\undefined
+indefinito
+% else A.1
+\else
+% if A.1.1
+\if\dueq.
+\unoq%
+% else A.1.1
+\else
+% if A.1.1.1
+\ifx\treq\undefined
+indefinito
+% else A.1.1.1
+\else
+% if A.1.1.1.1
+\if\treq.
+\ispmpl{\unoq}\ispmpr\ispmtenf%
+% else A.1.1.1.1
+\else
+% if A.1.1.1.1.1
+\ifx\quattroq\undefined
+indefinito
+% else A.1.1.1.1.1
+\else
+% if A.1.1.1.1.1.1
+\if\quattroq.
+\ispmpl{\unoq}\ispmpr\ispmtenf$^2$%
+% else A.1.1.1.1.1.1
+\else
+% if A.1.1.1.1.1.1.1
+\ifx\cinqueq\undefined
+indefinito
+% else A.1.1.1.1.1.1.1
+\else
+% if A.1.1.1.1.1.1.1.1
+\if\cinqueq.
+\ispmpl{\unoq}\ispmpr\ispmtenf$^3$%
+% else A.1.1.1.1.1.1.1.1
+\else
+% if A.1.1.1.1.1.1.1.1.1
+\if\seiq.
+\ispmpl{\unoq}\ispmpr\ispmtenf$^4$%
+% else A.1.1.1.1.1.1.1.1.1
+\else
+\ispmpl{\unoq}\ispmpr\ispmtenf$^6$%
+% fi A.1.1.1.1.1.1.1.1.1
+\fi
+% fi A.1.1.1.1.1.1.1.1
+\fi
+% fi A.1.1.1.1.1.1.1
+\fi
+% fi A.1.1.1.1.1.1
+\fi
+% fi A.1.1.1.1.1
+\fi
+% fi A.1.1.1.1
+\fi
+% fi A.1.1.1
+\fi
+% fi A.1.1
+\fi
+% fi A.1
+\fi
+% fi A
 \fi%
+%
+%
+% if A
 \ifnum\temp=8%
 \StrChar{#1}{1}[\unoq]%
 \StrChar{#1}{2}[\dueq]%
@@ -145,8 +971,82 @@
 \StrChar{#1}{6}[\seiq]%
 \StrChar{#1}{7}[\setteq]%
 \StrChar{#1}{8}[\ottoq]%
-\unoq\dueq,\treq\quattroq\cinqueq,\seiq\setteq\ottoq%
+% if A.1
+\ifx\dueq\undefined
+indefinito
+% else A.1
+\else
+% if A.1.1
+\if\dueq.
+\unoq%
+% else A.1.1
+\else
+% if A.1.1.1
+\ifx\treq\undefined
+indefinito
+% else A.1.1.1
+\else
+% if A.1.1.1.1
+\if\treq.
+\ispmpl{\unoq}\ispmpr\ispmtenf%
+% else A.1.1.1.1
+\else
+% if A.1.1.1.1.1
+\ifx\quattroq\undefined
+indefinito
+% else A.1.1.1.1.1
+\else
+% if A.1.1.1.1.1.1
+\if\quattroq.
+\ispmpl{\unoq}\ispmpr\ispmtenf$^2$%
+% else A.1.1.1.1.1.1
+\else
+% if A.1.1.1.1.1.1.1
+\ifx\cinqueq\undefined
+indefinito
+% else A.1.1.1.1.1.1.1
+\else
+% if A.1.1.1.1.1.1.1.1
+\if\cinqueq.
+\ispmpl{\unoq}\ispmpr\ispmtenf$^3$%
+% else A.1.1.1.1.1.1.1.1
+\else
+% if A.1.1.1.1.1.1.1.1.1
+\if\seiq.
+\ispmpl{\unoq}\ispmpr\ispmtenf$^4$%
+% else A.1.1.1.1.1.1.1.1.1
+\else
+% if A.1.1.1.1.1.1.1.1.1.1
+\if\setteq.
+\ispmpl{\unoq}\ispmpr\ispmtenf$^5$%
+% else A.1.1.1.1.1.1.1.1.1.1
+\else
+\ispmpl{\unoq}\ispmpr\ispmtenf$^7$%
+% fi A.1.1.1.1.1.1.1.1.1.1
+\fi
+% fi A.1.1.1.1.1.1.1.1.1
+\fi
+% fi A.1.1.1.1.1.1.1.1
+\fi
+% fi A.1.1.1.1.1.1.1
+\fi
+% fi A.1.1.1.1.1.1
+\fi
+% fi A.1.1.1.1.1
+\fi
+% fi A.1.1.1.1
+\fi
+% fi A.1.1.1
+\fi
+% fi A.1.1
+\fi
+% fi A.1
+\fi
+% fi A
 \fi%
+%
+%
+% if A
 \ifnum\temp=9%
 \StrChar{#1}{1}[\unoq]%
 \StrChar{#1}{2}[\dueq]%
@@ -157,42 +1057,709 @@
 \StrChar{#1}{7}[\setteq]%
 \StrChar{#1}{8}[\ottoq]%
 \StrChar{#1}{9}[\noveq]%
-\unoq\dueq\treq,\quattroq\cinqueq\seiq,\setteq\ottoq\noveq%
+% if A.1
+\ifx\dueq\undefined
+indefinito
+% else A.1
+\else
+% if A.1.1
+\if\dueq.
+\unoq%
+% else A.1.1
+\else
+% if A.1.1.1
+\ifx\treq\undefined
+indefinito
+% else A.1.1.1
+\else
+% if A.1.1.1.1
+\if\treq.
+\ispmpl{\unoq}\ispmpr\ispmtenf%
+% else A.1.1.1.1
+\else
+% if A.1.1.1.1.1
+\ifx\quattroq\undefined
+indefinito
+% else A.1.1.1.1.1
+\else
+% if A.1.1.1.1.1.1
+\if\quattroq.
+\ispmpl{\unoq}\ispmpr\ispmtenf$^2$%
+% else A.1.1.1.1.1.1
+\else
+% if A.1.1.1.1.1.1.1
+\ifx\cinqueq\undefined
+indefinito
+% else A.1.1.1.1.1.1.1
+\else
+% if A.1.1.1.1.1.1.1.1
+\if\cinqueq.
+\ispmpl{\unoq}\ispmpr\ispmtenf$^3$%
+% else A.1.1.1.1.1.1.1.1
+\else
+% if A.1.1.1.1.1.1.1.1.1
+\if\seiq.
+\ispmpl{\unoq}\ispmpr\ispmtenf$^4$%
+% else A.1.1.1.1.1.1.1.1.1
+\else
+% if A.1.1.1.1.1.1.1.1.1.1
+\if\setteq.
+\ispmpl{\unoq}\ispmpr\ispmtenf$^5$%
+% else A.1.1.1.1.1.1.1.1.1.1
+\else
+% if A.1.1.1.1.1.1.1.1.1.1.1
+\if\ottoq.
+\ispmpl{\unoq}\ispmpr\ispmtenf$^6$%
+% else A.1.1.1.1.1.1.1.1.1.1.1
+\else
+\ispmpl{\unoq}\ispmpr\ispmtenf$^8$%
+% fi A.1.1.1.1.1.1.1.1.1.1.1
+\fi
+% fi A.1.1.1.1.1.1.1.1.1.1
+\fi
+% fi A.1.1.1.1.1.1.1.1.1
+\fi
+% fi A.1.1.1.1.1.1.1.1
+\fi
+% fi A.1.1.1.1.1.1.1
+\fi
+% fi A.1.1.1.1.1.1
+\fi
+% fi A.1.1.1.1.1
+\fi
+% fi A.1.1.1.1
+\fi
+% fi A.1.1.1
+\fi
+% fi A.1.1
+\fi
+% fi A.1
+\fi
+% fi A
 \fi%
+%
 }
+
+%% Esponenti positivi con la prima cifra "leading", cifre troncate a dx
+% Commentato perché limitante, quello per i numeri reali invece è completo (universale).
+%\newcommand{\ispmdexppt}[1]{%
+%\StrLen{#1}[\temp]%
+%\ifnum\temp=2%
+%\StrChar{#1}{1}[\unoq]%
+%\StrChar{#1}{2}[\dueq]%
+%\ispmpl{\unoq}\ispmpr\ispmtenf%
+%\fi%
+%\ifnum\temp=3%
+%\StrChar{#1}{1}[\unoq]%
+%\StrChar{#1}{2}[\dueq]%
+%\StrChar{#1}{3}[\treq]%
+%\ispmpl{\unoq}\ispmpr\ispmtenf$^2$%
+%\fi%
+%\ifnum\temp=4%
+%\StrChar{#1}{1}[\unoq]%
+%\StrChar{#1}{2}[\dueq]%
+%\StrChar{#1}{3}[\treq]%
+%\StrChar{#1}{4}[\quattroq]%
+%\ispmpl{\unoq}\ispmpr\ispmtenf$^3$%
+%\fi%
+%\ifnum\temp=5%
+%\StrChar{#1}{1}[\unoq]%
+%\StrChar{#1}{2}[\dueq]%
+%\StrChar{#1}{3}[\treq]%
+%\StrChar{#1}{4}[\quattroq]%
+%\StrChar{#1}{5}[\cinqueq]%
+%\ispmpl{\unoq}\ispmpr\ispmtenf$^4$%
+%\fi%
+%\ifnum\temp=6%
+%\StrChar{#1}{1}[\unoq]%
+%\StrChar{#1}{2}[\dueq]%
+%\StrChar{#1}{3}[\treq]%
+%\StrChar{#1}{4}[\quattroq]%
+%\StrChar{#1}{5}[\cinqueq]%
+%\StrChar{#1}{6}[\seiq]%
+%\ispmpl{\unoq}\ispmpr\ispmtenf$^5$%
+%\fi%
+%\ifnum\temp=7%
+%\StrChar{#1}{1}[\unoq]%
+%\StrChar{#1}{2}[\dueq]%
+%\StrChar{#1}{3}[\treq]%
+%\StrChar{#1}{4}[\quattroq]%
+%\StrChar{#1}{5}[\cinqueq]%
+%\StrChar{#1}{6}[\seiq]%
+%\StrChar{#1}{7}[\setteq]%
+%\ispmpl{\unoq}\ispmpr\ispmtenf$^6$%
+%\fi%
+%\ifnum\temp=8%
+%\StrChar{#1}{1}[\unoq]%
+%\StrChar{#1}{2}[\dueq]%
+%\StrChar{#1}{3}[\treq]%
+%\StrChar{#1}{4}[\quattroq]%
+%\StrChar{#1}{5}[\cinqueq]%
+%\StrChar{#1}{6}[\seiq]%
+%\StrChar{#1}{7}[\setteq]%
+%\StrChar{#1}{8}[\ottoq]%
+%\ispmpl{\unoq}\ispmpr\ispmtenf$^7$%
+%\fi%
+%\ifnum\temp=9%
+%\StrChar{#1}{1}[\unoq]%
+%\StrChar{#1}{2}[\dueq]%
+%\StrChar{#1}{3}[\treq]%
+%\StrChar{#1}{4}[\quattroq]%
+%\StrChar{#1}{5}[\cinqueq]%
+%\StrChar{#1}{6}[\seiq]%
+%\StrChar{#1}{7}[\setteq]%
+%\StrChar{#1}{8}[\ottoq]%
+%\StrChar{#1}{9}[\noveq]%
+%\ispmpl{\unoq}\ispmpr\ispmtenf$^8$%
+%\fi%
+%}
+
+%% Esponenti negativi di numeri razionali (che si risolvono in numeri non interi)
+% senza cifre troncate a dx del punto
+\newcommand{\ispmdexpm}[1]{%
+\StrLen{#1}[\temp]%
+%% Inizio con 3 perché il punto è considerato argomento,
+% quindi e.g. 0.1 ha tre argomenti.
+\ifnum\temp=3%
+\StrChar{#1}{1}[\unoq]%
+\StrChar{#1}{2}[\dueq]%
+\StrChar{#1}{3}[\treq]%
+\ispmpl{\treq}\ispmpr\ispmtenf$^{-1}$%
+\fi%
+\ifnum\temp=4%
+\StrChar{#1}{1}[\unoq]%
+\StrChar{#1}{2}[\dueq]%
+\StrChar{#1}{3}[\treq]%
+\StrChar{#1}{4}[\quattroq]%
+\ifx\treq\undefined
+indefinito
+\else
+  \if\treq0
+\ispmpl{\quattroq}\ispmpr\ispmtenf$^{-2}$%
+    \else
+\ispmpl{\treq.\quattroq}\ispmpr\ispmtenf$^{-1}$%
+  \fi
+\fi
+\fi%
+% if A
+\ifnum\temp=5%
+\StrChar{#1}{1}[\unoq]%
+\StrChar{#1}{2}[\dueq]%
+\StrChar{#1}{3}[\treq]%
+\StrChar{#1}{4}[\quattroq]%
+\StrChar{#1}{5}[\cinqueq]%
+% if A.1
+\ifx\treq\undefined
+indefinito
+% else A.1
+\else
+% if A.1.1
+\if\treq0
+% if A.1.1.1
+\if\quattroq0
+\ispmpl{\cinqueq}\ispmpr\ispmtenf$^{-3}$%
+% else A.1.1.1
+\else
+\ispmpl{\quattroq.\cinqueq}\ispmpr\ispmtenf$^{-2}$%
+% fi A.1.1.1
+\fi
+% else A.1.1
+\else
+\ispmpl{\treq.\quattroq\cinqueq}\ispmpr\ispmtenf$^{-1}$%
+% fi A.1.1
+\fi
+% fi A.1
+\fi
+% fi A
+\fi
 %
 %
-% Formatting section:
-% a small space between value and measurement unit
-\newcommand{\ispms}{\,}
-% normal text rendering for first measurement unit
-\newcommand{\ispmntone}[1]{\textnormal{#1}}
-% jolly: the default setting consists in --- a $0.15\ispmone{mm}$ of space
-% and normal text rendering for a generic 'entity'.
-% If you are a developer, you can modify it when and how you want.
-\newcommand{\ispm}[1]{\hspace{0.15mm}\textnormal{#1}}
-% normal text rendering for first and second measurement units
-\newcommand{\ispmnttwo}[2]{\textnormal{#1}\textnormal{#2}}
-% space between first and second measurement units
-\newcommand{\ispmss}{\hspace{0.15mm}}
-% \ispm if you have only a measurement unit
-% e.g. $F = 20 \ispmone{N}$
-\newcommand{\ispmone}{\ispms\ispmntone}
-% \ispm if you have two measurement units
-% e.g. $L = 20 \ispmtwo{N}{m}$
-\newcommand{\ispmtwo}[2]{\ispms\ispmnttwo\ispmss{#1}\ispmnttwo\ispmss{#2}}
-% ispm if you have three measurement units
-% e.g. $V = 8 \ispmtwo{m}{m}\ispmthird{m}$
-\newcommand{\ispmthird}[1]{\ispmss\ispm{#1}}
-% and so on until ninth measurement unit
-\newcommand{\ispmfourth}[1]{\ispmss\ispm{#1}}
-\newcommand{\ispmfifth}[1]{\ispmss\ispm{#1}}
-\newcommand{\ispmsixth}[1]{\ispmss\ispm{#1}}
-\newcommand{\ispmseventh}[1]{\ispmss\ispm{#1}}
-\newcommand{\ispmeighth}[1]{\ispmss\ispm{#1}}
-\newcommand{\ispmninth}[1]{\ispmss\ispm{#1}}
-% If you don't want numerical order, you could use generic \ispmn command
-\newcommand{\ispmn}[1]{\ispmss\ispm{#1}}
+% if A
+\ifnum\temp=6%
+\StrChar{#1}{1}[\unoq]%
+\StrChar{#1}{2}[\dueq]%
+\StrChar{#1}{3}[\treq]%
+\StrChar{#1}{4}[\quattroq]%
+\StrChar{#1}{5}[\cinqueq]%
+\StrChar{#1}{6}[\seiq]%
+% if A.1
+\ifx\treq\undefined
+indefinito
+% else A.1
+\else
+% if A.1.1
+\if\treq0
+% if A.1.1.1
+\if\quattroq0
+% if A.1.1.1.1
+\if\cinqueq0
+\ispmpl{\seiq}\ispmpr\ispmtenf$^{-4}$%
+% else A.1.1.1.1
+\else
+\ispmpl{\cinqueq.\seiq}\ispmpr\ispmtenf$^{-3}$%
+% fi A.1.1.1.1
+\fi
+% else A.1.1.1
+\else
+\ispmpl{\quattroq.\cinqueq\seiq}\ispmpr\ispmtenf$^{-2}$%
+% fi A.1.1.1
+\fi
+% else A.1.1
+\else
+\ispmpl{\treq.\quattroq\cinqueq\seiq}\ispmpr\ispmtenf$^{-1}$%
+% fi A.1.1
+\fi
+% fi A.1
+\fi
+% fi A
+\fi
+%
+%
+% if A
+\ifnum\temp=7%
+\StrChar{#1}{1}[\unoq]%
+\StrChar{#1}{2}[\dueq]%
+\StrChar{#1}{3}[\treq]%
+\StrChar{#1}{4}[\quattroq]%
+\StrChar{#1}{5}[\cinqueq]%
+\StrChar{#1}{6}[\seiq]%
+\StrChar{#1}{7}[\setteq]%
+% if A.1
+\ifx\treq\undefined
+indefinito
+% else A.1
+\else
+% if A.1.1
+\if\treq0
+% if A.1.1.1
+\if\quattroq0
+% if A.1.1.1.1
+\if\cinqueq0
+% if A.1.1.1.1.1
+\if\seiq0
+\ispmpl{\setteq}\ispmpr\ispmtenf$^{-5}$%
+% else A.1.1.1.1.1
+\else
+\ispmpl{\seiq.\setteq}\ispmpr\ispmtenf$^{-4}$%
+% fi A.1.1.1.1.1
+\fi
+% else A.1.1.1.1
+\else
+\ispmpl{\cinqueq.\seiq\setteq}\ispmpr\ispmtenf$^{-3}$%
+% fi A.1.1.1.1
+\fi
+% else A.1.1.1
+\else
+\ispmpl{\quattroq.\cinqueq\seiq\setteq}\ispmpr\ispmtenf$^{-2}$%
+% fi A.1.1.1
+\fi
+% else A.1.1
+\else
+\ispmpl{\treq.\quattroq\cinqueq\seiq\setteq}\ispmpr\ispmtenf$^{-1}$%
+% fi A.1.1
+\fi
+% fi A.1
+\fi
+% fi A
+\fi
+%
+%
+% if A
+\ifnum\temp=8%
+\StrChar{#1}{1}[\unoq]%
+\StrChar{#1}{2}[\dueq]%
+\StrChar{#1}{3}[\treq]%
+\StrChar{#1}{4}[\quattroq]%
+\StrChar{#1}{5}[\cinqueq]%
+\StrChar{#1}{6}[\seiq]%
+\StrChar{#1}{7}[\setteq]%
+\StrChar{#1}{8}[\ottoq]%
+% if A.1
+\ifx\treq\undefined
+indefinito
+% else A.1
+\else
+% if A.1.1
+\if\treq0
+% if A.1.1.1
+\if\quattroq0
+% if A.1.1.1.1
+\if\cinqueq0
+% if A.1.1.1.1.1
+\if\seiq0
+% if A.1.1.1.1.1.1
+\if\setteq0
+\ispmpl{\ottoq}\ispmpr\ispmtenf$^{-6}$%
+% else A.1.1.1.1.1.1
+\else
+\ispmpl{\setteq.\ottoq}\ispmpr\ispmtenf$^{-5}$%
+% fi A.1.1.1.1.1.1
+\fi
+% else A.1.1.1.1.1
+\else
+\ispmpl{\seiq.\setteq\ottoq}\ispmpr\ispmtenf$^{-4}$%
+% fi A.1.1.1.1.1
+\fi
+% else A.1.1.1.1
+\else
+\ispmpl{\cinqueq.\seiq\setteq\ottoq}\ispmpr\ispmtenf$^{-3}$%
+% fi A.1.1.1.1
+\fi
+% else A.1.1.1
+\else
+\ispmpl{\quattroq.\cinqueq\seiq\setteq\ottoq}\ispmpr\ispmtenf$^{-2}$%
+% fi A.1.1.1
+\fi
+% else A.1.1
+\else
+\ispmpl{\treq.\quattroq\cinqueq\seiq\setteq\ottoq}\ispmpr\ispmtenf$^{-1}$%
+% fi A.1.1
+\fi
+% fi A.1
+\fi
+% fi A
+\fi
+%
+%
+% if A
+\ifnum\temp=9%
+\StrChar{#1}{1}[\unoq]%
+\StrChar{#1}{2}[\dueq]%
+\StrChar{#1}{3}[\treq]%
+\StrChar{#1}{4}[\quattroq]%
+\StrChar{#1}{5}[\cinqueq]%
+\StrChar{#1}{6}[\seiq]%
+\StrChar{#1}{7}[\setteq]%
+\StrChar{#1}{8}[\ottoq]%
+\StrChar{#1}{9}[\noveq]%
+% if A.1
+\ifx\treq\undefined
+indefinito
+% else A.1
+\else
+% if A.1.1
+\if\treq0
+% if A.1.1.1
+\if\quattroq0
+% if A.1.1.1.1
+\if\cinqueq0
+% if A.1.1.1.1.1
+\if\seiq0
+% if A.1.1.1.1.1.1
+\if\setteq0
+% if A.1.1.1.1.1.1.1
+\if\ottoq0
+\ispmpl{\noveq}\ispmpr\ispmtenf$^{-7}$%
+% else A.1.1.1.1.1.1.1
+\else
+\ispmpl{\ottoq.\noveq}\ispmpr\ispmtenf$^{-6}$%
+% if A.1.1.1.1.1.1.1
+\fi
+% else A.1.1.1.1.1.1
+\else
+\ispmpl{\setteq.\ottoq\noveq}\ispmpr\ispmtenf$^{-5}$%
+% fi A.1.1.1.1.1.1
+\fi
+% else A.1.1.1.1.1
+\else
+\ispmpl{\seiq.\setteq\ottoq\noveq}\ispmpr\ispmtenf$^{-4}$%
+% fi A.1.1.1.1.1
+\fi
+% else A.1.1.1.1
+\else
+\ispmpl{\cinqueq.\seiq\setteq\ottoq\noveq}\ispmpr\ispmtenf$^{-3}$%
+% fi A.1.1.1.1
+\fi
+% else A.1.1.1
+\else
+\ispmpl{\quattroq.\cinqueq\seiq\setteq\ottoq\noveq}\ispmpr\ispmtenf$^{-2}$%
+% fi A.1.1.1
+\fi
+% else A.1.1
+\else
+\ispmpl{\treq.\quattroq\cinqueq\seiq\setteq\ottoq\noveq}\ispmpr\ispmtenf$^{-1}$%
+% fi A.1.1
+\fi
+% fi A.1
+\fi
+% fi A
+\fi
+%
+}
+%
+% Esponenti negativi di numeri razionali (che si risolvono in numeri non interi), con cifre troncate a dx del punto
+\newcommand{\ispmdexpmt}[1]{%
+\StrLen{#1}[\temp]%
+%% Inizio con 3 perché il punto è considerato argomento,
+% quindi e.g. 0.1 ha tre argomenti.
+\ifnum\temp=3%
+\StrChar{#1}{1}[\unoq]%
+\StrChar{#1}{2}[\dueq]%
+\StrChar{#1}{3}[\treq]%
+\ispmpl{\treq}\ispmpr\ispmtenf$^{-1}$%
+\fi%
+\ifnum\temp=4%
+\StrChar{#1}{1}[\unoq]%
+\StrChar{#1}{2}[\dueq]%
+\StrChar{#1}{3}[\treq]%
+\StrChar{#1}{4}[\quattroq]%
+\ifx\treq\undefined
+indefinito
+\else
+  \if\treq0
+\ispmpl{\quattroq}\ispmpr\ispmtenf$^{-2}$%
+    \else
+\ispmpl{\treq}\ispmpr\ispmtenf$^{-1}$%
+  \fi
+\fi
+\fi%
+% if A
+\ifnum\temp=5%
+\StrChar{#1}{1}[\unoq]%
+\StrChar{#1}{2}[\dueq]%
+\StrChar{#1}{3}[\treq]%
+\StrChar{#1}{4}[\quattroq]%
+\StrChar{#1}{5}[\cinqueq]%
+% if A.1
+\ifx\treq\undefined
+indefinito
+% else A.1
+\else
+% if A.1.1
+\if\treq0
+% if A.1.1.1
+\if\quattroq0
+\ispmpl{\cinqueq}\ispmpr\ispmtenf$^{-3}$%
+% else A.1.1.1
+\else
+\ispmpl{\quattroq}\ispmpr\ispmtenf$^{-2}$%
+% fi A.1.1.1
+\fi
+% else A.1.1
+\else
+\ispmpl{\treq}\ispmpr\ispmtenf$^{-1}$%
+% fi A.1.1
+\fi
+% fi A.1
+\fi
+% fi A
+\fi
+%
+%
+% if A
+\ifnum\temp=6%
+\StrChar{#1}{1}[\unoq]%
+\StrChar{#1}{2}[\dueq]%
+\StrChar{#1}{3}[\treq]%
+\StrChar{#1}{4}[\quattroq]%
+\StrChar{#1}{5}[\cinqueq]%
+\StrChar{#1}{6}[\seiq]%
+% if A.1
+\ifx\treq\undefined
+indefinito
+% else A.1
+\else
+% if A.1.1
+\if\treq0
+% if A.1.1.1
+\if\quattroq0
+% if A.1.1.1.1
+\if\cinqueq0
+\ispmpl{\seiq}\ispmpr\ispmtenf$^{-4}$%
+% else A.1.1.1.1
+\else
+\ispmpl{\cinqueq}\ispmpr\ispmtenf$^{-3}$%
+% fi A.1.1.1.1
+\fi
+% else A.1.1.1
+\else
+\ispmpl{\quattroq}\ispmpr\ispmtenf$^{-2}$%
+% fi A.1.1.1
+\fi
+% else A.1.1
+\else
+\ispmpl{\treq}\ispmpr\ispmtenf$^{-1}$%
+% fi A.1.1
+\fi
+% fi A.1
+\fi
+% fi A
+\fi
+%
+%
+% if A
+\ifnum\temp=7%
+\StrChar{#1}{1}[\unoq]%
+\StrChar{#1}{2}[\dueq]%
+\StrChar{#1}{3}[\treq]%
+\StrChar{#1}{4}[\quattroq]%
+\StrChar{#1}{5}[\cinqueq]%
+\StrChar{#1}{6}[\seiq]%
+\StrChar{#1}{7}[\setteq]%
+% if A.1
+\ifx\treq\undefined
+indefinito
+% else A.1
+\else
+% if A.1.1
+\if\treq0
+% if A.1.1.1
+\if\quattroq0
+% if A.1.1.1.1
+\if\cinqueq0
+% if A.1.1.1.1.1
+\if\seiq0
+\ispmpl{\setteq}\ispmpr\ispmtenf$^{-5}$%
+% else A.1.1.1.1.1
+\else
+\ispmpl{\seiq}\ispmpr\ispmtenf$^{-4}$%
+% fi A.1.1.1.1.1
+\fi
+% else A.1.1.1.1
+\else
+\ispmpl{\cinqueq}\ispmpr\ispmtenf$^{-3}$%
+% fi A.1.1.1.1
+\fi
+% else A.1.1.1
+\else
+\ispmpl{\quattroq}\ispmpr\ispmtenf$^{-2}$%
+% fi A.1.1.1
+\fi
+% else A.1.1
+\else
+\ispmpl{\treq}\ispmpr\ispmtenf$^{-1}$%
+% fi A.1.1
+\fi
+% fi A.1
+\fi
+% fi A
+\fi
+%
+%
+% if A
+\ifnum\temp=8%
+\StrChar{#1}{1}[\unoq]%
+\StrChar{#1}{2}[\dueq]%
+\StrChar{#1}{3}[\treq]%
+\StrChar{#1}{4}[\quattroq]%
+\StrChar{#1}{5}[\cinqueq]%
+\StrChar{#1}{6}[\seiq]%
+\StrChar{#1}{7}[\setteq]%
+\StrChar{#1}{8}[\ottoq]%
+% if A.1
+\ifx\treq\undefined
+indefinito
+% else A.1
+\else
+% if A.1.1
+\if\treq0
+% if A.1.1.1
+\if\quattroq0
+% if A.1.1.1.1
+\if\cinqueq0
+% if A.1.1.1.1.1
+\if\seiq0
+% if A.1.1.1.1.1.1
+\if\setteq0
+\ispmpl{\ottoq}\ispmpr\ispmtenf$^{-6}$%
+% else A.1.1.1.1.1.1
+\else
+\ispmpl{\setteq}\ispmpr\ispmtenf$^{-5}$%
+% fi A.1.1.1.1.1.1
+\fi
+% else A.1.1.1.1.1
+\else
+\ispmpl{\seiq}\ispmpr\ispmtenf$^{-4}$%
+% fi A.1.1.1.1.1
+\fi
+% else A.1.1.1.1
+\else
+\ispmpl{\cinqueq}\ispmpr\ispmtenf$^{-3}$%
+% fi A.1.1.1.1
+\fi
+% else A.1.1.1
+\else
+\ispmpl{\quattroq}\ispmpr\ispmtenf$^{-2}$%
+% fi A.1.1.1
+\fi
+% else A.1.1
+\else
+\ispmpl{\treq}\ispmpr\ispmtenf$^{-1}$%
+% fi A.1.1
+\fi
+% fi A.1
+\fi
+% fi A
+\fi
+%
+%
+% if A
+\ifnum\temp=9%
+\StrChar{#1}{1}[\unoq]%
+\StrChar{#1}{2}[\dueq]%
+\StrChar{#1}{3}[\treq]%
+\StrChar{#1}{4}[\quattroq]%
+\StrChar{#1}{5}[\cinqueq]%
+\StrChar{#1}{6}[\seiq]%
+\StrChar{#1}{7}[\setteq]%
+\StrChar{#1}{8}[\ottoq]%
+\StrChar{#1}{9}[\noveq]%
+% if A.1
+\ifx\treq\undefined
+indefinito
+% else A.1
+\else
+% if A.1.1
+\if\treq0
+% if A.1.1.1
+\if\quattroq0
+% if A.1.1.1.1
+\if\cinqueq0
+% if A.1.1.1.1.1
+\if\seiq0
+% if A.1.1.1.1.1.1
+\if\setteq0
+% if A.1.1.1.1.1.1.1
+\if\ottoq0
+\ispmpl{\noveq}\ispmpr\ispmtenf$^{-7}$%
+% else A.1.1.1.1.1.1.1
+\else
+\ispmpl{\ottoq}\ispmpr\ispmtenf$^{-6}$%
+% if A.1.1.1.1.1.1.1
+\fi
+% else A.1.1.1.1.1.1
+\else
+\ispmpl{\setteq}\ispmpr\ispmtenf$^{-5}$%
+% fi A.1.1.1.1.1.1
+\fi
+% else A.1.1.1.1.1
+\else
+\ispmpl{\seiq}\ispmpr\ispmtenf$^{-4}$%
+% fi A.1.1.1.1.1
+\fi
+% else A.1.1.1.1
+\else
+\ispmpl{\cinqueq}\ispmpr\ispmtenf$^{-3}$%
+% fi A.1.1.1.1
+\fi
+% else A.1.1.1
+\else
+\ispmpl{\quattroq}\ispmpr\ispmtenf$^{-2}$%
+% fi A.1.1.1
+\fi
+% else A.1.1
+\else
+\ispmpl{\treq}\ispmpr\ispmtenf$^{-1}$%
+% fi A.1.1
+\fi
+% fi A.1
+\fi
+% fi A
+\fi
+%
+}
+\ProcessOptions\relax
+%%\subsubsection{Rendering by negative exponents of number ten powers}
 \endinput
 %%
 %% End of file `isphysicalmath.sty'.



More information about the tex-live-commits mailing list.