-;;; riece-emacs.el --- FSF Emacs specific functions
+;;; riece-emacs.el --- FSF Emacs specific functions -*- lexical-binding: t -*-
;; Copyright (C) 1999 Daiki Ueno
;; Author: Daiki Ueno <ueno@unixuser.org>
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Code:
(car (last (symbol-function function)))
function)))))
-(defun riece-popup-menu-popup (menu event)
+(defun riece-popup-menu-popup (menu _event)
(let ((function (riece-popup-menu-bogus-filter-constructor menu)))
(if function
(funcall function))))
(add-text-properties 0 (length string) properties string)
string)
+(defun riece-normalize-modeline-string-1 (string)
+ (if string
+ (if (listp (car string))
+ (cons (car (car string)) (riece-normalize-modeline-string-1
+ (append (cdr (car string)) (cdr string))))
+ (cons (car string) (riece-normalize-modeline-string-1
+ (cdr string))))))
+
+(defun riece-normalize-modeline-string (string)
+ (if (listp string)
+ (list (apply #'concat (riece-normalize-modeline-string-1 string)))
+ string))
+
(defun riece-put-text-property-nonsticky (start end prop value
&optional object)
(add-text-properties start end
(reverse-region (point-min) (point-max))
(buffer-string))))))
+(defun riece-remprop (symbol property)
+ (let ((plist (symbol-plist symbol)))
+ (if (eq (car plist) property)
+ (setplist symbol (cdr (cdr plist)))
+ (while (and (nthcdr 2 plist)
+ (not (eq (car (nthcdr 2 plist)) property)))
+ (setq plist (nthcdr 2 plist)))
+ (if (nthcdr 2 plist)
+ (setcdr (cdr plist) (nthcdr 4 plist))))))
+
(provide 'riece-emacs)
;;; riece-emacs.el ends here