It has been a really long long long time since my last post and I'm really sorry for that, but I have good news! I finally managed to build Jake-PyQT4 on both Windows and Linux platforms, and create a single executable file that can be run without having to install Python, PyQt4, Xlib, pyHook, PyWin32 nor any other dependency! Isn't that great?
I'm sorry for Mac users, but right now I'm trying to release for Windows and Linux. But don't worry, code runs just fine, so the only show-stopping "bug" is an app that will let me create a single standalone file that could be ran on Mac OS. I don't know how exactly does Mac manages executable files, but I'm looking at py2app. You'll soon have a release too ;)
Here goes some info. The executable file for Linux was made with cx_Freeze and MakeSelf and it's final size is 4,8mb. On Windows the executable file was created with cx_Freeze, 7z and SFX 7z module, I'm still having some small problems with UPX, but that isn't that important as this only causes a little bigger size (we're talking about ~1mb)
And here goes the full list of changes that I made since my last post:
* Some fixes in the TAB autocompleter. Several crashes were fixed.
* A lot of fixes in the locale system. Missing imports, some strings weren't unicode, etc.
* Now skins and folders can be stored in users folder. This way users can create their own plugins/skins and test them.
* Some more changes in the config system. Most of them related to the combo control.
* I worked for a week on an updated, but it seems that I won't be able to make Jake-PyQT4 autoupdate itself. The best that I can do for now is to show a message telling the user that there is an update, a short description of the update and a button to download the update. Maybe the download will be made by my own QDownloader.
* I moved pyXhook and pyHook outside of Jake-PyQT4. Now if you want to run from source you'll have to read the INSTALL file and install all dependencies.
* Nanotube finally upgraded pyHook and made it compatible with Python 2.7 Thanks!
* Some problems with the focus on Windows were fixed, but there might be left one. Please test when you get binaries, and report.
* Red, Green and Blue skins were removed because they don't look good (for now). As soon as they look good they will be merged again.
* I wrote my own svn2log script. You can have a look at the output of that script here. This way you can track all the changes that I make.
I hope you're wishing to test my app! It will be here in a few days :)
I'll write again when I'll be releasing it. Until then, have fun.
Bye!
Mostrando entradas con la etiqueta skins. Mostrar todas las entradas
Mostrando entradas con la etiqueta skins. Mostrar todas las entradas
jueves, 9 de septiembre de 2010
domingo, 15 de agosto de 2010
Tons of new features
A lot of new thing were implemented during the whole week! Both Andrew and me made ~30commits/day and result is impressive. This is what we did:
* Translation system major fixes. Now each plugin has it's own translation method, and also, if no locales were detected, a global fake-locale system will be used. Fixes in how strings were managed (now everything is done using unicode).
* Spanish locales. Yes! Andrew spent a day translating all plugins and main app, and now we have Jake-PyQT4 in Spanish! Test it, and report bad translated words, please.
* TAB fancy sorting. Using TAB to auto-complete commands is handy, but seeing available commands is a must-have feature too. Sadly, available commands were shown as a list of commands, separated by one white space. That was really hard to read. Now, using QFontMetrics, Jake-PyQT4 is able to print those commands in a really nice html table (just like Unix shell).
* Pastebin lib and Pastebin plugin were made. I use pastebin a lot, and I hate having to open my browser, go to www.pastebin.com, paste the text, and copy the link. So, I made use of pastebin APIs.
* More skins were added. Now we have black (as default), green, red, blue and white. Those skins were made in less than 15 minutes, so don't except any breath-taking design. QSS (skin system) is really powerful, but I'm not a designer. That's why I need a designer. If you're interested, please mail me.
* Multi-line commands were implemented. This was a blocking bug for Pastebin plugin.
* Major speed improvements. Stop using .toPlainText() all the time. More improvements are comming!
* In SVN: everything was moved to trunk folder. And two new folders were created (tags and branches). Forum guides on how to get Jake-PyQT4 were updated according to those changes, so, please go to forums and check them.
Currently, I'm working on the config system. There are some bugs that I saw, and I'd like to fix them asap. Once done, I'll be doing more libs & plugins.
A stable 1.0 version will be available really soon. Still no release date, but "soon" means soon, for real.
I'll write when config system is done, until then have a good time!
Bye!
* Translation system major fixes. Now each plugin has it's own translation method, and also, if no locales were detected, a global fake-locale system will be used. Fixes in how strings were managed (now everything is done using unicode).
* Spanish locales. Yes! Andrew spent a day translating all plugins and main app, and now we have Jake-PyQT4 in Spanish! Test it, and report bad translated words, please.
* TAB fancy sorting. Using TAB to auto-complete commands is handy, but seeing available commands is a must-have feature too. Sadly, available commands were shown as a list of commands, separated by one white space. That was really hard to read. Now, using QFontMetrics, Jake-PyQT4 is able to print those commands in a really nice html table (just like Unix shell).
* Pastebin lib and Pastebin plugin were made. I use pastebin a lot, and I hate having to open my browser, go to www.pastebin.com, paste the text, and copy the link. So, I made use of pastebin APIs.
* More skins were added. Now we have black (as default), green, red, blue and white. Those skins were made in less than 15 minutes, so don't except any breath-taking design. QSS (skin system) is really powerful, but I'm not a designer. That's why I need a designer. If you're interested, please mail me.
* Multi-line commands were implemented. This was a blocking bug for Pastebin plugin.
* Major speed improvements. Stop using .toPlainText() all the time. More improvements are comming!
* In SVN: everything was moved to trunk folder. And two new folders were created (tags and branches). Forum guides on how to get Jake-PyQT4 were updated according to those changes, so, please go to forums and check them.
Currently, I'm working on the config system. There are some bugs that I saw, and I'd like to fix them asap. Once done, I'll be doing more libs & plugins.
A stable 1.0 version will be available really soon. Still no release date, but "soon" means soon, for real.
I'll write when config system is done, until then have a good time!
Bye!
miércoles, 14 de julio de 2010
So, what can I do with this?
As I said in my last post, plugins can/will do almost anything.
A really simple example is a search in google:
Nothing special, but really quick. Think about using this instead of having to open a web browser. Jake-PyQT4 is as quick as hitting the global hide/show key (by default F8) and typing the search command. Also, as every unix/linux console, Jake-PyQT4 has the ability to autocomplete commands.
At start up the plugin system searches for all plugins, then makes them declare what commands do they accept and stores them. After that, you can easy access all of them with the autocomplete button (TAB by default).
Let's see another example! Searching photos:
Pretty cool. Well, also you can change how does every query looks like. You can change every single data color. Oh, best thing is that every plugin can have it's own query style. You're able to make !google to output everything in green, !google-images to output images size in red, images format en blue, images description in yellow, etc.
If you're thinking in a complex file-edit based config system, you're totally wrong. All that is done using a dynamically created configuration window dialog. Every plugin can have it's own array-of-options code block, and when that plugin calls plugin system's dialog, that array-of-options code block will be parsed and a dialog will be created according to those options. This way all plugins can use the same config dialog. I know you wanna some screenshots, don't you?
Finished looking the configuration dialog and wondering what are all those options? Yes! Exactly! !google-images supports everything that a normal search in google images can offer you. You can sort images by their type, size, color, style...
(A little bug, configuration window tabs are looking somehow bad, but don't worry, I'll fix that ASAP)
Another great thing about Jake-PyQT4 is that you can have as much console's as you wish! It's tab based. Look again on one of the screenshots. You'll notice that there is a little minus button at the left down edge, and a little plus button at the right down edge. Those are used to remove and add tabs. You can also remove tabs by clicking the little red cross on the right size of each tab.
Finally, the general appearence of Jake-PyQT4 is not hard-coded, so don't worry if you don't like transparency. You'll be able to choose the skin that you most love, or even make our own skin, as Jake-PyQT4 skin system is QSS based.
That's all for today! I'll post again tomorrow or maybe friday.
Bye
A really simple example is a search in google:
Nothing special, but really quick. Think about using this instead of having to open a web browser. Jake-PyQT4 is as quick as hitting the global hide/show key (by default F8) and typing the search command. Also, as every unix/linux console, Jake-PyQT4 has the ability to autocomplete commands.
At start up the plugin system searches for all plugins, then makes them declare what commands do they accept and stores them. After that, you can easy access all of them with the autocomplete button (TAB by default).
Let's see another example! Searching photos:
Pretty cool. Well, also you can change how does every query looks like. You can change every single data color. Oh, best thing is that every plugin can have it's own query style. You're able to make !google to output everything in green, !google-images to output images size in red, images format en blue, images description in yellow, etc.
If you're thinking in a complex file-edit based config system, you're totally wrong. All that is done using a dynamically created configuration window dialog. Every plugin can have it's own array-of-options code block, and when that plugin calls plugin system's dialog, that array-of-options code block will be parsed and a dialog will be created according to those options. This way all plugins can use the same config dialog. I know you wanna some screenshots, don't you?
Finished looking the configuration dialog and wondering what are all those options? Yes! Exactly! !google-images supports everything that a normal search in google images can offer you. You can sort images by their type, size, color, style...
(A little bug, configuration window tabs are looking somehow bad, but don't worry, I'll fix that ASAP)
Another great thing about Jake-PyQT4 is that you can have as much console's as you wish! It's tab based. Look again on one of the screenshots. You'll notice that there is a little minus button at the left down edge, and a little plus button at the right down edge. Those are used to remove and add tabs. You can also remove tabs by clicking the little red cross on the right size of each tab.
Finally, the general appearence of Jake-PyQT4 is not hard-coded, so don't worry if you don't like transparency. You'll be able to choose the skin that you most love, or even make our own skin, as Jake-PyQT4 skin system is QSS based.
That's all for today! I'll post again tomorrow or maybe friday.
Bye
Suscribirse a:
Entradas (Atom)