User's Guide

Quick reference guide

Unzip the package into ‘c:\Porcupine’ folder on your PC.

Open program Porcupine.accde by 2-clicking. 

Program should automatically start by attaching database files Topic_ListD.accdb and Topic_ListT.accdb. If for some reason it wouldn’t attach automatically open Connect window and locate file Topic_ListD.accdb

On the Home screen chose your Section and filters by selecting from combo box. Then proceed by clicking Index entries. You can start entering your topics into fields 1, 2, 3 and 4.

Button Print / Report will open the form for printing and exporting index. 

Make regular copies of database file Topic_ListD.accdb and restore it in case you do some mistakes or would like to return to previous version of data. Topic_ListT.accdb is file is temporary working database and will be recreated if deleted.

First time use

Open Porcupine by clicking on its desktop icon.

If you don’t find it on your desktop start Porcupine by 2-click the file Porcupine.accdr located in your installation folder (and not Topic_ListD.accdb or Topic_ListT.accdb).

Home screen will open automatically. It allows you to choose Section, Volume number and filters. First time it should look like this:

Home, program setup

In order to select Section, Volume and filters you have to prepare Sections and adjust Parameters. 

Section is any publication or part of it. It is a working unit. You may work on more sections simultaneously but before entering Index entries form you need to choose Section on which you will be working. If there are no entries in Section combo box it means no database is connected. Click Connect button to choose your database. 

Filters. While entering index entries program will help you decide which topic to choose. You will always setup first filter the same as your Section and the second one may be any other Section or ‘xxxx’ (dummy) section. This means you don’t need to see additional sections topic entries while working on your chosen Section. 

Volume number is required when working on a multiple volume publication. In Parameters you need to choose whether you’ll be working on multiple volume or single volume publication (volume number = 0).


Section is a term used for publication or a part of publication. It is described by short code and section title, label that is printed as a header of an index.



Multiple volume publication indicator determines whether Volume number is required while entering index entries.
Volume number separator separates volume from page number while printing or exporting index.
Marking topic entries indicator is useful whenever recent work should be checked. Any addition or update of index is stamped by date/time. When you require to check, let’s say work of last 7 days, you may define default in parameters on 7 days. Whenever printing index, all changes made in last 7 days will be marked yellow.
Allow updating or deleting locked entries is an advanced function useful once you are well versed with a program and you want to do mass changes on a special datasheet form. In general, no changes are allowed on a locked topic entry.

System functions

Delete DNU records; whenever topic entry has been entered but we don’t want to see it at index printout, it can be marked as DNU (do not use). Later on we may change our mind and unmark it. However, when finishing indexing a publication we may like to get rid of all DNU topics and can delete them all at once.

Disconnect all tables is an advanced function for certain instances when we want to drop all the linked tables from the program. Linked tables are located in separate database Topic_List.accdb

Compact and repair database is a function to reduces the size of our program or repair it in case of sudden damage. Holes and empty spaces are formed during work and this is unnecessary junk that can be eliminated at the next exit from a program.

Upgrade database structure on exit is also an advanced function and will not be used unless specially instructed. Every new version that requires upgrade of database structure is automatically applies changes at the first start of new version.

Export Index to RTF

Export to RTF are parameters used by export function. They are used for page setup during RTF output file formatting. See Export to RTF.


Cross-references must be defined in parameters before we can start using them. Once a label is used it cannot be deleted. XRef label text can be changed but that will be reflected in printout without making any additional changes to topics.


Choose your database Topic_ListD.accdb to proceed with work. After choosing it program will automatically link all the tables. You may also choose to do that manually by pressing Connect button. Don’t choose Topic_ListT.accdb instead as this is temporary database and will always be located on your program folder. Topic_ListD.accdb can be located elsewhere on your network for different reasons. You might like to setup automatic backup or share it with other users.

Porcupine is designed to be used by more people at the same time working on a same or different project. So, you can choose your favourite location to share database. After establishing connection choose Home to proceed. In most cases program will automatically switch to Home screen after successful connection.


Home screen will be already populated by the data you’ve entered previous time. You just proceed to Index entry screen.

Exit button will close the program right away.

You may choose Section, Volume number and filters (see Home, program setup). Whenever you wish to change Section or Topic list filters you need to open Home window. Volume number is a default value when setting Volume and Page number, but it can be changed on Index entry window.

In case you want to have different databases, you would switch from one to the other by selecting database on a Connect window, clicking on Connect button. Same database can be copied to different folders but the name of the database must remain the same. Licence is copied too and will expire on all databases at the same time.

Parameters and Sections can be changed any time and need not be setup all at the beginning. Once there are topic entries in a certain Section (publication) you don’t delete that Section because all respective topics would also be deleted.

Creating, Editing and Printing

Creating, Editing and Printing topic entries

Basic functions

Each index entry can be defined by maximum four levels (4) of descriptors. Volume number will be filled in automatically. After entering topic page number index entry get locked automatically. If you want to change anything after that, you must first unlock the record. Entry is stamped by date and time of event. Notes may be written for later reference but are not part of the index entry.

However, additional descriptor may be entered as part of the descriptor, which is entered last (lowest level descriptor). Index entries are grouped by topic level entries, but not by descriptor.

Additional descriptor appears as a part of page number.

Cross references

Cross references (See types) can be entered by 2-clicking inside See/See also frame. New window is opened where Cross reference type is selected and descriptor. Cross reference types are defined in Parameters.

Descriptor should be selected from the drop-down combo box. Combo box is showing the list of all existing index entries with respective section and page number.

Once linked index entry is selected it shouldn’t be removed from the database. Cross reference can’t point to a non-existing index record. Selected descriptor can point to any topic level of certain index entry. Limit to levels describes at which topic level does a X-ref entry points.

When Cross reference window is opened other windows cannot be selected. Close the window to updated X-refs and continue working.

Printing and datasheet

Setting filter for datasheet view, print or export

To print or export index to pdf, rtf or txt format click Print/export button on Index entry window.

Specify filter on a Set filter tab. By default, current Section is active filter but it can be changed. Refresh button lists selected index entries. Selected entries can be further viewed and conditionally edited on a special Datasheet window. Certain mass operations can be executed on a datasheet window like serial change of similar index entries or moving topic levels up or down.

Printing index

Printing index list is executed with filters set on a filter tab. Select Print index to print alphabetically arranged report or Print index page wise for volume and page number arranged report. Both reports have pre-set two columns design formatted for easier reading.

When Mark entries switch is selected all index entries that were updated within last few days are marked yellow. Number of days is pre-set in Parameters but can be changed here. This feature enables custom control for double checking of resent work done on index.

Number of levels can also be limited for easier assessment of index structure on a specified level.

All index entries with specified volume number or higher will be printed. Page ranges can also be limited.

Print list preview can be saved in pdf format or printed on any Windows printer.

Export index

Export is intended for further formatting of index in a separate word processor.

Export to Pdf with tags is formatted with leading tags ( to ). Text is formatted but it is aligned left. Special macro in custom program may replace tags with respective paragraph styles and formatted thereby. Free Pdf to MS Word converter may also be used to convert exported pdf file to MS Word (or rtf).

Export to rtf is similar to printing index. It can be exported alphabetically or page wise. Formatting of rtf file is pre-set in Parameters; Export to rtf. Number of columns, font name and font size, margins and indenting can be chosen by clicking Reset to defaults button. All measures are in twips; one cm is equal to 567 twips, and one inch is equals to 1440 twips.

Each topic level is formatted in paragraph style with standard names for index paragraph styles in MS Word: Index 1 – Index 4. One can import rtf file into MS Word or Adobe Indesign for further formatting.

Headnote and Endnote should be prepared in Section window. Index list, for print or export is titled by Section name and prefixed with Headnote and suffixed with Endnote.

Export to txt is prepared for compatibility reasons in a delimited form with semicolon separator. Each topic level is enclosed in double quote mark and separated by semicolon. Italic and boldening control characters are kept in a HTML format.

“ascetics”;;;;” “;””
“ascetics”;”Christianity, Eastern”;”staretzs”;;” “;”7:96-100”
“ascetics”;”Hinduism”;”da??is”;;” with a bamboo stuff that should never touch the ground “;”7:234”
“ascetics”;”Daoism”;”one with few desires (guayù)“;;” “;”7:369-371”
“ascetics”;”Christianity, gnostic”;”ascetics”;;” in early Christianity, especially desert fathers “;”7:96-100”


Clicking Datasheet button on a Set filter page (window Datasheet and reports) opens tabular view of filtered index entries. It is designed for easier editing and navigating of index entries.

Updating or deleting locked records is not allowed unless specifically allowed in Parameters window.

However, if you chose to allow operations on unlocked entries you have to be careful about making mistakes. Datasheet window is designed for making massive changes on entire index. Two special functions, Change and Move, enable updating more entries at the same time.

Through Change window one makes multiple updates on a certain level for all the filtered topics, that can be seen on a datasheet window. To choose what to change position cursor on a datasheet window inside the topic you’d like to change and then click Change button. Enter new text into a field on the right side of your chosen topic and then click Level button on the right side of the window.

Move function is even more comprehensive for greater mass changes. Left side of the window is starting position of filtered records. Shift left side contents to the right with a help of buttons. Symbols on the right will show how the move and/or change is made. To simply move topics from one level to the other, use symbols for Level enclosed in pointy brackets ‘’.

Definite text can be used instead of level symbols to replace all records with it.

Before making non-revocable change click Preview button to see how will newly setup records look like. Then finally make change by clicking Move button.

Security advise: make backup of your database before using these operations.

Secondary datasheet

By clicking Create button on a Datasheet window another set of filtered index entries is stored into a secondary temporary datasheet that can be viewed later for comparison or reference. It can be reopened by clicking Open button and will remain as long as new set of filtered records are saved by Create button.

Note: By 2.clicking on a record selector (white bar on a right side of every record; current record has an arrow bar) selected index entry is positioned on an Index entry window. One can shift focus to Index entry window and continue working on it. Shifting through open windows can be done by selecting window with a mouse or by pressing Ctrl F6 button to toggling through all the open windows.

Advanced functions

Spell checking is working only if installed (MS Office).

Problems and errors

When receiving prompt message about security issues similar to this:

2-click on file ‘Porcupin_Trusted_Location.reg’ (find it on installation folder) and confirm adding trusted locations into system registry. If you choose different folder edit registry file. Registry file is prepared for Office 13 (version 15.0). Your application file path should be coded with double back-slashes.

[HKEY_CURRENT_USER\Software\Microsoft\Office\15.0\Access\Security\Trusted Locations\Location1]
“Path”=”C:\\ Porcupine \\”
“Date”=”02/05/2019 14:06”

If you have different Office select proper version and edit registry file:

Office versions:

2013 15.0
2016 16.0
2019 16.0
365   16.0

Keyboard shortcuts and formatting

Basic Shortcut Keys

  • [Ctrl] + [-] delete current record
  • [Ctrl] + [+] add new record
  • [Ctrl] + [F6] toggle through open forms
  • [Ctrl] + [Enter] inserts a new line
  • [Ctrl] + [C] copies the selected text onto the Clipboard
  • [Ctrl] + [X] cuts the selected text, and put it on the clipboard
  • [Ctrl] + [V] pastes the clipboard contents
  • [Ctrl] + [F] opens the Find dialog
  • [Ctrl] + [Z] undoes the last action
  • [Shift] + [F2] opens zoom box to edit the current field in its own, larger, dialog box
  • [Spacebar] toggles the value of a check box or option button

Special key combinations

[Ctrl] + [i] Italicize single word in topic entry Level_1 – Level_4 by inserting the code: <i>buddha</i>

[Ctrl] + [b] Enbold single word in topic entry Level_1 – Level_4 by inserting the code: <b>buddha</b>

Use formatting options on ‘Text formatting’ ribbon toolbar to format Additional descriptor

[F7] checks spelling if Spellchecking is installed with the Office

[Ctrl] + [‘] inserts the value from the same field in the previous record

Navigation key shortcuts

[Alt] + [underlined letter] select field (set focus) by pressing Alt and underlined letter.

[Shift] + [Left/Right Arrow] selects one letter.

[Shift] + [Up/Down Arrow] selects one line.

[Ctrl] + [Shift] + [Left/Right Arrow] selects a word.

[F4] opens a combo box or list box

[Ctrl] + [+] adds a new record

[Ctrl] + [-] deletes the current record

[Shift] + [Enter] saves the current record

[Ctrl] + [PgUp] goes to the previous record

[Ctrl] + [PgDn] goes to the next record

[Alt] + [Ctrl]+[F] go to the Search box of the Navigation Pane

[Ctrl] + [F4] close the currently open window