Fix bug: source file not properly recorded in call exp nodes
Fix bug in cursor X position
Refactor programs that set horizontal cursor position