Spec-Zone.ru › Hammerspoon

hs.styledtext

Этот модуль добавляет поддержку управления стилем текста в Hammerspoon.

Более подробная документация разрабатывается и будет предоставлена в Вики Hammerspoon по адресу https://github.com/Hammerspoon/hammerspoon/wiki. Здесь представлена сокращенная версия документации, предназначенная для использования в Hammerspoon Dash docset и встроенной справке, предоставляемой командой help консоли Hammerspoon.

Следующий список пар "ключ-значение" атрибутов распознается этим модулем и может быть изменен, задан или удален для объектов с помощью различных методов, предоставляемых этим модулем. Список атрибутов приведен здесь для справки; где в документации вы видите ссылку на attributes key-value pairs, обратитесь обратно сюда за подробностями:

  • font - Таблица, содержащая имя и размер шрифта, указанные ключами name и size. По умолчанию используется системный шрифт размером 27 пунктов для hs.drawing текстовых объектов; в противном случае по умолчанию используется Helvetica размером 12 пунктов. Вы также можете указать это как строку, которая будет интерпретирована как имя шрифта в строке с размером по умолчанию при установке этого атрибута.
  • color - Таблица, указывающая цвет текста, как описано в hs.drawing.color. По умолчанию - белый для текстовых объектов hs.drawing; в противном случае по умолчанию - черный.
  • backgroundColor - По умолчанию nil, нет цвета фона (прозрачный).
  • underlineColor - По умолчанию nil, также как и color.
  • strikethroughColor - По умолчанию nil, также как и color.
  • strokeColor - По умолчанию nil, также как и color.
  • strokeWidth - По умолчанию 0, нет штриха; положительное значение - только штрих; отрицательное значение - штрих и заливка (типичное значение для контурного текста - 3.0).
  • paragraphStyle - Таблица, содержащая стиль абзаца. Эта таблица может содержать любое количество следующих ключей:
    • alignment - Строка, указывающая выравнивание текста. Строка может содержать значения "left", "right", "center", "justified", или "natural". По умолчанию - "natural".
    • lineBreak - Строка, указывающая, как текст, не помещающийся в прямоугольник drawingObjects, должен обрабатываться. Строка может быть одной из "wordWrap", "charWrap", "clip", "truncateHead", "truncateTail", или "truncateMiddle". По умолчанию - "wordWrap".
    • baseWritingDirection - Строка, указывающая основное направление записи для строк текста. Строка может быть одной из "natural", "leftToRight", или "rightToLeft". По умолчанию - "natural".
    • tabStops - Массив определенных позиций табуляции. По умолчанию - массив из 12 позиций табуляции с выравниванием по левому краю, расположенных на расстоянии 28 пунктов друг от друга. Каждый элемент массива может содержать следующие ключи:
      • location - Вещественное число, указывающее количество пунктов, на которое позиция табуляции смещена от начальной границы строки (см. baseWritingDirection).
      • tabStopType - Строка, указывающая тип позиции табуляции: "left", "right", "center", или "decimal"
    • defaultTabInterval - Положительное вещественное число, задающее расстояние по умолчанию до позиции табуляции в пунктах после последней назначенной позиции в поле tabStops.
    • firstLineHeadIndent - Положительное вещественное число, задающее расстояние, в пунктах, от ведущей границы рамки до начала первой строки абзаца. По умолчанию 0.0.
    • headIndent - Положительное вещественное число, задающее расстояние, в пунктах, от ведущей границы контейнера текста до начала строк, кроме первой. По умолчанию 0.0.
    • tailIndent - Вещественное число, задающее расстояние, в пунктах, от границы рамки до конца строк. Если положительное, это расстояние от ведущей границы (например, левой границы в тексте слева направо). Если 0 или отрицательное, это расстояние от хвостовой границы. По умолчанию 0.0.
    • maximumLineHeight - Положительное вещественное число, задающее максимальную высоту, которую любая строка в рамке может занимать, независимо от размера шрифта. Глифы, превышающие эту высоту, будут перекрывать соседние строки. Максимальная высота 0 означает отсутствие ограничения высоты строки. По умолчанию 0.0.
    • minimumLineHeight - Положительное вещественное число, задающее минимальную высоту, которую любая строка в рамке может занимать, независимо от размера шрифта. По умолчанию 0.0.
    • lineSpacing - Положительное вещественное число, задающее интервал в пунктах, добавляемый между строками в абзаце (обычно называемый интерлиньей). По умолчанию 0.0.
    • paragraphSpacing - Положительное вещественное число, задающее интервал в пунктах, добавляемый в конце абзаца для отделения его от последующего абзаца. По умолчанию 0.0.
    • paragraphSpacingBefore - Положительное вещественное число, задающее расстояние в пунктах между верхней частью абзаца и началом его текстового содержимого. По умолчанию 0.0.
    • lineHeightMultiple - Вещественное число, задающее множитель высоты строки. Естественная высота строки получателя умножается на этот множитель (если он не равен 0), прежде чем быть ограниченной минимальной и максимальной высотой строки. По умолчанию 0.0.
    • hyphenationFactor - Коэффициент переноса, значение от 0.0 до 1.0, контролирующее, когда будет выполняться перенос. По умолчанию значение 0.0, что означает отключение переноса. Коэффициент 1.0 вызывает попытку переноса всегда.
    • tighteningFactorForTruncation - Вещественное число. При режиме разрыва строки, задающем обрезку, система пытается уменьшить интервал между символами как альтернативу обрезке, при условии, что отношение ширины текста к ширине фрагмента строки не превышает 1.0 + значение tighteningFactorForTruncation. В противном случае текст обрезается в позиции, определенной режимом разрыва строки. Значение по умолчанию 0.05.
    • allowsTighteningForTruncation - Булево значение, указывающее, может ли система уменьшить интервал между символами перед обрезкой текста. Доступно только в macOS 10.11 и более поздних версиях. По умолчанию true.
    • headerLevel - Целое число от 0 до 6 включительно, которое указывает, следует ли рассматривать абзац как заголовок и на каком уровне для целей генерации HTML. По умолчанию 0.
  • superscript - Целое число, указывающее, отображается ли текст как верхний индекс (положительное значение), нижний индекс (отрицательное значение) или нормальный (0).
  • ligature - Целое число. По умолчанию 1, стандартные лигатуры; 0, нет лигатур; 2, все лигатуры.
  • strikethroughStyle - Целое число, представляющее стиль линии перечеркивания. См. hs.styledtext.lineStyles, hs.styledtext.linePatterns и hs.styledtext.lineAppliesTo.
  • underlineStyle - Целое число, представляющее стиль подчеркивания. См. hs.styledtext.lineStyles, hs.styledtext.linePatterns и hs.styledtext.lineAppliesTo.
  • baselineOffset - Вещественное значение, в пунктах смещения от базовой линии. По умолчанию 0.0.
  • kerning - Вещественное значение, в пунктах, на которые изменяется значение кернинга по умолчанию. По умолчанию nil, чтобы использовать значение кернинга по умолчанию, указанное в файле шрифта; 0.0 - кернинг выключен; отличное от нуля - пункты, на которые нужно изменить значение кернинга по умолчанию.
  • obliqueness - Вещественное значение, как наклон, который нужно применить к глифам. По умолчанию 0.0, наклон отсутствует.
  • expansion - Вещественное значение, как логарифм коэффициента расширения, который нужно применить к глифам. По умолчанию 0.0, расширение отсутствует.
  • shadow - По умолчанию nil, что указывает на отсутствие тени. Таблица, описывающая эффект тени для текста. Таблица может содержать любой из следующих ключей:
    • offset - Таблица с ключами h и w (структура размера), которые указывают горизонтальное и вертикальное смещение тени соответственно. Положительные значения всегда распространяются вниз и вправо с точки зрения пользователя.
    • blurRadius - Вещественное значение, задающее радиус размытия тени. Значение 0 указывает отсутствие размытия, а большие значения создают соответствующее большее размытие. Значение по умолчанию 0.
    • color - Цвет тени по умолчанию - черный с альфой 1/3. Если вы установите это свойство в nil, тень не будет нарисована.
  • hs.styledtext - Для облегчения использования объектов hs.styledtext, помимо специфичных для модуля функций и методов, определены некоторые функции из библиотеки Lua String, выполняющие аналогичные функции над этими объектами. Обратитесь к разделу справки по каждому методу для получения дополнительной информации о его использовании:
    • hs.styledtext:byte
    • hs.styledtext:find
    • hs.styledtext:gmatch
    • hs.styledtext:len
    • hs.styledtext:lower
    • hs.styledtext:match
    • hs.styledtext:rep
    • hs.styledtext:sub
    • hs.styledtext:upper

    Кроме того, включены следующие метаметоды:

    • concat:
      • string..object возвращает конкатенированные строковые значения
      • object..string возвращает новый объект hs.styledtext с добавленным string
      • два объекта hs.styledtext возвращают новый объект hs.styledtext содержащий конкатенацию двух объектов
    • len: #object возвращает длину текста, содержащегося в объекте
    • eq: object ==/~= object возвращает логическое значение, указывающее, равен ли текст двух объектов или нет. Используйте hs.styledtext:isIdentical если вам нужно сравнивать и атрибуты.
    • lt, le: позволяют сравнивать <, >, <=, и >= между объектами и строками, в которых текст объекта сравнивается с текстом другого объекта или строкой Lua.

    Обратите внимание, что из-за различий в том, как Lua определяет, когда использовать метаметоды для сравнения равенства по сравнению со сравнением относительных позиций, ==/~= не может сравнивать объект со строкой Lua (всегда возвращает false, так как типы разные). Вы должны использовать object:getString() ==/~= string. (см. hs.styledtext:getString).

  • Обзор API

    • Константы - Полезные значения, которые нельзя изменить
      • defaultFonts
      • fontTraits
      • lineAppliesTo
      • linePatterns
      • lineStyles
    • Функции - Вызовы API, предоставляемые непосредственно расширением
      • convertFont
      • fontFamilies
      • fontInfo
      • fontNames
      • fontNamesWithTraits
      • fontPath
      • fontsForFamily
      • loadFont
      • validFont
    • Конструкторы - Вызовы API, которые возвращают объект, обычно тот, который предлагает методы API
      • ansi
      • getStyledTextFromData
      • getStyledTextFromFile
      • new
    • Методы - Вызовы API, которые могут быть выполнены только над объектом, возвращенным конструктором
      • asTable
      • byte
      • convert
      • copy
      • find
      • getString
      • gmatch
      • isIdentical
      • len
      • lower
      • match
      • removeStyle
      • rep
      • setString
      • setStyle
      • sub
      • upper

    Документация API

    Константы

    defaultFonts
    Подпись hs.styledtext.defaultFonts
    Тип Константа
    Описание

    Таблица, содержащая системные шрифты и размеры по умолчанию.

    Примечания
    • Эти значения полезны при определении объекта стилизованного текста, который должен быть похожим на или основан на определенном типе системного элемента.

    • Поскольку пользователь может изменять значения шрифтов по умолчанию во время работы Hammerspoon, эта таблица фактически генерируется динамически по запросу. Это не должно повлиять на ваше использование этой константы как таблицы; однако, вы можете сгенерировать статическую таблицу, если это необходимо, вызвав hs.styledtext._defaultFonts() напрямую.

    Источник extensions/styledtext/libstyledtext.m строка 660
    fontTraits
    Подпись hs.styledtext.fontTraits -> table
    Тип Константа
    Описание

    Таблица для хранения масок атрибутов шрифта для использования с hs.styledtext.fontNamesWithTraits(...)

    Источник extensions/styledtext/libstyledtext.m строка 379
    lineAppliesTo
    Подпись hs.styledtext.lineAppliesTo
    Тип Константа
    Описание

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

    Примечания
    • Допустимые ключи:

      • line - подчеркивание или зачеркивание применяется ко всей строке текста
      • word - подчеркивание или зачеркивание применяется только к словам, а не к пробелам в строке текста
    • При указании типа линии для подчеркивания или зачеркивания можно комбинировать одну запись из следующих таблиц:

      • hs.styledtext.lineStyles
      • hs.styledtext.linePatterns
      • hs.styledtext.lineAppliesTo
    • Выбранные записи должны быть объединены оператором or, чтобы получить одно значение. Например:

      • hs.styledtext.lineStyles.single | hs.styledtext.linePatterns.dash | hs.styledtext.lineAppliesToWord
    Источник extensions/styledtext/libstyledtext.m строка 629
    linePatterns
    Подпись hs.styledtext.linePatterns
    Тип Константа
    Описание

    Таблица шаблонов, применяемых к линии подчеркивания или зачеркивания.

    Примечания
    • Допустимые ключи шаблонов линии:

      • solid - сплошная линия
      • dot - пунктирная линия
      • dash - штриховая линия
      • dashDot - шаблон из штриха и точки
      • dashDotDot - шаблон из штриха и двух точек
    • При указании типа линии для подчеркивания или зачеркивания можно комбинировать одну запись из следующих таблиц:

      • hs.styledtext.lineStyles
      • hs.styledtext.linePatterns
      • hs.styledtext.lineAppliesTo
    • Выбранные записи должны быть объединены оператором or, чтобы получить одно значение. Например:

      • hs.styledtext.lineStyles.single | hs.styledtext.linePatterns.dash | hs.styledtext.lineAppliesToWord
    Источник extensions/styledtext/libstyledtext.m строка 595
    lineStyles
    Подпись hs.styledtext.lineStyles
    Тип Константа
    Описание

    Таблица стилей, применяемых к линии подчеркивания или зачеркивания.

    Примечания
    • Допустимые ключи стилей линии:

      • none - без стиля линии
      • single - тонкая линия
      • thick - толстая линия (обычно вдвое толще тонкой линии)
      • double - двойная толстая линия
    • При указании типа линии для подчеркивания или зачеркивания можно комбинировать одну запись из следующих таблиц:

      • hs.styledtext.lineStyles
      • hs.styledtext.linePatterns
      • hs.styledtext.lineAppliesTo
    • Выбранные записи должны быть объединены оператором or, чтобы получить одно значение. Например:

      • hs.styledtext.lineStyles.single | hs.styledtext.linePatterns.dash | hs.styledtext.lineAppliesToWord
    Источник extensions/styledtext/libstyledtext.m строка 564

    Функции

    convertFont
    Подпись hs.styledtext.convertFont(fontTable, trait) -> table
    Тип Функция
    Описание

    Возвращает шрифт, который наиболее точно соответствует заданному шрифту и запрошенному изменению атрибута.

    Параметры
    • font - строка или таблица, определяющая шрифт. Если задана строка, предполагается системный размер шрифта по умолчанию. Если задана таблица, она должна содержать следующие ключи:
      • name - имя шрифта (по умолчанию — системный шрифт)
      • size - размер шрифта в пунктах (по умолчанию — системный размер шрифта по умолчанию)
    • trait - число, соответствующее атрибуту, перечисленному в hs.styledtext.fontTraits, которое вы хотите добавить или удалить (unboldFont и unitalicFont) из заданного шрифта, или логическое значение, указывающее, хотите ли вы более тяжелый вариант (true) или более легкий вариант (false).
    Возвращает
    • таблицу, содержащую имя и размер шрифта, который наиболее точно соответствует указанному шрифту и запрошенному изменению атрибута. Если такой шрифт недоступен, возвращается исходный шрифт без изменений.
    Источник extensions/styledtext/libstyledtext.m строка 305
    fontFamilies
    Подпись hs.styledtext.fontFamilies() -> table
    Тип Функция
    Описание

    Возвращает имена всех установленных на системе шрифтов.

    Параметры
    • Нет
    Возвращает
    • таблицу, содержащую имена всех установленных на системе шрифтов.
    Источник extensions/styledtext/libstyledtext.m строка 268
    END_OF_DOCUMENT_MARKER
    fontInfo
    Signature hs.styledtext.fontInfo(font) -> table
    Type Function
    Description

    Получить информацию о шрифте, указанном в таблице атрибутов.

    Parameters
    • font - строка или таблица, определяющие шрифт. Если задана строка, предполагается размер шрифта по умолчанию системы. Если предоставлена таблица, она должна содержать следующие ключи:
      • name - имя шрифта (по умолчанию - системный шрифт)
      • size - размер шрифта в пунктах (по умолчанию - размер системного шрифта по умолчанию)
    Returns
    • таблица, содержащая следующие ключи:
      • fontName - Внутреннее имя шрифта.
      • familyName - Семейство шрифта.
      • displayName - Отображаемое имя шрифта, обычно локализованное для языка пользователя.
      • fixedPitch - Логическое значение, указывающее, имеют ли все глифы шрифта одинаковый отступ.
      • ascender - Верхняя координата y, смещенная от базовой линии, самого длинного восходящего элемента шрифта.
      • boundingRect - Таблица, содержащая рамку обводки шрифта, масштабированную до размера шрифта. Эта рамка является объединением рамок обводки каждого глифа в шрифте.
      • capHeight - Высота прописной буквы шрифта.
      • descender - Нижняя координата y, смещенная от базовой линии, самого длинного нисходящего элемента шрифта.
      • italicAngle - Количество градусов, на которое шрифт наклонен против часовой стрелки от вертикали. (только для чтения)
      • leading - Значение кернинга шрифта.
      • maximumAdvancement - Таблица, содержащая максимальный отступ любого глифа шрифта.
      • numberOfGlyphs - Количество глифов в шрифте.
      • pointSize - Размер шрифта в пунктах.
      • underlinePosition - Смещение от базовой линии для рисования подчеркиваний шрифтом.
      • underlineThickness - Толщина для рисования подчеркиваний шрифтом.
      • xHeight - Высота строчной буквы шрифта.
    Source extensions/styledtext/libstyledtext.m строка 449
    fontNames
    Signature hs.styledtext.fontNames() -> table
    Type Function
    Description

    Возвращает имена всех установленных шрифтов системы.

    Parameters
    • None
    Returns
    • таблица, содержащая имена каждого установленного в системе шрифта. Индивидуальные имена являются строками, которые могут быть использованы в методе hs.drawing:setTextFont(fontname).
    Source extensions/styledtext/libstyledtext.m строка 246
    fontNamesWithTraits
    Signature hs.styledtext.fontNamesWithTraits(fontTraitMask) -> table
    Type Function
    Description

    Возвращает имена всех установленных шрифтов системы с указанными атрибутами.

    Parameters
    • traits - число, определяющее маску атрибутов шрифта, или таблица, содержащая атрибуты из hs.styledtext.fontTraits, логически 'OR'ed для создания маски атрибутов шрифта, используемой.
    Returns
    • таблица, содержащая имена каждого установленного шрифта системы, соответствующего заданной маске атрибутов шрифта. Индивидуальные имена являются строками, которые могут быть использованы в методе hs.drawing:setTextFont(fontname).
    Notes
    • указание 0 или пустой таблицы соответствует всем шрифтам, которые не являются курсивными или полужирными. Это будет тот же список, который вы получите с { hs.styledtext.fontTraits.unBold, hs.styledtext.fontTraits.unItalic } в качестве параметра.
    Source extensions/styledtext/libstyledtext.m строка 335
    fontPath
    Signature hs.styledtext.fontPath(font) -> table
    Type Function
    Description

    Получить путь к шрифту.

    Parameters
    • font - строка, содержащая имя шрифта, который требуется проверить.
    Returns
    • Путь к шрифту или nil , если имя шрифта недействительно.
    Source extensions/styledtext/libstyledtext.m строка 532
    fontsForFamily
    Signature hs.styledtext.fontsForFamily(familyName) -> table
    Type Function
    Description

    Возвращает массив, содержащий доступные шрифты для указанного семейства шрифтов, или nil, если шрифтов для указанного семейства нет.

    Parameters
    • familyName - строка, определяющая семейство шрифтов, для которого следует вернуть доступные шрифты. Строки должны быть одним из значений, возвращаемых функцией hs.styledtext.fontFamilies.
    Returns
    • таблица, содержащая массив доступных шрифтов для указанного семейства. Каждый элемент массива будет таблицей, также как массив, в следующем порядке:
      • строка, определяющая имя шрифта, которое может быть использовано в методе hs.drawing:setTextFont(fontname).
      • строка, определяющая базовый стиль шрифта (например, Полужирный, Курсив, Римский и т. д.).
      • таблица, содержащая одну или несколько строк, определяющих распространенные имена толщины шрифта. Имена ISO-эквивалентов предваряются "ISO:". Возможные значения: { "ultralight" } { "thin", "ISO:ultralight" } { "light", "extralight", "ISO:extralight" } { "book", "ISO:light" } { "regular", "plain", "display", "roman", "ISO:semilight" } { "medium", "ISO:medium" } { "demi", "demibold" } { "semi", "semibold", "ISO:semibold" } { "bold", "ISO:bold" } { "extra", "extrabold", "ISO:extrabold" } { "heavy", "heavyface" } { "black", "super", "ISO:ultrabold" } { "ultra", "ultrablack", "fat" } { "extrablack", "obese", "nord" }
      • таблица, определяющая нулевые или более атрибутов для шрифта, как определено в таблице hs.styledtext.fontTraits. Также задано поле с ключом _numeric, которое указывает числовое значение, соответствующее атрибутам для удобного использования с функцией hs.styledtext.convertFont.
    Source extensions/styledtext/styledtext.lua строка 196
    loadFont
    Signature hs.styledtext.loadFont(path) -> boolean[, string]
    Type Function
    Description

    Загружает шрифт из файла по указанному пути.

    Parameters
    • path - путь и имя файла шрифта, который необходимо загрузить
    Returns
    • Если шрифт может быть зарегистрирован, возвращается true, в противном случае false и сообщение об ошибке в виде строки.
    Source extensions/styledtext/libstyledtext.m строка 1283
    validFont
    Signature hs.styledtext.validFont(font) -> boolean
    Type Function
    Description

    Проверяет, является ли шрифт допустимым.

    Parameters
    • font - строка, содержащая имя шрифта, который требуется проверить.
    Returns
    • true если допустим, в противном случае false.
    Source extensions/styledtext/libstyledtext.m строка 424

    Конструкторы

    ansi
    Signature hs.styledtext.ansi(string, [attributes]) -> styledText object
    Type Конструктор
    Description

    Создать объект hs.styledtext из предоставленной строки, преобразуя ANSI SGR цвет и некоторые последовательности шрифтов в соответствующие атрибуты. Атрибуты, которые следует применить к возвращаемому объекту, также могут быть необязательно предоставлены.

    Parameters
    • string - Строка, содержащая текст с ANSI SGR последовательностями, которые необходимо преобразовать.
    • attributes - необязательная таблица, содержащая пары ключ-значение атрибутов, которые следует применить ко всему объекту hs.styledtext для возврата.
    Returns
    • объект hs.styledtext
    Notes
    • Поскольку для SGR последовательностей, указывающих полужирный и курсивный шрифты, требуется шрифт, базовый шрифт определяется с помощью следующей логики:

      • если таблица attributes не предоставлена, шрифт предполагается по умолчанию для hs.drawing как возвращается функцией hs.drawing.defaultTextStyle
      • если таблица attributes предоставлена и она определяет атрибут font, этот шрифт используется.
      • если таблица attributes предоставлена, но не предоставляет атрибут font, используется шрифт Helvetica по умолчанию NSAttributedString размером 12 пунктов.
    • Так как наиболее распространенное использование этого конструктора, вероятно, из вывода команды терминала, вам, скорее всего, потребуется указать шрифт с фиксированной шириной (моноширинный). Список установленных шрифтов с фиксированной шириной можно получить, набрав hs.styledtext.fontNamesWithTraits(hs.styledtext.fontTraits.fixedPitchFont) в консоли Hammerspoon.

    • См. описание документации модуля (help.hs.styledtext) для описания формата таблицы атрибутов, который может быть предоставлен в качестве необязательного второго аргумента.

    • Эта функция была смоделирована по файлу ANSIEscapeHelper.m по адресу https://github.com/balthamos/geektool-3 в каталоге /NerdTool/classes.

    Source extensions/styledtext/styledtext.lua строка 287
    getStyledTextFromData
    Signature hs.styledtext.getStyledTextFromData(data, [type]) -> styledText object
    Type Конструктор
    Description

    Преобразует предоставленные данные в форматированный текстовый строку.

    Parameters
    • data - данные, как строка Lua, содержащие исходные данные, которые нужно преобразовать в объект styledText
    • type - строка, указывающая формат содержимого в data. По умолчанию "html". Строка может быть одной из следующих (не все форматы могут быть полностью представлены как простой контейнер строки - см. также hs.styledtext.setTextFromFile):
      • "text" - Обычный текстовый документ.
      • "rtf" - Документ в формате Rich Text.
      • "rtfd" - Документ в формате Rich Text с вложениями.
      • "simpleText" - Документ Macintosh SimpleText.
      • "html" - Документ Hypertext Markup Language (HTML).
      • "word" - Документ Microsoft Word.
      • "wordXML" - Документ Microsoft Word XML (схема WordML).
      • "webArchive" - Документ Web Kit WebArchive.
      • "openXML" - Текстовый формат ECMA Office Open XML.
      • "open" - Текстовый формат OASIS Open Document.
    Returns
    • объект styledText
    Notes
    • См. также hs.styledtext.getStyledTextFromFile
    Source extensions/styledtext/libstyledtext.m строка 96
    getStyledTextFromFile
    Signature hs.styledtext.getStyledTextFromFile(file, [type]) -> styledText object
    Type Конструктор
    Description

    Преобразует данные из указанного файла в форматированную текстовую строку.

    Parameters
    • file - путь к файлу, используемому в качестве источника данных для преобразования в объект styledText
    • type - строка, указывающая формат содержимого в data. По умолчанию "html". Строка может быть одной из следующих (не все форматы могут быть полностью представлены как простой контейнер строки - см. также hs.styledtext.setTextFromFile):
      • "text" - Обычный текстовый документ.
      • "rtf" - Документ в формате Rich Text.
      • "rtfd" - Документ в формате Rich Text с вложениями.
      • "simpleText" - Документ Macintosh SimpleText.
      • "html" - Документ Hypertext Markup Language (HTML).
      • "word" - Документ Microsoft Word.
      • "wordXML" - Документ Microsoft Word XML (схема WordML).
      • "webArchive" - Документ Web Kit WebArchive.
      • "openXML" - Текстовый формат ECMA Office Open XML.
      • "open" - Текстовый формат OASIS Open Document.
    Returns
    • объект styledText
    Notes
    • См. также hs.styledtext.getStyledTextFromData
    Source extensions/styledtext/libstyledtext.m строка 174
    new
    Signature hs.styledtext.new(string, [attributes]) -> styledText object
    Type Конструктор
    Description

    Создать объект hs.styledtext из предоставленного строкового или табличного представления. Также могут быть необязательно предоставлены атрибуты для применения к результирующей строке.

    Parameters
    • string - строка, таблица или объект hs.styledtext для создания нового объекта hs.styledtext.
    • attributes - необязательная таблица, содержащая пары ключ-значение атрибутов, которые будут применены ко всему объекту hs.styledtext , который будет возвращен.
    Returns
    • объект hs.styledtext
    Notes
    • См. hs.styledtext:asTable для описания табличного представления объекта hs.styledtext

    • См. документацию к описанию модуля (help.hs.styledtext) для описания формата таблицы атрибутов, которая может быть предоставлена в качестве необязательного второго аргумента.

    • Передача объекта hs.styledtext в качестве первого параметра без указания таблицы attributes эквивалентна вызову hs.styledtext:copy.

    Source extensions/styledtext/libstyledtext.m строка 62

    Методы

    asTable
    Signature hs.styledtext:asTable([starts], [ends]) -> table
    Type Метод
    Description

    Возвращает табличное представление объекта hs.styledtext или его указанного подстроки.

    Parameters
    • starts - необязательный индекс позиции в тексте объекта hs.styledtext , указывающий начало подстроки, для которой нужно вернуть таблицу. По умолчанию 1, начало текста объекта. Если число отрицательное, оно считается назад от конца текста объекта (т.е. -1 будет последней позицией символа).
    • ends - необязательный индекс позиции в тексте объекта hs.styledtext , указывающий конец подстроки, для которой нужно вернуть таблицу. По умолчанию длина текста объекта. Если число отрицательное, оно считается назад от конца текста объекта.
    Returns
    • таблица, представляющая объект hs.styledtext. Таблица будет массивом со следующей структурой:
      • индекс 1 - текст объекта hs.styledtext как строка Lua.
      • индекс 2+ - таблица со следующими ключами:
        • starts - позиция индекса в исходном объекте форматированного текста, где этот список атрибутов впервые применяется
        • ends - позиция индекса в исходном объекте форматированного текста, где применение этого списка атрибутов заканчивается
        • attributes - таблица пар ключ-значение атрибутов, которые применяются к строке между позициями starts и ends
        • unsupportedFields - этот поле существует только, и будет установлено в true, когда атрибут, который был включен в таблицу атрибутов, которую этот модуль не может изменить. Будет сделана попытка отобразить присвоенное значение атрибута в таблице атрибутов, но изменение атрибута и повторное применение его с помощью hs.styledtext:setStyle будут проигнорированы.
    Notes
    • starts и ends следуют соглашениям i и j для функции string.sub Lua.

    • Атрибут, содержащий вложение (изображение) для преобразованного RTFD или другого документа, известен тем, что устанавливает флаг unsupportedFields.

    • Индексы в возвращенной таблице относятся к их позиции в исходном объекте hs.styledtext. Если вам нужна таблица версии подстроки, которая не начинается с позиции индекса 1, которая может быть безопасно подана в виде «правильной» табличной версии объекта hs.styledtext в другую функцию или конструктор, правильный способ ее генерации - `destination = object:sub(i,j):asTable().

    • См. документацию к описанию модуля (help.hs.styledtext) для описания формата таблицы атрибутов.

    Source extensions/styledtext/libstyledtext.m строка 741
    byte
    Signature hs.styledtext:byte([starts], [ends]) -> integer, ...
    Type Метод
    Description

    Возвращает внутреннее числовое представление символов в объекте hs.styledtext , указанном заданными индексами. Имитирует функцию Lua string.byte.

    Parameters
    • starts - необязательный индекс позиции в тексте объекта hs.styledtext , указывающий начало подстроки, для которой нужно вернуть числовые значения. По умолчанию 1, начало текста объекта. Если число отрицательное, оно считается назад от конца текста объекта (т.е. -1 будет последней позицией символа).
    • ends - необязательный индекс позиции в тексте объекта hs.styledtext , указывающий конец подстроки, для которой нужно вернуть числовые значения. По умолчанию значение starts. Если число отрицательное, оно считается назад от конца текста объекта.
    Returns
    • список целых чисел, представляющих внутреннее числовое представление символов в объекте hs.styledtext , указанном заданными индексами.
    Notes
    • starts и ends следуют соглашениям i и j для функции string.sub Lua.
    Source extensions/styledtext/styledtext.lua строка 84
    convert
    Signature hs.styledtext:convert([type]) -> string
    Type Метод
    Description

    Преобразует объект styledtext в указанный формат данных.

    Parameters
    • type - строка, указывающая формат для преобразования объекта styletext. По умолчанию "html". Строка может быть одной из следующих:
      • "text" - Обычный текстовый документ.
      • "rtf" - Документ в формате Rich Text.
      • "rtfd" - Документ в формате Rich Text с вложениями.
      • "html" - Документ Hypertext Markup Language (HTML).
      • "word" - Документ Microsoft Word.
      • "wordXML" - Документ Microsoft Word XML (схема WordML).
      • "webArchive" - Документ Web Kit WebArchive.
      • "openXML" - Текстовый формат ECMA Office Open XML.
      • "open" - Текстовый формат OASIS Open Document.
    Returns
    • строка, содержащая преобразованные данные
    Source extensions/styledtext/libstyledtext.m строка 1216
    копия
    Подпись hs.styledtext:copy(styledText) -> styledText object
    Тип Метод
    Описание

    Создаёт копию объекта hs.styledtext.

    Параметры
    • styledText — объект hs.styledtext
    Возвращаемое значение
    • копия объекта styledText
    Исходный код extensions/styledtext/libstyledtext.m строка 703
    найти
    Подпись hs.styledtext:find(pattern, [init, [plain]]) -> start, end, ... | nil
    Тип Метод
    Описание

    Возвращает индексы первого вхождения указанного шаблона в текст объекта hs.styledtext. Эмулирует функцию Lua string.find.

    Параметры
    • pattern — строка, содержащая шаблон для поиска. Подробнее см. руководство Lua, раздел 6.4.1 (help.lua._man._6_4_1)
    • init — необязательное целое число, задающее позицию в тексте для начала поиска шаблона
    • plain — необязательный булевый параметр, определяющий, следует ли рассматривать шаблон как обычный текст (т.е. точное совпадение). По умолчанию false. Если вы хотите указать этот аргумент, вам также необходимо указать init.
    Возвращаемое значение
    • если совпадение найдено, start и end будут индексами, где шаблон был впервые найден. Если в шаблоне были указаны capture, они также будут возвращены как дополнительные аргументы после start и end. Если шаблон не был найден в тексте, то этот метод возвращает nil.
    Примечания
    • Любые возвращаемые capture возвращаются как строки Lua, а не как объекты hs.styledtext.
    Исходный код extensions/styledtext/styledtext.lua строка 99
    получитьСтроку
    Подпись hs.styledtext:getString([starts], [ends]) -> string
    Тип Метод
    Описание

    Возвращает текст объекта hs.styledtext как строку Lua.

    Параметры
    • starts — необязательный индекс позиции в тексте объекта hs.styledtext, указывающий начало подстроки для возвращения строки. По умолчанию 1, начало текста объекта. Если это число отрицательное, оно подсчитывается назад от конца текста объекта (т.е. -1 — последняя позиция символа).
    • ends — необязательный индекс позиции в тексте объекта hs.styledtext, указывающий конец подстроки для возвращения строки. По умолчанию длина текста объекта. Если это число отрицательное, оно подсчитывается назад от конца текста объекта.
    Возвращаемое значение
    • строка, содержащая текст объекта hs.styledtext
    Примечания
    • starts и ends следуют соглашениям i и j для функции Lua string.sub.
    Исходный код extensions/styledtext/libstyledtext.m строка 893
    gmatch
    Подпись hs.styledtext:gmatch(pattern) -> iterator-function
    Тип Метод
    Описание

    Возвращает функцию-итератор, которая каждый раз при вызове будет возвращать capture (или весь шаблон) следующего совпадения заданного шаблона в тексте объекта hs.styledtext. Эмулирует функцию Lua string.gmatch.

    Параметры
    • pattern — строка, содержащая шаблон для поиска. Подробнее см. руководство Lua, раздел 6.4.1 (help.lua._man._6_4_1)
    Возвращаемое значение
    • функция-итератор, которая каждый раз при вызове будет возвращать capture (или весь шаблон) следующего совпадения заданного шаблона в тексте объекта hs.styledtext
    Примечания
    • Любые capture (или весь шаблон), возвращаемые итератором, возвращаются как строки Lua, а не как объекты hs.styledtext.
    Исходный код extensions/styledtext/styledtext.lua строка 130
    являетсяТождественным
    Подпись hs.styledtext:isIdentical(styledText) -> boolean
    Тип Метод
    Описание

    Определяет, идентичен ли объект styledText указанному.

    Параметры
    • styledText — объект hs.styledtext
    Возвращаемое значение
    • булевое значение, указывающее, идентичны ли объекты styled text как по содержанию текста, так и по указанным атрибутам.
    Примечания
    • сравнение двух объектов hs.styledtext с оператором == сравнивает только идентичность строковых значений. Этот метод также сравнивает их атрибуты.
    Исходный код extensions/styledtext/libstyledtext.m строка 720
    длина
    Подпись hs.styledtext:len() -> integer
    Тип Метод
    Описание

    Возвращает длину текста объекта hs.styledtext. Эмулирует функцию Lua string.len.

    Параметры
    • Нет
    Возвращаемое значение
    • целое число, равное длине текста объекта hs.styledtext
    Исходный код extensions/styledtext/libstyledtext.m строка 2285
    нижнийРегистр
    Подпись hs.styledtext:lower() -> styledText object
    Тип Метод
    Описание

    Возвращает копию объекта hs.styledtext с преобразованием всех букв в нижний регистр. Эмулирует функцию Lua string.lower.

    Параметры
    • Нет
    Возвращаемое значение
    • копия объекта hs.styledtext с преобразованием всех букв в нижний регистр
    Исходный код extensions/styledtext/libstyledtext.m строка 1335
    сопоставить
    Подпись hs.styledtext:match(pattern, [init]) -> match ... | nil
    Тип Метод
    Описание

    Возвращает первое вхождение capture в указанном шаблоне (или весь шаблон, если не указаны capture) в тексте объекта hs.styledtext. Эмулирует функцию Lua string.match.

    Параметры
    • pattern — строка, содержащая шаблон для поиска. Подробнее см. руководство Lua, раздел 6.4.1 (help.lua._man._6_4_1)
    • init — необязательное целое число, задающее позицию в тексте для начала поиска шаблона
    Возвращаемое значение
    • если совпадение найдено, то capture в указанном шаблоне (или весь шаблон, если не указаны capture). Если шаблон не был найден в тексте, то метод возвращает nil.
    Примечания
    • Любые capture (или весь шаблон), возвращаемые методом, возвращаются как строки Lua, а не как объекты hs.styledtext.
    Исходный код extensions/styledtext/styledtext.lua строка 115
    удалитьСтиль
    Подпись hs.styledtext:removeStyle(attributes, [starts], [ends]) -> styledText object
    Тип Метод
    Описание

    Возвращает копию объекта hs.styledtext, содержащую изменения его атрибутов, указанных в таблице attributes.

    Параметры
    • attributes — массив меток атрибутов, которые нужно удалить (установить в nil) из объекта hs.styledtext.
    • starts — необязательный индекс позиции в тексте объекта hs.styledtext, указывающий начало подстроки для удаления атрибутов. По умолчанию 1, начало текста объекта. Если число отрицательное, оно подсчитывается назад от конца текста объекта (т.е. -1 — последняя позиция символа).
    • ends — необязательный индекс позиции в тексте объекта hs.styledtext, указывающий конец подстроки для удаления атрибутов. По умолчанию длина текста объекта. Если число отрицательное, оно подсчитывается назад от конца текста объекта.
    Возвращаемое значение
    • копия объекта hs.styledtext с удаленными атрибутами из заданного диапазона исходного объекта.
    Примечания
    • starts и ends следуют соглашениям i и j для функции Lua string.sub.

    • Список официально признанных имен меток атрибутов см. в документации по описанию модуля (help.hs.styledtext).

    • Официально признанные метки атрибутов были выбраны для краткости или для соответствия соглашениям, используемым в других модулях Hammerspoon. Если вы знаете имя атрибута на Objective-C, вы можете его указать вместо официально признанной метки, позволяя удалить атрибуты, которые этот модуль не может манипулировать другими способами.

    Исходный код extensions/styledtext/libstyledtext.m строка 1018
    rep
    Signature hs.styledtext:rep(n, [separator]) -> styledText object
    Type Method
    Description

    Возвращает объект hs.styledtext, содержащий n повторений объекта hs.styledtext, необязательно с separator между каждым повторением. Имитирует функцию Lua string.rep.

    Parameters
    • n - число повторений объекта hs.styledtext.
    • separator - необязательная строка или объект hs.styledtext для вставки между повторениями.
    Returns
    • объект hs.styledtext, содержащий n повторений объекта, включая separator между повторениями, если указано.
    Source extensions/styledtext/styledtext.lua строка 145
    setString
    Signature hs.styledtext:setString(string, [starts], [ends], [clear]) -> styledText object
    Type Method
    Description

    Возвращает копию объекта hs.styledtext с изменениями его атрибутов, указанными в таблице attributes.

    Parameters
    • string - строка, таблица или объект hs.styledtext для вставки или замены подстроки.
    • starts - необязательная позиция индекса в тексте объекта hs.styledtext , указывающая начало назначения для указанной строки. По умолчанию 1, начало текста объекта. Если это число отрицательное, оно подсчитывается назад от конца текста объекта (например, -1 — последняя позиция символа).
    • ends - необязательная позиция индекса в тексте объекта hs.styledtext , указывающая конец назначения для указанной строки. По умолчанию длина текста объекта. Если это число отрицательное, оно подсчитывается назад от конца текста объекта. Если это число 0, то подстрока вставляется в указанный индексом starts вместо замены.
    • clear - необязательный логический тип, указывающий, следует ли включать атрибуты новой строки (true) или новая подстрока должна унаследовать атрибуты первого заменённого символа (false). По умолчанию false, если string является строкой Lua или числом; в противном случае по умолчанию true.
    Returns
    • копия объекта hs.styledtext с указанной заменой подстроки в исходном объекте или nil, если произошла ошибка
    Notes
    • starts и ends следуют соглашениям i и j для функции Lua string.sub, за исключением того, что starts должен ссылаться на индекс, предшествующий или равный ends, даже после корректировки отрицательных и вне диапазона индексов.

    • См. документацию описания модуля (help.hs.styledtext) для описания формата таблицы атрибутов

    Source extensions/styledtext/libstyledtext.m строка 1133
    setStyle
    Signature hs.styledtext:setStyle(attributes, [starts], [ends], [clear]) -> styledText object
    Type Method
    Description

    Возвращает копию объекта hs.styledtext с изменениями его атрибутов, указанными в таблице attributes.

    Parameters
    • attributes - таблица пар ключ-значение атрибутов, которые нужно применить к объекту между позициями starts и ends
    • starts - необязательная позиция индекса в тексте объекта hs.styledtext , указывающая начало подстроки для установки атрибутов. По умолчанию 1, начало текста объекта. Если это число отрицательное, оно подсчитывается назад от конца текста объекта (например, -1 — последняя позиция символа).
    • ends - необязательная позиция индекса в тексте объекта hs.styledtext , указывающая конец подстроки для установки атрибутов. По умолчанию длина текста объекта. Если это число отрицательное, оно подсчитывается назад от конца текста объекта.
    • clear - необязательный логический тип, указывающий, следует ли полностью заменить существующие атрибуты (true) или добавить/изменить их (false). По умолчанию false.
    Returns
    • копия объекта hs.styledtext с применёнными указанными атрибутами к заданному диапазону исходного объекта.
    Notes
    • starts и ends следуют соглашениям i и j для функции Lua string.sub.

    • См. документацию описания модуля (help.hs.styledtext) для описания формата таблицы атрибутов.

    Source extensions/styledtext/libstyledtext.m строка 948
    sub
    Signature hs.styledtext:sub(starts, [ends]) -> styledText object
    Type Method
    Description

    Возвращает подстроку, включая атрибуты стиля, заданные указанными индексами из объекта hs.styledtext. Имитирует функцию Lua string.sub.

    Parameters
    • starts - позиция индекса в тексте объекта hs.styledtext , указывающая начало подстроки для возврата. Если это число отрицательное, оно подсчитывается назад от конца текста объекта (например, -1 — последняя позиция символа).
    • ends - необязательная позиция индекса в тексте объекта hs.styledtext , указывающая конец подстроки для возврата. По умолчанию длина текста объекта. Если это число отрицательное, оно подсчитывается назад от конца текста объекта.
    Returns
    • объект hs.styledtext , содержащий указанную подстроку.
    Notes
    • starts и ends следуют соглашениям i и j для функции Lua string.sub.
    Source extensions/styledtext/libstyledtext.m строка 1359
    upper
    Signature hs.styledtext:upper() -> styledText object
    Type Method
    Description

    Возвращает копию объекта hs.styledtext со всеми символами латинского алфавита, преобразованными в верхний регистр. Имитирует функцию Lua string.upper.

    Parameters
    • Нет
    Returns
    • копия объекта hs.styledtext со всеми символами латинского алфавита, преобразованными в верхний регистр
    Source extensions/styledtext/libstyledtext.m строка 1311

    © 2014–2017 Hammerspoon contributors
    Licensed under the MIT License.
    https://www.hammerspoon.org/docs/hs.styledtext.html

    Spec-Zone.ru

    Настройки Оффлайн Что нового Помощь О нас
    Spec-Zone .ru
    спецификации, руководства, описания, API