Для авторов

Programming Far Manager plugins

Для авторов

Здесь описываются некоторые моменты оформления и организации статей для Энциклопедии.
  1. Ссылка "внутрь" Энциклопедии (например, для структуры PluginStartupInfo):

    <a href="mk:@MSITStore:pluginsr.chm::/html/structures/pluginstartupinfo.html">PluginStartupInfo</a>

    Здесь следует учесть структуры каталогов pluginsr.chm и принципы наименования статей:

    • имена html-файлов в основном соответствуют названиям функций и структур;
    • все html-файлы внутри pluginsr.chm в нижнем регистре;
    • html-файлы раскиданы по подкаталогам в соответствии со своими функциональными назначениями, например, основные структуры располагаются в pluginsr.chm::/html/structures/, структуры Dialog API в pluginsr.chm::/html/dialogapi/structures/ и т.п.


  2. Ссылка на WinAPI функцию (не описанную в Энциклопедии) для Вашей статьи (например, для функции GetLastError):

    <a href="win32/GetLastError">GetLastError</a>

    специальным скриптом такая ссылка преобразуется в <object>, как указано ниже.

  3. Ссылка на WinAPI функцию (не описанную в Энциклопедии) для самостоятельного CHM-файла (например, для функции GetLastError):

    <a href=JavaScript:linkXXXX.Click()>GetLastError</a>
    <object id=linkXXXX type="application/x-oleobject" classid="clsid:adb880a6-d8ff-11cf-9377-00aa003b7a11">
    <param name="Command" value="KLink">
    <param name="DefaultTopic" value="">
    <param name="Item1" value="">
    <param name="Item2" value="GetLastError">
    </object>


    Здесь linkXXXX - уникальный ID объекта в пределах одной HTML-страницы.

    При этом, если CHM-файл, то выбор ссылки приведёт к открытию соответствующей статьи из MSDN. Если MSDN`а поблизости нет, то пользователь получит сообщение:



  4. Ссылка на WinAPI функцию (не описанную в Энциклопедии) для Интернета (например, для функции GetLastError):

    <a href="msdn.html?GetLastError">GetLastError</a>

    Предполагается, что "msdn.html" располагается в "корне" проекта и браузер пользователя MSIE 4.x и выше.
    Содержимое файла:
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
    <html>
    
    <head>
    <title>Внешняя ссылка</title>
    <meta http-equiv="Content-Type" content="text/html; charset=Windows-1251">
    <link rel="stylesheet" type="text/css" href="../styles/styles.css">
    </head>
    
    <body>
    
    <h1>Внешняя ссылка</h1>
    <div class="navbar">
      <a href="index.html">главная</a>
    </div>
    
    <div class="descr">
    Запрашиваемая информация <span id="msdn"></span> находится где-то в дебрях
    <b><a href="https://msdn.microsoft.com/library/" target="_blank">MSDN Library</a></b>.
    
    <script language="javascript" type="text/javascript"><!--
    if (document.images != null && navigator.userAgent.indexOf("Mozilla", 0) != -1)
    {
      var f=document.location.href.indexOf("?");
      if(f > 0)
      {
        var qu=document.location.href.substring(f+1);
        msdn.innerHTML=" по <a href='https://social.msdn.microsoft.com/Search/?query=" +
            qu + "' target='_blank' style='font-weight:bold;'>" +qu+ "</a> "
      }
    }
    //--></script>
    
    </body>
    
    </html>