Add imenu-list layer
imenu-list provides a side bar that shows all imenu entries of the current buffer
This commit is contained in:
parent
b364697125
commit
6f2e2df275
32
layers/+tools/imenu-list/README.org
Normal file
32
layers/+tools/imenu-list/README.org
Normal file
|
@ -0,0 +1,32 @@
|
|||
* imenu-list contribution layer for Spacemacs
|
||||
** Table of Contents :TOC@4:
|
||||
- [[#imenu-list-contribution-layer-for-spacemacs][imenu-list contribution layer for Spacemacs]]
|
||||
- [[#description][Description]]
|
||||
- [[#install][Install]]
|
||||
- [[#key-bindings][Key bindings]]
|
||||
- [[#from-any-buffer][From any buffer]]
|
||||
- [[#from-imenu-list-buffer][From imenu-list buffer]]
|
||||
|
||||
** Description
|
||||
This layer uses [[https://github.com/bmag/imenu-list][imenu-list]] to show the current buffer's index in a side bar.
|
||||
[[file:img/imenu-list-example.png]]
|
||||
|
||||
** Install
|
||||
To use this contribution add it to your =~/.spacemacs=
|
||||
|
||||
#+begin_src emacs-lisp
|
||||
(setq-default dotspacemacs-configuration-layers '(imenu-list))
|
||||
#+end_src
|
||||
|
||||
** Key bindings
|
||||
*** From any buffer
|
||||
| Key Binding | Description |
|
||||
|-------------+--------------------------|
|
||||
| ~SPC b i~ | toggle imenu-list window |
|
||||
*** From imenu-list buffer
|
||||
| Key Binding | Description |
|
||||
|-------------+--------------------------------------------------------|
|
||||
| ~q~ | quit imenu-list window |
|
||||
| ~RET~ | go to current entry |
|
||||
| ~d~ | display current entry, keep focus on imenu-list window |
|
||||
| ~f~ | fold/unfold current section |
|
BIN
layers/+tools/imenu-list/img/imenu-list-example.png
Normal file
BIN
layers/+tools/imenu-list/img/imenu-list-example.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 138 KiB |
33
layers/+tools/imenu-list/packages.el
Normal file
33
layers/+tools/imenu-list/packages.el
Normal file
|
@ -0,0 +1,33 @@
|
|||
;;; packages.el --- imenu-list Layer packages File for Spacemacs
|
||||
;;
|
||||
;; Copyright (c) 2012-2014 Sylvain Benner
|
||||
;; Copyright (c) 2014-2015 Sylvain Benner & Contributors
|
||||
;;
|
||||
;; Author: Sylvain Benner <sylvain.benner@gmail.com>
|
||||
;; URL: https://github.com/syl20bnr/spacemacs
|
||||
;;
|
||||
;; This file is not part of GNU Emacs.
|
||||
;;
|
||||
;;; License: GPLv3
|
||||
|
||||
;; List of all packages to install and/or initialize. Built-in packages
|
||||
;; which require an initialization must be listed explicitly in the list.
|
||||
(setq imenu-list-packages '(imenu-list))
|
||||
|
||||
;; List of packages to exclude.
|
||||
(setq imenu-list-excluded-packages '())
|
||||
|
||||
(defun imenu-list/init-imenu-list ()
|
||||
(use-package imenu-list
|
||||
:defer t
|
||||
:init
|
||||
(progn
|
||||
(setq imenu-list-focus-after-activation t
|
||||
imenu-list-auto-resize t)
|
||||
(spacemacs/set-leader-keys "bi" #'imenu-list-minor-mode))
|
||||
:config
|
||||
(evilified-state-evilify-map imenu-list-major-mode-map
|
||||
:mode imenu-list-major-mode
|
||||
:bindings
|
||||
"d" #'imenu-list-display-entry
|
||||
"q" #'imenu-list-minor-mode)))
|
Loading…
Reference in a new issue