# Source Code File Search And Editing: The Depeche View Manual

Depeche View is a high speed text search and editor tool used primarily
to analyze thousands of source code files in realtime.

This is a copy of the help text contained within the tool.
It is recommended that you download the free Depeche View Lite or Pro Demo
to better understand what this help text is about.


Chapter 1: First Steps.

running Depeche View from explorer
creating a desktop icon
running Depeche View from the Windows Command Prompt
command line options short overview
Pro: archive file support
Pro: how to load zip tar.gz and .tar.bz2 file contents
switching to a larger display font

Chapter 2: How To Search A Word.

search as you type
stepping through search results
clearing the find mask by INSERT key
searching this help text using wildcards
case insensitive search

Chapter 3: Basic Search Within Thousands Of Text Files.

appending directory contents
file to file jump
goto start or end of all text files
moving within a file
moving horizontal
surfing the text
shift click search
stepping through search results by the mouse wheel
shift click phrase search

Chapter 4: Copying Text To Clipboard.

copying a phrase within the same line
copying a block from start line to end line
instant copy a single line to clipboard
copying the lines of the current screen to clipboard
copying all lines of the active text file to clipboard
copying the clipboard text into the find mask
insert clipboard text within the find mask
how to step through files while copying text

Chapter 5: Multi Window Text Operations.

one click window creation
closing a window, or leaving the tool
one click opposite view activation
one click own window activation
one click window resize
window frame modes
shift click nearby search
shift click nearby phrase search
full screen toggling
master frame maximize
swapping view contents
extended views creation
instant view rearrangement
horizontal tiling
viewing help links in a different window

Chapter 6: Bookmark Basics.

bookmark creation by phrase selection
changing bookmark indentation
rearranging bookmarks
deleting bookmarks
jumping to a bookmark in another view
changing the displayed bookmarks width
bookmark display in non-fullscreen mode
saving bookmarks, bookmark filename
changing the bookmark files location
Pro: using multiple bookmark sets
showing and hiding the bookmarks

Chapter 7: Advanced Search Within Many Text Files.

further ways of editing the find or path mask
combined search expressions
logical operators for the search text
Pro: searching TAB separated data columns of database exports
escaping search operators
disabling the search word sequence checking
logical operators for the path
one click search
pros and cons of one click search
reducing the path mask by a directory
goto text line number
goto filename and line number location
Pro: compiler integration example
punctuation insensitive search
accent insensitive search
graying out unselected file contents
find mask auto reset on inactivity

Chapter 8: Filtered Views.

filtered view creation
filtered view line picking
disable filename listings in a filtered view
creating a list of all loaded or selected files
copying a filtered view result to clipboard
searching words or phrases in a filtered view
searching words or phrases picked from a filtered view in another view
autofilter for power users
filtering the help for subjects

Chapter 9: Pro: The Integrated Text Editor.

entering text edit mode
leaving text edit mode
one click text editing
double click text edit save and exit
search and replace within the text editor
repeat edit: interactive search and replace
repeat edit: insert word within line
repeat edit: delete a word multiple times
repeat edit: append word at end of line
repeat edit limitations
editor: cross copy words or lines between multiple views
editor: cross move text blocks between multiple views
editor: auto insert nearby words or text lines
editor: saving with DOS (CRLF) or unix (LF) line endings
editor: inserting TAB chars or spaces when pressing TAB
internal text editor general limitations

Chapter 10: Pro: Painting In Text With Colorful Markers.

highlighting words
unhighlighting words
highlighting character precise phrases
word highlight case sensitivity

mixed display of text and bookmarks
creating bookmark remarks
creating an empty bookmark remark line
changing an existing remark
the mousebookdelay
using a bookmark's search context
jumping into a bookmark's path context
exporting and importing bookmarks via clipboard
searching the bookmarks, not the text

Chapter 12: The Message Log.

Chapter 13: Combining DView With An External Text Editor.

how to jump from dview into your favourite editor
how to jump from your favourite editor into dview
Pro: auto reload of changed files
Pro: optimizing and skipping of auto reload

Chapter 14: Defining A Workspace.

how to load only specific file types
all command line options
command line file selection examples
defining filesets
using workspace definitions from the command line
using workspace definitions when starting by icon
bookmark filename definition with filesets
using plain filename lists

Chapter 15: The Configuration File.

creating a configuration file
automatic configuration storage
disabling automatic configuration file save
automatic extension of existing configurations
non-automatic configuration entries
editing an existing configuration file
config creation and edit errors
Pro: running self-defined commands on hotkeys
Pro: running own scripts with the Razer Naga gaming mouse
changing fonts
using alternative config files
configuration by environment variables
finding new config features in new dview versions

Chapter 16: Linux Specific Configuration.

changing the PATH under Linux
activating the ALT key under Linux

Chapter 17: The Easy Settings Button (No Panic Button).

how to disable one click search and other stuff temporarily

Chapter 18: Tips and Tricks.

getting more search results
displaying TAB characters within the text
select very large TAB sizes for better reading of CSV tables
word wrapping
how to search a combination of "30", "*" and "60"
Pro: example for extending the syntax highlighting
Pro: changing the syntax highlighting colors
changing the display area size and location
special options
optimizing the search delay after typing
how to reduce memory use
how to improve search speed
how to improve text display speed
registering Depeche View within windows explorer
fine tuning the desktop icon
optimizing the windows command prompt
how to view an archive file from a web location
testing extended mouse buttons
testing the clipboard automation
searching in .pdf and .xls files
known issues and workarounds

Chapter 19: Function Reference and FAQ

all functions, hotkeys and mouse moves overview



# Chapter 1: First Steps.

top

## running Depeche View from explorer

top
Within Windows explorer,
-  double click on the dview.exe file,
to start the tool without any loaded text.

-  OR drag+drop folders and files on to dview.exe
to run the tool AND have those contents loaded immediately.



## creating a desktop icon

top
make sure dview.exe is stored in a non-desktop location.
click on "setup" and then on "create desktop icon".
now you may drag+drop folders onto the created icon, just as in explorer.



## running Depeche View from the Windows Command Prompt

top
Make sure dview.exe is located in a directory that is listed within
the PATH environment variable. then type "dview" and parameters.

formal syntax:

dview [-options] singleDirectory fileNamePattern1 [pattern2 ...]
dview -dir mydir1 mydir2 -file pattern1 pattern2

examples:

dview mydir .cpp .hpp      - loads all .cpp and .hpp files from mydir,
including all subdirectories.
dview .                    - loads all TEXT files from the current dir.
dview -nosub .             - the same, but excluding subdirectories.

dview -dir mydir1 mydir2 -file .txt .doc -dir mydir3 -file !.bak

loads .txt and .doc files from mydir1 and mydir2, and loads all
files except .bak files from mydir3. note that .doc files are binary,
but by listing their extension explicitely, you force them to load.

dview . -all .doc .xls     - load all TEXT files, AND .doc .xls binaries.



## command line options short overview

top
Further options (to be specified directly after "dview"):

-arc          dview Pro: load archive contents of .zip, .jar, .ear, .war,
.aar, .xpi, .tar, .gz, .bz2, .tar.gz, tar.bz2 and .tgz files.
when specifying a single archive file name on the command line
or in a file open dialog, -arc is assumed automatically.
-allbin       also load all binary files (extracting text parts).
-hidden       also load all HIDDEN or SYSTEM files (not default).
helpful if you need to search through configuration files,
-wrap[=n]     wrap long text lines at current screen width, or column n.
-wrapbin=n    wrap text extracted from binary files at column n.

3.2. from the Linux Shell:

please type "wine dview -linux", and then read the Linux specific help.



top
Click on "open / load all text from a folder".
Then select a directory from which you want to load all text files.

NOTE: if you want to keep reading this help text, click on
"open / append text from folder". This will append all
loaded contents after this help text, making things easier.

All TEXT files from the selected directory, including all subdirectories,
will be loaded. TEXT means pure ASCII text, NOT MS Word .doc or other
binary file formats.



top
By default, "load all text from a folder" does exactly as it says,
it loads ALL text files found therein. But often this is too much.

(or on the load options button right near "open")
you can define in detail what file extensions to include or exclude,
and what sub directory names to exclude.

For example:

-  a filename filter ".cpp .hpp" will load ONLY .cpp and .hpp files.

-  a filename filter "!.bak !.tmp" will load ALL files EXCEPT .bak
and .tmp files.

-  a sub directory filter "!\tmp !\save" will exclude all text files
located in folders like "tmp", "tmp1", "save3" etc.



top
You may drag and drop a folder, or multiple folders and files,
from windows explorer into the DView window.

But think a moment: do you want to OPEN or APPEND those contents?

-  if you press and hold the CONTROL key during drag+drop,
the contents are APPENDED after existing content within DView.

-  if you do NOT press any key during drag+drop, all existing text
will be dropped from memory before the new contents are loaded.

If you have loaded some text, you may continue at how to search a word,



## Pro: archive file support

top
Depeche View Pro supports loading of archive file contents,
and even text from archives embedded in other archive files.

Depeche View recognizes archives with the following extensions:
.zip .jar .ear .war .aar .xpi .tar .gz .bz2 .tar.gz tar.bz2 .tgz

The following restrictions apply:

-  archive file contents must fit completely into memory.
as a general rule, archives up to 100 MB should be OK,
but beyond that your machine must provide enough memory.

-  archive contents larger than the maxcache setting (default = 300 mb)
may be skipped. to load larger archive file contents, adjust this value
in the config file.

-  zip files must use a normal compression format (DEFLATE),
e.g. as it is produced by the InfoZIP or WinZIP tool.
(most zip files in the internet use DEFLATE compression)
exotic compressions and 64-bit zip files are not supported.

-  .tar, .tar.gz and .tar.bz2 files produced by non-Windows/Linux
operating systems, or produced by old and exotic tar tools
may slightly differ in their format, and may fail to read.



## Pro: how to load zip tar.gz and .tar.bz2 file contents

top
-  click on Open, then select a single .zip, .jar, .tar etc. file.

OR

-  drag and drop a .zip, .jar etc. archive from explorer into DView.

OR

-  to load all archive files within a directory,

1. click on the load option config button right near "open".
it has no text on it, but four rectangular status lights.
then click on "apply changes".
3. click on "Open", and select a directory containing archive files,
or a mix of text files and archives.

WARNING:

-  the Open dialog presents you a tree view of the file system.
you should NOT enter directories with many or large zip files
through this tree view, because for unknown reasons, Windows tries
to scan all zip files in the directory, which takes very long.

instead, just enter the directory name in the edit field at the bottom,
then optionally select an archive name from the presented list therein.

under Linux (WINE), no edit field may be available.
as a workaround, run dview from the command line and supply
the directory or archive file name directly.



## switching to a larger display font

top
Instant switch to a larger font:

If the default font is too small, press CONTROL+J to toggle the large main font,
called "mainfont2" in the configuration file.

DView may also select the large font automatically, depending on the window's
pixel size at startup. See "autoselectfont2" in the config for details.

Later, when we talk about bookmarks, you may also try CONTROL+SHIFT+J to toggle
the bookmark font (you won't see any change as long as there are no bookmarks).

Alternatively, to select your own preferred font:

-  click on "setup" at the right top, then on "fonts".

-  then click on "change" near "main font 1"
to select a different primary display font.



# Chapter 2: How To Search A Word.

top
NOTE:
To jump back ==> HERE <== anytime, keep SHIFT pressed, then click HELP.



## search as you type

top
To search the word "hello", just type "hello" now.
You may land --------/\------ here instantly, as this is
probably the first location where the word appears.

which also contains this word, you may land anywhere.



## stepping through search results

top
To go to the next search result, you may

-  press SHIFT, keep SHIFT pressed, and press CURSOR DOWN.

-  OR: press F3.

-  OR: with a mouse, keep the left mouse button pressed
(ideally somewhere on blank space),
then turn the mouse wheel down.

To go to the previous search result, you may

-  press SHIFT, keep SHIFT pressed, and press CURSOR UP.

-  OR: press SHIFT+F3, or CONTROL+F3.

-  OR: with a mouse, keep the left mouse button pressed,
then turn the mouse wheel up.



top
After typing "hello", the find mask looks like

find: >hello<

with the edit cursor standing on "<". You can now press

-  Cursor LEFT/RIGHT to move the cursor in the find mask.
-  BACKSPACE to delete a single char.
-  INSERT or SHIFT+BACKSPACE to delete the whole find mask.
Note: if you press INSERT, then type nothing, dview will



## clearing the find mask by INSERT key

top
To repeat, the INSERT key behaves completely DIFFERENT then
in any other application: you do not "mark then overwrite"
to enter a new search phrase, but simply press INSERT once,
then type your word. Consequently, there is no character
overwrite mode; typed characters are always inserted.

If you have problems learning into this concept, you may
also use the classic find dialog, by pressing CONTROL+F.
However, working without this dialog is faster.



## searching this help text using wildcards

top
You can use the "*" wildcard in your searches. For example, type

book*width

to find something about changing bookmark display width, or

conf*file

to find something about configuration files.



## case insensitive search

top
Is default, meaning "a" is treated like "A". To activate
case sensitive search, click on the "case" button or press F4.



# Chapter 3: Basic Search Within Thousands Of Text Files.

top

## appending directory contents

top
Click on "open / append text from folder", then select a directory
containing many small ASCII text files (typically source code
from a big Open Source project, log files, HTML or XML files).

The contents from these files will be appended AFTER this help text.

NOTE: if you get impatient, you can stop the loading process anytime
by pressing the ESCAPE key once (don't press it twice, as you
may leave this tool then). This way only some files are loaded.



## file to file jump

top
Press CONTROL and PAGE DOWN to jump, from this help text,
down to the first of those files that you have appended.
Repeat this move (CTRL+PAGEDOWN) to jump from file to file.



## goto start or end of all text files

top
Press CONTROL+SHIFT+HOME to jump to the first loaded file.



## moving within a file

top
Within a file, use CURSOR UP and CURSOR DOWN as usual
to scroll slowly through the text. Or use the MOUSE WHEEL.
PAGE UP and DOWN also work as usual. CONTROL+END jumps
to the end of the current file, CTRL+HOME to the start.



## moving horizontal

top
CURSOR LEFT and RIGHT do NOT work as usual: they actually
control the orange cursor in the "find mask" at left bottom.
(If the mask is empty, nothing exciting will happen.)

So how do you SHIFT text horizontally, to read through
long lines? Simple: press SHIFT, hold SHIFT and then
press CURSOR RIGHT or LEFT.

And to jump back to the leftmost column anytime, just press ENTER.



## surfing the text

top
Now, using CURSOR UP and DOWN or the MOUSEWHEEL is all nice,
we've seen that in every editor. But now try this:

-  click the LEFT MOUSE BUTTON on BLANK space, somewhere
in this text, for example here:

----- click below ---\/--- into BLANK SPACE ... -----

----- or click above ---/\--- it doesn't matter. ----

and keep the left mouse button firmly PRESSED.

-  then move the mouse DOWN or UP. What you experience now
is the Depeche View Text Surf.



## shift click search

top
You're stepping through many files, you read the stuff,
you know that typing "hello" instantly searches "hello".
But then you read a word that touches you deeply:

this is so great, you want to search it as well.
But for heaven's sake, DON'T TYPE IT, or you may break

-  press the SHIFT key and KEEP IT PRESSED.
-  click on the word, with the left mouse button.
-  release the left mouse button.
-  release the SHIFT key.

And just as if you typed it, it is searched instantly,
and instantly Depeche View jumps to the first result
(which will be the same place as above, in this example).

Now repeat what you learned: press SHIFT+CURSOR_DOWN to
find further occurrences, if any. To make the above
exercise more fun, here is the word again:

extends QuestionableBaseControlRerouterFirmwareListener



## stepping through search results by the mouse wheel

top
You don't have to use SHIFT+CURSOR DOWN/UP to walk through

-  click somewhere on blank space
-  keep left mouse button pressed
-  turn the mouse wheel down or up

to step from result to result as well. This is the recommended
move right after lunch time, if you're so slump in your chair
that the keyboard is out of reach.

Alternatively, you may also hold SHIFT, then turn the mouse wheel.



## shift click phrase search

top
So far, we learned that clicking on a WORD searches that word,
instantly. But what if you have a text like
long nResult = FooController::currentBar("Lemon");

and actually want to search the phrase "FooController::currentBar"?

-  press the SHIFT key and KEEP IT PRESSED.
-  click on FooController and KEEP LEFT BUTTON PRESSED.
-  move the mouse gently to the right, over to currentBar.
-  RELEASE the mouse button.
-  RELEASE the SHIFT key.

As you see, the full phrase "FooController::currentBar" is searched.



# Chapter 4: Copying Text To Clipboard.

top

## copying a phrase within the same line

top
Again, the text example from phrase search:

long nResult = FooController::currentBar("Lemon");

if you want to copy the phrase "FooController::currentBar",

-  press CONTROL and KEEP CONTROL PRESSED.

-  LEFT CLICK into "FooController".

then

-  LEFT CLICK into "currentBar"
(or move the mouse over to "currentBar")

-  RELEASE the CONTROL KEY.

-  the phrase is now in your clipboard.

If you copy text phrases that way a hundred times a day,
you will notice that this is faster than the way that
any text editor does it.



## copying a block from start line to end line

top
To copy a block of text lines to clipboard,

-  press CONTROL and KEEP CONTROL PRESSED.

-  LEFT CLICK into a word of the FIRST TEXT LINE
in which you are interested.

optionally, you may now also press page down/up
to move through the text in page steps.

-  LEFT CLICK into a word of the LAST TEXT LINE.
all selected lines should appear in yellow now.

-  RELEASE the CONTROL KEY.

-  the selected lines are now in your clipboard.



## instant copy a single line to clipboard

top
Hold CONTROL+SHIFT pressed, then left-click into a line
to copy the whole line instantly to the clipboard.
Blanks to the left and right are stripped automatically.



## copying the lines of the current screen to clipboard

top
Press CONTROL+INSERT, or CTRL+C, to copy all lines which are
currently visible on screen to clipboard.



## copying all lines of the active text file to clipboard

top
The active text is the one whose filename is highlighted
after a mouse move, or which covers the whole screen.

Press CONTROL+SHIFT+INSERT, or CTRL+SHIFT+C to have all lines
of this active text copied to clipboard. In a filtered view,
this will copy all filtered lines.



## copying the clipboard text into the find mask

top
If you have a word or phrase in the clipboard that you
would like to search instantly:

-  make sure that the cursor is currently within
the find mask (press TAB if it isn't), and that
the cursor looks like an underscore "_".
(If it looks like "|", read on here)

-  then press SHIFT+INSERT (or CONTROL+V).

You may also paste clipboard text into the path mask,
to change the current file selection.

As you see, the find mask content is completely replaced
by the clipboard text, so there is no need to clear it first.



## insert clipboard text within the find mask

top
Sometimes, however, you may want to insert clipboard text
into an existing find mask, e.g. to combine it through AND,
OR, NOT with the existing search phrase. To do so,

-  DOUBLE click somewhere into the find mask.

-  the cursor changes from "_" to "|".

-  now press SHIFT+INSERT (or CONTROL+V).

the text is inserted into the existing search phrase.

To go back into the "replace whole mask mode",
just double click into the mask again.



## how to step through files while copying text

top
As long as text is marked for copy, CTRL+PAGE DOWN/UP
steps one page through the text. While copying text,
use CTRL+HOME/END to jump through files.



# Chapter 5: Multi Window Text Operations.

top
As you may have noticed, to read and search trough 1000 files,
you don't have to open 1000 windows. From the start, all contents
are available in ONE window, making things damned fast.

But sometimes we want to keep an eye on one part of the text,
while reading through another one. So we need a further window.



## one click window creation

top
Take a breath, then RIGHT CLICK somewhere on EMPTY SPACE.
(Do NOT right click on a WORD, we'll do that later)

Another window is created. Basically, it is another view
onto the same text. Everything is just like in the first
window or view. This second view tries to CLONE the first,
including the current text position, and the word you are
searching currently.

Now, whatever you learned, it works the same way in

-  continue to READ this help text in the LEFT view,

-  while doing all kinds of experiments in the RIGHT.



## closing a window, or leaving the tool

top
If you have multiple windows, press ESCAPE to close
the currently active window.

If you have just one window left, ESCAPE will exit dview.
If this creates problems, i.e. if you are often leaving
the tool unintentionally, you change this behaviour
under Setup / general.

Pressing SHIFT+ESCAPE always forces dview to exit,
no matter how many windows are open.



## one click opposite view activation

top
So now you have two views. And things are different:
if you right click AGAIN into blank space ... no,
it it will no longer create another window,
but simply ACTIVATE the OTHER ("nearby") view.

The philosophy behind that is:

"a right click SENDS something into a NEARBY view."

We didn't send much of interest yet, but that will change.



## one click own window activation

top
A LEFT CLICK into BLANK SPACE activates the window
under the mouse cursor, as in every windows application.
Whenever you are unsure if keyboard input for the current
window is enabled, left click into the window.



## one click window resize

top
By default, DView comes with a fixed window concept:
sizes and positions are predefined, to keep you from
time-wasting border dragging. But there are some ways
to change the relative window sizes:

If you click near the RIGHT border of the LEFT view,
or the LEFT border of the RIGHT view, you will not
just activate the window, but resize it one step:

-> the right view is slightly expanded.
-> the left view is  slightly shrunk.

If you are editing text, the left border click can
be done only within empty lines, to avoid
ambiguities with text block selections.

This behaviour can also be disabled via the Mode button
under "one click resize". But even if disabled,
a one click resize will always work near the window bottom,
within the "find:" or "path:" line.



## window frame modes

top
1. master frame mode

By default, there is one large master frame window,
containing all views (actual text windows).

By moving and resizing that master frame, you change
the so-called "master area" in which all text views
are created and arranged.

By clicking on the square button right to "setup",
you can activate or deactivate:

2. isolated views mode

In this mode, there is no master frame. Every window
has it's own thick move and resize border, allowing
to interleave the views with windows from other
applications.

The master area can NOT be changed in that mode.

Therefore, if you want to use the iso mode,

-  1. enter master frame mode.
-  2. move and resize the master frame window
until the master area, in which windows
should be created, is defined.
-  3. then enter isolated views mode.

In other words, no matter how you move and resize
windows in iso mode, the windows creation area
is not changed. Pressing F1 will force any window
back into that area.

3. overscan mode

if you are within master frame mode,
then SHIFT or RIGHT click onto the square button,
views will also be isolated, however without any resize border.
this mode allows to view as much text as possible,
however windows cannot be moved or freely resized.

To re-enter master frame mode then, click the square again.



## shift click nearby search

top
Activate the LEFT view (by left click into blank space).
Walk through the text. If you see a word that you like
to search in the OTHER (the right-side) view,

-  hold SHIFT and KEEP SHIFT PRESSED.
-  RIGHT CLICK on the word.
-  RELEASE the SHIFT key.

-> it is NOT searched in the current view,
but in the nearby view.

To repeat above philosophy:

"RIGHT click on a word SENDS it into a NEARBY view."



## shift click nearby phrase search

top
Some pages ago, we searched a multi-word phrase like in

long nResult = FooController::currentBar("Lemon");

within the current view. Now do this with the RIGHT button:

-  hold SHIFT and KEEP SHIFT PRESSED.
-  RIGHT click on FooController and KEEP BUTTON PRESSED.
-  move the mouse gently to the right, to currentBar.
-  RELEASE the RIGHT mouse button.
-  RELEASE the SHIFT key.

As you see, the full phrase "FooController::currentBar"
is searched within the nearby view.

Actually, you can do the above move in different ways:

-  the first way is to keep SHIFT and the right
mouse button pressed all the time. It's the
"safety move", as you cannot leave the line
accidentially while marking the search phrase.

-  the second way is to keep SHIFT pressed, but not
the right button: just click into the first and
last word of interest, within the same line,
then release SHIFT. This may feel a bit faster.

And sometimes it isn't necessary to press SHIFT at all.
As long as you're within normal text, just keeping the
right button pressed while marking a phrase will search
it in a nearby view. However, this trick doesn't work
in a filtered view (discussed later), where right click
does something else. Therefore remember that
"SHIFT+click is the safe way to search".



## full screen toggling

top
Click on "<>" in the right top or press F1 to toggle
between "full screen" and normal-size display of the
current view. It is F1 because this key is easiest
to reach, and you will use this function PERMANENTLY.
Searching through much text is a permanent change between
comparing multiple parts and then reading (full-sized)
through a single part.

By default, "full screen" does not literally cover
the whole screen, but keeps a bit of space near
the desktop borders - to allow easy, instant access
to other application windows around.



## master frame maximize

top
With master frame mode active, you may click on the maximize
button within the master frame, or press SHIFT+F1 to have
it maximized to the whole desktop size.



## swapping view contents

top
Press CONTROL+CURSOR LEFT, or CONTROL+CURSOR UP to:
-  cycle the contents of multiple views left,
or up in case of horizontal tiling.

Press CONTROL+CURSOR RIGHT, or CONTROL+CURSOR DOWN to:
-  cycle the contents of multiple views right,
or down in case of horizontal tiling.



## extended views creation

top
You really need a third (or even more) windows? Try this:

-  in the SECOND view, on BLANK SPACE:

-  press RIGHT button, and KEEP it pressed.

-  then press the LEFT BUTTON as well.

This is the fastest way; alternatively, you may also
click on the dotted button left near the "<>" button.

A third window opens, creating a triple column arrangement.

The term NEARBY VIEW now gets a new meaning: in general,
it is the view to the RIGHT, but if you're already in the
rightmost view, it wraps around, and nearby then means
the leftmost view (within the same vertical position).

In 80% of working cases, three windows are sufficient for
intense text analysis. If you really need further windows,
repeat LCLICK+RCLICK in the most recent window.



## instant view rearrangement

top
Imagine you have 3, 4 or even 5 views open, one of then
in fullscreen, some hidden in the background, and you start
loosing the overview ... then try this:

-  DOUBLE CLICK on BLANK SPACE instantly stops all
full screen displays, and rearranges all views
in their default position and size.


## horizontal tiling

top
Click on "=" or press F2 to toggle horizontal tiling.
This mode can be used only with at least 2 views open.



## viewing help links in a different window

top
Just right-click on a help link, like "Back to contents" below,
to have it shown in a nearby view. It is recommended that you
view ALL help links only through the RIGHT mouse button,
to allow reading of the main help without interruptions.



# Chapter 6: Bookmark Basics.

top
Let's have a look at another example text:

long FooController::testBar(char *pszCandy)
{
// first install the candy in the testBar
importantSubFunc();
char *p = 0;
*p = '\0';
return 1;
}

Now, pretend that the above text is THE text you were searching for.
Naturally, you want to remember it's location, to jump back
to this very important text anytime you like.



## bookmark creation by phrase selection

top
To create a bookmark,
-  first make sure that FULLSCREEN mode is active.
If your window has no maximum size yet, press F1 to change that.
-  then press ALT, and keep ALT pressed.
-  LEFT click into "FooController". you may or may not keep
the left mouse button pressed.
-  LEFT click into "pszCandy" (or another word in the same line).
-  then RELEASE the ALT key.

(Linux users: use CTRL+RBUTTON instead of ALT+LBUTTON.
More in the linux specific help.)

A bookmark is created, and shown at the right top.
In a bookmark, Depeche View remembers:
-  the selected phrase, as the bookmark "title".

-  the full line of the selected phrase. i.e. internally,
dview also remembers the whole line from "long" until ")",
to allow safer bookmark searches later.

-  the filename in which the bookmark was defined.

Now you can jump back to the remembered text location anytime
just by clicking on the bookmark.

Let's have another example text:

void FooController::importantSubFunc()
{
printf("foo candy delivery just started\n");
}

Just as above, bookmark the phrase from "Foo" until "Func".
Now you have two bookmarks:

FooController::testBar(char *pszCandy
FooController::importantSubFunc

Actually, "importantSubFunc" is a function called by "testBar".
To make this dependency clearer, it would be good if the
second bookmarks would be indented, like:

FooController::testBar(char *pszCandy
FooController::importantSubFunc



## changing bookmark indentation

top
To achieve this,
-  left click onto the 2nd bookmark, and keep left button pressed.

-  then slowly move the mouse right or left.
-> the indentation is changed.

-  auto indentation of dependent sub bookmarks:

if there are further bookmarks below which are already
indented in a structured way like:

int main()
func1()
func2()
subfunc()

and you move, for example, "int main()" to the right,
then the following bookmarks will have their indentation
changed as well. If you don't want this, keep CONTROL pressed
while moving a bookmark to the left or right.



## rearranging bookmarks

top
Or even better, click onto a bookmark, then move the mouse UP or DOWN
while keeping the left button pressed. {pic:bmseq}

-> the bookmark's position is changed, like:

FooController::importantSubFunc
FooController::testBar(char *pszCandy

Of course, by clicking onto the bookmark, you also jump to that location.
If you want to avoid this, keep CONTROL pressed to click and rearrange
a bookmark without changing your text location.



## deleting bookmarks

top
Click on the little "DEL" button at the right side of a bookmark to delete it.



## jumping to a bookmark in another view

top
Bookmarks are always listed in the rightmost view. Now, if you have
three views open, how do you select a bookmark into the first one?

-> right click on it.

So, just like searching with the right mouse button, right clicking
a bookmark selects it into the rightmost, or first (wrapped) view.

But what if you have three views and want to select a bookmark into the second?

-> middle click on it.

The middle mouse button will send the bookmark location to the left side view.

An alternative method is this:

1. RIGHT click on a bookmark, and keep the right button pressed.
2. move the mouse a bit to the right,
until the first view is highlighted (by a blue border).
4. move the mouse more to the right, until the second is highlighted.
5. release the right mouse button.

this makes sense especially when using 4 or 5 views.



## changing the displayed bookmarks width

top
Click left near the bookmarks to change their displayed width.
Depeche View remembers 2 separate widths, one for fullscreen display,
and one for non-fullscreen. By the way,



## bookmark display in non-fullscreen mode

top
When there is few horizontal space, some stuff like the DEL buttons is not displayed.
To delete bookmarks then, you have to enter the fullscreen mode first, through F1.



## saving bookmarks, bookmark filename

top
When you press CTRL+S, the bookmarks are saved.
Alternatively, just try to close dview by pressing ESCAPE -
the tool will ask automatically if bookmarks should be saved.

The bookmark filename is based on what you loaded,
and how you loaded it. As a general rule,

-  if you loaded a directory through a click on "OPEN",
(dropping all other text from memory)
then dview tries to build a bookmark filename
PARALLEL to that directory, outside the directory.

example:

-  you OPEN the directory

C:\mydocs\letters

then the bookmark filename is

C:\mydocs\zz-letters-bookmarks.1.dvbm

so the bookmarks are parallel to that directory.

-  after that, you APPEND the directory

C:\otherdocs\diverse

but the bookmark filename STILL is

C:\mydocs\zz-letters-bookmarks.1.dvbm

as only OPEN redefines the bookmark path.

-  you OPEN the single file

C:\mydocs\letters\hello.txt

then the bookmark filename is

C:\mydocs\letters\hello.txt.1.dvbm

so the bookmarks are parallel to exactly that file.

-  if you specified multiple directories to load text from,
esp. during start from the command line,
the first of those directories is taken to build
the bookmark filename.

-  if you load a single file, the bookmark filename
is based on that filename.



## changing the bookmark files location

top
To load bookmark files from a different location than the default,
you may select "setup / config / bookmarks / load from".

On the command line, an option "-book basename" is available.
For example:

dview -book mybooks thetextdir

will create bookmarks in the files

mybooks.1.dvbm
mybooks.2.dvbm
mybooks.3.dvbm

instead of using the generated names

zz-thetextdir.1.dvbm
zz-thetextdir.2.dvbm
zz-thetextdir.3.dvbm

NOTE: .1.dvbm is always appended automatically,
so the -book option only sets the filename base.



## Pro: using multiple bookmark sets

top
With Depeche View Pro, you can use up to 9 bookmark sets in parallel
on the same directory. To switch between them, click on the bookmark
set selectors showing number 1 to 9, just above the actual bookmarks
(you may have to click on the expander button "<" first to show all
selectors). Alternatively, press CTRL+1 to CTRL+9 for quick switching.

You may also reorder bookmark sets by simply renaming the .dvbm files.
e.g. zz-src1-bookmarks.1.dvbm -> zz-src1-bookmarks.5.dvbm.



## showing and hiding the bookmarks

top
If you need to read text hidden behind bookmarks,
click on the ShowBM button or press CTRL+Q.

A mixed display of text and bookmarks is also possible.



# Chapter 7: Advanced Search Within Many Text Files.

top
So far we learned that typing or clicking on "hello" searches this word
instantly, and EVERYWHERE. But what if we do NOT want to search everywhere,
but only in a specific file?



top
Below the "find:" mask at the left bottom, you see the "path:" mask.
Basically,

"find:"  says WHAT you are searching - it is matched against
the text content within selected files.

"path:"  says WHERE you want it searched -  it is matched
against the filenames.

By default, whatever you type goes into the FIND mask.
Concentrate on it, and spot the orange cursor within.

Now press the TAB key. Voila - the cursor is now in the PATH mask.

Whatever you type NOW changes that path mask, for example,
type "help" and you select all files having "help"
in their name, so probably just one file, right now.
The path mask is always case insensitive, so "help"
will also find files having "Help" in their name.

Now press TAB again - the cursor is back in the FIND mask.

Whatever you type NOW is searched ONLY within files having
"help" in their filename. Or let's say, the search scope
is reduced to that files.



top
Enough? Want unlimited search over everything again?

To achieve this, you may

-  press TAB again, then INSERT to clear the PATH mask,
and then TAB again to go back to the FIND mask.

-  OR: click on the "clear" button in the right bottom
(this button may be visible only in full screen mode,
and it shows only with a non-empty path mask).

-  OR: press CTRL+M.

And why CTRL+M? Because it's next to CTRL+N like narrow.
We'll come to that further below.



## further ways of editing the find or path mask

top
Instead of pressing TAB, you may also change between "find" and "path"
by simply clicking into those masks.

The Depeche View Find and Path masks are optimized for speed:

-  you do not have to press any hotkey to activate it.
the find (or path) mask is always active.
just type a word to find it, instantly.

-  you do not mark anything in the mask to replace it's content;
just press INSERT, and the whole mask is cleared, instantly.

-  to paste a phrase from clipboard into the mask, press SHIFT+INSERT
(or CONTROL+V). no other preparations are required. This way,
repeated searches of words from other applications can be done
with the least possible effort.

-  to copy the mask content to clipboard, CONTROL+click into it.

However, it may take a while to learn into this concept. If you want
to search things in a more "Notepad" like way, press CONTROL+F,
which brings up a Find dialog with classic text fields.



## combined search expressions

top
Imagine you want to find all text lines containing the words

"foo"     OR      "bar"

then simply type

foo OR bar

into the FIND mask. Note that you must type exactly " OR ",
that is BLANK, BIG O, BIG R, BLANK. A lowercase " or " will
be treated as normal text.



## logical operators for the search text

top
And where is OR, there is AND, and ... one example:
If you type

candy AND bar*banana NOT foobar

you are searching lines

-  containing "candy"
-  and having "bar" and "banana" in their text
-  but excluding lines containing "foobar"

NOTE that the wildcard "*" is basically the same as AND.

The full list of supported operators:

AND            find lines with both words
*              same as AND, only shorter
OR             find lines having one word or the other
NOT            exclude lines having the word
TAB            find TAB characters within text

LSTART or LS   Pro: find only lines starting with that word
LEND           Pro: find only lines ending with that word
WORD           Pro: find a word made from a-z, 0-9 and _

COLx[START/END/FULL]    Pro: search columns of TAB separated data.
for more on that see below.

When using a mix of AND, OR and NOT, always place NOT phrases last.
For example, when typing

foo NOT foobar AND footer

the intention is not clear: should foobar and footer be excluded,
or do you want to find lines with foo AND footer, excluding foobar?
Actually, dview will show an error and ignore "AND footer".
To make it work, rewrite the query like:

foo NOT foobar NOT footer

More examples:

"class *bar* obj OR warn NOT goo"

finds lines containing "class FooBar: public Obj" or "warning" but not "CGooBar".

"LS class OR LEND ;"

finds lines beginning with class or ending with ;

"WORD i"

finds places where "i" is used as an isolated word, like in

for (int i=0; i<10; i++)
|   |    |     |
no hit  hit  hit   hit

"foo TAB bar"

finds "foo bar" with a single TAB character inbetween.

Type just "TAB" to find the word "TAB", but type "TAB " (with a blank)
to find all TAB characters. And to highlight the actual TAB characters
within the search results, press CTRL+T.



## Pro: searching TAB separated data columns of database exports

top
Depeche View Pro can search database contents very fast and easy. To do so,

-  the data must be exported as TAB separated data,
into plain ASCII text files.

-  then load these files in Depeche View.

-  activate large TAB sizes for optimized display.

Then you may use the usual AND OR NOT search operators as described above,
plus the following specialized ones:

COLn text      - search data column number n for text. the given text
will not be searched across whole lines, but only within
the text of that column.

COLnSTART text - search columns starting like text.
COLnEND text   - search columns ending like text.
COLnFULL text  - search columns with the whole column content matching text.

Examples:

COL1 foo AND COL2START bar*123 NOT COL3FULL hoo

-> list all rows where column 1 contains "foo",
column 2 starts like "bar" and contains "123" after that,
but exclude rows where column 3 matches completely the word "hoo".

In this example, the AND operator is optional and can be left out.

Also note that "*" and AND behave different when searching columns:

-  "COL2 bar*123" is searched within the same column.

-  "COL2 bar AND 123" means to search column 2 for "bar"
AND the rest of the line (from column 2) for "123".

If word sequence checking is disabled,
the whole line will be searched for "123".

COL syntax order limitations:

Whenever you use NOT, use it last in your search query,
as subsequent non-NOT operators are not supported.

Good examples: - these are clear.

headline OR COL1 foo AND COL2 bar NOT COL3 tmp NOT COL4 remark
COL1START 02 NOT COL4 NORTH*TOWN

Bad examples:  - these are ambiguous.

COL1 foo AND COL2 bar NOT COL3 tmp OR headline
COL1 foo AND COL2 bar NOT COL3 tmp COL4 remark
COL1 foo AND COL2 bar NOT COL3 tmp AND COL4 remark
COL1START 02 NOT COL4 NORTH AND TOWN

Column number limitations:

The COL operator supports up to 100 columns.



## escaping search operators

top
To find the * character itself, type **, e.g. "/** foo" actually finds "/* foo".
Alternatively, you may switch off wildcard detection via Mode / AND OR NOT ...
or by pressing CTRL+F4. If you need to find "foo *bar" with any chars allowed
inbetween, use "foo AND **bar".

If you really need to search the literal string "foo AND bar" in
case sensitive mode, type "foo \AND bar" instead. If you need to
search "foo \AND bar", press CTRL+F4 to switch operators off.



## disabling the search word sequence checking

top
If you search "foo*bar*banana", you will only find lines where

-  "bar" appears AFTER "foo"
-  "banana" appears AFTER "bar"

Now, if you want to find lines having any combination of those words,
no matter in what sequence, click on the "noseq" button at the right bottom
or press SHIFT+F4. (The button appears as soon as there is a search phrase
containing * or AND).



## logical operators for the path

top
Just as in the FIND mask, you can write the PATH mask like:

foosys OR candy OR .cpp NOT .bak

which selects all files

-  having foosys in their name
-  OR having candy in their name
-  OR having .cpp in their name
-  however EXCLUDING all files having .bak in their name

NOTE: in the PATH mask, "AND" is the same as "OR".



## one click search

top
You know that SHIFT+CLICK on a word searches that word.
But it can be done even easier, by activating the "1click" mode:

-  click on "mode / one click search".

-  now, a simple click on a word instantly runs a search,
no SHIFT key required.

-  a phrase search is nearly as simple:
click on the first word, keep button pressed,
then move the mouse to the last word.

-  of course, RBUTTON clicks do all the same,
only in a NEARBY view.

Now select "mode / one click search" again to switch it off,
and think for a moment about the:



## pros and cons of one click search

top
One click search is very convenient, but if you click on a word
unintentionally, you run a search ... uninentionally.

And as soon as someone ELSE tries to use the Depeche View window
that you just opened, e.g. a colleague who simply wants to scroll
through the text and show you something, he may PANIC.

Yes, there is an easy settings button available for such cases,
but to summarize: it's a matter of taste.

One click search can be enabled or disabled per view,
and there is a config setting to activate it by default.



top
If you are standing in a file

C:\myproj\thecomplexdir\even\deeper\directory\howto.txt

and you want to search words just and only in that "howto.txt" file,
but not in all other "howto.txt" somewhere in other directories:

-  press CONTROL+N like "narrow to this single file"

and the full path of the current file is copied into the "path:" mask.

(There is also a "local" button for the same function, but currently
this button works fine only if you're within a large text that covers
the whole screen.)



## reducing the path mask by a directory

top
Let's repeat the above example. Your path mask contains:

C:\myproj\thecomplexdir\even\deeper\directory\howto.txt

and now you want to search in all files of the directory

C:\myproj\thecomplexdir\even\deeper\directory

then:

-  click on the "pathup" button

-  OR: press CONTROL+U like "up in the directory tree"

Of course, repeated CTRL+U will step up even further.



## goto text line number

top
With the mouse cursor on empty space, press CTRL+G (like goto)
to enter a line number, and then jump to that line, within the
current text  file.

When doing so, display of the current line and column number
is activated (shown at the bottom), which can be deactivated
by pressing CTRL+I.



## goto filename and line number location

top
Point the mouse cursor onto the beginning of a text phrase
indicating a filename and line number, for example:

foobar.cpp 100
sub/sys/lemon.hpp:195
docs\info.txt(300)

then press CTRL+G or CTRL+X. DView will

-  extract the filename and line number.

-  set the PATH mask of a nearby view accordingly.

-  and then jump to the given line within the matching file.

If the given filename is not unqiue (check the "n files selected
message" in the target window) DView will select the file
containing the search text phrase.

If there is no line number given, dview will jump to the beginning
of the first matching file. In other words, CTRL+G is also a quick way
to copy a filename into the PATH (not FIND) mask of a nearby view.



## Pro: compiler integration example

top
DView is used primarily to search and edit huge amounts of source code,
e.g. a large C++ or Java project. To turn it into a low-overhead IDE,
a compiler must be called from within DView, and it's error output

For example, assume there is a C++ project with files like

C:\project\compile.bat
C:\project\include\base.hpp
C:\project\include\trace.hpp
C:\project\source\driver.cpp
C:\project\source\gui.cpp
C:\project\source\db.cpp

With all files loaded in DView.
The project can be compiled on the command line by typing:

C:
cd \project
compile.bat

The you can integrate this in the following way:

1. right click on "Setup" to edit the config file.

on key f9
first.runback -min "c:\project\zz-compile.bat"
first.monitor "zz-err.txt" delay=300 maxwait=7000 show=bottom

3. save the changes.

4. on the command line, create another batch file
which calls your original compile batch, but writing
all console output to a file "zz-err.txt", like:

@rem ----- zz-compile.bat begin: -----

@echo off
C:
cd \project
compile.bat >zz-err.txt 2>&1

@rem ----- zz-compile.bat end -----

5. test zz-compile.bat by typing

zz-compile.bat

make sure an output file "zz-err.txt" has been created,
by typing

type zz-err.txt

6. reenter DView. the changed config file should be loaded automatically.

7. Open / Append the file "C:\project\zz-err.txt" .

8. Make sure you have at least two views open.
If not, right click on blank space to create another view.

9. Now, whenever you want to compile your project,
activate the right side view, then press F9.
this will

-  locate the first view window to the file zz-err.txt
-  run the compiler via zz-compile.bat
-  display changes in the output file zz-err.txt,
stopping if there are no changes over 7 seconds

You may then see a compiler ouput in DView like

c:\project\source\gui.cpp(10) : error C2065: 'mytest': missing declaration

Now simply point the mouse on "source\..." and press CTRL+X

If the filename "source/gui.cpp" exists multiple times in your project,
with nearest meaning in the sequence of loaded files.

In other words, if you compile more than one project under C:\project,
using different compile batches in different folders, also make sure
to create different zz-err.txt files locally. After adding another
compile batch and error file, it may help to close and re-open DView
to load everything in the best sequence.



## punctuation insensitive search

top
Select "mode / ignore punctuation" for puncuation insensitive search:

-  slashes \ and / are treated as the same,

helpful for text with mixed Windows/Unix filename formats.

-  all quotations characters are treated as the same:

" '  ´     and some more,

in detail the ISO 8859-1 character codes 0x22, 0x27, 0x60,
0x82, 0x84, 0x8B, 0x91, 0x92, 0x93, 0x94, 0x9B, 0xB4, 0xBB.

-  , and . are treated as the same,

helpful for text with mixed number formats.



## accent insensitive search

top
When searching through text in European languages, containing
special characters like á (a accent) or ä (a umlaut), it is
sometimes helpful to treat those characters like a simple "a".
This can be done by activating accent insensitive search:

1. Select "mode / ignore accents".

2. now for example, type a German word like "blatt",
and it should find both the words "blatt" and "blätter"
(finding both the singular and plural forms of the word).

Accent insensitive search is based on the ISO 8859-1 character codes.



## graying out unselected file contents

top
If you enter something in the PATH: mask, this means that some files
are included in your search, others are excluded. By default,
excluded files do not look different.

But if you select "mode / gray excluded files", excluded file contents
will be shown in pale gray. If you want to have this setting active
from startup, check Setup / search / gray out ...



## find mask auto reset on inactivity

top
If your text analysis process looks like:

type a word

press INSERT to clear the find mask
type another word

press INSERT to clear the find mask
type another word
...

then you can often save another key press this way:
Click on the reset button to toggle find mask auto reset.
For example, if you select 3 seconds, the find mask will be
grayed out after 3 seconds of inactivity (no further chars

If the mask is gray, typing another char will clear it
automatically. This way you can type another word instantly,
without pressing INSERT first.

But what if the mask is grayed out, and you want to reuse
your search term? then press any of these keys:

-  cursor left/right/home/end
-  enter
-  backspace

and the find mask will be unlocked, allowing further edits.

Find mask auto reset can also be toggled by the PAUSE key,
and it can be set active from startup by a config file entry
like "autoresetfind 3000", specifying milliseconds.



## Pro: find mask auto suggest

top
Depeche View Pro may auto suggest words for the find mask,
based on two dictionaries:

-  a local dictionary of all search terms that you used
in the current workspace. this dictionary is saved
together with the bookmarks.

-  optionally (if activated), a global dictionary
of all words from the loaded text.

First, look at the dictionary control button,
a small balloon symbol below the "mode" button.

-  if it is gray, no auto suggest at all is active.

-  if it is blue, only the local dictionary (with the
preferred search terms) is active.

-  if it is orange, both the local AND the global
dictionary (of all words) is active.

The default is blue (local dictionary only). You may
left-click on the button to create and activate the
global dictionary as well, but be aware that on large
projects, this may use 10 to 30 percent of additional
source code files, the global dict may cause memory

Activation of the global dictionary may take a moment

To use the global dictionary always, from start,
check Setup / general / create autosuggest dictionary.

Different dictionary content is used whenever you load
text from a different folder, by "open / load" (not append).
Or in other words, whenever a different set of bookmarks

Now, whenever you start typing into the find mask, DView
first looks into the local dictionary of your preferred
search terms. If there are any matches, a suggestion
is shown right near the find mask. Press ENTER to use
this suggestion instantly.

If nothing is found in the local dictionary, AND the global
dictionary of all words is active, then DView looks for
a word that starts like your search term AND which appears
most often in the text. Again, a suggestion is shown right
to the find mask. You may press ENTER to accept that,
or keep typing, to let DView create further suggestions.

The local dictionary is saved parallel to the bookmark files,
within a file with extension ".dvdb".

The global dictionary exists only temporarily within memory.

Auto suggest can be disabled by a right click on the dictionary
control button, or from startup by unchecking Setup / general /
autosuggest active from start.



# Chapter 8: Filtered Views.

top
To repeat again, typing "foo" jumps to the first occurrence of it,
and then we can go through the result locations, step by step.

But how would it be to see ALL lines containing a hit instantly,
in one large overview? That's called a FILTERED VIEW.



## filtered view creation

top
   -  type "foo" in the find mask.

-  then click on the large "F" button, OR press CTRL+A
(like "All results")

What you now see is a filtered view of all lines
having "foo" in their text.



## filtered view line picking

top
LEFT CLICK into any of those lines: the filtered view is closed,
and you jump straight to the text location of that line.

Press CTRL+A again anytime to re-create the filtered view.

RIGHT CLICK into any of those lines to have the text location
This way (using 2 or 3 windows) you can step through a result list
very fast, without the need to close and reopen the filtered view.



## disable filename listings in a filtered view

top
By pressing CTRL+D (like Detail), you can toggle the listing of filenames
in a filtered view, to see only the pure result lines.



## creating a list of all loaded or selected files

top
Whenever you clear the "find:" mask, the filtered view has no search results
to display. Instead, it turns into a plain listing of filenames:

-  if the path mask is empty as well, you get a list of all loaded files.

-  if the path mask is set, you get a list of all selected files.

However, if only ONE file is selected, the filtered view is closed,
and Depeche View jumps to the beginning of that file.



## copying a filtered view result to clipboard

top
Press CTRL+SHIFT+INSERT to copy the whole filtered view's text to clipboard.
Press CTRL+INSERT to copy only the visible lines to clipboard.



## searching words or phrases in a filtered view

top
IF you have one-click search active, AND you create a filtered view,
a conflict arises: if a LEFT CLICK into the filter view picks a line,
it can no longer run a search, can it?

Example contents of a filtered view:

FooController::testBar(char *pszCandy
FooController::importantSubFunc
FooController::testBar(char *pszCandy
FooController::importantSubFunc
FooController::importantSubFunc
FooController::testBar(char *pszCandy
Now, how do you search for "testBar" from within a filtered view?
Of course, remember the Depeche View basic keys, then:

-  press SHIFT, and keep it pressed.

-  click onto "testBar".

-> the word is searched instantly.

The same applies for phrase search: keep left button pressed,
then click on "Foo" and move the mouse over to "candy".
A phrase like "FooController::testBar(char *pszCandy"
will be searched immediately, leaving the filtered view.



## searching words or phrases picked from a filtered view in another view

top
Now that's a long headline. If you have two or three windows open,
and in the first one a filtered view, then

-  within the first window, keep SHIFT pressed.

-  then RIGHT click onto a word or phrase.

and the word or phrase is searched in a NEARBY view.



## autofilter for power users

top
If you like the filtered view so much that you can no longer
search without it, there is no need to press CTRL+A all the time.

RIGHT-CLICK on the large "F" button. AUTO-FILTER is activated, and locked.
The "F" button turns into an "A" button to make that visually clear.

From now on, whatever you search, the results are shown instantly
in a filtered view, with one exception: if there is exactly ONE
hit for your search (a straight match), Depeche View jumps straight
to that location in the text.

To stop auto filtering, RIGHT-CLICK on the "A" button again.

Note that by left-clicking on the button, you can still switch
a filtered view off or on for the moment, but the button will
still show "A" to tell that Auto Filter mode stays active.

To activate auto filter from startup, check:

Setup / search / AutoFilter mode

RECOMMENDATION: ACTIVATE AUTO FILTER PERMANENTLY.

As soon as you collected some experience with Depeche View,
and feel safe with the filtered views, you SHOULD activate
the above Setup option to have AUTO FILTER ACTIVE ALL TIMES.

It is simply the fastest way of searching through text.

Whenever a search query is ambiguous, autofilter presents you
only with the lines containing your search phrase, and in 90%
of cases, you have the best result line just one click later.



## filtering the help for subjects

top
As you may notice, this help text has a content overview,
but no word index. This is because the text itself IS the index.

For example, if you want to search the help for something
like "changing bookmark's width",

-  type

chang*book*width

-  make sure the "noseq" button is activated, to ignore
word sequences. this gives you more results.

-  then press CTRL+A.



# Chapter 9: Pro: The Integrated Text Editor.

top
Depeche View Pro contains an integrated text editor,
allowing to edit text files instantly.



## entering text edit mode

top
To edit a text file, double click on a word in it's text.

A blinking cursor appears. From now, Depeche View runs in EDIT mode,
which behaves different to the global SEARCH mode. The tool rather
behaves like the Notepad from Windows:

-  whatever you type is inserted into the text.
the find and path mask for global search are inactive.

-  blocks are marked by dragging the mouse over text,
or by SHIFT+cursor movements.

-  the INSERT key toggles insert or overwrite mode.

-  pressing CONTROL+Z reverts the most recent edit operation (UNDO).
up to 50 undo steps are available, however some operations
like block replace may count as two or more steps.

-  to run a local search for a word, press CONTROL+F
which brings up a search and replace dialogue.



## leaving text edit mode

top
While editing text, as soon as you typed in text changes,
you see two buttons at the right top, "Save" and "Revert".

-  when you click on "Save", all changes of all edited files
are saved to disk, and all open editors are closed
(DView goes back to search mode).

-  when you click on "Revert", all changes (since the last save)
are undone, and all open editors are closed.

Furthermore

-  whenever you press CONTROL+S while editing text,
the current changes are saved to disk, but the editor(s)
are NOT closed, i.e. editing continues. This way
you can save your work often and rapidly, which
is always recommended in case of some major editing error,
like a wrong block insert, or a PC crash to avoid

-  when you press CONTROL+E, it does the same as the Save button,
i.e. saving changes then ending the edit session.

-  when you press F5 in edit mode, it does the same as Revert,
i.e. discarding all changes and closing all editors.



## one click text editing

top
If you jump across many files, quickly editing here and there,
sooner or later you wish you wouldn't need a DOUBLE click,
but just a SINGLE click to edit text instantly, just like
in any other text editor.

To enable this,

-  click on the "mode" button at the bottom.

-  select "one click edit" (or "o/c edit").

Now, a single click on any word is sufficient to enter edit mode.

Of course, this requires more discipline. Look where you click!

Sooner or later, you will enter the edit mode unintentionally,
maybe inserting unwanted chars. In that case, click on the
Revert button to undo all changes.



## double click text edit save and exit

top
When the text editor is active, it's also possible to save
changes and stop editing by a double click on blank space.
To do so, check Setup / edit / save and stop by double click.



## search and replace within the text editor

top
If you are editing text, and you want to search a word:

-  press CONTROL+F to open the Find And Replace dialog.
type the word of interest, press ENTER.
the current cursor position.

this is a LOCAL search, done only within
the currently edited file.

if you then want to continue with a GLOBAL search
for the same phrase,

-  press ESCAPE to close the find dialogue.

-  press CTRL+A to filter globally for the phrase.

then, if you researched enough on global scope
and want to continue editing, click on the gray
"re-edit" button that appears at the right top.

To replace text, there are also two ways. Imagine you
want to replace the word "foo" by "bar" multiple times.
You may

-  press CONTROL+F, type "foo", then TAB, then "bar", and
then ENTER. The first occurrence of "foo" will be searched.

-  now you can click on "Find Next", or on "Replace".

-  when clicking "Replace", you see the word is replaced.
if you click "Replace" again, the next occurrence is searched,
and so on.

You also type operators in your search term:

WORD foo       - Pro: finds "foo" as an insolated word,
but skips for example thefoo or foo2.

foo OR bar     - finds either "foo" or "bar".

operators can also be disabled by the "noops" button.
It appears at the right bottom if operators are detected.

However, instead of using the Search And Replace dialogue,
you should check a unique feature of the Depeche View Editor
called Repeat Edit, as it allows faster editing in most cases.



## repeat edit: interactive search and replace

top
The DView text editor can recognize a few, simple edit operations
like a word replacement, and repeat them by pressing CONTROL+R.

Example: you want to replace "foo" by "bar" repeatedly.
To do so,

-  search the first occurrence of "foo",
by pressing CONTROL+F, typing "foo", then ENTER.

-  close the find dialog by pressing ESCAPE once.
the word "foo" is still highlighted.

-  now just type "bar". Depeche View sees that you are
replacing one word by typing over another one.

-  now press CONTROL+R (like Repeat).
DView will search the next occurrence of "foo".

If another "foo" is found,

-  you may press CONTROL+R again to have it replaced.

OR

-  you may press CURSOR RIGHT to step one character,
THEN press CONTROL+R again, to skip the current word
and have the next occurrence searched.

-  this way you can step through all occurrences of "foo"
in the current file, deciding everytime if you really
want to replace the word, or not.

-  by pressing CONTROL+SHIFT+R, the next occurrence
is searched and replaced immediately, in one step.

-  if the search and replace phrase have the same length,
pressing ALT+R finds the next occurrence and does
a case adaptive replace, for example:

initial search phrase : foosys
initial replace phrase: barsys

alt+r finds           : FooSys
then alt+r replaces as: BarSys



## repeat edit: insert word within line

top
If you need to insert the same word in several lines,
do it this way:

-  go to the first insert position, type the word.

-  press CURSOR DOWN to leave the line of edit.

-  go to the next insert position.

-  press CONTROL+R. the word should be inserted again.



## repeat edit: delete a word multiple times

top
If you need to delete the same word multiple times,

-  mark the first word by SHIFT+CURSOR RIGHT.

-  press DELETE.

-  press CONTROL+R. the next occurrence will be found.

-  press CONTROL+R again to delete the word.



## repeat edit: append word at end of line

top
The DView editor also recognizes when a phrase is appended
at the end of a line.

-  go to a line's end, type a word.

-  press CURSOR DOWN to leave the line of edit.

-  go to the next target line, where the word should be appended.

-  press CONTROL+R. no matter how long the line is,
the word will be appended after the line's last character.



## repeat edit limitations

top
The word edit auto recognition will be incomplete if you

-  change between overwrite and insert mode while editing a word

-  change multiple words in the same line.



## editor: cross copy words or lines between multiple views

top
If two or more views are open, with at least one of them in edit mode,
then text blocks can be copied in an optimized way like this:

Example:

Three views open, editing in the middle view.

-  You see some word in the left view that you want
to insert at the edit cursor in the middle view.

To do so, CONTROL+right click on that word.
-> it is inserted instantly at the edit position.

-  You see a text line in the left view that you want
to insert at the edit cursor in the middle view.

To do so, SHIFT+CONTROL+right click on that line.
-> it is inserted instantly at the edit position.

-  You see a block of five text lines you want to insert.

To do so, keep CONTROL pressed, then RIGHT click into
the first and last line of the text block.
-> it is inserted instantly at the edit position.



## editor: cross move text blocks between multiple views

top
If two or more views are open, with at least two of them in edit mode,
then text blocks can be moved in an optimized way like this:

Example:

Three views open, editing in the left and middle view.

-  You see text line(s) in the left view that you want
to move to the edit cursor in the middle view.

To do so, mark the whole line by
1. place cursor at the start of the first line
2. keep SHIFT pressed
3. press CURSOR DOWN, until all lines are marked.

Then press CONTROL+DELETE. The whole line or block
of lines is moved into the second view.



## editor: auto insert nearby words or text lines

top
Imagine you are editing text, and within the same window,
you see some text above like

int iTheFooCounter = 0;

Now you want to insert the word "iTheFooCounter"
at the editing cursor. There are three ways of doing it:

-  double click on iTheFooCounter.
-  CONTROL+C to copy into clipboard.
-  click to your editing position.
-  CONTROL+V to insert.

2. Depeche View Quick Copy, faster:

-  CONTROL+click into iTheFooCounter.
(=keep CONTROL pressed, click into the word,
release the CONTROL key.)
the word is copied into the clipboard.
-  press CONTROL+V to insert.

3. Depeche View Auto Insert, fastest:

-  click on the MODE button at right bottom,
activate Auto Insert.

-  now, while editing, just CONTROL+click
into iTheFooCounter.

-> it is copied to clipboard and then inserted
at the cursor position immediately.



## editor: saving with DOS (CRLF) or unix (LF) line endings

top
If a file contains at least one CRLF (not just LF) line ending,
the editor saves it in that mode. otherwise [unix] is displayed.

Conversion from/to CRLF format must be done outside DView,
for example with the Swiss File Knife's "remcr" or "addcr" command.



## editor: inserting TAB chars or spaces when pressing TAB

top
If a file contains at least one TAB character, insertion of TABs
is also done with native TAB chars, otherwise as blanks.

However, you may select to always insert blanks when pressing TAB
by activation the mode menu option "always blank tabs".

Detabbing of text, i.e. conversion of all TAB chars to blank chars,
must be done outside DView, for example with the Swiss File Knife's
"detab" command.



## internal text editor general limitations

top
PLEASE NOTE:

-  the Depeche View internal text editor is a simple editor,
suitable to edit many small text files, but not large ones.
Editing of large files (multiple MB of text) can be slow.

To edit large sections in a single file, it may still make
sense to use an external editor, like described here.

-  within one window, you can only edit a single text at a time.
The other text files are grayed out until you leave edit mode
either temporarily, e.g. by a global search, or permanently,
e.g. by clicking on Save.

-  only ASCII text files can be edited. it is not possible to edit
wide character files, anything containing binary data, or files
within zip archives. DView internal text like the help text
or clipboard contents cannot be edited as well.

-  wrapped text cannot be edited.



# Chapter 10: Pro: Painting In Text With Colorful Markers.

top

## highlighting words

top
You are surfing over text and want, for example, all "Chapter"
words highlighted in a special color? In Depeche View Pro,
you may do this:

-  point the mouse cursor at the word "Chapter" above.

-  press CONTROL, release CONTROL, press CONTROL, release CONTROL,
WITHOUT moving the mouse, all within a second.
(a "double control" move).

Instantly, all visible "Chapter" words will be highlighted.



## unhighlighting words

top
Repeat the above move on the same word to switch off the highlight.

To reset all highlights of all words, use Double Control on BLANK space.

You can highlight any number of words, however the number of
available colors is limited.



## highlighting character precise phrases

top
Let's look again at the great example:

FooController::testBar(char *pszCandy)
FooController::importantSubFunc
FooController::testBar(char *pszCandy)
FooController::importantSubFunc
FooController::importantSubFunc
FooController::testBar(char *pszCandy)

Now, if you want to highlight all "char *pszCandy" phrases,
whatever that is, but how do you do that?
Double Control on "char" only highlights the word "char".

-  move the mouse cursor onto "c" of "char" and concentrate.

-  press CONTROL, release CONTROL,
press CONTROL and KEEP IT PRESSED,

then PRESS the LEFT MOUSE BUTTON
and KEEP IT PRESSED,

and do this all WITHIN ONE SECOND.

the "c" should be highlighted.

if it doesn't, you were too slow.

-  move the mouse slowly over to "y" of "Candy".
don't panic, you have endless time now.

-  when done, RELEASE the mouse button.

-  then RELEASE the CONTROL key.

With this "OneAndAHalve Control Presses", you can highlight
any phrase you like.



## word highlight case sensitivity

top
If you mark "foobar" for highlight, will "FooBar" also be highlighted?
By default, yes. To change that, select "mode / case highlights",
which toggles highlight case sensitivity independent from the search.



top

## mixed display of text and bookmarks

top
Check Setup / general / allow text overlapping bookmarks
(or press CTRL+SHIFT+Q) to enable "text over bookmarks" display,
which means that text lines extending into the bookmark area
are displayed over the bookmark text.

With this mode active, the following mouse gestures can be used:

-  to give bookmarks priority over text:

move the mouse cursor into the bookmarks area,
then leave the bookmarks area to the LEFT.

-> the text is NOT visible (hidden under bookmarks)

-  to give text priority over bookmarks:

move the mouse cursor into the bookmarks area,
then leave the bookmarks area to the BOTTOM.

-> the text IS visible (over the bookmarks)



## creating bookmark remarks

top
If you have many bookmarks, you may want to arrange them in blocks,
with blank or remark lines inbetween.

To create such a remark, press CONTROL+R (like Remark).

You will be prompted to enter the remark line text
(you may as well enter nothing to create a blank line),
which is then added after the currently selected bookmark.
If none is selected, the remark is added at the end of list.



## creating an empty bookmark remark line

top
If you only want to insert a blank remark line (spacer)
after a bookmark, press CONTROL+SHIFT+R.



## changing an existing remark

top
Doubleclick onto a bookmark remark to edit it's text.



## the mousebookdelay

top
As long as the mouse cursor is located in the bookmark area,
any word search will be delayed. This is because any search
term entered also highlights bookmarks matching your search
(a pre-search in the bookmarks), so you have some time to
click on a highlighted bookmark, before a full text search
is started. Give it a try:

-  move the mouse cursor into the bookmark area.

right beside it, it should now say "on bookmarks".

-  now type what you want into the find mask.
you will notice that the search is DELAYED,
by default for 3 seconds. this delay can also
be configured by the config setting "mousebookdelay".

-  if any bookmark text (or file path) matches
your search term, those bookmarks will be highlighted.

-  as soon as the mouse is moved outside the bookmark area,
1. the search delay is set to the normal value.
2. a pending search is started without further waiting.



## using a bookmark's search context

top
When you create a bookmark, Depeche View also remembers
-  the text in the find mask
-  the text in the path mask

which is called a "search context". By default, it isn't used,
but for example, if you are searching a tracefile with a complex
expression like

error: AND warn: AND subfunc AND foofunc NOT info:

and then create a bookmark within the text, you may want to reuse
this search expression later, to save much typing. To do so,

-  click on the little box left to "DEL", right beside the bookmark.

The search context is then activated, which means:
whenever you click on the bookmark,

-  the find mask is filled in
-  the path mask is filled in



## jumping into a bookmark's path context

top
Instead on just clicking a bookmark, you may hold SHIFT and then click on it.
In that case, the path of this text location is filled in automatically
into the path mask (independently from any search context use).



## exporting and importing bookmarks via clipboard

top
Click on "setup" and then on "copy bookmarks to clipboard".
The current bookmark set is now within your clipboard,
in a plain text form suitable for emailing, or for editing
in a plain ASCII text editor like notepad.
When finished with editing, mark the whole bookmark text,
copy it to the clipboard again, then enter Depeche View.
Select "setup" and "import bookmarks from clipboard"
(or simply press SHIFT+INSERT). The existing bookmarks
are all replaced by those from the clipboard.

NOTE: search contexts cannot be exported, and are lost on import!



## searching the bookmarks, not the text

top
If you have created many bookmarks and start loosing the overview,
have a close look on how the bookmarks are highlighted sometimes:

Whenever you type something into the find or path mask,
the bookmarks are searched FIRST if their content may match.
If so, the matching bookmarks are highlighted.

Therefore try this:

-  move the mouse into the bookmark area,
to delay automatic search while typing.

-  then type, for example, "class".

-> all bookmarks having "class" in their bookmark title,
or in their full bookmark line (remembered internally)
will be highlighted.

-  or type ".cpp" into the path mask

-> all bookmarks with a location in a .cpp file will be highlighted.

-  after several seconds, dview will run a search for what you typed;
if you're interested just in the bookmarks, ignore that.

but if NO bookmark is highlighted, your search term didn't match
any bookmark - so you were about to run a normal search, anyway.



# Chapter 12: The Message Log.

top
Status informations are shown
-  in the line right near the "find:" mask

-  and in the message log at the right bottom.

Messages in the message log disappear after a few seconds,
but you can show these messages again by the log control button,
a small triangle in the very right bottom of a fullscreen view.
Hoover the mouse cursor over it for temporary display,
or click on it for a permanent display of log messages.



# Chapter 13: Combining DView With An External Text Editor.

top

## how to jump from dview into your favourite editor

top
Imagine you are within DView, the active file is foo.cpp,
and you are reading a text line like

FooSys::BarDriver

now you want to jump into an external text editor,
to exactly that location. Then do the following:

-  select: Setup / edit / external text editor / select
and browse for your favourite editor's .exe file.

If the text editor command contains only that .exe,
DView will auto-append the absolute filename of the
target text when calling it. Alternatively, you may append

$absfile - the current file's absolute filename$curfile    - the current file's relative filename

surrounded by quotes, to be safe on paths containing blanks.
For example, your edit command may look like:

c:\Program Files\FooEdit\FooEdit.exe "$absfile" then close the Setup dialog, and press CONTROL+S to save the changes into the configuration file. Now, within any text shown in DView, - locate the mouse on a text line of interest, in our example "FooSys::BarDriver". - press CTRL+E like "Edit in External Editor". (please do not try that in this help text, it won't work) Now the following should happen: - the text line under the mouse cursor, e.g. "FooSys::BarDriver", is copied to clipboard. - the exernal editor is started, and the current filename is passed, e.g. "c:\the\src\tree\foo.txt" Now you are within your editor, with the current text file loaded. To jump to the text line of interest, - open a search dialog (CTRL+F within most editors). - press CTRL+V. the text line of interest is pasted from the clipboard into the search dialog. - press ENTER. maybe you also have to press ESCAPE to close the search dialog. And then you are within the editor, in the same file, at the same text line as you were in DView. To repeat, the action sequence is - point the mouse at a relevant text line within DView. - press CTRL+E. the external editor should come up, loading the text. - press CTRL+F, CTRL+V and ENTER in the editor. Note: you may also use CTRL+SHIFT+E instead of CTRL+E to skip the text copy to clipboard before the editor is started.  ## how to jump from your favourite editor into dview top Imagine you are within your external editor or IDE, within a file "foo.cpp", and see a section like int FooSys::BarFunc() { ... } now you wonder "who is calling BarFunc", i.e. where is the word appearing in a global search? Naturally, you want to run a quick search in DView. To do so, there are two ways: 1. manual application change and search - mark the word "BarFunc" in your editor, usually by a double mouse click. - press CTRL+C to copy that to clipboard. - activate the DView window, assuming that you ran DView previously. - press CTRL+V to search "BarFunc". This procedure can be optimized the following way: 2. DView Pro: clipboard hot search from external applications - in DView Pro, click on "clip". - under "Clipboard Hot Search", select "Search in First View". - click on "Apply Changes". the "clip" button will be highlighted in orange. - mark the word "BarFunc" in your editor, usually by a double mouse click. - press CTRL+C to copy that to clipboard. -> the word is searched instantly in DView.  ## Pro: auto reload of changed files top With Depeche View Pro, F5 reloads all changed files. CONTROL+F5 reloads only the current file (where the mouse is located). To have all changed files reloaded automatically whenever you re-enter the DView window, right click on the reload button, to activate the auto reload mode. If an editor is open in the current view, F5 does not reload, but discards editing changes and closes the editor.  ## Pro: optimizing and skipping of auto reload top If you have many text files loaded (10000 and more), there can be a second of delay whenever you reenter the DView window, because DView has to check all those files for changes.  ## skip autoreload manually top If you press SHIFT, or CONTROL, or ALT while reentering the DView window, you can skip the auto reload file scan. A blue "reload" button is shown, allowing you to do the reload scan later on. For example, if you are outside DView in a text editor, and then want to copy a phrase from within DView, just keep CONTROL pressed as you enter the DView window to INSTANTLY copy a phrase, without waiting a millisecond for any reload operations.  ## skip autoreload by file size top Autoreload of large files may also be postponed automatically, via Setup / workspace / delay auto reload of files larger than. Just enter a MBytes value here and set the check box.  ## limit autoreload to directory names top Imagine you have a 20000 files project loaded that looks like: myproject\BaseLib\include myproject\BaseLib\source myproject\Tools myproject\DataBase myproject\GUI\library myproject\GUI\application myproject\Config\testdata myproject\Config\examples myproject\log myproject\errors However, you are editing only within: myproject\GUI\application myproject\Config\testdata and produce output files into: myproject\log myproject\errors then it doesn't make sense to scan ALL files for changes whenever you reenter DView. Instead, the tool should scan only the four top level folders where changes are expected. To do so, enter Setup / workspace: - check "limit auto reload to top level folders". - and below that, type the blank separated list of absolute path names: myproject\GUI\application myproject\Config\testdata myproject\log myproject\errors Be aware that you can only list full top level path names as they are shown under every :file: header, but no "*masks*" or sub folder patterns of any kind. You may enter a line of up to 2000 characters.  # Chapter 14: Defining A Workspace. top ## how to load only specific file types top If you open or append a directory content, ALL text files from within that directory tree will be loaded. In many cases, this is too much. Especially when searching in a huge source code base, you may want to load all .java or .cpp files, but not every .xml or .tmp file. This can be achieved 1. by the file loading filters and options dialog 2. or by running dview from the command line 3. or by creating fileset definitions.  ## file loading filters and options dialog top Click on the four-light button right next to "open". The file loading options dialog appears, which is basically self-explaining: hoover the mouse over any element, and read the local help text shown under "additional infos". Just a short summary of the most important fields: - if you want to load ONLY files containing some word in their filename, enter the list under "load only from filenames", separated by blanks. if you want to EXCLUDE files containing some word, list them prefixed by "!". for example: .cpp .hpp .java !.tmp !.bak !.save loads foobar.cpp and goo.java but NOT foobar.bak - if you want to EXCLUDE subdirectories containing a word in the directory name, make a list of words prefixed by "!", e.g. !\tmp !\save excludes all files from "tmp", "tmp1", "tmp100" and "save" directories.  ## all command line options top Depeche View uses the Swiss File Knife file selection syntax. short format: dview [options] singleDirName [filePattern1 filePattern2 filePattern3 ...] long format: dview [options] -dir mydir1 [-file fpat1 ...] -dir mydir2 [-file !fexpat3 ...] The available options are: -area ... set absolute startup window location and size -space ... set relative startup window location and size for details see display area size and location. -max start maximized, covering the whole desktop. -lean start with non maximized width, in isolated view mode (without a master frame, without pull down menu). as long as there is no second window, the initial one can be maximized by F1. -edit Pro: if only a single file is loaded, enter edit mode. -isolated starts with isolated frame mode. you may also use "-iso". -overscan starts with isolated overscan mode. you may also use "-over". -verbose during startup, tell in the message log in detail which root dirs, dir masks and file masks have actually been selected for loading. helpful to analyze why some files are loaded, and others not. the output may differ slightly from what you specified, for example "*" file masks may be added automatically if you only supplied an "!" exclusion, or ".zip" file masks may be converted into path masks (i.e., dir masks starting with "*"). -nosub do not load subdirectory contents. -hidden also load all HIDDEN or SYSTEM files (not default). helpful if you need to search through configuration files, for example of your web browser. -allbin also load all binary files (extracting text parts). -wrap[=n] wrap long text lines at current screen width, or column n. -wrapbin=n wrap text extracted from binary files at column n. -arc Pro: load contents of .zip .jar .ear etc. archives and also .gz, .bz2, .tar, .tar.gz and .tar.bz2 as deep as possible, including nested archives. -qarc Pro: quick load archives, load only archive entries at the top level, skipping nested archives. -since load only files changed since this timestamp, e.g. "2006-01-31 12:15:59" or 20060131121559 2006-01-31 or 20060131 today : files changed since midnight of today 1d : changed since 1 day, i.e. not counting from midnight, but 24 hours into the past 5h, 30m, 10s : 5 hours, 30 minutes, 10 seconds. -before load files modified before that timestamp. -today short replacement for "-since today". -usectime use creation time instead of modification time. may not be available on some filesystems. -sincedir compare against another directory, load files that have been added, have different time, or content. -sinceadd like -sincedir, load only added files. -sincedif like -sincedir, load only changed files. does not load files with diff. time but same content. does not load added files. -sincechg load files with different content, and added files. does not load files with diff. time but same content. -umlauts with binary-to-text conversion, include german characters. -flist fn or "-fl fn" reads list of filenames from file fn. -fileset x use a fileset definition. more on that below. -utf load also utf-16 (ucs-2, wide char) file contents. this option is experimental, and will only extract plain ASCII text contents from those files. -memlimit=n set the caching memory limit to n mbytes (default=300). if zip etc. archive processing is very slow, it may be caused by a cache overflow. try to increase the -memlimit then. details of filename / extension selection: - when specifying a filename pattern beginning with a dot "." and no wildcard, only files with this extension will be selected. - otherwise the pattern is searched anywhere within the filename. to force a filename start comparison, say \pattern (with a slash). - filename means the relative filename, not directory or path name.  ## command line file selection examples top dview foodir .txt .hpp .cpp loads all .txt, .hpp and .cpp files from the directory tree foodir, including all subdirectories. this is the short file selection syntax, with ONE directory name, and MANY file patterns. dview -nosub -today foodir loads all text files from foodir that have been changed today, however excluding sub direcory contents. dview -dir foodir1 -file .h .c -dir foodir2 -file .txt !.tmp.txt loads all .h, .c and .txt files from foodir1 and all .txt files from foodir2, however excluding all files from foodir2 ending with ".tmp.txt". this is the long file selection syntax, supporting any number of directories and any number of file patterns. dview -arc -dir foo1.zip foo2.tar.bz2 loads all text files from foo1.zip and foo2.tar.bz2. note that archive files are treated as directories. by default, archive files embedded within the listed archive files are loaded as well. dview -arc -dir foo1.zip foo2.tar.bz2 -file .txt .js .cc loads .txt, .js and .cc files from the archives foo1.zip and foo2.tar.bz2. in this case, the same file filter is used for both directories. dview -arc -dir foo1.zip -file .txt -dir foo2.tar.bz2 -file .cpp load all .txt from foo1.zip, and all .cpp from foo2.tar.bz2. in this case, separate file filters are used per directory. Typical errors in command line file selection BAD: dview -arc foo1.zip foo2.tar.bz2 -> this actually means "load all files having foo2.tar.bz2 in their name from foo1.zip", and will not load anything. use "dview -arc -dir foo1.zip foo2.tar.bz2" instead. BAD: dview -nosub -arc -dir foo1.zip -> exclusion of subdirectories is not supported within archive files. however, if you want to disable the processing of archives embedded within archives, you may use "dview -qarc -dir foo1.zip" BAD: dview -arc -dir . *.xpi *mysrc.tar.bz2 -> the intention is to load only contents from .xpi files and mysrc.tar.bz2. however, if many other archive files are present within the current directory ".", dview will SCAN THEM ALL, searching for files embedded within ANY archive having ".xpi" or "mysrc.tar.bz2" in their name. so, the command must be rewritten to list the exact names that should be loaded, like dview -arc -dir foo1.xpi foo2.xpi foo3.xpi mysrc.tar.bz2 Whenever in doubt, use option -verbose to see in the message log what DView really tries to load.  ## defining filesets top Another way is to define "file sets", which are simply text files containing: - directory names to include or exclude - filename patterns or extensions to include or exclude example: -------- file mywork1.txt begin ---------- # within this directory tree -dir mysrc\baselib # take only .h .c .txt files -file .h .c .txt # within this directory tree -dir mysrc\foobank # exclude all save and tmp dirs !\save\ !\tmp\ # then take only .hpp and .cpp files -file .hpp .cpp # from this directory tree -dir "C:\Docs With Blanks" # take all files except .bak and .tmp # and except names containing "old stuff" -file -all !.bak !.tmp "!old stuff" -------- file mywork1.txt end ---------- As you may guess, lines having '#' as first character are remarks, and names containing blanks must be surrounded by double quotes "".  ## using workspace definitions from the command line top So the above fileset defines 3 directories, and what to load and not to load from those directories. Now copy the above text into a file "mywork1.txt", then run dview from the command line: dview -fileset mywork1.txt And dview will load the text files as defined in mywork1.txt.  ## using workspace definitions when starting by icon top You may also create a Depeche View Icon on the desktop, via the Icon button, then open the Icon properties, and change the Icon's "target" field. For example, if dview is located in C:\app\bin, you may change it to C:\app\bin\dview.exe -cfg1 -fileset mywork1.txt Then, a double click onto that icon will load that workspace. (-cfg1 is not strictly required, but recommended as it tells the tool that it's started by an Icon.)  ## bookmark filename definition with filesets top When using filesets, what will be the bookmark filename? Just as if you say "-dir mydir1 -dir mydir2" on the commandline, the first directory tree will be taken to build the bookmark file base name, all others will be ignored. In the example -dir mysrc\baselib -file .h .c .txt !.hpp !.cpp -dir mysrc\foobank -file .hpp .cpp -dir mysrc\formats -file -all !.bak the bookmark filenames would be mysrc\zz-baselib-bookmarks.1.dvbm mysrc\zz-baselib-bookmarks.2.dvbm mysrc\zz-baselib-bookmarks.3.dvbm ... If you want to load bookmarks from somewhere else, read more here.  ## using plain filename lists top Sometimes you may want to load files whose names are listed in a simple text file, called a file list. This can be done by dview -flist names.txt  ## loading text extracts from binary files top By default, dview skips all binary file contents. But sometimes it may be interesting to take a peek into binary files, e.g. to search through meta informations in (smaller) media files. To do so, you can - click on the load options button right next to "open", then check "load text from binary files". - OR: click "open / load text from a single file", then select a single binary file. this way you don't have to check the "load text from binary files" option. - OR: run dview from the command line, supplying a single binary file name - OR: run dview from the command line, with option "-allbin" and a directory name, e.g. dview -allbin mydir In all these cases, dview tries to identifiy readable text informations from binary files encountered, which may or may not produce anything useful.  ## loading hidden and system files top Hidden files and directories are, as the name implies, invisible, so the directories do NOT appear in the Open dialogue, and their contents are NOT loaded, even if you load a surrounding directory. But sometimes it is helpful to load also hidden files. For example, if your Firefox browser behaves unexpected, it is very helpful to take a deeper look into it's configuration files, especially "prefs.js". But where are those files? Under Windows XP, they are somewhere below C:\Documents and Settings\userid\Application Data\Mozilla\Firefox\ ... But, to repeat, because "Application Data" can be a HIDDEN folder already, it may NOT appear within the Open dialogue. So try exactly these steps: 1. click on the load options button right next to "Open", check "include hidden and system files", and close Setup. 2. select "open / load all text from a folder". 3. click into the "folder" text entry field at the bottom. (may not work under Linux, as the WINE dialog might be limited) Now type MANUALLY: - C:\documents and settings\ - then your userid and "\" - then "application data\" as soon as you type the "\", the Open dialog will offer you further directories within the hidden folder! - now type "mozilla\firefox" and finally press ENTER. so the whole path would be C:\documents and settings\yourUserID\application data\mozilla\firefox 4. dview will load all config files of firefox. 5. type "prefs.js" into the PATH: field. Now you should see what the startup config of Firefox is. Another way: use dview from the command line The command dview -hidden -dir "C:\documents and settings" "*firefox*" Does the following: - walk through all normal and hidden files within "C:\documents and settings", including all (hidden) subdirectories. - but load only files having "firefox" in their path. (*firefox* is called a "path mask" in dview, identified by the wildcards.)  ## excluding subdirectory contents during load top By default, if you select a folder through the Open button, dview loads the files from that folder and all it's subdirectories. If you do NOT want to include subdirectory contents, - click on the load options button right to "open". - disable "include subdirectory contents" and close Setup. On the next Open or Append operation, subdirs will be excluded. When running dview from the command line, use option "-nosub".  # Chapter 15: The Configuration File. top Intense Depeche View users will be interested in - how to change default settings, e.g. if autofilter is active already on startup. - how to redefine (some) hotkeys with own commands. - how to write own scripts and call external programs from within Depeche View. - how to extend the syntax highlighting by further languages, and how to change colors of the syntax highlighting. this and more is made possible by a configuration file.  ## creating a configuration file top Click on "setup" at the right top, and then on "config". Look at the configuration file section. Depeche View searches for a file dview-config.txt - within the current dir (startup dir) of the program. - in all directories listed in the PATH environment variable. (Linux users: the PATH under Wine is something different than the PATH environment variable, read on here.) - parallel to it's own executable (in the same dir as dview.exe). - in a folder "DepecheView" under "My Documents". ( e.g. C:\Users\yourUserName\Documents\DepecheView\dview-config.txt ) - in the "My Documents" folder (at top level). ( e.g. C:\Users\yourUserName\Documents\dview-config.txt ) if the file is found in any of the above, this one is taken. otherwise, the tool will suggest a path for creation: - if DView it is NOT located within "Program Files", the location parallel to it's own executable is suggested. - otherwise, the "My Documents" location (top level) is suggested. the found or suggested location is then displayed in Setup / config. - if no config file exists, a create button is shown. to create a config at the suggested location, click on create. (if you prefer to create a config within "My Documents", no matter what is suggested, then SHIFT or CONTROL click on create.) - the config is created, and dview tries to run notepad to allow instant editing. if no notepad window appears, open and edit the config file manually with any text editor. if notepad appears but cannot load dview-config.txt, read on under config creation and edit errors. further information is present within that config file itself, through remark lines starting with "//", or by remark blocks surrounded by "/*" and "*/". - save your changes (press CTRL+S within notepad). - re-enter Depeche View. the new or changed config file should be loaded automatically, but sometimes it may also be necessary to Close and Re-Run Depeche View. Any errors are listed in the message log at the right bottom. Some features are explained only in the config file, not in this help. Special case: the PortableApps mode If the Depeche View Lite executable is named DepecheViewPortable.exe, then it searches and creates the config file in a folder "Data" parallel to it's own executable.  ## automatic configuration storage top Since Depeche View 1.4.5, most of the settings that can be changed in the Setup dialog or mode button menu are written back to the configuration file automatically. The configuration file is written - whenever you press CONTROL+S (like Save), outside the text editing mode, IF there are any configuration changes. - whenever you press CONTROL+SHIFT+S outside the text editing mode, no matter if there are configuration changes. - when exiting Depeche View. This means, in most cases you don't have to actively save changes of your settings, it will be done anyway when you leave the program. But: if you leave the DView Window, then do something in another application, then re-enter DView, the config file might be reloaded, and your config changes are lost. Therefore in that case, always press CONTROL+S after closing the Setup dialogue, or after toggling things like Autoreload. Config saving requires that DView has full write access to the configuration file. Therefore dview.exe should be stored in, and run from, a folder where you always have write access, like "C:\app\dview", or some subfolder on the Desktop, or within "Own Documents". Please test if the config file can be written by selecting Settings / Save Config Now from the pulldown menu (in master frame mode). If writing fails, this function will produce a popup message with detailed infos.  ## disabling automatic configuration file save top Automatic config save at program end can be disabled by editing the line "saveConfigOnExit" in the config file. Config save on every CONTROL+S can be disabled by editing the line "saveConfigOnCtrlS" in the config file. You then have to select "Settings / Save Config Now" in the pulldown menu to save the config, or use CONTROL+SHIFT+S.  ## automatic extension of existing configurations top DView now changes entries in the config file automatically. To do so, it scans the file for active settings, then changes these. Active means NOT out-commented by // or /* */ comments. However, in config files prior to DView 1.4.5, most entries where out-commented. In this case, DView will append changed settings at the file end, isolated from their help text blocks. To avoid this, it is recommended to create a new default config file through Setup / config / create to ... , then merge your old changes (scripts, syntax highlightings) into that, and finally replace your old config file by the new one.  ## non-automatic configuration entries top Some settings are not available via the Setup dialog and can be changed only by editing the configuration file manually: linux autosaveconfig maxload maxcache reload-scan-max-time oneclicksearchdelay cursorblinkspeed userkeys autoloadconfig searchdelay mousebookdelay noumlauts tabsize wordshowtime wordshowdelay clipautodelay separatorline Most of these settings are very specific tuning parameters that you never need to change. For detailed descriptions, read the remarks in the config file. Furthermore, to define own script commands, or to extend the syntax highlighting by further file extensions, you also have to edit the config file.  ## editing an existing configuration file top If a config file exists already, - Setup / config shows an edit button, to allow editing anytime. - alternatively, you may right click on the setup button itself, to edit the config instantly.  ## config creation and edit errors top If you try to create or edit a config file, but the notepad pops up with an empty window, unable to load the file, the reason might be a protected folder like "Program Files". If you copied dview.exe into a folder like C:\Program Files\DView the tool may suggest to create dview-config.txt therein. But this works only if the tool is run as Administrator, which is NOT the default under Windows 7, even if you are an admin user. Without admin rights, Windows Vista and Windows 7 will REDIRECT any read or write access to that folder to: C:\Users\yourUserName\AppData\Local\VirtualStore\Program Files\DView\... If such a folder was created by Windows, it is recommended to delete it instantly, as the redirect seems to fail for notepad, which cannot load and edit a config file from that path. Solution 1: move dview.exe to a different folder Do not copy dview.exe to a Program Files folder, but for example to a self-created folder like C:\app\dview or to some sub folder of your desktop, or into "My Documents". Solution 2: create dview-config.txt to My Documents Since DView 1.4.5, you may use Setup / config / create to ... then select your (My) Documents folder, and create dview-config.txt directly therein. If there is a "create" button at the left, you may also SHIFT click on it to do this instantly. On the next start, DView should find the file. However, if the tool is located in "Program Files", and the above mentioned VirtualStore file was created already, you have to delete that first, or your new config will be ignored.  ## Pro: running self-defined commands on hotkeys top You can configure Depeche View Pro to call external tools, e.g. text editors or IDE's, or to change the find and path mask through self defined hotkeys. Read the comments on that in the configuration file.  ## Pro: running own scripts with the Razer Naga gaming mouse top The Razer Naga mouse comes with a built-in number keypad, providing the digit keys 1, 2, 3 ... like on a normal keyboard or like on a numeric keypad block. In other words, the Naga provides more than NINE extended buttons which can be used for scripting in Depeche View Pro. This however requires that - the Naga is running in NUMLOCK mode. turn the mouse over, look at it's bottom side. the config switch must be set to "Num" instead of "123". this way the mouse provides a numeric keypad. - the Windows keyboard must also be set to NUMLOCK mode. If it isn't, press the "Num" key on your PC keyboard. If you have no "Num" key (like on many notebooks without a numeric keybad block), connect any cheap external keyboard, then press "Num", then disconnect that. After these preparations, test your Naga keys: - click on Setup / config, move the mouse into "additional infos". - then press any of the Naga keys. you should see the message "Numeric keypad n detected". If not, check both the mouse and your PC keyboard for the settings described above. Don't be irritated if you hear beeps; this is because the Naga sends key press events into the Setup dialogue. When used for scripting within DView Pro, the keys do not beep. If the test succeeds, you may write config file scripts like on key num1up set findmask = "class$findmask "

In this example, pressing (and then releasing) the key "1" on the mouse
extends the current search term to search for a class of that name.

NOTE: as soon as you define one or more "on key num..." commands,
the number keypad keys can no longer be used to type digits
into the find mask, or within text in the editor.



## changing fonts

top
The display font as well as bookmark fonts can be changed
under Setup / fonts. DView will store your font settings
in the config file within statements like

mainfont Fixedsys,8,12,400,0,0,0,0,0

which are explained in the config file itself. All of the
given parameters are selected within the Setup dialog,
except for the character width (first number on every
font statement). If you want to further optimize the
width versus height ratio of a font, you may do so
by changing that first value directly in the config file.



top
If you edit and save the configuration file outside dview,
then re-enter dview by activating it's window, changes in
the config file should be loaded automatically.

If you're not sure if changes have been loaded yet,
click on "reload" within Setup / config.

search the config file for a line with "autoloadconfig".



## using alternative config files

top
As the other buttons in the setup dialog say, you can also load
config files from any location, or save them to any location.

On restart of dview, the tool searches for "dview-config.txt"
in all directories of the PATH environment variable.

But you may also supply an option "-conf filename" on startup
to load the config from a given filename. Option -conf must be
supplied first, right after "dview" (or after -linux).

If you run dview through a desktop icon, "-conf filename"
can be supplied in the icon's properties.



## configuration by environment variables

top
Many settings available through the config file may also be defined
by an environment variable DVIEW_CONFIG. If present, those settings
have priority over the config file settings. For example,

set DVIEW_CONFIG="case:yes,searchseq:no"



## finding new config features in new dview versions

top
Whenever you download a new version of Depeche View, most probably
the config file supports new features. To find out about them,

-  click "Setup" then "config"

-  click "create to", then select a new config file name,
for example "dview-config-new.txt"

-  the latest default config will be written,

this way, you can read through all new config features,
play around with them (the new config file name will be used
until you close dview), and then decide what to take over
from the new one into your old config file.



# Chapter 16: Linux Specific Configuration.

top

## changing the PATH under Linux

top
Whenever the PATH is mentioned in this help, Linux users must be aware
that in many cases, this is NOT the PATH environment variable of their
Linux command shell, but a registry entry in the WINE environment,
called the "WINE PATH" here. To edit and extend this WINE PATH,

-  type "wine regedit"

-  then search for the word PATH (activate full word search),
somewhere under System...Environment

-  it's content should read like "C:\windows\system...".

Then find out in what WINE compliant directory dview.exe is located.
e.g. "Z:\home\user". Then edit the WINE PATH, and add this string.

DView searches all directories of the WINE PATH for "dview.exe",
"dviewnnn.exe" (with nnn being the version number) and simply "dview"
to determine, for example, the default location for the config file.



## activating the ALT key under Linux

top
It is recommended to reconfigure KDE or GNOME to NOT use the ALT key to
control window movements (eg. Ubuntu: system/settings/window settings).
Then you can use the Alt key the same way as with windows.



# Chapter 17: The Easy Settings Button (No Panic Button).

top

## how to disable one click search and other stuff temporarily

top
Face it - whenever a colleague, who has never seen Depeche View before,
tries to do something with this tool, he will

-  click around in the text, just to activate the window.

-  and if you have one click search active,

-> your colleague will PANIC, and possibly jump out of the application window.

-  OR: he uses dview already, but doesn't have all those
user key definitions that you use.

-  OR: he doesn't know what an autofilter is good for,
but you use it all the time.

To avoid such irritating situations, do the following:

1. colleague approaches your working place.

2. click on the big round button right to "F" or "A".

-> one-click search is deactivated in all views.

-> your custom keyboard layout (if any) is decativated in all views.
(ukeys button at the right bottom grays out)

-> autofilter is deactivated in the current view.
(filter button at the right bottom grays out)

-> if a filtered view is open in the current view, it is closed.

instead of clicking on the button, you may also

-  press CONTROL+BLANK

which is a bit more inconspicuous.

3. now, let the colleague show you something in the text.
he can click on any word - nothing will happen,
except some text surf, which is actually a bit easier now.

whenever you want to search a visible word or phrase,
use SHIFT+LBUTTON instead of just the LBUTTON.

4. as soon as the colleague leaves your working place,
and you need the full input power back,
press CTRL+BLANK again. Be aware that you cannot
use the easy button to reactivate power settings -
this button guarantees easy settings, and nothing else.



# Chapter 18: Tips and Tricks.

top

## getting more search results

top
"I cannot find anything in those loaded files... But it MUST be somewhere!"

If you are rather sure that a searched phrase MUST exist within the directory
you loaded into dview, but still get no satisfying results, try these steps:

1. are you sure that EVERYTHING from the directory was loaded?

-  may the directory contain HIDDEN files or folders?

Some applications (e.g. Eclipse) hide their workspace
configuration data in hidden folders like ".settings".

then Open the folder again.

-  maybe you overlooked a (hidden) folder parallel
to the folder you actually loaded?

-  really loaded the subdirectory contents?

-> check if the "include subdirectory contents" is active

-  Pro: may the stuff be hidden within .zip, .jar, .tar etc. files?

-  do you try to search through binary files?

e.g. PDF files will usually NOT produce helpful results,
as the actual text therein is compressed.

-> research how to convert binary files to plain ASCII.

For many file formats like .pdf and .xls,

-  do you try to search wide character (UTF-16, UCS/2) files?

by default, those files are treated as binary, and not loaded.
but you may check "load text from wide character files" in the
command line option "-utf". this feature is experimental,
and it only extracts any ASCII text found within those files
(no true conversion of special characters).

-  did you click on "open / load ..." instead of "open / append ..." ?

then older file contents may have been dropped from memory.

-> clear the FIND: and PATH: mask, then click on "filter",
to view the list of all loaded files.

2. are your search settings fuzzy enough?

-  the "case" button should NOT be active (case insensitive search).

-  the PATH: field should be empty (global search accross everything).

-  searching for words that may contain special characters of European languages?

then accent insensitive search may help.

-  not sure if the word is somewhere between "" quotes, '' or even ´ quotes?
or may foo\bar\path also appear as foo/bar/path ?

then punctuation insensitive search may help.

-  searching a combined phrase like "foo*bar"?

+  then click on the "noseq" button to ignore the word sequence.
with "noseq" active, the phrase "foo*bar" will find:

(1)   foo went to the zoo and talked to bar.
(2)   bar was talked to when foo walked to the zoo.

Case (2) will NOT be found with the default setting (noseq not active).

+  if you are reading through wrapped text,
"bar" may appear on a different line then "foo",
and therefore some possible results may not be found.

-  sure it is exactly that word? try word variations, e.g.

color OR colour



## displaying TAB characters within the text

top
Press CTRL+T to highlight all TAB and SPACE characters in the text.
TABs will be shown in blue, SPACEs are shown in yellow.



## select very large TAB sizes for better reading of CSV tables

top
If you have loaded TAB separated ASCII CSV data, e.g. a spreadsheet export,
try CONTROL+SHIFT+TAB to select very large TAB distances from 20 to 60 chars.
This should make reading of table data much easier.

Use just CONTROL+TAB to go back to normal TAB sizes from 2 to 8 chars.



## word wrapping

top
Press CTRL+W to wrap the current selected text to the current window size.
Existing line breaks (paragraphs) are kept; this means that if there are
only short lines that do not go beyond the right window border, you will
see no difference.

If you wrapped a text, then change the window size afterwards,
or change to a window with a different width,
you have to press CTRL+W again to readjust the wrapping.

With stream text, e.g. text extracted from PDF files, you may also try
CTRL+SHIFT+W to force a streamed wrapping, ignoring simple line breaks.

There is also a command line option to wrap text while it is loaded,
but this is less flexible as you may not change the wrapping afterwards.

Limitations:
-  wrapped text cannot be edited unless unwrapped,
and word wrapping cannot be used in text edit mode.
-  this help text cannot be wrapped.



## how to search a combination of "30", "*" and "60"

top
If you want to search occurrences of the literals "30", "*" (the actual star)
and "60" within the same line, because you want to find stuff like:

long   nSeconds = 30 * 60;       // wait 30 minutes
long   nSeconds = 30*60;         // wait 30 minutes
double dSeconds = 30.0 * 60.0;   // wait 30 minutes

a bit of thinking is required:

-  just typing "30*60" may not help, as it finds literal "30" and "60"
with any text inbetween, producing too many results.

-  switching off operators won't help as well, in this case
only the literal 5-character string "30*60" is searched.

-  escaping the phrase like "30***60" doesn't help either,
dview takes the first "**" encountered and searches
for a literal "30*", then anything, then "60".

Therefore, use "30 AND ** AND 60" instead, to make sure a literal star "*"
is really included in your search.



## Pro: example for extending the syntax highlighting

top
Depeche View comes with a default syntax highlighting for some programming languages,
which is kept very simple, using very short word lists to keep the executable small.

Depeche View Pro allows to extend the syntax highlighting by selfdefined languages.

For example, if you want to read through many JavaScript files, it can make sense
to extend the syntax highlighting by something more comfortable.

To do so, add the following block to the configuration file:

<Language name="javascript" ext="js" commentLine="//" commentStart="/*" commentEnd="*/">

<Keywords name="keys6">
</Keywords>

<Keywords name="keys2">
</Keywords>

</Language>

This is an empty language definition for all .js files, defining two groups of keywords.
By the way, it is "keys6" and not "keys1" by intention, more on that below.

Now, all you have to do is to fill in long keyword lists between the <Keywords>
and </Keywords> lines.

langs.xml
plugins\APIs\javascript.api

Search "langs.xml" for the string "javascript", and you find a block like

<Language name="javascript" ext="js" commentLine="//" commentStart="/*" commentEnd="*/">
<Keywords name="instre1">abstract boolean break byte ...
</Language>

Simply take the words from the <Keywords> block and fill it in above after "keys6":

<Keywords name="keys6">
abstract boolean break byte
case catch char class
...
</Keywords>

But these are only the most basic commands of Javascript. What is missing is a long list
of well-known class and object names. To do so, load the plugins\APIs\javascript.api file,
which contains a list of keywords like:

Anchor
Applet
Area
Array
...
window
with
zIndex

Copy and paste the whole list into between <Keywords name="keys2"> and </Keywords>,
that it will look like:

<Keywords name="keys2">
Anchor
Applet
Area
...
</Keywords>

That's it! After a reload of the config file, all .js file contents will be highlighted
by the new definition.

And why "keys6"? We could have used "keys1" as well, but by default,

-  keyword lists 1 to 5 all use BLUE color.
-  keyword list 6 uses ORANGE color.

therefore we use "keys6" to have an instant optical difference.



## Pro: changing the syntax highlighting colors

top
DView's syntax highlighting supports six different keyword groups,
and each group can be assigned an individual color in the config file:

color shl-keys1   0000D0   // keywords group 1, blue color
color shl-keys2   0000D0   // group 2
color shl-keys3   0000D0   // group 3
color shl-keys4   0000D0   // group 4
color shl-keys5   0000D0   // group 5
color shl-keys6   F06000   // group 6, orange
color shl-remarks 008060   // remark lines and blocks
color shl-strings 707070   // string literals

The "0000D0" etc. values are RGB encoded colors, i.e. 0000D0 is BLUE.
The default highlighting uses group 5, 6, and the remarks and strings
color definitions. If you change these lines, the default colors are changed.

If you want to extend the syntax highlighting with own experimental colors,
best use groups 1 to 4, like:

------------- example-begin ------------

<Language name="mylang" ext="xyz efg" commentLine="//" commentStart="/*" commentEnd="*/">
<Keywords name="keys1">foo</Keywords>
<Keywords name="keys2">bar</Keywords>
<Keywords name="keys3">goo</Keywords>
<Keywords name="keys4">hoo</Keywords>
</Language>

color shl-keys1  FF0000  // red
color shl-keys2  00FF00  // green
color shl-keys3  0000FF  // blue
color shl-keys4  00FFFF  // cyan

------------- example-end ------------

In this example, all files with an extension of ".xyz" or ".efg"
(make sure NOT to write the point "." in the extension list)
will be highlighted in six different colors:

-  all "foo" words will be shown in red.
-  all "bar" words will be shown in green.
-  all "goo" words will be shown in blue
-  all "hoo" words will be shown in cyan.

-  all remarks starting with "//" will be shown in green (default color).
-  all "" and '' string literals will be shown in gray   (default color).

More details and examples can be found in the config file's remarks.



## changing the display area size and location

top
By default, Depeche View covers nearly the whole desktop.
You can configure the tool to use a different area from start:

-  by setting a configuration entry "area x:y:w:h"
or by supplying a command line option "-area x:y:w:h"

where x,y = position of left top corner
w,h = width and height of area in pixels

example: area 20:20:800:500

-  by setting a configuration entry "space"
or by supplying a command line option "-space"
to use the whole desktop minus some free border space.

the space option accepts these parameter formats:

space n        - space for top,right,bottom,left
space v:h      - vertical and horizontal space
space t:h:b    - top, horizontal, and bottom space
space t:r:b:l  - top, right, bottom, and left space

examples:

space 0        - cover the whole desktop, leave no space around
space 20:40    - leave 20 pixels vertically, and 40 horizontally
space 0:0:40:0 - cover whole desktop except 40 pixels at bottom

If several windows are opened, this area defines the overall area
that is used by all windows together. After changes to this option
Depeche View must be restarted.



## reducing load times through snapfiles

top
Loading thousands of small files can take quite some time,

If you often search within directories whose content never changes,
you may pack them all together into one large file,
the so-called "snapfile" (a snapshot of file contents).

This can be done with the free Swiss File Knife, available from
http://stahlworks.com/dev/

Type on the command line:

sfk snapto=all.txt thedir .cpp .hpp .xml

This command collects all .cpp .hpp and .xml files from "thedir" into
one large snapfile, "all.txt".

Or, if you have defined a fileset, simply type

sfk snapto=all.txt -fileset myfileset.txt

to collect all that is defined in myfileset.txt into all.txt.

Then type "dview all.txt", and the tool will load this file directly.

NOTE: if the text files change on the harddisk after snapfile creation,
you get the old contents displayed. clicking reload will only work
if the snapfile contains time informations (requires sfk >= 1.5.0),
and even then the scanning of all file times will take some time.
Therefore snapfiles should be used only for files that do not change.

NOTE: if you load a directory tree containing snapfiles, they are skipped,
as dview expects them to be redundant copies of the directory content.
to load a snapfile, you must explicitely supply it's name on startup,
or later through clicking "open / load from file", and then selecting it.
Appended snapfiles MUST use the same filename header prefix (":file:").



## special options

top
Command line option -noshl or pressing CTRL+F8 disables syntax highlighting.

Press CTRL+SHIFT+P to activate the "power settings", meaning:
autofilter, autoreload, nocase, accent, punctuation and sequence
insensitive search, and reduced search delay after typing.



## optimizing the search delay after typing

top
Whenever you type something into the find or path mask, dview waits
a moment before the next search is started. The calculated wait time
is a compromise between fast reaction to your input, and to avoid
is not complete. You can toggle the maximum time that dview waits
by pressing CTRL+P, or by setting the "searchdelay" config file entry.

-  with small projects below 5000 files, you can try to reduce
the max delay to 400 or 200 msec for a faster feeling,
however, this is also a matter of taste; not everyone likes
an instant screen update on every key press.

-  with large projects of 10000 files or more, you should try
to select 1200 msec through CTRL+P, or even a higher value
through the "searchdelay" config file entry, to make sure your
typing is not interrupted too often.



top
If you work on a machine with few memory, and try to load
at the beginning, but then becomes very slow after a while.
In that case, the system is probably swapping,
i.e. there is not enough physical memory available.
You may then try the tips under how to reduce memory use.



top
If you are loading text from a very large directory tree,
there is a danger that too much memory is consumed,
making the program extremely slow and unusable, as the
operating system starts "swapping" memory to hard disk.

a load limit, calculated from the amount of available
free memory on your system. It then shows a popup,

To disable the popup permanently, search the configuration file
the popup limit to 1000 MB of text.



## how to reduce memory use

top
-  check if the global dictionary is active. look at
the small balloon button below "mode": if it's orange,
so that it appears blue. then load all text again.

-  reduce the amount of loaded text by defining
in further details what to load, and what not.
under filesets.

-  you may also disable the Display Cache, as it takes
some additional MBytes of memory per view.
To do so, uncheck Setup / general / use display cache
and then restart DView.



## how to improve search speed

top
If you search words in really large projects (20000 files and more),
the following tips can help:

-  so far, using the OR operator is rather slow and will drop
the search performance massively. using only AND phrases,
or AND together with NOT, will keep your search at maximum speed.

-  a global search across all files will always take longer than a search
that is limited to specific files. even if you don't know which files
to include in your search, you will soon see in your search results
some files that you want to exclude, so simply write "NOT " and
the unwanted extension in the path mask.

-  hardware: DView is not optimized for multi core CPU's,
therefore it is possible that a search runs faster on a single core
then on a multi core CPU. it all depends on the number of GHz
and cache size available per core.



## how to improve text display speed

top
If you experience a slow down while surfing through text,
you can try (a combination of) the following:

-  make sure your mainfont does not use a negative line spacing.
e.g. the default for the large mainfont2 is

mainfont2 Courier New,11,22,700,-2

with a line spacing of -2, for a compact display of many lines;
however, this eats some performance. you may change that to

mainfont2 Courier New,11,22,700,0

in the config.

-  avoid using complex syntax highlighting extensions in the config.
if you define own extensions with many keywords,
processing may slow down.

-  try different fonts; for example, fixedsys performs better
than Courier New.

-  switch off syntax highlighting completely (CTRL+F8).



## registering Depeche View within windows explorer

top
   The following requires Windows adminstrator rights,
to give DView the permission to change the Windows registry.
Under Windows XP, it is sufficient if you are administrator.
Under Vista and Windows 7, exit Depeche View, then press the right
mouse button on the DView icon, and select "Run as Administrator".

Within DView, click Setup / config and look at "Register Depeche View ...".
By checking "add popup meny entry", DView creates a folder popup menu
entry "Browse with Depeche View" within the Windows Explorer.
Then you can, within Explorer, press the right mouse button over any
folder, and select "Browse with Depeche View" to run the tool
and load all contents of that folder.

If you check any of the ".zip" etc. fields, DView will also register
itself as the preferred application to open files with that extension.

How to remove all registrations: as soon as you uncheck all
registration options, DView is no longer registered in Explorer.

But what happens if you register DView, but the executable was
located on an USB stick which is no longer plugged into the PC?
Whenever you check any of the registration options, DView also
creates a Windows Start menu entry "Uninstall Explorer entries"
under Start / Programs / Depeche View, to allow unregistration
even if DView itself is no longer present.

NOTE: whenever you change the location of dview.exe, e.g. by moving
it from the desktop into a folder of the desktop, you have
to update Explorer registrations, as they point to the old path.
To do so, uncheck then recheck the registration check boxes.



## fine tuning the desktop icon

top
   if you look at the properties of the icon, you'll find parameters like

-cfg1 -wrapbin=80 -file -all .doc .xls .ppt .pdf -any

this tells dview not only to load pure ASCII text files, but also binary
office files like .doc, .xls etc., extract strings from them, and display
these as well. now, if you want further files to be included, e.g. .dll
or further office formats, you may add their extensions to the list, e.g.

-cfg1 -wrapbin=80 -file -all .doc .xls .ppt .pdf .dll .exe -any

you may also create several icons manually, with different parameters.
for example, one icon may contain

-cfg1 -wrapbin=80 -file .cpp .hpp -any

which will load ONLY files of type .cpp .hpp (no "-all" specified).



## optimizing the windows command prompt

top
   It is recommended that your Windows Command Prompt is well configured,
having quick edit and insert mode active, a large window buffer size,
and many output columns. Step by step:

1. create a shell shortcut on your desktop:
- open "Start/Programs/Accessories".
- move the mouse over "Command Prompt",
then press right mouse button, and select Copy.
- go to an empty place on the desktop.
- select Paste.

2. on the new desktop shortcut,
- press right mouse button, select Properties.

3. in the Command Prompt Properties, set
- Options: activate QuickEdit and Insert mode
- Font   : select 7 x 12
- Layout : Screen buffer size: Width 160, Height 3000
Window size       : Width 160, Height   30

4. close Properties by clicking OK.

5. double-click on the Command Prompt icon to open a shell.

With this comfortable command prompt, you can:

- select text anytime with the left mouse button,
then press right button to copy the text to clipboard.

- paste text from the clipboard into the command line
with the right mouse button.

- this window remembers 3000 lines of output, which should be
sufficient for long directory listings and command outputs.

- by pressing the TAB key, filenames are expanded.

dview theverycomplicateddirectoryname

type

dview the

then press the TAB key. or, instead of typing

cd verylongcomplicated\subdirectorystuff\deepdocuments

type

cd very{TAB}\sub{TAB}\deep{TAB}

where {TAB} means pressing the tab key.

working this way can be much faster than with windows explorer,
especially when using the Swiss File Knife, a free multi function
command line tool available from http://stahlworks.com/dev/



## how to view an archive file from a web location

top
If you want to read the text contents of an archive file in the internet,
you can save time by running dview from within your browser.

For example, with Firefox:

-  within a web page, click on a link of a .zip, .tar.gz etc. file.
-  then select "Open with ...", click on "Browse".
-  within "Choose Helper Application", click on "Browse" again.
-  find the location of dview.exe, and select it.

then dview will be started, viewing the contents of that file.

If you select "Do this automatically for files like this",
all further clicks on archive links will run dview instantly.

within Firefox, then enter the "Applications" Tab, search
where dview is listed, and change the setting to "always ask".



## testing extended mouse buttons

top
To check which mouse buttons can be used by Depeche View, do this:

-  click on "Setup" and then "config".

-  move the mouse cursor into the field "additional infos".

1. click the left, right, middle, or any extra mouse button
and keep it pressed, WITHOUT moving the mouse.
A message should appear instantly: "... button pressed."

2. release the mouse button, WITHOUT moving the mouse.
Another message should appear instantly: "... button released."

-  if you have a Razer Naga mouse with an integrated number pad,
read on here how to configure and test.

If the messages do not appear instantly, if they appear delayed (e.g.
only after a mouse move) or not at all, then you can NOT use those events
to run own scripts under Depeche View Pro.



## testing the clipboard automation

top
Whenever an external application changes the clipboard, Depeche View Pro
can run up to three instant searches in three different views.

However, DView requires the cooperation of other applications:

-  if an app is writing to the clipboard, it must use the correct steps,
resulting in a single clipboard update message. some applications
contain errors, producing multiple messages on a single clipboard change.

-  if another app is listening on clipboard change events as well,
it also must forward the event to other applications like DView,
if DView was started later.

If you are planning to use clipboard automation intensely with DView Pro,
first run a test under Pro Demo to see if it works in your specific environment.

To test if clipboard changes are received correctly,

-  click on the "clip" button.
-  activate "Auto Reload Clipboard Text".
-  click on "Apply Changes".

-  if multiple views are open, make sure that
the FIRST one is visible (NOT hidden by other windows).

-  then enter another application,
and copy some text into the clipboard.
you should see an instant update in Depeche View's FIRST view.
clipboard changes are shown in the first view only.)

The external application must copy plain ASCII text to the clipboard,
otherwise nothing will happen.

If you see the message "clipboard access conflict", and/or the external application
shows errors as it tries to write to the clipboard, then there is a problem:
The external application is buggy, it uses the clipboard in a wrong way.

DView may try to compensate this by waiting a moment after every clipboard change,
before it reads from the clipboard. This delay can also be preconfigured, find
more in the config file under "clipautodelay"; but this is only a workaround
that may or may not work. Some application vendors fix their clipboard handling
after a while, so look out for newer releases.



## searching in .pdf and .xls files

top
If you have to run MANY searches through the same set of PDF, Excel
or other office files, then the fastest way of doing so is

-  to convert them to plain ASCII text
-  then load the stuff in Depeche View.

(select Save As with the correct format), or through one of the
many tools available in the internet.

When saving from Excel, always select "Text (Tab Separated)",
then load it in DView and select a large TAB size for viewing.

To search word combinations in PDF extracts, it can be helpful
to reformat the text by CTRL+SHIFT+W (see word wrapping).



## known issues and workarounds

top
Window Focus lost after executing a self-defined command:

Whenever you run an external command trough a self-defined "on key"
statement in the config, and this command opens a window temporarily,
the focus of Depeche View's window is lost, showing all views
with a gray border. You then have to

-  click into another view (not the one where you ran the command)

-  then click again into the view in which you ran the command

to reactivate that view.

Daylight Saving Time Change and SnapFile Endless Reload:

If you create a snapfile with sfk during summertime,
then load this within winter time (or vice versa), it may happen that
within the snapfile are out of sync with the ones on your hard disk.
In this case, you may switch off autoreload, or recreate the snapfile.
If you are sure that none of the snapfile contents should ever be reloaded,
you may also create the snapfile with sfk option -nometa, which leaves out
the file time informations.



# Chapter 19: Function Reference and FAQ

top

## all functions, hotkeys and mouse moves overview

top
      General Depeche View Input Scheme
---------------------------------

SHIFT    Key selects for SEARCH.
CONTROL  Key selects for COPY.
ALT      Key selects for BOOKMARKING.

LEFT MOUSE BUTTON    operates in the CURRENT View (Window).
RIGHT MOUSE BUTTON   sends something into the NEARBY View.
NEARBY means the view to the right,
or if there is none, the leftmost.
MIDDLE MOUSE BUTTON  sends something into the LEFT SIDE View.
If there is none, it sends to the rightmost.

A view can send into another view:
-  a phrase search
-  a bookmark location
-  a filtered view line selection.

Keyboard       Mouse Action         Function
-------------- -------------------- ---------------------------
F1             lclick on "<>"       full window size
F1+SHIFT                            toggle master frame maximize
F2             lclick on "="        horizontal tiling
F2+CTRL        lclick on rfocus     result focus location
F3             lbutton+wheel_down   next search result
F3+CTRL        lbutton+wheel_up     previous search result
F4             lclick on case       case sensitive search
F4+SHIFT       lclick on noseq      ignore word sequence
F4+CTRL        lclick on noops      disable AND OR NOT *
Pro: in edit mode: revert and end edit.
F6             lclick on "_"        minimize all views
F7                                  search for "class ..."
F8             lclick on help       open help text
F8+CTRL                             disable syntax highlighting
F9                                  Pro: open file in notepad
F11                                 Pro: browse folder of current file
F12                                 Pro: open file in associated application

CTRL+1         lclick on "1"        Pro: select bookmark set no. 1
...
CTRL+9         lclick on "9"        Pro: select bookmark set no. 9

CTRL+Q         lclick on showbm     hide or show bookmarks
CTRL+SHIFT+Q                        enable text over bookmarks
CTRL+W                              word wrap current text file
CTRL+SHIFT+W                        stream wrap current text
CTRL+E                              edit file in external editor.
in edit mode: save and end edit.
CTRL+SHIFT+E                        edit file w/o changing clipboard
CTRL+R                              create bookmark remark
Pro: in edit mode: Repeat Edit
ALT+R                               Pro: in edit mode: Repeat Edit Case Adaptive
if search and replace have same length.
CTRL+SHIFT+R                        create empty remark line
CTRL+T         lclick on showtab    show tabs and spaces
CTRL+U         lclick on pathup     one step up in "path:"
CTRL+I                              show line/column info
CTRL+O         lclick on open       open directory or file
CTRL+P                              change search delay
CTRL+A         lclick on filter     toggle filtered view
CTRL+SHIFT+A   rclick on filter     toggle autofilter
CTRL+S                              save bookmark changes.
Pro: in edit mode: save text changes.
CTRL+SHIFT+S                        force save of bookmarks
CTRL+D                              toggle filter view details.
Pro: editor: delete whole line.
CTRL+F         lclick on find       open find dialog
CTRL+SHIFT+F   lclick on find       open find dialog
CTRL+G                              goto line or location
CTRL+H                              Pro: enter a word for highlight
CTRL+SHIFT+H   mode / highresline   highlight whole search result line,
or toggle fview result highlight
CTRL+J                              alternative main font
CTRL+SHIFT+J   rclick on showbm     alternative bookmark font
CTRL+K         mode / one click     mark excluded files in gray
CTRL+Z                              undo (before last search)
CTRL+X                              same as CTRL+G
CTRL+C                              copy screen  text to clipboard
(only the visible lines)
CTRL+SHIFT+C                        copy current text to clipboard
(all lines of the active subfile)
Pro: editor: duplicate current line.
if not within editor
CTRL+V                              copy clipboard to "find:"
CTRL+N         lclick on normal     narrow path to current file
CTRL+SHIFT+N                        "" and run instant search
CTRL+M         lclick on clear      clear path mask
PAUSE          lclick on reset      toggle find mask auto reset

rclick on showbm     toggle bookmark font/color
rclick on setup      edit config file in notepad
SHIFT+click on case  toggle punctuation insensitive search
CTRL +click on case  toggle accent insensitive search

Insert               reset the find or path mask.
SHIFT+Backspace      reset the find or path mask.
CTRL+Insert          same as CTRL+C, copy screen text to clipboard.
in a filtered view, copies only visible lines.
in edit mode: copy selection to clipboard.
CTRL+SHIFT+Insert    same as CTRL+SHIFT+C, copy current text to clip.
in a filtered view, copies all filtered lines.
CTRL+Delete          in edit mode: move block to editor in nearby view.
SHIFT+Left/Right     horizontal motion (ENTER to reset)
SHIFT+Down/Up        next, previous search result
ENTER                reset horizontal motion
SHIFT+ENTER          editor: insert blank line.
CTRL+TAB             change tab size
CTRL+SHIFT+TAB       toggle large tab sizes
ESCAPE               close most recent view
ESCAPE+SHIFT         close all and exit application
CTRL+Space           activate easy settings

DOUBLE CONTROL       Pro: on a word marks it for highlighting
DOUBLE CONTROL       Pro: on blank space resets word highlights
SHIFT+DOUBLE CONTROL Pro: on a word marks it everywhere for highlighting
SHIFT+DOUBLE CONTROL Pro: on blank space resets highlights everywhere
rclick on case       Pro: toggle case sensitivity for highlighted words
CTRL PRESS/RELEASE/PRESS then LEFT MOUSE BUTTON DOWN
Pro: begins selection of a phrase for highlight,
until the control key is released.

left  button down, mouse wheel   -  next/previous search result
left  button down, mouse  move   -  surf the text
... on a bookmark   -  move or indent bookmark
... left near bookmarks   -  change bookmarks width
right button down on blank space -  create second window (view), or activate
first window, and copy search context
right and left button on blank   -  if in second window, create third
right button down on word        -  search in nearby view
middle button down on word       -  search in left side view (if any)
double click on blank space      -  pull all views to top, and rearrange
left  click on a bookmark        -  goto bookmark in the same view
right click on a bookmark        -  goto bookmark in a nearby view,
move mouse while button down to select view.
middle click on a bookmark       -  goto bookmark in left side view
lclick near right border of view -  if in the left  view of two, resize both
lclick near left border of view  -  if in the right view of two, resize both
(only in blank lines while editing)

SHIFT+left button down on a word -  begin search phrase selection       (1)
CTRL +left button down on a word -  begin copy to clipboard selection   (1)
ALT  +left button down on a word -  begin bookmark create selection     (1)
SHIFT+right button     on a word -  begin search select for nearby view (1)
CTRL +right button     on a word -  begin bookmark create selection     (1)
Pro: in edit mode: cross copy to editor
within a nearby view.
CTRL +SHIFT+left click in a line -  copy whole line text into clipboard
CTRL+SHIFT+right click in a line -  Pro: in edit mode: cross copy text line
to editor within a nearby view
middle button    on a word -  begin search select for left view

(1) after start of selection, click on another word within the same line.
in case of copy to clipboard, words in other lines work as well.
finally, release the keyboard key (SHIFT, CTRL or ALT).

CTRL+left click into find mask   -  copy find mask content to clipboard.
CTRL+left click into path mask   -  copy path mask content to clipboard.
CTRL+SHIFT+lclick into top line  -  copy current filename  to clipboard.

Note: some buttons mentioned under "Mouse Action" appear only temporary,
e.g. the "rfocus" button is visible once there are search results.



top
Command Line Options -> more

Change bookmark order, reorder bookmarks -> more

Change window width, size -> by middle click
Change window width, size -> by fullscreen toggling
Change window width, size -> by area option

Slow search, tool waits long before search -> see mousebookdelay

Customized syntax highlighting -> see config file
Change text colors -> see config file

Q: when I create a config file through Setup / config / edit,

A: this happens if DView is run from a protected folder like
"C:\Program Files", and therefore tries to create the config
within that. read more under config creation and edit errors.

Q: my configuration changes are not saved.

A: the config file is saved on program exit, or when pressing CONTROL+S.

If you change settings, then go into a different application,
then reenter DView, the config file might be reloaded, and your
changes are lost.

Therefore, after changing anything in the Setup dialogue,
close the dialogue and then

-  press CONTROL+S to save all changes.

OR

-  select "Settings / Save Config Now" from the
pulldown menu (in master frame mode).

If any errors occur, e.g. the config file cannot be written,
you should also see those errors at that point.

Q: autoreload or autofilter buttons are changed on window activation.

A: after toggling these buttons, press CTRL+S to save
the config file immediately, so if the config is
reloaded during the next window activation,
it contains the new button settings.

Q: when I search words in this help text, sometimes there are results
within lines that do not contain the searched word.

A: these lines contain help links, and the text is hidden within that link;

Q: when I enter a directory in the "open / folder" dialog, I have to wait endless

A: do not enter the directory via the tree view, but enter it's name
directly in the edit field at the bottom of the dialog,
otherwise windows may try to read all contained zip file contents,
which can take very long.

read more under how to load zip tar.gz and .tar.bz2 file contents

Q: how to edit a text file in an external editor from within Depeche View

A: move the mouse to some text line within the text of interest,
then press CTRL+E. by default, this will run the notepad,
allowing to edit the file. CTRL+E also copies the current text line
to clipboard, allowing an instant search in the external editor.
you can use any editor by creating a config file entry "runeditor".

for more on that, read on here.

when editing files, it is recommended to have auto reload active:
right-click on reload to activate, and whenever you re-enter the
dview window, all files will be scanned for changes.

Q: if text is moved across files, bookmarks fail to readjust correctly

A: dview searches for bookmarks this way:

1. local search, within the same file, for the full line text
(not just the visible bookmark title).

2. local search, within the same file, just for the visible
bookmark title text, to keep the bookmark even if the text
around it is slightly changed.

3. global search (over all files) for the full line text.

if step 1 fails, step 2 requires that your bookmark title text
is unique enough, for example: "FooClass::startup" is better
than just "startup", as "startup" may appear also in other lines.

in other words, if you move text across files, the word(s) that
you selected for your bookmarks should not appear a second time
within the same file.

Q: cannot repeatedly view .zip tar.gz or tar.bz2 file via web browser

A: check carefully if the browser stored the file with the correct
archive twice with Firefox, the browser will rename the second
no longer recognizes that it's a .tar within a .bz2 file.

Q: loading of large zip tar.gz or tar.bz2 file contents is very slow,
or large archive entries are skipped during load.

A: this can happen if a single archive file entry is larger
than the load cache limit. if you have a machine with
much memory (about 2 GB), you may try to increase the
maxcache config setting to 500 (megabytes) or more.
the default is 300, which is sufficient for most cases.

Q: i press CTRL+E then jump into my favourite editor.
however, on CTRL+F CTRL+V the editor cannot find the text line.

A: check if your editor has a special search mode active,
especially if regular expressions are active. in that case,

Q: how can i activate syntax highlighting for all xml files
with file extension .xyz, .foo and .bar ?

A: extend the configuration file by an entry like:

<Language name="myxml" extends="xml" ext="xyz foo bar">
</Language>

Q: how can i view the contents of .dvdb word suggestion files?

A: just like bookmark files, dview treats them as binary,
to make sure the files are skipped if you load a folder
containing such files within nested folders.

if you really want to read the content of .dvdb files,
do it with your favourite ASCII text editor. This also
allows to edit the file, but make sure to keep exactly
the same format:

word TAB score CR LF

with score reflecting the importance of this word,
i.e. highest scores will be suggested first.

Note: if you edit the contents of .dvdb files,
there is no guarantee that self-defined words
will work as expected.

Q: how can i integrate command line compiler error output?

A: see compiler integration.

Q: drag and drop of files isn't working, without any error shown.

A: this can happen if DView is running in a different user
context than the source of drag and drop. For example,
if DView is started from a cmd.exe window which itself
is running "As Administrator", then DView itself is
running in Admin mode. Then, if you try to drag & drop
a folder from Explorer (which is running in normal
user mode), it won't work.