Linux Extensions
As a RAD programming language, and also in terms of the IDE it provides, Livecode, produced by the company
Runtime Revolution, is head and shoulders above the other RAD tools available for Linux in my opinion. However,
as of the date of writing (2011), it is not as fully developed as its Windows and Macintosh counterparts, nor does
it compare favourably in terms of completeness with other RAD systems for Linux. Hopefully, this will be put
right in the not-too-distant future. In the meantime, and in the true spirit of Linux co-operation and sharing, the
Livecode extensions offered below are complemented with modules written in PureBasic and Python as indicated.
The PureBasic modules supplied here are standalones, and should require no installation on the Ubuntu platforms
recommended. However, if any difficulty is encountered, or if indeed you attempt to use these PureBasic modules
on another platform, you can try installing the PureBasic dependencies that may be downloaded HERE.
Python, together with its web kit, comes installed with all the latest versions of Ubuntu, so no further installation
should be required.
The extensions have been tested on Ubuntu 10.10 and Ubuntu 11.10 G3 (click HERE for an explanation of the meaning
of "G3").
Stack Template
Ubuntu 11.10 G3
Ubuntu 11.10 G3
Ubuntu 11.10 G3
Ubuntu 11.10 G3
Ubuntu 11.10 G3
Ubuntu 11.10 G3
Ubuntu 11.10 G3
Ubuntu 11.10 G3
Ubuntu 11.10 G3
Ubuntu 10.10
Ubuntu 10.10
Ubuntu 10.10
Ubuntu 10.10
Ubuntu 10.10
Ubuntu 10.10
Ubuntu 10.10
Ubuntu 10.10
Ubuntu 10.10
= alpha
= beta
= stable
This little stack template can be used instead of an entirely blank new stack, and it has 2
aims:
1) Once saved, if subsequently the file is double-clicked and it opens in Revolution, its
default folder will correspond to the folder it is saved in.
2) Since it contains two functions for the conversion from/to UTF-8 encoding, you do not
need to re-invent the wheel when working with UTF-8 for the purpose of reading/saving
folder/file names, you just have to call the functions.
In order to leave this stack template clean, so that you only need to add to it and not remove
anything, no examples of the use of the UTF-8 functions are included. However, a full
demo illustrating the various uses of these functions appears immediately below.
Click on the link above for further details
Accent-Blind International Bubble Sort
The sorts provided by Livecode for Linux are sensitive to character accents,
which means that when items are sorted into alphabetic order, the result is
effectively two lists, one for the items which begin without accented characters,
followed by another one for the items which begin with accents.
If you require a sort which is "blind" to whether or not the characters are
accented, then you can use the bubble sort given in this example. It will
produce a single list in alphabetical order.
The example provided is applicable to lists in English or Portuguese, but if you
examine the coding you will see that it can be easily adapted to sort items
similarly in any other language.
Click on the link above for further details
UTF-8 Text Editor
I don't know about the other languages, but I have never found a way of directly typing
in Portuguese (with accents) into a Rev/Linux text entry box. For this reason, I came
up with a stack some time ago that you can see here. This Livecode stack uses a
rawKey handler to capture accents when they are typed on a Brazilian ABNT2 keyboard,
a US International keyboard (with dead keys), or a US Keyboard (using a designated
"compose key"). It works well, but it is limited to Portuguese (though you can adapt it
if you have a similar problem in another language).
In contrast, the text entry box shown here is truly international. It automatically adapts
to the keyboard currently in use (even if you change the keyboard layout while you are
running the program). In short, it works just like gEdit for example. As you will see
from the demo, whatever international text you type into the PureBasic box is
immediately transferred to the LiveCode field below it.
Click on the link above for further details
Shell Without Wait
I have lost count of the number of times I have needed to start off another
program, but to execute more coding while the program was still open.
I never succeeded in finding a workaround until a short time ago. Hooray!
I found it on the Internet. Don't ask me why it works, but it does. Prove it for
yourself.
Click on the link above for further details
Web Browser (WebKit engine)
I would say that this web browser is even easier to use than the LiveCode revBrowser for Windows! As you can see, it is written in Python,
which taps into the WebKit engine. Since Python comes installed with all the latest versions of Ubuntu, there is no setup. Rev/Linux
just needs to shell Python with a script, and Bob's your uncle (if you'll forgive the pun). In the demo, I have provided scripts to run browsers
of various types, as you can see by the titles of the scripts on the left. An interesting property I discovered was the ability to make the
browser window bottom-most rather than topmost (i.e. floating underneath all other applications).
If you are a better Python scripter than me (not difficult), perhaps you can produce browsers with even more interesting properties.
Enjoy!
Click on the link above for further details
Web Browser (WebKitGtk library)
This web browser is not quite so versatile as the Python browser shown
above, but it can still be tailored to satisfy your most probable usage.
One advantage is that it comes with an optional close button in the
bottom right-hand corner.
Click on the link above for further details
UTF-8 Compliant Picture Chooser
Just what it says: "UTF-8 Compliant". So if the folder or file names on your HD contain characters with accents, they will be
displayed correctly.
Click on the link above for further details
build 001
build 031
build 038
build 007
build 028
build 030
build 031
UTF-8 Function Demo
build 099
This stack demonstrates the full usage of the two UTF-8 functions included in the Livecode Stack Template above.
It shows you how to save and delete folders and files that are coded in various foreign languages, from Chinese to Icelandic.
It also shows you how to employ UTF-8-encoded language in the messages and buttons of answer dialogues.
Click on the link above for further details
IMPORTANT
Before re-distributing the Chooser,
make sure that the files
_picture_chooser_startup_folder.txt
and
_picture_chooser_choice.txt
are either absent or devoid of content.
Otherwise, the Chooser may freeze
on first usage.
Web Browser Utilities
build 024
The first of these standalone
utility programs (shown on the
right) automates the process of
producing an INI file or a Python
script to call the kind of web
browser you wish to employ.
Thereafter, you can use the other
modules in the kit to 2) call your
web browser using only the INI
file you have created, 3) call your
web browser using only the Python
SCRIPT you have created, or 4)
kill off all Python processes.
Click on the link above for further details