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 - updated 2014), 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 mean-time, and in the true spirit of Linux cooperation 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 Mint platform recommended. However, there is no
guarantee that they will work on other Gnome-2-compatible distros.

Python, together with its web kit, comes installed with all the latest versions of Mint, so no further installation should be required.

Click HERE for a visual explanation of why Ubuntu was dropped in favour of Linux Mint!

Stack Template

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.

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.

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.

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 Mint, 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

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 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

Click on the link above for further details

Click on the link above for further details

Click on the link above for further details

IMPORTANT (see above)

IMPORTANT:

To date, Linux Mint does not run
Python programs off its own bat.
It therefore does no harm to kill all
Python processes.

However, if you are using a Gnome-
compatible Linux other than Mint, it
may indeed run python programs on
its own account, and these should
NOT be killed off. In this demo then,
either avoid clicking on the "Kill"
button and leave the processes open,
or arrange a shell which kills off a
SPECIFIC Python process (in this case
a browser module).