# Working With the &kate; MDI

## Overview

Window, View, Document, Frame, Editor... What are they all in the terminology of &kate;, and how do you get the most out of it? This chapter will explain all of that, and even more.

### The Main Window

The &kate; Main Window is a standard &kde; application window, with the addition of dockable subwindows, or tool windows. It has a Menubar with all the common menus, and some more, and a toolbar providing access to commonly used commands.

The most important part of the window is the Editing Area, by default displaying a single text editor component, in which you can work with your documents.

The docking capabilities of the window is used for the tool windows:

- The File List

- The File Selector

- The Built in Terminal Emulator

And possibly other tool windows, for example provided by plugins.

The Tool Windows can be placed anywhere you want them inside or outside the main window by dragging the handle bar in the top of them with the &LMB; pressed, and stacked in shared tab windows if desired.

When dragging a docked window, a black rectangle will be displayed to indicate where the window will be placed if you release the mouse button, unless you move the mouse cursor outside the main window, in which case the dragged window will become a free floating top level window.

## The Editor area

&kate; is capable of having more than one document open at the same time, and also of splitting the editing area into any number of frames, similar to how for example &konqueror; or the popular emacs text editor works. This way you can view several documents at the same time, or more instances of the same document, handy for example if your document contains definitions in the top that you want to see often for reference. Or you could view a program source header in one frame, while editing the implementation file in another.

When a document is available in more than one editor, changes made in one editor will immediately be reflected in the others as well. This includes changing the text as well as selecting text. Search operations or cursor movement is only reflected in the current editor.

It is currently not possible to have more instances of the same document open in the sense that one instance will be edited while the other will not.

When splitting an editor into two frames, it is divided into two equally sized frames, both displaying the current document of that editor. The new frame will be at the bottom (in the case of a horizontal split) or at the right (for a vertical split). The new frame gets the focus, which is visualized by a small green led in the focused frame.

## The File List

The file list displays a list of all documents currently open in &kate;. Modified files will have a small floppy disk icon on their left to indicate that state.

If two or more files with the same name (located in different directories) are open, the names of the second will be prepended <2> and so on. The tool-tip for the file will display its full name including the path, allowing you to choose the desired one.

To display a document in the currently active frame, click the document name in the list.

The default location in the &kate; window is to the left of the editing area, in a dockable tab window shared with the File Selector.

## The File Selector

The File Selector is a directory viewer, allowing you to open files from a displayed directory in the current frame.

From top down, the file selector consist of the following elements:

A Toolbar

  This contains standard navigations tool buttons:

  Home

    Pressing it will cause the directory view to `cd` to your home directory.

  Up

    This will cause the directory view to `cd` to the immediate parent of the currently displayed directory if possible.

  Back

    Causes the directory view to `cd` to the previously displayed directory in the history. This button is disabled, if there is no previous item.

  Forward

    Causes the directory view to `cd` to the next directory in the history. This button is disabled, if there is no next directory.

  Sync

    This button will cause the directory view to `cd` to the directory of the currently active document if possible. This button is disabled, if the active document is a new, unsaved file, or the directory in which it resides can not be decided.

A &URL; entry

  Here you can type the path of a directory to browse. The URL entry is maintaining a list of previously typed paths, to choose one use the arrow button on the right of the entry.

  The &URL; entry has directory auto-completion, the completion method can be set using the &RMB; menu of the text entry.

A Directory View

  This is a standard &kde; directory view.

A Filter Entry

  The Filter entry allows you to enter a filter for the files displayed in the directory view. The filter is using standard globs, patterns must be separated by whitespace. Example: `*.cpp *.h *.moc`

  To display all files, enter a single asterisk `*`.

  The filter entry saves the last 10 filters entered between sessions, to use one, press the arrow button on the right of the entry and select the desired filter string.

## The Built in Terminal Emulator

The built in Terminal Emulator is a copy of the &kde; &konsole; terminal application, for your convenience. It is available from the Settings Show Terminal Emulator menu item or theF7, and will get the focus whenever displayed. Additionally, if the Sync &konsole; with active document option is enabled, it will `cd` into the directory of the current document if possible when it is displayed, or when the current document changes.

The default location in the &kate; window is at the bottom, below the editing area.

You can configure the &konsole; using it's &RMB; menu, for more information, see the &konsole; manual.