Greetings All - I'd say I write some pretty solid C++ code, but I haven't the first clue where to start if I wanted to play with the LyX code, let alone contribute to the project. I looked around the website but I couldn't find what I was looking for. Links to any of the following information would be greatly appreciated, and information on the LyX web page (ideally linked on this page: http://www.lyx.org/Development or the wiki) for "Orientation for a New LyX Developer" would be perfect. My major questions include:
0) LyX is written in C++. That much is clear from the website, and the Developer Resources seem to have lots of guidance for learning good C++ style. 1) In what toolkit is LyX written? It appears to be Qt, but then I read stuff suggesting that GTK is also supported. I've also read ancient discussions about something that looked like an abstraction layer between the LyX Core and the frontend, so that GTK and Qt frontends could coexist, but that sounds crazy...? 2) Could you recommend a good set of resources for learning the toolkit(s) listed in answering 1? Obviously Trolltech (*cough* Nokia) has good documentation. GTK is a little less well documented, but I've found some good starting points. 3) How do I use svn? Seriously, I've only worked on my own projects on my own machine. A link to a simple primer for this would be great. 4) How is the project divided into the source files? For example, if I wanted to play with the GUI I would probably not look in any files labeled 'io', but do we have any more guidance than that? Alternatively, does the repository itself contain pointers to aid in navigating the source? (Is that even possible with svn?) Answers to any and all of these questions would be great. If I get some good feedback, I may even try to contribute my findings to the wiki. :] David