Skip to content

Korean markers (조사. e.g. 은/는, 이/가, 을/를, 와/과, ...) support? #335

Description

@foriequal0

I couldn't find an example for supporting korean markers.

Some korean markers depend on whether a previous noun ends with a consonant or with a vowel (without a consonant).
With a consonant, we use 은, 이, 을, 과, and without a consonant, we use 는, 가, 를, 와.

Let me assume that I want to translate following sentence:
Do you want to delete a user?

Then it might be translated into 사용자를 삭제하시겠습니까?.
'를' after '사용자' is an object marker. The last character of '사용자' is '자', and it doesn't have a letter at its bottom, so it ends with a vowel (ㅓ), without a consonant.
If we change '사용자' to '계정' (account), the message should be 계정을 삭제하시겠습니까?.
'을' after '계정' is also an object marker. The last character of '계정' is '정', and it has a letter 'ㅇ' at its bottom, so it ends with a consonant.
This is similar to other markers. Their usages depend on whether a previous noun ends with a consonant or not.

If we make '사용자' or '계정' a variable such as $type, then we should have a way to tell whether $type ends wth a consonant or not.
Should this be implemented in custom function like this?

delete-prompt = { KOREAN_ENDS_WITH($type) ->
  [consonant] {$type}을 삭제하시겠습니까?
  [vowel]     {$type}를 삭제하시겠습니까?
}

Activity

  1. doodoori2 commented on Aug 17, 2021

    @doodoori2

    I'm sorry it wasn't an answer your question. ;)

    Unreal engines have similar functions. see also hangulpost-positions section.
    it seems to be a reference about your question.
    https://docs.unrealengine.com/4.26/en-US/ProductionPipelines/Localization/Formatting/#hangulpost-positions

  2. armoha commented on Jan 16, 2022

    @armoha

    This seems to related with #80.
    Localization example on (comment):

    -creature-fairy = fairy
    -creature-elf = elf
        .StartsWith = vowel
    
    you-see =
        You see { $object.StartsWith ->
            [vowel] an { $object }
           *[consonant] a { $object }
        }.

    (r-)eul 을/를 Korean postposition with same example:

    -creature-fairy = 요정
    -creature-elf = 엘프
        .EndsWith = vowel
    
    you-see =
        당신은 { $object.EndsWith ->
            [vowel] { $object }를
           *[consonant] { $object }을
        } 발견했다.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions