From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Michael Heerdegen Newsgroups: gmane.emacs.help Subject: Re: Using Calc unit conversion functions in an Org Spreadsheet Date: Thu, 16 Nov 2023 08:28:02 +0100 Message-ID: <87zfze2m4d.fsf@web.de> References: <87msvfp9p1.fsf@polaris64.net> Mime-Version: 1.0 Content-Type: text/plain Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="32822"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Gnus/5.13 (Gnus v5.13) To: help-gnu-emacs@gnu.org Cancel-Lock: sha1:pOTQ7DtkJ0uQs4r1Yj5Ey3SgonI= Original-X-From: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane-mx.org@gnu.org Thu Nov 16 08:28:50 2023 Return-path: Envelope-to: geh-help-gnu-emacs@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1r3Wny-0008Lq-83 for geh-help-gnu-emacs@m.gmane-mx.org; Thu, 16 Nov 2023 08:28:50 +0100 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1r3WnO-0006Ad-T5; Thu, 16 Nov 2023 02:28:14 -0500 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1r3WnC-00067l-LI for help-gnu-emacs@gnu.org; Thu, 16 Nov 2023 02:28:05 -0500 Original-Received: from ciao.gmane.io ([116.202.254.214]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1r3WnA-0003mK-EZ for help-gnu-emacs@gnu.org; Thu, 16 Nov 2023 02:28:01 -0500 Original-Received: from list by ciao.gmane.io with local (Exim 4.92) (envelope-from ) id 1r3Wn8-0007Ip-KT for help-gnu-emacs@gnu.org; Thu, 16 Nov 2023 08:27:58 +0100 X-Injected-Via-Gmane: http://gmane.org/ Received-SPF: pass client-ip=116.202.254.214; envelope-from=geh-help-gnu-emacs@m.gmane-mx.org; helo=ciao.gmane.io X-Spam_score_int: -13 X-Spam_score: -1.4 X-Spam_bar: - X-Spam_report: (-1.4 / 5.0 requ) BAYES_00=-1.9, FREEMAIL_FORGED_FROMDOMAIN=0.25, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.249, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: help-gnu-emacs@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Users list for the GNU Emacs text editor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane-mx.org@gnu.org Original-Sender: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.help:145544 Archived-At: Simon Pugnet writes: > I found ~math-convert-units~ which seems to do exactly what I need > however I can't get it to work and it's not documented. Passing a > string expression such as ~(math-convert-units "45 min" 'hr)~ causes > the error "Lisp error: (wrong-type-argument number-or-marker-p hr)". Hmm - yes, this function expects to be called like this (the example converts 0.35 hr to 21 min): (math-convert-units '(* (float 35 -1) (var hr var-hr)) '(var min var-min)) ==> (* (float 21 1) (var min var-min)) Unless you want to convert your input into the internal format of math expressions, maybe it is easier to first divide the input by 1hr, then simplify the (now unitless) result, and continue with that? Michael.