• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

sile-typesetter / sile / 14334874064

08 Apr 2025 01:31PM UTC coverage: 59.535% (-3.5%) from 63.083%
14334874064

push

github

web-flow
Merge pull request #2259 from Omikhleia/fix-hyphen-minima

Fix hyphen minima logic and update several hyphenation patterns

21 of 34 new or added lines in 14 files covered. (61.76%)

941 existing lines in 51 files now uncovered.

12856 of 21594 relevant lines covered (59.54%)

2362.76 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

44.0
/packages/inputfilter/init.lua
1
local base = require("packages.base")
1✔
2

3
local package = pl.class(base)
1✔
4
package._name = "inputfilter"
1✔
5

6
function package:transformContent (content, transformFunction, extraArgs)
1✔
UNCOV
7
   local newContent = {}
×
UNCOV
8
   for k, v in SU.sortedpairs(content) do
×
UNCOV
9
      if type(k) == "number" then
×
UNCOV
10
         if type(v) == "string" then
×
UNCOV
11
            local transformed = transformFunction(v, content, extraArgs)
×
UNCOV
12
            if type(transformed) == "table" then
×
UNCOV
13
               for i = 1, #transformed do
×
UNCOV
14
                  newContent[#newContent + 1] = transformed[i]
×
15
               end
16
            else
17
               newContent[#newContent + 1] = transformed
×
18
            end
19
         else
20
            newContent[#newContent + 1] = self:transformContent(v, transformFunction, extraArgs)
×
21
         end
22
      else
UNCOV
23
         newContent[k] = v
×
24
      end
25
   end
UNCOV
26
   return newContent
×
27
end
28

29
function package.createCommand (_, pos, col, lno, command, options, content)
1✔
UNCOV
30
   local position = { lno = lno, col = col, pos = pos }
×
UNCOV
31
   return SU.ast.createCommand(command, options, content, position)
×
32
end
33

34
function package:_init ()
1✔
35
   base._init(self)
1✔
36
   self:deprecatedExport("createCommand", self.createCommand)
1✔
37
   self:deprecatedExport("transformContent", self.transformContent)
1✔
38
end
39

40
package.documentation = [[
41
\begin{document}
42
The \autodoc:package{inputfilter} package provides ways for class authors to transform the input of a SILE document after it is parsed but before it is processed.
43
It does this by allowing you to rewrite the abstract syntax tree representing the document.
44

45
Loading \autodoc:package{inputfilter} into your class with \code{class:loadPackage("inputfilter")} provides you with two new Lua functions: \code{transformContent} and \code{createCommand}.
46
\code{transformContent} takes a content tree and applies a transformation function to the text within it.
47
See \href{https://sile-typesetter.org/examples/inputfilter.sil} for a simple example, and \href{https://sile-typesetter.org/examples/chordmode.sil} for a more complete one.
48
\end{document}
49
]]
1✔
50

51
return package
1✔
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc