Introduction
Introduction Statistics Contact Development Disclaimer Help
Add manuals for the grapheme_is_*case*()-functions - libgrapheme - unicode stri…
git clone git://git.suckless.org/libgrapheme
Log
Files
Refs
README
LICENSE
---
commit cd82185dc9bbb7b2d1771952a625152da5e47591
parent 6e6c538e4efb4d191a2f0391466556eb758d76bd
Author: Laslo Hunhold <[email protected]>
Date: Wed, 7 Sep 2022 22:19:41 +0200
Add manuals for the grapheme_is_*case*()-functions
Signed-off-by: Laslo Hunhold <[email protected]>
Diffstat:
M Makefile | 12 ++++++++++++
A man/grapheme_is_lowercase.sh | 3 +++
A man/grapheme_is_lowercase_utf8.sh | 3 +++
A man/grapheme_is_titlecase.sh | 3 +++
A man/grapheme_is_titlecase_utf8.sh | 3 +++
A man/grapheme_is_uppercase.sh | 3 +++
A man/grapheme_is_uppercase_utf8.sh | 3 +++
M man/libgrapheme.sh | 6 ++++++
A man/template/is_case.sh | 67 +++++++++++++++++++++++++++++…
9 files changed, 103 insertions(+), 0 deletions(-)
---
diff --git a/Makefile b/Makefile
@@ -82,6 +82,12 @@ MAN3 =\
man/grapheme_to_uppercase_utf8\
man/grapheme_to_lowercase_utf8\
man/grapheme_to_titlecase_utf8\
+ man/grapheme_is_uppercase\
+ man/grapheme_is_lowercase\
+ man/grapheme_is_titlecase\
+ man/grapheme_is_uppercase_utf8\
+ man/grapheme_is_lowercase_utf8\
+ man/grapheme_is_titlecase_utf8\
MAN7 =\
man/libgrapheme\
@@ -195,6 +201,12 @@ gen/word.h: data/WordBreakProperty.txt gen/word
gen/word-test.h: data/WordBreakTest.txt gen/word-test
man/grapheme_is_character_break.3: man/grapheme_is_character_break.sh config.mk
+man/grapheme_is_uppercase.3: man/grapheme_is_uppercase.sh man/template/is_case…
+man/grapheme_is_lowercase.3: man/grapheme_is_lowercase.sh man/template/is_case…
+man/grapheme_is_titlecase.3: man/grapheme_is_titlecase.sh man/template/is_case…
+man/grapheme_is_uppercase_utf8.3: man/grapheme_is_uppercase_utf8.sh man/templa…
+man/grapheme_is_lowercase_utf8.3: man/grapheme_is_lowercase_utf8.sh man/templa…
+man/grapheme_is_titlecase_utf8.3: man/grapheme_is_titlecase_utf8.sh man/templa…
man/grapheme_next_character_break.3: man/grapheme_next_character_break.sh man/…
man/grapheme_next_line_break.3: man/grapheme_next_line_break.sh man/template/n…
man/grapheme_next_sentence_break.3: man/grapheme_next_sentence_break.sh man/te…
diff --git a/man/grapheme_is_lowercase.sh b/man/grapheme_is_lowercase.sh
@@ -0,0 +1,3 @@
+ENCODING="codepoint" \
+CASE="lowercase" \
+ $SH man/template/is_case.sh
diff --git a/man/grapheme_is_lowercase_utf8.sh b/man/grapheme_is_lowercase_utf8…
@@ -0,0 +1,3 @@
+ENCODING="utf8" \
+CASE="lowercase" \
+ $SH man/template/is_case.sh
diff --git a/man/grapheme_is_titlecase.sh b/man/grapheme_is_titlecase.sh
@@ -0,0 +1,3 @@
+ENCODING="codepoint" \
+CASE="titlecase" \
+ $SH man/template/is_case.sh
diff --git a/man/grapheme_is_titlecase_utf8.sh b/man/grapheme_is_titlecase_utf8…
@@ -0,0 +1,3 @@
+ENCODING="utf8" \
+CASE="titlecase" \
+ $SH man/template/is_case.sh
diff --git a/man/grapheme_is_uppercase.sh b/man/grapheme_is_uppercase.sh
@@ -0,0 +1,3 @@
+ENCODING="codepoint" \
+CASE="uppercase" \
+ $SH man/template/is_case.sh
diff --git a/man/grapheme_is_uppercase_utf8.sh b/man/grapheme_is_uppercase_utf8…
@@ -0,0 +1,3 @@
+ENCODING="utf8" \
+CASE="lowercase" \
+ $SH man/template/is_case.sh
diff --git a/man/libgrapheme.sh b/man/libgrapheme.sh
@@ -39,6 +39,12 @@ example illustrating the possible usage.
.Xr grapheme_decode_utf8 3 ,
.Xr grapheme_encode_utf8 3 ,
.Xr grapheme_is_character_break 3 ,
+.Xr grapheme_is_lowercase 3 ,
+.Xr grapheme_is_lowercase_utf8 3 ,
+.Xr grapheme_is_uppercase 3 ,
+.Xr grapheme_is_uppercase_utf8 3 ,
+.Xr grapheme_is_titlecase 3 ,
+.Xr grapheme_is_titlecase_utf8 3 ,
.Xr grapheme_next_character_break 3 ,
.Xr grapheme_next_character_break_utf8 3 ,
.Xr grapheme_next_line_break 3 ,
diff --git a/man/template/is_case.sh b/man/template/is_case.sh
@@ -0,0 +1,67 @@
+if [ "$ENCODING" = "utf8" ]; then
+ UNIT="byte"
+ ARRAYTYPE="UTF-8-encoded string"
+ SUFFIX="_utf8"
+ ANTISUFFIX=""
+ DATATYPE="char"
+else
+ UNIT="codepoint"
+ ARRAYTYPE="codepoint array"
+ SUFFIX=""
+ ANTISUFFIX="_utf8"
+ DATATYPE="uint_least32_t"
+fi
+
+cat << EOF
+.Dd ${MAN_DATE}
+.Dt GRAPHEME_IS_$(printf "%s%s" "$CASE" "$SUFFIX" | tr [:lower:] [:upper:]) 3
+.Os suckless.org
+.Sh NAME
+.Nm grapheme_is_${CASE}${SUFFIX}
+.Nd check if ${ARRAYTYPE} is ${CASE}
+.Sh SYNOPSIS
+.In grapheme.h
+.Ft size_t
+.Fn grapheme_is_${CASE}${SUFFIX} "const ${DATATYPE} *str" "size_t len" "size_t…
+.Sh DESCRIPTION
+The
+.Fn grapheme_is_${CASE}${SUFFIX}
+function checks if the ${ARRAYTYPE}
+.Va str
+is ${CASE} and writes the length of the matching ${CASE}-sequence to the integ…
+.Va caselen ,
+unless
+.Va caselen
+is set to
+.Dv NULL .
+.Pp
+If
+.Va len
+is set to
+.Dv SIZE_MAX
+(stdint.h is already included by grapheme.h) the ${ARRAYTYPE}
+.Va src
+is interpreted to be NUL-terminated and processing stops when a
+NUL-byte is encountered.
+.Pp
+For $(if [ "$ENCODING" != "utf8" ]; then printf "UTF-8-encoded"; else printf "…
+.Xr grapheme_is_${CASE}${ANTISUFFIX} 3
+can be used instead.
+.Sh RETURN VALUES
+The
+.Fn grapheme_is_${CASE}${SUFFIX}
+function returns
+.Dv true
+if the ${ARRAYTYPE}
+.Va str
+is ${CASE}, otherwise
+.Dv false .
+.Sh SEE ALSO
+.Xr grapheme_is_${CASE}${ANTISUFFIX} 3 ,
+.Xr libgrapheme 7
+.Sh STANDARDS
+.Fn grapheme_is_${CASE}${SUFFIX}
+is compliant with the Unicode ${UNICODE_VERSION} specification.
+.Sh AUTHORS
+.An Laslo Hunhold Aq Mt [email protected]
+EOF
You are viewing proxied material from suckless.org. The copyright of proxied material belongs to its original authors. Any comments or complaints in relation to proxied material should be directed to the original authors of the content concerned. Please see the disclaimer for more details.