User's Manual - version: 0.3

4. Getting started with KeyValue

The easiest way to get familiar with KeyValue's features is using LibreOffice or Excel add-ins based on it. KeyValue comes with examples of core and bridge libraries allowing for the build of a LibreOffice and an Excel add-in. This section introduces some of these features using these add-ins as examples.

We assume you are familiar with the basics of LibreOffice Calc or Excel. These two applications have very similar user interfaces. For this reason, we address instructions to LibreOffice Calc users only. Excel users should not have trouble in adapting them. Moreover, remember that LibreOffice is open source software available at

It is worth mentioning one interface difference between LibreOffice Calc and Excel. In both, either double-clicking or pressing F2 on a cell start its editing. Pressing Enter finishes the edition. If the new content is a formula, while Excel immediately calculates the result, LibreOffice Calc recalculates only if it believes the cell's content has changed. In particular, F2 followed by Enter recalculates a cell formula in Excel but not in LibreOffice Calc. To force LibreOffice Calc to recalculate the cell, we have to fake a change. Therefore, keep in mind the following:

To recalculate a cell formula double click on the cell (or press F2 if the cell is the current one), then press Left Arrow followed by Enter. To recalculate a formula range, in LibreOffice one must select the whole range (select any cell in the range and then press Ctrl+/) before pressing F2.

From spreadsheet applications, KeyValue derives some terminology regarding data containers:


Is a piece of data that, on a spreadsheet, would fit in a single cell. For instance, the number 1.0 or the text "Foo".


Is a collection of data that, on a spreadsheet, would fit in an one-dimensional range of cells like A1:J1 or A1:A10. More precisely, when these cells are one beside another in a row we call it a row vector (e.g. A1:J1). When the cells are one above another in a column (e.g. A1:A10) we call it a column vector. In particular, a single is both a row and a column vector.


Is a collection of data that, on a spreadsheet, would fit in a two dimensional range of cells like A1:B2. In particular, single and vector are matrices.

After building KeyValue with its core and bridge examples (see Section Section 3), under KeyValue's home directory, we should have a ready-to-use LibreOffice add-in named keyvalue.oxt (or an Excel add-in named keyvalue.xll). The exact location is shown in Table 3.

Table 3. Location of Excel and LibreOffice add-ins.
Build LibreOffice (GNU/Linux) LibreOffice (Windows) Excel
Debug openoffice-addin/out/linux-gcc-debug openoffice-addin\out\windows-msvc-debug excel-addin\out\windows-msvc-debug
Release openoffice-addin/out/linux-gcc-release openoffice-addin\out\windows-msvc-release excel-addin\out\windows-msvc-release

Launch LibreOffice Calc, open the debug add-in and the example workbook keyvalue.ods (or keyvalue.xlsx for Excel) located in doc/workbooks.

Notice that a console window pops up. KeyValue uses it for output, notably error messages.

Valid HTML 4.01 TransitionalValid CSS!