Changelog
All the new features, improvements & bug fixes in the latest updates to Soulver
3.16.1
iOS
Improved Sheets & Syncing settings pane
Added a "Sync Control" section that lets you see the sync console and take sync troubleshooting steps
Fixed a short hang when the pane opened if you have a lot of backups
Mac
Selection subtotals now work for non-contiguous selections (when you command-click non-consecutive lines to select them).
Fixed an issue with iCloud sync not working correctly in the Setapp version since 3.16.1 update (thanks J & Justin)
Soulver Mini won't pop open on system launch anymore when "Launch at Login" is enabled (thanks S Michael)
Calculator
The rates for Euro-pegged currencies are now more accurate: XOF, XAF, KMF, CVE, BAM & BGN.
Fixed an issue with π in Greek words behaving incorrectly (thanks, Alexander).
Fixed an issue with the “min of 3 and 4” function in variable declarations (thanks, Nihaal).
3.16
Languages
Added Japanese, Korean, & Italian localizations
Soulver's documentation is now translated into all languages
Calculator
Screen Density Calculations
Added PPI/DPI units
Convert between physical length and pixels at a given density, for example
1 cm in px @ 326 ppior40 px to cm at 96 dpiAdded a screen density function like
ppi of 15" screen at 1024x768
Trigonometry
Added cotangent & cosecant trigonometry functions (cot, csc) and their hyperbolic, inverse, and degree variants (coth, csch, acot, acsc, cotd, cscd, acotd, and acscd)
Units
Added rates for the Uniswap (UNI) cryptocurrency
Functions
Added an "is x prime" function:
is 59 prime(= true)
Statistics
Added standard deviation:
standard deviation of 20, 30 and 40(= 10)Added "avg" as a synonym for "average" (
avg of 3, 4, 5)
Calendar & Timezone Calculations
Added a shorthand time difference function:
time difference Paris(interpreted as "what is the time difference between here and Paris"), alsotime diff paris&diff parisAdded a "years to" function (
years to 2029)
Percentage Phrases
Percentage phrases now support arbitrary comment words in more cases. For example:
20% discount off $500,5% gratuity on $95,40% of 90
United States Customary Units
US customary units are now returned in certain cases when the input uses US customary units
Added support for compound feet-and-inches expressions using "and" (e.g.
5 feet and 3 inches in cm)Added additional feet/inches aliases
Cities and Airports
Added 119 additional tourist-destination cities and airports
Bug Fixes
Fixed an issue with rounding functions and lap times (thanks Jasper)
Fixed an issue with line dp settings not applying to feet & inches (thanks Jon)
Fixed an issue with locales that use a dot as a decimal separator and space as the thousands separator
Fixed an issue with adding clock-formatted times around daylight savings change boundaries
Mac
General
Minor improvements to the Calculator settings window
Floating total no longer shrinks unnecessarily when over empty lines
Nicer drag image when dragging an answer from the answer column
Updating currencies no longer clears the undo state for a sheet
Bug Fixes
Fixed an issue with the Quicklook Plugin not working in the App Store version
Fixed an issue where the calculate anywhere services were not respecting the default formatting settings
Fixed an issue with the automatic variable rewrite feature not working in some cases
iOS
Additional cases in which the previous line will be inserted on a new line, including starting a line with a currency, a percentage phrase, "to", and other specifiers
Added a setting under Styling to select whether a line reference token shows the referenced result (the default), or the line number of the referenced line
3.15.2
iOS
Fixed an issue with multi-page printing on iOS 26 cutting off on the edges (thanks Joshua)
Fixed an issue with the statistic not being included in PDF exports when selected (thanks Christian)
Keypad optimized for iPhone Air
iPad
Fixed a visual issue with the sheets sidebar in compact mode on iPadOS 26
Added a setting to completely disable the floating number pad on iPad (helpful for customers with magic keyboards)
Mac
Fixed an issue with sheet search (⌘⌥-F) not working correctly on macOS Tahoe
Fixed an issue where Soulver could unexpectedly come to the forefront after being hidden during iCloud account sign in/outs (thanks Ryan)
Calculator
Fixed an issue with sheets with multiple variables containing periods (like "yearly" & "monthly") (thanks Mark)
Fixed an issue with certain variable names in Chinese not automatically updating dependent lines (thanks Jiang)
3.15
Soulver is ready & optimized for the new iOS, macOS & iPadOS 26.
Mac
Added icons for the menu bar on macOS Tahoe
Added a dedicated menu item to create a new sheetbook file
Added a dedicated "Import" menu item, which also adds the ability to merge multiple sheetbooks into your current sheetbook
Minimum supported macOS is now macOS 13.5 Sonoma
iPad
Support for the new windowing system & menu bar
Additional export options are now presented when using the share button after a swipe on a sheet
Calculator
Additional built-in constants: phi (the golden ratio) and tau (2π)
Support for date + plain number type expressions, assuming either days or hours. For example: "August 5 + 5" [assume days], or "3:45pm + 5" [assume hours]
Support for "hourly", "daily", "weekly", "monthly", "quarterly" and "yearly" as both the compounding interval and interest interval in the compound interest formula. For example: "hourly interest on $1k for 3 years at 4% compounding quarterly"
3.14.4
Mac
General
General interface improvements for the soon-to-be-released macOS 26
The backups window now shows the number of sheets in each backup
Bug fixes
Fixed an issue where the cursor could sometimes stay as the "resize" column indicator when already over the text area
iOS
Contextual Menu
The contextual menu on a sheet now lets you print, export into PDF and send styled emails and include preview stage to customize the appearance
Copy lines with answers (as plain text) is now available on the contextual menu on a sheet too
Custom keys
The custom key settings pane now shows you the standard keyboards that you can use for inspiration to quickly setup your custom keyboard how you want
Keys added to the custom keyboard that match the title of a standard key will now get automatic additional popup options (when available). For example, if you name a key "today", you'll automatically get "tomorrow" and "now" available as extra options
Calculator
Improvements
Support for Python style trailing comments on the end of lines (# this is a comment)
Support for expressions like "USD1K" (without spaces).
"1K" (uppercase K) is once again interpreted as one thousand (with "1 K" being 1 kelvin, with a space)
Bug fixes
Fixed an issue with the wrong default currency symbol location for Swedish Kroner
Fixed an issue with arithmetic related to stock tickers not working correctly in some cases (thanks Sami)
Fixed an issue with numbers were being auto-formatted in multi-hash Markdown headings (###)
Fixed an issue with "oct" clashing with the octal conversion function in an expression like "oct 1 2024 to jun 1 2025"
3.14.3
Inline Knowledge Assistant
The default provider for inline knowledge queries is now Wolfram|Alpha.
Wolfram|Alpha is the most reliable data source for live and accurate data, and it supports natural language queries.
If Wolfram|Alpha cannot process your query (for example, if you use a language other than English), the knowledge assistant will direct your query to the latest AI model from OpenAI.
Availability
The Setapp version, or the optional data subscription in the App Store version, is required to use the inline knowledge assistant.
The direct download version continues to have access to inline Wolfram|Alpha (but you must provide your own Wolfram App ID).
Large currency notation
This update adds support for additional symbols representing large currencies (commonly used as shorthands in finance and journalism):
Millions: $1M, $2m, or $3mn
Billions: $1B, $2b, or $3bn
Trillions: $1T, $2t, or $3tn
Currency results at these magnitudes will automatically use the new currency notation symbols.
Which symbols are used depends on your region: for example, uppercase "$K, $M, $B, $T" are used in the US, and longer form "$k, $mn, $bn, $tn" are used in the UK.
Misc improvements
New lines now automatically inherit the formatting settings of the previous line (this behaviour matches Soulver 2), rather than the default formatting settings.
'yr' and 'mo' are now supported as aliases for 'years' and 'months'.
Support for "weather in place in a month of the year" style weather queries, like "weather in Tokyo in June" (advanced data subscription or Setapp required).
Modernised currency codes for Mauritanian Ouguiya (MRO → MRU) and Venezuelan bolívar (VEF → VES).
A slightly more accurate definition for the density of corn.
Bug fixes
Fixed an issue with the automatic number formatter when formatting negative numbers with a fractional component after adding a space between the minus sign and number.
Fixed an issue where the iPhone version could sometimes take a few seconds to launch during periods of low network coverage.
3.14.2
Non-decimal bases
Support for unit expressions in bases other than decimal, like "0xF days in minutes"
Added support for base 8 (octal) numbers: 123 as octal (= 0o173)
Added support for converting into other bases using a phrase "as base x", like "0b101101 as base 16" (= 0x2D)
Added support for converting into other bases using functions: bin(), hex(), int() and oct() (inspired by Python)
Expression Formatting
Auto-spacing division slashes
Soulver will now automatically insert spaces around slash division characters in certain cases, like in "500 / 40"
There are still many cases where it's not preferred, like when working with fractions (1/3), rates (10 km/h), and Soulver will continue to not auto-space the division slash in these cases.
Thousands separators
Soulver will now delete unnecessary thousands separators when deleting digits from the end of a number (i.e. "1,000" will now become "100" when deleting the final zero)
Financial Functions
Investment required for return
This function is useful for when you have a specific return on investment you'd like to achieve from an investment (like a bank deposit)
Specify a target dollar amount you wish you receive over a given period of time in interest and the interest rate
Soulver will tell you how large your initial bank deposit needs to be
Examples:
"investment required for $10k/month at 5%" (= $2.4M)
"deposit needed for $42k/year at 7.5%" (= $560k)
Daily mortgage payment functions
daily payment on $1M over 30 years at 6.5% (= $207.67)
daily interest paid on $1M over 30 years at 6.5% (=$116.40)
Totals & Sub-totals
Support for adding up numbers and percentages on different lines in subtotals
For example you could type $500 on one line, and 10% on the next line. The total will now show $550.
The floating total is smarter in some cases when adding up subtotal lines (thanks Sasha)
Other
Clamp function
"clamp 26 between 5 and 25" (= 25)
"clamp 4 from 5 to 25" (= 5)
Bug Fixes
Fixed an issue with certain rounding phrase syntaxes that broke after the previous update, like "$110.00 USD in AUD to 2 digits" (thanks Ian & Mark)
Fixed an issue where global currency variables were being rounded to 2 dp (thanks Shai)
Fixed a bug where QuickSoulver would sometimes not respect editing setting changes (thanks Marcin)
Fixed a bug where the floor() function wasn't working correctly with degree units (thanks Markus)
Fixed an issue with very small numbers displaying as zero with notation disabled (thanks Eli)
3.14.1
Rounding Numbers Up and Down to Nearest Interval
Added phrases to round numbers up or down to a specific interval
For example, "round 21 up to nearest 5" (= 25), "round down 20 to nearest 8" (= 16)
Time to Decimal Conversions
Support for converting times to decimal: for example, "10:15 to decimal" (= 10.25)
Millisecond Unix Timestamps
Added support for converting millisecond timestamps into dates, like "1733823083000 to date"
Timezones
You can now include "time" as a commenting word in time zone conversions, like "3pm Sydney time to Lisbon time"
"10am to London" will now be interpreted as "10am here to London"
General
When copying out multiple lines of text with expressions & answers that include subtotal lines, these will now be included on their own line
Bug fixes
Fixed an issue with sheets written in certain locales that use space as a thousands separator being incorrectly interpreted after syncing (thanks Øyvind & Edgar)
Fixed an issue with auto-converting quantities in brackets in QuickSoulver (thanks Chris)
Fixed a crash with the factorial function (when doing an expression like "fact(9999999.3)")
Fixed an issue where an expression like "1.6 fl oz/acre to mL/ha" would return an error instead of converting correctly
An expression like "Monday 5pm-7pm" now correctly returns the interval of time specified (2 hours in this example)
Localizations
Minor improvements to the Russian localization
Fixed an issue with the Chinese translation of Soulver not working correctly
3.14
iPad
Floating Number Pad
Hide/show the system keyboard using a button in the floating number pad — helpful on smaller iPads in landscape
Added a larger floating number pad option with larger key sizes and the handy accessory bar
The keyboard accessory bar provides many useful keys for various workflows, including currency conversions, working with variables, percentages, and date & time calculations
You can customize the keyboard accessory bar with your own keys
Toggle between the larger and compact floating number pads, depending on your needs
iOS
General
Added parentheses ( ) as a popup option on the multiplication key
Added move cursor left/right keys to the general accessory keyboard
Added a Control Center control button that opens Soulver on iOS 18+
Support for large & small icon styles on iPad, and dark & tinted icons on iOS 18+
Bug Fixes
Fixed a crash on first launch on iPhone after starting the trial
Fixed an issue with using the number pad alongside third-party keyboards (like SwiftKey from Microsoft, or Gboard from Google)
Fixed an issue where pasting copied text containing line reference tokens into other apps wasn't working
Fixed an issue where the variable accessory keyboard could show an out-of-date variable state for a line
3.13
This update introduces additional settings and options for further personalizing the way currencies are formatted.
For data service subscribers on the App Store (and Setapp users), there are also new improvements to the weather feature, including the ability to perform weather queries for smaller places around the world and conduct historical weather queries.
Currency Formatting
Use currency codes instead of symbols
In the Calculator settings under Currency Symbols, you can now choose to always use currency codes (like EUR) instead of currency symbols (in this case, €).
Hide trailing zeros on currencies
In the Calculator settings under Currency Symbols, you can now choose to hide trailing zeros on currencies. With this setting off (the default), $1 is rendered as $1.00. With this setting on, the trailing zeros will be hidden.
Settings
New sheet/file on launch
In the General settings, you can now choose to create a new sheet or Soulver file on launch.
Tab for variable autocomplete
In the Formatting settings, you can now select Tab instead of Escape as the key that invokes variable autocomplete.
Advanced Weather (requires Setapp or data services subscription on the App Store)
Historical weather queries (macOS 15+)
Look up the average, high, and low temperatures, as well as rainfall, in a place on a particular date.
Data is available back to August 1, 2021.
Historical averages by month (macOS 15+)
Perform weather queries for the average high/low temperatures and rainfall in a place in a given month.
For example, "high in New York in June."
Note that these are historical averages based on weather records going back to the 1970s (not maximum/minimums).
Weather & time zone queries for small places
Soulver can already perform weather and time zone queries for approximately 500 of the largest cities on Earth.
New in this update is the ability to look up weather for any place on Earth, including smaller places.
For example, you can now type "weather in Ubud, Bali," or "temperature in Assisi, Tuscany."
This feature also works for time zone queries using "time in (place)": "time in Inverness, Scotland," "time in Wollongong, NSW."
And when working out time differences: "time difference between Kemer, Turkey, and Mill Valley, Marin County."
Bug Fixes
Fixed an issue where a zero currency (like $0) could have unnecessary decimal places with certain decimal point settings (thanks, Nevan).
Fixed an issue where subtotals were not respecting custom currency formatting settings (thanks Anssi).
Fixed an issue with larger/smaller functions and negative currencies (thanks Ian).
Fixed an issue introduced in 3.12 where certain variable lines needed to be manually edited to make them update (thanks Suvil & Andy).
Fixed an issue in the Setapp version on macOS 15 where Soulver would unnecessarily prompt for access to "data from other apps" when opening Soulver Mini.
3.12
Support for latest operating systems
This release adds support for the latest versions of Apple's operating systems:
macOS 15 (Sequoia)
iPadOS 18
iOS 18
iOS
Devices
Added support for the new iPhone 16 Pro screen sizes.
Editor
The title of the current sheet will be displayed in the navigation bar (if it has one)
Note that a "title" in Soulver refers to when you begin a sheet with a "#"
Quick actions
Tap the answer of the line you're editing to quickly copy it to the clipboard
Tap an empty line to quickly make a subtotal of lines above on that line
Currency Keyboard
You can now pin select currencies to the start of the list (hold down on the currency code button, and choose "Pin" or "Unpin")
Sharing
PDF is now the default file format for sharing a sheet.
Bug fixes
Fixed a bug where the "( )" button would not wrap a text selection in brackets (thanks Evgeny)
Mac
Quick Copy Action
Double-click the answer of the line you're editing to copy it to the clipboard
Hold down option and double-click an answer of another line to quickly copy to the clipboard
The default action for double-clicking other answers continues to be inserting a reference to the answer
Quick Add Subtotal Action
Double-click an empty line to quickly make a subtotal on this line
Alfred Workflow
The Soulver Alfred workflow has been updated (v1.5) and now lets you specify the trigger keyword (previous versions used "u").
A bug introduced in the last update of the Soulver CLI has been fixed that prevented the Alfred workflow from working correctly with the Setapp & Mac App Store versions.
Bug fixes
Fixed an issue with scrubbing negatively from $0 (thanks James)
Calculator
Units & Conversions
Added cubic micrometer & square nanometer units
Support for conversion from & into imperial volume units explicitly, like "1 liter in imperial pints"
Added support for unit expressions with a fractional value, like "1 1/2 pounds"
More flexible unit conversion for ostensibly incompatible units: "3 mph to minutes" (convert to miles/minute), "10 cubic centimeters to meters" (convert to cubic meters)
Support for automatic conversion of units without explicit value: "usd eur" will be interpreted as "1 usd in eur"
Units in rates will now be preserved rather than cancelling out when converting to an alternative form: "8g/2 lb as grams/lb (= 4 g/lb)"
Stock Tickers
Added Nvidia (NVDA) as a built-in stock ticker (along with the existing support for the tickers of Apple, Microsoft, Google, Amazon, Meta, Tesla, AirBnB, & Netflix)
Cryptocurrencies
Switched to using "POL" as the symbol for the Polygon token (previously "MATIC")
Time zones
Support for "ct" (central time), "pt" (pacific time), "mt" (mountain time) and "et" (eastern time)
Subtotals
When starting a new line with an operator (±) inside a subtotal, Soulver will no longer insert the previous line as a reference. This is helpful for doing running subtotals.
Financial functions You can now work out compound interest compounding monthly and quarterly:
"interest on $100 after 3 years at 10% compounding monthly"
"interest on $100 for 3 years at 10% compounding quarterly"
General
Support for larger inputs to combination and permutation functions
Support for min/max functions with percentages (thanks Eemil)
Power phrase function: "3 to the power of 9", "2 exponent 4", "4 raised to 2"
Added additional trigonometry functions that take their parameter in degrees: "asind", "acosd", "atand" and "tand"
International
Support for full width parenthesis characters ( commonly used in China, Korea & Japan)
Bug fixes
Fixed an issue where "1.003.020" was incorrectly being interpreted as a date (thanks @infolinux)
Fixed an issue with summing multiple decimal rates in the quick total or subtotals (like 3.4/day, 5.9/day, etc) (thanks Devin)
Fixed an issue with certain unit multiplications not returning in the most ideal form: "3 min × 15 mph" now returns "0.75 mi" rather than 1,207 m
Fixed an issue with feet units that are written with a trailing apostrophe, like 30.334'
3.11.3
Soulver Studio
Turn sheets into stand-alone Mac apps that can be shared with others (compatible with macOS 12+)
Select a sheet, go to the "Sheet" menu and choose "Build App from Sheet"
Choose from 7 fun icon colors
App creation details
Mac apps built from sheets are sandboxed for security and sent to Apple for "notarization"
Notarization is a process that makes an app Gatekeeper compatible, so they can be installed on other Macs
This process generally takes less than 5 minutes
Apple restricts us to building 75 apps per day this way. You might find the service is unavailable for a time if we run out of capacity
3.11.2
Calculator
Bitwise Operators Support for bitwise operators, including:
Bitwise AND (&), bitwise OR (|), bitwise XOR (xor)
Bitwise left shift (<<) and bitwise right shift (>>)
Permutations & Combinations
"10 permutation 3" (= 720)
"25 combination 3" (= 2,300)
Or, alternatively, use a clearer syntax:
"3 permutations of 10 (= 720)
"3 combinations of 25" (= 2,300)
Financial Functions
Added a compound interest function that gets just the interest earned (without the principal), i.e.:
"interest on $35k after 3 years at 4.5%" (= $4,941)
Crypto-currencies
Support for "Gwei" and "Wei" (sub-dominations of Ethereum)
iOS
Number Pad
Added ETH, BNB and SOL as popup options on the BTC button (thanks John)
You can now quickly convert a currency result on a new line: add a new line (after a line with a currency result), then tap a currency code. This will insert a reference to the previous line, and conversion to the inserted currency.
Operators & return/delete keys in the number pad are now visible to VoiceOver (thanks Scott)
Settings
Added a setting to control what happens on app launch: either open the previous sheet, or create a new sheet on launch (but only after 5 minutes of inactivity)
Added a sync troubleshooting section: this includes a button to manually reload your sheetbook file (rarely required, but can be helpful sometimes)
Minor layout improvements to the sheet settings pane
Bug Fixes
Copying & pasting lines that contain line references now works correctly (thanks Tony)
Fixed an issue with opening .slvr files from the Files app not working correctly on iPhone (thanks Alexander)
Calculator
Bug Fixes
Fixed an issue where certain date interval phrasings could cause a crash
Fixed an issue with 0.9M being incorrectly formatted by the thousands separator insertion feature (thanks Matteo)
Fixed an issue with dash separated dates (like 04-05-2020) incorrectly having spaces inserted around the dashes while typing (thanks Dr. Dishant)
Mac
Bug Fixes
Made it clearer that the Monospaced System Font option only applies to digits (thanks John)
Fixed an issue with the delete button in the sheet view not during mouse movement after cancelling a drag (thanks Jasper)
Fixed an issue with the syntax coloring of variable declarations on subtotal lines in HTML/PDF output (thanks Jason)
3.11.1
iOS
General
Added a contextual menu (via a long press) on answer tokens to turn them into plain text, or show the line they reference
When importing Soulver 2 files (.soulver), the file name is no longer automatically inserted as the sheet heading (#) if the file is named Draft or Untitled
Soulver longer automatically shows the keyboard on iPhone when switching to another sheet (this behavior matches the Notes app)
Improved the Soulver launch screen
Bug Fixes
Fixed an issue where some users were not able to get past the launch screen due to iCloud hanging while downloading an existing sheetbook onto your device when requested
Fixed a crash on iPhone when showing the custom keyboard editor while editing an external sheet (.slvr)
Fixed an issue where the open sheet URL action was only cosmetically selecting the requested sheet
Fixed a bug with the "New Sheet" home screen action (on iPad) not working when the app had not yet been launched
3.11
Soulver 3 is now available for iPhone.
iOS
Availability & Pricing
Soulver 3 for iOS is available on the App Store. It's just $14 (or complementary for our Setapp users).
It's still a one time purchase (separate from Mac & iPad versions), and family sharing is included
This is the first paid update to Soulver on iOS since the original Soulver for iOS in 2009 (which received more than 10 years of updates & support)
Number Pad
We've designed a wonderful number pad make doing calculations on-the-go fast
Switch between the system keyboard and the number pad with a conveniently located switch at the bottom of the keyboard
It comes with a number of accessory keyboards across the top that you can choose from for your particular calculations
The number pad is supported on all iPhones with a rounded display (all iOS 16 supporting iPhones except the iPhone SE)
You can disable the number pad in the settings if you require
Additional Options on Keys via Popups
Many keys have additional options available on a popup menu. Press down on a key for a second to see additional options
For example, the "0" key offers "k", "M", and "G" number scalars
For example the "." key offers headings "# " and comment "// " characters. The ABC keyboard will be selected automatically for you to type your heading or comment.
Hold down on the delete key and slide your finger left to delete the current line or clear the entire sheet
Currency Accessory Keyboard
Always shows your home currency & the currency of your current location (based on your timezone, not your GPS location)
This is helpful for quickly converting back to your home currency when travelling.
Variable Accessory Keyboard
Shows any global & local variables in your sheet (this saves you typing out the whole variable name every time you want to reference it).
Custom Accessory Keyboard
Design your own custom accessory keyboard with whatever functions & phrases you find yourself using most commonly
Sheet Management
Compact sheet view mode
A contextual command to move a sheet into a folder (like the Notes app). Previously only drag-and-drop moving was supported
Other
Check out the Tips & Tricks to learn about some handy hidden features, including a gesture for answer column resizing, quick subtotal creation, and quickly switching between keyboards
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.
3.10.1
Pounds & Ounces
Added support for "pounds & ounces" as a composite result format. This will be the new default for expressions using pounds (lb), such as "13.5 lb" (= 13 lb 8 oz)
Pounds & ounces conversions can manually be done using the converter "in pounds & ounces" or "in lb oz"
You can still use "in lb/pounds" to express the result as decimal pounds.
Date & Time Zone Calculations
Added support for interval calculations involving years and formats like "1953 − today"
Added support for dates in the format "13 March 23" (Year assumed to be 23 here)
Added support for time zone calculations in the "time in Copenhagen 3 hours (from now/ago)" format
Timespans
Support for double unit timespans like "in minutes and seconds", "in hours and minutes" and so on
Soulver uses timespans more frequently in operations on single quantities of time. For example, "25 min / 12" = (2 min 5 seconds), "1h20m + 45m" = (2 hours 5 mins)
When "as timespan" is explicitly specified for the result of a date interval calculation, fixed time units are used, not variable ones
Added "time span" as an alternate expression for "timespan"
Number Formatting
Numbers in SI notation will now conform to your decimal point settings. Formerly, they were formatted to 3 dp regardless
Added support for SI symbols (k, M, G) to line references
Crypto currencies will no longer round to two decimal places by default.
Lists
Added support for expressions inside parentheses in lists like "max (100 * 2) 50 100" (= 200)
Bug Fixes
Fixed an issue with single letters not acting as custom prefix currency symbols, such as R100 for South African Rand (thanks to Hein)
Fixed an issue where custom currency symbols were not applied without a further application restart after changing your number format
Fixed an issue where a single currency symbol in parentheses was interpreted as a comment, such as ($100) (thanks to Andre)
Fixed an issue where a short month name in parentheses could cause a comment not to be correctly recognised (thanks to Markus & Nigameash).
Fixed a problem with raising volume units to the power of a third (thanks to Daniel)
If multiple variables shared the same name, only one was included in the quick total. This issue has now been fixed (thanks TJ)
Fixed an issue with "February 29" without a year component not being recognized as a valid date (😪, thanks Patrick)
Fixed an issue with defining the decimal point of several lines with variable dependencies
Fixed an issue related to a peculiar symbol that could cause the application to crash when pasted (thanks to Jason)
Fixed an issue that caused a crash when executing
sinh(10000)
3.10
List operation improvements
Support for "min", "max", "gcd" and "lcm" on lists of numbers.
For example:
"min 5, 3, 7" (= 3)
"max 50, 20, 10" (= 50)
"gcd 10, 20, 5" (= 5)
"lcm of 210, 40, 8" (= 840)
Time ago/from now in location
New "time ago/from now in location" phrase
For example:
"3 hours ago in London"
"30 min from now in Sydney"
iPad
This update includes a number of improvements to the iPad version, including:
Advanced Weather & AI Assistant
Support for subscribing to the "AI Assistant, Live Stocks & Weather" subscription
Menu Bar Improvements
New sheet button has a contextual menu to create a sheet starting with a heading, or duplicate the existing sheet
Dedicated import sheets button
Automatic Variable Renaming
When you edit a variable name, lines referencing the previous name will be automatically updated to use the new name
This feature must be enabled in Soulver's
Editingsettings
Variable Value Peeking
Select a variable in the text area to see its value in the text menu
Contextual Actions
Added contextual actions on answers (to quickly copy results)
On total (so you can quickly hide it, or switch to average)
Easier Subtotal Creation
A blank cell will always be added below your last line. Long press on it and choose "Make Subtotal" to quickly sum up the previous lines
Fonts & Font Size
Added support for custom fonts on your device
Added a mode to use the (adaptive) system font size, rather than an explicit font size
Fill Screen with Answer
Long press on an answer and choose "Fill Screen" to fill your display with the answer
Bug Fixes
Fixed an issue with Chinese pinyin and other "multi-stage" input methods not working correctly
Services
New data services available, including an AI Assistant (powered by GPT-4) & advanced weather metrics (from Weather)
Providing these services generates ongoing costs for us. We offer them as an optional subscription service to keep Soulver itself a one-time purchase.
Inline AI Assistant (powered by GPT-4)
Query the AI assistant inline using " = ?"
For instance, "distance to the moon = ?". After a short delay, the question mark will be replaced by the answer
Advanced Weather Metrics (from Weather)
20 additional metrics for weather queries, including humidity, pressure, visibility, UV index, snow & rainfall, wind and more
See the entire list in the documentation
Availability
Subscribers also get access to live & historical stock data (150,000+ stock tickers across 70 exchanges worldwide). "Soulver Stocks" subscribers are automatically migrated to the new subscription at no additional cost until next renewal.
3.9.2
Assertions
Added an assert() function that you can use to verify an expected variable condition is true
For example, assert(expenses < $400), if you expect expenses to always be less than $400
The answer column will show red exclamation marks & the variable value to bring your attention to a line with a failing assertion
Scientific Notation
Explicitly format answers in scientific notation using "in scientific notation" or "in sci": i.e "10500 in sci" (= 1.05e4)
Bug fixes
Fixed a bug that could sometimes cause a crash on launch
Fixed a bug with certain expressions involving a currency conversion followed by a division not working correctly (thanks Anton)
Fixed a bug where clock times that use dot instead of colon could fail to work correctly in interval calculations (thanks Raphael)
Fixed a bug that could produce unwanted duplicate lines in a duplicated document (thanks Felipe)
Fixed an issue with laptimes not summing with unit expressions of time in subtotals (thanks Jasper)
Multiplying incompatible units now produces an error (thanks Oliver)
Fixed an issue with the "fraction of x" phrase inside a variable declaration (thanks Max)
Improved QuickSoulver behaviour across multiple displays (thanks Stefan)
Numbers with ordinal prefixes (1st, 2nd, 3rd, 4th, etc) are now ignored as comments, and won't affect results (thanks Frank)
Logical operators (&& and ||) now have lower precedence than addition and subtraction operators (previously they had the same precedence)
3.9.1
Restored compatibility with macOS 11 Big Sur by removing reliance on an incompatible 3rd party library
Reduced the size of the Soulver application by almost 40%
Bug fixes
Fixed an issue where a comment consisting of multiple words in parentheses was interfering with previously typed math expressions (thanks Ted)
Addressed an issue where expressions and answers could be misaligned on launch
3.9
Platforms
Support for macOS 14 Sonoma & iPadOS 17
Automatic Conversions in QuickSoulver
Common unit conversions are automatically performed for you for single unit expressions
For example, "500 s" (= 8 minutes 20 seconds), "21 miles" (= 33.8 km), "31 C (= 87.8 F)", etc
Hex & binary numbers are automatically converted to decimal
Foreign currencies are automatically converted into your Mac's local currency
Editor
The editor can now automatically convert numbers with foreign number formats into your preferred number format when pasting
New preference to replace the backtick (`) with the plus operator (+). If you rarely use backtick, you'll find this a much more convenient key to use for +.
When hovering over a reference to a line that declares a variable, hold shift to show a popup with the variable's name
Currency Conversions
You can now specify an explicit rate you'd like used for a particular currency conversion:
Example: "50 EUR in USD at 1.05 USD/EUR"
Or use the shorter version: "50 EUR in USD @ 1.05 USD"
Time & Date Calculations
Add up clock times in subtotals (i.e 04:30, 19:29). Without a seconds component, these are interpreted as hours and minutes.
Numbers that look like recent years are now ignored when typed in brackets after a currency, like "$550.00 (2022)"
Do time zones conversions with the states/territories of the US, Canada, UK & Australia. Both the full names of states/territories and abbreviations are supported.
Support for "time since date", "time to date" phrases
Financial Functions
Added a quarterly variant to the compound interest function: "$1,000 for 3 years at 7% compounded quarterly" (= "$1,231.44)
Trigonometry
Added "sind()" and "cosd()" functions that take a value in degrees (or alternatively "sin(45 degrees)", "cos(60º)")
Mac
Bug Fixes
Fixed an issue where QuickSoulver would stop showing on the active space when summoned (thanks Mick & Kacper!)
Fixed a bug where the scroll position was not being remembered when switching between sheets (thanks Ravi!)
Fixed an issue where you could not perform weather queries in English, when using a non-English system localization (thanks Yimin!)
Fixed a bug with the empty trash alert when suppressed (thanks Bruno!)
Fixed an issue with local variable refactoring where your preferred mode was not being remembered after dismissing the dialog (thanks Sasha & Philip)!
Fixed an issue where the x quick operator was not working correctly
Fixed a bug where the editor would lose its text selection after a currency rate update
Fixed an issue where the sidebar would not scroll to the active sheet on launch
iPad
Bug Fixes
Fixed a bug where opening a sheetbook file selected manually from Files was not working
Fixed an issue with the automatic parenthesis insertion feature and selected text not working correctly in certain cases
Fixed an issue with typing using the Chinese pinyin keyboard
Fixed an issue where the title of a renamed folder did not immediately update
Fixed a rare crash that could occur when opening a folder
The
Calculate with Soulvershortcut action will now show its result in a dialog when invoked from Spotlight
Calculator
Bug Fixes
Fixed an issue with variable definitions not being recognised when a variable name ended with an underscore followed by a unit symbol (thanks Chris & Peter!)
Fixed an issue with incorrect units being shown in rate multiplications used in fuel milage calculations (thanks Silvo & Dan!)
3.8.1
Soulver 3 is now available for iPad on the App Store.
3.8
Live Weather
Get real-time weather data for most locations on Earth (thanks to Weather on macOS Ventura)
Simply type "weather in (city or airport code)" for the current temperature and weather conditions. Lines with weather queries will live-update during the day
You can also query for "temperature/temp", "feels like/apparent temperature", "high" and "low"
Weather queries depend on place names already recognized by Soulver (this includes most large cities around the world)
You can add additional places for weather queries in the Calculator > Additional Places settings
Sheets & Sync
New "Keep on Top" option under the Window menu for sheets
Soulver matches the behavior of the Notes app where you can go Window > Open Sheet in New Window and then Window > Keep on Top to make a particular sheet (or Soulver file) always float above other windows on your Mac
New option to automatically resolve sync conflicts by selecting the most recently edited version of a sheet
Date & Time Calculations
Support for lowercase timezone abbreviations (gmt, aest, pst, etc)
A couple of new date calculation functions: "days until April", "days left in March"
Dates formatted in ISO8601 are now recognized in expressions
"Sept" can now be used to refer to September (in addition to "Sep")
"SIN" can be used to refer to Singapore now (in the past this conflicted with the sin() trigonometry function)
Misc
Added a menu item under the Help menu to reset suppressed warnings
You can now suppress the dialog offering to automatically rename variables for you after changing a variable's name
Bug fixes
Fixed an issue with auto-complete and variables beginning with "total" (thanks Bill!)
Fixed a bug with an incorrectly identified comment in a variable declaration (thanks Russ!)
Fixed an issue with the next/last/this weekday function returning inaccurate answers in some cases
Fixed an issue where automatic variable renaming was triggering unnecessarily when clicking away from a variable declaration line
Fixed a crash that could occur for some users on macOS Ventura 13.1+ after variable renaming
3.7.1
Specifier Shorthands
Added some short form specifiers for quicker conversions:
Use "num" for number ("35% as num" = 0.35)
Use "bin" for binary ("123 as bin" = 0b1111011)
Use "iso" for the iso8603 date format ("today as iso" = 2022-11-24T12:00:00+03:00)
Wolfram|Alpha
Your Mac's preferred unit system is now respected in Wolfram|Alpha queries
Your preferred number format is now respected in Wolfram|Alpha queries
Wolfram|Alpha queries may now be performed in QuickSoulver
It can take a few minutes for newly created Wolfram|Alpha AppIDs to be activated. This is now better communicated in Soulver's settings
Misc
Multi-word variables are now automatically formatted with non-breaking spaces
Alfred workflow has been updated and now works with Soulver installed in non-standard locations
Some minor bug fixes & various general improvements to the calculation engine
3.7
Soulver 3 is optimized for macOS 13 Ventura and now requires macOS Big Sur or later
System integration
New "Calculate with Soulver" action for Shortcuts (macOS 13+)
Improved Quick Look previews of Soulver files (macOS 12+)
Alfred workflow updated for Alfred 5
Wolfram|Alpha integration
Query Wolfram|Alpha directly from Soulver
Type a query followed by "= ?", like "distance to the moon = ?"
If Wolfram|Alpha knows the answer to your query, the "?" will be replaced with the answer
This feature requires some setup in the Settings > Calculator > Wolfram|Alpha pane
General Improvements
New help popover
Design improvements to the Settings
Minor bug fixes
3.6.1
Editor
More easily "comment out" numbers by selecting text and pressing the quotation marks (") key. This will wrap the text in quotation marks the calculator will ignore it.
Email addresses are now recognized (in addition to web URLs)
Quick Total
The quick total now compresses to the right of the answer column during scrolling: this reduces overlap with other answers
Median is supported as a quick statistic
Statistics of Lists
Perform statistical operations on lists of lines, like "total of 3, 4, 5 7 and 9" = (28), or "average of 12, 30 and 90" (=44)
Supported statistics include sum/total, average/mean, count, and median
Units & Conversions
Feet and inches can now be specified using ' and ". For example: 3' 4" + 9' 2" = 12 feet 6 inches
Added decimetres unit (dm)
Added microgram unit (mcg)
Rounding to Nearest x
Added "to nearest (x)" rounding function. Examples:
"37 to nearest 10" (= 40)
$490 rounded to nearest hundred (= "$500")
2,100 to nearest thousand (= 2,000)
Multiples
Added additional functions for "multiple on" and "multiple off" (in addition to "multiple of"):
100 is what multiple of 50 (= 2x)
50 is what multiple off 100 (= 0.5x)
100 is what multiple on 50 (= 1x)
Conditionals
Added an additional conditional syntax with a variable declaration: "profitable = true if income > expenses"
"Unless" is now supported in conditionals: "profitable = true unless expenses > income"
Support for "and" (&&) and "or" (||): "Overweight = BMI >= 25 and BMI < 30"
Bug Fixes
Fixed an issue where Soulver could sometimes automatically disconnect from iCloud (thanks Sebastian)
Fixed an issue with unexpected behaviour when typing Korean characters (thanks Daeok)
Fixed an issue with doing business day calculations in parenthesis (thanks Tom)
Misc
Percentage + number now gives a percentage (rather than a number): 50% + 0.5 = 100%
SI symbols for large & small numbers (other than k, M, G and T) are no longer supported (as they were causing confusion)
Soulver 3 now requires macOS 10.15 (Catalina) or later
3.6
iCloud Sync
iCloud is now the default location for sheetbooks in new installations of Soulver
Global variables, custom units & additional places also sync via iCloud to other Macs
Move an existing sheetbook into iCloud using the General preference pane
If an existing sheetbook is already stored in iCloud, you will be offered the option of merging the sheetbook from your Mac with it
Bug Fixes
Fixed an issue where variable value peeking was not working with global variables
Fixed an issue with inaccurate rates in global variables defined in currencies other than USD (thanks Johanna)
Fixed an issue where numbers with the form "09:05:03 P.M." were being recognised as laptimes rather than timestamps
Fixed an issue that caused a crash in some rare cases
3.5.9
Support for date ranges in the form "March 12-15"
Added an additional percentage function: "what percentage change is 10 to 15" (= 50%)
Added a "divided by" function: "20 divided by 5" (= 4)
Support for the use of "oz" as a synonym for "fluid oz" (rather than only mass) and for "pounds" as a unit of either mass or currency
The XPF currency is now pegged to 119.332 EUR (thanks Ali!)
3.5.6
Dates & Times
Do calculations with a particular weekday next week/last week/this week: "Tuesday next week + 72 hours", "Friday last week 3pm + 4 days"
Do calculations involving time with format "1:34 hour" (1 hour 34 min), "2:35 min" (2 min 35 seconds)
Units & Conversions
You can now use "in" to refer to inches in conversions: "30 in to feet" (= 2.5 feet)
Convert frequency to time, and vice versa: "20 Hz in s" = (0.05s), 40s to Hz (= 0.025 Hz)
Added the microliter unit (µL)
Currencies
Added the Tether cryptocurrency (USDT)
3.5.5
Timecode Calculations
Added support for timecodes, often used in video editing
Timecodes have the format hh:mm:ss:frames followed by an "at" or "@" and the desired frame rate, i.e: "01:10:12:22 @ 30 fps"
Get the number of frames from a timecode: "00:30:25:10 @ 30 fps to frames" (= 54,760 frames)
Add/subtract frames: "00:03:01:00 @ 24 fps + 500 frames" (= 00:03:21:20)
Add/subtract units of time: "3h 2m 25s 10 frames at 24 fps + 1 hour 12 minutes" (= 04:14:25:10)
A default frame rate (24 fps) will be used if no frame rate is specified. You can override this default with a global variable. Set a global variable called "frame rate", and set to a fps value
Units & Conversions
Added frame and frames per second (fps) units:
"30 fps × 3 minutes" = (5,400 frames)
"12k frames / 24 fps" = (500 s)
Added a phrase to get the quantity of one unit in another:
"seconds in a day" (= 86,400 s),
"inches in a mile" (= 63,360 inches)
Bahraini dinars (BHD) now round to 3 decimal places
Rates
You can now convert a ratio of time into a simplified rate: "3 hours / 4 days to hours / day" (= 0.75 hours/days)
Added another phrase for multiplying a rate by a quantity of time: "$24 a day for a year" (= $8,765.82)
Time & Date Calculations
Added a phrase for getting the day of the week on a particular date: "day of the week on Jan 24, 1984" (= Tuesday)
Second and millisecond components are now supported on datestamps: "March 12, 09:30:35.534"
Laptimes now support an optional millisecond component after a decimal point: 01:04:35.534
Timezones
GMT ± offsets are now supported in timezone expressions: "now in GMT-7", "3pm GMT+8 to Paris"
Added a "date in timezone" function: "date in Germany", "date in Honolulu"
Change between two numbers
Added additional phrases for calculating a change between numbers, for instance:
"500 to 3000" (= 2,500)
"40 to 60 as %" (= 50%)
"20 to 40 as x" (= 2x)
Other improvements
Added additional phrases for getting the exponent given an original and final number:
"27 is 3 to what power" (= 3),
"49 is 7 to the what" (= 2).
Inverse trigonometry functions (asin, acos, atan) now return numbers with units rather than plain decimals: radians by default, or degrees (if the input is in degrees)
Bug fixes
Fixed an issue with annoying alert sounds when typing Korean characters (thanks Yeontae)
Fixed an issue with public holidays not working correctly in certain US jurisdictions (thanks Joe)
Fixed an issue where text only lines were not being included in a multi-line copy expressions & answers (thanks Markus)
Fixed a QuickSoulver answer truncating issue when system scrollbars are set to always visible (thanks Michal)
Average & count (when selected) are now shown in exported/printed sheets (thanks Markus)
A couple of misc bug fixes related to unit cancellation, and whitespace interpretation around operators (thanks Jasper & Daniel)
3.5.4
Cryptocurrencies
Added 6 additional popular cryptocurrencies: Solana (SOL), Avalanche (AVAX), Terra (LUNA), Polkadot (DOT), Polygon (MATIC) and Shiba Inu (SHIB)
Services
Soulver's "Calculate Anywhere" services can process multiple lines of text
The "Calculate & Copy/Replace" services can now sum a list of numbers
Localizations
Improved Simplified Chinese localization (thanks Pluwen)
Bug fixes
Public holidays are now taken into account when doing workday calculations from Alfred or the CLI (thanks Arthur)
Fixed a bug where workday calculations involving variables would not take public holidays into account (thanks Cameron)
Fixed a bug where certain numbers could be incorrectly parsed in locales using space as the thousands separator (thanks Juha)
Fixed a regression in the last update where scroll position was not being remembered when switching between sheets (thanks Daniel)
A few other misc. bug fixes and improvements
3.5
This is a major update that includes 20+ new features and improvements, and a new icon for Big Sur.
Live & Historical Stock Prices
Use live stock tickers in calculations: "10 AAPL", "TSLA × 30"
Do historical stock price queries: "10 AAPL on January 9, 2007"
You can also do historical queries for the actual (non-adjusted) closing price, and trading volume: "FB close on September 3, 2015", "AMZN volume on March 24, 2009"
Prices are included for 8 popular tech companies: Apple (AAPL), Facebook (FB), Alphabet (GOOGL), Amazon (AMZN), Microsoft (MSFT), Netflix (NFLX), AirBnB (ABNB), and Tesla (TSLA)
(App Store only) Subscribe to Soulver Stocks for access to 150k+ stock tickers across 70+ exchanges. Future iPhone & iPad versions of Soulver will also support this service
Historical Currency Conversions
Support for historical currency conversions: "1 BTC in USD on March 8, 2019", "30 EUR to USD one year ago"
Historical currency rates are available for all real-world currencies, back to 1999
Rates are also available for Bitcoin (back to 2013)
Text Editor
Align lines left, center, or right using the Format menu
Additional font sizes, now up to a maximum of 72pt
Scroll position is now retained when switching between sheets
System dictation is now supported in the main text editor (thanks Keith!)
Sheets & Sheetbooks
You can now open a sheetbook file (either from the Open dialog, or from Finder). Only one sheetbook can be edited at a time
New, leaner sheetbook file format
Sheetbooks created with previous versions of Soulver 3 will be automatically upgraded to the new format and will not be readable by previous versions of Soulver 3
Exporting/Printing
Option to hide comments (//) & heading indicators (#) from exported/printed sheets
Exported/printed sheets now respect heading & label colors
Numerous styling improvements to exported/printed sheets
Preferences
The "Tweak Engine" sheet been unified into the preferences in a "Calculator" preferences pane
Added a new preference to choose what happens when ⌘N is typed: create a new sheet in the sheetbook (optionally in a new window), or a new file in Finder
Improved Header styling window
Cooking Calculations / Density Conversions
Volume to mass conversions for 200+ substances: "250 grams butter in cups", "10 liters olive oil in kg"
Density of substance function: "density of white wine", "density of egg yolk"
Hexadecimal & Binary
Convert between decimal, hex or hexadecimal (0x) and binary (0b): "35 in binary", "119 to hex", "0b01010 to decimal", "0xF34 to binary"
Other Calculator Improvements
Public holidays in your country are taken into account when doing business/working day calculations
Support for combined phrasal functions: "half of half of 30% of 90"
Support for number words: "five minus three", "five hundred thirty three + two hundred and twelve", "1.4 million", etc
Square root and cube root phrase functions: "square root of 9", "cube root of 27"
Logarithm function with any base: "log 50 base 4"
Added the option to use monthly rather than annual compounding for compound interest: "30k for 5 years at 4.5% compounding monthly"
Scientific notation (rather than SI notation) is now used for numbers larger than a trillion, and smaller than a nano
Scientific notation now works with numbers that contain decimal points: "3e5.5"
Other misc. improvements
3.4.18
Bug Fixes
Fixed an issue where Soulver could unexpectedly quit during use (thanks to everyone who reported this)
Fixed an issue with time stamps in the format 3m55s were not being recognised without an additional space (thanks Terry!)
Fixed an issue where the incorrect sheet could be exported when using the File > Export to... menu command (thanks Cory!)
Fixed a rare issue with rate multiplications, where an answer might not include a unit (thanks Tom!)
3.4.17
Calculator Improvements
Support for year range calculations: "1978 to 2021" (= 43 years)
Support for conversions without a number to see the unit rate equivalence: "BTC to USD" (thanks Imthath!)
Support for laptime-by-laptime division: "01:10:00 / 00:05:00" (= 14) (thanks Brad!)
Support for implicit multiplication between a number and a function: "2sin(π/6)" (thanks Jasper!)
Export Improvements
Variable declaration lines don't get an unnecessary answer appended when exported into plain text (thanks Marco!)
Support for "Copy Lines & Answer as Image" in QuickSoulver (thanks Jasper!)
Bug Fixes
Fixed an issue where line references could detokenize when they form an ambiguously formatted date (thanks Craig!)
Fixed an issue where the HTML emailer would not quit after sending the email on Big Sur (thanks Yashodhan!)
Fixed an issue where the HTML emailer would not send any lines present after an '&' character (thanks Yashodhan!)
Fixed an issue where laptime by zero division could lead to a crash (thanks Brad!)
Fixed an issue where rates did not respond to rounding to a specific decimal place (thanks Jasper!)
Fixed an issue with variables that included a number followed by an underscore not being recognized correctly (thanks Baglan!)
Fixed an issue with implicit multiplication inside function expressions (thanks Cool Jay!)
Fixed an issue with labels with spaces in PDF/HTML export (thanks Burhan!)
Fixed an issue where pressing ⌘N in external documents would not make a new sheet
3.4.16
Currencies
Added the Satoshi currency (one hundred millionth of a Bitcoin)
Add custom units of currency defined in terms of any currency (not just USD)
Do calculations with cents, euro cents, and (British) pence
Bug fixes
Fixed an issue with certain calculations of inches not displaying the negative sign where required (thanks Matt!)
Fixed an issue where some numbers were being incorrectly interpreted as dates in calculations with certain comments (thanks Chris, and Matthew!)
Fixed a performance issue with long strings of repeating characters that could represent a unit (thanks Imthath!)
Fixed an issue where a number might not have thousands separators inserted correctly following a line reference and a minus symbol (thanks Ravi!)
Fixed an issue where the QuickSoulver global keystroke field was not visible to VoiceOver (thanks Scott!)
3.4.15
Dates, Times & Time Zones
You can now use 3-letter airport codes to do time zone calculations: '9am SFO to JFK', 'time at LHR'
Support for military times: '1945h'
Support for midday, noon & midnight as time aliases
Dates that look like math/numbers are now supported in some cases: 'days until 9/12', '10.09 + 3 weeks'
In an expression like '2021 - 33 years', 2021 will now be recognised as a year, rather than a regular number. The result will also be a year (and will not have thousands separators inserted).
Get the midpoint between two dates: 'midpoint between March 12 and April 5', 'halfway between today and next Thursday'
ISO8601 dates are now supported (provided they don't include spaces): '2020-01-19'
Simplified Chinese AM/PM characters are now supported
Bug Fixes
Hertz (and related units of frequency) now behave as rates in multiplications (thanks Erik!)
Fixed a possible crash after local variable refactoring (thanks Jasper!)
Fixed an issue with undoing a multiple selection edit (thanks Jasper!)
Fixed an issue with recognising a.m./p.m. with dots, as used in the Irish region (thanks Michael!)
Fixed an issue with certain rate divisions (thanks Tom!)
Other minor fixes and improvements
3.4.14
General Improvements
Optimized for macOS 11 Big Sur & the new M1 Apple Silicon Macs
You can now move sheets to other folders using "Move to…" in the Sheet menu, or the contextual menu on a sheet
You can now specify a syntax color for labels
20% improvement in calculation performance
Dates & Times
Improved the behaviour of the "time unit until date" phrase when the time on the date is not specified:
Expressions with small units of time (like hours, minutes & seconds) will count up to the start of the requested date (like hours until tomorrow will count the number of hours until midnight tonight)
Expressions with larger units of time (like days, months, weeks, years) will count up to the same time on the requested date (so days until tomorrow = 1 day).
Support for clock times without a colon when followed by a timezone: "1900 PST to UTC"
Added a phrase for getting the ISO 8601 week number on a certain date: "week number on March 12", "week number today"
You can now use fractional years in interest calculation functions
Fractions, Percentages Multiples
Fractions can now be used in all percentage word functions: "2/3 of 500", "50 is 1/5 of what", etc.
"Per cent" can now be used as an alternative to the % symbol ("percent" and "percentage" are also supported)
Added phrases for getting the multiple increase between numbers: "50 as x of 5" (= 10x), "2.5 as multiplier of 1" (= 2.5x)
Added an additional percentage phrase for a % change between two numbers: "50 to 75 is what %" (= 50%)
Text Editor Improvements
Improved copy/paste behaviour
Improved undo/redo behaviour
Improved variable auto-complete (press the escape key)
Added a command to duplicate lines (⌘D)
When starting a line with a comment (//), if a line reference was automatically inserted from the previous line, it will be deleted
Deleting numbers with thousands separators now removes all superfluous separators when auto-thousands separators is enabled
Scrubbing is now available in the contextual menu on a number
Hover over a variable to see its value in a popup
Bug Fixes
Fixed an issue with applying a currency symbol to an expression in parenthesis (thanks Jasper!)
Fixed an issue with multi-word variables and capitalised single word variables and dependent lines (thanks Sascha!)
Fixed a crash (thanks Max!)
Fixed a couple of sheet management bugs
3.4.10
General improvements
Added two new operator aliases: ** (meaning to the power of ^), and % as the remainder of a division (modulo)
Added a phrase for getting a particular weekday in the future ("Monday in 3 weeks")
Added the ability to convert between number/time and hertz, and number/hertz and time
You can now have labels without a trailing space, provided they don't end with a number
Added a Sheetbook backups window that you can use to restore to a previous sheetbook, or manually make a backup
Slightly improved the performance of the main editor
Unit Conversions
Added a metric measurement system preference (for fluid units, like cup and teaspoon)
Improved the accuracy of US customary fluid units.
Other Improvements
Pressing return after selecting an answer inserts a new line below
Minor bug fixes
3.4.7
Dates & calendar calculations
Use next/last phases: 'days until next year', 'hours till next week'
Do calculations with month names omitting the day: 'June to September' (= 3 months), 'March 2013 + 3 months' (= June 2013)
Find a quantity of a time in a given month or year: 'days in Feb, 2020' (= 29 days), 'workdays in Feb, 2020' (= 20 days), 'hours in June' (= 720 hours), 'days in 2020' (= 366 days)
Support for financial quarters (Q1, Q2, etc): 'days in Q3', 'days until Q4', 'workdays in Q1, 2020'
Do calculations with dates back to 50 AD, to up to 5000 AD (some people do need this!)
Minor bug fixes
3.4.0
Financial functions
10 new functions for doing common financial calculations, for example:
Compound interest: "$5,000 after 10 years at 5%" (= $8,144.47)
Monthly/annual/total mortgage payments: "monthly repayment on $10,000 for 6 years at 6%" (= $165.73)
Monthly/annual/total interest: "monthly interest on $10,000 for 6 years at 6%" (= $26.84)
Return on investment: "$500 invested $1,500 returned" (= 2x)
Annual return on investment: "annual return on $1,000 invested $2,500 returned after 7 years" (= 13.99%)
Present value of money: "present value of $1,000 after 20 years at 10%" (= $148.64)
Sheets & Search
Quickly open sheets or folders via a Spotlight search from within Soulver using "Open Quickly" (Command-Shift-O)
Added keystrokes to switch to the next/previous sheet in the sidebar
Totals
Lines that form parts of a calculation on a subsequent line are now excluded from the quick total (i.e variable declarations, and lines referenced by line references)
Added "count" as another quick statistic option (accessible by control-clicking on the quick total)
Accessibility
If VoiceOver is enabled, it will now be read out the answer automatically after you stop typing
Control the delay or disable this feature from the Accessibility window (under Soulver > Integrations > Accessibility)
3.3.0
Soulver has become even more useful in this release, with the addition of time zone conversions (by city or code), laptime support (HH:MM:SS), random number generation & if statements. This update also introduces "QuickSoulver" for doing quick calculations in Soulver, or anywhere in the system (via the menu bar, or global hotkey).
QuickSoulver
Perform "throwaway" calculations in a Spotlight-like interface
QuickSoulver floats above other windows, so you can use it from anywhere in macOS
Access QuickSoulver from the menu bar (enable this in the QuickSoulver preference pane)
Global hotkey (set the hotkey in the QuickSoulver preference pane)
Keystrokes:
⌘C (with no selection) copies the current line's answer & dismisses
⌘S saves as a new sheet
Time zone conversions
Convert times between time zones using city names or standard 3 or 4 letter codes (e.g "6pm Sydney to Chicago", "2am PST to GMT")
Added functions for getting the current time in a time zone: "Time in AEST", "PDT time", "Paris time", "Time in Tokyo"
Added a function for getting the time difference between time zones: "time difference between Seattle and Moscow"
61 time zone codes & 500 city names are supported
No internet connection required
Laptimes
Do calculations in 'laptimes' (time in the format HH:MM:SS). I.e "03:45:32 + 01:22:19" (= 05:07:51).
Laptimes can also be converted to/from regular units of time, and timespans.
Milliseconds (after a final dot) can be omitted. Hours and minutes must still be specified (e.g 32 seconds will be '00:00:32'). This is necessary to distinguish a lap time from a clock time.
Random numbers
New random number generating function: "random number between 1 and 10" to select a random integer in the given range
To generate a random floating point number, do: "random number between 0 and 1" (the answer will be something like 0.1273981722)
Multipliers
Added a multiplier specifier (e.g "4/2 as multiplier" = 2x)
ISO8601 date formatting
Added an ISO8601 specifier for dates and timestamps (e.g "1583398800 as iso8601" = 2020-03-05T09:00:00Z)
If statements
Added conditionals to Soulver. The syntax is "if x then y else z". The else component is optional. See the online documentation for more detailed examples.
Added standard comparison operators (==, !=, <, >, <=, >=) and a boolean type ('true' or 'false')
Files & sheets
Making a new Soulver file no longer requires the file to be saved to disk before editing
You can now open Soulver 2 files using the Open dialog (⌘O). As a result the import menu item has been been removed. You still import from the Open dialog, by clicking "Options" and ticking the checkbox
Totals
When totalling lines with incompatible types, the bottom-most summable lines will be added and shown in the final total
The quick total now respects your chosen font, rather than using the system font
URL Schemes
Added a new URL to open a specific sheet. To make a URL for opening a sheet, control-click on the sheet in the sidebar, and choose "Copy Link", or from the "Sheet" menu.
Localizations
Improvements to the Russian & German localizations (thanks Michael & Matthias!)
3.2.3
Minor improvements
You can now omit the "to/as" in unit conversions. I.e: "10 USD CAD" will now work
In addition & subtraction with mixed units, where the units share a common base unit, the answer will now be in terms of the larger unit rather than the last unit. I.e "10 km + 100 m" (= 10.1 km)
Added support for numbers in scientific notation "e" syntax . I.e: "1e3" (= 1,000)
3.2.1
Improvements
Variable declaration lines are now included in the grand total
Text copied out of the editor will now keep its syntax colors & styling when pasted into environments that support rich text
Added additional calendar math phrases: "2 weeks from today", "9 days after February 12"
Minor bug fixes
3.2
This update includes 30+ improvements to Soulver's math engine, including better performance. It also features also improved printing & PDF exporting, and styled email sending and HTML exporting.
Line Numbers
Added line numbers
Use the keystrokes (⌘1 - ⌘9) to quickly insert a reference to the corresponding line
Make references in plain text. For example, type "line1" to insert a reference to line1
Printing, Styled Emails & Exporting
You can now customize the appearance of printed sheets & PDFs (font & font size). They can also optionally include line numbers, the total, and a centred heading
Sub-total lines are now properly indicated as such in printed sheets & PDFs
Added an HTML as an export option
Added the macOS share sheet, and an option to copy an exported file directly to the clipboard
You can now send styled (HTML) emails (this requires macOS 10.15+). These can also be customized in the Export sheet
Soulver will launch a helper app to do the actual emailing. The standard macOS Mail app must be configured with at least one valid email account to send a styled email
Calendar Math
"Now" can be used to get the current time: "now + 3 hours 15 minutes"
Do calculations with workdays/weekdays: "10 March to 17 March in workdays" (= 5 workdays)
New syntaxes for working out date intervals: "Days between 12 March and 31 December", "days from 12 March to 31 December", or "days in March 12 to 31 December"
New syntaxes for working out intervals from the present up to a certain point in time: "days until December 25", "days before December 25", "days to December 25"
New syntax for working out intervals from a point in the past, to the present: "days since December 1"
Proper calendar months are now used when doing time intervals calculations (rather than Gregorian average months). Eg. "February 10 to April 10" now equals 2 months exactly (rather than 1.9 months, where a month was defined as ~30.44 days)
Control/right-click on a date answer to see what day of the week it falls on
Specifiers
Use specifiers to convert between different types, and set the output of an expression
Fraction: "0.2 as fraction" (= ⅕). This replaces the old "fractionize where possible" formatting option
Fraction symbols (like '½') are used where possible in fraction output for fractions
Percentage: "0.5 as percentage" (= 50%). - "As percent" or "as %" also supported
Plain number: "50 km as number" (= 50)
Timespans: "5.5 minutes as timespan" (= 5 minutes 30 seconds)
Unix Timestamps: March 12 as timestamp (= 1583974800). Timestamps will format correctly in the answer column by default (without notation or thousands separators). To create a new unix timestamp, use "new timestamp". The previous syntax (simply "timestamp") is no longer supported
Rounding Specifiers
You can now round numbers using the following specifies.
0.5 rounded up (= 1.0)
0.5 rounded (= 1.0)
0.5 rounded down (= 0.0)
"1/3 to 3 dp" (= 0.333). "to 3 digits" is also supported
Units & Conversions
Re-designed the custom units pane to group custom units by type
Choose your preferred measurement system for volume units (like teaspoon) in the new region preference pane
A unit's symbol (rather than it's full name) are now used in answers. To see the full name of the unit used in the answer, control/right-click on the answer
Added an alternative syntax for unit conversion: "days in 3 weeks" (= 21 days)
CSS units (px, em, pt) can now be converted into other units of length (like inches)
Like Soulver 2, "last unit wins" in mixed unit arithmetic. For example: 3 km + 3 m = 3,003 m. Prior versions of Soulver 3 used "first unit wins"
Compound units like "kg liters" are no longer supported
Scientific units (electricity, pressure, magnetism, force, luminosity) are not currently supported
Currencies
You can now customize currency symbols, letting you set which currency should used for the $ and ¥ symbols, for example. You can also add your own symbols for any currency, and select whether the symbol is displayed in front of, or after the currency (with optional spaces)
Convert currencies by symbol ($, €, ¥), eg. "30 USD in €" (previously the 3-letter currency code was always required)
For totals involving currencies, a currency's rounded answer (usually to 2 dp) is now used, rather than its raw, maximum accuracy answer
Rates
New syntaxes for working with rates: "30 hours at $30/hour (= $900)", or "$900 at $30/hour" (= 30 hours)
Rates of different (but compatible) units are now included in totals
Other changes
Soulver 3 no longer uses Math.js
Consequently Soulver 3.2 is up to 4x faster than Soulver 3.1 at number crunching. It loads long sheets almost instantaneously. An issue where typing performance was sluggish in long sheets with a lot of variables has also been resolved
Like Soulver 2, quotation marks can be used to comment out parts of an expression
The main window now remembers its size and position, even if you manually close it
Bug fixes
Fixed an issue with slash comments followed by Chinese Hanzi characters
Fixed an issue where only the second # in a multi-# heading was receiving syntax coloring with a custom color specified
Fixed an issue where clicks in the text area's margin were not highlight the nearest line
Fixed an issue related to automatic thousands-separator insertion
Fixed an issue where labels took precedence over comments
3.1.2
The primary focus of this update is ensuring sheetbook files work correctly in synced folders, like Dropbox and iCloud Drive.
Other improvements
A sheetbook recovery feature will now help you recover from a backup if Soulver cannot read your sheets
Your chosen font size now applies during printing
Added an “Internet Access Policy” file to Soulver that provides information on the various internet services used by Soulver (like for currency rate refreshes). This information used by apps like “Little Snitch”, which help you make an informed decision on which outgoing connections should be allowed
3.1
The most significant new features are:
Create and edit Soulver files (.slvr) in place.
The integrated sheets manager is a convenient default for most users, but it is also helpful to be able to save and edit Soulver files in the traditional way in Finder too. Go to
File > New > External Documentto make a new external soulver document.
Default formatting options.
You can now set your preferred default formatting options for answers. Go to
Edit > Tweak Engine… > Answers. This is helpful if you want to always turn notation off by default or set a different default precision. You can always override the defaults for a line by setting any formatting option manually, either through theLine > Formatting Optionsmenu, or in the line's contextual menu.
Fraction support
This update brings a new formatting option:
Fractionize where possible. The default is off, but when you turn this on for a line (or in the default formatting options), then Soulver will convert your answer into a fraction when it makes sense to do so. For example,1.75will be formatted as1 3/4.
Last updated