]> git.lyx.org Git - lyx.git/blob - lib/lyx2lyx/lyxrevert_223.py
add bibtopic support (bug 870).
[lyx.git] / lib / lyx2lyx / lyxrevert_223.py
1 # This file is part of lyx2lyx
2 # -*- coding: iso-8859-1 -*-
3 # Copyright (C) 2003 José Matos <jamatos@fep.up.pt>
4 #
5 # This program is free software; you can redistribute it and/or
6 # modify it under the terms of the GNU General Public License
7 # as published by the Free Software Foundation; either version 2
8 # of the License, or (at your option) any later version.
9 #
10 # This program is distributed in the hope that it will be useful,
11 # but WITHOUT ANY WARRANTY; without even the implied warranty of
12 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13 # GNU General Public License for more details.
14 #
15 # You should have received a copy of the GNU General Public License
16 # along with this program; if not, write to the Free Software
17 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
18
19 import string
20 from parser_tools import find_token
21
22 def rm_end_header(lines):
23     i = find_token(lines, "\\end_header", 0)
24     if i == -1:
25         return
26     del lines[i]
27
28 def convert_spaces(lines):
29     for i in range(len(lines)):
30         lines[i] = string.replace(lines[i],"\\InsetSpace ~", "\\SpecialChar ~")
31
32 def convert_bibtex(lines):
33     for i in range(len(lines)):
34         lines[i] = string.replace(lines[i], "\\begin_inset LatexCommand \\bibtex",
35                                   "\\begin_inset LatexCommand \\BibTeX")
36
37 def rm_tracking_changes(lines):
38     i = find_token(lines, "\\author", 0)
39     if i != -1:
40         del lines[i]
41
42     i = find_token(lines, "\\tracking_changes", 0)
43     if i == -1:
44         return
45     del lines[i]
46
47 def rm_body_changes(lines):
48     i = 0
49     while 1:
50         i = find_token(lines, "\\change_", i)
51         if i == -1:
52             return
53
54         del lines[i]
55
56 def convert(header, body):
57     rm_end_header(header)
58     convert_spaces(body)
59     convert_bibtex(body)
60     rm_tracking_changes(header)
61     rm_body_changes(body)
62
63 if __name__ == "__main__":
64     pass