コード例 #1
0
    def testParseOrgTable2Cols(self):
        source = ["| Header | X |", "|------+-----|", "| Content | 1 |", "| 2Content | 21 |"]

        result = OrgParser.parse(source)

        self.assertEqual(result.getCols(0), 2)
        self.assertEqual(result.getRows(), 3)
        self.assertEqual(result.getColumnContent(0,0), "Header")
        self.assertEqual(result.getColumnContent(0,1), "Content")
        self.assertEqual(result.getColumnContent(0,2), "2Content")
        self.assertEqual(result.getColumnContent(1,0), "X")
        self.assertEqual(result.getColumnContent(1,1), "1")
        self.assertEqual(result.getColumnContent(1,2), "21")
コード例 #2
0
def translateOrgToHTMLTables(pCache):
    vNewCache = pCache
    vCacheRange = OrgParser.identifyOrgTable(vNewCache, CacheLocation.getZeroCacheLocation())
    while(vCacheRange.start != None and vCacheRange.start > CacheLocation.getZeroCacheLocation()):
        vOrgTablePart = CacheLocation.getCacheLocation(vNewCache, vCacheRange.start, vCacheRange.end)
        vOrgTable = OrgParser.parse(vOrgTablePart)
        vHTMLWriter = OrgTableHTMLWriter(vOrgTable)
        vCache = vHTMLWriter.parseHTML()
        vNewCache = CacheLocation.replaceCacheLocation(vNewCache, vCacheRange.start, vCacheRange.end, vCache)

        vOriginalLines = vCacheRange.end.getLineNum() - vCacheRange.start.getLineNum()
        vNewLines = len(vCache)
        vDifference = vNewLines - vOriginalLines        

        vCacheLocationEnd = CacheLocation(vCacheRange.end.getLineNum()+vDifference, vCacheRange.end.getIndex())
        vCacheRange = OrgParser.identifyOrgTable(vNewCache, vCacheLocationEnd)


    return vNewCache