Enlightenment.org
-
-

EFL User Guide

-

This is the user guide for non-E17 EFL programs.

1 - Getting Started

This section has the basic information about this guide. In particular please read the disclaimer as the EFL based programs covered in this guide are still under heavy development. If you want to try it out you need to first understand and acknowledge the current development state and the risks involved with using and installing unreleased pre-alpha software.

1.1 - Disclaimer

The Enlightenment Foundation Libraries (EFL) and the various applications (the ones covered in this guide) that are based on them haven't been released yet. The current CVS versions of the various programs/libraries do not represent the final releases and are far from being feature complete and stable. Everything is still under heavy development and none of these libraries and programs are officially supported by the Enlightenment project yet. Some applications and libraries can be broken in CVS sometimes. In other words, don't be suprised if and when you encounter bugs or if something doesn't work correctly. This guide is also under development and we are trying to keep it up to date to reflect how the CVS versions are right now. The authors of this guide and the developers of these libraries and programs are not responsible for any damages caused by following this guide or by using the programs and libraries covered in this guide. The EFL based applications are meant for developers only at the moment.

We have tried to write this guide as error-free as possible, but there may be some errors we haven't noticed. If you notice anything that should be changed, please let us know. These programs and libraries are currently a moving target as they're still under heavy development, so this guide may not always be completely up to date. Most things should be correct and up to date of course though. In most cases if you are wondering about a certain feature and nothing is told about it in this guide, it probably simply doesn't exist yet. Also note that this guide is meant to be read as a book, from the beginning to the end, so if you skip things you might miss some important things that are explained earlier (perhaps even in a section where it doesn't completely belong). Even though it's a bit early for documentation as most things will change before release, the early adopters and testers might find this guide useful :-) Last but not least, we want to emphasize that most of the programs covered in this guide are still in very early development compared to E17 itself, so please take the risks into consideration.

This guide is licenced under Creative Commons Attribution 2.5. The full legal text for the licence can be read here.


1.2 - Credits

This guide is written and maintained by the Get-E.org staff.

If you have any comments, suggestions or perhaps notice that some section of the guide is out of date, please don't hesitate to contact us (in particular, email Valtteri 'vrln' Vainikka). If we don't know something is broken, it's quite difficult to fix it.

1.3 - Status

This guide was last updated on 29.12.2005. Everything should be more or less up to date.

2 - Installation

This section includes everything you need to know about installing the Enlightenment Foundation Libraries and the applications based on them on various distributions.

2.1 - Building Order and CVS Notes

The Enlightenment Foundation Libraries nor the applications based on them that are covered in this guide haven't been released yet and thus you'll either need to get a current development versions directly from CVS. If you don't know what CVS, is, check http://www.nongnu.org/cvs.

In order to be able to build the programs mentioned in this guide, you'll need to install certain (depending on which applications you are going to install) EFL libraries. For build requirements and dependency information, check http://www.rasterman.com/files/efl.png and http://enlightenment.freedesktop.org.

You'll need to follow the EFL diagram to see the dependencies and build orders for the various libraries. If you wish to install all EFL and thus be able to build almost all EFL based programs mentioned in this guide (some may have additional dependencies, which are noted later in this guide), you can use the following build order:

1. e17/libs/eet
2. e17/libs/edb
3. e17/libs/evas
4. e17/libs/ecore
5. e17/libs/embryo
6. e17/libs/imlib2
7. e17/libs/edje
8. e17/libs/epeg
9. e17/libs/epsilon
10. e17/libs/esmart
11. e17/libs/emotion
(note that you'll need to have xine-lib installed as emotion uses it)
12. e17/libs/engrave (this is currently needed for e_utils only)
13. e17/libs/ewl (this is needed for some apps only)
14. e17/proto/etk (this is needed for some apps only)

The number specified is the order in which you need to install the libraries in. The path is the CVS directory where the library is located. You'll need to use this path when you start downloading the libraries/programs with CVS. This order is simply for those who wish to compile all EFL and thus be able to build all EFL apps. The dependencies of individual EFL apps vary. It doesn't matter in which order you install the EFL based programs.

Most of the following applications covered in this guide should build with the above libraries. Please note the CVS directories:

  • e17/apps/entice (image viewer)
  • e17/apps/entrance (login manager)
  • e17/apps/eclair (media player)
  • misc/engage (standalone dockbar and E17 module)
  • misc/erss (RSS feed application that does not work correctly in E17)
  • e17/apps/elicit (color picker/screen magnifier)
  • misc/embrace (mail checker and E17 module)
  • e17/proto/entropy (file manager)
  • e17/proto/exhibit (image viwer)
These aren't all the EFL based applications, just some of the most popular ones. Again, note the CVS directory paths - you'll need them when you start downloading these programs from CVS.

Now you will need to download all the EFL based programs that you want one by one using CVS. Make sure you download all dependencies as well. If you don't want to check the EFL dependency graph to see which EFL libraries you require, you can download every library that was mentioned in the beginning of this section. This for example will download the Eclair media player:

$ cvs -d:pserver:anonymous@anoncvs.enlightenment.org:/var/cvs/e login
$ cvs -z3 -d:pserver:anonymous@anoncvs.enlightenment.org:/var/cvs/e co e17/apps/eclair

In order to build the EFL libraries and these EFL based programs from CVS you will need a sane build environment including the following:

  • m4
  • autoconf
  • automake (1.7 or greater)
  • libtool
  • pkg-config
  • textinfo
  • gettext

The following is a list of general, non distro-specific, dependencies for building the EFL libraries. Your distribution may have these dependencies named differently.

  • eet: depends on zlib and jpeg
  • edb: depends on xorg-x11/xfree86, optional dependencies on db, gtk and ncurses
  • evas: depends on automake and libtool, optional depencies on X11-LIBS, directfb, opengl, cairo, libpng, jpeg, eet and valgrind
  • ecore: depends on eet and evas, optional dependencies on openssl, X11-LIBS, directfb
  • embryo: depends on automake and libtool
  • imlib2: depends on libtool, tiff, libpng, zlib, jpeg, libungif, freetype2 and X11-LIBS
  • edje: depends on embryo and ecore
  • epeg: depends on automake, libtool and jpg
  • epsilon: depends on libpng, imlib2 and epeg
  • esmart: depends on ecore, edje and epsilon
  • emotion: depends on xine-lib and python
  • engrave: depends on edje
  • ewl: depends on edje, edb, ecore, evas and etox
  • etox: depends on ecore
First you will need to install all the EFL libraries in the correct order. After this you can start installing the individual EFL based applications that you wish to install. You are probably already familiar with the following basic steps:
$ ./autogen.sh
$ ./configure --help
# See if there are any configure options you'd like to set, for example if you
# want to install it to somewhere else than /usr/local, you'll need to run
# configure with the right switch.
$ make
# and finally as root:
$ make install

If you don't set any special configure options, the EFL and the EFL based programs that you wish to install will be installed to /usr/local.

Also make sure you have the right paths configured in /etc/ld.so.conf. For example if you install the EFL to /usr/local you should also add that directory to /etc/ld.so.conf and run ldconfig as root to create the necessary links and cache to the most recent shared libraries found in the directories specified in the config file. Note that you'll need to run ldconfig as root after every library that you install to the custom directory that you specified in /etc/ld.so.conf!

Once you have installed the necessary Enlightenment Foundation Libraries, you probably also want to also install some EFL based applications covered in this guide.

The CVS tree directories for the applications covered in this guide are:

  • e17/apps/entice
  • e17/apps/entrance
  • e17/apps/elicit
  • e17/apps/eclair
  • misc/erss
  • misc/engage
  • e17/proto/entropy
  • misc/embrace
  • e17/proto/exhibit

The Evidence file manager is not on the same CVS server address as the rest of the covered programs are. In order to download Evidence, you'll need to use the following commands:

cvs -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/evidence login
cvs -z3 -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/evidence co evidence

This should create a directory called "evidence" within the directory from which you ran these commands.

For all other applications, the commands you'll need to use is this (this for example would download Entice):

$ cvs -d:pserver:anonymous@anoncvs.enlightenment.org:/var/cvs/e login
$ cvs -z3 -d:pserver:anonymous@anoncvs.enlightenment.org:/var/cvs/e co e17/apps/entice

The following is a list of some general, non distro-specific, dependencies for building these EFL-based applications Your distribution may have these dependencies named differently. We will be updating this list soon.

  • entice: depends on edb, eet, imlib2, imlib2_loaders, evas, ecore, edje and esmart
  • elicit: depends on esmart and edje
  • eclair: depends on taglib, esmart, libxml2, emotion, gtk2, sqlite3
  • erss: depends on libxml2, edje, esmart, etox
  • engage: depends on esmart, ewl, examine

In order to install the program, you'll need to do the standard:

# as a user account
$ ./autogen.sh
$ ./configure --help
# See this for compile options you might want and set them by running
# configure with the switch you want.
$ make
# and finally as root
$ make install

By default everything is installed into "/usr/local".

Note: if you want to install E17 in a prefix other than the usual ones (for example in your /home dir) then you'll need to set up your CPPFLAGS and LDFLAGS before running configure. For example you can export them:

export CPPFLAGS="$CPPFLAGS -I/your/prefix/to/e17/include"
export LDFLAGS="$LDFLAGS -L/your/prefix/to/e17/lib"

2.2 - Distro specific section

This section contains various distribution related notes and has links to known unofficial package repositories.

Debian:

There's an unofficial E17/EFL package repository maintained by Blake Barnett (shadoi) for Debian Sid (unstable). See http://shadoi.soulmachine.net for more details. Shadoi is a member of the Enlightenment team, his focus is Debian packaging. If you have any questions regarding the packages, please contact him directly.

If you wish to compile E17/EFL (and a few other EFL based applications) manually under Debian Sid, depending on what you wish to install, you'll most likely need to apt-get some or all of these in order to have an environment where the programs/libraries can be correctly built:

libtag1c2 libtagc0 libxml2-dev libxml2 cvs autoconf automake1.7 gettext libtool libfreetype6-dev libjpeg62-dev libpng3-dev libtiff4-dev
libungif4-dev libbz2-dev libltdl3-dev pkg-config libxine-dev build-essential flex bison sqlite3 libgtk2.0-dev libsqlite3-dev libXxf86vm-dev

We are not 100% sure about this list though, but at one staff member has managed to build all EFL/E17/EFL based applications that are covered in this guide after installing those packages on Ubuntu (which is based on Debian Sid) - some of these dependencies may not be really needed though. If you notice something that should be fixed in that list or perhaps notice that it's missing something, please contact us.

If you wish to compile under Debian Sarge, use the above list of dependencies, and add:

libxcursor-dev libxrender-dev 

Fedora Core:

There is an unofficial E17/EFL RPM repository maintained by Didier F.B. Casse (Prodigy) at http://sps.nus.edu.sg/~didierbe. Prodigy is a member of the Enlightenment team where he's responsible for Fedora Core packaging. Please contact him directly if you have any questions regarding these packages. If you have any questions about these packages, please email Didier F.B. Casse directly.

Foresight Linux:

The Foresight Linux community has set up some wiki pages with some distro-specific Enlightenment related information. Check http://wiki.foresightlinux.com/index.php/Enlightenment for English information. There's also a German page at http://wiki.foresightlinux.com/index.php/Enlightenment_Deutsch. Note that these sites are not related to us, nor do we have any control over their content, so if you have any comments about them, contact the Foresight Linux team directly.

Gentoo:

There are ebuilds in Portage for all EFL and most programs that use them. In addition to snapshots that are updated every few weeks, there are also live CVS ebuilds available. This can sometimes change though, sometimes there are only CVS ebuilds available for certain libraries/programs. Check the Gentoo package database to see the current situation. All CVS ebuilds have sudo as a dependency, so it will also be installed if you use the CVS ebuilds. It can be considered to be a security risk. The default sudo config file should not allow much though, so unless you edit it to allow insecure stuff it shouldn't be a problem on normal non mission-critical desktop systems. This is of course a question of opinion so you'll have to decide for yourself if you consider it a risk. Another thing you should know is that the CVS ebuilds obviously don't check md5sums. The CVS ebuilds will also use root for all steps of the installation and may not always work, depending on the current CVS situation. The snapshot ebuilds are only updated if nothing is seriously broken.

The CVS ebuilds are marked with the -* keyword while the snapshots are marked ~arch. Obviously neither the snapshots or the CVS ebuilds are marked stable. These ebuilds are maintained by Mike Frysinger (vapier@gentoo.org). If your whole system is set to ACCEPT_KEYWORDS="~arch", you of course won't have to make a /etc/portage/package.keywords file if you wish to use the snapshots, but if you want to use the CVS ebuilds you will have to use one.

Please read the official Gentoo Portage documentation for more precise information on Gentoo's package manager and especially the keyword system. Here is an example /etc/portage/package.keywords configuration file, which includes CVS keywords for the EFL and most applications based on them:

x11-wm/e -*
x11-misc/engage -*
x11-libs/ewl -*
x11-libs/evas -*
media-libs/imlib2 -*
dev-libs/eet -*
dev-db/edb -*
x11-libs/ecore -*
media-libs/etox -*
media-libs/edje -*
dev-libs/embryo -*
x11-libs/esmart -*
media-libs/epsilon -*
media-libs/epeg -*
app-misc/examine -*
net-news/erss -*
x11-misc/entrance -*
app-misc/evidence -*
media-libs/emotion -*
media-gfx/elicit -*
media-gfx/entice -*
dev-libs/engrave -*
media-video/eclair -*
If you wish to use the snapshots instead, and are running a stable (arch) system, replace the -* with ~arch. For most people (those using Intel compatible 32 bit x86 processors) this means ~x86. Note that you should not mix -* and ~x86 ebuilds. Another important thing to remember is that you need to manually specify the ebuilds in the correct order when you emerge them. This is because if you already have E17 installed, running "emerge e" will only update the E17 window manager itself, and not the EFL - in which case it'll most likely fail to compile. The other reason is because even if you don't have E17 installed, Portage will not emerge the libraries in the correct order if you simply "emerge e" and let Portage take care of the dependencies. The correct build order can be found in the "Building order and CVS notes" (2.1) section of this guide.

If you just want to get all the EFL, you can use this command line and then add the applications you wish to install:

emerge eet dev-db/edb imlib2 evas ecore epeg embryo edje epsilon esmart emotion ewl engrave

Note that sometimes there may not always be ~arch (snapshot) versions of these ebuilds available. The CVS ebuilds (-*) are always available. For those who aren't using the ebuilds, you need to specify a certain version of AUTOMAKE and AUTOCONF. You can add it to the autogen.sh for example:

#!/bin/sh
export WANT_AUTOCONF=2.5
export WANT_AUTOMAKE=1.7

Ubuntu GNU/Linux:

There's an unofficial E17/EFL package repository maintained by Blake 'shadoi' Barnett for Ubuntu Breezy. See http://shadoi.soulmachine.net for more details. Blake 'shadoi' Barnett is a member of the Enlightenment team, where he handles Debian packaging. If you have any questions regarding the packages, please contact him directly.

If you wish to compile the packages yourself (and you're using the current stable release, Ubuntu Breezy Badger 5.10), you'll need to install some (or all if you want to compile everything covered in this guide) of these packages in order to be able to compile everything correctly:

libtag1c2 libtagc0 libtagc0-dev libxml2-dev libxml2 cvs autoconf automake1.7 gettext libtool libfreetype6-dev libjpeg62-dev libpng3-dev libtiff4-dev
libungif4-dev libbz2-dev libltdl3-dev pkg-config libxine-dev build-essential flex bison sqlite3 libgtk2.0-dev libsqlite3-dev libXxf86vm-dev

We are not 100% sure about this list, so some of those packages may not actually be needed, or the list may be missing some packages. We can confirm however that at least under a Breezy default install everything should compile fine if you have those packages installed (but some of those packages may not actually be needed). If you notice that a certain package is missing in this list, or perhaps notice that one of the packages isn't actually required, please contact us.

 

FreeBSD:

Install the following from ports,

 

  • Configgen - ( /usr/ports/devel/configgen )
  • Jpeg - ( /usr/ports/graphics/jpeg )
  • PNG - ( /usr/ports/graphics/png )
*NOTE*
 
The following needs to be done using bash , for some reason not yet known to me the build scripts dont seem to pull in environment vars using csh :\
 
export the following
 
CFLAGS="-lintl -liconv -L/usr/local/lib -I/usr/local/include -L/usr/X11R6/lib -I/usr/X11R6/include"
 
Build libraries and E as described in the guide using the following method,
 
  • configgen.sh
  • ./configure (default prefix is /usr/local/)
  • make
  • make install  


3 - EFL Applications

Under this section you can find separate sections for the most popular EFL based applications.

3.1 - Eclair

Eclair is a media player based on the Enlightenment Foundation Libraries (EFL). It can play both music and video. As you can quess from the screenshot, Eclair's menus are are fully animated, uses various nice effects and can display album covers. It's also fully themable, but there is currently only one non-default theme available. You can open the playlist by clicking on the bottom gold plate - the left one opens the album cover display. Note that you need to have Xine-lib installed as Emotion (the library which Eclair uses for video and audio playback) requires it. Eclair also includes a tool for converting Winamp classic skins to Eclair EDJ skins. In order for the converter to work, you'll need to have ImageMagick and unzip installed. The Eclair project owner is Simon 'moOm' Treny.

Important note: Eclair is currently in a transition phase - it used to use GTK for some menus, but now it is moving to "full" EFL. It will be ported to the ETK widget library soon. Until then, for example, there is no file-selector, so it's impossible to add songs to the playlist via Eclair. It is possible to simply drag and drop music files to the playlist from various file managers like Rox, Evidence or Nautilus though.

Eclair Media Player

$ eclair --help
Usage: eclair [arguments] file(s)

Available arguments:
-h, --help Print this message and exit
-t, --theme Specify an edj theme file for eclair
-g, --gui-engine [software|gl] Specify the gui engine
-v, --video-engine [software|gl] Specify the video engine
-m, --video-module [xine|gstreamer] Specify the video module

Software mode is recommended at this time - the OpenGL engine is still experimental. If you have an Nvidia graphics card and use the official closed source binary drivers, you can try the following trick though:

 $ __GL_SYNC_TO_VBLANK=1 eclair --video-engine gl

This makes Eclair use OpenGL for video playback and it syncs with the screen refresh rate. It should work nicely with most Nvidia cards.

Eclair currently includes one theme in addition to the default one - a purple theme inspired by the G.A.N.T artwork by mattahan. To start Eclair with this theme, you need to specify its path:

$ eclair -t /usr/share/eclair/themes/gant.edj 

If you wish to use your favourite Winamp classic WSZ format skin, you can easily convert it to the EDJ format Eclair uses:

eclair_wsz2edj winamp2_skin.wsz new_eclair_theme.edj 

Like most EFL applications, Eclair is also fully themable via Edje.


3.2 - Elicit

Elicit is a skinable color picker and screen magnifier. The idea is based off of Switch, a very similar app for windows, by Roar, and was used with his permission. Elicit is especially useful for themers or those that often do graphics related work. For example color RGB codes can be easily checked with it. The Elicit project owner is rephorm.

Elicit

Like most EFL applications, Elicit is also fully themable via Edje. Currently there are two themes included: winter and summer. Please also see http://www.rephorm.com/rephorm/code/elicit.


3.3 - Embrace

Embrace is a mail checking application based on the Enlightenment Foundation Libraries with plug-in supprt for maildir, mbox, pop3, imap, and sylpheed type mailboxes. There are two versions of Embrace. There's a standalone version and a module version for E17. If you have E17 installed when you build embrace, it will also compile the module in addition to the standalone version. The Embrace project owner is Tilman Sauerbeck (tilman).

Embrace Configuration Information:

Embrace will install it's configuration file into $(prefix)/share/embrace (/usr/local/share/embrace by default).
Here is an example create_embrace_cfg.sh:
#!/bin/sh

NAME=embrace
CONFIGPATH=~/.e/apps/embrace
DB=$CONFIGPATH/$NAME.db

# generic mandatory attributes:
# * title
# * type => plugin to use
#
# generic optional attributes:
# * interval => poll interval in seconds (default is 60, but plugins
# might override this)
#
# each plugin may read additional attributes:
#
# pop3 and imap: str host, int port, str user, str pass, int ssl (boolean)
# mbox, maildir, imap and sylpheed: str path
# sylpheed: str mailbox, str folder

mkdir -p $CONFIGPATH

edb_ed $DB add /$NAME/theme str "default"
edb_ed $DB add /$NAME/num_mailboxes int 4

edb_ed $DB add /$NAME/mailbox1/title str "inbox"
edb_ed $DB add /$NAME/mailbox1/path str "~/Mail/inbox"
edb_ed $DB add /$NAME/mailbox1/type str "maildir"

edb_ed $DB add /$NAME/mailbox2/title str "e-cvs"
edb_ed $DB add /$NAME/mailbox2/path str "~/Mail/enlightenment-cvs"
edb_ed $DB add /$NAME/mailbox2/type str "mbox"

edb_ed $DB add /$NAME/mailbox3/title str "my pop3 box"
edb_ed $DB add /$NAME/mailbox3/host str "foo.bar.com"
edb_ed $DB add /$NAME/mailbox3/port int 123
edb_ed $DB add /$NAME/mailbox3/type str "pop3"
edb_ed $DB add /$NAME/mailbox3/user str "myuser"
edb_ed $DB add /$NAME/mailbox3/pass str "mypass"
edb_ed $DB add /$NAME/mailbox3/ssl int 1

edb_ed $DB add /$NAME/mailbox4/title str "my imap mailbox"
edb_ed $DB add /$NAME/mailbox4/host str "foo.bar.com"
edb_ed $DB add /$NAME/mailbox4/port int 143
edb_ed $DB add /$NAME/mailbox4/type str "imap"
edb_ed $DB add /$NAME/mailbox4/user str "myuser"
edb_ed $DB add /$NAME/mailbox4/pass str "mypass"
edb_ed $DB add /$NAME/mailbox4/path str "path.to.mailbox"
edb_ed $DB add /$NAME/mailbox4/ssl int 1

3.4 - Engage

Introduction:

Engage is a dockbar based on the Enlightenment Foundation Libraries. There are two versions of Engage. There's a standalone version and a module version for E17. If you have E17 installed while you build it, the module version will be compiled in addition to the standalone version.

Engage E17 module:

Engage Running Under E17

The module Engage currently works as an app-launcher, taskbar and a system tray. You can open the Engage configuration menu by right clicking on Engage. One nice feature (something you probably won't find it if you don't know about it) that's only in the module version is the ability to switch desktops by moving the mousewheel on an icon; the desktop will switch to the one where the application is running. If you have more than one running instance of the application, it'll shuffle between them in a logical way (mousewheel down switches to the lower subicon etc). Future development is focused on the module version. The Engage project owner is Andrew Williams (HandyAndE).

Note that the E17 dependency is optional - if you have it installed the module will be built in addition to the standalone version. If you don't have E17 installed, it will only build the standalone version.

Engage uses EAP icon files in ~/.e/e/applications/all. You can also download EAP files from this site, just check the main menu on the left. One can also edit EAP files with e_util_eapp_edit if you have e_utils (e17/apps/e_utils) and Engrave (e17/libs/engrave) installed. Please see the icons section of this guide for more in-depth information. After you've created some EAP files and moved them to ~/.e/e/applications/all, you'll need to create a ".order" text file in ~/.e/e/applications/bar/engage. This directory doesn't exist by default and isn't created by default - you'll have it make it. The ".order" file is simply a list of EAP files in the order you want them to show up in the bar. Check the "Icons and the menu" section for examples. You can also drag EAP files to Engage from Evidence and from the e_utils_eapp_edit icon. There's also a graphical menu editor called Entangle in the e_utils package - it can manage Engage menus as well. Check the "Binary formats, icon files and the menu" section for details.

The E17 Engage module is not loaded by default when starting E17. To load the module use the command:

$ enlightenment_remote -module-load engage

If you don't like how the default Engage module theme looks like, you can make it completely transparent (as long as Engage is on the bottom of the screen) by editing data/themes/module.edc before compiling it. You'll need to add "color: 255 255 255 0;" at line 34 - without the quotes of course. It should look like this:

             rel2 {
relative: 1.0 1.0;
offset: -1 -1;
to: "overlay";
}
color: 255 255 255 0;
image {
normal: "bg_h.png";

If you also want to remove the text from Engage, make it transparent too.
To do so, edit the color variables in module.edc starting from line 346 to look like this:

      part {
name: "EngageIconText";
type: TEXT;
mouse_events: 0;
effect: SOFT_SHADOW;
description {
state: "default" 0.0;
rel1 {
relative: 0.0 0.5;
offset: 0 0;
}
rel2 {
relative: 1.0 0.5;
offset: 300 0;
}
color: 255 255 255 255;
color3: 255 255 255 255;
text {
text: "";
font: "Edje Vera";
size: 12;
min: 1 1;
align: 0.0 0.0;
}
}
description {
state: "visible" 0.0;
rel1 {
relative: 0.0 0.5;
offset: 0 0;
}
rel2 {
relative: 1.0 0.5;
offset: 300 0;
}
color: 255 255 255 0;
color3: 255 255 255 0;
text {
text: "";
font: "Edje Vera";
size: 12;
min: 1 1;
align: 0.0 0.0;
}
}
description {
state: "hidden" 0.0;
rel1 {
relative: 0.0 0.5;
offset: 0 0;
}
rel2 {
relative: 1.0 0.5;
offset: 300 0;
}
color: 0 0 0 0;
color3: 255 255 255 0;
text {
text: "";
font: "Edje Vera";
size: 12;
min: 1 1;
align: 0.0 0.0;
}
}
}

Standalone Engage specific information:

The standalone Engage should work in almost any windowmanager, except E17. This version of Engage is not meant to be used in E17 - you should use the module version instead if you run E17. This information only applies to the standalone version, not to the E17 module. There are two ways to configure the standalone Engage: using commandline arguments or with the included EFL configuration GUI. The standalone version works as a dockbar, system tray and can even hold special applications, for example a clock. It's also worth noting that the standalone Engage version is not actively developed, as the priority is with the E17 module version.

Usage: engage [OPTION] ...

-h, --help Print this text
-I, --ignore-iconified [bool] Ignore iconified windows
-i, --ignore-running [bool] Ignore running apps
-T, --tray [bool] Enable system tray
-D, --appear-time [flt] Time taken (in seconds) for new icons to appear
-b, --bg-main-color [rgb] Background main color
-B, --bg-outline-color [rgb] Background outline color
-d, --zoom-time [flt] Time taken (in seconds) for icons to zoom
-Z, --zoom-factor [flt] Zoom factor of the icons - 1.0 == 100% == nozoom
-z, --zoom [bool] Should we zoom icons?
-S, --spacing [int] Space in pixels between each icon
-s, --size [int] Size of icons in default state
-A, --auto-hide [bool] Auto hide the engage bar
-G, --grab-app [bool] Capture the icons of all running applications
-g, --grab-min [bool] Capture the icons of minimised applications
-R, --reserve [int] The amount of space reserved at the bottom of the screen
-m, --mode [int] The display mode, 0 = ontop + shaped, 1 = below + transp.
-e, --engine [str] The X11 engine to use - either software or gl
-t, --theme [str] The theme name to use (minus path and extension)
-H, --height [int] The overall height of the application area
-W, --width [int] The overall width of the application area

Note that the standlone Engage version does NOT save the settings you set via commandline arguments! Any changes made with the EFL gui (right click on Engage and select configure) will be saved. The config file used by the standalone Engage is ~/.e/apps/engage/config.eet. If you wish to start with the default config after saving something you don't like, just delete it and restart Engage.

Here is an example commandline for the standalone Engage:

$ engage -W 1280 -T 0 -I 1 -i 1 -e software -H 80 -s 28 -Z 1.9

Note that the openGL mode, while available, is still in development and too unstable to be used. For most systems the software mode will even perform better right now.

This is how everything works at least with the default theme:

left click - launch app (for launch icons) restore app (iconified icons)
left hold - raise/unminimize window ("hold" definition is broken in the default
theme it will create another instance of the app you wish to unminimize.)
middle click - iconify apps
right click - config menu (for this to work you need to have examine installed. It's in e17/apps/examine in cvs)


FAQ regarding the standlone Engage:

Q: How can I make the standalone Engage completely transparent?

Use this -b and -B value: #00000000.
For example:

$ engage -b "#00000000" -B "#00000000"

Please don't forget the "" or it won't work. If you want to go back to the default look, the values are: #7f000000 (-b) and #7fffffff (-B).

Q: I don't want to use E17, why can't I just use it in other window managers without having to learn E17?

You can use the standalone Engage in other windowmanagers. It is fairly integrated with E17 as that's where the main focus of development is. You'll need to learn using E17 tools in order to be able to configure it, at least if you want to make icons or customize them.

Q: I'm using the standalone version - where should I move my theme files?

By default, Engage looks for themes in the following directories:

~/.e/apps/engage/themes
/usr/share/engage/themes

Q: I've heard that the standalone Engage can have a clock?

It can hold various applets like clocks etc. If you want to add a nice clock, you need to get either expedition.edj or digital.edj from http://cvs.sourceforge.net/viewcvs.py/enlightenment/misc/engage/ and copy it to ~/.e/apps/engage/sysicons. Expedition is a classic clock and digital is of course a digital one.


3.5 - Entice

Entice is an image viewer and also a good showcase of the EFL abilities. All the menus are dynamic. In other words they move and change shape depending on your actions. When you don't have the mouse cursor over the buttons, the buttons will disappear alltogether, which fits an image viewing program very well. To use it, just open a directory with entice /path/to/directory/* to have it load all pictures in the directory or open a picture directly with entice /path/to/picture.png for example. Check http://atmos.org/docs/entice/index.html for more in-depth information regarding Entice. The Entice project owner is Corey Donohoe (atmos).

Important note: Entice hasn't been updated for a long time... You might want to check out Exhibit instead, which has more features and is currently under heavy development.

Entice

Entice is fully themeable. In the current CVS version there are two themes included: the default one and one from http://cored.org called Artifakt. In order to change the theme, you need to use one of the tools for editing binary EDB files. The most user-friendly one would be the editor that uses GTK - edb_gtk_ed. There are text based editors too and GTK is not a dependency of the EFL. The config file is in ~/.e/apps/entice/config.db

edb_gtk_ed ~/.e/apps/entice/config.db 

3.6 - Entrance

Entrance is the E17 login manager. It can display animations, all kinds of nice effects and is fully themeable. The Entrance project owner is Ibukun Olumuyiwa (xcomputerman). Please note that Entrance is still in early development, so you may experience serious bugs.

Entrance

Sites you might find interesting:

http://xcomputerman.com/pages/entrance.html
http://www.atmos.org/pages/entrance

Usage: entrance [OPTION]...

-c, --config=CONFIG Specify a custom config file
-d, --display=DISPLAY Specify which display Entrance should use
-h, --help Display this help message
-g, --geometry=WIDTHxHEIGHT Specify the size of the Entrance window.
Use of this option disables fullscreen mode.
-t, --theme=THEME Specify the theme to load. You may specify
either the name of an installed theme, or an
arbitrary path to an edj file (use ./ for
the current directory).
-T, --test Enable testing mode. This will cause xterm
to be executed instead of the selected
session upon authentication, and uses a
geometry of 800x600 (-g overrides this)
Entrance comes with 4 themes: Nebulous.edj, default.edj, taillights.edj and darkrock.edj. All Entrance themes are in /usr/share/entrance/themes (depending on where you installed Entrance to of course).

3.7 - Entropy

The Entropy File Manager is not so much a file manager, as it is a message-based file-system aware engine. It's based on the EWL widget library, so make sure you install it as well. Entropy is comprised of two parts:

  • The EVFS application
  • The Entropy application itself

EVFS is the successor to EFSD. It supports abritrary file systems (such as the samba demo currently in the tree).

The entropy application itself, at it's core - is just a messaging hierarchy with a few bells and whistles. It accepts requests (e.g. load this directory and it's contents, get their mime type, thumbnail them, and tell me when you're done). To prevent thread problems, entropy uses ecore_ipc as a notify system to the main thread to signal that event data is ready to be used.

Entropy-Core also defines a GUI plugin and layout hierarchy. There are four main types of GUI plugin: layout-plugins (a container for other GUI elements), structure viewers (think of the tree-layout paradigm at the left of windows-explorer style systems), local-viewers (folder-contents), and action plugins (event consumer/response units).

Important note: Entropy is still in early development! It is not recommended to use it for handing any important files! Data loss may occur.

Entropy

Please keep these warnings in mind:

  • It's in cvs://e17/proto/entropy. At the current time, don't trust it with your files. I haven't had any file corruption, but you could be the first.
  • You'll need EVFS from the latest CVS tree (cvs://e17/apps/evfs). EVFS is now started on demand, so you needn't worry. All happens in the background.
  • If you're planning on playing with the source, be warned: a lot will change very quickly. Especially with regards to some functionality that will move to the core, and the core's central notification/event response system.
  • This source still needs valgrind'ing - there are leaks both in Entropy and EVFS that I know about and will catch.

Some of the features/functionality are currently non-obvious, see docs/README for hints on use.


3.8 - Ephoto

Ephoto is an ewl app that is used for sophisticate image viewing. You can simply look at your image by clicking on the "View Image" tab and selecting an image from the image browser, or you can view you image in a slideshow with or without audio, or you can view it in a powerpoint like presentation. You can add images to the slideshow/presentation one of two ways. You can either click the slideshow/presentation tab, and click images in the image browser, or you can select the view image tab and view an image then click the add to slideshow button. Audio can be added to the app by clicking a song in the audio browser. Ephoto has a vast future ahead, with promising ideas such as recording slideshows to a video file.

Ephoto also accepts a command line argument for the launch root directory ie

  • #ephoto /path/to/my/images

  • will launch Ephoto with /path/to/my/images as the default directory

    The Ephoto project owner is Stephen "LinuxTitan/TitanSoccer15" Houston

    Ephoto


    3.9 - eRSS

    eRSS is an EFL based program that displays RSS feeds on your desktop and can also launch browsers. It does not work correctly in E17 as it uses fake transparency and is not designed as a module. The eRSS project owner is Martin Sarajervi. Please also check http://enlightenment.sourceforge.net/Applications/Erss/index.html.

    Important note: eRSS has not been updated for a long time, and as such is more or less abandoned right now. Christopher 'devilhorns' Michael is developing an RSS module for E17 though - please follow our news feed: we'll post there as soon as it's been released (as in added to public CVS).

    eRSS

    Usage: erss [OPTION] ...
    -c CONFIG specify a config file (required)
    -l list avaliable config files
    -t THEME specify an edje theme file (.edj)
    else the default will be used.
    -h display this help and exit
    -v display erss version
    By default, eRSS will use the following config file: ~/.erssrc. eRSS comes with 3 themes: darkgrey.edj, default.edj and white.edj. These files are located in /usr/share/erss (depending on where you installed it)

    Here's an example config file:




    /usr/local/share/erss/config/slashdot.cfg

    /usr/local/share/erss/default.eet

    /usr/bin/galeon

    0.5


    3128

    1

    Also check erss -l. For example if you want a Slashdot RSS feed on your desktop you would use the following command:
    $ erss -c /usr/share/erss/config/slashdot.cfg
    It is also possible to create your own CFG files. The syntax is very simple. The following is an example of a functional freshmeat.cfg:


    Freshmeat

    download.freshmeat.net
    /backend/fm.rdf
    item
    title
    link
    1800
    1
    8
    1
    0
    347

    3.10 - Evidence

    Evidence is an enlightened file manager. While it has seen no large scale beta-test so far, both Enlightenment developers and early adopters trust Evidence with their data on a daily basis. It hasn't been released yet, but it is getting closer (tm). Common sense still applies though - Evidence is still in development and thus you may not want to use it to handle critical/important files. The first thing you should read is the man page and the included documentation. The Evidence project owner is Azundris.

    Important note: Evidence is not the same thing as EFM. EFM is the file manager integrated within E17 itself; Evidence is a third-party application.

    Evidence

    Sites you might find interesting:

    http://evidence.sourceforge.net/ - official website
    http://sourceforge.net/mail/?group_id=58061 - official mailing lists

    Evidence has an exceptionally comprehensive manual page:

    $ man evidence
    EVIDENCE(1)                                                        EVIDENCE(1)



    NAME
    evidence - Evidence is a GTK2/evas2 file manager.

    REQUIRES
    gtk2 (to run)
    gtk2-devel (to build)

    SYNOPSIS
    evidence [options] []

    DESCRIPTION
    evidence sports a tree-view (like fm), a browser-view (a la NeXT),
    and, if compiled against a canvas, an icon-view and shelf. If evas
    rather than GNOME-canvas is used as a canvas, the icon-view can be
    themed in rather extreme ways (like efm and beyond).

    evidence gets its information about the file-system from a pluggable
    backend, making the use of abstraction layers like efsd or GNOME-vfs
    a simple matter of adding a suitable plug-in. Furthermore, plugins
    for individual file-types are supported; sample plugins for ID3 (MP3
    labels containing year, artist, songname etc.) and Ogg/Vorbis-tags
    are provided, enriching "tooltips" and transforming the file-info
    dialog into a tag-editor for song-files. Plugins for other data-types
    are straightforward to write.

    All backends, theme-engines and meta-data providers are pluggable
    and will only be loaded if and when they are used, keeping memory
    consumption low and avoiding "bloat."

    At startup, the file-manager’s window is divided in two sections,
    a view on a directory, and the shelf.

    Views

    Tree-view

    The usual tree-view. Columns can be resized an re-ordered.
    Clicking on the tiny triangles folds/unfolds a single directory.

    Keyboard Controls

    * Control-F to search a file by name

    * Control-I (or right button) to show info on a file

    * Cursor-Keys
    Unshifted
    - Up/Down previous/next row
    - Left/Right previous/next column

    While Shift is depressed
    - Up/Down add previous/next row to selection
    - Left/Right fold/unfold level

    While Control is depressed
    - Up/Down move focus without resetting selection
    - Space add focussed row to selection

    Icon-view

    The normal mode of operation for most current file-browsers.
    Each file is represented by an icon or, in the case of an
    image file, by a "thumbnail" version of said image. As
    thumb-nailing may take a moment for very large directories,
    the mode is more suited for viewing directories and working
    in them than for navigation.
    A middle-click will bring up a path-menu.
    A right-click (or Control-I) will bring up the info-dialog.
    Typing a letter will focus on the first while whose name
    begins with that letter.

    Browser-view

    The browser-view consists of a number of columns -- one for
    each directory in the path -- that list the file-names of
    those directories. If in /home/azundris, three columns would
    be shown, listing the items in "/", in "home" and in "azundris",
    respectively. On top of each column, an icon representing
    the respective directory is displayed. These icons can be
    hidden if desired. Clicking on a directory will select it
    to be displayed (or "opened"), hiding the previously shown
    subsequent directories of the one the newly-selected folder
    is located in. The contents of the newly-chosen folder will
    be displayed instead. This is more intuitive than it sounds,
    and according to NeXT-afficionados, it’s also something you
    might really fall in love with.

    As in default operations mode a single click suffices to open
    a directory, it is necessary to depress the Control-key to
    make or extend a selection or to Drag & Drop a directory.

    A right-click will bring up the info-dialog.

    Control-F will open dialog to search for a file in the current
    column. It might be necessary to select a column using the
    tab-key first.

    Keyboard controls in all views

    Control-D ("duplicate") will open a new window showing the same
    directory as the current window.

    Control-Q ("quit") will terminate evidence.

    Control-W will cycle to the next evidence-window.

    Control-U will close the current window.

    Control-S will re-sort the current window’s contents. This
    is for power-users: evidence will sort the icon-view once it
    has all information (not only an item’s name, but also whether
    it is a folder etc.) it needs to do so. If you scroll the icon-
    view while these data are still being loaded (icons are turning
    from question marks into other icons or into thumbnails), evidence
    assumes that you have started working in the icon-view and will
    try not to interfere (it will not move the entirety of the icons
    around by sorted them).

    Control-I will get information (in the guise of a "tooltip") for
    the highlighted file; ^M will open a context-menu for it; ^P will
    go directly to the properties-dialog ("file-info"), ^R will rename.

    Alt-T, Alt-B, Alt-I and Alt-A select tree-view, browser-view,
    icon-view and credits, respectively. The tabs of the "notebook"
    need not be visible for this to work.

    File-operations in views

    An item -- file, application or directory -- can be passed to
    another application by "dragging" it there. To drag a file,
    move the pointer over it and press the first mouse-button.
    This will select the file. If the mouse is now moved while
    keeping the button depressed, the item will follow the
    movement of the mouse-pointer: you are dragging it.

    To "drop" the item on a target, simply release the mouse-button.
    Normally, the shape of the mouse-pointer will change while it
    is passing over a target that accepts drops; this makes it easy
    to find out whether an application accepts files and other items
    this way.

    What will happen as a result of this "drag and drop" operation
    (DND) depends on the target -- dragging an item onto

    * on the shelf -- the bottom area of the window -- will place a
    reference to that file on the shelf. You can now access the
    file even if you select another directory to be displayed in
    the view. The file

    * another application will normally cause that application to
    try and open the item (normally some sort of data file);

    * an application item in evidence will start that program and
    ask it to open the item as data to work on. The application
    may be located in the view or on the shelf. What the
    application will do with the data will depend on both the
    application and the type of data you drag onto it; dragging
    an MP3 or OGG file on a music player would likely get the
    song(?) played, trying to drop it on a text editor instead
    will likely not produce satisfactory results;

    * a directory folder in evidence will copy the item into that
    directory; the target folder may be located in the view or
    on the shelf; alternatively, you may move the file into the
    target folder (by depressing Shift while dropping, watch the
    mouse-pointer change), or place a link to the file there (by
    depressing both Shift and Control);

    * a directory folder in the browser-view’s icon-path will move
    the item into that directory; alternatively, you may move the
    file into the target folder, or place a link to the file there.

    Mouse-operation in all views

    Left mouse-button

    Left-clicking on an icon or a list-entry selects that entry.

    Left-clicking on an icon or a list-entry and then moving around
    while keeping the button pressed activates "Drag & Drop" -- see
    previous entry, "File-operations in views."

    Left-clicking between icons opens a "rubberband" selector in
    iconview.

    Midde mouse-button

    Middle-clicking on an icon or a list-entry shows information on
    that entry (a "tooltip"-bubble).

    Middle-clicking on something other than an icon or a list-entry
    will open a pop-menu showing the "path-history" -- one item for
    each directory in the path to the current one. Selecting an
    entry will "jump" to that folder and display it. To close the
    menu without jumping elsewhere, simply click outside the menu.

    Right mouse-button

    Right-clicking on an icon or a list-entry shows a pop-up menu
    with (hopefully) sensible things to do with that kind of file.
    This menu can be edited (PREFIX/share/evidence/evidence.menu)
    or overridden (~/.evidence/evidence.menu).

    Right-clicking on something other than an icon or a list-entry
    will open a menu with general evidence-related options
    (including the option to switch to another view, which is
    helpful if one turns off the "tabs").

    Since almost all space is occupied by list-items in tree-view,
    the evidence-related menu can also always be brought up by
    holding the Control-key while right-clicking, no matter
    whether or not an icon or list-item is under the mouse-arrow.


    ADVANCED USES
    Shelf

    The shelf is the area at the bottom of the window. Files can
    be dragged onto the shelf from the view above. Once on the shelf,
    the the file can be subjected to the same operations as files in
    one of the above views, so the shelf can be used as launchpad
    and as temporary storage.

    To use the shelf as a launchpad, simply place something you
    often use on the shelf by dragging it there, then activate it
    with a double-click when desired. The action then taken depends
    on the nature of the item:

    * a directory folder will be displayed in the above view

    * an application will be started

    * a file will be passed to a suitable application if such an
    application is known; otherwise, the user is offered to select
    an application from a list

    The shelf can be resized to whatever the user deems appropriate,
    up to hiding it completely to use all of the window’s estate for
    one of the above file-views.

    Primary Selection

    When you select text (in a terminal, chat program, browser, ...)
    with the left mouse-button and it is highlighted, this is known
    as the "primary selection" in X speak. This text then can be
    "pasted" into many applications using the middle mouse-button.

    The primary selection may be pasted into evidence’s "typebuffer"
    (a "micro-shell" described in the next section).

    Also, whenever you (de-) select files in evidence, the list of
    selected files will be set as the primary selection. Hence,
    you may select files in evidence and then "paste" the list of
    those files into a terminal/shell of your choice.

    Typebuffer

    The typebuffer is like a "micro-shell." The type-buffer can be
    opened using ^O, ^L, Alt-O, Alt-L, <, / or the Escape key, in
    other words, with anything that remotely makes sense. Once the
    typebuffer is active, you may enter

    * an URL that will be dealt with according to the entry in
    "evidence.handlers" which normally resides in
    /usr/local/share/evidence/;

    * a directory the contents of which should be displayed;

    * a command to be executed. Its textual output, if any, will go
    to the shell that called evidence.

    * a property ("config variable") to be modified. This will change
    evidence’s behaviour at run-time. There are several of built-in
    properties; the user may also set all properties settable in
    themes.

    ’iconfont eraser
    Display icon-labels using the "eraser" TrueType font
    (which must reside in one of the well-known font-directories)

    ’openfolderanimation none
    No animation when opening folders

    The ’ is mandatory -- it tells the typebuffer that it should
    modify a property. If you miss the ’, the typebuffer will
    mistake your property for a program to run and the property’s
    value as a parameter for that program.

    The following special keys are available while entering something
    into the typebuffer:

    * Backspace deletes the rightmost character in the buffer;

    * Escape aborts entry; the line will be discarded;

    * Return ends entry; the line will be processed.

    * Control-X: cut the typebuffer (move it to the clipboard)

    * Control-C: copy the typebuffer to the clipboard

    * Control-V: paste clipboard’s contents into typebuffer

    * Control-B: paste primary selection into typebuffer (same as
    middle-click)

    While the typebuffer is active, its contents will be visible in
    the title-bar of evidence’s window.


    OPTIONS
    evidence accepts at least the following options:

    -h, --help
    Show summary of options.

    --efm Look like the efm/essence design studies. This is a shortcut for
    "evidence --no-shelf --no-notebook --no-border -T essence".

    -M, --desktop
    Start with window covering the entire screen and scrollbars dis‐
    abled. This will effectively make evidence draw the desktop.

    -T mytheme, --theme=mytheme
    Use theme "mytheme". Note that for themes to work, evidence
    needs to be build against evas, the enlightened canvas.

    -P myicons, --iconset=myicons
    Override icon-set given in theme with "myicons".

    -s, --without-shelf
    Do not create a "shelf" area (temporary work area beneath the
    actual view).

    -S, --with-shelf
    Do create a "shelf" area (temporary work area beneath the actual
    view).

    -W, --with-tooltips
    When mouse rests on a file-icon, open info box without waiting
    for a click of the middle mouse-button.

    -Z, --select
    Preselect a given file. "evidence --select /foo/fonts --select
    /foo/src" will open a view on directory foo and preselects the
    items fonts and src. This option may be used several times.
    Unless virtual folders are supported, all items must reside in
    the same directory. Example of use: sagasu (http://www3.sympa‐
    tico.ca/sarrazip/dev/sagasu.html). Set editor command to evi‐
    dence --select "%f"


    NOTES
    HOME representation

    If a file "photo" is located in the user’s ~/.gnome2 or ~/.gnome,
    this image will be used to represent the user’s (home-) directory.

    File-access backends

    evidence can be compiled to access the file-system "directly"
    (using the standard glibc functions present on every system),
    via Gnome-VFS, via efsd (the enlightened file system daemon), ...

    If the UNIX-fs backend is used, the appropriate icon to use for a
    file is determined using "mime.types" which assigns a MIME-type to
    a file extension (what comes after the dot in the name) and
    "mime.icons" which assigns an icon to a MIME-type. These files live
    in PREFIX/share/evidence (/usr/local/share/evidence by default).

    The "direct"/POSIX backend contains code written for efsd by cK.

    Meta-data providers

    The image provider can save to all formats known by imlib2. This
    specifically means that you can *not* save GIF-pictures at this
    time, as Imlib2 has no support for that yet. : (

    The MP3 provider will read an ID3v2 tag, an ID3v1 tag, or provide
    an empty basic label, in order of preference. It will save both
    ID3v1 and ID3v2 tags, with identical data (to the extent that
    those are supported by ID3v1). Genres can be selected in a
    pop-up menu, or entered as text ("Blues") or index ("(0)").
    Text-entry is somewhat lenient -- "Acid Jazz" will be recognized
    if given as "acIDJAzZ"). If a genre "foo" is not recognized,
    it will be saved as "Other: foo" ("(12) foo" internally).
    By the same token, you can enter random qualifiers to a genre
    after a colon: "Blues: 12-bar" (aka "(0): 12-bar"). Only the
    first part (the actual genre, "Blues") will be visible in ID3v1
    tags; ID3v2 will show both.


    CUSTOMIZATION
    All files in "$PREFIX/share/evidence" can be overridden with equiva‐
    lents in "$HOME/.evidence". Aside from icons, in particular the fol‐
    lowing may be overridden:

    mime.types assign MIME-types to file-extensions
    mime.icons assign icons to MIME-types
    evidence.menu entries in right-click menu for each MIME-type
    evidence.providers meta-data providers (ID3-tags, ogg-infos, etc.)
    evidence.handlers protocol-handlers for typebuffer (http, ftp, ...)

    Themes go in $PREFIX/share/evidence/themes (by default, this means
    /usr/local/share/evidence/themes). A theme can be selected by
    supplying its directory to the -T switch. If no -T option is
    given on the command line, evidence will look for a symlink
    "default" in the themes folder that references the theme you want.

    evidence can be tuned at source-level by editing the userconfig.h file.


    TUNING
    Icon-view

    When opening folders is very slow, this may actually be
    a problem with the animation being slow. Disable the
    animation by setting the openfolderanimation property
    to none ("’openfolderanimation none" in the typebuffer,
    the theme, or the evidence.theme in ~/.evidence).

    Likewise, "’openappanimation none" inhibits the
    animation that normally denotes the start of a
    program.

    Tree-view / Browser-view

    Let’s face it, working with a (GTK2) tree-view with many entries
    is not pretty. It’s 3rd party code, so there isn’t a lot I can do.
    Except for recreate the tree- and browser-views with EWL, which I
    intend to do.

    General

    The backend and store should be self-tuning; when a
    folder takes too long to process, evidence will create
    a persistant cache of that folder so it will be loaded
    faster the next time around. ("too long" is defined in
    userconfig.h::CACHE_SLOWER_THAN as 3s.)


    SCREENSHOT
    http://evidence.sourceforge.net/screenshots/

    AUTHOR
    Azundris .

    It's also highly modular and customizable. It can be anything from a plain lightweight file-browser to a fully featured highly graphical one that can thumbnail videos, pictures and so on. You'll need to have GTK2 and GTK2-devel installed in order to build and run Evidence. Various optional plugins and effects have other dependencies. There is a large number of plugins you can enable or disable with configure arguments - by default it scans your system and builds it against everything you have installed. If you are reading this guide you probably have the EFL installed - this will enable all kinds of nice graphical effects. Currently when you run Evidence, you'll be presented a list of the options that were selected when it was compiled. Enabling and disabling plugins will become easier in the future.

    Evidence has up to three different view modes and many features that sets it apart from other filemanagers. For example there is a typebuffer/micro-shell. If you open it (with a certain key, ESC etc) you can type shell commands or change configuration options in real time. Please see the man page for in-depth information. While Evidence is not officially released and thus not supported, there is an Evidence-users mailing list and you can also try to get help from IRC.
    Usage: evidence [option(s)] [directory]

    Supported Options:

    -e, --efm Look like efm
    -h, --help Print this help text
    -V, --version Prints version information and exits
    -D, --debug=dl Set verbosity to level [dl] (-1..4)
    -v, --verbose Increase verbosity
    -q, --quiet Decrease verbosity
    -g, --geometry 1x2+3+4 make window 1 wide and 2 high, place at 3,4
    -M, --desktop Start with a fullscreen "desktop" (maximized)
    -T, --theme=theme uses that theme
    -P, --icon-set=is Select icon-set (name or path)
    -i, --icons Start in icon-view
    -t, --tree Start in tree-view
    -b, --browser Start in browser
    -a, --about Start with credits
    -n, --without-notebook Do not show a "notebook" ("tabs")
    -s, --without-shelf Do not create a "shelf" area (-S)
    -f, --without-border Do not "decorate" window (-F)
    -w, --without-tooltips when mouse rests on a file-icon, don't open info box --
    wait for a click of the middle mouse-button
    -E set evas rendering engine (software_x11, gl_x11, ...)
    -x Don't create thumbnails for icon-view
    -y Don't create thumbnails for shelf
    -Z, --select open a view on the directory that contains this
    item. select the item. may be given multiple
    times if all items reside in the same directory.
    -d, --dir=dir Start in directory [dir] (efm compatibility)
    Please note that the Evas gl_X11 rendering engine is currently unstable and included as a proof of concept only. Using software mode is recommended. Evidence comes with several themes. You can find them in /usr/share/evidence/themes (depending on where you installed it). The included themes are:
    • LCARS
    • azundris.bw
    • efm
    • fishtank
    • green
    • metallo
    • rephormed
    • tosh
    • OtE
    • essence
    • lain
    • nautilus
    • scorpio
    • transwarp
    Some of these themes are just meant to be technology demos (fishtank for example) and aren't meant to be used for other than testing purposes. It is possible to customize (change fonts, behaviour etc) these themes easily by editing the evidence.theme text file in the themes directory.

    Some other configuration files in /usr/share/evidence (depends on where you installed it) you may find interesting are:
    • mime.handlers - specifies what to open a file with then it's double-clicked
    • evidence.handlers - if an URL is entered in the micro shell/typebuffer, what program to use to open a specific protocol
    • evidence.menu - specify what "open it with" options are in Evidence's context (right-click) menu

    There are more config files, these are just the ones you'll probably want to customize first. All these files are clearly commented. If you don't want to change global settings, it's also possible to copy the contents of /usr/share/evidence to ~/.evidence.


    3.11 - Exhibit

    Exhibit is an image viewer powered by the EFL, in particular the new ETK widget library. Its graphical user interface draws influences from GQview, but there are also many new features, for example tabs. Even though Exhibit has only just been added to CVS a few weeks ago, it is already fully usable, compared to most other EFL based programs mentioned in this guide. It is still in early development though, so not all menu options work at this point.

    The Exhibit project owner is Hisham 'CodeWarrior' Mardam Bey.

    Exhibit

    Here is a list of currently working keybindings:

    • Mousewheel = Scroll images
    • Control + Mousewheel = Zoom image
    • Control + T = Open a new tab
    • Control + Q = Quit Exhibit

    Exhibit is currently under heavy development - please keep an eye on our news section for updates.
     



    -