private static NodeType GetNodeType(string line)
{
NodeType node = NodeType.WhiteSpace;
if (line.StartsWith("msgid"))
{
node = NodeType.MsgID;
if (line.StartsWith("msgid_plural"))
node = NodeType.MsgID_Plural;
}
else if (line.StartsWith("msgstr"))
{
node = NodeType.MsgStr;
if (line.StartsWith("msgstr[0] "))
node = NodeType.MsgStrWithBrakets;
else if (line.StartsWith("msgstr[1] "))
node = NodeType.MsgStr_Plural;
else if (line.StartsWith("msgstr["))
node = NodeType.Ignore;
}
else if (line.StartsWith("#"))
{
node = NodeType.TranslatorComment;
if (line.StartsWith("#."))
node = NodeType.ExtractedComment;
else if (line.StartsWith("#:"))
node = NodeType.Reference;
else if (line.StartsWith("#,"))
node = NodeType.Flag;
else if (line.StartsWith("#|"))
node = NodeType.PreviousUntranslatedString;
}
else if (line.StartsWith("\""))
{
node = NodeType.Continued;
}
return node;
}