From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp1 ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms11 with LMTPS id QKviDosk1V82fQAA0tVLHw (envelope-from ) for ; Sat, 12 Dec 2020 20:14:03 +0000 Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp1 with LMTPS id Zw+8Cosk1V+sZAAAbx9fmQ (envelope-from ) for ; Sat, 12 Dec 2020 20:14:03 +0000 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id E73E49402AC for ; Sat, 12 Dec 2020 20:14:02 +0000 (UTC) Received: from localhost ([::1]:44280 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1koBHF-0000Ol-UX for larch@yhetil.org; Sat, 12 Dec 2020 15:14:01 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:45204) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ko9y8-0003pQ-R3 for emacs-orgmode@gnu.org; Sat, 12 Dec 2020 13:50:12 -0500 Received: from static.214.254.202.116.clients.your-server.de ([116.202.254.214]:33554 helo=ciao.gmane.io) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ko9y7-0005Fk-4j for emacs-orgmode@gnu.org; Sat, 12 Dec 2020 13:50:12 -0500 Received: from list by ciao.gmane.io with local (Exim 4.92) (envelope-from ) id 1ko7NT-0005a1-30 for emacs-orgmode@gnu.org; Sat, 12 Dec 2020 17:04:11 +0100 X-Injected-Via-Gmane: http://gmane.org/ To: emacs-orgmode@gnu.org From: Maxim Nikulin Subject: Re: org-table change time from UTC to other timezones Date: Sat, 12 Dec 2020 23:04:04 +0700 Message-ID: References: <87wnxrjjl2.fsf@gmail.com> <87lfe5ju0t.fsf@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.10.0 In-Reply-To: Content-Language: en-US Received-SPF: pass client-ip=116.202.254.214; envelope-from=geo-emacs-orgmode@m.gmane-mx.org; helo=ciao.gmane.io X-Spam_score_int: 28 X-Spam_score: 2.8 X-Spam_bar: ++ X-Spam_report: (2.8 / 5.0 requ) BAYES_00=-1.9, DKIM_ADSP_CUSTOM_MED=0.001, FORGED_GMAIL_RCVD=1, FORGED_MUA_MOZILLA=2.309, FREEMAIL_FORGED_FROMDOMAIN=0.25, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.25, NICE_REPLY_A=-0.001, NML_ADSP_CUSTOM_MED=0.9, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: emacs-orgmode@gnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-orgmode-bounces+larch=yhetil.org@gnu.org Sender: "Emacs-orgmode" X-Migadu-Flow: FLOW_IN X-Migadu-Spam-Score: -1.70 Authentication-Results: aspmx1.migadu.com; dkim=none; dmarc=fail reason="SPF not aligned (relaxed), No valid DKIM" header.from=gmail.com (policy=none); spf=pass (aspmx1.migadu.com: domain of emacs-orgmode-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=emacs-orgmode-bounces@gnu.org X-Migadu-Queue-Id: E73E49402AC X-Spam-Score: -1.70 X-Migadu-Scanner: scn1.migadu.com X-TUID: 1B3Le+esfW+k 2020-12-12 Alan E. Davis wrote: > > Thank for the clear explanation.  My little problem seems to require a > super steam hammer.  Your insights are most helpful. You do not need a steam hammer. There are a number of tools around. Some of hammers however could not deal with all nails. Even "date" util could be used to convert between timestamps and human readable representation, between timezones. It could even do some arithmetic date --utc -d @1234567890 Fri Feb 13 23:31:30 UTC 2009 date -d 'now' +%s 1607787784 date -d 'now +10hours' +%s 1607823786 TZ=America/New_York date -d "@`TZ=Europe/Berlin date -d '2020-11-10 09:08:07 +10hours' '+%s'`" Mon Nov 9 19:08:07 EST 2020 In my opinion, org mode is too rigid in respect to timestamp format. Sometimes I would prefer to specify timestamps with timezone. Well known example of idiosyncrasy of particular applications. Timestamps in xls files are represented by floating point numbers, namely days since 1 Jan 1900, fractional part is time. Unfortunately 1900 is not a leap year, so to avoid unnecessary complications of code and keep memory footprint small, on Macs epoch starts in 1904, on windows year 1900 has Feb, 29...