Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > SynUniHighlighter и SynEdit > Диалог SynEditOptionsDialog1


Автор: mr.Anderson 24.3.2007, 18:07
Плз переведите мне этот диалог на русский язык (прямо в этой теме). Там все для SynEdit'а уже реализовано, но англ. язык меня бесит. Вот я его перевожу для себя, но некоторые надписи мне непонятны.

Прошу перевести все надписи в этом диалоге и написать их смысл, а то он тоже не всегда понятен. Буду очень благодарен!



P.S. Если вдруг такой вопрос возникнет: "Как вызвать этот диалог"? Делаем так:
1. Кидаем на форму этот диалог.
2. Кидаем на форму SynEdit.
3. В каком-нибудь обработчике пишем:
Код

TSynEditorOptionsContainer *Container = new TSynEditorOptionsContainer( SynEdit1 );
SynEditOptionsDialog->Execute( Container );

Очень прошу помочь с переводом.

Автор: shadow01 17.5.2007, 20:37
Вкладка Display - отображение:
Gutter (Переплет или же полоска слева):
Visible - показать
Autosize - авторазмер
ShowLineNumbers - показывать нумерацию строк
StartAtZero - начинать нумерацию строк с нуля
ShowLeadingZeros - дополнять номера строк нулями (например, было 1, стало 0001)
UseGutterFont - использовать собственный шрифт переплета (не шрифт SynEdit-a)
Font - выбор шрифта
GutterColor - цвет переплета

RightEdge - правый край
EdgeColumn - крайняя колонка
EdgeColor - цвет крайней колонки

LineSpasing/TabSpasing - переводить табуляцию/линии в пробелы. (а ля лексикон)
ExtraLines - ширина строк/расстояние между строк
TabWidth - ширина табуляций

Bookmarks - закладки
BookmarkKeys - ключи закладок
BookmarkVisible - отображение закладок

EditorFont - шрифт редактора


На этом с первой вкладкой мы закончили

Options - настройки/параметры/установки
AutoIndent - автоотступ
AutoSizeScrollWidth - авторазмер по прокрутке
DragAndDropEditing - возможность редактировать текст с помощью технологии Drag&Drop, например, простое перетаскивание куска текста, перетаскивание с Ctrl - копирование, и т.д. В общем, возможность редактирования тектса мышкой.
AltSetsColumnMode - выставляет режим выделения в блочное по кнопке Alt.
MaintainCaretColumn - установки каретки
WantTabs - использование табуляции компонентом (текстовым полем)
SmartTabs - "умная" вставка табуляций.
SmartTabDelete - "умное" удаление табуляций - удаление подстраивается под текст, по аналогии с eoAutoIndent
EnhanceHomeKey - повышает позиционирование клавиши Home, как в visual studio
EnhanseEndKey - повышает позиционирование клавиши End, как в JDeveloper
HideScrollbarsAsNessesary - прятать полоски прокрутки по необходимости
DisableScrollArrows - выключить стрелочку (Disabled), если дальше прокручивать текст нельзя
HalfPageScroll - при прокрутке страницы с помощью PageUp и PageDown, прокручивает только по полстраницы
ScrollByOneLess - прокрутить больше
ScrollPastEndOfFile - возможность прокручивать текст дальше написанного
ScrollPastEndOfLine - позволяет курсору перемещаться к последнему символу на данной строке
ShowScrollHint - делает в подсказке видимой номер линии при вертикальной прокрутке
ScrollHintFollowsMouse - то же самое но при следовании мыши
TabsToSpaces - перевести табуляцию в пробелы
GroupUndo - общая отмена (отмена группы команд)
RightMouseMovesCursor - при щелчке правой кнопкой в окне редактора вызывается (если есть) PopupMenu и курсор переходит к месту щелчка
ShowSpecialChars - показывать спецсимволы

Caret - каретка
InsertCaret - как выглядит каретка при режиме вставки
OverwriteCaret - как выглядит каретка при режиме замены


Keystrokes - как объяснить, не знаю. По-моему, соответсвие свойств редактора определенным комбинациям клавиш.


Ну что, это то самое?
А вообще я скоро хелп допишу - выложу.

Автор: mr.Anderson 31.5.2007, 22:11
То самое! Очень благодарен! Как хелп будет, сразу выкладывайте плз. И, если можно, сбросьте мне его сразу на мыло: mrAnderson[at]vingrad[dot]ru .

P.S. +1 в репку.

Автор: mr.Anderson 31.5.2007, 22:27
Гм. Только три вопросика. smile
Цитата
установки каретки

А поконкретней? Какие установки?
Цитата
позиционирование

А это что за птица?
Цитата
прокрутить больше

Тож не совсем ясно.

А в остальном все понятно. Спасибо огромное.

Автор: shadow01 6.6.2007, 17:04
Извиняй, что раньше не ответил, но инета не было.
Так вот:

Установки каретки - это просто перевод MaintainCaretColumn. Maintain по-английски - техобслуживание. Так что я конкретно с этим свойством тогда не разбирался. А если посмотреть код, то оно включает свойство eoKeepCaretX. Объяснить это свойство сложно (по крайней мере мне). Если просто, но непонятно - то сохраняет позицию курсора по Х. А если сложно и непонятно, то:

 eoKeepCaretX - если включено свойство eoScrollPastEOL, то SynEdit запоминает позицию курсора по Х, и при перемещении курсора по Y(вниз-вверх) он ставит курсор либо на то же символ по X, отличающийся координатой Y(на строке ниже/выше), либо на последний символ в строке, если количество символов в ней меньше, чем в предыдущей. Если же это свойство выключено (false), то позиция курсора по Х не запоминается и курсор перемещается по Y без учета этой позиции. Понятно объяснил? smile

Вообще советую попробовать выставить это свойство - разобраться с полтычка, объяснить сложно.

Далее "позиционирование". Как выяснилось из комментариев разработчиков в коде компонента, то это выглядит так:
    eoEnhanceHomeKey,          //enhances home key positioning, similar to visual studio
    eoEnhanceEndKey,           //enhances End key positioning, similar to JDeveloper
Я считаю, что клавиша должна работать как в среде Visual Studio и JDeveloper. Экспериментальным путем так ничего выяснить и не удалось.

По поводу "прокрутить больше":
Опять даем слово разработчикам (читаем их комментарии): Forces scrolling to be one less, или же прокрутить на единицу больше.


P.S. Кстати, вопрос не в тему: чем же все-таки отличается SynEdit от SynMemo?

Автор: mr.Anderson 6.6.2007, 19:31
Спасибо, про каретку понятно.

Про позиционирование не понятно по-прежнему. smile

По поводу "прокрутки больше" - а по-русски можно? С англом напряг.

Цитата
чем же все-таки отличается SynEdit от SynMemo

Я не так давно задавал уже этот вопрос в этом разделе форума. Так и не выяснили. Я пока разницы не выявил.

Автор: shadow01 7.6.2007, 20:07
Опять по поводу позиционирования. Я думаю, что кнопки Home и End должны действовать как в средах программирования JDeveloper и Visual Studio. К сожалению, с данными средами программирования знаком отдаленно, и не знаю их особенностей. Почитаю хелпы - напишу подробнее. Выяснить удалось только, что с этим свойством связана процедура DoHomeKey, которой надо передать (внутри синедита) булевское значение есть ли выделение.

ScrollByOneLess - свойство, связанное с кнопками PageUp/PageDown.

По кнопкам PageUp/PageDown:

HalfPageScroll - допустим, в окне редактора отображается 20 строк текста. При включенном свойстве кнопка PageDown прокручивает 10 строк текста, то есть ровно полстраницы.

При нажатии PageDown без каких бы то ни было свойств первая видимая строчка в окне редактора оказывается 21-я.

При включенном свойстве ScrollByOneLess первая видимая строчка 20-я, то есть на строчку меньше. Достаточно хорошее свойство - при чтении показывать предыдущую строчку, чтобы не терять мысль. Очень удобно.

P.S. Сорри, не на строчку больше, а на строчку мешьне. Ошибся. smile 

Автор: mr.Anderson 7.6.2007, 22:35
shadow01, благодарю, теперь все понятно. Жду хелпа с нетерпением.

Автор: navykeds 11.6.2007, 07:23
Цитата(mr.Anderson @  6.6.2007,  19:31 Найти цитируемый пост)
Цитата

чем же все-таки отличается SynEdit от SynMemo

Я не так давно задавал уже этот вопрос в этом разделе форума. Так и не выяснили. Я пока разницы не выявил.


А в исходники посмотреть?

Автор: mr.Anderson 13.6.2007, 19:54
navykeds, рыть по 12000 строк кода? smile Нет желания и времени тоже нет. Может, вы подскажете разницу? Не в коде, а в действии только.

Автор: navykeds 14.6.2007, 21:46
Цитата(mr.Anderson @ 13.6.2007,  19:54)
navykeds, рыть по 12000 строк кода? smile Нет желания и времени тоже нет. Может, вы подскажете разницу? Не в коде, а в действии только.

Извините, но это просто не вежливо.

Проблема вовсе не в отсутствии времени (попробуйте доказать обратное, посчитав время, затраченное на написание сообщения в форум). Если вы соизволите открыть файл SynMemo.pas, то заметите, что там вовсе не 12 000 строк и, безусловно, сразу поймете, в чем разница между TSynMemo и его базовым классом TSynEdit.

Автор: mr.Anderson 15.6.2007, 14:38
navykeds, не факт, что пойму, мне сложно читать дельфовский код - там встречаются незнакомые мне элементы, которых нет в билдере.

Насчет невежливости - извините. Никак не думал, что могу вас обидеть своим постом.

Насчет времени на написание сообщения в форум - у меня уходит на подобное сообщение максимум секунд 30. smile Вряд ли я потрачу столько же на изучение исходников.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)