view runtime/doc/pi_logipat.txt @ 35769:4f48d5d327ea v9.1.0609

patch 9.1.0609: outdated comments in Makefile Commit: https://github.com/vim/vim/commit/4c3616d7a2c8c3b828e4d4ebbcd43e4a22154262 Author: Shane Harper <shane@shaneharper.net> Date: Mon Jul 22 20:09:26 2024 +0200 patch 9.1.0609: outdated comments in Makefile Problem: outdated comments in Makefile Solution: update outdated comments, update rule for vimtags (Shane Harper) related: commit b81109192f Here are the changes and the reasons for them: - Delete the comment preceding the assignment to VIMPROG. Since b81109192f there's no need for VIMPROG to be set to something else when this is executed from src/Makefile. (The comment was wrong anyway; VIMPROG was being set to "$$BUILD_DIR/$(VIMTARGET)".) ``` # Set to $(VIMTARGET) when executed from src/Makefile. VIMPROG = ../../src/vim ``` - Delete "`and installed`" in the following comment; The vimtags rule doesn't require that Vim has been installed. ``` # Use Vim to generate the tags file. Can only be used when Vim has been # compiled and installed. Supports multiple languages. vimtags: $(DOCS) ``` - With commit b81109192f there is no longer a need to set VIMPROG here: ``` -@BUILD_DIR="`pwd`"; cd $(HELPSOURCE); if test -z "$(CROSS_COMPILING)"; then \ $(MAKE) VIMPROG="$$BUILD_DIR/$(VIMTARGET)" vimtags; fi ``` The new code below will use the same vim executable as the old code: ``` -@cd $(HELPSOURCE); if test -z "$(CROSS_COMPILING)"; then \ $(MAKE) vimtags; fi ``` - Delete the following comment which was related to setting VIMPROG as it no longer has any value: ``` # We can assume Vim was build, but it may not have been installed, # thus use the executable in the current directory. ``` Note: this comment used to be (unnecessarily) echoed to the terminal (because it was indented) when making installrtbase. closes: #15320 Signed-off-by: Shane Harper <shane@shaneharper.net> Signed-off-by: Christian Brabandt <cb@256bit.org>
author Christian Brabandt <cb@256bit.org>
date Mon, 22 Jul 2024 20:30:07 +0200
parents 9b7f90e56753
children
line wrap: on
line source

*pi_logipat.txt*	Logical Patterns			May 01, 2019

Author:  Charles E. Campbell  <NcampObell@SdrPchip.AorgM-NOSPAM>
Copyright: (c) 2004-2016 by Charles E. Campbell	*logiPat-copyright*
           The VIM LICENSE applies to LogiPat.vim and LogiPat.txt
           (see |copyright|) except use "LogiPat" instead of "Vim"
	   No warranty, express or implied.  Use At-Your-Own-Risk.

==============================================================================
1. Contents					*logiPat* *logiPat-contents*

	1. Contents.................: |logiPat-contents|
	2. LogiPat Manual...........: |logiPat-manual|
	3. LogiPat Examples.........: |logiPat-examples|
	4. Caveat...................: |logiPat-caveat|
	5. LogiPat History..........: |logiPat-history|


==============================================================================
2. LogiPat Manual			*logiPat-manual* *logiPat-man*

	*logiPat-arg* *logiPat-input* *logiPat-pattern* *logiPat-operators*
	Boolean logic patterns are composed of

			operators  ! = not
			           | = logical-or
			           & = logical-and
			grouping   ( ... )
			patterns   "pattern"

	*logiPat-cmd*
	:LogiPat {boolean-logic pattern}		*:LogiPat*
		:LogiPat is a command which takes a boolean-logic
		argument (|logiPat-arg|).

	:LP {boolean-logic pattern}			*:LP*
		:LP is a shorthand command version of :LogiPat
		(|logiPat-cmd|).

	:LPE {boolean-logic pattern}			*:LPE*
		No search is done, but the conversion from the
		boolean logic pattern to the regular expression
		is performed and echoed onto the display.

	:LogiPatFlags {search flags}			*LogiPat-flags*
		LogiPat uses the |search()| command.  The flags
		passed to that call to search() may be specified
		by the :LogiPatFlags command.

	:LPF {search flags}				*:LPF*
		:LPF is a shorthand version of :LogiPatFlags.

	:let pat=LogiPat({boolean-logic pattern})	*LogiPat()*
		If one calls LogiPat() directly, no search
		is done, but the transformation from the boolean
		logic pattern into a regular expression pattern
		is performed and returned.

	To get a " inside a pattern, as opposed to having it delimit
	the pattern, double it.


==============================================================================
3. LogiPat Examples					*logiPat-examples*

	LogiPat takes Boolean logic arguments and produces a regular
	expression which implements the choices.  A series of examples
	follows:
>
	:LogiPat "abc"
<		will search for lines containing the string  :abc:
>
	:LogiPat "ab""cd"
<		will search for lines containing the string  :ab"cd:
>
	:LogiPat !"abc"
<		will search for lines which don't contain the string  :abc:
>
	:LogiPat "abc"|"def"
<		will search for lines which contain either the string
		:abc:  or the string  :def:
>
	:LogiPat !("abc"|"def")
<		will search for lines which don't contain either
		of the strings  :abc:  or  :def:
>
	:LogiPat "abc"&"def"
<		will search for lines which contain both of the strings
		:abc:  and  :def:
>
	:let pat= LogiPat('!"abc"')
<		will return the regular expression which will match
		all lines not containing  :abc: .  The double quotes
		are needed to pass normal patterns to LogiPat, and
		differentiate such patterns from boolean logic
		operators.


==============================================================================
4. Caveat						*logiPat-caveat*

	The "not" operator may be fragile; ie. it may not always play well
	with the & (logical-and) and | (logical-or) operators.  Please try out
	your patterns, possibly with :set hls, to insure that what is matching
	is what you want.


==============================================================================
5. LogiPat History					*logiPat-history*

	v4 Jun 22, 2015 * LogiPat has been picked up by Bram M for standard
			  plugin distribution; hence the name change
	v3 Sep 25, 2006 * LP_Or() fixed; it now encapsulates its output
	                  in \%(...\) parentheses
	   Dec 12, 2011 * |:LPE| added
			* "" is mapped to a single " and left inside patterns
	v2 May 31, 2005	* LPF and LogiPatFlags commands weren't working
	v1 May 23, 2005	* initial release


==============================================================================
vim:tw=78:ts=8:noet:ft=help