Firelang - Language Learning Tools for Firefox

Copyright (c) 2008-2011
by Dmitri Titov 

Current Version: 3.5.0

ask developer or
request new feature:
firelang.addon @
General info about Firefox addons:

Install Firelang from

1. General Info

What is Firelang?

Firelang is a set of tools that help you learn languages while surfing the net.
More specifically, Firelang transforms the web pages you visit into learning material by hiding articles and
colorizing nouns according to their gender (colorization works currently for German language only).
Firelang keeps track of dictionary lookups and makes them as easy to launch as by double-clicking the word.

Three tools are currently available in Firelang

a) Dictionary Manager with Translation History feature
b) Articles Hiding Tool
c) Colorization Tool 

2. Translating words with Firelang: Dictionary Manager

Firelang allows you to quickly and conveniently translate unknown words with online dictionary of your choice.
Select a word and use 'Firelang | Translate with ...' option in context menu.

A new webpage with translation will be opened in a new browser window or tab, depending on the settings:

User can configure which online dictionaries are available in context menu. Any number of dictionaries can be added:

Dictionary profile looks like this:

Default dictionary and translation by double-click

The latest-used dictionary is available in top-level context menu so it can be reused quickly. 

Another way to constantly reuse latest dictionary is to enable double-click mode, which is convenient for frequent lookups.
That can be done either in general settings dialog or in bottom-right corner of translation window, in status bar:

A panel at the top translation window (Dictionary Panel) allows for 1-click dictionary switch.
This panel contains all dictionaries configured by user in Settings dialog. Default dictionary is marked by grey color.

Seeing current word in other dictionaries is as simple as clicking on a button in Dictionary Panel:

3. Firelang's Translation History

Translation history is kept by Firelang so user can review the words learned before.
Saved words are presented as hyperlinks to the dictionary used to look them up, so user can re-translate them simply by one click.

Firelang saves the context of the word being look-up up, as well as URL of its source document, so user can review look-ups done in the past:

There is a possibility to filter history entries by dictionary used for look-up.

Firelang's Translation History is a flexible tool with many useful features,
see this page to find out more about it:

4. Firelang's Reminder Feature

It makes sense to have a quick look on previously searched words every time you open Firelang translation window.
Use "Reminder" feature to enable previous words display:

Reminder allows flexible customization as shown on screen-shot above.

5. Firelang's Articles Hiding Tool

Articles Hiding Tool, as well as Colorization Tool and History Highlight Tool, can be either enabled or disabled.
User can enable/disable them using Tools | Firelang menu.
Once enabled, the tool remains active until it is explicitly switched off by user, even after browser restart.

When active, Articles Hiding tool transforms 'on-the-fly' current web page by replacing articles by interactive placeholders.
Those placeholders are automatically removed by mouse-over event, allowing user to try to guess the right answer and then immediately verify it.

See screen-shot below. 

Moving mouse to placeholder shows article.

See animation below.

 Settings dialog allows flexible customization of word groups hidden by Firelang.

As shown above, user can define his own "language profiles", corresponding to different languages or to different word groups withing one language.
Also user can enable empty placeholders which are added randomly to web page.

6. Firelang's Colorize Tool

Colorize tool, once enabled via Tools | Firelang sub-menu, marks all nouns (currently only German) on web page according to their gender.
Memorizing gender of words is an important part of learning language (that has genders at all, unlike English).

Settings for Colorize tool allows flexible customization.
For example, one can enable partial colorization, when only those words whose gender cannot be determined by rules are colorized.
If a word consists of several roots, there is an option in Firelang Settings dialog to colorize them all recursively.

Firelang uses build-in German word list (about 50,000 entries) to determine gender.
Since that list does not (and cannot) cover all German nouns, the possibility to add custom gender information is available in Firelang Settings dialog.

7. Firelang's History Highlighting Tool

Firelang can highlight all words that were previously translated by it and therefore kept in Translation History.
This highlighting works on every page you visit in Firefox browser.

The tool can be switched on/off via Tools | Firelang | Enable/Disable History Highlight menu item, as well as using settings dialog:

8. Firelang's Hot Keys

All three tools (Colorization, Articles Hiding and History Highlight) can be switched on/off via Hot Keys.

Use forth tab in Firelang Settings to specify which keys enable those tools:

9. Firelang's Articles Quiz

When Articles Hiding is enabled, you can easily add gender information for any word to Article Quiz, via context menu and pop-up dialog:

Later on, you can start Article Quiz, to check if you remember gender/article information correctly:
(via menu Tools | Firelang | Article Quiz). Rate of success is kept persistently for every word, as well as the date when word was added to the quiz.
See screen-shot:

10. Domain-to-Dictionary Bindings

When Domain->Dictionary Binding feature is enabled, Firelang will remember domains/dictionary pairs used during previous lookups,
so correct dictionary will be opened automatically next time, based on current page's domain.

A simple list is provided as default preset value:

11. Exporting Translation History to Flashcards Format

Software that uses Spaced Repetition System is quite widespread today.
Firelang allows quick and flexible export of Translation History entries into flashcard format
that can be read by such popular SRS tools as

Use "Tools | Firelang | Export History as Flash Cards..." menu item

to open Flashcards Export dialog:

Of all the information kept in Translation History, 3 fields can be exported to flashcards: word, its translation and its context sentence.
Incremental Exporting is a feature that allows to export only those entries that were created after previous successful export.
This will prevent target application like Anki from dealing with identical entries during consecutive imports.

To import resulting file into Anki, open an existing Deck (or create new one, say, 'firelang.anki' ) and then use "Import" command:


NOTE: If you don't open existing Deck, Anki will import flashcards file anyway, but words will be placed into separate Deck.
If you plan to regularly add words to Anki from Firelang, it makes sense to keep them in one special "Firelang" Deck,
so new words will be merged to the list of older ones.

Accept default field mapping (Basic Model), or create a new Anki Model.
Please check that Tab is selected as a delimiter:

Customized Anki Models for Firelang can show, for example, third field (Context Sentence) as part of an answer to the question.
Here is an example of customized, three-field Anki Model:

The resulting Anki form, based on such customized Model, includes Context as part of answer:

Context can be the part of the form question, too. Edit Anki Model to specify where context field should be shown.


Firelang Page Transformation (Colorize, History Highlighting and Articles Hiding) currently works with HTML pages only.
Page's doc.contentType should be equal to "text/html".

Support for plain text pages can be added in the next versions.

Subpages (1): Translation History