Я обнаружил, что когда я хочу изменить метод ввода, я должен перезапустить X. Но я не хочу закрывать все приложения. Как это сделать?
Приложения, запущенные поверх X, будут убиты, если вы перезапустите X. Этого нельзя избежать.
Вы не можете.
Что вы можете сделать, это начать новый сеанс X на другом tty (экране), который должен оставить приложения, запущенные в первом сеансе, без изменений. (Это то, как некоторые менеджеры дисплеев [например, KDM] допускают множественные входы разных пользователей с использованием одного и того же физического дисплея / клавиатуры.)