;;; pcvs-util.el --- utility functions for PCL-CVS -*- byte-compile-dynamic: t -*-
-;; Copyright (C) 1991-2011 Free Software Foundation, Inc.
+;; Copyright (C) 1991-2014 Free Software Foundation, Inc.
;; Author: Stefan Monnier <monnier@iro.umontreal.ca>
;; Keywords: pcl-cvs
;;; Code:
-(eval-when-compile (require 'cl))
+(eval-when-compile (require 'cl-lib))
;;;;
;;;; list processing
(while (and l (> n 1))
(setcdr nl (list (pop l)))
(setq nl (cdr nl))
- (decf n))
+ (cl-decf n))
ret))))
(defun cvs-partition (p l)
(pop-up-frames nil))
(or (let ((buf (get-buffer-window buf))) (and buf (select-window buf)))
(and pop-up-windows
- (ignore-errors (select-window (split-window-vertically)))
- (switch-to-buffer buf))
+ (ignore-errors (select-window (split-window-below)))
+ (switch-to-buffer buf nil 'force-same-window))
(pop-to-buffer (current-buffer)))))
(defun cvs-bury-buffer (buf &optional mainbuf)
BUF is assumed to be a temporary buffer used from the buffer MAINBUF."
(interactive (list (current-buffer)))
(save-current-buffer
- (let ((win (if (eq buf (window-buffer (selected-window))) (selected-window)
+ (let ((win (if (eq buf (window-buffer)) (selected-window)
(get-buffer-window buf t))))
(when win
(if (window-dedicated-p win)
;;; )
)))
(with-current-buffer buf
- (bury-buffer (unless (and (eq buf (window-buffer (selected-window)))
- (not (window-dedicated-p (selected-window))))
+ (bury-buffer (unless (and (eq buf (window-buffer))
+ (not (window-dedicated-p)))
buf)))
(when mainbuf
(let ((mainwin (or (get-buffer-window mainbuf)
(if noreuse (generate-new-buffer name)
(get-buffer-create name)))
(unless noreuse
- (dolist (buf (buffer-list))
+ (cl-dolist (buf (buffer-list))
(with-current-buffer buf
(when (equal name list-buffers-directory)
- (return buf)))))
+ (cl-return buf)))))
(with-current-buffer (create-file-buffer name)
(setq list-buffers-directory name)
(current-buffer))))
(if oneline (line-end-position) (point-max))))
(file-error nil)))
-(defun cvs-string-prefix-p (str1 str2)
- "Tell whether STR1 is a prefix of STR2."
- (eq t (compare-strings str2 nil (length str1) str1 nil nil)))
+(define-obsolete-function-alias 'cvs-string-prefix-p 'string-prefix-p "24.3")
;;;;
;;;; file names
;;;; (interactive <foo>) support function
;;;;
-(defstruct (cvs-qtypedesc
- (:constructor nil) (:copier nil)
- (:constructor cvs-qtypedesc-create
- (str2obj obj2str &optional complete hist-sym require)))
+(cl-defstruct (cvs-qtypedesc
+ (:constructor nil) (:copier nil)
+ (:constructor cvs-qtypedesc-create
+ (str2obj obj2str &optional complete hist-sym require)))
str2obj
obj2str
hist-sym
;;;; Flags handling
;;;;
-(defstruct (cvs-flags
- (:constructor nil)
- (:constructor -cvs-flags-make
- (desc defaults &optional qtypedesc hist-sym)))
+(cl-defstruct (cvs-flags
+ (:constructor nil)
+ (:constructor -cvs-flags-make
+ (desc defaults &optional qtypedesc hist-sym)))
defaults persist desc qtypedesc hist-sym)
(defmacro cvs-flags-define (sym defaults
Optional argument DESC will be used for the prompt.
If ARG (or a prefix argument) is nil, just use the 0th default.
If it is a non-negative integer, use the corresponding default.
-If it is a negative integer query for a new value of the corresponding
+If it is a negative integer, query for a new value of the corresponding
default and return that new value.
If it is \\[universal-argument], just query and return a value without
altering the defaults.
(nth numarg defaults))))
(defsubst cvs-flags-set (sym index value)
- "Set SYM's INDEX'th setting to VALUE."
+ "Set SYM's INDEXth setting to VALUE."
(setf (nth index (cvs-flags-defaults (symbol-value sym))) value))
;;;;
See `cvs-prefix-set' for further description of the behavior."))
(defvar ,cps
(let ((defaults ,defaults))
- ;; sanity ensurance
+ ;; sanity insurance
(unless (>= (length defaults) cvs-prefix-number)
(setq defaults (append defaults
(make-list (1- cvs-prefix-number)
"Set the cvs-prefix contained in SYM.
If ARG is between 0 and 9, it selects the corresponding default.
If ARG is negative (or \\[universal-argument] which corresponds to negative 0),
- it queries the user and sets the -ARG'th default.
+ it queries the user and sets the -ARGth default.
If ARG is greater than 9 (or \\[universal-argument] \\[universal-argument]),
the (ARG mod 10)'th prefix is made persistent.
If ARG is nil toggle the PREFIX's value between its 0th default and nil