Changing case according to language #1

Open
opened 2016-10-22 17:30:35 +00:00 by adem0x · 0 comments
adem0x commented 2016-10-22 17:30:35 +00:00 (Migrated from github.com)

I went through PUCU.pas as carefully as I could, but I couldn't find an answer to changing case (i.e. upper/lower/title) of a codepoint based on language.

Let me try to make the question a little clearer:

Consider 'LATIN CAPITAL LETTER I' (U+0049).

For all languages the lowercase for this is 'LATIN SMALL LETTER I' (U+0069) except for Turkish and Azerbaijani in which case it becomes 'LATIN SMALL LETTER DOTLESS I' (U+0131).

Similar ones also apply to other languages for title cases, etc.

The issue here is not a codepage since Unicode does not have codepages.

It's neither a script (or codeblock) issue.

It is, solely and purely a language one.

IOW, case change rules differ by the language a piece of string written in.

To sum it all, I suppose I am looking for a function such as:

NewString := LowerCase(OriginalString, Turkish);
or
NewString := UpperCase(OriginalString, German);
or
NewString := TitleCase(OriginalString, Spanish);
etc.

Is there anything in PUCU.pas that serves (or can be made to serve) this purpose.

I went through PUCU.pas as carefully as I could, but I couldn't find an answer to changing case (i.e. upper/lower/title) of a codepoint based on language. Let me try to make the question a little clearer: Consider 'LATIN CAPITAL LETTER I' (U+0049). For all languages the lowercase for this is 'LATIN SMALL LETTER I' (U+0069) except for Turkish and Azerbaijani in which case it becomes 'LATIN SMALL LETTER DOTLESS I' (U+0131). Similar ones also apply to other languages for title cases, etc. The issue here is not a codepage since Unicode does not have codepages. It's neither a script (or codeblock) issue. It is, solely and purely a language one. IOW, case change rules differ by the language a piece of string written in. To sum it all, I suppose I am looking for a function such as: NewString := LowerCase(OriginalString, Turkish); or NewString := UpperCase(OriginalString, German); or NewString := TitleCase(OriginalString, Spanish); etc. Is there anything in PUCU.pas that serves (or can be made to serve) this purpose.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
BeRo1985/pucu#1
No description provided.