Currently when looking at the buffer as it is being updated tachyon just passes the escape codes from the application directly to the viewing terminal. This works fine as long as the terminal supports all the escape codes in the same way tachyon does. Really the vt layer should interpret the codes and then push out to a terminal agnostic module to manipulate the terminal appropriately. Then the terminal wouldn't need to support the same escape codes as tachyon.
Additionally this would make tachyon more efficient because it wouldn't have to trigger a full buffer refresh whenever the vt layer does something which isn't just a direct mapping of the escape codes being passed through. One example of this is when scrolling where lines from the scrollback may have to be pushed to the screen.
Currently when looking at the buffer as it is being updated tachyon just passes the escape codes from the application directly to the viewing terminal. This works fine as long as the terminal supports all the escape codes in the same way tachyon does. Really the vt layer should interpret the codes and then push out to a terminal agnostic module to manipulate the terminal appropriately. Then the terminal wouldn't need to support the same escape codes as tachyon. Additionally this would make tachyon more efficient because it wouldn't have to trigger a full buffer refresh whenever the vt layer does something which isn't just a direct mapping of the escape codes being passed through. One example of this is when scrolling where lines from the scrollback may have to be pushed to the screen.