Ru-Board.club
← Вернуться в раздел «Программы»

» GoldenDict

Автор: Tvangeste
Дата сообщения: 28.01.2013 00:39
Свежий билд #533, for Windows.

Download: GoldenDict-1.0.1-533-g8a8c7cc.7z - 1.63 MB

Changelog:
Fixed #192: Dynamically adjust the suggestion list in the new UI. (by Tvangeste)
Update Argentinian Spanish translation (by Julian Depetris Chauvin)
ScanPopup window title (by Abs62)
Win-specific: Properly scan right-to-left words in GD window (by Abs62)
Автор: BKSRU
Дата сообщения: 28.01.2013 02:45
В отличии от списка найденного в основном окне, если двигать стрелками клавиатуры по списку во всплывающем окне, не происходит смены статьи.

Добавлено:
Небольшие изменения в предыдущем стиле приведут нас к важному дополнению для словарей.
Плавающий блок.
.dsl_m0
{
    display: inline-table;
    position: fixed;
    top: -9px;
    font-size: 0px;
    background-repeat: no-repeat;
    background-position: center;
    cursor: pointer;
}

/*Состояние спокойствия кнопки */
.dsl_m0
{
    width: 72px;
    height: 17px;
    background-image: url('file:///styles/NewConceptStyle/WordForms.png');
}

/*Курсор над кнопкой */
.dsl_m0:hover
{
    top: 0px;
    font-size: 12px; /* Показываем текст */
    width: auto; /* Ширина блока (кнопки) */        
    padding: 2px;
    background-image: none;
    background-color: white;
    border: 1px solid red;
    cursor: auto;
    z-index: 1;
}


С виду мало, что изменилось и синтаксис DSL идентичен:
[m0]
present tense
I/you/we/they [b\]look[/b]
he/she/it [b\]looks[/b]
[ref]present participle[/ref] [b\]looking[/b]
[ref]past tense[/ref] [b\]looked[/b]
[ref]past participle[/ref] [b\]looked[/b]
[/m]

Но кнопка теперь в виде вкладки:

И если двигать слйдер, вкладка останется на месте

При наведении курсора на вкладку, развернется меню:



Таким образом удобно размещать вспомогательную информацию, которая должна быть всегда на виду, но при этом хотелось бы добиться компактности: кнопки озвучки, кнопки видео, графика, таблицы, меню... Подобные вкладки особенно выгодны при использовании подстрочного чтения, где важна экономия полезного пространства и дополнительная информация не должна отвлекать и закрывать основной контент. Однако, что бы полноценно использовать такую возможность, нам не хватает самостоятельных подобных тегов [gdN][gd].
Автор: SlasNsk
Дата сообщения: 28.01.2013 06:03
BKSRU

Цитата:
В этом примере прописаны иконки от стиля NewConceptStyle:
состояние спокойствия
курсор над иконкой
кнопка нажата

В article-style.css прописана для состояния спокойствия иконка с именем file:///styles/NewConceptStyle/sound1.png вместо ...playL.jpg, и эта иконка ...sound1.png идентична sound3.png, поэтому по умолчанию в статье выглядит нажатой. Становится нормальной после правки вручную (замены на ...playL.jpg). Поправьте это дело в архиве стиля.
А, ну, и спасибо огромное, всё выглядит замечательно!
Автор: BKSRU
Дата сообщения: 28.01.2013 06:58
SlasNsk
Поправил. Заодно и размеры. Но в общем то сам стиль больше как демонстрационный и основа для других стилей. Тут нужны уже дизайнерские руки способные создать приличные кнопочные комплекты. Сам собирал из подручных средств.
И повнимательней с [m0][/m]. Этот тег демонстрационный, рассчитан для создателей словарей. Несмотря на кажущуюся его ненужность в DSL, он используется в некоторых словарях (не понятно зачем с нулевым отступом). Форматирование таких словарей нарушится. Поэтому при желании можно удалить.
Систему озвучки TTS опробовали?
Автор: SlasNsk
Дата сообщения: 28.01.2013 08:49
BKSRU
Спасибо за предупреждение. Озвучку пока не пробовал, отпишусь, если что не так.
Автор: BKSRU
Дата сообщения: 28.01.2013 10:31
Один способ построения списков мы уже знаем. Познакомимся с другим, с использованием тегов [mN][/m].
Ненумерованный и нумерованный списки.
.dsl_m0
{
    display: list-item;
    list-style-type: square; /* Тип маркера */
    list-style-position: outside;
    color: black;
    margin-left: 20px;
}


Синтаксис DSL привычен:
[m0]Пункт списка1[/m]
[m0]Пункт списка2[/m]
[m0]Пункт списка3[/m]
[m0]...[/m]

Но можно упростить:
[m0]Пункт списка1
[m0]Пункт списка2
[m0]Пункт списка3
[m0]...
[/m]

Строки можно оформлять как угодно, используя любые теги, как стандартные, так и новые.

Тип маркера можно менять.
В примере выше использован square - маркер в виде квадрата:

upper-roman - римские числа в верхнем регистре (I, II, III, IV, V,...):

lower-greek - строчные греческие буквы:



Возможно использование и других маркеров, вплоть до графических.
Автор: niccolo
Дата сообщения: 28.01.2013 10:53
BKSRU


Не могу в Вашем стиле настроить отображение символов уникода U+2070—207F и U+2080—208A (subscript и subscript numbers).

Выставил шрифт Arial Unicode MS - не помогает. C моим article-style - показывает
Автор: BKSRU
Дата сообщения: 28.01.2013 11:12
niccolo
Для своего стиля используете общий article-style или из папки style?
Можно использовать не весь мой стиль, а понравившиеся части. Таким образом можно постепенно найти проблему.
Можете дать пример карточки (код и скрин), которая у вас отображается не так как надо? Или ссылку на словарь.

На самом деле тут нужна совместная работа для оптимизации. Очень многое можно унифицировать и сделать удобнее.
Автор: BKSRU
Дата сообщения: 28.01.2013 14:33
Маркерная система тегов текстового форматирования.
Здесь я не буду приводить стили, прописанные в NewConceptStyle. Это можно посмотреть в самом файле стилей article-style.css. Опишу лишь как это работает. С помощью стандартного тега [c ][/c] и маркерной системы можно, вместо длинной вереницы тегов, создавать более компактные комплексные теги с заданным набором свойств.
Общий синтаксис DSL:
[c _маркер1_маркер2...][/c].

Для абзацев удобно применять следующий синтаксис DSL:
[c _маркер1_маркер2...]
Абзац1
Абзац2
...
[/c]

В NewConceptStyle прописано несколько маркеров текстового форматирования.
Маркеры тегов текстового форматирования:
_Nff - (font-family) фонт шрифта. N номер шрифта. В стиле прописан:
1 - Georgia, 'Times New Roman', Times, serif
_Nfs - (font-size) размер шрифта. N размер шрифта в пикселях. Доступны: 11, 14, 16, 18, 20, 22, 24, 26, 28, 36, 48.
_Nti - (text-indent) отступ текста, красной строки. N размер отступа в пикселях. Доступен: 20.
_tdt - (text-decoration through) перечеркнутый текст.
_tdo - (text-decoration overline) надчеркнутый текст.
_tac - (text-align center) выравнивание текста по центру.
_taj - (text-align justify) выравнивание текста по ширине.

Запомнить их не сложно, буквы соответствуют аббревиатуре соответствующих свойств CSS.
Например, эти два абзаца:

нам надо отобразить: шрифтом с засечками, размером 16px, с отступом 20px, выровнять по ширине. Пишем следующий синтаксис:
[c _1ff_16fs_20ti_taj]
Абзац1
Абзац2
[/c]

Карточка примет вид:


Как видно, форматирование с использованием стандартных тегов внутри комплексного тега не пострадало.
Внутри комплексных тегов можно использовать не только стандартные теги DSL, но и новые DSLGD.
Для примера:

Синтаксис DSL для выделенного слова:
[c _24fs_tdt][i ]куда-л.[/i][/c]


Как видно, работа с комплексными тегами проста. И что приятно, не влияет на форматирование словарей, созданных с помощью стандартных тегов. Система гибкая. Необходимый набор нужных свойств можно расширить и оптимизировать.
Автор: niccolo
Дата сообщения: 28.01.2013 15:43

Цитата:
Для своего стиля используете общий article-style или из папки style?
Можно использовать не весь мой стиль, а понравившиеся части. Таким образом можно постепенно найти проблему.
Можете дать пример карточки (код и скрин), которая у вас отображается не так как надо? Или ссылку на словарь.

На самом деле тут нужна совместная работа для оптимизации. Очень многое можно унифицировать и сделать удобнее.



http://rusfolder.com/34730602

В архиве мой и то до чего я уже доизменял Ваш article-style, картинки вывода и тест-словарь (dsl). Обрамление названия шрифта кавычками результатов не даёт.
Автор: BKSRU
Дата сообщения: 28.01.2013 16:06
niccolo
Тестовая статья не выводится корректно у меня и в текстовых редакторах. Так же не отображается корректно и в стандартных стилях. Так, что сам по себе стиль тут не виноват. У вас в системе, на сколько понимаю, прописан специфический шрифт. Надо брать ваш родной стиль и вписывать туда блоки которые вам нужны. Или блоки с вашего стиля вставьте в мой стиль. Должно же, что то в вашем стиле прописано на счет шрифта.
Если ваш родной стиль находится в корне папки конфигурации, а не в самой папке стилей, попробуйте заменить на мой. Может не находит специфический шрифт из папки стилей. Недавно вроде кто-то решал проблему подключения нестандартных шрифтов.
Автор: romanticUK
Дата сообщения: 28.01.2013 16:23
niccolo
Жаль, что вы пользуетесь такими недобрыми файлообменниками как rusfolder.com, которые не дают возможности нормально скачивать и чинят разного рода препятствия типа такого:


Цитата:
На данный момент иностранный трафик у этого файла превышает российский. Вы можете получить этот файл, только если посетите сайт наших рекламодателей...
Автор: BKSRU
Дата сообщения: 28.01.2013 16:49
niccolo
Не сразу заметил ваш стиль.
Прописал в своем стиле пару строчек:

body
{
font-family: "Arial Unicode MS"; /*шрифт*/
font-size: 16px; /*кегль (размер)*/
background: #FEFDEB;
padding-top: 9px;
margin-top: 0px;
margin-left: 1px;
margin-right: 1px;
}

Все работает:


А вот так может выглядеть ваша статья в DSLGD:
[m1][trn]аминобензойная кислота, [c blue][c _1ff]NH₂-C₆H₄-COOH[/c][/c][/trn][/m]
Отлично работает, нет зависимости от одного шрифта и нет однообразия.
Можно просто каждую карточку обернуть в этот тег.
Автор: niccolo
Дата сообщения: 28.01.2013 17:39
BKSRU


Цитата:
niccolo
Тестовая статья не выводится корректно у меня и в текстовых редакторах. Так же не отображается корректно и в стандартных стилях. Так, что сам по себе стиль тут не виноват. У вас в системе, на сколько понимаю, прописан специфический шрифт. Надо брать ваш родной стиль и вписывать туда блоки которые вам нужны. Или блоки с вашего стиля вставьте в мой стиль. Должно же, что то в вашем стиле прописано на счет шрифта.
Если ваш родной стиль находится в корне папки конфигурации, а не в самой папке стилей, попробуйте заменить на мой. Может не находит специфический шрифт из папки стилей. Недавно вроде кто-то решал проблему подключения нестандартных шрифтов.


Не возводите напраслину. Документ использует стандартный виндоус шрифт с полным набором уникода - Arial Unicode MS. С ним всё отображается нормально в любом текстовом редакторе.

romanticUK

Цитата:
niccolo
Жаль, что вы пользуетесь такими недобрыми файлообменниками как rusfolder.com, которые не дают возможности нормально скачивать и чинят разного рода препятствия типа такого:


Всем не угодишь. Другие пинают другими обменниками.


Цитата:
Не сразу заметил ваш стиль.
Прописал в своем стиле пару строчек:


Спасибо. Поправил.

Автор: BKSRU
Дата сообщения: 29.01.2013 04:30
Еще несколько полезных приемов.
Специальные маркеры тегов оформления.
fm1 - фантом первого вида. Блок заключенный в подобный тег становится невидимым и не участвует в форматировании карточки. Его место замещают другие блоки.
fm2 - фантом второго вида. Блок заключенный в подобный тег становится невидимым, но участвует в форматировании карточки. Зарезервированное место не могут замещать другие блоки. Используется для вставки пустых строк, отступов...
fm3 - фантом второго вида с уменьшенным шрифтом (меньше высота отступа). Используется для вставки пустых строк, отступов...
bb - (border-bottom black) - маркер тега для отрисовки сплошной горизонтальной черной линии в 1px.
bbr - (border-bottom red) - маркер тега для отрисовки сплошной горизонтальной красной линии в 1px.
_bac - (background-color) - маркер тега цвета фона элемента.

Как устроены эти маркеры, можно посмотреть в файле стиля NewConceptStyle.


Подробнее на примерах:
fm1 - подобный фантом используем для скрытия имени карточки, что позволяет:
* Создавать собственный заголовок отличный от заголовка в DSL словаре.
* Создавать собственный стиль заголовка.
* Размещать в заголовке дополнительную информацию. Например: транскрипцию, иконки озвучки... Что в свою очередь позволяет рационально использовать полезную площадь карточки.
Пример комплексного заголовка карточки:

Синтаксис нового заголовка в DSLGD:
{[c fm1]}look{[/c]}
    [c _1ff_26fs][c red][b ]look[/b][/c][/c] \[[t]luk[/t]\] [s ]look.wav[/s]


[bb], [bbr] - соответственно, черная и красная горизонтальные линии толщиной в 1px. Используются для, довольно известного, способа выделения информации. Если необходимо более толстые линии, используем последовательно несколько таких тегов.
Пример (верхняя линия в 2px, нижняя 1px):

Синтаксис DSLGD:
{[c fm1]}look{[/c]}
    [c _1ff_26fs][c red][b ]look[/b][/c][/c] \[[t]luk[/t]\] [s ]look.wav[/s]
    [c bbr]line[/c]
    [c bbr]line[/c]
    Абзац1
    Абзац2
    [c bbr]line[/c]

Вместо line можно использовать любую надпись. Но стоит придерживаться общих правил, если понадобится быстро установить или извлечь несовместимые с Lingvo элементы.


fm2, fm3 - иногда необходимо исключить наложение элементов друг на друга. Для этого используем эти фантомы. Однако, рассмотрим случай использования их для создания интервала. Например, между заголовком и абзацем, а так же между самими абзацами. Для создания более больших интервалов можно, подобные элементы, использовать последовательно.
Пример:

Синтаксис DSLGD:
{[c fm1]}look{[/c]}
    [c _1ff_26fs][c red][b ]look[/b][/c][/c] \[[t]luk[/t]\] [s ]look.wav[/s]
    [c fm2]fantom[/c]
    [c bbr]line[/c]
    [c bbr]line[/c]
    Абзац1
    [c fm3]fantom[/c]
    Абзац2
    [c bbr]line[/c]

Фантомы можно использовать и для быстрого создания любого отступа красной строки. Нужно лишь подобрать надпись подходящей длины.
Пример:

Синтаксис DSLGD:
{[c fm1]}look{[/c]}
    [c _1ff_26fs][c red][b ]look[/b][/c][/c] \[[t]luk[/t]\] [s ]look.wav[/s]
    [c bbr]line[/c]
    [c bbr]line[/c]
    [c fm2]ot[/c]Абзац1
    [c fm2]ot[/c]Абзац2
    [c bbr]line[/c]   

 
_bac - цвет фона блока. Еще один популярный метод выделения информации.
Пример:

Синтаксис DSLGD:
{[c fm1]}look{[/c]}
    [c _1ff_26fs][c red][b ]look[/b][/c][/c] \[[t]luk[/t]\] [s ]look.wav[/s]
    [c _bac]
    [c bbr]line[/c]
    [c bbr]line[/c]
    Абзац1
    Абзац2
    [c bbr]line[/c]
    [/c]


Подобные теги не влияют на форматирование словарей, созданных с помощью стандартных тегов DSL. Необходимый набор нужных тегов можно расширить и оптимизировать.
Автор: BKSRU
Дата сообщения: 29.01.2013 09:38
Еще парочка интересных элементов.
Как устроены эти теги, можно посмотреть в файле стиля NewConceptStyle.
Комплексный плавающий блок.
[c top][/c] - тег плавающего блока top. В такой блок можно быстро заключить графические объекты: кнопки, изображения, таблицы. И сделать из них плавающие закладки. При прокрутке страницы, закладки останутся на месте.
Пример.
Закладки свернуты:

При наведении курсора, закладки выплывают:

Синтаксис этого блока в DSLGD:
[c top][s ]uk_see.wav[/s][s ]us_see.wav[/s][s ]mc.avi[/s][s ]in_see.jpg[/s][/c]


Разворачиваемый блок.
Здесь снова используем стандартный тег DSL [mN][/m].
[m0][/m] - тег разворачиваемого блока. Информация обернутая в этот тег будет скрыта и заменена кнопкой. Блок развернется при наведении курсора мыши на кнопку. Внутри блока можно применять как стандартные теги DSL, так и новые теги DSLGD.
Пример скрываемого блока.
Если навести курсор мыши на эту кнопку

получим дополнительную информацию с ссылками:

Синтаксис этого блока в DSLGD:
[m0]
Абзац1
Абзац2
...
[/m]
Автор: Tvangeste
Дата сообщения: 29.01.2013 12:14
Кому интересно, вот мой текущий article-style.css: https://gist.github.com/4663204

С примерно вот таким внешним видом:
http://4put.ru/pictures/max/514/1580714.jpg

Из трюков, которые еще не обсуждались, смена иконки для Forvo аудио словарей и более компактные заголовки в DSL словарях, но так, чтобы имя словаря не налезало на заголовок.
Автор: BKSRU
Дата сообщения: 29.01.2013 15:31
Таблицы.
Для построения таблиц используем следующие теги:
[c cap][/c] - тег заголовка таблицы.
[c tc][/c] - тег ячейки таблицы.
[m0][/m] - тег строки таблицы.
В файле стиля NewConceptStyle они не прописаны.

Синтаксис DSLGD для таблицы:
[c cap]Заголовок таблицы[/c]
[m0][c tc]Ячейка[/c][c tc]Ячейка[/c]
[m0][c tc]Ячейка[/c][c tc]Ячейка[/c]
[m0][c tc]Ячейка[/c][c tc]Ячейка[/c]
[/m]

В ячейках таблицы можно применять как стандартные теги DSL, так и новые теги DSLGD. При изменении размеров окна, форматирование таблиц не нарушается.


Таблица без заголовка:



Таблица с заголовком:

Узнаете таблички? Согласитесь, наша не хуже .


Как видим, синтаксис DSLGD для таблиц довольно нагляден. Однако, мы по прежнему нуждаемся в зарезервированном теге типа [gdN][/gd]. Я бы точнее сказал - всего в одном зарезервированном теге [gd class][/gd]
Автор: SlasNsk
Дата сообщения: 30.01.2013 10:31
BKSRU
Не подскажете, как добавить в Вашем стиле NewConceptStyle_v2.1 в панель Навигации кнопки Вперёд Назад? (то что можно ходить Alt+ стрелки вправо-влево - знаю)
Хорошо бы ещё были стрелки перескакивать вверх-вниз по словарным статьям от одного словаря к другому внутри итогового окна с результатом поиска. Если это вообще возможно, т.к. в десктопной версии программы можно прыгать только Alt+ стрелки ввверх-вниз. А на андроидной кнопки есть (правда нету Alt )
Автор: BKSRU
Дата сообщения: 30.01.2013 12:19
SlasNsk

Цитата:
Не подскажете, как добавить в Вашем стиле NewConceptStyle_v2.1 в панель Навигации кнопки Вперёд Назад? (то что можно ходить Alt+ стрелки вправо-влево - знаю)

Все, что касается тулбаров и панелей GoldenDict, прописано в qt-style.css.
В частности, для кнопок там два раздела. Один для основного окна, другой для всплывающего. Отключать или включать кнопку с помощью знаков комментария /**/
Для включения надо закомментировать:
/* ScanPopup #goBackButton, */
/* ScanPopup #goForwardButton, */

А вообще старался отключить все то, что для меня лишнее. Удобно использовать мышь с боковыми кнопками. Но все кнопки можно отключать или включать по предпочтению.

В файле qt-style.css:
- прописаны цвета панелей - заголовков
- цвета фона окон
- сведена к минимуму толщина бордюров
- отступы от окна до статьи в 1px (вместо 3px по умолчанию)
- размеры окон прописаны так, что можно устанавливать их ширину как вам угодно, при этом решена проблема с запоминанием размера окон при перезапуске GoldenDict

Все, что касается стиля самих карточек, прописано в article-style.css
В нем все достаточно хорошо описано, элементы исследованы. Можно экспериментировать.
Табличные теги я в стиле не прописывал, тут нужно широкое обсуждение. А-то как обычно, занимаем выжидательную позицию и при случае чего готовы подерзить (красноречие просыпается), мол самый умный не высовывайся . Так скажу, если обсуждения не будет - максимум, что грозит - двойная работа и оттягивание сроков выхода законченного решения. А я как создатель словарей не хотел бы этого. Инструмент мне нужен сейчас, что бы двигаться дальше. Моя основная цель - создание комплекта хороших словарей для обучения. И все словари заморожены. Поскольку столкнулся с проблемой слабо оснащенного инструмента. Сейчас уже можно продолжить работу. Однако, переделывать не хотел бы, когда начнем перекраивать структуру, имена...
Система уже полностью работоспособна, но может быть доведена до совершенства. Нужно, просто, решить несколько вопросов, больше организационного порядка. Что бы был какой то стандарт... Стиль собственных словарей можно строить как угодно, но есть много элементов, которые можно и нужно унифицировать. А постепенный ввод их в словари - гарантирован. Легко войти во вкус. Мало, того все просто поддается шаблонизации и конвертации даже подручными средствами.

Добавлено:
SlasNsk

Цитата:
Хорошо бы ещё были стрелки перескакивать вверх-вниз по словарным статьям от одного словаря к другому внутри итогового окна с результатом поиска. Если это вообще возможно, т.к. в десктопной версии программы можно прыгать только Alt+ стрелки ввверх-вниз.

Смутно понимаю, что именно хотели бы вы, но то, что понял по первым прикидкам можно организовать. Целесообразность сомнительна. Это из области - достиг результата. А собственно на кой оно мне нужно было?
Автор: BKSRU
Дата сообщения: 30.01.2013 16:39
Подведем промежуточные итоги.

* Маркерная система тегов DSLGD обладает богатством форматирования карточек (фактически все, что позволяет HTML+CSS).
Дает возможность:
- создавать табличные блоки и таблицы
- табличную верстку
- манипулировать текстом: форматирование, шрифты, размеры, цвет, фон, позиционирование, списки, границы, поля, отступы...
- манипулировать графическими объектами
* Удобство работы продемонстрировано примерами и думаю это не вызывает ни у кого сомнений и трудностей в понимании.
* Нет необходимости конвертирования в другие форматы. Естественно DSL формат совместим полностью с DSLGD. При желании не сложно добавить или убрать новые теги.
* Наличие так называемой экосистемы. Используем все привычные наработки и приемы работы с DSL словарями. Все очень просто поддается шаблонизации.
* Соответствие техническим ресурсам. Собственно и так все ясно и проверено годами использования DSL словарей.
* Преимущества перед другими системами очевидны и собственно перечислены: богатые возможности верстки; простота работы с открытой системой, нет необходимости переучиваться и конвертировать существующие словари в новый формат; гибкость системы и возможность оптимизации... И главное, система уже работает.



Поясню ситуацию. По существу, для маркерной системы тегов DSLGD мы используем всего два HTML элемента. Один блочный <div class="dsl_mN"></div> и один строчный <font color=" "></font>
В лице тегов:
[mN][/m] - блочный тег
[c color][/c] - строчный тег
С точки зрения техники исполнения, ничего неправильного в этом нет. Но стратегически это не верно. Кое в чем мы ограничены. В частности в свободе действий с блочными элементами. Можно сделать более правильно, значительно упростить систему и избавиться от всяких зависимостей. Для этого нам надо, что бы в системе было зарезервировано всего два новых тега на основе HTML элементов:
<div class=" "></div> - блочный
<span class=" "></span> - строчный
для построения блочных и строчных элементов. И назвать новые теги, например:
[gd class][/gd] - блочный тег.
[sp class][/sp] - строчный тег.
В этом случае мы сможем в качестве маркера использовать class и строить комплексные теги не только для строчных элементов, но и для блочных.
Резервирование пары таких тегов позволяет уже делать любую верстку. Но можно и чуть более расширить, снабдив DSLGD табличными тегами на основе более специализированных табличных HTML тегов.


Итого, для нормального развития ситемы:
* Необходимо резервирование пары новых тегов блочного и строчного в GoldenDict.
* И второе, нужно как то утвердить имена маркеров.
Автор: SlasNsk
Дата сообщения: 30.01.2013 18:42

Цитата:
Для включения надо закомментировать:
/* ScanPopup #goBackButton, */
/* ScanPopup #goForwardButton, */

Ясно, спасибо. Только комментировать там надо:
/*#navToolbar #backButton, */
/*#navToolbar #forwardButton, */


Цитата:
Смутно понимаю, что именно хотели бы вы

А Вы просто внутри словарных статей понажимайте Alt-up или Alt-down, так наглядней. Для андроидной версии для этих действий есть кнопки, тут на десктопной - нету, вот и поинтересовался, реализуемо здесь такое, или нет. Не знаю, проникнитесь ли Вы, как апологет кнопочного минимализма.
Автор: Abs62
Дата сообщения: 30.01.2013 18:55
SlasNsk

Цитата:
Для андроидной версии для этих действий есть кнопки, тут на десктопной - нету, вот и поинтересовался, реализуемо здесь такое, или нет.

В принципе реализуемо, разумеется. Но при наличии панели "Найдено в словарях" это явное излишество.
Автор: BKSRU
Дата сообщения: 30.01.2013 19:03
Abs62

Цитата:
В принципе реализуемо, разумеется. Но при наличии панели "Найдено в словарях" это явное излишество.

Вот и я о том же. А с помощью css ее можно сузить до уровня кнопок, тем более всплывающие подсказки есть.

А зарезервировать в GD пару специальных тегов это реально?
Автор: Abs62
Дата сообщения: 30.01.2013 19:28
BKSRU

Цитата:
А зарезервировать в GD пару специальных тегов это реально

Каких тегов?
Автор: Tvangeste
Дата сообщения: 30.01.2013 19:39
Abs62

Цитата:
Каких тегов?

[окончательно теряет нить разговора]
Автор: BKSRU
Дата сообщения: 30.01.2013 20:00
Abs62
Вроде, суть проблемы не раз описал подробно. http://forum.ru-board.com/topic.cgi?forum=5&topic=30250&start=1880#2
Нужна пара новых тегов: один блочный, один строчный. Соответственно, что бы вели себя наподобие [mN][/m] и [c имя цвета][/c]. Но что бы исключить завивисимость нужны свои подобные теги. В теге [c имя цвета][/c] в качестве идентификатора используется имя цвета. Пишем любой набор символов. Этим тегам соответствуют в HTML блочный (DIV) и строчный (FONT) теги. Но в [mN][/m] у нас нет идентификатора и не за что зацепиться, что бы использовать этот тег без последствий. Font можно использовать без всяких последствий, но не совсем корректно использовать в качестве идентификатора имя цвета.
Почему бы не сделать это через специально предназначенные для таких случаев в HTML теги <div class=" "></div> и <span class=" "></span>.
Вот и будут у нас универсальные теги на все случаи. В качестве маркеров у нас будет использоваться class.
Всего два тега прописать и система полностью оформлена.
Теги можно назвать, например:
[dv][/dv]
[sp][/sp]
Любой новый маркер для GD можно будет легко прописать в CSS:
.dsl_dv div[class*=маркер]
.dsl_sp span[class*=маркер]

Все, готовы новые теги. Вернее маркеры для новых комплексных тегов.
[dv маркер1маркер2...][/dv]
[sp маркер1маркер2...][/sp]

Говоря нормальным языком CSS мы можем прописать сколько угодно классов в CSS стиле. Это стандартная процедура.
Автор: Tvangeste
Дата сообщения: 30.01.2013 20:17
SlasNsk

Цитата:
Хорошо бы ещё были стрелки перескакивать вверх-вниз по словарным статьям от одного словаря к другому внутри итогового окна с результатом поиска. Если это вообще возможно, т.к. в десктопной версии программы можно прыгать только Alt+ стрелки ввверх-вниз.

У нас будет явный перебор по количеству стрелок. И так уже 4 штуки есть, вперед-назад по истории, вперед-назад по поиску. Если еще две стрелки добавим, у многих крыша поедет.

И чем вам не нарвится Alt+стрелки? И если они таки не нравятся, то тогда в панели со списком словарей можно переключаться на любой словарь мышью.

На андроиде потому кнопки и сделаны скорее всего, что других вариантов просто нету. Ни клавиатуры, ни списка словарей, в которых карточки найдены.
Автор: BKSRU
Дата сообщения: 31.01.2013 02:59
Abs62
Возможно я не ясно пояснил. Просто, казалось, что примеры наглядно показывают, чего не хватает в GD.
Постараюсь подробно разъяснить.


Строчный тег.
Запись в карточке DSL [c ]look[/c]. Если сохраним карточку в HTML, то увидим ее эквивалент как <font color="c_default_color">look</font>. И тег отрабатывает цвет шрифта по умолчанию - зеленый. Воспользуемся тем, что здесь браузеру или GoldenDict все равно, что прописано в плане цвета. И если в DSL пропишем [c gd]look[/c] то в HTML увидим запись в виде <font color="gd">look</font>. По существу мы создаем новый элемент с идентификатором gd. Этот элемент строчный. Теперь мы в article-style.css можем задать новому строчному элементу любые свойства. Например:
.dsl_article font[color*=gd]
{
    font-size: 24px;
}

Таким образом мы создаем новый тег [c gd][/c]. Который не влияет на форматирование словарей, созданных с помощью стандартных тегов DSL. Можем создать необходимое количество новых тегов с различными свойствами. А для того, что бы не нагромождать теги друг на друга мы можем строить комплексные теги. Принцип их построения хорошо описан в учебном словаре и в моих топиках.
С точки зрения HTML и CSS все стандартно. Можно было бы сделать более культурно, но технически нас все устраивает.


Блочный тег.
Однако, нам нужен полноценный блочный элемент. Технически он у нас имеется [m0][/m]. Но практически, при его использовании мы нарушим форматирование тех словарей, где он применяется. А отсутствие идентификатора не позволяет нам строить необходимое количество разнообразных тегов.
Запись в карточке DSL выглядит [m0]look[/m]. Если сохраним карточку в HTML, то увидим ее эквивалент как <div class="dsl_m0">look</div> - блочная конструкция по умолчанию. В этом случае нам так и надо.
А вот теперь, что необходимо как воздух - это что бы при использовании в DSL конструкции [m0 gd]look[/m], в HTML появлялась запись <div class="gd">look</div>. На основе такой записи мы можем получать любые блочные элементы и строить с их помощью таблицы, исключив нарушение форматирования словарей где применен тег [m0][/m].
Иными словами, для начала нам нужен, хотя бы, один такой тег. При его наличии, можно создавать необходимое количество блочных элементов с различным набором свойств, а так же применять комплексные теги.
Пример записи в article-style.css:
.dsl_m0 div[class*=gd]
{
    display: table-row;
}

Создает нам табличный тег [m0 gd][/m]


Abs62
Технически реально подправить [m0][/m]?


Автор: Tvangeste
Дата сообщения: 31.01.2013 23:17
[more] [more][/more]
Новый билд #546, для Windows, хотя большая часть правок скорее для Линукса...

Download: GoldenDict-1.0.1-546-g9e3dd43.7z - 1.65 MB

Changelog:
Added French Translation (by VirtualTam)
Don't show welcome page header in window title (issue #195, Linux) (by Abs62)
Fixed #197: Sometimes the Scan Popup shows previous translation (Linux). (by Tvangeste)
Fixed #194: Scan Popup window doesn't get the keyboard focus on Linux. (by Tvangeste)
Update Russian translation (by Abs62)
update Argentinian Spanish translation (by Julian Depetris Chauvin)
Properly save/restore main window configuration when it maximized (by Abs62)
Fix for the suggestion list on Linux, classic UI. (by Tvangeste)
Make the suggestion list to be internal window instead of top-level one, on *nix. (by Tvangeste)
Properly hide the suggestions list in some cases. (by Tvangeste) [/more]

Страницы: 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156

Предыдущая тема: Total video converter 3.14 ошибка конвертации


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.