4

Emacs Lisp に、 PHP のstrtotimefunctionと同様に動作する機能はありますか? (実際には、GNU日付入力フォーマットの相対項目を実装しています。)

PHPで私は書くことができます

echo strtotime("+2 months"); //1258891352
echo strtotime("-3 months +2 weeks"); //1246952239

対応する UNIX タイムスタンプを返します。

4

3 に答える 3

4

あなたが求めているものとは正確には異なりますが、これは役立つかもしれません。'org-scheduleパッケージorg-modeには、日付を選択するための非常に優れたインターフェイスを持つコマンドがあります。それを行う特定のコマンドは であり'org-read-date、次のような日付を表すさまざまな方法を理解します。

 +0            --> today
 .             --> today
 +4d           --> four days from today
 +4            --> same as above
 +2w           --> two weeks from today
 ++5           --> five days from default date
 +2tue         --> second Tuesday from now.

便利なシンタックス シュガーを使用して日付をインタラクティブに指定する方法を探している場合は、そのルーチンがうまく適合するはずです。プログラムによる解決策を探している場合は、上記のコマンドが'org-read-date-analyze脚の作業を行うように呼び出しているように見えます。注: その使用法は少しあいまいです (その引数の 2 つが定義されていません...)。そのため、直接理解できない場合は、組織のメーリング リストにメールを送信する価値があるかもしれません。

于 2009-09-22T16:48:35.440 に答える
3
(defun string-to-time (date)
  (shell-command-to-string (format "date --date='%s' +%%s" date)))
于 2009-09-23T08:46:19.427 に答える
1

私が知っている最も近い組み込み関数はエンコード時間です。自然言語を使用したい場合は、おそらく次のようなものを書く必要があります: http://github.com/chaitanyagupta/chronicity

于 2009-09-22T12:21:31.500 に答える