Now there is a dedicated function for this (see org-time-stamp-inactive). For example:
(defun my/timenow ()
(let ((current-prefix-arg '(16)))
(define-key org-mode-map (kbd "<f1>") 'my/timenow)
You can also skip the prompt with two universal prefix
arguments: C-u C-u C-c !.
In trying to answer your problem, I ran into M-x regex-builder, which may help you as you try to build these regular expressions.
Anyways, you've only defined 4 characters to match:
something that's not a # or space
something that's an :alpha:
an equals sign
This regex will get you most of the way there: [[:alpha:]]* = as it will highlight zero or ...
You can do that using timers. Define a function to print out the time in the echo area:
(defun announce-time ()
(message (format "The time is %s" (format-time-string "%H:%M" (current-time)))))
and set up a timer to run it at some initial time and every hour thereafter:
(run-at-time "00:00" 3600 #'announce-time)
You can cancel the timer if you don't ...