したがって、仕事ではフレキシブルタイム(flex hours、flexi hours ...)を使用しています。私は現在、私の時間(org-clock-(out|in)
)を追跡するためにorg-modeを使用していますが、私が8時間以上働いたかどうかを自動的に計算するように拡張したいと思います(余分な時間をflexitimeのアカウントに追加する必要があります) (私が昼休みなどを取った時間によって異なります)、フレキシビリティのアカウントの残高などです。Emacsを使用してflexitimeを追跡する(&org-mode)
誰でもこのためにEmacsを使用していますか?私は現在、私の時間を追跡することは非常に基本的なセットアップを使用してい
:
(defun check-in()
(interactive)
(let (pbuf (current-buffer))
(find-file (convert-standard-filename "whatnot"))
(goto-char (point-max))
(insert "\n")
(org-insert-heading)
(org-insert-time-stamp (current-time))
(org-clock-in)
(save-buffer)
(switch-to-buffer pbuf)))
(defun check-out()
(interactive)
(let (pbuf (current-buffer))
(find-file (convert-standard-filename "whatnot"))
(goto-char (point-max))
(org-clock-out)
(save-buffer)
(switch-to-buffer pbuf)))
あなたのコードは 'selected-window'に表示されているバッファと' current-buffer'を混同します。 Elispから 'switch-to-buffer'を呼び出すことは、一般にそのような問題の兆候です。 current-buffer + find-file + switch-to-bufferの代わりに '(with-current-buffer(find-file-noselect ...)...)'を使いたいとします。もう1つ注意してください: 'convert-standard-filename'を呼び出すのは気にしないでください。これはおそらくあなたが思うことをするものではないでしょう。 – Stefan