summaryrefslogtreecommitdiff
path: root/bits/bbdb-filters/bbdb-export.el
diff options
context:
space:
mode:
authorDavid Bremner <bremner@debian.org>2019-09-07 15:44:20 -0300
committerDavid Bremner <bremner@debian.org>2019-09-07 15:44:20 -0300
commit4427996318fc27eb6fd03e85d122a4a0d3180ef6 (patch)
tree2d32e0c5167d0918330b13e84e6f48c2bb2bce8f /bits/bbdb-filters/bbdb-export.el
parentb60e27b811df094eea9bb9063c9952547e8fba7a (diff)
remove source files
Diffstat (limited to 'bits/bbdb-filters/bbdb-export.el')
-rw-r--r--bits/bbdb-filters/bbdb-export.el140
1 files changed, 0 insertions, 140 deletions
diff --git a/bits/bbdb-filters/bbdb-export.el b/bits/bbdb-filters/bbdb-export.el
deleted file mode 100644
index 279238a..0000000
--- a/bits/bbdb-filters/bbdb-export.el
+++ /dev/null
@@ -1,140 +0,0 @@
-;;; This file is part of the BBDB Filters Package. BBDB Filters Package is a
-;;; collection of input and output filters for BBDB.
-;;;
-;;; Copyright (C) 1995 Neda Communications, Inc.
-;;; Prepared by Mohsen Banan (mohsen@neda.com)
-;;;
-;;; This library is free software; you can redistribute it and/or modify
-;;; it under the terms of the GNU Library General Public License as
-;;; published by the Free Software Foundation; either version 2 of the
-;;; License, or (at your option) any later version. This library is
-;;; distributed in the hope that it will be useful, but WITHOUT ANY
-;;; WARRANTY; without even the implied warranty of MERCHANTABILITY or
-;;; FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public
-;;; License for more details. You should have received a copy of the GNU
-;;; Library General Public License along with this library; if not, write
-;;; to the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139,
-;;; USA.
-;;;
-;;; This is bbdb-export.el
-;;;
-
-(defvar bbdb-export-buffer-name "*BBDB* Export"
- "*Default buffer name for exporting the contents of the *BBDB* buffer.")
-
-
-(defvar bbdb-export-compactly nil
- "If nil, the exported records are compactly printed.
-Otherwise the exported forms are indented for human-readability (at a
-cost of somewhat longer processing time for exporting records.
-The default value is nil.")
-
-
-(defun bbdb-export ()
- "Print the selected BBDB entries"
- (interactive)
- (save-excursion
- (let ((to-buffer (get-buffer-create bbdb-export-buffer-name))
- (records (progn (set-buffer bbdb-buffer-name)
- bbdb-records))
- (current-letter ""))
- ;; wipe to-buffer
- (switch-to-buffer to-buffer)
- (delete-region (point-min) (point-max))
-
- ;; insert header, records, trailer
- (bexp-buffer-insert-header)
- (while records
- (setq current-letter (bexp-do-record (car (car records)) current-letter))
- (setq records (cdr records)))
- (bexp-buffer-insert-trailer)
-
- (goto-char (point-min))
- (search-forward "(progn")
- (search-backward "(progn")
- (indent-sexp)
- ))
- (message "BBDB export buffer %s generated." bbdb-export-buffer-name))
-
-
-(defun bexp-do-record (record current-letter)
- "Insert the bbdb RECORD in export format."
- (let* ((name (bbdb-record-name record))
- (comp (bbdb-record-company record))
- (net (bbdb-record-net record))
- (phones (bbdb-record-phones record))
- (addrs (bbdb-record-addresses record))
- (notes (bbdb-record-raw-notes record))
- (first-letter (upcase (substring (concat (bbdb-record-sortkey record) "?") 0 1))))
-
- (if (not (string-equal first-letter current-letter))
- (progn (message "Now processing \"%s\" entries..." first-letter)
- (sleep-for 1)))
- (bexp-buffer-insert-record name comp net addrs phones notes)
- first-letter))
-
-
-(defun bexp-buffer-insert-header()
- (insert ";;; ======= Start of Exported BBDB Records =======\n")
- (insert "(progn
-(require 'bbdb-com)
-(defun bbdb-maybe-create (name company net &optional addrs phones notes)
- \"Try to add a record to BBDB if it does not already exist.\"
- (condition-case err
- (progn
- (bbdb-create-internal name company net addrs phones notes)
- (message \"%s %s added.\" name (if net (concat \"<\" net \">\") \"\"))
- (sleep-for 1))
- (error (ding)
- (message \"%s %s skipped. (%s)\"
- name
- (if net (concat \"<\" net \">\") \"\")
- (car (cdr err)))
- (sleep-for 1))))\n\n")
- (normal-mode))
-
-
-(defun bexp-buffer-insert-trailer()
- (insert ")\n")
- (insert ";;; ======= End of Exported BBDB Records =======\n"))
-
-
-(defun bexp-buffer-insert-record (name comp net addrs phones notes)
- (let ((begin (point))
- end)
- (message "Exporting %s" name)
- (insert (format "(bbdb-maybe-create %s %s '%s '%s '%s '%s)\n"
- (prin1-to-string (concat name "--IMPORTED"))
- (prin1-to-string comp)
- (prin1-to-string net)
- (prin1-to-string addrs)
- (prin1-to-string phones)
- (prin1-to-string notes)
- ))
- (setq end (point))
- (if (not bbdb-export-compactly)
- (progn
- ;; format region
- (narrow-to-region begin end)
- (goto-char begin)
- (replace-string " '(" "\n'(")
- (goto-char begin)
- (replace-string "\" \"" "\"\n\"")
- (goto-char begin)
- (replace-string "((" "(\n(")
- (goto-char begin)
- (replace-string "))" ")\n)")
- (goto-char begin)
- (replace-string "([" "(\n[")
- (goto-char begin)
- (replace-string "])" "]\n)")
- (goto-char begin)
- (replace-string ") (" ")\n(")
- (goto-char begin)
- (replace-string "] [" "]\n[")
- (goto-char (point-max))
- (lisp-indent-region begin (point))
- (widen)))
- ))
-
-(provide 'bbdb-export)