langage de balisage leger mentor ru

Mentor Lightweight Markup Language

back to the home page

version available in : en it zh es ja de nl pt fr

date of creation : 20220620- date of update : 20220620- generation date : 20240612_171241

1.наставник lbl

Этот документ является спецификацией языка разметки Mentor System Lightweight Markup Language - известного как LBL Mentor.
Этот язык предназначен для того, чтобы François_Xavier_Pincemin конструктор и разработчик системы Mentor.

2.Введение в язык разметки Mentor Lightweight Markup Language

  • облегченный язык разметки mentor - это минимальный язык разметки для работы с гипертекстом через модуль utags системы mentor в среде gvim/vim - ср. vim_org.
  • модуль mt_to_htm системы наставника генерирует HTML-документ из исходного текста наставника.
  • поэтому, если вы читаете этот текст на HTML-странице, вы можете с таким же успехом прочитать исходный текст в простом редакторе.
  • Но очевидно, что только редактор gvim/vim даст вам преимущество utags, по нескольким причинам :
  • Общая форма текста представляет собой инкапсуляцию . bloc de texte  или . bloc structurel .
  • The . bloc structurel  определяет теги и ссылки гипертекста.

    2.1.представление формы гипертекста

    2.1.1.текстовый блок

    Текстовый фрейм - это структура, в которой хранится текст.

    - Он состоит из четырех типов элементов, разделенных парами разделителей < >, ( ), { } и [ ]

  • гипертекстовая метка или тег, помещенный между разделителями "<" et ">", сказал . etiquette mentor  который может содержать только алфавитно-цифровые символы с символом подчеркивания "_"^ в качестве разделителя - возможный . résumé de bloc  или . commentaire mentor  заключить в скобки "( )",
  • сам текст, заключенный в фигурные скобки "{ текст }" который является фактическим текстовым блоком.
  • гипертекстовые ссылки (для наставнических меток) в форме [une_reference_ru] которые используются в тексте, содержащемся в текстовых блоках

    2.1.1.1.структурный блок

    Таким образом, мы имеем общую форму:

    <etiquette_de_bloc_ru>(название) [une_reference_ru]
    {
    ...
    ... [une_reference_ru] ...
    ...
    <etiquette_de_sous_bloc_ru>(метка субблока)
    {
    ...
    ... [une_reference_ru] ...
    ...
    ... <etiquette_dans_texte_ru> ... ... ... <une_reference_ru>(это метка примера ссылки на самом деле.)
    ...
    ... [une_reference_ru] ...
    ...
    и т.д....
    }
    }

    которые, таким образом, могут быть вложены: Текстовый блок может содержать другие текстовые блоки.
    Конкретный блок - это блок всего файла, строка метки которого содержит:

  • метка имени файла - заголовок файла в блочном комментарии - ссылка на резюме файла.
    Таким образом, форма этикетки файла выглядит следующим образом <>(разные ссылки)[] .

    
    - например, для файла с именем filename.на :  


    <nomfichier_extension_ru>(название файла)[nomfichier_extension_ru_som]
    макрос для создания этой строки fnt_ru для текстового файла.
    Существуют и другие макросы: fnc для источника на языке C, fns для оболочки unix и т.д....

  • один . commentaire de bloc  где за открывающей скобкой следует двоеточие ":" будет означать, что мы объединяем тег mentor и его комментарий в тег HTML.


    пример : <nomfichier_extension_ru>(: название файла) что дает в html:

    2.1.1.2.. nomfichier extension : название файла В противном случае в HTML редактируется только комментарий.:

    пример : <nomfichier_extension_ru>(название файла) что дает в html:

    2.1.1.3.название файла Mentor разрабатывает концепцию инфикса, который обычно представляет собой трехбуквенный код, который, если присутствует в метке, будет интерпретирован при генерации html как текст для замены, если инфикс присутствует в файле инфикса с именем infix.
    lst и присутствует в рабочем каталоге программы utags.
    Инфикс - это обобщение понятий префикса и суффикса.

    Например : <nom_spe_ru>(специальное название) что приводит к :

    2.1.1.4.специальное название

    Замена производится таким образом, что заменяемый текст помещается в начале заголовка для французской версии и в конце - для английской..

    специализация текстовых блоков

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

    2.1.2.таблицы спецификаторов блоков

    персонаж  имя  значение текстового блока (похвальные отзывы)  комментарий (скобки)  
    :  толстая кишка  основной блок : следующий блок определяет теги META  конкатенация метки и комментария в заголовке HTML  
    =  знак равенства  сохранение формы исходного текста, если он дублирован == исходный код lbl    
    !  восклицательный знак  текст, отображаемый в HTML, является исходным текстом lbl с фиксированным шрифтом    
    -  тирет  чипсы    
    `  бэккот  пронумерованные пули    
    |  труба  HTML-комментарий, если он дублируется и отсутствует на HTML-странице    
    %  процент  текст, созданный в двухколоночной таблице для ортоптического упражнения    
    #  хэш  спецификация перевода Deepl API    
    ~  тильда  помощь в чтении на иностранном языке (подсказка переведенное слово)    
     точка с запятой  Блок CSV    
    .  точка  комментирует спецификацию блока, которая не будет отображаться в HTML    
    nbr        
    персонаж        
    10.000000      

    Типы блоков, используемые модулем генератора HTML-страниц.


    - Блоки, генерирующие пули, будут определяться символом тире : {- ... }.
    Уровень микросхемы автоматически устанавливается уровнем блока.
    Нумерованные фишки определяются блоками, код которых - backcote {` ... }.
    примеры:

    
    {- нив1 либ1
     - niv1 lib2
       {- уровень 2 lib1
      - niv2 lib2
        {- niv3 lib1
        - niv3 lib2
        }
      - niv2 lib3
       }
     - niv1 lib3
    }
     и
    {` нив1 либ1
     - niv1 lib2
       {` уровень 2 lib1
      - niv2 lib2
      - niv2 lib3
      - niv2 lib4
       }
     - niv1 lib3
     - niv1 lib4
    }
    
    Это дает в HTML :

    и

    1. нив1 либ1
    2. niv1 lib2

      1. уровень 2 lib1
      2. niv2 lib2
      3. niv2 lib3
      4. niv2 lib4
    3. niv1 lib3
    4. niv1 lib4



    - Блок с кодом, равным "=" создаст текст с сохраненной формой блока (HTML тег PRE). Шрифт остается шрифтом по умолчанию, который является пропорциональным.

    - Блок с кодом, равным "==" также создаст текст с сохраненной формой блока (HTML тег PRE) а также без интерпретации других тегов LBL,
    текст блока будет скопирован без какого-либо лексического анализа. Это относится к данному блоку. Для того чтобы иметь возможность представить на HTML-странице саму структуру языка.

    - Блок типа {! } создаст текст с формой сохраненного текста блока. ( маяк PRE ) с дополнительным использованием фиксированного шрифта (почта)
    это необходимо для сохранения выравнивания текста в случае, например, экранной копии. Случай с высшими уровнями и таблицей низших планет.

    - Блок типа подчеркивания {| |} будет интерпретирован как HTML-комментарий. См. источник HTML в этом месте текста.


    - Блок типа двойного подчеркивания {|| ||} будут удалены из генерации HTML


    - Блок CSV будет определяться следующим образом {; ... } Этот блок содержит таблицу данных, в которой разделителем столбцов является точка с запятой.
    Будет создана таблица HTML и заголовок, определенный спецификацией "CSV_COL:" в начале первой строки, содержащей имена столбцов
    будет отображаться в HTML определенным цветом (голубая сталь по умолчанию).

    пример :

    
    <planète_tab_ru>(вкладка планеты)
    {;
    CSV_REG:0             ;1                 ;                                       2;                  3;4               ;
    CSV_COL:Планеты       ;революция         ;                   Солнце_расстояние Мкм;         Диаметр км;Вращение        ;
    CSV_TYP:sN            ;s                 ;                                      n0;                 n0;s               ;
    Солнце                ;                  ;                                       0;            1392684;26 часов        ;
    Ртуть                 ;88 j              ;                                      58;               4878;59 дней         ;
    Венера                ;225 j             ;                                     108;              12104;243 дня         ;
    Луна                  ;28 j              ;                                     149;               3474;                ;
    Земля                 ;365.25 j          ;                                     149;              12756;24 часа         ;
    Марс                  ;687 j             ;                                     228;               6794;24 h 1/2        ;
    Юпитер                ;12 лет            ;                                     778;             142800;10 часов        ;
    Сатурн                ;29 лет            ;                                    1427;             120000;10 h 1/4        ;
    Уран                  ;84 анс            ;                                    2870;              52400;15 h 1/2        ;
    Нептун                ;164.86 анс        ;                                    4497;              48000;16 часов        ;
    Плутон                ;247.74 анс        ;                                    5913;               2400;6 дней 1/3      ;
    }
    
    Это дает в HTML-странице :

    2.2.вкладка планеты

    Планеты  революция   Солнце_расстояние Мкмage":"Too many requesВращение  
    Солнце     0 139268426 часов  
    Ртуть  88 j   58 487859 дней  
    Венера  225 j   108 12104243 дня  
    Луна  28 j   149 3474  
    Земля  365.25 j   149 1275624 часа  
    Марс  687 j   228 679424 h 1/2  
    Юпитер  12 лет   778 14280010 часов  
    Сатурн  29 лет   1427 12000010 h 1/4  
    Уран  84 анс   2870 5240015 h 1/2  
    Нептун  164.86 анс   4497 4800016 часов  
    Плутон  247.74 анс   5913 24006 дней 1/3  

    2.3. Типы блоков CSV, используемые модулем управления структурированными данными таблицы CSV системы наставника.тип блока csv


    - Блок CSV, рассмотренный ранее {; ... } обрабатывается модулем, обеспечивающим форматирование таблицы. При редактировании таблицы команда
    назначенный этому модулю для изменения формы таблицы, так что нам остается только вставить данные.

    - обработка структурированных данных становится возможной в этих блоках таблиц CSV с помощью модуля расчета таблиц, который, таким образом, представляет собой электронную таблицу.

    В этой электронной таблице команды задаются строками спецификации в начале таблицы, которые начинаются со строки, указывающей на характер спецификации.: "CSV_SPE: ; ; ;" или SPE - это спецификация.

    Функции импорта (CSV_IMP) и экспорт данных (CSV_EDT). Все это позволяет, например, построить ETL.


    Этот модуль расчета сможет генерировать, в соответствии с расчетными спецификациями таблицы, редакционные блоки {@ } со спецификацией CSV_EDT
    или газетные блоки (подробный лист) { } (колонка типа журнала).

  • этот модуль обеспечит операции СУБД, соединяющие различные блоки CSV :

  • Наконец, язык, включенный в блоки CSV "procedural", позволит создавать приложения. Эти приложения можно запускать в пакетном режиме вне сеанса редактирования gvim или в сеансе редактирования gvim, где gvim используется в качестве графического интерфейса.

  • этот модуль обработки структурированных данных находится в стадии разработки и будет доступен в режиме онлайн в самое ближайшее время.

    3. Типы прикладных блоков. Эти блоки связаны с приложениями, которые естественным образом возникают при проектировании системы..приложение типа блока

    3.1.ортоптическое чтение при конвергенции или дивергенции


    - Блок типа % создаст HTML-страницу с двухколоночной таблицей с текстом, отображаемым в каждой из колонок, чтобы его можно было прочитать в сочетании с ортоптическим упражнением на конвергенцию или дивергенцию.

    На этой странице текст представлен в двух экземплярах, так что одновременно с чтением можно выполнять упражнения на глазную конвергенцию или дивергенцию, аналогичные тем, которые делает ортоптист..

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

    Если ширина страницы небольшая, то слить два изображения легко, чем шире, тем больше усилий требуется от мышц глаза..

    Два изображения могут быть объединены двумя способами: в конвергенции и дивергенции. Конвергенция сокращает мышцы, а дивергенция растягивает их (мышцы в разгибании).

    Комбинируя эти два способа, мы получаем полный ортоптический сеанс : работа по укреплению мышц (мускулатура) и их расслабление (растяжка).

    Модуляция ширины окна соответствует последовательности сеансов, в которых мы используем все более сходящуюся или расходящуюся призму, поэтому необходимо идти постепенно.

    Я заметил, что модуляция ширины непрерывна и позволяет повысить эффективность работы глазной системы, особенно при расхождении. (расслабление мышц).

    См. в сгенерированном HTML :

    На этой странице текст представлен в двух экземплярах, так что одновременно с чтением можно выполнять упражнения на глазную конвергенцию или дивергенцию, аналогичные тем, которые делает ортоптист..

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

    Если ширина страницы небольшая, то слить два изображения легко, чем шире, тем больше усилий требуется от мышц глаза..

    Два изображения могут быть объединены двумя способами: в конвергенции и дивергенции. Конвергенция сокращает мышцы, а дивергенция растягивает их (мышцы в разгибании).

    Комбинируя эти два способа, мы получаем полный ортоптический сеанс : работа по укреплению мышц (мускулатура) и их расслабление (растяжка).

    Модуляция ширины окна соответствует последовательности сеансов, в которых мы используем все более сходящуюся или расходящуюся призму, таким образом, необходимо идти постепенно.

    Я заметил, что модуляция ширины непрерывна и позволяет повысить эффективность работы глазной системы, особенно при расхождении. (расслабление мышц).

    Начните с наименьшей ширины окна и постепенно расширяйте ее.

    На этой странице текст представлен в двух экземплярах, так что одновременно с чтением можно выполнять упражнения на глазную конвергенцию или дивергенцию, аналогичные тем, которые делает ортоптист..

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

    Если ширина страницы небольшая, то слить два изображения легко, чем шире, тем больше усилий требуется от мышц глаза..

    Два изображения могут быть объединены двумя способами: в конвергенции и дивергенции. Конвергенция сокращает мышцы, а дивергенция растягивает их (мышцы в разгибании).

    Комбинируя эти два способа, мы получаем полный ортоптический сеанс : работа по укреплению мышц (мускулатура) и их расслабление (растяжка).

    Модуляция ширины окна соответствует последовательности сеансов, в которых мы используем все более сходящуюся или расходящуюся призму, таким образом, необходимо идти постепенно.

    Я заметил, что модуляция ширины непрерывна и позволяет повысить эффективность работы глазной системы, особенно при расхождении. (расслабление мышц).

    Начните с наименьшей ширины окна и постепенно расширяйте ее.

    3.2.перевод текста с помощью deepl api

    - Блок хэш-типа "#" {.#en:fr: } вызывает перевод в самом исходном тексте.

  • В качестве языковых кодов используются двухбуквенные коды, первый - язык источника, второй - язык перевода..
  • Перевод обеспечивается утилитой, которая вызываетapi_deepl.
  • Перевод может быть выполнен для блока текста в пределах (оригинальный текст заменяется на)
  • или для всего файла, в этом случае создается новый файл, имя которого равно имени исходного файла, к которому добавляется языковой суффикс.
  • Этикетки не переводятся, добавляется суффикс языка перевода.
  • Если комментарий к метке отсутствует, то метка используется для создания текста, который будет переведен.
  • Таким образом, мы сохраняем связь (со склонением суффиксов различных языков перевода) вводит файл на языке оригинала и различные файлы на языке перевода.
  • После завершения перевода спецификация перевода комментируется со вставкой точки ".." как модификатор блока.
  • Например, следующая строка всегда на английском языке :

    3.2.1.помощь в чтении на иностранном языке


    - A tilde type block "~" is used for foreign language reading assistance.

    - The translation specification follows the tilde character example : {~es:fr: hello the world }
    <lecture_aidée_en_langue_étrangère_en>(assisted reading in a foreign language)
    В результате этого на html-странице появляются подчеркнутые пунктиром слова, которые имеют всплывающую подсказку, содержащую переведенное слово.

    здравствуй мир

    обратный словарь : {~fr:es: hello world }

    мир приветствий

    В качестве примера приводится испано-французский словарь, содержащий около 26 000 слов. Другие словари могут быть инстанцированы пользователем mentor.
    Пользователь может поделиться ими, переслав их редактору для интеграции в пакет utags.
    Если словарь отсутствует, словарь текста может быть создан командой mentor, а затем список слов в словаре может быть переведен переводчиком, таким как deepl

    3.2.2.пример текста песни la cucaracha

    
    
    

    la cucaracha, la cucaracha que ya no puede caminar porque no tiene porque le falta la marijuana que fumar

    en la misa y en la feria todo el mundo ya lo sabe los que llegan al gobierno porque se puede comprar

    del partido comunista ya no queda casi nada ahora todos van buscando como hacerse millonadas

    fue la junta de naciones pa' poner sus opiniones todos no estaban de acuerdo donde y cuando bombardear se sientan los presidentes en la silla del gobierno luego mandan a la guerra a la gente de su pueblo

    la cucaracha, la cucaracha que ya no puede caminar porque no tiene porque le falta la marijuana que fumar

    huaracha muchacha que vamoa huarachar va una cucaracha que quiere comerciar, toca, loca ábreme la boca, buscame una coca que no quiero trabalear, mica, rica para zapatear,

    pido a victor jara no me vaya a doblegar, Cha-ma Chama Che Guevara una petición, una cucaracha, por culpa y omisión,

    la cucaracha, la cucaracha que ya no puede caminar porque no tiene porque le falta la marijuana que fumar

    todos se pelean la silla que les deja mucha plata en el norte pancho villa y en el sur viva Zapata!

    ya murió la cucaracha ya la llevan a enterrar entre cuatro zopilotes y un ratón de sacristan

    3.3.виды специальных этикеток


    - Метка типа <_file> создаст HTML ссылку на.
    - пример :
    <lien_document_local_ru_file>(/home/me/Documents/document.pdf)

    - Метка типа <_web> создаст HTML-ссылку на сеть.
    - пример :
    <alwaysdata_ru_nweb>(www.alwaysdata.com)

    - если инфикс "nweb" вместо "web" Нажмите на ссылку, чтобы открыть новую вкладку в браузере.

    <alwaysdata_ru_nweb>(www.alwaysdata.com)
    что дает в html : alwaysdata или lien_vers_alwaysdata_dans_un_nouvel_onglet

  • если инфикс "webs" или "nwebs", то ссылка будет https, а не http.


    - Метка типа <_hil> для "html_inline" указывает взять html-код, содержащийся в блоке, и добавить его
    непосредственно на html-страницу. Используется в особых случаях для автоматической генерации HTML-страниц, которые являются более специализированными, чем простой текст.
    или включить таблицы стилей.

    3.4.управление полужирными символами

    - Текст в скобках, за которым следует восклицательный знак (! появится ) и трава.
    - пример : (! текст на гравюре ) :
    текст на гравюре