c030deea3d
[__line] Add support for '--state replace'
...
It is currently counter-intuitive that something like:
# File '/thing' contents
#SomeSetting WrongValue
# Manifest
__line '/thing' \
--line 'SomeSeting GoodValue' \
--regex '^(#[[:space:]]*)?SomeSetting[[:space:]]'
Produces:
# Resulting '/thing' contents
#SomeSetting WrongValue
This makes sense given the implementation, but it masks a very common use-case.
Changing the default behaviour for such a base type is not really an option, so
instead we add a `replace` as a valid value for `--state`, which would result
in:
# Resulting '/thing' contents with: --state replace
SomeSetting GoodValue
For compatibility, if the regex is missing, `--state replace` behaves just as
`--state present`.
2020-10-09 06:51:44 +02:00
Dennis Camera
5a9a1ba57f
[__line] Produce error when file does not exist
2020-01-15 22:00:56 +01:00
Dennis Camera
51b1b11cc2
[__line/state] Logic fixes in explorer
...
This commit fixes the incorrectly reported state "wrongposition" if position is
"after" and anchor is present in the file but the line missing.
2020-01-15 17:57:45 +01:00
Dennis Camera
4cdb8aaa03
[__line/state] Make sure the index match is at the beginning
...
Without the == 1 all lines which contain --line as a substring match. e.g. if
--line is "line" and the file contains the line "wrong line" this was considered
a match.
2020-01-15 17:50:43 +01:00
Dennis Camera
629d0795c8
[__line] Always add line to end if anchor is not found
2020-01-15 17:27:25 +01:00
Dennis Camera
93ec4b46aa
[__line] Ensure the line is only added once
2020-01-15 17:27:25 +01:00
0f6fe4764b
add --onchange to __line
2019-03-28 23:31:38 +02:00
Jonas Weber
6326eae1bb
Fix SC2166 on all manfest/gencode/explorers
2018-10-01 22:13:24 +02:00
Jonas Weber
4eaace7dd5
Handle missing file in __line explorer gracefully
...
closes #675
2018-06-20 11:14:25 +02:00
Steven Armstrong
4516ee0baa
position can not be empty
...
Signed-off-by: Steven Armstrong <steven@icarus.ethz.ch>
2018-06-01 15:27:40 +02:00
Steven Armstrong
fb26894cbd
when searching treat line as string, and regex as regexp
...
Signed-off-by: Steven Armstrong <steven@icarus.ethz.ch>
2018-05-18 16:57:34 +02:00
Steven Armstrong
a3968f8313
rewrite __line type for --before and --after support
...
Signed-off-by: Steven Armstrong <steven@icarus.ethz.ch>
2018-05-18 01:25:35 +02:00
uqam-fob
fc8dded8e9
__line: Support regex beginning with an hyphen ( fixes #607 ) ( #608 )
...
If `regex` begins with an hyphen, `grep` treats it as an option
and treats `file` as the regular expression. This leads to `grep`
trying to read from the standard input and making it wait infinitely.
This patch adds the missing argument breaker `--` and allows
`regex` to begin with an hyphen (provided it is called correctly).
2017-12-29 17:09:06 +01:00
Darko Poljak
4f5dddd9d6
Fix for __line containing single quotes: #154 . ( #594 )
2017-11-09 08:20:33 +01:00
7ee56d099f
resolved #444 add messaging to __line-type ( #580 )
...
#444 Add messaging to __line-type
2017-09-27 12:19:07 +02:00
Darko Poljak
62378dc8b9
Change shebang to #!/bin/sh -e
2017-06-28 13:19:32 +02:00
Darko Poljak
df566f4ff8
GPLv3+ relicensing.
2016-08-10 18:15:54 +02:00
Darko Poljak
0dfb4aee73
sphinx> ':manpage:' -> ':strong:'
2016-06-30 15:13:33 +02:00
Darko Poljak
f98208f250
Make man pages SEE ALSO by convention. Improve docs building.
2016-06-30 12:09:07 +02:00
Darko Poljak
51c94e9e82
Restructure and fix and improve docs and manpages.
2016-06-29 07:48:34 +02:00
Darko Poljak
b89077f9a5
Better sphinx manpage ext. Add custom dotman Makefile target for custom .cdist directory.
2016-06-23 16:08:59 +02:00
Darko Poljak
cf32b669ff
Write sphinx rst docs.
2016-05-22 17:16:03 +02:00
Steven Armstrong
2fdff153d6
dont fail if result is empty file
...
Signed-off-by: Steven Armstrong <steven@icarus.ethz.ch>
2014-02-22 00:57:00 +01:00
Steven Armstrong
68c1bf6633
preserve ownership and permissions of existing file
...
Signed-off-by: Steven Armstrong <steven@icarus.ethz.ch>
2014-02-22 00:56:54 +01:00
Nico Schottelius
51c9662475
DO NOT USE ECHO WHEN SOMETHING MAY CONTAIN A B-A-C-K-S-L-A-S-H
...
Signed-off-by: Nico Schottelius <nico@bento.schottelius.org>
2014-01-21 16:41:34 +01:00
Nico Schottelius
f8c36c080e
do not escape \ in --line
...
Signed-off-by: Nico Schottelius <nico@bento.schottelius.org>
2014-01-07 22:30:59 +01:00
Nico Schottelius
2932b8343f
use printf instead of echo to avoid bash broken echo builtin
...
Signed-off-by: Nico Schottelius <nico@bento.schottelius.org>
2013-11-25 19:08:46 +01:00
Nico Schottelius
95513ab538
__line: handle fixed strings correctly, posix gave us -F -x for this case
...
Signed-off-by: Nico Schottelius <nico@bento.schottelius.org>
2013-10-29 12:23:07 +01:00
Nico Schottelius
2b66889105
__line: support line/regexp containing /
...
Signed-off-by: Nico Schottelius <nico@bento.schottelius.org>
2013-09-26 16:26:01 +02:00
Nico Schottelius
63573a9797
make package_data work
...
Signed-off-by: Nico Schottelius <nico@brief.schottelius.org>
2012-10-29 22:50:27 +01:00