О нумерации строк и позиционировании в тексте

Russian main discussion
Post Reply
  • Author
  • Message
Offline
Posts: 12
Joined: Wed Sep 13, 2006 12:59 pm

О нумерации строк и позиционировании в тексте

Post by Natrio »

Проделаем такой эксперимент:
  1. Откроем файл, достаточно длинный, чтобы не помещаться в окне любого размера, и содержащий достаточно длинные строки (абзацы), которые тоже не помещаются в окне без переноса.
  2. Включаем перенос по словам и строку состояния.
  3. Максимизируем окно.
  4. Переходим в самый конец текста, устанавливаем курсор в последнюю строку и запоминаем (или записываем) ее номер (он отображается в строке состояния).
  5. Устанавливаем размеры окна меньше, чем рабочий стол (например, если р.стол 800x600, то окно 600x400 ).
  6. Прокручиваем ближе к концу, переходим к строке, номер которой больше того, который мы запомнили, как минимум на количество строк в максимизированном окне.
  7. Снова максимизируем окно.
  8. Если все проделано именно так, ОКНО ОКАЖЕТСЯ ПУСТЫМ.
Этот случай крайний, но и в других случаях при изменении размеров окна мы окажемся совсем в другом месте текста.
Разумеется, позиционирование можно исправить и отладить, как это сделано в AkelPad 2 (Classic). Но это только часть проблемы.

Проблема в том, что при включенном переносе нумерация строк ВООБЩЕ зависит от размеров окна. Зачем?
Если, например, какой-нибудь компилятор или валидатор сообщает об ошибке в строке номер такой-то, вряд ли он имеет в виду номер строки при каком-то определенном размере окна! Имеется в виду АБСОЛЮТНЫЙ номер строки в файле.
Приходится отключать перенос по словам, переходить к нужной строке (Ctrl+G), а затем снова включать перенос.

По-моему, станет только лучше, если нумерация строк будет абслютной всегда, независимо от того, включен перенос или выключен, независимо от размеров окна и шрифта.
Если же я неправ, и может, кто-нибудь припомнит хоть одно применение "плавающей нумерации", тогда можно было бы включать и выключать ее опционально.

Offline
Posts: 49
Joined: Fri Sep 22, 2006 9:28 pm
Location: Питер
Contact:

Post by okruzhor »

Кажется здесь же описывался какой-то плагин , одна из фич которого -- вставление байтов завершения строк в точках заворота строк . Если почему-то нужна "плавающая" нумерация строк , можно применить этот плагин , тогда плавающая нумерация совпадет с абсолютной . Обычно плавающая нумерация действительно ни к чему .

Пользуюсь случаем снова помечтать о запоминании номеров строк , использованных для нескольких последних переходов .

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

Post by Instructor »

Natrio
1-8 посмотрим
Проблема в том, что при включенном переносе нумерация строк ВООБЩЕ зависит от размеров окна.
Дело в том, что нет функции в RichEdit контороле, которая бы выдавала "абсолютный" номер строки.

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

Post by Instructor »

okruzhor
Пользуюсь случаем снова помечтать о запоминании номеров строк , использованных для нескольких последних переходов .
LineBoard plugin
Post Reply