* [PATCH 1/5] update_unicode.sh: simplify output capture
@ 2014-12-19 14:39 dev+git
2014-12-19 14:39 ` [PATCH 2/5] update_unicode.sh: set UNICODE_DIR only once dev+git
` (4 more replies)
0 siblings, 5 replies; 9+ messages in thread
From: dev+git @ 2014-12-19 14:39 UTC (permalink / raw)
To: git; +Cc: tboegi, Beat Bolli
From: Beat Bolli <dev+git@drbeat.li>
Instead of capturing the output of each echo and uniset invocation, wrap
the whole section in a group command and redirect its output all at
once.
Signed-off-by: Beat Bolli <dev+git@drbeat.li>
---
update_unicode.sh | 17 +++++++++--------
1 file changed, 9 insertions(+), 8 deletions(-)
diff --git a/update_unicode.sh b/update_unicode.sh
index 000b937..c1c876c 100755
--- a/update_unicode.sh
+++ b/update_unicode.sh
@@ -26,12 +26,13 @@ fi &&
./configure --enable-warnings=-Werror CFLAGS='-O0 -ggdb'
fi &&
make
- ) &&
- echo "static const struct interval zero_width[] = {" >$UNICODEWIDTH_H &&
- UNICODE_DIR=. ./uniset/uniset --32 cat:Me,Mn,Cf + U+1160..U+11FF - U+00AD |
- grep -v plane >>$UNICODEWIDTH_H &&
- echo "};" >>$UNICODEWIDTH_H &&
- echo "static const struct interval double_width[] = {" >>$UNICODEWIDTH_H &&
- UNICODE_DIR=. ./uniset/uniset --32 eaw:F,W >>$UNICODEWIDTH_H &&
- echo "};" >>$UNICODEWIDTH_H
+ ) && {
+ echo "static const struct interval zero_width[] = {" &&
+ UNICODE_DIR=. ./uniset/uniset --32 cat:Me,Mn,Cf + U+1160..U+11FF - U+00AD |
+ grep -v plane &&
+ echo "};" &&
+ echo "static const struct interval double_width[] = {" &&
+ UNICODE_DIR=. ./uniset/uniset --32 eaw:F,W &&
+ echo "};"
+ } >$UNICODEWIDTH_H
)
--
2.1.3
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [PATCH 2/5] update_unicode.sh: set UNICODE_DIR only once
2014-12-19 14:39 [PATCH 1/5] update_unicode.sh: simplify output capture dev+git
@ 2014-12-19 14:39 ` dev+git
2014-12-19 14:39 ` [PATCH 3/5] update_unicode.sh: shorten uniset invocation path dev+git
` (3 subsequent siblings)
4 siblings, 0 replies; 9+ messages in thread
From: dev+git @ 2014-12-19 14:39 UTC (permalink / raw)
To: git; +Cc: tboegi, Beat Bolli
From: Beat Bolli <dev+git@drbeat.li>
The value is the same on both uniset invocations, so "Don't Repeat
Yourself" applies.
Since we're in a subshell already, there's no need to unset UNICODE_DIR
at the end.
Signed-off-by: Beat Bolli <dev+git@drbeat.li>
---
update_unicode.sh | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/update_unicode.sh b/update_unicode.sh
index c1c876c..bed8916 100755
--- a/update_unicode.sh
+++ b/update_unicode.sh
@@ -27,12 +27,13 @@ fi &&
fi &&
make
) && {
+ UNICODE_DIR=. && export UNICODE_DIR &&
echo "static const struct interval zero_width[] = {" &&
- UNICODE_DIR=. ./uniset/uniset --32 cat:Me,Mn,Cf + U+1160..U+11FF - U+00AD |
+ ./uniset/uniset --32 cat:Me,Mn,Cf + U+1160..U+11FF - U+00AD |
grep -v plane &&
echo "};" &&
echo "static const struct interval double_width[] = {" &&
- UNICODE_DIR=. ./uniset/uniset --32 eaw:F,W &&
+ ./uniset/uniset --32 eaw:F,W &&
echo "};"
} >$UNICODEWIDTH_H
)
--
2.1.3
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [PATCH 3/5] update_unicode.sh: shorten uniset invocation path
2014-12-19 14:39 [PATCH 1/5] update_unicode.sh: simplify output capture dev+git
2014-12-19 14:39 ` [PATCH 2/5] update_unicode.sh: set UNICODE_DIR only once dev+git
@ 2014-12-19 14:39 ` dev+git
2014-12-19 14:39 ` [PATCH 4/5] update_unicode.sh: Make the output structure visible dev+git
` (2 subsequent siblings)
4 siblings, 0 replies; 9+ messages in thread
From: dev+git @ 2014-12-19 14:39 UTC (permalink / raw)
To: git; +Cc: tboegi, Beat Bolli
From: Beat Bolli <dev+git@drbeat.li>
"uniset/uniset" is a relative path; there's no need to prefix it with "./".
Signed-off-by: Beat Bolli <dev+git@drbeat.li>
---
update_unicode.sh | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/update_unicode.sh b/update_unicode.sh
index bed8916..f5cc14b 100755
--- a/update_unicode.sh
+++ b/update_unicode.sh
@@ -29,11 +29,11 @@ fi &&
) && {
UNICODE_DIR=. && export UNICODE_DIR &&
echo "static const struct interval zero_width[] = {" &&
- ./uniset/uniset --32 cat:Me,Mn,Cf + U+1160..U+11FF - U+00AD |
+ uniset/uniset --32 cat:Me,Mn,Cf + U+1160..U+11FF - U+00AD |
grep -v plane &&
echo "};" &&
echo "static const struct interval double_width[] = {" &&
- ./uniset/uniset --32 eaw:F,W &&
+ uniset/uniset --32 eaw:F,W &&
echo "};"
} >$UNICODEWIDTH_H
)
--
2.1.3
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [PATCH 4/5] update_unicode.sh: Make the output structure visible
2014-12-19 14:39 [PATCH 1/5] update_unicode.sh: simplify output capture dev+git
2014-12-19 14:39 ` [PATCH 2/5] update_unicode.sh: set UNICODE_DIR only once dev+git
2014-12-19 14:39 ` [PATCH 3/5] update_unicode.sh: shorten uniset invocation path dev+git
@ 2014-12-19 14:39 ` dev+git
2014-12-19 15:22 ` Jeff King
2014-12-19 14:39 ` [PATCH 5/5] update_unicode.sh: Delete the command group dev+git
2014-12-19 15:12 ` [PATCH 1/5] update_unicode.sh: simplify output capture Beat Bolli
4 siblings, 1 reply; 9+ messages in thread
From: dev+git @ 2014-12-19 14:39 UTC (permalink / raw)
To: git; +Cc: tboegi, Beat Bolli
From: Beat Bolli <dev+git@drbeat.li>
By using printf instead of the echo/uniset sequence, the final structure
of the generated file becomes obvious.
Signed-off-by: Beat Bolli <dev+git@drbeat.li>
---
update_unicode.sh | 18 +++++++++++-------
1 file changed, 11 insertions(+), 7 deletions(-)
diff --git a/update_unicode.sh b/update_unicode.sh
index f5cc14b..61968d9 100755
--- a/update_unicode.sh
+++ b/update_unicode.sh
@@ -28,12 +28,16 @@ fi &&
make
) && {
UNICODE_DIR=. && export UNICODE_DIR &&
- echo "static const struct interval zero_width[] = {" &&
- uniset/uniset --32 cat:Me,Mn,Cf + U+1160..U+11FF - U+00AD |
- grep -v plane &&
- echo "};" &&
- echo "static const struct interval double_width[] = {" &&
- uniset/uniset --32 eaw:F,W &&
- echo "};"
+ printf "\
+static const struct interval zero_width[] = {
+%s
+};
+static const struct interval double_width[] = {
+%s
+};
+" \
+ "$(uniset/uniset --32 cat:Me,Mn,Cf + U+1160..U+11FF - U+00AD |
+ grep -v plane)" \
+ "$(uniset/uniset --32 eaw:F,W)"
} >$UNICODEWIDTH_H
)
--
2.1.3
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [PATCH 5/5] update_unicode.sh: Delete the command group
2014-12-19 14:39 [PATCH 1/5] update_unicode.sh: simplify output capture dev+git
` (2 preceding siblings ...)
2014-12-19 14:39 ` [PATCH 4/5] update_unicode.sh: Make the output structure visible dev+git
@ 2014-12-19 14:39 ` dev+git
2014-12-19 15:12 ` [PATCH 1/5] update_unicode.sh: simplify output capture Beat Bolli
4 siblings, 0 replies; 9+ messages in thread
From: dev+git @ 2014-12-19 14:39 UTC (permalink / raw)
To: git; +Cc: tboegi, Beat Bolli
From: Beat Bolli <dev+git@drbeat.li>
Now that the whole file is generated by one single command, the command
group is no longer needed.
Signed-off-by: Beat Bolli <dev+git@drbeat.li>
---
update_unicode.sh | 13 ++++++-------
1 file changed, 6 insertions(+), 7 deletions(-)
diff --git a/update_unicode.sh b/update_unicode.sh
index 61968d9..45bd12a 100755
--- a/update_unicode.sh
+++ b/update_unicode.sh
@@ -26,9 +26,9 @@ fi &&
./configure --enable-warnings=-Werror CFLAGS='-O0 -ggdb'
fi &&
make
- ) && {
- UNICODE_DIR=. && export UNICODE_DIR &&
- printf "\
+ ) &&
+ UNICODE_DIR=. && export UNICODE_DIR &&
+ printf "\
static const struct interval zero_width[] = {
%s
};
@@ -36,8 +36,7 @@ static const struct interval double_width[] = {
%s
};
" \
- "$(uniset/uniset --32 cat:Me,Mn,Cf + U+1160..U+11FF - U+00AD |
- grep -v plane)" \
- "$(uniset/uniset --32 eaw:F,W)"
- } >$UNICODEWIDTH_H
+ "$(uniset/uniset --32 cat:Me,Mn,Cf + U+1160..U+11FF - U+00AD |
+ grep -v plane)" \
+ "$(uniset/uniset --32 eaw:F,W)" >$UNICODEWIDTH_H
)
--
2.1.3
^ permalink raw reply related [flat|nested] 9+ messages in thread
* Re: [PATCH 1/5] update_unicode.sh: simplify output capture
2014-12-19 14:39 [PATCH 1/5] update_unicode.sh: simplify output capture dev+git
` (3 preceding siblings ...)
2014-12-19 14:39 ` [PATCH 5/5] update_unicode.sh: Delete the command group dev+git
@ 2014-12-19 15:12 ` Beat Bolli
4 siblings, 0 replies; 9+ messages in thread
From: Beat Bolli @ 2014-12-19 15:12 UTC (permalink / raw)
To: git; +Cc: tboegi
[-- Attachment #1: Type: text/plain, Size: 449 bytes --]
On 19.12.14 15:39, dev+git@drbeat.li wrote:
> From: Beat Bolli <dev+git@drbeat.li>
Sorry, it looks like git send-email borked these messages. This line
should be part of the mail headers.
Regards,
Beat Bolli
--
https://drbeat.li
pgp: 0x506A903A; 49D5 794A EA77 F907 764F D89E 304B 93CF 506A 903A
gsm: 4.7.7.6.0.7.7.9.7.1.4.e164.arpa
icbm: 47.0452 N, 7.2715 E
"It takes love over gold, and mind over matter" -- Dire Straits
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 181 bytes --]
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH 4/5] update_unicode.sh: Make the output structure visible
2014-12-19 14:39 ` [PATCH 4/5] update_unicode.sh: Make the output structure visible dev+git
@ 2014-12-19 15:22 ` Jeff King
2014-12-19 15:43 ` Beat Bolli
0 siblings, 1 reply; 9+ messages in thread
From: Jeff King @ 2014-12-19 15:22 UTC (permalink / raw)
To: dev+git; +Cc: git, tboegi
On Fri, Dec 19, 2014 at 03:39:30PM +0100, dev+git@drbeat.li wrote:
> By using printf instead of the echo/uniset sequence, the final structure
> of the generated file becomes obvious.
This whole series looks pretty sane to me, and the result is easier to
read.
I did wonder if a here-doc would be even easier than a PDF, like:
cat >$UNICODEWIDTH_H <<-EOF
static const struct interval zero_width[] = {
$(uniset/uniset --32 cat:Me,Mn,Cf + U+1160..U+11FF - U+00AD | grep -v plane)
};
static const struct interval double_width[] = {
$(uniset/uniset --32 eaw:F,W)
};
EOF
The nice thing is that <<- will strip leading tabs, which means you can
indent properly to match the surrounding code. I don't know if you find
the in-line $() more readable or not, though.
I think either way it is an improvement over the current state.
-Peff
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH 4/5] update_unicode.sh: Make the output structure visible
2014-12-19 15:22 ` Jeff King
@ 2014-12-19 15:43 ` Beat Bolli
2014-12-19 15:48 ` Jeff King
0 siblings, 1 reply; 9+ messages in thread
From: Beat Bolli @ 2014-12-19 15:43 UTC (permalink / raw)
To: Jeff King, dev+git; +Cc: git, tboegi
[-- Attachment #1: Type: text/plain, Size: 1178 bytes --]
On 19.12.14 16:22, Jeff King wrote:
> On Fri, Dec 19, 2014 at 03:39:30PM +0100, dev+git@drbeat.li wrote:
>
>> By using printf instead of the echo/uniset sequence, the final structure
>> of the generated file becomes obvious.
>
> This whole series looks pretty sane to me, and the result is easier to
> read.
>
> I did wonder if a here-doc would be even easier than a PDF, like:
>
> cat >$UNICODEWIDTH_H <<-EOF
> static const struct interval zero_width[] = {
> $(uniset/uniset --32 cat:Me,Mn,Cf + U+1160..U+11FF - U+00AD | grep -v plane)
> };
> static const struct interval double_width[] = {
> $(uniset/uniset --32 eaw:F,W)
> };
> EOF
>
> The nice thing is that <<- will strip leading tabs, which means you can
> indent properly to match the surrounding code. I don't know if you find
> the in-line $() more readable or not, though.
I think the code looks much nicer with a here doc.
Checking in t/, it looks that there's no consensus about whether to
indent the content relative to the cat statement or not. What do you
suggest?
> I think either way it is an improvement over the current state.
Thanks!
Beat
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 181 bytes --]
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH 4/5] update_unicode.sh: Make the output structure visible
2014-12-19 15:43 ` Beat Bolli
@ 2014-12-19 15:48 ` Jeff King
0 siblings, 0 replies; 9+ messages in thread
From: Jeff King @ 2014-12-19 15:48 UTC (permalink / raw)
To: Beat Bolli; +Cc: dev+git, git, tboegi
On Fri, Dec 19, 2014 at 04:43:51PM +0100, Beat Bolli wrote:
> I think the code looks much nicer with a here doc.
>
> Checking in t/, it looks that there's no consensus about whether to
> indent the content relative to the cat statement or not. What do you
> suggest?
I think we typically do it at the same level as the `cat`. Checking "git
grep -A1 '<<-'" does show a mix, but skimming over it I think what I
suggested is more common.
-Peff
^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2014-12-19 15:48 UTC | newest]
Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-12-19 14:39 [PATCH 1/5] update_unicode.sh: simplify output capture dev+git
2014-12-19 14:39 ` [PATCH 2/5] update_unicode.sh: set UNICODE_DIR only once dev+git
2014-12-19 14:39 ` [PATCH 3/5] update_unicode.sh: shorten uniset invocation path dev+git
2014-12-19 14:39 ` [PATCH 4/5] update_unicode.sh: Make the output structure visible dev+git
2014-12-19 15:22 ` Jeff King
2014-12-19 15:43 ` Beat Bolli
2014-12-19 15:48 ` Jeff King
2014-12-19 14:39 ` [PATCH 5/5] update_unicode.sh: Delete the command group dev+git
2014-12-19 15:12 ` [PATCH 1/5] update_unicode.sh: simplify output capture Beat Bolli
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).