lib/asciimath2unitsml/conv.rb in asciimath2unitsml-0.3.2 vs lib/asciimath2unitsml/conv.rb in asciimath2unitsml-0.3.3
- old
+ new
@@ -44,31 +44,31 @@
float.to_f.round(1).to_s.sub(/\.0$/, "")
end
def prefix(units)
units.map { |u| u[:prefix] }.reject(&:nil?).uniq.map do |p|
- <<~END
+ <<~XML
<Prefix xmlns='#{UNITSML_NS}' prefixBase='#{@prefixes[p].base}'
prefixPower='#{@prefixes[p].power}' xml:id='#{@prefixes[p].id}'>
<PrefixName xml:lang="en">#{@prefixes[p].name}</PrefixName>
<PrefixSymbol type="ASCII">#{@prefixes[p].ascii}</PrefixSymbol>
<PrefixSymbol type="unicode">#{@prefixes[p].unicode}</PrefixSymbol>
<PrefixSymbol type="LaTeX">#{@prefixes[p].latex}</PrefixSymbol>
<PrefixSymbol type="HTML">#{htmlent @prefixes[p].html}</PrefixSymbol>
</Prefix>
- END
+ XML
end.join("\n")
end
def dimension_components(dims)
return if dims.nil? || dims.empty?
- <<~END
+ <<~XML
<Dimension xmlns='#{UNITSML_NS}' xml:id="#{dim_id(dims)}">
#{dims.map { |u| dimension1(u) }.join("\n")}
</Dimension>
- END
+ XML
end
U2D = {
"m" => { dimension: "Length", order: 1, symbol: "L" },
"g" => { dimension: "Mass", order: 2, symbol: "M" },
@@ -96,13 +96,13 @@
exponent: u[:exponent] || 1,
symbol: U2D[u[:unit]][:symbol] }
end.sort { |a, b| U2D[a[:unit]][:order] <=> U2D[b[:unit]][:order] }
end
- def dimension1(u)
- %(<#{u[:dimension]} symbol="#{u[:symbol]}"
- powerNumerator="#{float_to_display(u[:exponent])}"/>)
+ def dimension1(dim)
+ %(<#{dim[:dimension]} symbol="#{dim[:symbol]}"
+ powerNumerator="#{float_to_display(dim[:exponent])}"/>)
end
def dim_id(dims)
return nil if dims.nil? || dims.empty?
@@ -186,15 +186,15 @@
@quantities[quantity]
id = quantity || @units[normtext].quantities.first
@units[normtext]&.dimension and
dim = %( dimensionURL="##{@units[normtext].dimension}")
- <<~END
+ <<~XML
<Quantity xmlns='#{UNITSML_NS}' xml:id="#{id}"#{dim} quantityType="base">
#{quantityname(id)}
</Quantity>
- END
+ XML
end
def dimid2dimensions(normtext)
@dimensions_id[normtext].keys.map do |k|
{ dimension: k,
@@ -205,24 +205,24 @@
def dimension(normtext)
return unless @units[normtext]&.dimension
dims = dimid2dimensions(@units[normtext]&.dimension)
- <<~END
+ <<~XML
<Dimension xmlns='#{UNITSML_NS}' xml:id="#{@units[normtext]&.dimension}">
#{dims.map { |u| dimension1(u) }.join("\n")}
</Dimension>
- END
+ XML
end
def unitsml(units, origtext, normtext, quantity, name)
dims = units2dimensions(units)
- <<~END
+ <<~XML
#{unit(units, origtext, normtext, dims, name)}
#{prefix(units)}
#{dimension(normtext)}
#{dimension_components(dims)}
#{quantity(normtext, quantity)}
- END
+ XML
end
end
end