Mercurial > emacs
view msdos/mainmake @ 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 | 1d1d5d9bd884 |
children | 376148b31b5e |
line wrap: on
line source
# Copyright (C) 1993, 1994, 1995, 1996, 2001, 2002, 2003, 2004, # 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. # This file is part of GNU Emacs. # GNU Emacs is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # GNU Emacs is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # You should have received a copy of the GNU General Public License # along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. # make all to compile and build Emacs. # make install to install it. # make TAGS to update tags tables. # # make clean or make mostlyclean # Delete all files from the current directory that are normally # created by building the program. Don't delete the files that # record the configuration. Also preserve files that could be made # by building, but normally aren't because the distribution comes # with them. # # Delete `.dvi' files here if they are not part of the distribution. # # make distclean # Delete all files from the current directory that are created by # configuring or building the program. If you have unpacked the # source and built the program without creating any other files, # `make distclean' should leave only the files that were in the # distribution. # # make realclean # Delete everything from the current directory that can be # reconstructed with this Makefile. This typically includes # everything deleted by distclean, plus more: C source files # produced by Bison, tags tables, info files, and so on. # # make extraclean # Still more severe - delete backup and autosave files, too. all: lib-src src lib-src: FRC cd lib-src $(MAKE) cd .. src: FRC cd src $(MAKE) cd .. install: all -md bin cd lib-src coff2exe hexl coff2exe etags coff2exe ctags coff2exe b2m mv -f hexl.exe etags.exe ctags.exe b2m.exe ../bin/ cd .. cd src coff2exe emacs stubedit emacs.exe minstack=512k mv -f emacs.exe ../bin/ cd .. FRC: TAGS tags: lib-src cd src go32 ../lib-src/etags *.[ch] ../lisp/*.el ../lisp/term/*.el cd .. check: @echo "We don't have any tests for GNU Emacs yet." clean: cd lib-src $(MAKE) clean cd .. cd src $(MAKE) clean cd .. cd oldxmenu -$(MAKE) clean cd .. # arch-tag: d5a489bc-818e-4c3c-8040-b5205ed0602f