fixed

improved

Major Minor Update

Soulver 3.10.3

Soulver now requires macOS 12 Monterey or higher
CSS Units
  • CSS units (em, rem & px) will now always be formatted without spaces and using a standard US decimal character (.) so they can be immediately pasted into CSS files
Volume units
  • Added slightly more accuracy to volume & substance calculations in certain cases
  • Rates of liters/meters^2 are now resolved to a unit of meters
Natural language functions
  • You can now use "@" as a synonym for "at" in natural language phrases, like in compound interest "$5k after 3 years @ 7.5%" (= ($6,211))
Conditionals
  • Support for "if x then…" in addition to if x == true then…", where x is a boolean
  • Fixed a bug where natural language functions were not working in the "then" position in conditionals (thanks Ian)
Timezones
  • Added timezones for French territories: Mauritius, French Guiana, Martinique, La Réunion, & Guadeloupe
Functions
  • Support for specifying the value of a unit using a function, like "sin(30) radians", or "abs(-40) meters"
Line references
  • Support for adding a SI scalar to a line reference, for example "[123]k EUR", where [123] is a token reference to a previous line
Specifiers
  • Support for "dec" as a shorthand for "decimal", like "0x123 to dec" (thanks Nasco)
Calendar calculations
  • The "days left in 2024" function now returns a whole number of days (rather than fractional)
  • Support for converting timespans into "months and days"
Localizations
  • Diacritics are now ignored in unit and function names in the Spanish localization (use either "días" or "dias" for example) (thanks Carlos)
Bug fixes
  • Fixed an issue where the log() function was not working with hex and binary numbers (thanks Emile)
  • Fixed a very obscure bug where Soulver could use excessive CPU in the background when a list of fractions similar to dates was present in a heading comment in a US locale (thanks Jon)
  • Fixed a hang when performing lcm with a list of numbers that included 0 (thanks Daniel)
  • Fixed a bug where a line reference could lose its referent when deleting multiple lines above its referent's line
  • "tonne" now maps to metric ton, rather than short tons.