help-gnu-emacs
[Top][All Lists]
Advanced

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

Re: [External] : Re: User setup for emacs


From: Emanuel Berg
Subject: Re: [External] : Re: User setup for emacs
Date: Mon, 11 Oct 2021 18:39:28 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (gnu/linux)

I wonder what this code is supposed to do?

;;; -*- lexical-binding: t -*-
;;;
;;; this file:
;;;   http://user.it.uu.se/~embe8573/emacs-init/custom-vars.el
;;;   https://dataswamp.org/~incal/emacs-init/custom-vars.el

(require 'cl-lib)
(require 'search-regexp-in-files) ; 
https://dataswamp.org/~incal/emacs-init/search-regexp-in-files.el

(defun echo-user-variable ()
  (interactive)
  (let ((var (variable-at-point t))) ; ANY-SYMBOL
    (when (and (custom-variable-p var)
               (get var 'custom-set) )
      (message "user variable") )))

(defun find-custom-set-vars (&optional buffer)
  (interactive)
  (let ((bfr (or buffer (current-buffer)))
        (out-bfr (get-buffer-create "*CustomSetVariables*"))
        (hits 0) )
    (with-current-buffer bfr
      (save-excursion
        (goto-char (point-min))
        (while (re-search-forward "([[:space:]]*set[fq][[:space:]]+" nil t)
          (cl-incf hits)
          (let ((var (variable-at-point t)) ; ANY-SYMBOL
                (line (line-number-at-pos)) )
            (when (and (custom-variable-p var)
                       (get var 'custom-set) )
              (with-current-buffer out-bfr
                (insert
                 (format "%s, %s: %s\n" bfr line var))) )))))
    (pop-to-buffer out-bfr)
    hits))

(defun fcsv-check-all-elisp ()
  (let*((conf-files (files-as-list "~/.emacs.d/emacs-init/**/*.el"))
        (fs (cons user-init-file conf-files))
        (hits 0) )
    (dolist (f fs hits)
      (cl-incf hits (find-custom-set-vars (find-file-noselect f))))))
;; (fcsv-check-all-elisp)

;; Result:
;;
;; .emacs, 39: show-paren-delay
;; erc-incal.el, 18: erc-user-full-name
;; erc-incal.el, 172: erc-header-line-format
;; mode-line.el, 8: column-number-mode
;; mode-line.el, 9: line-number-mode
;; spell.el, 10: ispell-program-name
;; w3m-tabs.el, 9: w3m-tab-width

-- 
underground experts united
https://dataswamp.org/~incal




reply via email to

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