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