Skip to content

Commit e221157

Browse files
committed
Docs: Update readme
Lift out of single top-level section.
1 parent dd441eb commit e221157

File tree

1 file changed

+64
-52
lines changed

1 file changed

+64
-52
lines changed

README.org

Lines changed: 64 additions & 52 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,26 @@
1-
* magit-todos
1+
#+TITLE: magit-todos
22

3-
[[https://melpa.org/#/magit-todos][file:https://melpa.org/packages/magit-todos-badge.svg]] [[https://stable.melpa.org/#/magit-todos][file:https://stable.melpa.org/packages/magit-todos-badge.svg]]
3+
# NOTE: To avoid having this in the info manual, we use HTML rather than Org syntax; it still appears with the GitHub renderer.
4+
#+HTML: <a href="https://melpa.org/#/magit-todos"><img src="https://melpa.org/packages/magit-todos-badge.svg"></a> <a href="https://stable.melpa.org/#/magit-todos"><img src="https://stable.melpa.org/packages/magit-todos-badge.svg"></a>
45

56
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 [[https://github.com/tarsius/hl-todo][hl-todo]], minus a few (like =NOTE=).
67

7-
** Contents
8+
* Contents
89
:PROPERTIES:
9-
:TOC: siblings
10+
:TOC: :include siblings :ignore this :depth 0
1011
:END:
1112

12-
- [[#screenshots][Screenshots]]
13-
- [[#installation][Installation]]
14-
- [[#usage][Usage]]
15-
- [[#changelog][Changelog]]
16-
- [[#credits][Credits]]
13+
:CONTENTS:
14+
- [[#installation][Installation]]
15+
- [[#usage][Usage]]
16+
- [[#changelog][Changelog]]
17+
- [[#credits][Credits]]
18+
:END:
1719

18-
** Screenshots
20+
* Screenshots
21+
:PROPERTIES:
22+
:TOC: :ignore (this)
23+
:END:
1924

2025
[[screenshots/matrix.png]]
2126

@@ -39,12 +44,12 @@ Items specific to the current branch (or =git diff=) can be displayed in a separ
3944

4045
[[screenshots/branch-list.png]]
4146

42-
** Installation
47+
* Installation
4348
:PROPERTIES:
44-
:TOC: 0
49+
:TOC: :ignore descendants
4550
:END:
4651

47-
*** External scanner
52+
** External scanner
4853

4954
One of the following external scanners is required:
5055

@@ -54,11 +59,11 @@ One of the following external scanners is required:
5459

5560
Most Linux systems should have the latter two by default, but some non-standard systems may not. For example, on MacOS you may use [[https://brew.sh/][Homebrew]] to install =ripgrep=, or =git= with PCRE support, like: ~brew reinstall --with-pcre2 git~.
5661

57-
*** Emacs package
62+
** Emacs package
5863

5964
If you installed from MELPA, you're done!
6065

61-
**** Manually
66+
*** Manually
6267

6368
Install these required packages:
6469

@@ -76,14 +81,21 @@ Then put this file in your =load-path=, and put this in your init file:
7681
(require 'magit-todos)
7782
#+END_SRC
7883

79-
** Usage
84+
* Usage
8085
:PROPERTIES:
81-
:TOC: 0
86+
:TOC: :include descendants :depth 1 :local (depth)
8287
:END:
8388

89+
:CONTENTS:
90+
- [[#key-bindings][Key bindings]]
91+
- [[#commands][Commands]]
92+
- [[#tips][Tips]]
93+
:END:
94+
95+
8496
Activate =magit-todos-mode=. Then open a Magit status buffer, or run ~magit-todos-list~ to show a dedicated to-do list buffer.
8597

86-
*** Key bindings
98+
** Key bindings
8799

88100
*In Magit status buffer:*
89101
+ @@html:<kbd>@@j T@@html:</kbd>@@ :: Jump to the to-do list. If the section is empty (e.g. when using manual updates), it will scan for items.
@@ -96,7 +108,7 @@ Activate =magit-todos-mode=. Then open a Magit status buffer, or run ~magit-tod
96108
+ @@html:<kbd>@@RET@@html:</kbd>@@ :: Show item at point, or open dedicated buffer if point is on top heading.
97109
+ @@html:<kbd>@@SPC@@html:</kbd>@@ :: Peek at the item at point.
98110

99-
*** Commands
111+
** Commands
100112

101113
+ =magit-todos-mode= :: Activate =magit-todos-mode=, which automatically inserts the to-do list in Magit status buffers.
102114
+ =magit-todos-list= :: Display the to-do list in a separate buffer. This also works outside of git repos.
@@ -106,7 +118,7 @@ Helm and Ivy are also supported. Note that the =helm= and =ivy= packages are no
106118
+ =helm-magit-todos= :: Display the project to-do list with Helm.
107119
+ =ivy-magit-todos= :: Display the project to-do list with Ivy.
108120

109-
*** Tips
121+
** Tips
110122

111123
+ Customize settings in the =magit-todos= group.
112124
+ Use dir-local variables to set per-repository settings. For example, to exclude files and directories from being scanned for to-dos in a repo:
@@ -117,19 +129,19 @@ Helm and Ivy are also supported. Note that the =helm= and =ivy= packages are no
117129
5. Now Emacs will remember that setting in that repository. (You may also want to commit the =.dir-locals.el= file to the repo.)
118130
+ The ~magit-todos-list~ command also works outside of git repos.
119131

120-
**** TRAMP
132+
*** TRAMP
121133
:PROPERTIES:
122134
:CUSTOM_ID: TRAMP
123135
:END:
124136

125137
=magit-todos= attempts to work in remote repositories accessed via TRAMP. Note that if TRAMP can't find the scanner configured in =magit-todos-scanner=, you may need to use directory-local variables to either add the correct path to =tramp-remote-path= or choose a different scanner.
126138

127-
** Changelog
139+
* Changelog
128140
:PROPERTIES:
129-
:TOC: 0
141+
:TOC: :ignore descendants
130142
:END:
131143

132-
*** 1.7-pre
144+
** 1.7-pre
133145

134146
*Changed*
135147
+ Improve behavior when scanner backend exits with an error. (Now an error is signaled and the command's output is shown.)
@@ -139,7 +151,7 @@ Helm and Ivy are also supported. Note that the =helm= and =ivy= packages are no
139151
+ Updated ~find|grep~ scanner for newer versions of GNU ~find~ that interpret some arguments differently. (Tested on v4.8.0.)
140152
+ Prevent leading ~./~ in filenames when used with ~rg~ scanner. ([[https://github.com/alphapapa/magit-todos/pull/148][#148]]. Thanks to [[https://github.com/wentasah][Michal Sojka]] for reporting.)
141153

142-
*** 1.6
154+
** 1.6
143155

144156
+ Emacs 26.1 or later is now required.
145157

@@ -165,22 +177,22 @@ Helm and Ivy are also supported. Note that the =helm= and =ivy= packages are no
165177
+ Define jumper keys using a Transient suffix.
166178
+ Use new git-testing function in Magit for remote directories. ([[https://github.com/alphapapa/magit-todos/pull/126][#126]]. Thanks to [[https://github.com/maxhollmann][Max Hollmann]].)
167179

168-
*** 1.5.3
180+
** 1.5.3
169181

170182
*Fixes*
171183
+ Remove face from indentation. (Thanks to [[https://github.com/Alexander-Miller][Alexander Miller]].)
172184

173-
*** 1.5.2
185+
** 1.5.2
174186

175187
*Fixes*
176188
+ Use =magit-todos-exclude-globs= in branch todo list.
177189

178-
*** 1.5.1
190+
** 1.5.1
179191

180192
*Fixes*
181193
+ Add insertion function to end of =magit-status-sections-hook=.
182194

183-
*** 1.5
195+
** 1.5
184196

185197
*Added*
186198
+ Support for remote repositories accessed via TRAMP. See [[#TRAMP][usage notes]].
@@ -195,24 +207,24 @@ Helm and Ivy are also supported. Note that the =helm= and =ivy= packages are no
195207
*Removed*
196208
+ Option =magit-todos-branch-list-commit-ref=, replaced by option =magit-todos-branch-list-merge-base-ref=.
197209

198-
*** 1.4.3
210+
** 1.4.3
199211

200212
*Fixed*
201213
+ Don't use =--help= option when testing =git grep= command, because it can launch a Web browser on some configurations or platforms (see [[https://github.com/alphapapa/magit-todos/issues/43][#43]]).
202214
+ Caching when branch diff list is displayed.
203215
+ Commands =magit-section-forward= / =backward= sometimes skipped sections (see [[https://github.com/alphapapa/magit-todos/issues/66][#66]]).
204216

205-
*** 1.4.2
217+
** 1.4.2
206218

207219
*Fixed*
208220
+ Refreshing =magit-todos-list= buffer. ([[https://github.com/alphapapa/magit-todos/issues/92][#92]]. Thanks to [[https://github.com/filalex77][Oleksii Filonenko]] and [[https://github.com/hlissner][Henrik Lissner]] for reporting.)
209221

210-
*** 1.4.1
222+
** 1.4.1
211223

212224
*Fixed*
213225
+ Compiler warning.
214226

215-
*** 1.4
227+
** 1.4
216228

217229
*Added*
218230
+ Commands =helm-magit-todos= and =ivy-magit-todos=, which display items with Helm and Ivy. (Note that Helm and Ivy are not required, nor does this package depend on them; they are only used if present.)
@@ -226,15 +238,15 @@ Helm and Ivy are also supported. Note that the =helm= and =ivy= packages are no
226238
*Internal*
227239
+ Add synchronous mode to scanner functions, which return results directly usable by other code.
228240

229-
*** 1.3
241+
** 1.3
230242

231243
*Added*
232244
+ Branch diff task list. See new options =magit-todos-branch-list= and =magit-todos-branch-list-commit-ref=, and command =magit-todos-branch-list-toggle=, bound to =b= with point on to-do list heading. ([[https://github.com/alphapapa/magit-todos/issues/30][#30]], [[https://github.com/alphapapa/magit-todos/issues/77][#77]], [[https://github.com/alphapapa/magit-todos/pull/82][#82]]. Thanks to [[https://github.com/itamarst][Itamar Turner-Trauring]] and [[https://github.com/arronmabrey][Arron Mabrey]] for the suggestion, and to [[https://github.com/smaret][Sébastien Maret]] for implementing the commit-ref option.)
233245

234246
*Internal*
235247
+ Put newline in section headings. ([[https://github.com/alphapapa/magit-todos/pull/68][#68]]. Thanks to [[https://github.com/vermiculus][Sean Allred]].)
236248

237-
*** 1.2
249+
** 1.2
238250

239251
*Added*
240252
+ Allow ~magit-todos-list~ to work outside git repos.
@@ -251,49 +263,49 @@ Helm and Ivy are also supported. Note that the =helm= and =ivy= packages are no
251263
*Removed*
252264
+ Option ~magit-todos-require-colon~, replaced by ~magit-todos-keyword-suffix~.
253265

254-
*** 1.1.8
266+
** 1.1.8
255267

256268
*Fixed*
257269
+ Properly unbind key when mode is disabled. ([[https://github.com/alphapapa/magit-todos/pull/74][#74]]. Thanks to [[https://github.com/akirak][Akira Komamura]].)
258270
+ Don't show message when key is already bound correctly. ([[https://github.com/alphapapa/magit-todos/pull/75][#75]]. Thanks to [[https://github.com/akirak][Akira Komamura]].)
259271

260-
*** 1.1.7
272+
** 1.1.7
261273

262274
*Fixed*
263275
+ Disable undo in hidden Org fontification buffer.
264276
+ Expand top-level to-do list in ~magit-todos-list~ buffer.
265277

266-
*** 1.1.6
278+
** 1.1.6
267279

268280
*Fixed*
269281
+ Insert root section in ~magit-todos-list~ command. (Really fixes [[https://github.com/alphapapa/magit-todos/issues/55][#55]]. Thanks to [[https://github.com/tarsius][Jonas Bernoulli]].)
270282

271-
*** 1.1.5
283+
** 1.1.5
272284

273285
*Fixed*
274286
+ Hide process buffers. (Thanks to [[https://github.com/purcell][Steve Purcell]].)
275287

276-
*** 1.1.4
288+
** 1.1.4
277289

278290
*Fixes*
279291
+ ~magit-todos-depth~ number-to-string conversion.
280292

281-
*** 1.1.3
293+
** 1.1.3
282294

283295
*Fixes*
284296
+ Update ~magit-todos-list~ for Magit [[https://github.com/magit/magit/commit/40616d7ba57b7c491513e4130d82371460f9e94d][change]]. (Fixes [[https://github.com/alphapapa/magit-todos/issues/55][#55]]. Thanks to [[https://github.com/Oghma][Matteo Lisotto]].)
285297

286-
*** 1.1.2
298+
** 1.1.2
287299

288300
*Fixes*
289301
+ Convert ~magit-todos-depth~ setting appropriately for =rg= scanner.
290302

291-
*** 1.1.1
303+
** 1.1.1
292304

293305
*Fixes*
294306
+ Ensure mode is activated in ~magit-todos-update~ command. (Fixes #54. Thanks to [[https://github.com/smaret][Sebastien Maret]].)
295307

296-
*** 1.1
308+
** 1.1
297309

298310
*Additions*
299311
+ Dedicated to-do list buffer.
@@ -307,44 +319,44 @@ Helm and Ivy are also supported. Note that the =helm= and =ivy= packages are no
307319
*Fixes*
308320
+ Add missing ~cl-~ prefix. Thanks to [[https://github.com/jellelicht][Jelle Licht]].
309321

310-
*** 1.0.4
322+
** 1.0.4
311323

312324
*Fixes*
313325
+ Fix =find|grep= scanner ([[https://github.com/alphapapa/magit-todos/issues/46][issue 46]]). Thanks to [[https://github.com/Ambrevar][Pierre Neidhardt]].
314326

315-
*** 1.0.3
327+
** 1.0.3
316328

317329
*Fixes*
318330
+ Define variables earlier to avoid compiler warnings.
319331
+ Remove unused var ~magit-todos-ignore-file-suffixes~.
320332

321-
*** 1.0.2
333+
** 1.0.2
322334

323335
*Fixes*
324336
+ ~regexp-quote~ item keywords when jumping to an item. (Fixes #36. Thanks to [[https://github.com/dfeich][Derek Feichtinger]].)
325337
+ Ensure =grep= supports =--perl-regexp=.
326338
+ Warn when unable to find a suitable scanner (i.e. =rg=, or a PCRE-compatible version of =git= or =grep=).
327339

328-
*** 1.0.1
340+
** 1.0.1
329341

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

335-
*** 1.0.0
347+
** 1.0.0
336348

337349
Initial release.
338350

339-
** Credits
351+
* Credits
340352

341353
+ This package was inspired by [[https://github.com/danielma/magit-org-todos.el][magit-org-todos]].
342354
+ The =ag= support was made much simpler by the great [[https://github.com/joddie/pcre2el][pcre2el]] package by Jon Oddie.
343355
+ Thanks to [[https://github.com/zhaojiangbin][Jiangbin Zhao]] for his extensive testing and feedback.
344356

345-
** License
357+
* License
346358
:PROPERTIES:
347-
:TOC: ignore
359+
:TOC: :ignore this
348360
:END:
349361

350362
GPLv3

0 commit comments

Comments
 (0)