Mercurial > emacs
annotate lisp/forms-pass.el @ 107653:bfde3c2dbef5
Make occur handle multi-line matches cleanly with context.
http://lists.gnu.org/archive/html/emacs-devel/2010-03/msg01280.html
* replace.el (occur-accumulate-lines): Add optional arg `pt'.
(occur-engine): Add local variables `ret', `prev-after-lines',
`prev-lines'. Use more arguments for `occur-context-lines'.
Set first elem of its returned list to `data', and the second elem
to `prev-after-lines'. Don't print the separator line.
In the end, print remaining context after-lines.
(occur-context-lines): Add new arguments `begpt', `endpt',
`lines', `prev-lines', `prev-after-lines'. Rewrite to combine
after-lines of the previous match with before-lines of the
current match and not overlap them. Return a list with two
values: the output line and the list of context after-lines.
* search.texi (Other Repeating Search): Remove line that `occur'
can not handle multiline matches.
* occur-testsuite.el (occur-tests): Add tests for context lines.
author | Juri Linkov <juri@jurta.org> |
---|---|
date | Tue, 30 Mar 2010 19:03:08 +0300 |
parents | 1e3a407766b9 |
children | ef719132ddfa |
rev | line source |
---|---|
47726
33d53d287ee4
Add "no-byte-compile: t" in first line.
Juanma Barranquero <lekktu@gmail.com>
parents:
38414
diff
changeset
|
1 ;;; forms-pass.el --- passwd file demo for forms-mode -*- no-byte-compile: t -*- |
13337 | 2 |
38414
67b464da13ec
Some fixes to follow coding conventions.
Pavel Janík <Pavel@Janik.cz>
parents:
13337
diff
changeset
|
3 ;; This file is part of GNU Emacs. |
67b464da13ec
Some fixes to follow coding conventions.
Pavel Janík <Pavel@Janik.cz>
parents:
13337
diff
changeset
|
4 |
67b464da13ec
Some fixes to follow coding conventions.
Pavel Janík <Pavel@Janik.cz>
parents:
13337
diff
changeset
|
5 ;;; Commentary: |
67b464da13ec
Some fixes to follow coding conventions.
Pavel Janík <Pavel@Janik.cz>
parents:
13337
diff
changeset
|
6 |
306 | 7 ;; This demo visits your passwd file. |
275 | 8 |
38414
67b464da13ec
Some fixes to follow coding conventions.
Pavel Janík <Pavel@Janik.cz>
parents:
13337
diff
changeset
|
9 ;;; Code: |
67b464da13ec
Some fixes to follow coding conventions.
Pavel Janík <Pavel@Janik.cz>
parents:
13337
diff
changeset
|
10 |
306 | 11 ;; use yp if present |
12 (or (file-exists-p (setq forms-file "/var/yp/src/passwd")) | |
13 (setq forms-file "/etc/passwd")) | |
14 | |
275 | 15 (setq forms-read-only t) ; to make sure |
16 (setq forms-field-sep ":") | |
17 (setq forms-number-of-fields 7) | |
306 | 18 |
275 | 19 (setq forms-format-list |
306 | 20 (list |
21 "====== Visiting " forms-file " ======\n\n" | |
275 | 22 "User : " 1 |
23 " Uid: " 3 | |
24 " Gid: " 4 | |
25 "\n\n" | |
26 "Name : " 5 | |
27 "\n\n" | |
28 "Home : " 6 | |
29 "\n\n" | |
30 "Shell: " 7 | |
31 "\n")) | |
38414
67b464da13ec
Some fixes to follow coding conventions.
Pavel Janík <Pavel@Janik.cz>
parents:
13337
diff
changeset
|
32 |
93975
1e3a407766b9
Fix up comment convention on the arch-tag lines.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
33 ;; arch-tag: 74801012-1a2d-4173-b9e4-fcfa241e2305 |
38414
67b464da13ec
Some fixes to follow coding conventions.
Pavel Janík <Pavel@Janik.cz>
parents:
13337
diff
changeset
|
34 ;;; forms-pass.el ends here |