commit:     07b103582d883c60c9e547134c6169ea83ac52e0
Author:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
AuthorDate: Wed Mar  8 20:06:00 2017 +0000
Commit:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
CommitDate: Wed Mar  8 20:06:00 2017 +0000
URL:        https://gitweb.gentoo.org/proj/emacs-tools.git/commit/?id=07b10358

Account for news item format 2.0.

* gentoo-newsitem-mode.el (gentoo-newsitem-insert-skeleton):
Account for news item format 2.0.
(gentoo-newsitem-format-list): New variable.

 ChangeLog               |  6 ++++++
 gentoo-newsitem-mode.el | 22 ++++++++++++++++++++--
 2 files changed, 26 insertions(+), 2 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index e847125..d03f1b4 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2017-03-08  Ulrich Müller  <[email protected]>
+
+       * gentoo-newsitem-mode.el (gentoo-newsitem-insert-skeleton):
+       Account for news item format 2.0.
+       (gentoo-newsitem-format-list): New variable.
+
 2017-03-06  Ulrich Müller  <[email protected]>
 
        * Version 1.34 released.

diff --git a/gentoo-newsitem-mode.el b/gentoo-newsitem-mode.el
index 023fe79..27ce8d1 100644
--- a/gentoo-newsitem-mode.el
+++ b/gentoo-newsitem-mode.el
@@ -39,6 +39,10 @@
        . font-lock-keyword-face)))
   "Expressions to highlight in Gentoo newsitem mode.")
 
+(defvar gentoo-newsitem-format-list
+  '("1.0" "2.0")
+  "List of news item formats defined by GLEP 42.")
+
 ;;;###autoload
 (define-derived-mode gentoo-newsitem-mode text-mode "Newsitem"
   "Major mode for Gentoo GLEP 42 news items."
@@ -58,12 +62,26 @@
    "Author: " str "\n")
   ((skeleton-read "Translator (null string to terminate): ")
    "Translator: " str "\n")
-  "Content-Type: text/plain\n"
+  ;;@                                  ; not supported in XEmacs 21.5
+  (progn
+    (setq v2 (point-marker))
+    nil)
   "Posted: " (skeleton-read "Date of posting: "
                            (format-time-string "%Y-%m-%d"))
   "\n"
   "Revision: 1\n"
-  "News-Item-Format: 1.0\n"
+  "News-Item-Format: "
+  (setq v1 (completing-read
+           "News-Item-Format: "
+           (mapcar 'list gentoo-newsitem-format-list) nil 'confirm
+           nil nil (car (last gentoo-newsitem-format-list))))
+  "\n"
+  (if (string-equal v1 "1.0")
+      (save-excursion
+       ;;(goto-char (car skeleton-positions))
+       (goto-char v2)
+       (insert "Content-Type: text/plain\n")
+       nil))
   ((skeleton-read "Display-If-Installed: (null string to terminate): ")
    "Display-If-Installed: " str "\n")
   ((skeleton-read "Display-If-Keyword: (null string to terminate): ")

Reply via email to