All of lore.kernel.org
 help / color / mirror / Atom feed
* [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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.