As you can see below, the entries of the vocabulary are arranged similar to a spreadsheet. Each column represents an expression or word in one language. The leftmost column contains the name of the lesson this entry belongs to. The second is always the original word and the others to the right of it represent the respective translations.
In the picture above, you can also see that several properties of the vocabulary have a visual representation:
The color in the column with the original will vary if you have two columns with translations. If the cursor is in one of the translations the color represents its grade "to the original". See section entry dialog for more on this.
Of course it is also possible to use it as an ordinary dictionary and lookup manually.
On the bottom of the main window you also see the status line which usually contains the three areas that show properties of the current expression if available:
While kvoctrain
is loading, saving a large file or otherwise busy doing something
time consuming, you will see a progress bar in this status line.
I tried to optimize the work flow for the use with the keyboard. So all of the functions are reachable this way.
The cursor is moved to the smart search input field.
If you start typing an expression in this field, kvoctrain
will search the next best match after each key. The cursor
in the vocabulary is then moved to this location.
If you press Return
it will move to the next match.
If you additionally keep SHIFT pressed while entering the next
letter of your word (or press Return
for the next match)
only entries that match from the beginning of the expressions are
recognized.
Pressing SHIFT-tab will move back to the vocabulary.
There are two possibilities:
SPACE
for its own selects or de-selects the current row.
This means this
line is included in (or excluded from) the next query. When selected,
the row appears in a bold face font.
SPACE
key, the current entry is assigned the lesson which
is shown in the lessons listbox in the toolbar. If the entry was already
assigned a lesson, it will belong to no lesson afterwards.
The cursor in the vocabulary is moved one column to the left. If it has reached the leftmost column, nothing happens.
The cursor in the vocabulary is moved one column to the right. If it has reached the rightmost column, nothing happens.
The cursor in the vocabulary is moved one row upwards. If it has reached the topmost row, nothing happens.
The cursor in the vocabulary is moved one row downwards. If it has reached the bottommost row, nothing happens.
The cursor in the vocabulary is moved one page (the amount of visible lines -1) upwards. If the cursor would exceed the first possible row, nothing happens.
The cursor in the vocabulary is moved one page downwards. If the cursor would exceed the last possible row, nothing happens.
Invoke dialog for modification of this entry.
Invokes a dialog to enter a new original expression and appends a new row with this expression at the end of the vocabulary. The cursor is moved to the end of the vocabulary afterwards.
If you have selected smart appending you are prompted to enter originals and their translations until you stop by pressing the ESC key.
After confirmation of a safety dialog, the currently selected row or selection is removed from the vocabulary.
Pressing the control key and one of the two number pad keys, + or -, you can choose the previous or next item in the combo box determinig the current lesson. If you don't have a number pad ypu may also use the normal + or - keys.
Some of the menus also have accelerator keys. They are shown on the according entry on the right side.
The buttons on top of the rows are acessible by the keyboard. To avoid clashes with the shortcuts for the main menu you have to press SHIFT + ALT and the key of underlined letter in the button text. Then the corresponding header menu will pop up.
It is possible to mark arbitrary ranges. You can then modify one or more properties for the selection or save them as a new file.
The selection will disappear after a simple mouse click in a table cell without a key pressed.
It is also possible to create multiple selections with the cursor keys. The shift and control keys have the same function here. If you want to move the cursor to an other area you have to keep the alt key depressed to prevent the selection from disappearing. If you want to select several areas you will have to press a lot of keys, but it works.
If you invoke the edit dialog to modify a selection the dialog appears differently. Some properties are disabled. For example it does not make sense to edit the expression itself or the remark of a whole range.
All selectable fields are empty at the beginning to represent the unmodified state. Once you have modified a property there will be contents in it's field and only those properties are altered in your selection.
kvoctrain
can read and write the following file formats:
kvoctrain
.
kvoctrain
reads the first few bytes from a file and makes a guess
about the file format. When none of the special types like kvtml or lex
are recognized, it uses the csv format.
kvoctrain
has the following internal word types. Furthermore every
document can contain user derfined types.
Type name | Description | Example |
Adjective | describing the properties of things or persons | expensive, good |
Adverb | tells you when, how, where .. something is happening | today, strongly |
Article
|
|
|
Conjunction | serves to bind words or sentences | and, but |
Name | name of a person, a creature, sometimes a thing | Big Ben, Tom |
Noun
| naming of things, feelings | table, coffee (english does not distinguish here) |
Numeral
| counting or numbering of things |
|
Phrase | special combination of words | to kill two birds with one stone |
Preposition | tells you about the relationship or location | behind, between |
Pronoun
|
|
|
Interrogatory | introduces questions | who, what |
Verb
| who is doing something or what is happening |
|
Every human-readable text file is represented by a sequence of "bytes" or "octets". The actual meaning of those bytes can happen in a lot of different ways, depending on the system where it is displayed or which language the text is intended for.
Since usually a "byte" is the smallest common unit for data on computers each "character" you see on a screen is represented by exactly one byte. Each byte can stand for a value from 0 to 255 and therefor you are able to display up to 256 different characters within one file.
Usually you have the "ascii" characters, e.g. a..Z, A..Z, 0..9 and additional language dependent characters. E.g. the german umlauts ä or ü or a lot of other special symbols from russian, greek, hebrew or even chinese. All this tots up to fare more than 256 different symbols.
At this point it should be obvoius that you have to take care to select the correct "charset", which is needed to display the bytes in the same way as they are intended.
A better approach is to combine two ore more bytes into a representation for a single character on the screen. This is for example what Unicode does. Unicode is a standard that currently uses a range from 0 to 65535 to designate a given symbol. Almost each symbol of almost each language on earth (and even a lot more, e.g. well known icons) is assigned a unique and unabiguous number.
Unfortunately the handling of Unicode is a bit more complicated and does not work with most of the current tools. Texts in unicode might also be longer. A compromise is to use UTF-8 which uses 7 bits (8 bits form one byte) for the most common characters from the ascii set and switches to 2, 3 or even 4 or more bytes if needed.
Every vocabulary file for kvoctrain
is basically such a simple
text file.
To support as many languages as possible kvoctrain
offers the
possibility to choose a special charset for a 8 or 16 bit based representation
as well as the storage of the files and in the computers memory in UTF-8.
Unicode is only supported on QT2 based systems since this only works well if the underlying system works with uncode.
If you want to learn more about this issue you should visit the following links:
The usual way to learn with kvoctrain
is to use one of its random query functions.
It keeps track of your knowledge of the expressions by assigning them one of seven grades ranging from "Level 1" to "Level 7".
Several possibilities are implemented which can be configured in the dialog for the query options.
There is a blocking and expiring mechanism for that case, so you are not obliged to modify the settings after each cycle. The known expression is blocked at least for the given time and will be shown after the expiration time.
All these settings can be summarized into query groups and retained under an arbitrarily name.
When querying kvoctrain
shows the expressions in random order
until you confirm all as "known".
If you did not select a special lesson, all lessons are queried
one after the other.
Remaining expressions of a currently running query are accordingly stored
when you leave kvoctrain
. After a later restart you can resume
the query (currently does not apply to special queries with verbs,
articles and comparisons).