Yes, I know NP++ is not available for linux.
Yes, I know there is alot of free editor under linux.
Yes, I know about Wine; no it's not a good solution.
Yes, I'm that obstinated: I need N++ under linux.
Many people ask for a linux port for a couple of years.
I know it's not an easy job.
But if a couple of us would make a money pot, would it be possible to hire someone to do it ?
*********
I've tried
scite, gedit, screem, phpedit, kate, bluefish, nothing make me happy :(
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Apart from that... The problem about a Linux port is that N++ uses Win32 APIs. Which means that:
-either someone rewrites half of the program using cross-platform APIs
-or someone creates Win32 APIs that work under Linux
Both options are very long and difficult. And I'm afraid that hiring someone to do it would be too expensive.
I'm sorry, I understand your problem (I had it once, too, then I abandoned Linux - not only for this reason, but yes, this was one of the reasons). But I'm afraid you'll have to find another solution.
By the way, have you considered a virtual machine? Probably a bad solution, but I think it's worth mentioning...
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Out of curiosity, I have used NP+ll calls for :: APIs from the PowerEditor folde. Rememer that Scintilla can be configured for the GTK environment.
I foundnot more than 250 diferent Windows API, and some 700 sendMessage()/sendDlgItemMessage() occurrences, many for internal messages or for very basic stuff that I'd expect any GUI to offer - get text of a control, add item to a list, and such.
A few calls will be problematic, like thoe about window hooks, file associations and shell integration. They could be left aside for an initial port.
So, while the porting will be extremely tedious, I believe that it is not technically difficult. And dn't forget that Linux does a few things in a definitely more straightforward way than Windows.
An extremely good knowledge of GTK is clearly needed, and this can't be the work of one person. Is it worth the pain? We'd have to ask the people who manage the main distros. Some brands of Unix have Ports Collections and a pool of people to convert things from other Unices. Con't they have it for Wndows apps too?
CChris
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
In all honnesty, I don't see N++ being ported to Linux ever. You might say it's "only" a few hundred API calls and such, but you've clearly not taken into account all the messages that are being treated in almost all classes.
Let's face it, N++ is a Win32 wrapper providing a more user friendly interface to Scintilla.
IMO, if you want N++ on Linux, you're better to start with SciTE on Linux and recode the functionalities one by one. This is probably be much faster than trying to "port" N++ per say.
Another option would be to recode it with Qt, that way it would be portable on all platforms. FYI, there's already a Qt component that wraps scintilla controls:
Yes, I know NP++ is not available for linux.
Yes, I know there is alot of free editor under linux.
Yes, I know about Wine; no it's not a good solution.
Yes, I'm that obstinated: I need N++ under linux.
Many people ask for a linux port for a couple of years.
I know it's not an easy job.
But if a couple of us would make a money pot, would it be possible to hire someone to do it ?
*********
I've tried
scite, gedit, screem, phpedit, kate, bluefish, nothing make me happy :(
You can try with Geany, I hear it's a nice one.
Apart from that... The problem about a Linux port is that N++ uses Win32 APIs. Which means that:
-either someone rewrites half of the program using cross-platform APIs
-or someone creates Win32 APIs that work under Linux
Both options are very long and difficult. And I'm afraid that hiring someone to do it would be too expensive.
I'm sorry, I understand your problem (I had it once, too, then I abandoned Linux - not only for this reason, but yes, this was one of the reasons). But I'm afraid you'll have to find another solution.
By the way, have you considered a virtual machine? Probably a bad solution, but I think it's worth mentioning...
Out of curiosity, I have used NP+ll calls for :: APIs from the PowerEditor folde. Rememer that Scintilla can be configured for the GTK environment.
I foundnot more than 250 diferent Windows API, and some 700 sendMessage()/sendDlgItemMessage() occurrences, many for internal messages or for very basic stuff that I'd expect any GUI to offer - get text of a control, add item to a list, and such.
A few calls will be problematic, like thoe about window hooks, file associations and shell integration. They could be left aside for an initial port.
So, while the porting will be extremely tedious, I believe that it is not technically difficult. And dn't forget that Linux does a few things in a definitely more straightforward way than Windows.
An extremely good knowledge of GTK is clearly needed, and this can't be the work of one person. Is it worth the pain? We'd have to ask the people who manage the main distros. Some brands of Unix have Ports Collections and a pool of people to convert things from other Unices. Con't they have it for Wndows apps too?
CChris
In all honnesty, I don't see N++ being ported to Linux ever. You might say it's "only" a few hundred API calls and such, but you've clearly not taken into account all the messages that are being treated in almost all classes.
Let's face it, N++ is a Win32 wrapper providing a more user friendly interface to Scintilla.
IMO, if you want N++ on Linux, you're better to start with SciTE on Linux and recode the functionalities one by one. This is probably be much faster than trying to "port" N++ per say.
Another option would be to recode it with Qt, that way it would be portable on all platforms. FYI, there's already a Qt component that wraps scintilla controls:
http://www.riverbankcomputing.co.uk/static/Docs/QScintilla2/index.html
Good luck.
joce.