Предположит следующие ситуации: У нас есть документ, который содержит пробела
(, например обозначенные как _) И мы знак вставки за этими (4) пространствамиXText - AutoEdits с забоем
_ _ _ _|
Я хочу, чтобы редактор удалял все 4 пробела вместо одного, когда пользователь нажимает обратно.
Я простирающийся DefaultIndentLineAutoEditStrategy где я переопределить следующий метод
public void customizeDocumentCommand(IDocument d, DocumentCommand c)
Я столкнулся с двумя проблемами:
- Как обнаружить забой были использованы из DocumentCommand? Если вы используете newline, то
c.text
содержит"\n"
или"\r\n"
, но если вы используете обратное пространство, оно равно""
. - Как вставить еще 3 пробела? Добавление
"\b"
вc.text
не работает.
делает установка command.offset и command.length не помогают? –
Хорошо я обнаруживаю такое обратное пространство if (c.text.equals ("") && c.length == 1) и c.offset- = 3; c.length = 4; просто сделал трюк. Благодарю. – Smarty77