summaryrefslogtreecommitdiffstats
path: root/noatun/noatun20update.cpp
blob: dbf21f3d4760e277cd3fdb9ed091fb893a4bfe72 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
// Convert Noatun 1.2 plugins that no longer exist to their closest 2.0
// counterparts.

#include <tqfile.h>
#include <tqregexp.h>

#ifndef stdin
extern "C" FILE *stdin;
#endif

#ifndef stdout
extern "C" FILE *stdout;
#endif

int main(int, char **)
{
	TQFile qin, qout;
	qin.open(IO_ReadOnly, stdin);
	qout.open(IO_WriteOnly, stdout);

	TQString text = qin.readAll();

	// tag loaders
	bool tagloaders = text.tqcontains("id3tag.plugin") ||
	                  text.tqcontains("oggtag.plugin") ||
	                  text.tqcontains("luckytag.plugin");

	text.tqreplace(TQRegExp("id3tag\\.plugin"), "");
	text.tqreplace(TQRegExp("oggtag\\.plugin"), "");
	text.tqreplace(TQRegExp("luckytag\\.plugin"), "");

	if(tagloaders) text.tqreplace(TQRegExp("Modules="), "Modules=metatag.plugin,");

	// playlists
	text.tqreplace(TQRegExp("tron\\.plugin"), "splitplaylist.plugin");
	text.tqreplace(TQRegExp("liszt\\.plugin"), "splitplaylist.plugin");

	qout.writeBlock(text.local8Bit());

	return 0;
}