Monkey Studio IDE The way IDEs should be

hlamer's blog

hlamer's picture

PyQt. How to shoot yourself in the foot.

Once upon a time there was a programming language called C. And it had 2 memory management functions: malloc() and free(). But it was too complicated.

Bjarne Stroustrup decided that C memory management should be easier. So he invented C++. In addition tomalloc() and free(), C++ had new, delete, destructors, RAII, auto and shared pointers.

Guido van Rossum found that C++ was also not simple enough. He chose another way and invented Python - a language which doesn't have even malloc() or free().

Meanwhile Norwegian trolls created the C++ GUI library Qt. It simplifies memory management by deleting objects automatically when it thinks the objects are not needed.

A man called Phil Thompson was upset that a cool library like Qt doesn't exist in the excellent Python language. He combined them in the PyQt project. But it is not so easy to combine different memory management paradigms. Let's see what the pitfalls are.

hlamer's picture

How syntax highlighting works

This article was written 1 year ago. I finally found the time to translate it to English

If you are a programmer, you spend a significant amount of your time coding. It doesn’t matter how many buttons or menus or IDE or editor has, the core is a code editor component. Do you know how it works?
This article explains how syntax highlighting in Qutepart (and katepart) works. The article is not about UI, but about the architecture. If you are interested, lets go..

hlamer's picture

Enki editor release for Windows

Windows release of Enki is finally out! Thanks to Bryan A. Jones, who has done the majority of work.

Except this, release 14.03.0 contains a lot of bugfixes and improvements.
Download Windows and Linux releases from official site.

hlamer's picture

Qutepart - new code editor component for Enki

What is the most important part of a car? I guess an engine. And what is the most important part of text editor or IDE?
I guess a text editor component.

For many years Monkey Studio had been using QScintilla. Enki, derived from MkS, also used to use QScintilla in the first release. And we never have been happy with it. In fact, we have been hating it, but, there are no alternatives for Qt.

Now this problem is resolved for Enki. I created own code editor component - Qutepart

hlamer's picture

The first public release of Enki

I started mksv3 project 2 years ago. It those time, it was not clear if it will be next version of MkS or separate project.
You can read about it here

Now the project got it's own name: Enki, and it's own website:

During 2 years I've made few releases. But, project was mentioned only here and in few mailing lists. I didn’t do any public announcements. Because the project was not ready. Not better, than other text editors. But, now I think it is right time. This is already not a prototype, but really useful software.

10 August 2012. Enki birthday!

hlamer's picture

mksv3. The beginning

After more than 1 year of work I'm happy to release the first version of mksv3
This post explains, what is mksv3, and why doest it exist.

hlamer's picture

mksv3: New file associatons

I just finished file associations for syntax highlighting.
New features:

  • It is possible to switch current language
  • mksv3 is able to detect programming language of file by its first line, even if file name does not contain suffix. I.e. mksv3 main file called mksv3. Without .py, but, it contains #!/usr/bin/env python, so, will be recognised as Python file. Thanks Juffed for the idea

hlamer's picture

The best IDE file browser


Some time ago I noticed, that I dislike our File Browser ui. It takes too lot of free space, and there are too lot of buttons, but I never use them.
I decided to improve the UI...

Syndicate content