Bug 26943

Summary: [patch] description of :C modifier is misplaced in make.1
Product: Documentation Reporter: Alex Kapranoff <alex>
Component: Books & ArticlesAssignee: Giorgos Keramidas <keramida>
Status: Closed FIXED    
Severity: Affects Only Me    
Priority: Normal    
Version: Latest   
Hardware: Any   
OS: Any   
Attachments:
Description Flags
file.diff
none
file.diff none

Description Alex Kapranoff 2001-04-29 08:20:01 UTC
	make.1 manpage describes :C modifier in comparison to :S, but
	before :S. That brings some inconvenience for first-time
	readers.  The first patch moves :C section just below :S (cut-n-paste
	only, no semantic changes) and the second adds some
	insignificant markup to the section.
Comment 1 dd freebsd_committer freebsd_triage 2001-05-01 00:09:29 UTC
Responsible Changed
From-To: freebsd-bugs->freebsd-docs

docs problem.
Comment 2 alex freebsd_committer freebsd_triage 2001-05-14 21:27:55 UTC
Responsible Changed
From-To: freebsd-docs->will

make is will's foo. 
Will, you added the :C modifier, could you please consider this 
update to the manpage?
Comment 3 Will Andrews freebsd_committer freebsd_triage 2001-08-30 00:26:59 UTC
Responsible Changed
From-To: will->freebsd-bugs

I don't have time for make(1) anymore...
Comment 4 Crist J. Clark freebsd_committer freebsd_triage 2002-02-20 16:42:11 UTC
Responsible Changed
From-To: freebsd-bugs->freebsd-doc

The docs guys can take care of this, please?
Comment 5 Giorgos Keramidas freebsd_committer freebsd_triage 2002-05-12 03:44:56 UTC
On 2001-04-29 10:55, Alex Kapranoff wrote:
> 	make.1 manpage describes :C modifier in comparison to :S, but
> 	before :S. That brings some inconvenience for first-time
> 	readers.  The first patch moves :C section just below :S (cut-n-paste
> 	only, no semantic changes) and the second adds some
> 	insignificant markup to the section.

> Responsible-Changed-From-To: freebsd-bugs->freebsd-doc
> Responsible-Changed-By: cjc
> Responsible-Changed-When: Wed Feb 20 08:42:11 PST 2002
> Responsible-Changed-Why: 
> The docs guys can take care of this, please?

I think that the idea behind this was that a lot of the stuff that is
relevant to :C is already described in the section of :S, but since :C
came second the text was left at :S.  The modifiers are sorted
alphabetically, so it makes more sense to keep :C in the proper place
than move it under :S just to save a few page-down keys.

Of course this is MHO.  The second diff, that is part of this PR which
adds .Ar macros in a couple of places, looks fine to me.  I'd like
this (the second diff only) to be committed if nobody objects.

Comments, anyone else?

- Giorgos
Comment 6 Peter Pentchev 2002-05-13 11:49:48 UTC
On Sat, May 11, 2002 at 07:50:04PM -0700, Giorgos Keramidas wrote:
> The following reply was made to PR docs/26943; it has been noted by GNATS.
>  On 2001-04-29 10:55, Alex Kapranoff wrote:
>  > 	make.1 manpage describes :C modifier in comparison to :S, but
>  > 	before :S. That brings some inconvenience for first-time
>  > 	readers.  The first patch moves :C section just below :S (cut-n-paste
>  > 	only, no semantic changes) and the second adds some
>  > 	insignificant markup to the section.
>  
>  > Responsible-Changed-From-To: freebsd-bugs->freebsd-doc
>  > Responsible-Changed-By: cjc
>  > Responsible-Changed-When: Wed Feb 20 08:42:11 PST 2002
>  > Responsible-Changed-Why: 
>  > The docs guys can take care of this, please?
>  
>  I think that the idea behind this was that a lot of the stuff that is
>  relevant to :C is already described in the section of :S, but since :C
>  came second the text was left at :S.  The modifiers are sorted
>  alphabetically, so it makes more sense to keep :C in the proper place
>  than move it under :S just to save a few page-down keys.

Moving the documentation to the description of :C looks like a good
thing to me.

>  Of course this is MHO.  The second diff, that is part of this PR which
>  adds .Ar macros in a couple of places, looks fine to me.  I'd like
>  this (the second diff only) to be committed if nobody objects.

Fine by me, too.

G'luck,
Peter

-- 
Peter Pentchev	roam@ringlet.net	roam@FreeBSD.org
PGP key:	http://people.FreeBSD.org/~roam/roam.key.asc
Key fingerprint	FDBA FD79 C26F 3C51 C95E  DF9E ED18 B68D 1619 4553
This sentence was in the past tense.
Comment 7 Giorgos Keramidas 2002-05-13 12:59:10 UTC
On 2002-05-13 13:49, Peter Pentchev wrote:
> On Sat, May 11, 2002 at 07:50:04PM -0700, Giorgos Keramidas wrote:
> > I think that the idea behind this was that a lot of the stuff that is
> > relevant to :C is already described in the section of :S, but since :C
> > came second the text was left at :S.  The modifiers are sorted
> > alphabetically, so it makes more sense to keep :C in the proper place
> > than move it under :S just to save a few page-down keys.
>
> Moving the documentation to the description of :C looks like a good
> thing to me.

Yep.  I started trying to write a complete :C entry after merging
stuff from :S last night.  Now I have :C done, and all that remains is
to rewrite the :S part to avoid repeating stuff.

-- 
Giorgos Keramidas    - http://www.FreeBSD.org
keramida@FreeBSD.org - The Power to Serve
Comment 8 Giorgos Keramidas freebsd_committer freebsd_triage 2002-05-13 13:25:50 UTC
On 2002-05-13 13:49, Peter Pentchev wrote:
> Moving the documentation to the description of :C looks like a good
> thing to me.

Silly me, I meant to include the new :C entry I made until now, and I
forgot the patch.  Here it is.  I have moved most of the stuff from
the description of :S to this paragraph.  If I've forgotten anything
please let me know.

%%%
Index: make.1
===================================================================
RCS file: /home/ncvs/src/usr.bin/make/make.1,v
retrieving revision 1.54
diff -u -1 -0 -r1.54 make.1
--- make.1	20 Apr 2002 12:15:44 -0000	1.54
+++ make.1	13 May 2002 12:17:04 -0000
@@ -589,45 +589,57 @@
 special characters.
 The colon may be escaped with a backslash
 .Pq Ql \e .
 .Bl -tag -width Cm
 .Sm off
 .It Cm C No \&/ Ar pattern Xo
 .No \&/ Ar replacement
 .No \&/ Op Cm 1g
 .Xc
 .Sm on
-The
-.Cm C
-modifier is just like the
-.Cm S
-modifier except that the old and new strings, instead of being
-simple strings, are a regular expression (see
-.Xr regex 3 )
-and an
-.Xr ed 1 Ns \-style
-replacement string.
+Modify each word of the value, substituting
+.Ar pattern
+with
+.Ar replacement .
+In
+.Ar pattern
+regular expressions can be used (see
+.Xr regex 3
+or
+.Xr ed 1
+for more information on regular expressions).
 Normally, the first occurrence of the pattern in
 each word of the value is changed.
 The
 .Ql 1
 modifier causes the substitution to apply to at most one word; the
 .Ql g
 modifier causes the substitution to apply to as many instances of the
 search pattern as occur in the word or words it is found in.
 Note that
 .Ql 1
 and
 .Ql g
 are orthogonal; the former specifies whether multiple words are
 potentially affected, the latter whether multiple substitutions can
 potentially occur within each affected word.
+Inside
+.Ar replacement ,
+an ampersand
+.Pq Ql &
+is replaced by the text that matched
+.Ar pattern .
+Any character may be used as a delimiter for the parts of the modifier
+string.
+The ampersand and delimiter characters may be escaped with a
+backslash
+.Pq Ql \e .
 .It Cm E
 Replaces each word in the variable with its suffix.
 .It Cm H
 Replaces each word in the variable with everything but the last component.
 .It Cm L
 Converts variable to lower-case letters.
 .It Cm M Ns Ar pattern
 Select only those words that match the rest of the modifier.
 The standard shell wildcard characters
 .Pf ( Ql * ,
%%%

-- 
Giorgos Keramidas    - http://www.FreeBSD.org
keramida@FreeBSD.org - The Power to Serve
Comment 9 Peter Pentchev 2002-05-13 13:30:34 UTC
On Mon, May 13, 2002 at 03:25:50PM +0300, Giorgos Keramidas wrote:
> On 2002-05-13 13:49, Peter Pentchev wrote:
> > Moving the documentation to the description of :C looks like a good
> > thing to me.
> 
> Silly me, I meant to include the new :C entry I made until now, and I
> forgot the patch.  Here it is.  I have moved most of the stuff from
> the description of :S to this paragraph.  If I've forgotten anything
> please let me know.

Looks great, just for one minor possible improvement..

[snip]
> +In
> +.Ar pattern
> +regular expressions can be used (see
> +.Xr regex 3
> +or
> +.Xr ed 1
> +for more information on regular expressions).

I see that you have copied that from the :S description; however, would
it not be a bit more user-friendly to link to re_format(7) instead
of regex(3)? :)

G'luck,
Peter

-- 
Peter Pentchev	roam@ringlet.net	roam@FreeBSD.org
PGP key:	http://people.FreeBSD.org/~roam/roam.key.asc
Key fingerprint	FDBA FD79 C26F 3C51 C95E  DF9E ED18 B68D 1619 4553
I had to translate this sentence into English because I could not read the original Sanskrit.
Comment 10 Giorgos Keramidas freebsd_committer freebsd_triage 2004-07-18 03:26:45 UTC
State Changed
From-To: open->closed

Some of the suggestions made in this PR had already been committed. 
I've edited the part that describes :C to make it independent of :S. 

Thanks for submitting this and my apologies for taking that long 
to handle the PR! 


Comment 11 Giorgos Keramidas freebsd_committer freebsd_triage 2004-07-18 03:26:45 UTC
Responsible Changed
From-To: freebsd-doc->keramida