Horus IDE

Top  Previous  Next

Tempelbauer has created a fantastic lite-C editor. Read on to learn all there is to know about it.


Q: What is HorusIDE and why did you decide to create it?

A: HorusIDE is a code-editor for Lite-C and Web-Development. I started the development of Horus just for fun as a simple and stupid text-editor. After I was upset of most HTML-Editors (in every tool I missed some features), I decided to extend the editor for Web-Development (HTML, CSS, JS, SQL, PHP). After some time I discovered the need of the GameStudio-Community for a useful IDE. Of course it's possible to create cool games with SED, but its features are limited. So, Horus is an attempt to create an easy-to-use and powerful tool for coding games and websites. And nowadays, it is more than an editor for me: it's a passion and it became a part of my portfolio as a software-developer. For this reason I will continue to develop Horus, even if just a very small amount of developers use it in practice.


Q: What are Horus' main advantages in comparison with Gamestudio's script editor?

A: There are several tiny things, that makes coding easier than with SED:

- Special Syntax-Highlighting of GameStudio-specific vars. With one look you can differ from own variables and the GameStudio-vars. This is useful for Lite-C-beginners, as well as experts.

- The code-completion helps to find function names and other symbols, like in most IDEs - and it works project-wide. In SED I haven't discovered such a feature.

- Horus goes deeper in Lite-C than SED: it's possible to copy declarations and prototypes or jump to function-definitions.

- Advanced organizing features help to keep an overview of your code (like Code Regions or Inline-ToDo)

- With the Multiplayer-Run-Button it is possible to start MP-Games faster, because there's no need to modify the command line arguments and the windows get arranged automatically.

To sum up: Horus provides a big amount of SED's features, but some more and better adjusted (for a more smooth workflow).


Q: What programming languages does Horus support at the moment? Do you plan to add more?

A: Yes and no. This depends on the definition of "support". A Syntax-Highlighting of a programming-language is just the base. A useful "support" goes deeper in code analysis like Horus does for Lite-C. I want to keep the focus on the languages around Lite-C (Lite-C, HLSL) and PHP (PHP, HTML, CSS, JS, SQL) and perfect the support by adding language-related and analyzing features. Just a highlighting for other languages is easy to implement, but time consuming and (currently) not my priority. For other languages (like Python or C#) there are good IDEs available. I don't want to create a second Eclipse, but a specialized and well-rounded editor. And if there is enough feedback and need for this, I still have the option to open the editor for other developers (by introducing a plugin system).


Q: What does the web browser window do and how can it help us?

A: The Webbrowser-Window is not needed for Lite-C-Development, but very useful for web development in Horus. If the you enable the AutoSync of the Browser (which is enabled by default), you will see what you do whenever you save the file. And if you combine it with the automatic file saving (in the document-toolbar), you'll see it immediately. Thus, the Webbrowser window allows Live-Coding for PHP and HTML (just like Acknex for shaders when the AUTORELOAD-Flag is set).


Q: How does the "code snippets" feature work?

A: Code Snippets is a new feature in the upcoming version 2.1 of Horus. You can add some piece of code (or just text) to the snippet-database and insert it if you need it. This is useful if you plan to reuse some code parts in other projects, or just to remember about small coding tricks. I use Horus myself for web development and forget some things all the time (i.e. how to embed a flash-video with a HTML5-fallback). With the code snippets feature the solution is just one shortcut away.


Q: What important features are planned for the future?


- Version 2.1 will come with code snippets and some small but nice new features (i.e. highlighting of the current line like in SED) and bug fixes.

- Version 2.2 will be a big and important release for Horus. In this version I plan to unleash the true power of the integrated parser: Project-wide code refactoring for Lite-C, automatic include resolving and some more.

- Version 2.3 will be a smaller release, that mainly improves existing features.

- And with Horus 3 the project management gets reworked: the old SED-style (specifying a project-path in the editor settings) gets removed and the VisualStudio-Style (Solution-File for the project containing multiple projects) gets introduced. This would blend very well with the GameStudio's forecast feature "Creating dynamic link libraries". Additionally, some cooperative features will be implemented (a seamless integrated bug tracker for example) and resource management. But today it's too early to make promises if and when the version gets released. I can just estimate that Horus 3 will come in Spring 2013.


Q: What advice would you give to a beginner who wants to learn programming?

A: Get familiar with the basics of the C-programming language (memory management, pointers, etc) and exercise the Lite-C-Workshops and tutorials. This provides the basic understanding of the programming and what Acknex does. This is required for any further work. No IDE (doesn't matter how good it is) can replace this knowledge.


The programmer is a sculptor who wants to create a masterpiece. It doesn't matter which chisel he uses (SED, Horus or another), with any tool he can reach his aim (that's a matter of taste). But how good the result is depends on the developer's creativity, knowledge, passion and talent.