Preferences are properties that control various aspects of farVIEW behaviour during a session. Preferences are stored in sections of the farview.ini file, which is in the farVIEW directory. You can edit the preferences using a standard text editor. You cannot edit the preferences using a farVIEW topic, which would be nice, because farVIEW loads the preferences at the beginning of a session, then writes them back out at the end of the session, so your work would just be overwritten. Nor can you edit the preferences with a text editor while farVIEW is running, for the same reason. The proper way to handle this, of course, is to provide a tabbed preferences dialog within farVIEW, but, for now, there isn't one.
The various aspects of preferences is subject to change.
discard=hide
Sets the state of the Discards topic to hidden (hide, show).
This property is managed by farVIEW.
altIsCtrl=false
Distinguishes the Alt-key from the Ctrl-key (true, false). Set
to true for the Mac version of farVIEW.
openLines=no
Sets the display style in the Contents window (yes, no). Displays
lines and open/close box when set to yes.
opened=opened
Displays the opened.bmp file for the topic-opened state. Images
used in this and the next five properties must be the same size in height
and width.
closed=closed
Displays the closed.bmp file for the topic-closed state.
leaf=leaf
Displays the leaf.bmp file for leaf topics.
remoteopened=obook
Displays the obook.bmp file for remote topic-opened state.
remoteclosed=cbook
Displays the cbook.bmp file for remote topic-closed state.
remoteleaf=key
Displays the key.bmp file for remote leaf topics.
killFobs=no
Determines if fob-files are deleted at the beginning of a session when
there are corresponding far-files. Ok, let me explain: a far-file is a
farSlang source file, while a fob-file is a farSlang topic file. (If you
are a programmer, this might make some sense.) This property is provided
for the programmer's convenience while debugging, and insures that the
latest version of the source of a farSlang module is used for testing.
active=yes
Sets the state of the Comm listener (yes, no). When set to no,
farVIEW refuses requests from other computers.
maxsize=16384
Sets the size of a transfer block. This value must be the same for
all farVIEW machines in a community. Do not change.
pause=10000
Sets the unit of time for comm waits, when message parts are expected
but not yet received.
listenPort=8000
Sets the port on which to listen for request messages from other farVIEW
machines.
userName=yourUserNameHere
Sets the user name. Temporary. Use this crude method of specifying
your user name for now. I don't have the infrastructure worked out yet
to support a sign-in..
myBook=mybook.vue
Associates the local mybook.vue file to the mybook farBook.
Not required when using farVIEW in isolation; i.e., when comm=no.
But, if comm=yes, and a remote user attempts to access mybook
using the URL far://yourIP:port/myBook, you must have this property
set. You need a corresponding property for each farBook that you share
with remote users. You also need to add a section to the farview.ini
file for each shared farBook to control remote users' access of that farBook.
For more information, see the discussion about the Exposure
topic property.
sizes=100,100,60,40,20,10,5,1
Sets the percentage of extra space to be allocated to content blocks
when updating a content block in a farBook. When you create content, farVIEW
allocates space in the farBook to hold the content text by computing an
excess using the percentage in the table corresponding to the size range
within which the text fits. Each entry in the table corresponds to a range
of sizes according to the following table:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
The first percentage (100 percent in the example) represents the amount of extra space to allocate for content blocks that are from zero to 256 bytes in length. The second percentage (100 percent in the example) represents the amount of extra space to allocate for blocks that are from 257 to 1024 bytes in length. For example, if a content block is 400 bytes in length, then 800 bytes will be allocated to the block.
After you update a given content block, farVIEW checks the new size. If the new size fits within the same range as the old size, or is in a smaller range, then farVIEW reuses the previous allocated space to store the updated block. If the new size fits a larger range, then a new space size is computed according to the table, the new space is allocated, and the updated block is stored in the new space.
numberParts=2
Internal farVIEW parameter setting. Do not change.
numberHashSlots=4
Sets the size of a hash sub-table in the dictionary of a new farBook.
Could range from 4 to 32 (just a guess). Without instrumentation and an
understanding of the structure of the dictionary, you probably cannot make
a useful judgement of an optimum value for a given farBook. At this time,
no instrumentation is available.
numberReferenceSlots=4
Sets the size of a reference sub-table in the dictionary of a new farBook.
Could range from 4 to 32 (just a guess). Without instrumentation and an
understanding of the structure of the dictionary, you probably cannot make
a useful judgement of an optimum value for a given farBook. At this time,
no instrumentation is available.
sizeKey=48
Sets the maximum size of a keyword or phrase for the dictionary of
anew farBook. 48 is relatively small. Could be as high as 100 or more,
though that would waste a lot of space for most keys. This is a question
of trade-offs between the amount of accuracy you want in your searches
versus the amount of space that you waste for most keywords.
doc=C:\My Documents
cpp=C:\projects\farview
mp3=C:\Mp3
tree=937,201,303,440
Sets the initial position and size of the Contents window. If you move/resize
the Contents window during a session, farVIEW updates this property to
reflect that.
text=500,0,640,480
Sets the initial position and size of the text edit window. If you
move/resize the window during a session, farVIEW does not update this property.
Instead, it saves the information as the Where and Rect properties
of the specific topic whose content window you moved.
font=Courier New,0,0,15
Sets the font properties of the Contents window. The default is the
System font.
textFont=Courier New,0,0,13
Sets the default font properties of the topic content window. If the
Font property of a topic has a value, then that is used over this property.
The default is the System font.
Name=text
Title=text
Source=text
Form=filename
Class=
FirstDate=date
LastDate=date
Owner=text
Password=text
Exposure=text
Where=105,36
Rect=500,0,640,480
Font=BrendensHand,0,0,19
Wrap=wrap
Wrap=no
Sets the default word wrap mode for the text editor.
To make the association within an ini-file format, farVIEW provides two sections: the [EditorKeys] section to identify the key sequences, and the [EditorCommands] section to identify the command sequences.
name=value
(which is standard ini-file format.) The name part identifies the associated command sequence and must match the name of some command entry in the [EditorCommands] section. More than one entry in the [EditorKeys] section can have the same name. In other words, you can use more than one key sequence to invoke a particular editor command.
The value part, in turn, contains two parts: the first part is the key sequence, and the second part is a flag to indicate if the key sequence can be used when the editor is disabled; i.e., when the user is just browsing. The two parts are separated by the "|" (pipe) character. See the examples below.
The first value sub-part, the key sequence, is a string of zero or more modifier key names followed by key names, each name separated from the others by commas.
The modifier key names are
|
Meaning |
|
Alt key down |
|
Control key down |
|
Option key down (Mac kybd) |
|
Shift key down |
The non-modifier keys are represented as themselves if they are from the standard printable ASCII characters A-Z, a-z, 0-9, or the special characters (!, %, etc). If they are not printable, for example, the Home key, then they have names as specified in the Key Name table given below.
Some examples of valid key sequence entries are
backSpace
= ^,H|notNav
copyBlock
= @,C
leftTab
= ^,Q,Q|notNav
pasteBlock =
@,Nsrt|notNav
replaceString = ^,Q,A|notNav
As suggested in the examples, the edit-only indicator part must be included only when the key sequence is to be disabled when the editor is disabled. The first character of the indicator must be the letter "N". The remaining characters are ignored.
You can find many more examples in the farview.ini file in the [EditorKeys] and [EditorCommands] sections. Note that case is ignored.
name=value
(which is standard ini-file format.) The name part identifies the command sequence and should be unique within the [EditorCommands] section. It should match one or more entries in the [EditorKeys] section. Additional entries with the same name are ignored.
The value part contains a list of the editor commands, separated by commas, that specify the behaviour of the corresponding key entry(s) in the [EditKeys] section. The names of the editor commands are given below in the farVIEW Editor Commands table.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
TBD |
|
TBD |
|
Toggle between overwrite and insert modes |
|
TBD |
|
Toggle word wrap feature on and off |
|
TBD |
|
Print the full document |
|
Clear the in-memory macro library |
|
Load the in-memory macro library from a file |
|
Save the in-memory macro library to a file |
|
Execute a macro |
|
Define a macro |
|
Advance the caret to the specified line |
|
Advance the caret to the specified character |
|
Move the caret to the top of the edit buffer |
|
Move the caret to the bottom of the buffer |
|
Move the caret up one page |
|
Move the caret down one page |
|
Move the caret to the top of the page |
|
Move the caret to the bottom of the page |
|
Move the caret up one line |
|
Move the caret down one line |
|
Move the window up one line in the text |
|
Move the window down one line in the text |
|
Move the caret to the first character in the line |
|
Move the caret to the last character in the line |
|
Move the caret left one tab stop |
|
Move the caret right one tab stop |
|
Move the caret left one word |
|
Move the caret right one word |
|
Move the caret left one character |
|
Move the caret right one character |
|
Find the specified string |
|
Replace a matching string with another string |
|
Repeat the last find or replace command |
|
Mark the caret position as the beginning of the block |
|
mark the caret position as the end of the block |
|
Move the caret to the beginning of the block |
|
Move the caret to the end of the block |
|
Copy the marked block into the Clipboard |
|
Paste the Clipboard contents to the caret position |
|
Delete the marked block |
|
Read a file and insert it at the caret position |
|
Write (Append) the marked block to a file |
|
Print the marked block |
|
Join the next line to the line at the caret position |
|
Delete the line at the caret position |
|
Delete from the caret position to the end of the line |
|
Delete the word at the caret position |
|
Delete the character left of the caret position |
|
Delete the character right of the caret position |
|
Insert an empty line following the line at the caret position |
|
Make a new line of the text right of the caret position |
|
Move the text left of the caret position to the left margin TBD |
|
Center the text on the line at the caret position TBD |
|
Move the text right of the caret position to the right margin TBD |
|
TBD |
|
TBD |