[Github-comments] [geany/geany] NSIS upgrade to 3.x (#2181)

Colomban Wendling notifications at xxxxx
Sat Jun 22 10:43:31 UTC 2019


b4n commented on this pull request.



> +
+# extract variable names (then sort the result, conver to lowercase and replace new lines by spaces)
+variables=$(\
+    sed --silent --regexp-extended\
+        --expression 's/^[ ]*m_ShellConstants.add\(_T\("(.*)"\),.*,.*\);.*$/\1/p' \
+        --expression 's/^[ ]*m_UserVarNames.add\(_T\("(.*)"\),.*\);.*$/\1/p' "${BUILD_CPP_FILE}" | \
+    sort | \
+    tr '[:upper:]' '[:lower:]' | \
+    tr '\n' ' ')
+
+# hardcode a few more, as found in the documentation ("4.2.2 Other Writable Variables")
+variables_extra='{nsisdir} 0 1 2 3 4 5 6 7 8 9 r0 r1 r2 r3 r4 r5 r6 r7 r8 r9 \\n \\r \\t $'
+variables="${variables_extra} ${variables}"
+# remove leading and trailing whitespaces
+variables="$(echo "$variables" | sed 's/^[[:blank:]]*//;s/[[:blank:]]*$//')"
+functions="$(echo "$functions" | sed 's/^[[:blank:]]*//;s/[[:blank:]]*$//')"

what about moving that in the initial generation next to the other ones?  also it looks like a little bit of duplication, so what about adding a small function like this:
```shell
normalize() {
   sort | tr '[:upper:]' '[:lower:]' | tr '\n' ' ' | sed 's/^[[:blank:]]*//;s/[[:blank:]]*$//'
}

functions=$(
    sed --silent --regexp-extended 's/^\{TOK_.*,_T\("(.*)"\),[0-9]+,.*$/\1/p' "${TOKENS_CPP_FILE}" | \
    normalize
)

variables=$(
    sed --silent --regexp-extended \
        --expression 's/^[ ]*m_ShellConstants.add\(_T\("(.*)"\),.*,.*\);.*$/\1/p' \
        --expression 's/^[ ]*m_UserVarNames.add\(_T\("(.*)"\),.*\);.*$/\1/p' "${BUILD_CPP_FILE}" | \
    normalize
)

# […]
```

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/geany/geany/pull/2181#pullrequestreview-253091152
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.geany.org/pipermail/github-comments/attachments/20190622/e69e85c9/attachment.html>


More information about the Github-comments mailing list