From b64ee5b8a984e06aae29b8a92362a6db03cfed3b Mon Sep 17 00:00:00 2001 From: jao Date: Sat, 15 Oct 2022 16:58:18 +0100 Subject: local definition discovery sans imenu we already had our own lighter mechanism, just needed to use it better. it will also allow guessing local signatures, quite useful in chezzy (or more generally r6rs-librarish) schemes. --- elisp/geiser-imenu.el | 43 ------------------------------------------- 1 file changed, 43 deletions(-) delete mode 100644 elisp/geiser-imenu.el (limited to 'elisp/geiser-imenu.el') diff --git a/elisp/geiser-imenu.el b/elisp/geiser-imenu.el deleted file mode 100644 index 9573a6b..0000000 --- a/elisp/geiser-imenu.el +++ /dev/null @@ -1,43 +0,0 @@ -;;; geiser-imenu.el -- Tweaks to imenu configuration -*- lexical-binding: t; -*- - -;; Copyright (c) 2022 Jose Antonio Ortega Ruiz - -;; This program is free software; you can redistribute it and/or -;; modify it under the terms of the Modified BSD License. You should -;; have received a copy of the license along with this program. If -;; not, see . - -;; Start date: Wed Oct 12, 2022 01:43 - - -(require 'geiser-impl) - -(require 'imenu) -(require 'scheme) - -(defvar geiser-imenu-generic-expression - (mapcar (lambda (e) - `(,(car e) - ,(concat "^\\(?: *\\)" (substring (cadr e) 1)) - ,@(cddr e))) - scheme-imenu-generic-expression)) - -(defvar geiser-imenu--nested-defs nil) -(geiser-impl--register-local-variable - 'geiser-imenu--nested-defs 'nested-definitions nil - "A flag indicating whether this implementation accepts nested definitions. -For instance, R6%S library forms will contain them.") - -(defun geiser-imenu-declare-nested-definitions (impl) - "Declare IMPL as one that accepts nested definitions." - (add-to-list 'geiser-imenu--nested-definition-impls impl)) - -(defun geiser-imenu-setup (activate) - "Adjust imenu for the current implementation." - (setq-local imenu-generic-expression - (if (and activate geiser-imenu--nested-defs) - geiser-imenu-generic-expression - scheme-imenu-generic-expression))) - -(provide 'geiser-imenu) -;;; geiser-imenu.el ends here -- cgit v1.2.3