Skip to content

Show source files' TODOs (and FIXMEs, etc) in Magit status buffer

License

Notifications You must be signed in to change notification settings

zhaojiangbin/magit-todos

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

magit-todos

https://melpa.org/packages/magit-todos-badge.svg https://stable.melpa.org/packages/magit-todos-badge.svg

This package displays keyword entries from source code comments and Org files in the Magit status buffer. Activating an item jumps to it in its file. By default, it uses keywords from hl-todo, minus a few (like NOTE).

Contents

Screenshots

screenshots/matrix.png

Org headings can optionally be fontified as such, and sorting can be customized (this shows sorting by filename, then keyword, then buffer position):

screenshots/org.png

Items can also be automatically grouped in a customizable way, which can be helpful in large repos:

screenshots/emacs-grouped.png

This shows grouping items by the first path component, then keyword, then filename, and with optional keyword header fontification:

screenshots/emacs-grouped-by-path.png

Installation

If you installed from MELPA, you’re done!

Manual

Install these required packages:

  • a
  • anaphora
  • async
  • dash
  • f
  • hl-todo
  • magit
  • pcre2el
  • s

Then put this file in your load-path, and put this in your init file:

(require 'magit-todos)

Usage

Run magit-todos-mode, then open a Magit status buffer.

Tips

  • Customize settings in the magit-todos group.
  • Jump to the to-do list in a Magit status buffer by pressing j T. If the section is empty (e.g. when using manual updates), it will scan for items.
  • When configured for manual updates, manually update the to-do list by pressing j T with point in the to-do list, or with the magit-todos-update command.
  • With point on a to-do item:
    • Show the item by pressing RET
    • Peek at the item by pressing SPC

Changelog

1.0.2

Fixes

  • regexp-quote item keywords when jumping to an item. (Fixes #36. Thanks to Derek Feichtinger.)
  • Ensure grep supports --perl-regexp.
  • Warn when unable to find a suitable scanner (i.e. rg, or a PCRE-compatible version of git or grep).

1.0.1

Fixes

  • Test whether git grep supports --perl-regexp by checking its --help output, rather than doing a search and checking for an error.
  • message instead of error for weird behavior. (This message exists to help track down an inconsequential bug.)
  • Remove unused magit-todos-ignore-directories option. (To be replaced in a future release.)

1.0.0

Initial release.

Credits

  • This package was inspired by magit-org-todos.
  • The ag support was made much simpler by the great pcre2el package by Jon Oddie.
  • Thanks to Jiangbin Zhao for his extensive testing and feedback.

License

GPLv3

About

Show source files' TODOs (and FIXMEs, etc) in Magit status buffer

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Emacs Lisp 100.0%