View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0001857 | Far Manager | Editor | public | 2011-08-20 20:14 | 2021-06-28 13:47 |
Reporter | shmuel | Assigned To | |||
Priority | normal | Severity | major | Reproducibility | always |
Status | new | Resolution | open | ||
Platform | x86 | OS | Windows | ||
Product Version | 3.0 | ||||
Summary | 0001857: ECTL_INSERTTEXT | ||||
Description | Есть пожелание: сделать поведение данной команды более простым и логичным, а именно - корректно обрабатывать все три варианта конца строки, которые перечислены в диалоге Save As: Dos/Windows format (CR LF) Unix format (LF) Mac format (CR) Другими словами: что в стринге-аргументе присутствует, то и вставлять в редактор, и сразу же правильно интерпретировать (то-есть как разделитель строк, а не символ, вставляемый в текущую строку). На данный момент: -- CR в аргументе заменяется на LF в редакторе -- LF в аргументе рисуется в виде кружочка, и только после сохранения файла с переоткрытием его в редакторе становится реально новой строкой | ||||
Tags | No tags attached. | ||||
Build | |||||
|
Анализ. ECTL_INSERTTEXT в цикле (пока не достигнут конец строки) вызывает Editor::ProcessKey KEY_ENTER делает InsertString Editor::InsertString вставляет пустую строку, EOL берет на основе предыдущей строки... |
|
1. как это соотносится с 0001879? 2. после build 2661 актуально? |
|
1. Кажется никак, 0001879 вроде бы насчёт ECTL_SETSTRING. 2. Думаю, что да. CR и LF в аргументе теперь вообще не различаются, наличие любого из них приводит к вставке "перевода строки по умолчанию" в данном файле. Это не совсем то, чего хотелось. |
|
Полагаю что большего от функции и не стоит ожидать, ведь это аналог макросовского 'print', имитируещего каждое нажатие по отдельности. Нужна отдельная функция, более прямолинейно меняющая данные в редакторе. |