I feel like James Kirk or something. #932 is finally fixed.
The patch is completely crazy, but it seems to work.
Will be applied hopefully very soon, if QA approves. :)
Check out an update to the last post about the Ubiquity for Opera project I just started.
This is getting more serious than even I expected. At this point, you can see that it's not like the real thing yet, but it starts to be reasonably cool. For me, this is already past my best expectations.
If you install and try it, please give me your feedback and, most important, if you have some cool commands you want to add, just tell me. Opera's UserJS can't do everything though. They can't access remote sites via
XMLHttpRequest because of security reasons.
But even with this limitation, I think the result is worth a try. Anyway, I realize that the power of Ubiquity is really the power of the Opera's location bar and custom searches, which are already builtin in every Opera standard browser :-)
There's one really nice feature in the
translate command, and it's that it can automatically translate for you 3 kind of inputs:
- the text you enter at the prompt
- if no text, the selected text on the originating page
- if still nothing, the current window (by URL)
This solves all my translation needs! :-)
Command list follows:
I think Ubiquity is a pretty cool project, probably a bit overrated, but …
I thought it would be nice to try to build something like that for Opera, and learning UserJS along the way.
I managed to get the basics working. Right now, there's only one command,
tran-no which takes you to the Google Translate page from Norwegian to English. If you have selected some text before bringing up "Ubiquity" (
CTRL + SPACE), then typing
ENTER will translate that text for you.
Now I was trying to make it replace the text inline inside the page, instead of popping up a new tab with the Google Translate window. It seems that is somewhat harder, especially because the text you select might be broken up in several pieces, like:
This might be <b>your text</b>, so how do you replace it?
Here it is: ubiquity.js