Fossil SCM

Added fossil settings pages, and modified menu.

brickviking 2025-05-04 05:56 bv-infotool
Commit a993a4411b4d72fc1801339fad886d5e43008f5422746406ea8d9796e5b05441
1 file changed +76 -15
--- tools/fossil-makeinfo
+++ tools/fossil-makeinfo
@@ -11,10 +11,11 @@
1111
# v0.10 Retitled Features to Fossil.
1212
# v0.11 Added entries relevant to system-wide dir entry.
1313
# v0.12 Reworded section introductions.
1414
# v0.13 Added testing commands to texi output.
1515
# v0.14 Added web commands to texi output. Note added far later.
16
+# v0.15 Added Fossil settings.
1617
# Builds a correct texinfo file (finally) on OpenBSD and NetBSD.
1718
#
1819
# Requires fossil, tail, GNU sed and makeinfo
1920
#
2021
@@ -73,25 +74,25 @@
7374
@end ifnothtml
7475
@end ifnotinfo
7576
" >> fossil.texi
7677
7778
printf "@node Top
78
-@chapter Top
79
-Fossil - a distributed version control system
79
+@chapter Fossil
8080
8181
Fossil is a distributed version control system (DVCS) with built-in
8282
forum, wiki, ticket tracker, CGI/HTTP interface, and HTTP server.
8383
This file documents version @value{VERSION} of Fossil.
8484
8585
@c @node menu
8686
@menu
87
-* Fossil:: Introduction and features listed from the website front page.
87
+* Introduction:: Introduction and features listed from the website front page.
8888
* Common commands:: These are the commands that are most likely to be used.
8989
* Uncommon commands:: These aren't used as often, but they're still there when needed.
9090
* Test commands:: These are definitely not recommended for production use.
91
+* Fossil settings:: These describe fossil settings.
9192
* Web commands:: Available webpage help.
92
-* Common arguments:: arguments common to all commands.
93
+* Common arguments:: Arguments common to all commands.
9394
* License:: The license agreement of the fossil project.
9495
@end menu
9596
9697
Help is available for any of the available fossil commands by using:
9798
@@ -103,12 +104,12 @@
103104
help nodes from fossil into here, but it's vaguely possible I've missed some.
104105
105106
" >> fossil.texi
106107
107108
# Add in the Features from the front webpage
108
-printf "@node Fossil,Common commands,Top,Top
109
-@chapter Fossil
109
+printf "@node Introduction,Common commands,Top,Top
110
+@chapter Introduction
110111
111112
Fossil is a distributed version control system (DVCS) with built-in
112113
forum, wiki, ticket tracker, CGI/HTTP interface, and HTTP server.
113114
This file documents version @value{VERSION} of Fossil.
114115
@@ -150,11 +151,11 @@
150151
" >> fossil.texi
151152
152153
###### Common commands
153154
echo "List common commands"
154155
155
-printf "@node Common commands,Uncommon commands,Fossil,Top
156
+printf "@node Common commands,Uncommon commands,Introduction,Top
156157
@chapter Common commands
157158
158159
These are the more commonly used commands for the average fossil user. They're
159160
listed by fossil when you run the command:
160161
@@ -267,13 +268,13 @@
267268
268269
# ... and adds it to the output file with a spacer line
269270
cat workfile >> fossil.texi
270271
echo "" >> fossil.texi
271272
272
-# Now the test commands. Here be dragons.
273
+##### Now the test commands. Here be dragons. #####
273274
echo "List test commands"
274
-echo "@node Test commands,Web commands,Uncommon commands,Top
275
+printf "@node Test commands,Fossil settings,Uncommon commands,Top
275276
@chapter Testing commands
276277
277278
These are testing commands, listed by fossil when you run the command:
278279
279280
@example
@@ -283,12 +284,11 @@
283284
They're often used to solve specific little problems that didn't warrant a full
284285
tool, but are useful enough to be kept around. They are most definitely not
285286
supported, and the developers will expect to change these far more often. They
286287
are not stable, so do not depend upon their behavior, or even their existence.
287288
288
-@menu
289
-" >> fossil.texi
289
+@menu\n" >> fossil.texi
290290
291291
# Insert test commands in here
292292
echo "Grab test keywords for menu"
293293
for u in $(for t in $(fossil help -t); do echo "$t"; done | sort); do echo "* ${u}::"; done >> fossil.texi
294294
@@ -325,13 +325,75 @@
325325
326326
# ... and adds it to the output file with a spacer line
327327
cat workfile >> fossil.texi
328328
echo "" >> fossil.texi
329329
330
-# Now the webpage content. Here be wild wild web pages.
330
+##### Now, add in fossil settings #####
331
+# The usual wyvern warnings.
332
+echo "List settings"
333
+printf "@node Fossil settings,Web commands,Test commands,Top
334
+@chapter Fossil settings
335
+
336
+These are help pages for settings within fossil, shown when you run:
337
+@example
338
+fossil help -s
339
+@end example
340
+
341
+@menu\n" >> fossil.texi
342
+
343
+# Insert settings keywords in here
344
+echo "Grab settings keywords for menu"
345
+for u in $(for t in $(fossil help -s); do echo "$t"; done | sort); do echo "* ${u}::"; done >> fossil.texi
346
+
347
+# and finish the menu
348
+echo "@end menu
349
+
350
+" >> fossil.texi
351
+# Now add all the help from "fossil help -s -v"
352
+# WARNING: tail count is brittle
353
+# sed comands remove the last two lines.
354
+echo "Fossil output test help to workfile"
355
+fossil help -s -v | tail -n +4 | sed '$d' | sed '$d' >workfile
356
+
357
+# swap out @ with @@ so texinfo doesn't barf
358
+echo "Doubling up the @'s"
359
+sed -i -e 's/@/@@/g' workfile
360
+
361
+# This swaps out "# keyword" with
362
+# @node keyword
363
+# @unnumbered keyword
364
+# breaks on *BSD's seds, needs gsed there
365
+echo "Swapping out # for @node ... \n@unnumbered ..."
366
+
367
+if [[ ${MYOS} == "Linux" ]]; then
368
+ sed -i -e 's/^##* \([a-z0-9-]\{1,\}\)/@node \1\n@section \1\n/' workfile
369
+else
370
+ # We'll assume we're on a BSD here, even though this won't always be true
371
+ gsed -i -e 's/^##* \([a-z0-9-]\{1,\}\)/@node \1\n@section \1\n/' workfile
372
+fi
373
+
374
+# This has to be done before swapping --switches because the next command
375
+# adds @option(--switches} and hence reuses the {}.
376
+echo "Swapping out {} for @{ @}"
377
+# swaps out {} for @{ @}
378
+if [[ ${MYOS} == "Linux" ]]; then
379
+ sed -i -e 's/{/@{/g' -e 's/}/@}/g' workfile
380
+else
381
+ gsed -i -e 's/{/@{/g' -e 's/}/@}/g' workfile
382
+fi
383
+
384
+# turns --switches into @option{--switches}
385
+sed -i -e 's/--\([[:alnum:]-]\{1,\}\)/@option\{--\1\}/g' workfile
386
+
387
+# ... and adds it to the output file with a spacer line
388
+cat workfile >> fossil.texi
389
+echo "" >> fossil.texi
390
+
391
+
392
+##### Now the webpage content. Here be wild wild web pages. #####
331393
echo "List web commands"
332
-echo "@node Web commands,Common arguments,Test commands,Top
394
+printf "@node Web commands,Common arguments,Fossil settings,Top
333395
@chapter Web commands
334396
335397
These are help pages for the internal web pages, listed by fossil when you run the command:
336398
337399
@example
@@ -343,12 +405,11 @@
343405
344406
@example
345407
https://fossil.example.com/fossil/timeline?ms=glob
346408
@end example
347409
348
-@menu
349
-" >> fossil.texi
410
+@menu\n" >> fossil.texi
350411
351412
# Insert webpage keywords in here
352413
echo "Grab web keywords for menu"
353414
for u in $(for t in $(fossil help -w); do echo "$t"; done | sort); do echo "* ${u}::"; done >> fossil.texi
354415
355416
--- tools/fossil-makeinfo
+++ tools/fossil-makeinfo
@@ -11,10 +11,11 @@
11 # v0.10 Retitled Features to Fossil.
12 # v0.11 Added entries relevant to system-wide dir entry.
13 # v0.12 Reworded section introductions.
14 # v0.13 Added testing commands to texi output.
15 # v0.14 Added web commands to texi output. Note added far later.
 
16 # Builds a correct texinfo file (finally) on OpenBSD and NetBSD.
17 #
18 # Requires fossil, tail, GNU sed and makeinfo
19 #
20
@@ -73,25 +74,25 @@
73 @end ifnothtml
74 @end ifnotinfo
75 " >> fossil.texi
76
77 printf "@node Top
78 @chapter Top
79 Fossil - a distributed version control system
80
81 Fossil is a distributed version control system (DVCS) with built-in
82 forum, wiki, ticket tracker, CGI/HTTP interface, and HTTP server.
83 This file documents version @value{VERSION} of Fossil.
84
85 @c @node menu
86 @menu
87 * Fossil:: Introduction and features listed from the website front page.
88 * Common commands:: These are the commands that are most likely to be used.
89 * Uncommon commands:: These aren't used as often, but they're still there when needed.
90 * Test commands:: These are definitely not recommended for production use.
 
91 * Web commands:: Available webpage help.
92 * Common arguments:: arguments common to all commands.
93 * License:: The license agreement of the fossil project.
94 @end menu
95
96 Help is available for any of the available fossil commands by using:
97
@@ -103,12 +104,12 @@
103 help nodes from fossil into here, but it's vaguely possible I've missed some.
104
105 " >> fossil.texi
106
107 # Add in the Features from the front webpage
108 printf "@node Fossil,Common commands,Top,Top
109 @chapter Fossil
110
111 Fossil is a distributed version control system (DVCS) with built-in
112 forum, wiki, ticket tracker, CGI/HTTP interface, and HTTP server.
113 This file documents version @value{VERSION} of Fossil.
114
@@ -150,11 +151,11 @@
150 " >> fossil.texi
151
152 ###### Common commands
153 echo "List common commands"
154
155 printf "@node Common commands,Uncommon commands,Fossil,Top
156 @chapter Common commands
157
158 These are the more commonly used commands for the average fossil user. They're
159 listed by fossil when you run the command:
160
@@ -267,13 +268,13 @@
267
268 # ... and adds it to the output file with a spacer line
269 cat workfile >> fossil.texi
270 echo "" >> fossil.texi
271
272 # Now the test commands. Here be dragons.
273 echo "List test commands"
274 echo "@node Test commands,Web commands,Uncommon commands,Top
275 @chapter Testing commands
276
277 These are testing commands, listed by fossil when you run the command:
278
279 @example
@@ -283,12 +284,11 @@
283 They're often used to solve specific little problems that didn't warrant a full
284 tool, but are useful enough to be kept around. They are most definitely not
285 supported, and the developers will expect to change these far more often. They
286 are not stable, so do not depend upon their behavior, or even their existence.
287
288 @menu
289 " >> fossil.texi
290
291 # Insert test commands in here
292 echo "Grab test keywords for menu"
293 for u in $(for t in $(fossil help -t); do echo "$t"; done | sort); do echo "* ${u}::"; done >> fossil.texi
294
@@ -325,13 +325,75 @@
325
326 # ... and adds it to the output file with a spacer line
327 cat workfile >> fossil.texi
328 echo "" >> fossil.texi
329
330 # Now the webpage content. Here be wild wild web pages.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
331 echo "List web commands"
332 echo "@node Web commands,Common arguments,Test commands,Top
333 @chapter Web commands
334
335 These are help pages for the internal web pages, listed by fossil when you run the command:
336
337 @example
@@ -343,12 +405,11 @@
343
344 @example
345 https://fossil.example.com/fossil/timeline?ms=glob
346 @end example
347
348 @menu
349 " >> fossil.texi
350
351 # Insert webpage keywords in here
352 echo "Grab web keywords for menu"
353 for u in $(for t in $(fossil help -w); do echo "$t"; done | sort); do echo "* ${u}::"; done >> fossil.texi
354
355
--- tools/fossil-makeinfo
+++ tools/fossil-makeinfo
@@ -11,10 +11,11 @@
11 # v0.10 Retitled Features to Fossil.
12 # v0.11 Added entries relevant to system-wide dir entry.
13 # v0.12 Reworded section introductions.
14 # v0.13 Added testing commands to texi output.
15 # v0.14 Added web commands to texi output. Note added far later.
16 # v0.15 Added Fossil settings.
17 # Builds a correct texinfo file (finally) on OpenBSD and NetBSD.
18 #
19 # Requires fossil, tail, GNU sed and makeinfo
20 #
21
@@ -73,25 +74,25 @@
74 @end ifnothtml
75 @end ifnotinfo
76 " >> fossil.texi
77
78 printf "@node Top
79 @chapter Fossil
 
80
81 Fossil is a distributed version control system (DVCS) with built-in
82 forum, wiki, ticket tracker, CGI/HTTP interface, and HTTP server.
83 This file documents version @value{VERSION} of Fossil.
84
85 @c @node menu
86 @menu
87 * Introduction:: Introduction and features listed from the website front page.
88 * Common commands:: These are the commands that are most likely to be used.
89 * Uncommon commands:: These aren't used as often, but they're still there when needed.
90 * Test commands:: These are definitely not recommended for production use.
91 * Fossil settings:: These describe fossil settings.
92 * Web commands:: Available webpage help.
93 * Common arguments:: Arguments common to all commands.
94 * License:: The license agreement of the fossil project.
95 @end menu
96
97 Help is available for any of the available fossil commands by using:
98
@@ -103,12 +104,12 @@
104 help nodes from fossil into here, but it's vaguely possible I've missed some.
105
106 " >> fossil.texi
107
108 # Add in the Features from the front webpage
109 printf "@node Introduction,Common commands,Top,Top
110 @chapter Introduction
111
112 Fossil is a distributed version control system (DVCS) with built-in
113 forum, wiki, ticket tracker, CGI/HTTP interface, and HTTP server.
114 This file documents version @value{VERSION} of Fossil.
115
@@ -150,11 +151,11 @@
151 " >> fossil.texi
152
153 ###### Common commands
154 echo "List common commands"
155
156 printf "@node Common commands,Uncommon commands,Introduction,Top
157 @chapter Common commands
158
159 These are the more commonly used commands for the average fossil user. They're
160 listed by fossil when you run the command:
161
@@ -267,13 +268,13 @@
268
269 # ... and adds it to the output file with a spacer line
270 cat workfile >> fossil.texi
271 echo "" >> fossil.texi
272
273 ##### Now the test commands. Here be dragons. #####
274 echo "List test commands"
275 printf "@node Test commands,Fossil settings,Uncommon commands,Top
276 @chapter Testing commands
277
278 These are testing commands, listed by fossil when you run the command:
279
280 @example
@@ -283,12 +284,11 @@
284 They're often used to solve specific little problems that didn't warrant a full
285 tool, but are useful enough to be kept around. They are most definitely not
286 supported, and the developers will expect to change these far more often. They
287 are not stable, so do not depend upon their behavior, or even their existence.
288
289 @menu\n" >> fossil.texi
 
290
291 # Insert test commands in here
292 echo "Grab test keywords for menu"
293 for u in $(for t in $(fossil help -t); do echo "$t"; done | sort); do echo "* ${u}::"; done >> fossil.texi
294
@@ -325,13 +325,75 @@
325
326 # ... and adds it to the output file with a spacer line
327 cat workfile >> fossil.texi
328 echo "" >> fossil.texi
329
330 ##### Now, add in fossil settings #####
331 # The usual wyvern warnings.
332 echo "List settings"
333 printf "@node Fossil settings,Web commands,Test commands,Top
334 @chapter Fossil settings
335
336 These are help pages for settings within fossil, shown when you run:
337 @example
338 fossil help -s
339 @end example
340
341 @menu\n" >> fossil.texi
342
343 # Insert settings keywords in here
344 echo "Grab settings keywords for menu"
345 for u in $(for t in $(fossil help -s); do echo "$t"; done | sort); do echo "* ${u}::"; done >> fossil.texi
346
347 # and finish the menu
348 echo "@end menu
349
350 " >> fossil.texi
351 # Now add all the help from "fossil help -s -v"
352 # WARNING: tail count is brittle
353 # sed comands remove the last two lines.
354 echo "Fossil output test help to workfile"
355 fossil help -s -v | tail -n +4 | sed '$d' | sed '$d' >workfile
356
357 # swap out @ with @@ so texinfo doesn't barf
358 echo "Doubling up the @'s"
359 sed -i -e 's/@/@@/g' workfile
360
361 # This swaps out "# keyword" with
362 # @node keyword
363 # @unnumbered keyword
364 # breaks on *BSD's seds, needs gsed there
365 echo "Swapping out # for @node ... \n@unnumbered ..."
366
367 if [[ ${MYOS} == "Linux" ]]; then
368 sed -i -e 's/^##* \([a-z0-9-]\{1,\}\)/@node \1\n@section \1\n/' workfile
369 else
370 # We'll assume we're on a BSD here, even though this won't always be true
371 gsed -i -e 's/^##* \([a-z0-9-]\{1,\}\)/@node \1\n@section \1\n/' workfile
372 fi
373
374 # This has to be done before swapping --switches because the next command
375 # adds @option(--switches} and hence reuses the {}.
376 echo "Swapping out {} for @{ @}"
377 # swaps out {} for @{ @}
378 if [[ ${MYOS} == "Linux" ]]; then
379 sed -i -e 's/{/@{/g' -e 's/}/@}/g' workfile
380 else
381 gsed -i -e 's/{/@{/g' -e 's/}/@}/g' workfile
382 fi
383
384 # turns --switches into @option{--switches}
385 sed -i -e 's/--\([[:alnum:]-]\{1,\}\)/@option\{--\1\}/g' workfile
386
387 # ... and adds it to the output file with a spacer line
388 cat workfile >> fossil.texi
389 echo "" >> fossil.texi
390
391
392 ##### Now the webpage content. Here be wild wild web pages. #####
393 echo "List web commands"
394 printf "@node Web commands,Common arguments,Fossil settings,Top
395 @chapter Web commands
396
397 These are help pages for the internal web pages, listed by fossil when you run the command:
398
399 @example
@@ -343,12 +405,11 @@
405
406 @example
407 https://fossil.example.com/fossil/timeline?ms=glob
408 @end example
409
410 @menu\n" >> fossil.texi
 
411
412 # Insert webpage keywords in here
413 echo "Grab web keywords for menu"
414 for u in $(for t in $(fossil help -w); do echo "$t"; done | sort); do echo "* ${u}::"; done >> fossil.texi
415
416

Keyboard Shortcuts

Open search /
Next entry (timeline) j
Previous entry (timeline) k
Open focused entry Enter
Show this help ?
Toggle theme Top nav button