По часовому поясу группы новостей в Date: header

Как настроить emacs/gnus для использования часового пояса группы новостей в опубликованных сообщениях?

Я хотел бы использовать часовой пояс CET в группах новостей pl.* и UCT в общих группах новостей.


person AnFi    schedule 08.03.2014    source источник


Ответы (1)


Я бы использовал message-header-setup-hook или message-send-hook с этой функцией:

(defvar date-rewrite-rules
  '(("pl" . return-time-string-in-CET)
    ("." . return-time-string-in-UTC)))
(defun rewrite-date-based-on-newsgroup ()
  (save-excursion
    (save-restriction
      (widen)
      (goto-char 0)
      (narrow-to-region 0 (search-forward mail-header-separator))
      (goto-char 0)
      (search-forward-regexp "^Newsgroup: ")
      (let ((date-f nil)
            (tail date-rewrite-rules))
        (while (and (null date-f)
                    tail)
          (let ((rule (pop tail)))
            (when (looking-at (car rule))
              (setq date-f (cdr rule)))))
        (when date-f
          (goto-char 0)
          (search-forward-regexp "^Date: ")
          (delete-region (point) (line-end-position))
          (insert (funcall date-f)))))))

NB: код не тестировался, это просто отправная точка, с которой вы должны разрабатывать свое решение.

person sds    schedule 17.07.2015
comment
Выдает ошибку save-restriction: Args out of range: 0, 498 - где 498 равно количеству символов/байтов в заголовках и разделителях почтовых заголовков. - person AnFi; 19.07.2015
comment
это просто отправная точка, с которой вы должны разработать свое решение - person sds; 19.07.2015