|
Нежелательное удаление следующей за полностью выделенной строки в тексте модуля | ☑ | ||
---|---|---|---|---|
0
TormozIT
гуру
29.06.15
✎
12:57
|
Давно меня мучает проблема.
В редакторе текстов удаление строки, выделенной кликом в области маркеров, через CTRL+L приводит к удалению 2-х строк вместо одной. Воспроизведение. Кликнуть левой кнопкой мышки в области маркеров по первой из 2-х любых непустых строк в редакторе текстовых документов конфигуратора или обычной формы или управляемой формы. Будет выделена вся текущая строка и курсор установится в начало следующей строки. Нажать CTRL+L. Будут удалены обе строки. А ожидается удаление только выделенной строки. С одной стороны удаление происходит корректно, т.к. курсор после выполнения выделения стоит в начале следующей за выделенной строки. Но с другой стороны этого никак не ожидаешь, кликнув на одной строке и вызвав команду "Удалить" Примерно до версии 8.2.14 редактор текстов вел себя по-другому и такой проблемы не было. Однако потом видимо исправили какую то проблему и внесли эту. Посоветуйте альтернативный/правильный способ наглядно удалить подряд идущие строки в редакторе текстов. |
|||
1
Фокусник
29.06.15
✎
13:00
|
(0) Жму DEL такого нет. А что такое CTRL+L? :)
|
|||
2
МаксимМП23
29.06.15
✎
13:00
|
(0) Зачем выделять строку для удаления по CTRL+L?
|
|||
3
TormozIT
гуру
29.06.15
✎
13:04
|
Поправочка. Нужен способ именно удаления одной строки, чтобы и при курсоре внутри нее работал и чтобы мышкой выделить быстро можно было и удалить.
Выделять строку надо для универсальности и наглядности, т.к. курсор в некоторые строки установить можно, но он появится в неожиданной позиции. CTRL+L - удаление текущей строки. |
|||
4
DmitrO
29.06.15
✎
13:08
|
(0)можно я назову тебя занудой? :)
|
|||
5
Enterprise
29.06.15
✎
13:09
|
Вот где проблемы то настоящие ))
|
|||
6
ДенисЧ
29.06.15
✎
13:10
|
(0) Возьми табуретку, пприсаживайся.
|
|||
7
TormozIT
гуру
29.06.15
✎
13:12
|
Уже пару раз проблема 0 приводила к неприятным последствиям. Поэтому это не просто неудобство, а в первую очередь снижение риска внесения скрытых ошибок в код.
|
|||
8
TormozIT
гуру
29.06.15
✎
13:14
|
Выглядит она примерно так http://rghost.ru/8rhvxd629
|
|||
9
Goggy
29.06.15
✎
13:16
|
(6) Новый председатель?
|
|||
10
Goggy
29.06.15
✎
13:19
|
ИМХО всё правильно работает. Т.к. удаляет выделенную область и строку на которой стоит курсор. Если нормально выделишь область(чтоб курсор остался на нужной строке). то и удалится только необходимая строка.
|
|||
11
DmitrO
29.06.15
✎
13:20
|
Предлагаю просто написать письмо в 1С с предложением доработать редактор модулей, чтобы при CTRL+L если в последней из выделенных строк, не выделено ни одного символа (т.е. курсор стоит в начале строки) строка бы не удалялась, получить сообщение что пожелание зарегистрировано, выпить коньячку и успокоиться.
|
|||
12
Goggy
29.06.15
✎
13:21
|
+(10) Мне кажется что ты усложняешь сам себе жизнь, пользуйся DEL и не будет проблемы даже в таком случае.
|
|||
13
dmpl
29.06.15
✎
13:34
|
(11) CTRL + L по замыслу должна удалять только текущую строку. Т.е. ту, где стоит курсор. А выделенный блок - оставить.
|
|||
14
dmpl
29.06.15
✎
13:36
|
(12) Ну да. Выделил строку - Del или Backspace, не выделил строку - CTRL + L.
|
|||
15
TormozIT
гуру
29.06.15
✎
13:38
|
(14) Вот именно, что раньше CTLR+L во всех случаях работало как надо, а теперь надо правильно две комбинации применять. Ошибешься - можешь попасть на скрытую ошибку в коде.
|
|||
16
TormozIT
гуру
29.06.15
✎
13:39
|
(11) Это я первым делом сделал. Но эффект ждать не раньше чем через пол года, как водится =)
|
|||
17
DmitrO
29.06.15
✎
13:44
|
(16)именно поэтому я настаиваю на последних двух пунктах в этом ритуале, сам периодически вспоминаю о зарегеных ошибках, повторяю последние два пункта..
если ко всем проблемам подходить так тщательно можно забухать не по децки. |
|||
18
TormozIT
гуру
29.06.15
✎
13:49
|
У кого EDT установлена, там есть такая беда?
|
|||
19
dmpl
29.06.15
✎
13:58
|
(15) Программист должен быть ленивым. А это означает, что CTRL + L вместо Del он будет жать в одном и только одном случае - потому что ему было лень выделить строку. Не надо делать лишних движений - и не будет ошибок.
P.S. Раньше функция работала вообще неправильно - удаляла не ту строку. Сейчас тоже неправильно - кроме правильной, удаляет еще и другие строки. |
|||
20
TormozIT
гуру
29.06.15
✎
14:31
|
(19) Повторяю, установка курсора в строку не всегда наглядна. Я кликну в середину, а он встанет в самое начало, т.к. строка пустая и его придется искать взглядом. Если же я курсором мышки кликаю в области маркеров, то ответ на вопрос "Строка выделена?" приходит заметно быстрее, т.к. площадь и контрастность изменений сопровождающих выделение значительно превосходит тоненький курсор вставший в произвольную позицию на всей ширине строки.
|
|||
21
dmpl
29.06.15
✎
14:32
|
(20) В таком случае достаточно просто забыть про CTRL + L. Есть Del и Backspace, всего 1 кнопка вместо 2.
|
|||
22
МаксимМП23
29.06.15
✎
14:33
|
||||
23
TormozIT
гуру
29.06.15
✎
14:42
|
(21) Ошибаешься. Находясь в нужной строке и видя курсор, мне не надо отвечать на вопрос "Строка выделена?" и тратить время на ее выделение через область маркеров.
|
|||
24
МаксимМП23
29.06.15
✎
14:44
|
(23) Тебе бы поспать походу надо.
|
|||
25
dmpl
29.06.15
✎
14:50
|
(23) Зачем тогда выделяешь?
|
|||
26
TormozIT
гуру
29.06.15
✎
14:53
|
(25) Когда текстовый курсор находится в неизвестном месте удобнее выделять курсором мышки.
|
|||
27
dmpl
29.06.15
✎
15:15
|
(26) А после выделения удобнее нажать 1 широкую кнопку в верхнем правом углу основной секции.
|
|||
28
TormozIT
гуру
29.06.15
✎
15:23
|
(27) Не понял, что имеется ввиду.
|
|||
29
dmpl
29.06.15
✎
15:25
|
(28) Такая большая удобная кнопка <-Backspace.
|
|||
30
TormozIT
гуру
29.06.15
✎
17:13
|
(29) Уже отвечал на это в (15). Идем по кругу?
|
|||
31
dmpl
30.06.15
✎
08:25
|
(30) Я уже писал: если CTRL + L будет работать правильно, то удаляться будет текущая строка - та, в которой курсор, а выделенная как была, так и останется не удаленной. Эта комбинация в случае полностью выделенной строки НЕ ИМЕЕТ СМЫСЛА, т.к. курсор стоит на другой строке.
|
|||
32
TormozIT
гуру
30.06.15
✎
18:04
|
Проверил рассматриваемый сценарий в разных текстовых редакторах.
В некоторых текстовых редакторах выделение строки через область маркеров происходит аналогично тому, как сделано в редакторе 1С, т.е. с установкой текстового курсора в начало следующей за выделенной строки. При нажатии CTRL+L некоторые удаляют только строку, в которой стоит курсор, а выделение с остальных строк просто снимают. Но больше всего понравилось поведение Wordpad - при выделении строки текстовый курсор остается в выделенной строке. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |