[elpa] master 7c56ded: Fix csv-mode to delete its own overlays only
branch: master commit 7c56ded6f9c67c64d74829e97f1641ea1f7fda1c Author: Leo Liu Commit: Leo Liu Fix csv-mode to delete its own overlays only * csv-mode/csv-mode.el (csv--make-overlay, csv--delete-overlay): New functions. (csv-align-fields, csv-unalign-fields, csv-transpose): Use them. --- packages/csv-mode/csv-mode.el | 30 +++--- 1 file changed, 19 insertions(+), 11 deletions(-) diff --git a/packages/csv-mode/csv-mode.el b/packages/csv-mode/csv-mode.el index b61fe67..8aa4ad9 100644 --- a/packages/csv-mode/csv-mode.el +++ b/packages/csv-mode/csv-mode.el @@ -4,7 +4,7 @@ ;; Author: "Francis J. Wright" ;; Time-stamp: <23 August 2004> -;; Version: 1.5 +;; Version: 1.6 ;; Keywords: convenience ;; This package is free software; you can redistribute it and/or modify @@ -957,6 +957,16 @@ The fields yanked are those last killed by `csv-kill-fields'." ;;; Aligning fields ;; +(defun csv--make-overlay (beg end &optional buffer front-advance rear-advance props) + (let ((o (make-overlay beg end buffer front-advance rear-advance))) +(overlay-put o 'csv t) +(while props + (overlay-put o (pop props) (pop props))) +o)) + +(defun csv--delete-overlay (o) + (and (overlay-get o 'csv) (delete-overlay o))) + (defun csv--column-widths () (let ((widths '())) ;; Construct list of column widths: @@ -1068,9 +1078,8 @@ If there is no selected region, default to the whole buffer." ;; in Emacs 21.3, neighbouring overlays ;; conflict, so use the following only ;; with hard alignment: - (let ((ol (make-overlay (point) (1+ (point)) nil t))) -(overlay-put ol 'invisible t) -(overlay-put ol 'evaporate t)) + (csv--make-overlay (point) (1+ (point)) nil t nil +'(invisible t evaporate t)) (forward-char))) ; skip separator ;; Soft alignment... @@ -1083,10 +1092,9 @@ If there is no selected region, default to the whole buffer." (when (> left-padding 0) ;; Display spaces before first field ;; by overlaying first character: - (overlay-put - (make-overlay beg (1+ beg)) - 'before-string - (make-string left-padding ?\ ))) + (csv--make-overlay + beg (1+ beg) nil nil nil + `(before-string ,(make-string left-padding ?\ ;; Display separator as spaces: (with-silent-modifications (put-text-property @@ -1097,7 +1105,7 @@ If there is no selected region, default to the whole buffer." (setq column (+ column column-width align-padding))) (t ;; Do not hide separators... -(let ((overlay (make-overlay beg (point) nil nil t))) +(let ((overlay (csv--make-overlay beg (point) nil nil t))) (when (> left-padding 0) ; Pad on the left. ;; Display spaces before field: (overlay-put overlay 'before-string @@ -1127,7 +1135,7 @@ If there is no selected region, default to the whole buffer." (list (region-beginning) (region-end)) (list (point-min) (point-max) ;; Remove any soft alignment: - (mapc 'delete-overlay(overlays-in beg end)) + (mapc #'csv--delete-overlay (overlays-in beg end)) (with-silent-modifications (remove-list-of-text-properties beg end '(display))) (when hard @@ -1178,7 +1186,7 @@ When called non-interactively, BEG and END specify region to process." rows columns) ;; Remove soft alignment if necessary: (when align - (mapc 'delete-overlay align) + (mapc 'csv--delete-overlay align) (setq align t)) (while (not (eobp)) (if (csv-not-looking-at-record)
[elpa] master 3a57d2e: * packages/javaimp/javaimp.el (javaimp): Add a parent group
branch: master commit 3a57d2e04d1148386210166212892af4764e0e20 Author: Stefan Monnier Commit: Stefan Monnier * packages/javaimp/javaimp.el (javaimp): Add a parent group (javaimp--maven-xml-load-tree): Fix reference to free var `project-elt`. (javaimp-organize-imports): Use cl-lib name. --- packages/javaimp/javaimp.el | 17 ++--- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/packages/javaimp/javaimp.el b/packages/javaimp/javaimp.el index 7cd1e3e..a14d3da 100644 --- a/packages/javaimp/javaimp.el +++ b/packages/javaimp/javaimp.el @@ -78,7 +78,8 @@ ;; User options (defgroup javaimp () - "Add and reorder Java import statements in Maven projects") + "Add and reorder Java import statements in Maven projects" + :group 'c) (defcustom javaimp-import-group-alist '(("\\`javax?\\." . 10)) "Specifies how to group classes and how to order resulting @@ -260,9 +261,10 @@ children and are also included. Subordinate modules with no inheritance are not included." (let ((xml-tree (javaimp--maven-xml-read-effective-pom file))) (cond ((assq 'project xml-tree) - (let ((project-elt (assq 'project xml-tree)) -(submodules (javaimp--xml-children - (javaimp--xml-child 'modules project-elt) 'module))) + (let* ((project-elt (assq 'project xml-tree)) + (submodules (javaimp--xml-children + (javaimp--xml-child 'modules project-elt) + 'module))) (and submodules ;; no real children (message "Independent submodules: %s" @@ -680,9 +682,10 @@ is `'ordinary' or `'static'. Interactively, NEW-IMPORTS is nil." (delete-region first (point (javaimp--prepare-for-insertion first) (setq all-imports - (delete-duplicates all-imports -:test (lambda (first second) -(equal (car first) (car second) + (cl-delete-duplicates + all-imports + :test (lambda (first second) + (equal (car first) (car second) ;; assign order (let ((with-order (mapcar
[elpa] master cbebd05: * seq-24.el (seq-concatenate, seq-into, seq--make-bindings): Use _
branch: master commit cbebd058c435ee2be5e9f30cedf78430ef979466 Author: Stefan Monnier Commit: Stefan Monnier * seq-24.el (seq-concatenate,seq-into,seq--make-bindings): Use _ rather than t as catch-all for pcase. --- packages/seq/seq-24.el |8 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/seq/seq-24.el b/packages/seq/seq-24.el index fc1d956..3b08855 100644 --- a/packages/seq/seq-24.el +++ b/packages/seq/seq-24.el @@ -1,6 +1,6 @@ ;;; seq-24.el --- seq.el implementation for Emacs 24.x -*- lexical-binding: t -*- -;; Copyright (C) 2014-2015 Free Software Foundation, Inc. +;; Copyright (C) 2014-2016 Free Software Foundation, Inc. ;; Author: Nicolas Petton ;; Keywords: sequences @@ -270,7 +270,7 @@ TYPE must be one of following symbols: vector, string or list. (`vector (apply #'vconcat seqs)) (`string (apply #'concat seqs)) (`list (apply #'append (append seqs '(nil -(t (error "Not a sequence type name: %S" type +(_ (error "Not a sequence type name: %S" type (defun seq-mapcat (function sequence &optional type) "Concatenate the result of applying FUNCTION to each element of SEQUENCE. @@ -359,7 +359,7 @@ TYPE can be one of the following symbols: vector, string or list." (`vector (vconcat sequence)) (`string (concat sequence)) (`list (append sequence nil)) -(t (error "Not a sequence type name: %S" type +(_ (error "Not a sequence type name: %S" type (defun seq-min (sequence) "Return the smallest element of SEQUENCE. @@ -432,7 +432,7 @@ BINDINGS." (seq-drop ,sequence ,index)) bindings) (setq rest-marker t))) - (t + (_ (push `(,name (seq--elt-safe ,sequence ,index)) bindings (setq index (1+ index))) bindings))