Dear Omid,
Thanks for taking the time for such a detailed response. Could I ask you to make a Builder file where you just have a single routine with two text components one above the other, each containing that same text?
The first problem we can hopefully solve, as PsychoPy comes with python-bidi built in. Let’s say your second text component is called text_2. Insert a code component, and in its ‘Begin experiment’ tab, put this:
# library for displaying right-to-left text correctly:
import bidi
In its ‘Begin routine’ tab, put this:
# change text in the stimulus to right-to-left:
text_2.text = bidi.algorithm.get_display(text_2.text)
What happens?