emacs-elpa-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[elpa] master d843bef: * csv-mode/cvs-mode.el (csv-set-comment-start): H


From: Leo Liu
Subject: [elpa] master d843bef: * csv-mode/cvs-mode.el (csv-set-comment-start): Handle nil.
Date: Sun, 24 May 2015 10:52:18 +0000

branch: master
commit d843befa6d4b9970aa98f8844edfe9fa7995c2f2
Author: Leo Liu <address@hidden>
Commit: Leo Liu <address@hidden>

    * csv-mode/cvs-mode.el (csv-set-comment-start): Handle nil.
    
    See also http://debbugs.gnu.org/20564.
---
 packages/csv-mode/csv-mode.el |   35 ++++++++++++++++++-----------------
 1 files changed, 18 insertions(+), 17 deletions(-)

diff --git a/packages/csv-mode/csv-mode.el b/packages/csv-mode/csv-mode.el
index effc72e..692579d 100644
--- a/packages/csv-mode/csv-mode.el
+++ b/packages/csv-mode/csv-mode.el
@@ -5,7 +5,7 @@
 ;; Author: Francis J. Wright <F.J.Wright at qmul.ac.uk>
 ;; Time-stamp: <23 August 2004>
 ;; URL: http://centaur.maths.qmul.ac.uk/Emacs/
-;; Version: 1.3
+;; Version: 1.4
 ;; Keywords: convenience
 
 ;; This package is free software; you can redistribute it and/or modify
@@ -332,24 +332,25 @@ It must be either a string or nil."
    (list (edit-and-eval-command
          "Comment start (string or nil): " csv-comment-start)))
   ;; Paragraph means a group of contiguous records:
-  (setq csv-comment-start string)
   (set (make-local-variable 'paragraph-separate) "[:space:]*$") ; White space.
   (set (make-local-variable 'paragraph-start) "\n");Must include \n explicitly!
-  (if string
-      (progn
-       (setq paragraph-separate (concat paragraph-separate "\\|" string)
-             paragraph-start (concat paragraph-start "\\|" string))
-        (set (make-local-variable 'comment-start) string)
-       (modify-syntax-entry
-        (string-to-char string) "<" csv-mode-syntax-table)
-       (modify-syntax-entry ?\n ">" csv-mode-syntax-table))
-    (with-syntax-table text-mode-syntax-table
-      (modify-syntax-entry (string-to-char string)
-                          (string (char-syntax (string-to-char string)))
-                          csv-mode-syntax-table)
-      (modify-syntax-entry ?\n
-                          (string (char-syntax ?\n))
-                          csv-mode-syntax-table))))
+  ;; Remove old comment-start/end if available
+  (with-syntax-table text-mode-syntax-table
+    (when comment-start
+      (modify-syntax-entry (string-to-char comment-start)
+                          (string (char-syntax (string-to-char comment-start)))
+                          csv-mode-syntax-table))
+    (modify-syntax-entry ?\n
+                        (string (char-syntax ?\n))
+                        csv-mode-syntax-table))
+  (when string
+    (setq paragraph-separate (concat paragraph-separate "\\|" string)
+         paragraph-start (concat paragraph-start "\\|" string))
+    (set (make-local-variable 'comment-start) string)
+    (modify-syntax-entry
+     (string-to-char string) "<" csv-mode-syntax-table)
+    (modify-syntax-entry ?\n ">" csv-mode-syntax-table))
+  (setq csv-comment-start string))
 
 ;;;###autoload
 (add-to-list 'auto-mode-alist '("\\.[Cc][Ss][Vv]\\'" . csv-mode))



reply via email to

[Prev in Thread] Current Thread [Next in Thread]