add terminal compatibility