Revert "Deprecate and ignore newlinestr"

This reverts commit 5af178ac8eb2da79b965be5c6cee693dad602c65.
This commit is contained in:
Cosimo Lupo 2021-08-03 10:00:13 +02:00
parent 01b0180ce1
commit 094a40ca2e
5 changed files with 10 additions and 11 deletions

View File

@ -4,7 +4,6 @@ from fontTools.misc.py23 import byteord, strjoin, tobytes, tostr
import sys
import os
import string
import warnings
INDENT = " "
@ -38,12 +37,10 @@ class XMLWriter(object):
self.file.write('')
self.totype = tostr
self.indentwhite = self.totype(indentwhite)
if newlinestr != "\n":
warnings.warn(
'Setting "newlinestr" is deprecated and will be ignored.',
DeprecationWarning,
)
self.newlinestr = self.totype("\n")
if newlinestr is None:
self.newlinestr = self.totype(os.linesep)
else:
self.newlinestr = self.totype(newlinestr)
self.indentlevel = 0
self.stack = []
self.needindent = 1

View File

@ -159,7 +159,8 @@ class table__g_l_y_f(DefaultTable.DefaultTable):
suffix=ext)
existingGlyphFiles.add(glyphPath.lower())
glyphWriter = xmlWriter.XMLWriter(
glyphPath, idlefunc=writer.idlefunc)
glyphPath, idlefunc=writer.idlefunc,
newlinestr=writer.newlinestr)
glyphWriter.begintag("ttFont", ttLibVersion=version)
glyphWriter.newline()
glyphWriter.begintag("glyf")

View File

@ -271,7 +271,8 @@ class TTFont(object):
tag = tables[i]
if splitTables:
tablePath = fileNameTemplate % tagToIdentifier(tag)
tableWriter = xmlWriter.XMLWriter(tablePath)
tableWriter = xmlWriter.XMLWriter(tablePath,
newlinestr=writer.newlinestr)
tableWriter.begintag("ttFont", ttLibVersion=version)
tableWriter.newline()
tableWriter.newline()

View File

@ -115,7 +115,7 @@ class TestXMLWriter(unittest.TestCase):
writer.write("world")
writer.newline()
linesep = tobytes('\n')
linesep = tobytes(os.linesep) if nls is None else tobytes(nls)
self.assertEqual(
header + linesep + b"hello" + linesep + b"world" + linesep,

View File

@ -354,7 +354,7 @@ class NameRecordTest(unittest.TestCase):
writer = XMLWriter(BytesIO())
name.toXML(writer, ttFont=None)
xml = writer.file.getvalue().decode("utf_8").strip()
return xml.split("\n")[1:]
return xml.split(writer.newlinestr.decode("utf_8"))[1:]
def test_toXML_utf16be(self):
name = makeName("Foo Bold", 111, 0, 2, 7)