Выделение текста

Russian main discussion
  • Author
  • Message
Offline
Posts: 54
Joined: Wed Oct 21, 2009 7:57 pm

Post by Deft »

Fr0sT wrote:Deft
если у тебя текст

что делать? Съедать лишние буквы или двигать столбец "ввв" вправо? Или просто следовать логике "замена выделенного = удаление + вставка на это место", тогда будет второй вариант.
в режиме вставки (INS) сначала выделенный текст удаляется, а затем вставляемый текст добавляется, не перекрывая остальное
ааа ббб ввв ---> aaa гггг ввв

---
в режиме замены (OVR)
1. по идее выделенный текст должен не удаляться со сдвигом хвоста влево, а заменяться на пробелы! (это лично моё мнение - вряд ли так будет реализовано)
тогда вставляемый текст ГГГГ должен слиться со столбиком ВВВ (т.е. фактически выделение не повлекло смещения хвоста)

ааа ббб ввв ---> ааа ггггввв

в итоге: хочешь вставить вместо выделенного - используй INS, хочешь вставлять точно поверх (не зависимо от выделенного) - OVR
вот как раз ты и предлагал (Чт Ноя 12, 2009 11:50 am) сделать возможность двигать блоки (т.е. фактически вставлять пробелы перед выделением либо удалять символы перед выделением), а нужно это как раз для того, чтобы вставлять столбик пробелов в середине текста (либо удалять часть текста перед выделенным столбом)!!! как раз для нашего случая с ГГГГ

2. однако фактически сейчас в режиме OVR выделенный текст при вставке фрагмента удаляется и выделенное по-прежнему схлопывается в нуль со сдвигом хвоста влево, в таком случае если режим замены будет таки работать корректно - столбец ГГГГ должен ещё и затереть ВВВ (т.к. после удаленного столба ббб - ввв заедет под вставляемый гггг)

опять же это в случае если вообще будет реализована хотя бы вставка поверх текста

ааа ббб ввв ---> aaa гггг

Offline
Site Admin
Posts: 6311
Joined: Thu Jul 06, 2006 7:20 am

Post by Instructor »

chris wrote:При множественном нажатии для выделения всей строчки захватывается и начало следующей. Так что при вырезании нижняя автоматом переносится наверх....... :?
Так и в AkelPad 3.x.x происходит.

Offline
Posts: 4
Joined: Sun Feb 22, 2009 1:08 am

Post by chris »

Instructor wrote:
chris wrote:При множественном нажатии для выделения всей строчки захватывается и начало следующей. Так что при вырезании нижняя автоматом переносится наверх....... :?
Так и в AkelPad 3.x.x происходит.
Например сейчас я пользуюсь 3.6.4 этого нет и не надо никаких фиксов ставить как в новых версиях.

Offline
Posts: 3217
Joined: Wed Nov 29, 2006 1:19 pm
Location: Киев, Русь
Contact:

Post by VladSh »

Неожиданно удручило то, что при вертикальном выделении столбика и нажатии Tab происходит сдвиг всего текста выделенных строк, а не выделенного стоблика!.. :(
Можно ли как-то подкорректировать действие Tab для вертикального выделения?

Offline
Site Admin
Posts: 6311
Joined: Thu Jul 06, 2006 7:20 am

Post by Instructor »

VladSh
Реализовано. Будет доступно после релиза 4.4.4.

Offline
Posts: 876
Joined: Tue Jul 24, 2007 8:54 am

Post by Fr0sT »

VladSh
собственно это и является сабжем данной темы ;)
Instructor
>Реализовано
Ура!

Offline
Posts: 3217
Joined: Wed Nov 29, 2006 1:19 pm
Location: Киев, Русь
Contact:

Post by VladSh »

Instructor wrote:Реализовано. Будет доступно после релиза 4.4.4.
Действительно реализовано.
Но! Как оказалось прога не учитывает то, что в настройках табуляции являются табуляциями, а не пробелами...
Это выражается в том, что:
1). если выделяю несколько строк для вставки блока, то между текстом, после которого делается вставка, и вставляемым блоком вставляются не табы, а пробелы;
2). после вставляемого блока к коротким строкам также добавляются пробелы (лучше бы в моём случае добавлялись табы, если за блоком что-то есть, а если нету, то ничего бы не добавлялось, т.к. на концах строк остаётся куча пробелов).
В результате вроде всё красиво, то имеем дикий микс из табов и пробелов, редактировать который очень неудобно.

Offline
Site Admin
Posts: 6311
Joined: Thu Jul 06, 2006 7:20 am

Post by Instructor »

VladSh
Если текст вставляется за границей строки (после последнего символа в строке), то между последним символом и вставляемым текстом будут вставляться только пробелы - другое не предусмотрено.

Offline
Posts: 3217
Joined: Wed Nov 29, 2006 1:19 pm
Location: Киев, Русь
Contact:

Post by VladSh »

Instructor, я так и понял.
Так может предусмотреть? :D

Offline
Posts: 3217
Joined: Wed Nov 29, 2006 1:19 pm
Location: Киев, Русь
Contact:

Post by VladSh »

Имеется текст (на самом деле строк очень много):

Code: Select all

Public Const IN_MTEXECUTESTARTSUBJECT

Public Const IN_MTEXECUTEOKSUBJECT
хочу добавить к нему текст:

Code: Select all

 = "MTExecuteStartSubject"
 
 = "MTExecuteOkSubject"
делаю в конце всего первого текста вертикальное выделение, вставляю второй текст, но получаю такой результат:

Code: Select all

Public Const IN_MTEXECUTESTARTSUBJECT = "MTExecuteStartSubject"
 
 = "MTExecuteOkSubject"

Public Const IN_MTEXECUTEOKSUBJECT
:shock:

Offline
Posts: 876
Joined: Tue Jul 24, 2007 8:54 am

Post by Fr0sT »

VladSh, а что мешает вертикально вырезать второй текст и обычным способом вставить в конец первого?

Offline
Posts: 3217
Joined: Wed Nov 29, 2006 1:19 pm
Location: Киев, Русь
Contact:

Post by VladSh »

Fr0sT, как это?

Offline
Site Admin
Posts: 6311
Joined: Thu Jul 06, 2006 7:20 am

Post by Instructor »

VladSh
Имеется текст (на самом деле строк очень много):...
Как вставится текст определяется не какое сейчас выделение, а как текст был скопирован (с вертикальным выделением или без).

Offline
Posts: 3217
Joined: Wed Nov 29, 2006 1:19 pm
Location: Киев, Русь
Contact:

Post by VladSh »

Instructor
Точно... Работает, спасибо! 8)

Offline
Posts: 876
Joined: Tue Jul 24, 2007 8:54 am

Post by Fr0sT »

VladSh, а, я думал, что у тебя одинаковое количество строк в обоих блоках...
Post Reply