Bi-directional text, where characters may be written from either right-to-left or left-to-right direction. Context-sensitive shaping and ligatures, where a character may change its shape, dependent on its location and/or the surrounding characters. For example, a character in Arabic script can have as many as four different shape-forms, depending on context.