User:Wikid77/sandbox/Template:Convert/to/AonSoff

{{#ifeq: 1| {{#expr:abs( {{formatnum:{{{2|3/4}}}|R}} ) < 1.0001 and {{formatnum:{{{2|3/4}}}|R}} <> 0 }} |{{#ifeq:{{{u|xnone x }}}|xnone |{{{n}}} |{{#ifeq: { |{{padleft:|1 |{{{u |x }}} }}|{{{n}}} |{{{u}}} }} }} |{{#ifeq:{{{u|xnone}}}|xnone |{{{l|{{{n}}}s}}} |{{#ifeq: { |{{padleft:|1|{{{u}}} }}|{{{l|{{{n}}}s}}} |{{{u}}} }} }} }}

The Template:Convert/by/AonSoff formats a range where the 2 amounts are separated with word "to" between the numbers. The range can text-wrap at "to" if the first amount > 4 long, such as a number in scientific x10 notation.

For unit-codes where the unit symbol is undefined (or blank), then the template also checks for literal "{{{u}}}" with leading curly brace "{" and then the unit name (depending on amount singular or plural) will be displayed instead.