dwww Home | Show directory contents | Find package

<FILENAME filename="index.html"><html><head><title>The Kate Handbook</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="description" content="Kate is a programmer's text editor by KDE. This handbook documents Kate Version 22.08"><meta name="keywords" content="KDE, kdebase, Kate, text, editor, programmer, programming, projects, MDI, Multi, Document, Interface, terminal, console"><link rel="home" href="index.html" title="The Kate Handbook"><link rel="next" href="introduction.html" title="Chapter 1. Introduction"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> The <span class="application">Kate</span> Handbook</div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"></td><td class="upCell"> </td><td class="nextCell"><a accesskey="n" href="introduction.html">Next</a></td></tr></table></div><div id="contentBody"><div lang="en" class="book"><div class="titlepage"><div><div><h1 class="title"><a name="kate"></a>The <span class="application">Kate</span> Handbook</h1></div><div><div class="authorgroup"><p class="author"><span class="firstname">Anders</span> <span class="surname">Lund</span> <code class="email">&lt;anders@alweb.dk&gt;</code></p><p class="author"><span class="firstname">Seth</span> <span class="surname">Rothberg</span> <code class="email">&lt;sethmr@bellatlantic.org&gt;</code></p><p class="author"><span class="firstname">Dominik</span> <span class="surname">Haumann</span> <code class="email">&lt;dhdev@gmx.de&gt;</code></p><p class="author"><span class="firstname">T.C.</span> <span class="surname">Hollingsworth</span> <code class="email">&lt;tchollingsworth@gmail.com&gt;</code></p></div></div><div>Revision <span class="releaseinfo">Applications 22.08 (<span class="date">2022-04-22</span>)</span></div><div><p class="copyright">Copyright © 2000, 2001 <span class="firstname">Seth</span> <span class="surname">Rothberg</span></p></div><div><p class="copyright">Copyright © 2002, 2003, 2005 <span class="firstname">Anders</span> <span class="surname">Lund</span></p></div><div><p class="copyright">Copyright © 2005, 2009 <span class="firstname">Dominik</span> <span class="surname">Haumann</span></p></div><div><p class="copyright">Copyright © 2011, 2012, 2013, 2014 <span class="firstname">T.C.</span> <span class="surname">Hollingsworth</span></p></div><div><p><a href="help:/kdoctools5-common/fdl-notice.html">Legal Notice</a></p></div><div><div><div class="abstract"><p><span class="application">Kate</span> is a programmer's text editor by <span class="orgname">KDE</span>.</p><p>This handbook documents <span class="application">Kate</span> Version 22.08</p></div></div></div></div><hr></div><div class="toc"><p><b>Table of Contents</b></p><dl class="toc"><dt><span class="chapter"><a href="introduction.html">1. Introduction</a></span></dt><dt><span class="chapter"><a href="fundamentals.html">2. The Fundamentals</a></span></dt><dd><dl><dt><span class="sect1"><a href="fundamentals.html#starting-kate">Starting <span class="application">Kate</span></a></span></dt><dd><dl><dt><span class="sect2"><a href="fundamentals.html#starting-from-the-menu">From the Menu</a></span></dt><dt><span class="sect2"><a href="fundamentals.html#starting-from-the-command-line">From the Command Line</a></span></dt><dt><span class="sect2"><a href="fundamentals.html#drag-and-drop">Drag and Drop</a></span></dt></dl></dd><dt><span class="sect1"><a href="working-with-kate.html">Working with <span class="application">Kate</span></a></span></dt><dd><dl><dt><span class="sect2"><a href="working-with-kate.html#quick-start">Quick Start</a></span></dt><dt><span class="sect2"><a href="working-with-kate.html#keystroke-commands">Shortcuts</a></span></dt></dl></dd><dt><span class="sect1"><a href="kate-mdi.html">Working With the <span class="application">Kate</span> <acronym class="acronym">MDI</acronym></a></span></dt><dd><dl><dt><span class="sect2"><a href="kate-mdi.html#kate-mdi-overview">Overview</a></span></dt><dt><span class="sect2"><a href="kate-mdi.html#kate-mdi-editor">The Editor area</a></span></dt></dl></dd><dt><span class="sect1"><a href="fundamentals-using-sessions.html">Using Sessions</a></span></dt><dt><span class="sect1"><a href="fundamentals-quick-open.html">Quick Open</a></span></dt><dd><dl><dt><span class="sect2"><a href="fundamentals-quick-open.html#idm613">Using Quick Open</a></span></dt><dt><span class="sect2"><a href="fundamentals-quick-open.html#idm621">Configuring Quick Open</a></span></dt></dl></dd><dt><span class="sect1"><a href="fundamentals-getting-help.html">Getting Help</a></span></dt><dd><dl><dt><span class="sect2"><a href="fundamentals-getting-help.html#idm643">With <span class="application">Kate</span></a></span></dt><dt><span class="sect2"><a href="fundamentals-getting-help.html#idm677">With Your Text Files</a></span></dt><dt><span class="sect2"><a href="fundamentals-getting-help.html#idm684">Articles on <span class="application">Kate</span></a></span></dt></dl></dd></dl></dd><dt><span class="chapter"><a href="kate-part.html">3. Working with the <span class="application">Kate</span> Editor</a></span></dt><dt><span class="chapter"><a href="plugins.html">4. Working with Plugins</a></span></dt><dd><dl><dt><span class="sect1"><a href="plugins.html#kate-application-plugins"><span class="application">Kate</span> Application Plugins</a></span></dt><dt><span class="sect1"><a href="kate-application-plugin-external-tools.html">External Tools</a></span></dt><dd><dl><dt><span class="sect2"><a href="kate-application-plugin-external-tools.html#kate-application-plugin-external-tools-edit">Configuring External Tools</a></span></dt><dt><span class="sect2"><a href="kate-application-plugin-external-tools.html#kate-application-plugin-external-tools-variables">Variable Expansion</a></span></dt><dt><span class="sect2"><a href="kate-application-plugin-external-tools.html#kate-application-plugin-external-tools-defaults">List of Default Tools</a></span></dt></dl></dd><dt><span class="sect1"><a href="kate-application-plugin-backtracebrowser.html">Backtrace Browser Plugin</a></span></dt><dd><dl><dt><span class="sect2"><a href="kate-application-plugin-backtracebrowser.html#backtracebrowser-using">Using the Backtrace Browser Plugin</a></span></dt><dt><span class="sect2"><a href="kate-application-plugin-backtracebrowser.html#backtracebrowser-config">Configuration</a></span></dt></dl></dd><dt><span class="sect1"><a href="kate-application-plugin-build.html">Build Plugin</a></span></dt><dd><dl><dt><span class="sect2"><a href="kate-application-plugin-build.html#build-intro">Introduction</a></span></dt><dt><span class="sect2"><a href="kate-application-plugin-build.html#build-using">Using the Build Plugin</a></span></dt><dt><span class="sect2"><a href="kate-application-plugin-build.html#build-menu">Menu Structure</a></span></dt><dt><span class="sect2"><a href="kate-application-plugin-build.html#build-ack">Thanks and Acknowledgments</a></span></dt></dl></dd><dt><span class="sect1"><a href="kate-application-plugin-closeexceptlike.html">Close Except/Like Plugin</a></span></dt><dd><dl><dt><span class="sect2"><a href="kate-application-plugin-closeexceptlike.html#closeexceptlike-intro">Introduction</a></span></dt><dt><span class="sect2"><a href="kate-application-plugin-closeexceptlike.html#closeexceptlike-using">Using the Close Except/Like Plugin</a></span></dt><dt><span class="sect2"><a href="kate-application-plugin-closeexceptlike.html#closeexceptlike-menu">Menu Structure</a></span></dt></dl></dd><dt><span class="sect1"><a href="kate-application-plugin-colorpicker.html">Color Picker Plugin</a></span></dt><dd><dl><dt><span class="sect2"><a href="kate-application-plugin-colorpicker.html#colorpicker-intro">Introduction</a></span></dt><dt><span class="sect2"><a href="kate-application-plugin-colorpicker.html#colorpicker-config">Configuration</a></span></dt></dl></dd><dt><span class="sect1"><a href="kate-application-plugin-colored-brackets.html">Colored Brackets</a></span></dt><dd><dl><dt><span class="sect2"><a href="kate-application-plugin-colored-brackets.html#idm1466">Introduction</a></span></dt><dt><span class="sect2"><a href="kate-application-plugin-colored-brackets.html#idm1469">Configuration</a></span></dt></dl></dd><dt><span class="sect1"><a href="kate-application-plugin-ctags.html">CTags Plugin</a></span></dt><dd><dl><dt><span class="sect2"><a href="kate-application-plugin-ctags.html#ctags-intro">Introduction</a></span></dt><dt><span class="sect2"><a href="kate-application-plugin-ctags.html#ctags-config">Configuration</a></span></dt><dt><span class="sect2"><a href="kate-application-plugin-ctags.html#ctags-using">Using the CTags Plugin</a></span></dt><dt><span class="sect2"><a href="kate-application-plugin-ctags.html#ctags-menu">Menu Structure</a></span></dt></dl></dd><dt><span class="sect1"><a href="kate-application-plugin-preview.html">Document Preview Plugin</a></span></dt><dd><dl><dt><span class="sect2"><a href="kate-application-plugin-preview.html#preview-introduction">Introduction</a></span></dt><dt><span class="sect2"><a href="kate-application-plugin-preview.html#preview-menu">Menu Structure</a></span></dt><dt><span class="sect2"><a href="kate-application-plugin-preview.html#preview-interface">Interface</a></span></dt></dl></dd><dt><span class="sect1"><a href="kate-application-plugin-documentswitcher.html">Document Switcher Plugin</a></span></dt><dd><dl><dt><span class="sect2"><a href="kate-application-plugin-documentswitcher.html#documentswitcher-menu">Menu Structure</a></span></dt></dl></dd><dt><span class="sect1"><a href="kate-application-plugin-fsbrowser.html">File System Browser</a></span></dt><dd><dl><dt><span class="sect2"><a href="kate-application-plugin-fsbrowser.html#fsbrowser-menu">Menu Structure</a></span></dt><dt><span class="sect2"><a href="kate-application-plugin-fsbrowser.html#fsbrowser-interface">Interface</a></span></dt><dt><span class="sect2"><a href="kate-application-plugin-fsbrowser.html#fsbrowser-config">Configuration</a></span></dt></dl></dd><dt><span class="sect1"><a href="kate-application-plugin-documents.html">The Documents List</a></span></dt><dd><dl><dt><span class="sect2"><a href="kate-application-plugin-documents.html#documents-intro">Introduction</a></span></dt><dt><span class="sect2"><a href="kate-application-plugin-documents.html#documents-menus">Menu Structure</a></span></dt><dt><span class="sect2"><a href="kate-application-plugin-documents.html#config-dialog-documents">Configuration</a></span></dt></dl></dd><dt><span class="sect1"><a href="kate-application-plugin-gdb.html"><acronym class="acronym">GDB</acronym> Plugin</a></span></dt><dd><dl><dt><span class="sect2"><a href="kate-application-plugin-gdb.html#gdb-intro">Introduction</a></span></dt><dt><span class="sect2"><a href="kate-application-plugin-gdb.html#gdb-menus">Menu and Toolbar Structure</a></span></dt><dt><span class="sect2"><a href="kate-application-plugin-gdb.html#gdb-debug-view">Debug View</a></span></dt><dt><span class="sect2"><a href="kate-application-plugin-gdb.html#gdb-other">Call Stack and Locals</a></span></dt><dt><span class="sect2"><a href="kate-application-plugin-gdb.html#gdb-ack">Thanks and Acknowledgments</a></span></dt></dl></dd><dt><span class="sect1"><a href="kate-application-plugin-projects.html">Project Plugin</a></span></dt><dd><dl><dt><span class="sect2"><a href="kate-application-plugin-projects.html#project-intro">Introduction</a></span></dt><dt><span class="sect2"><a href="kate-application-plugin-projects.html#project-view">Structured View of the Files</a></span></dt><dt><span class="sect2"><a href="kate-application-plugin-projects.html#project-switch">Switching Projects</a></span></dt><dt><span class="sect2"><a href="kate-application-plugin-projects.html#project-search-replace">Search and Replace in Projects</a></span></dt><dt><span class="sect2"><a href="kate-application-plugin-projects.html#project-autocompletition">Simple Auto Completion</a></span></dt><dt><span class="sect2"><a href="kate-application-plugin-projects.html#project-build">Support for Building the Project</a></span></dt><dt><span class="sect2"><a href="kate-application-plugin-projects.html#project-create">Creating Projects</a></span></dt><dt><span class="sect2"><a href="kate-application-plugin-projects.html#project-current">Current Project</a></span></dt><dt><span class="sect2"><a href="kate-application-plugin-projects.html#projects-menu">The Projects Menu</a></span></dt></dl></dd><dt><span class="sect1"><a href="kate-application-plugin-lspclient.html">LSP Client Plugin</a></span></dt><dd><dl><dt><span class="sect2"><a href="kate-application-plugin-lspclient.html#lspclient-menu">Menu Structure</a></span></dt><dt><span class="sect2"><a href="kate-application-plugin-lspclient.html#lspclient-go-to-symbol">Goto Symbol support</a></span></dt><dt><span class="sect2"><a href="kate-application-plugin-lspclient.html#lspclient-extra">Other Features</a></span></dt><dt><span class="sect2"><a href="kate-application-plugin-lspclient.html#lspclient-configuration">Configuration</a></span></dt></dl></dd><dt><span class="sect1"><a href="kate-application-plugin-searchinfiles.html">Search &amp; Replace</a></span></dt><dd><dl><dt><span class="sect2"><a href="kate-application-plugin-searchinfiles.html#searchinfiles-intro">Introduction</a></span></dt><dt><span class="sect2"><a href="kate-application-plugin-searchinfiles.html#searchinfiles-ui">Interface</a></span></dt><dt><span class="sect2"><a href="kate-application-plugin-searchinfiles.html#searchinfiles-menu">Menu Structure</a></span></dt></dl></dd><dt><span class="sect1"><a href="kate-application-plugin-snippets.html"><span class="application">Kate</span> Snippets</a></span></dt><dd><dl><dt><span class="sect2"><a href="kate-application-plugin-snippets.html#snippets-intro">Introduction</a></span></dt><dt><span class="sect2"><a href="kate-application-plugin-snippets.html#snippets-menu">Menu Structure</a></span></dt><dt><span class="sect2"><a href="kate-application-plugin-snippets.html#snippets-panel">Snippets panel</a></span></dt><dt><span class="sect2"><a href="kate-application-plugin-snippets.html#snippets-using">Using Snippets</a></span></dt><dt><span class="sect2"><a href="kate-application-plugin-snippets.html#snippets-ack">Thanks and Acknowledgments</a></span></dt></dl></dd><dt><span class="sect1"><a href="kate-application-plugin-keyboardmacros.html">Keyboard Macros Plugin</a></span></dt><dd><dl><dt><span class="sect2"><a href="kate-application-plugin-keyboardmacros.html#keyboardmacros-intro">Introduction</a></span></dt><dt><span class="sect2"><a href="kate-application-plugin-keyboardmacros.html#keyboardmacros-basicusage">Basic usage</a></span></dt><dt><span class="sect2"><a href="kate-application-plugin-keyboardmacros.html#keyboardmacros-namedmacros">Named macros</a></span></dt><dt><span class="sect2"><a href="kate-application-plugin-keyboardmacros.html#keyboardmacros-limitations">Limitations</a></span></dt></dl></dd><dt><span class="sect1"><a href="kate-application-plugin-sql.html">SQL Plugin</a></span></dt><dd><dl><dt><span class="sect2"><a href="kate-application-plugin-sql.html#sql-intro">Introduction</a></span></dt><dt><span class="sect2"><a href="kate-application-plugin-sql.html#sql-connecting">Connecting to a Database</a></span></dt><dt><span class="sect2"><a href="kate-application-plugin-sql.html#sql-querying">Running Queries</a></span></dt><dt><span class="sect2"><a href="kate-application-plugin-sql.html#sql-browsing">Browsing</a></span></dt><dt><span class="sect2"><a href="kate-application-plugin-sql.html#sql-menus">Menu Structure</a></span></dt><dt><span class="sect2"><a href="kate-application-plugin-sql.html#sql-ack">Thanks and Acknowledgments</a></span></dt></dl></dd><dt><span class="sect1"><a href="kate-application-plugin-symbolviewer.html">Symbol Viewer Plugin</a></span></dt><dd><dl><dt><span class="sect2"><a href="kate-application-plugin-symbolviewer.html#symbolviewer-using">Using the Close Except/Like Plugin</a></span></dt><dt><span class="sect2"><a href="kate-application-plugin-symbolviewer.html#symbolviewer-menu">Menu Structure</a></span></dt><dt><span class="sect2"><a href="kate-application-plugin-symbolviewer.html#symbolviewer-config">Configuration</a></span></dt></dl></dd><dt><span class="sect1"><a href="kate-application-plugin-konsole.html">Terminal Tool View Plugin</a></span></dt><dd><dl><dt><span class="sect2"><a href="kate-application-plugin-konsole.html#konsole-menus">Menu Structure</a></span></dt><dt><span class="sect2"><a href="kate-application-plugin-konsole.html#konsole-config">Configuration</a></span></dt></dl></dd><dt><span class="sect1"><a href="kate-application-plugin-textfilter.html">Text Filter Plugin</a></span></dt><dd><dl><dt><span class="sect2"><a href="kate-application-plugin-textfilter.html#textfilter-using">Using the Text Filter Plugin</a></span></dt><dt><span class="sect2"><a href="kate-application-plugin-textfilter.html#textfilter-menu">Menu Structure</a></span></dt></dl></dd><dt><span class="sect1"><a href="kate-application-plugin-xmlcheck.html"><acronym class="acronym">XML</acronym> Validation</a></span></dt><dd><dl><dt><span class="sect2"><a href="kate-application-plugin-xmlcheck.html#xmlcheck-menu">Menu Structure</a></span></dt><dt><span class="sect2"><a href="kate-application-plugin-xmlcheck.html#xmlcheck-thanks-and-acknowledgements">Thanks and Acknowledgments</a></span></dt></dl></dd><dt><span class="sect1"><a href="kate-application-plugin-xmltools.html"><acronym class="acronym">XML</acronym> Completion</a></span></dt><dd><dl><dt><span class="sect2"><a href="kate-application-plugin-xmltools.html#xmltools-how-to-use">How to Use</a></span></dt><dt><span class="sect2"><a href="kate-application-plugin-xmltools.html#xmltools-features-and-limitations">Features and Limitations</a></span></dt><dt><span class="sect2"><a href="kate-application-plugin-xmltools.html#xmltools-menu">Menu Structure</a></span></dt><dt><span class="sect2"><a href="kate-application-plugin-xmltools.html#xmltools-thanks-and-acknowledgements">Thanks and Acknowledgments</a></span></dt></dl></dd></dl></dd><dt><span class="chapter"><a href="advanced-editing-tools.html">5. Advanced Editing Tools</a></span></dt><dt><span class="chapter"><a href="dev.html">6. Extending <span class="application">Kate</span></a></span></dt><dd><dl><dt><span class="sect1"><a href="dev.html#dev-intro">Introduction</a></span></dt><dt><span class="sect1"><a href="highlight.html">Working with Syntax Highlighting</a></span></dt><dt><span class="sect1"><a href="dev-scripting.html">Scripting with <span class="application">JavaScript</span></a></span></dt><dt><span class="sect1"><a href="dev-app.html"><span class="application">Kate</span> (C++) Application Plugins</a></span></dt></dl></dd><dt><span class="chapter"><a href="vi-input-mode-chapter.html">7. The VI Input Mode</a></span></dt><dt><span class="chapter"><a href="the-menu-entries.html">8. The Menu Entries</a></span></dt><dd><dl><dt><span class="sect1"><a href="the-menu-entries.html#file-menu">The File Menu</a></span></dt><dt><span class="sect1"><a href="edit-menu.html">The Edit Menu</a></span></dt><dt><span class="sect1"><a href="view-menu.html">The View Menu</a></span></dt><dt><span class="sect1"><a href="bookmarks-menu.html">The Bookmarks Menu</a></span></dt><dt><span class="sect1"><a href="sessions-menu.html">The Sessions Menu</a></span></dt><dt><span class="sect1"><a href="tools-menu.html">The Tools Menu</a></span></dt><dt><span class="sect1"><a href="settings-help-menu.html">The Settings and Help Menu</a></span></dt></dl></dd><dt><span class="chapter"><a href="configuring-kate.html">9. Configuring <span class="application">Kate</span></a></span></dt><dd><dl><dt><span class="sect1"><a href="configuring-kate.html#configuring-overview">Overview</a></span></dt><dt><span class="sect1"><a href="configuring-kate-configdialog.html">The Main Configuration Dialog</a></span></dt><dt><span class="sect1"><a href="config-dialog.html">The <span class="application">Kate</span> Application Configuration</a></span></dt><dd><dl><dt><span class="sect2"><a href="config-dialog.html#config-dialog-general">General</a></span></dt><dt><span class="sect2"><a href="config-dialog.html#config-dialog-sessions">Session</a></span></dt><dt><span class="sect2"><a href="config-dialog.html#config-dialog-plugins">Plugins</a></span></dt><dt><span class="sect2"><a href="config-dialog.html#config-dialog-editor">The Editor Component Configuration</a></span></dt><dt><span class="sect2"><a href="config-dialog.html#config-variables">Configuring With Document Variables</a></span></dt></dl></dd></dl></dd><dt><span class="chapter"><a href="credits.html">10. Credits and License</a></span></dt><dt><span class="appendix"><a href="regular-expressions.html">A. Regular Expressions</a></span></dt></dl></div><div class="list-of-tables"><p><b>List of Tables</b></p><dl><dt>4.1. <a href="kate-application-plugin-preview.html#idm1589">Some available <acronym class="acronym">KParts</acronym> plugins</a></dt></dl></div><div class="list-of-examples"><p><b>List of Examples</b></p><dl><dt>4.1. <a href="kate-application-plugin-sql.html#idm3367">Some Example Queries</a></dt><dt>4.2. <a href="kate-application-plugin-sql.html#idm3419">Example <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="command"><span class="command">SELECT</span></span> Query</a></dt></dl></div><FILENAME filename="introduction.html"><html><head><title>Chapter 1. Introduction</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, kdebase, Kate, text, editor, programmer, programming, projects, MDI, Multi, Document, Interface, terminal, console"><link rel="home" href="index.html" title="The Kate Handbook"><link rel="up" href="index.html" title="The Kate Handbook"><link rel="prev" href="index.html" title="The Kate Handbook"><link rel="next" href="fundamentals.html" title="Chapter 2. The Fundamentals"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> Introduction</div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="index.html">Prev</a></td><td class="upCell"> </td><td class="nextCell"><a accesskey="n" href="fundamentals.html">Next</a></td></tr></table></div><div id="contentBody"><div class="chapter"><div class="titlepage"><div><div><h1 class="title"><a name="introduction"></a>Chapter 1. Introduction</h1></div></div></div><p>
Welcome to <span class="application">Kate</span>, a programmer's text editor by <span class="orgname">KDE</span>.
Some of <span class="application">Kate</span>'s many features include configurable syntax
highlighting for languages ranging from C and C++ to
<acronym class="acronym">HTML</acronym> to bash scripts, the ability to create and
maintain projects, a multiple document interface
(<acronym class="acronym">MDI</acronym>), and a self-contained terminal emulator.
</p><p>
But <span class="application">Kate</span> is more than a programmer's editor. Its ability to open
several files at once makes it ideal for editing <span class="trademark">UNIX</span>®'s many
configuration files.  This document was written in <span class="application">Kate</span>.
</p><p>
</p><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="kate.png"><div class="caption"><p>Editing this manual...</p></div></div><p>
</p></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="index.html">Prev</a></td><td class="upCell"><a accesskey="h" href="index.html">Contents</a></td><td class="nextCell"><a accesskey="n" href="fundamentals.html">Next</a></td></tr><tr><td class="prevCell">The <span class="application">Kate</span> Handbook </td><td class="upCell"> </td><td class="nextCell"> The Fundamentals</td></tr></table></div><div id="footer_text">Would you like to make a comment or contribute an update to this page?<br>Send feedback to the <a href="mailto:kde-doc-english@kde.org" class="footer_email">KDE Docs Team</a></div></div></div></body></html></FILENAME><FILENAME filename="fundamentals.html"><html><head><title>Chapter 2. The Fundamentals</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, kdebase, Kate, text, editor, programmer, programming, projects, MDI, Multi, Document, Interface, terminal, console"><link rel="home" href="index.html" title="The Kate Handbook"><link rel="up" href="index.html" title="The Kate Handbook"><link rel="prev" href="introduction.html" title="Chapter 1. Introduction"><link rel="next" href="working-with-kate.html" title="Working with Kate"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> The Fundamentals</div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="introduction.html">Prev</a></td><td class="upCell"> </td><td class="nextCell"><a accesskey="n" href="working-with-kate.html">Next</a></td></tr></table></div><div id="contentBody"><div class="chapter"><div class="titlepage"><div><div><h1 class="title"><a name="fundamentals"></a>Chapter 2. The Fundamentals</h1></div><div><div class="authorgroup"><p class="author"><span class="firstname"></span> </p></div></div></div></div><p>
If you have ever used a text editor, you will have no problem using
<span class="application">Kate</span>. In the next two sections, <a class="link" href="fundamentals.html#starting-kate" title="Starting Kate">Starting
<span class="application">Kate</span> </a> and in <a class="link" href="working-with-kate.html" title="Working with Kate">Working with
<span class="application">Kate</span></a>, we will show you everything you need to get up and running
quickly.
</p><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="starting-kate"></a>Starting <span class="application">Kate</span></h2></div></div></div><p>
You can start <span class="application">Kate</span> from the application launcher or from the
command line.
</p><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="starting-from-the-menu"></a>From the Menu</h3></div></div></div><p>
Open the <span class="orgname">KDE</span> program menu by clicking on the
application launcher icon on the toolbar at the bottom left of your
screen. This will raise a menu. Move your
cursor up the menu to the <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Applications</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Utilities</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Advanced Text Editor <span class="application">Kate</span></span></span> menu item.
</p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="starting-from-the-command-line"></a>From the Command Line</h3></div></div></div><p>
You can start <span class="application">Kate</span> by typing its name on the command line. If you give
it a file name, as in the example below, it will open or create that
file.
</p><div class="informalexample"><pre class="screen">
<code class="prompt">%</code><strong class="userinput"><code><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="command"><span class="command"><strong>kate</strong></span></span> <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="option"><code class="option"><span class="replaceable"><em class="replaceable"><code>myfile.txt</code></em></span></code></span></code></strong>
</pre></div><p>
If you have an active connection, and permission, you can take advantage
of <span class="orgname">KDE</span>'s network transparency to open files on the internet.
</p><div class="informalexample"><pre class="screen">
<code class="prompt">%</code><strong class="userinput"><code><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="command"><span class="command"><strong>kate</strong></span></span> <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="option"><code class="option"><span class="replaceable"><em class="replaceable"><code><a class="ulink" href="ftp://ftp.kde.org/pub/kde/" target="_top">ftp://ftp.kde.org/pub/kde/</a>README</code></em></span></code></span></code></strong>
</pre></div><p>To change the directory for temporary files, which defaults to <code class="filename">/tmp</code>
set the <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="envar"><code class="envar">TMPDIR</code></span> environment variable before starting <span class="application">Kate</span>, <abbr class="abbrev">e.g.</abbr>
</p><div class="informalexample"><pre class="screen">
<code class="prompt">%</code><strong class="userinput"><code><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="command"><span class="command"><strong>mkdir</strong></span></span> /tmp/kate -p &amp;&amp; export TMPDIR=/tmp/kate &amp;&amp; kate</code></strong>
</pre></div><p>
</p><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="command-line-options"></a>Command Line Options</h4></div></div></div><p><span class="application">Kate</span> accepts following command line options:</p><div class="variablelist"><dl class="variablelist"><dt><span class="term"><strong class="userinput"><code><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="command"><span class="command"><strong>kate</strong></span></span> <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="option"><code class="option">--help</code></span></code></strong></span></dt><dd><p>
This lists the options available at the command line.
</p></dd><dt><span class="term"><strong class="userinput"><code><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="command"><span class="command"><strong>kate</strong></span></span>
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="option"><code class="option">-s</code></span> <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="option"><code class="option">--start</code></span> <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="parameter"><em class="parameter"><code>name</code></em></span></code></strong></span></dt><dd><p>
Starts <span class="application">Kate</span> with the session <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="parameter"><em class="parameter"><code>name</code></em></span>. The session is created
if it does not exist already. If a <span class="application">Kate</span> instance running the specified session
exists, the specified files are loaded in that instance.
</p></dd><dt><span class="term"><strong class="userinput"><code><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="command"><span class="command"><strong>kate</strong></span></span>
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="option"><code class="option">-p</code></span> <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="option"><code class="option">--pid</code></span> <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="parameter"><em class="parameter"><code>PID</code></em></span></code></strong></span></dt><dd><p>
Only reuses an instance with the specified PID (Process ID).
</p></dd><dt><span class="term"><strong class="userinput"><code><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="command"><span class="command"><strong>kate</strong></span></span>
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="option"><code class="option">-e</code></span> <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="option"><code class="option">--encoding</code></span> <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="parameter"><em class="parameter"><code>encoding</code></em></span>
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="parameter"><em class="parameter"><code>URL</code></em></span></code></strong></span></dt><dd><p>Uses the specified encoding for the document.
</p></dd><dt><span class="term"><strong class="userinput"><code><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="command"><span class="command"><strong>kate</strong></span></span>
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="option"><code class="option">-l</code></span> <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="option"><code class="option">--line</code></span> <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="parameter"><em class="parameter"><code>line</code></em></span>
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="parameter"><em class="parameter"><code>URL</code></em></span></code></strong></span></dt><dd><p>Navigates to the specified line after opening the document.
</p></dd><dt><span class="term"><strong class="userinput"><code><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="command"><span class="command"><strong>kate</strong></span></span>
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="option"><code class="option">-c</code></span> <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="option"><code class="option">--column</code></span> <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="parameter"><em class="parameter"><code>column</code></em></span>
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="parameter"><em class="parameter"><code>URL</code></em></span></code></strong></span></dt><dd><p>Navigates to the specified column after opening the document.
</p></dd><dt><span class="term"><strong class="userinput"><code><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="command"><span class="command"><strong>kate</strong></span></span>
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="option"><code class="option">-i</code></span> <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="option"><code class="option">--stdin</code></span></code></strong></span></dt><dd><p>Reads the document content from STDIN. This
is similar to the common option <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="option"><code class="option">-</code></span> used in many command line
programs, and allows you to pipe command output into <span class="application">Kate</span>.</p></dd><dt><span class="term"><strong class="userinput"><code><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="command"><span class="command"><strong>kate</strong></span></span>
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="option"><code class="option">--startanon</code></span></code></strong></span></dt><dd><p>Start <span class="application">Kate</span> with a new anonymous session, implies
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="option"><code class="option">-n</code></span>.</p></dd><dt><span class="term"><strong class="userinput"><code><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="command"><span class="command"><strong>kate</strong></span></span>
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="option"><code class="option">-n</code></span> <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="option"><code class="option">--new</code></span></code></strong></span></dt><dd><p>Force start of a new <span class="application">Kate</span> instance (is ignored if <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="option"><code class="option">start</code></span> is
used and another <span class="application">Kate</span> instance already has the given session opened), forced
if no parameters and no URLs are given at all.</p></dd><dt><span class="term"><strong class="userinput"><code><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="command"><span class="command"><strong>kate</strong></span></span>
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="option"><code class="option">-b</code></span> <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="option"><code class="option">--block</code></span></code></strong></span></dt><dd><p>If using an already running <span class="application">Kate</span> instance, block until it exits, if URLs
given to open.</p><p>
You can use <span class="application">Kate</span> with this option as editor for typing in commit messages for version
control systems like <span class="application">Git</span> or <span class="application">Subversion</span>.
These systems expect to block the editor till you have entered your
message, because they then open the temporary file, which would be empty
if <span class="application">Kate</span> immediately returned to the caller.
</p><p>This option is also needed with KIO (<span class="orgname">KDE</span> Input/Output), if you open a remote file (which has been
downloaded to a temporary) and should be reuploaded, after you saved it.
</p></dd><dt><span class="term"><strong class="userinput"><code><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="command"><span class="command"><strong>kate</strong></span></span>
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="option"><code class="option">--tempfile</code></span></code></strong></span></dt><dd><p>When used, the specified files are treated as temporary files and
deleted (if they are local files and you have sufficient permissions) when
closed, unless they were modified since they were opened.</p></dd><dt><span class="term"><strong class="userinput"><code><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="command"><span class="command"><strong>kate</strong></span></span>
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="option"><code class="option">--desktopfile</code></span> <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="parameter"><em class="parameter"><code>filename</code></em></span></code></strong></span></dt><dd><p>The base file name of the desktop entry for this application.</p><p>This is in particular useful for wrapper applications and
applications having in general multiple desktop files. Thus each desktop
file can have its own command line for the <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="option"><code class="option">Exec</code></span> entry.
</p></dd><dt><span class="term"><strong class="userinput"><code><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="command"><span class="command"><strong>kate</strong></span></span>
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="option"><code class="option">--author</code></span></code></strong></span></dt><dd><p>
Lists <span class="application">Kate</span>'s authors in the terminal window.
</p></dd><dt><span class="term"><strong class="userinput"><code><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="command"><span class="command"><strong>kate</strong></span></span>
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="option"><code class="option">-v</code></span> <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="option"><code class="option">--version</code></span></code></strong></span></dt><dd><p>
Lists version information for <span class="application">Kate</span>.
</p></dd><dt><span class="term"><strong class="userinput"><code><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="command"><span class="command"><strong>kate</strong></span></span>
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="option"><code class="option">--license</code></span></code></strong></span></dt><dd><p>
Shows license information.
</p></dd></dl></div></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="drag-and-drop"></a>Drag and Drop</h3></div></div></div><p>
<span class="application">Kate</span> uses the <span class="orgname">KDE</span> Drag and Drop protocol. Files may be dragged and
dropped onto <span class="application">Kate</span> from the Desktop, the filemanager <span class="application">Dolphin</span> or some remote <acronym class="acronym">FTP</acronym>
site opened in one of <span class="application">Dolphin</span>'s windows.
</p></div></div><FILENAME filename="working-with-kate.html"><html><head><title>Working with Kate</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, kdebase, Kate, text, editor, programmer, programming, projects, MDI, Multi, Document, Interface, terminal, console"><link rel="home" href="index.html" title="The Kate Handbook"><link rel="up" href="fundamentals.html" title="Chapter 2. The Fundamentals"><link rel="prev" href="fundamentals.html" title="Chapter 2. The Fundamentals"><link rel="next" href="kate-mdi.html" title="Working With the Kate MDI"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> Working with <span class="application">Kate</span></div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="fundamentals.html">Prev</a></td><td class="upCell">The Fundamentals</td><td class="nextCell"><a accesskey="n" href="kate-mdi.html">Next</a></td></tr></table></div><div id="contentBody"><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="working-with-kate"></a>Working with <span class="application">Kate</span></h2></div></div></div><p>
<a class="link" href="working-with-kate.html#quick-start" title="Quick Start">Quick Start</a> will show you how to
toggle four simple options that will let you configure some of <span class="application">Kate</span>'s
more powerful features right away. <a class="link" href="working-with-kate.html#keystroke-commands" title="Shortcuts">
Shortcuts</a> lays out some of the default keystroke
shortcuts for those who can't or don't want to use a mouse.
</p><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="quick-start"></a>Quick Start</h3></div></div></div><p>
This section will describe some of the items on the
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">View</span></span> menu so that you can quickly configure
<span class="application">Kate</span> to work the way you want it.
</p><p> When you start <span class="application">Kate</span> for the first time you will see two windows
with white backgrounds. Above the two windows is a toolbar with the
usual labeled icons. And above that, a menubar.
</p><p>
The left-hand window is a side bar. It combines the <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Documents</span></span>
and <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Filesystem Browser</span></span> windows. Switch between the two by clicking on the tabs
to the left of the window. </p><p>
If you've started <span class="application">Kate</span> with a file, the right-hand window will show
the file you are editing and the <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Documents</span></span> on the side bar will show the
name of the file. Use the <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Filesystem Browser</span></span> window to open files.
</p><p>
You can toggle all sidebar windows on and off in
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">View</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Tool Views</span></span>
menu or use <span class="keycap"><strong>Ctrl</strong></span>+<span class="keycap"><strong>Alt</strong></span>+<span class="keycap"><strong>Shift</strong></span>+<span class="keycap"><strong>F</strong></span>.
This menu offers you your first glimpse into <span class="application">Kate</span>'s power and
flexibility.
</p><p>In <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Tool Views</span></span> you have a list of all enabled plugins.
Click the checkbox in front of each item or click with the <span class="mousebutton">left</span> mouse button on the tool buttons
in the sidebar to toggle this tool view on and off.
</p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="keystroke-commands"></a>Shortcuts</h3></div></div></div><p>
Many of <span class="application">Kate</span>'s keystroke commands (shortcuts) are configurable by
way of the <a class="link" href="settings-help-menu.html" title="The Settings and Help Menu">Settings</a> menu.  By default
<span class="application">Kate</span> honors the following key bindings.
</p><div class="informaltable"><table class="informaltable" border="1"><colgroup><col><col></colgroup><tbody><tr><td><p><span class="keycap"><strong>F1</strong></span></p></td><td><p> Help</p></td></tr><tr><td><p><span class="keycap"><strong>Shift</strong></span>+<span class="keycap"><strong>F1</strong></span></p></td><td><p><a class="link" href="fundamentals-getting-help.html#whats-this">What's this?</a></p></td></tr><tr><td><p><span class="keycap"><strong>Ctrl</strong></span>+<span class="keycap"><strong>N</strong></span></p></td><td><p> <a class="link" href="the-menu-entries.html#file-new">New</a> document</p></td></tr><tr><td><p><span class="keycap"><strong>Ctrl</strong></span>+<span class="keycap"><strong>L</strong></span></p></td><td><p> Save All</p></td></tr><tr><td><p><span class="keycap"><strong>Ctrl</strong></span>+<span class="keycap"><strong>O</strong></span></p></td><td><p><a class="link" href="the-menu-entries.html#file-open">Open a document</a> </p></td></tr><tr><td><p><span class="keycap"><strong>Ctrl</strong></span>+<span class="keycap"><strong>Alt</strong></span>+<span class="keycap"><strong>O</strong></span> </p></td><td><p>Quick Open</p></td></tr><tr><td><p><span class="keycap"><strong>Ctrl</strong></span>+<span class="keycap"><strong>Shift</strong></span>+<span class="keycap"><strong>F</strong></span> </p></td><td><p>Full Screen Mode</p></td></tr><tr><td><p><span class="keycap"><strong>Ctrl</strong></span>+<span class="keycap"><strong>Shift</strong></span>+<span class="keycap"><strong>,</strong></span> </p></td><td><p>Configure <span class="application">Kate</span></p></td></tr><tr><td><p><span class="keycap"><strong>Ctrl</strong></span>+<span class="keycap"><strong>W</strong></span> /
<span class="keycap"><strong>Ctrl</strong></span>+<span class="keycap"><strong>Esc</strong></span></p></td><td><p><a class="link" href="the-menu-entries.html#file-close">Close</a> </p></td></tr><tr><td><p><span class="keycap"><strong>Ctrl</strong></span>+<span class="keycap"><strong>Q</strong></span> </p></td><td><p>Quit - close active copy of editor </p></td></tr><tr><td><p><span class="keycap"><strong>Ctrl</strong></span>+<span class="keycap"><strong>Alt</strong></span>+<span class="keycap"><strong>Shift</strong></span>+<span class="keycap"><strong>F</strong></span> </p></td><td><p>Show Sidebars</p></td></tr><tr><td><p><span class="keycap"><strong>Ctrl</strong></span>+<span class="keycap"><strong>Shift</strong></span>+<span class="keycap"><strong>T</strong></span> </p></td><td><p>Split Horizontal</p></td></tr><tr><td><p><span class="keycap"><strong>Ctrl</strong></span>+<span class="keycap"><strong>Shift</strong></span>+<span class="keycap"><strong>L</strong></span> </p></td><td><p>Split Vertical</p></td></tr><tr><td><p><span class="keycap"><strong>F8</strong></span></p></td><td><p>Next Split View</p></td></tr><tr><td><p><span class="keycap"><strong>Shift</strong></span>+<span class="keycap"><strong>F8</strong></span> /
<span class="keycap"><strong>Ctrl</strong></span>+<span class="keycap"><strong>Esc</strong></span></p></td><td><p>Previous Split View</p></td></tr><tr><td><p><span class="keycap"><strong>Ctrl</strong></span>+<span class="keycap"><strong>Shift</strong></span>+<span class="keycap"><strong>R</strong></span> </p></td><td><p>Close Current View</p></td></tr><tr><td><p><span class="keycap"><strong>Alt</strong></span>+<span class="keysym">Right</span></p></td><td><p>Next Tab</p></td></tr><tr><td><p><span class="keycap"><strong>Alt</strong></span>+<span class="keysym">Left</span></p></td><td><p>Previous Tab</p></td></tr></tbody></table></div><p>Additionally you can use the shortcuts provided by the <a class="ulink" href="help:/katepart/keybindings.html" target="_top"><span class="application">KatePart</span></a> component and by all activated <a class="link" href="plugins.html" title="Chapter 4. Working with Plugins"><span class="application">Kate</span> plugins</a>.</p></div></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="fundamentals.html">Prev</a></td><td class="upCell"><a accesskey="h" href="index.html">Contents</a></td><td class="nextCell"><a accesskey="n" href="kate-mdi.html">Next</a></td></tr><tr><td class="prevCell">The Fundamentals </td><td class="upCell">The Fundamentals</td><td class="nextCell"> Working With the <span class="application">Kate</span> <acronym class="acronym">MDI</acronym></td></tr></table></div><div id="footer_text">Would you like to make a comment or contribute an update to this page?<br>Send feedback to the <a href="mailto:kde-doc-english@kde.org" class="footer_email">KDE Docs Team</a></div></div></div></body></html></FILENAME><FILENAME filename="kate-mdi.html"><html><head><title>Working With the Kate MDI</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, kdebase, Kate, text, editor, programmer, programming, projects, MDI, Multi, Document, Interface, terminal, console"><link rel="home" href="index.html" title="The Kate Handbook"><link rel="up" href="fundamentals.html" title="Chapter 2. The Fundamentals"><link rel="prev" href="working-with-kate.html" title="Working with Kate"><link rel="next" href="fundamentals-using-sessions.html" title="Using Sessions"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> Working With the <span class="application">Kate</span> <acronym class="acronym">MDI</acronym></div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="working-with-kate.html">Prev</a></td><td class="upCell">The Fundamentals</td><td class="nextCell"><a accesskey="n" href="fundamentals-using-sessions.html">Next</a></td></tr></table></div><div id="contentBody"><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="kate-mdi"></a>Working With the <span class="application">Kate</span> <acronym class="acronym">MDI</acronym></h2></div></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="kate-mdi-overview"></a>Overview</h3></div></div></div><p>Window, View, Document, Frame, Editor... What are they all in
the terminology of <span class="application">Kate</span>, and how do you get the most out of it? This
chapter will explain all of that, and even more.</p><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="kate-mdi-overview-mainwindow"></a>The Main Window</h4></div></div></div><p><a class="indexterm" name="idm537"></a>
The <span class="application">Kate</span> Main Window is a standard <span class="orgname">KDE</span> application window,
with the addition of side bars containing tool views. It has a
menubar with all the common menus, and some more, and a toolbar
providing access to commonly used commands.</p><p>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.</p><p>The docking capabilities of the window is used for the tool
windows of any plugin enabled in the settings dialog.</p><p>Tool views can be positioned in any sidebar, to move a tool right click
its sidebar button and select from the <span class="mousebutton">right</span> mouse button menu</p><p>A tool view can be marked as <span class="emphasis"><em>persistent</em></span> in the <span class="mousebutton">right</span> mouse button
menu for its sidebar button. The sidebar can contain
more tools at one time so that when a tool is persistent other tools can be
shown simultaneously.</p><p>If a plugin has configuration options you can use the first item
in the context menu to open the corresponding page in <span class="application">Kate</span>'s
settings dialog.</p></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="kate-mdi-editor"></a>The Editor area</h3></div></div></div><p><a class="indexterm" name="idm553"></a>
<span class="application">Kate</span> 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 <span class="application">Konqueror</span> or the popular
<span class="application">emacs</span> 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.</p><p>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.</p><p>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.</p><p>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 the blinking cursor bar in the
focused frame.</p></div></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="working-with-kate.html">Prev</a></td><td class="upCell"><a accesskey="h" href="index.html">Contents</a></td><td class="nextCell"><a accesskey="n" href="fundamentals-using-sessions.html">Next</a></td></tr><tr><td class="prevCell">Working with <span class="application">Kate</span> </td><td class="upCell">The Fundamentals</td><td class="nextCell"> Using Sessions</td></tr></table></div><div id="footer_text">Would you like to make a comment or contribute an update to this page?<br>Send feedback to the <a href="mailto:kde-doc-english@kde.org" class="footer_email">KDE Docs Team</a></div></div></div></body></html></FILENAME><FILENAME filename="fundamentals-using-sessions.html"><html><head><title>Using Sessions</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, kdebase, Kate, text, editor, programmer, programming, projects, MDI, Multi, Document, Interface, terminal, console"><link rel="home" href="index.html" title="The Kate Handbook"><link rel="up" href="fundamentals.html" title="Chapter 2. The Fundamentals"><link rel="prev" href="kate-mdi.html" title="Working With the Kate MDI"><link rel="next" href="fundamentals-quick-open.html" title="Quick Open"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> Using Sessions</div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="kate-mdi.html">Prev</a></td><td class="upCell">The Fundamentals</td><td class="nextCell"><a accesskey="n" href="fundamentals-quick-open.html">Next</a></td></tr></table></div><div id="contentBody"><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="fundamentals-using-sessions"></a>Using Sessions</h2></div></div></div><p>Sessions is how <span class="application">Kate</span> lets you keep more than one list of files and
<acronym class="acronym">GUI</acronym> configuration around. You can have as many named sessions as you want,
and you can use unnamed or anonymous sessions for files you want to use only
once. Currently <span class="application">Kate</span> can save the list of open files, and the general window
configuration in the session; future versions of <span class="application">Kate</span> may add more features
that can be saved in sessions. With the introduction of sessions, <span class="application">Kate</span> also
allows you to open any number of instances of the application instead of just
one as it used to do as the default behavior.</p><p>Sessions are supported in three areas:

</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p><a class="link" href="fundamentals.html#command-line-options" title="Command Line Options"><span class="emphasis"><em>Command line
options</em></span></a> that lets you select and start sessions when launching
<span class="application">Kate</span> from the command line.</p></li><li class="listitem"><p><a class="link" href="sessions-menu.html" title="The Sessions Menu"><span class="emphasis"><em>The Sessions
menu</em></span></a> that lets you switch, save, start and manage your
sessions.</p></li><li class="listitem"><p><a class="link" href="config-dialog.html#config-dialog-sessions" title="Session"><span class="emphasis"><em>Configuration
options</em></span></a> that lets you decide how sessions generally should
behave.</p></li></ul></div><p>

</p><p>When starting a new session, the <acronym class="acronym">GUI</acronym> configuration of <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Default
Session</span></span> is loaded. To save window configuration in the default
session, you need to enable saving window configuration in the sessions
configuration page of the configuration dialog and then load the default
session, set up the window as desired and save the session again.</p><p>When a named session is loaded, <span class="application">Kate</span> will display the session name at
the start of the window title, which then has the form
<span class="quote">“<span class="quote"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="replaceable"><em class="replaceable"><code>Session Name</code></em></span>: <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="replaceable"><em class="replaceable"><code>Document name or
<acronym class="acronym">URL</acronym></code></em></span> - <span class="application">Kate</span></span>”</span>.</p><p>When opening files on the command line with <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="option"><code class="option">--start
<span class="replaceable"><em class="replaceable"><code>name</code></em></span></code></span> or if a session is selected using the
session chooser, the specified session is loaded prior to the files specified
on the command line. To open files from the command line in a new, unnamed
session, configure <span class="application">Kate</span> to start a new session as default in the session page of
the configuration dialog or use <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="option"><code class="option">--start</code></span> with an empty string:
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="replaceable"><em class="replaceable"><code>''</code></em></span>.</p><p>Since <span class="application">Kate</span> 2.5.1 the <acronym class="acronym">PID</acronym> of the current instance is
exported to the environment variable <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="envar"><code class="envar">KATE_PID</code></span>. When opening files
from the built in terminal Kate will automatically select the current instance
if nothing else is indicated on the command line.</p></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="kate-mdi.html">Prev</a></td><td class="upCell"><a accesskey="h" href="index.html">Contents</a></td><td class="nextCell"><a accesskey="n" href="fundamentals-quick-open.html">Next</a></td></tr><tr><td class="prevCell">Working With the <span class="application">Kate</span> <acronym class="acronym">MDI</acronym> </td><td class="upCell">The Fundamentals</td><td class="nextCell"> Quick Open</td></tr></table></div><div id="footer_text">Would you like to make a comment or contribute an update to this page?<br>Send feedback to the <a href="mailto:kde-doc-english@kde.org" class="footer_email">KDE Docs Team</a></div></div></div></body></html></FILENAME><FILENAME filename="fundamentals-quick-open.html"><html><head><title>Quick Open</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, kdebase, Kate, text, editor, programmer, programming, projects, MDI, Multi, Document, Interface, terminal, console"><link rel="home" href="index.html" title="The Kate Handbook"><link rel="up" href="fundamentals.html" title="Chapter 2. The Fundamentals"><link rel="prev" href="fundamentals-using-sessions.html" title="Using Sessions"><link rel="next" href="fundamentals-getting-help.html" title="Getting Help"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> Quick Open</div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="fundamentals-using-sessions.html">Prev</a></td><td class="upCell">The Fundamentals</td><td class="nextCell"><a accesskey="n" href="fundamentals-getting-help.html">Next</a></td></tr></table></div><div id="contentBody"><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="fundamentals-quick-open"></a>Quick Open</h2></div></div></div><p>To be able to quickly open/switch between files, Kate comes with a built-in quick open
dialog. You can open it with <span class="keycap"><strong>Ctrl</strong></span>+<span class="keycap"><strong>Alt</strong></span>+<span class="keycap"><strong>O</strong></span>.
</p><p>
Quick open can show all open documents in Kate as well as all files in open projects. To
be able to see project files, you need to enable <a class="link" href="kate-application-plugin-projects.html" title="Project Plugin">Project Plugin</a>.
</p><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="idm613"></a>Using Quick Open</h3></div></div></div><p>
Using quick open is very simple. Once you open it, just type the name or portions of the name of the file
you want to open and quick open will filter the list based on what you typed. Hitting <span class="keysym">Enter</span> opens the selected file,
while <span class="keycap"><strong>Esc</strong></span> hides the quick open.
</p><p>
By default, only the file name is matched while filtering. If you want to match path, you need
to have a "/" in the typed text. For example: "doc/index" will match all the files that contain
"index" inside the folder "doc".
</p><p>
The documents which are already open are highlighted in bold and are listed at the top when the dialog
opens. Also, when quick open shows up the previous open document is already selected so you can just
press <span class="keysym">Enter</span> and it will take you to that document.
</p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="idm621"></a>Configuring Quick Open</h3></div></div></div><div class="screenshot"><a name="screenshot-project-quickopen"></a><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="project-quickopen.png"></div></div><p>
Quick open provides a couple of config options. To access these options, right-click in the input line edit.
</p><div class="variablelist"><dl class="variablelist"><dt><span class="term">Currently available options are:</span></dt><dd><p><strong class="userinput"><code>Current Project</code></strong> - Show files from current project only</p><p><strong class="userinput"><code>All Projects</code></strong> - Show files from all open projects</p><p><strong class="userinput"><code>Fuzzy Filtering</code></strong> - Use fuzzy matching algorithm to filter files</p><p><strong class="userinput"><code>Wildcard Filtering</code></strong>- Use wildcard matching to filter files</p></dd></dl></div></div></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="fundamentals-using-sessions.html">Prev</a></td><td class="upCell"><a accesskey="h" href="index.html">Contents</a></td><td class="nextCell"><a accesskey="n" href="fundamentals-getting-help.html">Next</a></td></tr><tr><td class="prevCell">Using Sessions </td><td class="upCell">The Fundamentals</td><td class="nextCell"> Getting Help</td></tr></table></div><div id="footer_text">Would you like to make a comment or contribute an update to this page?<br>Send feedback to the <a href="mailto:kde-doc-english@kde.org" class="footer_email">KDE Docs Team</a></div></div></div></body></html></FILENAME><FILENAME filename="fundamentals-getting-help.html"><html><head><title>Getting Help</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, kdebase, Kate, text, editor, programmer, programming, projects, MDI, Multi, Document, Interface, terminal, console"><link rel="home" href="index.html" title="The Kate Handbook"><link rel="up" href="fundamentals.html" title="Chapter 2. The Fundamentals"><link rel="prev" href="fundamentals-quick-open.html" title="Quick Open"><link rel="next" href="kate-part.html" title="Chapter 3. Working with the Kate Editor"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> Getting Help</div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="fundamentals-quick-open.html">Prev</a></td><td class="upCell">The Fundamentals</td><td class="nextCell"><a accesskey="n" href="kate-part.html">Next</a></td></tr></table></div><div id="contentBody"><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="fundamentals-getting-help"></a>Getting Help</h2></div></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="idm643"></a>With <span class="application">Kate</span></h3></div></div></div><div class="variablelist"><dl class="variablelist"><dt><span class="term">This manual</span></dt><dd><p>Offers detailed documentation on all menu commands,
configuration options, tools, dialogs, plugins <abbr class="abbrev">etc.</abbr> as well as
descriptions of the <span class="application">Kate</span> window, the editor and various concepts
used in the application.</p><p>Press <span class="keycap"><strong>F1</strong></span> or use the
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Help</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem"><span class="application">Kate</span> Handbook</span></span> menu topic to view this
manual.</p></dd><dt><a name="whats-this"></a><span class="term">What's This Help</span></dt><dd><p>What's This help offers immediate help with single elements of
graphical windows, such as buttons or other window areas.</p><p>We strive to provide What's This help for any elements for which
it makes sense. It is available throughout the configuration dialog,
and in many other dialogs as well.</p><p>To employ What's This help, press
<span class="keycap"><strong>Shift</strong></span>+<span class="keycap"><strong>F1</strong></span> or use the
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Help</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">What's
This</span></span> menu item to enable What's This
mode. The cursor will turn into an arrow with a question mark, and you
can now click any element in the window to read the What's This help
for that element, if it is available.</p></dd><dt><span class="term">Help Buttons in Dialogs</span></dt><dd><p>Some dialogs have a <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guibutton">Help</span></span> Button. Pressing
it will start the <span class="application">KHelpCenter</span> and open the relevant
documentation.</p></dd></dl></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="idm677"></a>With Your Text Files</h3></div></div></div><p><span class="application">Kate</span> does not (yet!) provide any means for reading document
related documentation. Depending on the file you are editing, you may
find the <a class="link" href="kate-application-plugin-konsole.html" title="Terminal Tool View Plugin">Built in
Terminal Emulator</a> helpful for viewing related <span class="trademark">UNIX</span>® manual pages or
info documentation, or you can use <span class="application">Konqueror</span>.</p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="idm684"></a>Articles on <span class="application">Kate</span></h3></div></div></div><p><span class="application">Kate</span>'s homepage provides some <a class="ulink" href="https://kate-editor.org/featured-articles" target="_top">
Articles and Howtos</a> with further information beyond the scope of this handbook.</p></div></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="fundamentals-quick-open.html">Prev</a></td><td class="upCell"><a accesskey="h" href="index.html">Contents</a></td><td class="nextCell"><a accesskey="n" href="kate-part.html">Next</a></td></tr><tr><td class="prevCell">Quick Open </td><td class="upCell">The Fundamentals</td><td class="nextCell"> Working with the <span class="application">Kate</span> Editor</td></tr></table></div><div id="footer_text">Would you like to make a comment or contribute an update to this page?<br>Send feedback to the <a href="mailto:kde-doc-english@kde.org" class="footer_email">KDE Docs Team</a></div></div></div></body></html></FILENAME></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="introduction.html">Prev</a></td><td class="upCell"><a accesskey="h" href="index.html">Contents</a></td><td class="nextCell"><a accesskey="n" href="working-with-kate.html">Next</a></td></tr><tr><td class="prevCell">Introduction </td><td class="upCell"> </td><td class="nextCell"> Working with <span class="application">Kate</span></td></tr></table></div><div id="footer_text">Would you like to make a comment or contribute an update to this page?<br>Send feedback to the <a href="mailto:kde-doc-english@kde.org" class="footer_email">KDE Docs Team</a></div></div></div></body></html></FILENAME><FILENAME filename="kate-part.html"><html><head><title>Chapter 3. Working with the Kate Editor</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, kdebase, Kate, text, editor, programmer, programming, projects, MDI, Multi, Document, Interface, terminal, console"><link rel="home" href="index.html" title="The Kate Handbook"><link rel="up" href="index.html" title="The Kate Handbook"><link rel="prev" href="fundamentals-getting-help.html" title="Getting Help"><link rel="next" href="plugins.html" title="Chapter 4. Working with Plugins"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> Working with the <span class="application">Kate</span> Editor</div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="fundamentals-getting-help.html">Prev</a></td><td class="upCell"> </td><td class="nextCell"><a accesskey="n" href="plugins.html">Next</a></td></tr></table></div><div id="contentBody"><div class="chapter"><div class="titlepage"><div><div><h1 class="title"><a name="kate-part"></a>Chapter 3. Working with the <span class="application">Kate</span> Editor</h1></div></div></div><p>For information about the basics of working with the editor component
underlying <span class="application">Kate</span>, see the 
<a class="ulink" href="help:/katepart/kate-part.html" target="_top">Working with the
<span class="application">KatePart</span> Editor chapter of the <span class="application">KatePart</span> Handbook</a>.</p></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="fundamentals-getting-help.html">Prev</a></td><td class="upCell"><a accesskey="h" href="index.html">Contents</a></td><td class="nextCell"><a accesskey="n" href="plugins.html">Next</a></td></tr><tr><td class="prevCell">Getting Help </td><td class="upCell"> </td><td class="nextCell"> Working with Plugins</td></tr></table></div><div id="footer_text">Would you like to make a comment or contribute an update to this page?<br>Send feedback to the <a href="mailto:kde-doc-english@kde.org" class="footer_email">KDE Docs Team</a></div></div></div></body></html></FILENAME><FILENAME filename="plugins.html"><html><head><title>Chapter 4. Working with Plugins</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, kdebase, Kate, text, editor, programmer, programming, projects, MDI, Multi, Document, Interface, terminal, console"><link rel="home" href="index.html" title="The Kate Handbook"><link rel="up" href="index.html" title="The Kate Handbook"><link rel="prev" href="kate-part.html" title="Chapter 3. Working with the Kate Editor"><link rel="next" href="kate-application-plugin-external-tools.html" title="External Tools"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> Working with Plugins</div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="kate-part.html">Prev</a></td><td class="upCell"> </td><td class="nextCell"><a accesskey="n" href="kate-application-plugin-external-tools.html">Next</a></td></tr></table></div><div id="contentBody"><div class="chapter"><div class="titlepage"><div><div><h1 class="title"><a name="plugins"></a>Chapter 4. Working with Plugins</h1></div><div><div class="authorgroup"><p class="author"><span class="firstname">Anders</span> <span class="surname">Lund</span> <code class="email">&lt;anders@alweb.dk&gt;</code></p></div></div></div></div><p>You can enable the individual plugins in the <a class="link" href="configuring-kate-configdialog.html" title="The Main Configuration Dialog">configuration dialog</a>, which also
provides access to additional configuration options for plugins that require
it.</p><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="kate-application-plugins"></a><span class="application">Kate</span> Application Plugins</h2></div></div></div><p>
<span class="application">Kate</span> plugins are additional functions for the <span class="application">Kate</span> editor.  They can
add extra menus and shortcuts, and extend <span class="application">Kate</span>'s features.  You can
install as many or as few as you like, from within <span class="application">Kate</span>.
Open <span class="application">Kate</span>'s configuration dialog with
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Settings</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Configure <span class="application">Kate</span>...</span></span>
Select <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Application</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Plugins</span></span> to
choose the wanted plugins.
</p><p>
The available application plugins are:
</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p><a class="link" href="kate-application-plugin-external-tools.html" title="External Tools">External Tools</a>
- Run external tools and applications</p></li><li class="listitem"><p><a class="link" href="kate-application-plugin-backtracebrowser.html" title="Backtrace Browser Plugin">Backtrace Browser</a>
- C/C++ Backtrace navigation tool view</p></li><li class="listitem"><p><a class="link" href="kate-application-plugin-build.html" title="Build Plugin">Build Plugin</a> - Compile or Make and parse error messages</p></li><li class="listitem"><p><a class="link" href="kate-application-plugin-closeexceptlike.html" title="Close Except/Like Plugin">Close Except/Like</a>
- Close group of documents based on a common path or file extension</p></li><li class="listitem"><p><a class="link" href="kate-application-plugin-colorpicker.html" title="Color Picker Plugin">Color Picker</a>
- Show preview for known color names</p></li><li class="listitem"><p><a class="link" href="kate-application-plugin-colored-brackets.html" title="Colored Brackets">Colored Brackets</a>
- Colored brackets for readability</p></li><li class="listitem"><p><a class="link" href="kate-application-plugin-ctags.html" title="CTags Plugin">CTags</a> -
Look up definitions/declarations with CTags</p></li><li class="listitem"><p><a class="link" href="kate-application-plugin-preview.html" title="Document Preview Plugin">Document preview</a> -
Preview the document in the target format.</p></li><li class="listitem"><p><a class="link" href="kate-application-plugin-documentswitcher.html" title="Document Switcher Plugin">Document switcher</a> -
Quick document switching with <span class="keycap"><strong>Alt</strong></span>+<span class="keycap"><strong>Tab</strong></span> behavior</p></li><li class="listitem"><p><a class="link" href="kate-application-plugin-fsbrowser.html" title="File System Browser">File System Browser</a> -
  File system browser tool view</p></li><li class="listitem"><p><a class="link" href="kate-application-plugin-documents.html" title="The Documents List">Document Tree View</a> - Displays the open files in a file tree</p></li><li class="listitem"><p><a class="link" href="kate-application-plugin-gdb.html" title="GDB Plugin"><acronym class="acronym">GDB</acronym></a> - Provides a
simple <acronym class="acronym">GDB</acronym> frontend</p></li><li class="listitem"><p><a class="link" href="kate-application-plugin-projects.html" title="Project Plugin">Project Plugin</a> - Integration with <span class="application">Git</span> and other source control systems</p></li><li class="listitem"><p>Replicode - Constructivist AI language and runtime</p></li><li class="listitem"><p><a class="link" href="kate-application-plugin-lspclient.html" title="LSP Client Plugin">LSP Client</a>
- LSP client providing code navigation and code completion for many languages</p></li><li class="listitem"><p><a class="link" href="kate-application-plugin-searchinfiles.html" title="Search &amp; Replace">Search &amp; Replace</a> -
Search and replace in documents, folders, or projects</p></li><li class="listitem"><p><a class="link" href="kate-application-plugin-snippets.html" title="Kate Snippets">Snippets tool view</a> - Tool view embedding the snippets management</p></li><li class="listitem"><p><a class="link" href="kate-application-plugin-keyboardmacros.html" title="Keyboard Macros Plugin">Keyboard Macros</a>
- Record and play keyboard macros (i.e., keyboard action sequences)</p></li><li class="listitem"><p><a class="link" href="kate-application-plugin-sql.html" title="SQL Plugin">SQL Plugin</a> - Execute
query on SQL databases</p></li><li class="listitem"><p><a class="link" href="kate-application-plugin-symbolviewer.html" title="Symbol Viewer Plugin">Symbol Viewer</a>
- Extract and show reference symbols from source</p></li><li class="listitem"><p><a class="link" href="kate-application-plugin-konsole.html" title="Terminal Tool View Plugin">Terminal tool view</a> - Have a terminal at the ready, using <span class="orgname">KDE</span>'s <span class="application">Konsole</span> widget</p></li><li class="listitem"><p><a class="link" href="kate-application-plugin-textfilter.html" title="Text Filter Plugin">Text Filter</a> - Process text using terminal commands</p></li><li class="listitem"><p><a class="link" href="kate-application-plugin-xmltools.html" title="XML Completion"><acronym class="acronym">XML</acronym>Completetion</a> - Lists <acronym class="acronym">XML</acronym> elements,
attributes, attribute values and entities allowed by DTD</p></li><li class="listitem"><p><a class="link" href="kate-application-plugin-xmlcheck.html" title="XML Validation"><acronym class="acronym">XML</acronym> Validation</a>- Validates <acronym class="acronym">XML</acronym> files using xmllint</p></li></ul></div></div><FILENAME filename="kate-application-plugin-external-tools.html"><html><head><title>External Tools</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, kdebase, Kate, text, editor, programmer, programming, projects, MDI, Multi, Document, Interface, terminal, console"><link rel="home" href="index.html" title="The Kate Handbook"><link rel="up" href="plugins.html" title="Chapter 4. Working with Plugins"><link rel="prev" href="plugins.html" title="Chapter 4. Working with Plugins"><link rel="next" href="kate-application-plugin-backtracebrowser.html" title="Backtrace Browser Plugin"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> External Tools</div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="plugins.html">Prev</a></td><td class="upCell">Working with Plugins</td><td class="nextCell"><a accesskey="n" href="kate-application-plugin-backtracebrowser.html">Next</a></td></tr></table></div><div id="contentBody"><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="kate-application-plugin-external-tools"></a>External Tools</h2></div></div></div><p>The <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">External Tools</span></span> plugin allows to invoke
external applications with data related to the current document, for example
its URL, directory, text or selection. Once enabled, a config page appears
as depicted below that allows to change or remove existing tools. Similarly,
new tools can be added to your liking. The tools will then appear in the
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">External Tools</span></span> submenu of the <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Tools</span></span>
menu of the application.
</p><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="kateexternaltools.png"></div><p>
The config page allows to add new external tools by clicking on the
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Add</span></span> button. In this case, a popup menu appears where one
can either add a new external tool, add an existing tool from a predefined list,
or add a new category to organize the external tools into categories. Similarly,
the existing tools can be modified either by double-click or by invoking
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Edit...</span></span>, and <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Remove</span></span> removes the
selected tools.
</p><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="kate-application-plugin-external-tools-edit"></a>Configuring External Tools</h3></div></div></div><p>Editing a tool opens a config dialog that allows fine-grained
configuration of the tool:</p><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="kateeditexternaltool.png"></div><div class="variablelist"><dl class="variablelist"><dt><span class="term">As can be seen, many details can be defined, namely:</span></dt><dd><p><strong class="userinput"><code>Name</code></strong>, the name of the tool, which will later appear in the menu.</p><p><strong class="userinput"><code>Icon</code></strong>, optional icon that is visible in the menu.</p><p><strong class="userinput"><code>Executable</code></strong>, executable including either a full path, or your executable must be in the <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="envar"><code class="envar">PATH</code></span> environment variable.</p><p><strong class="userinput"><code>Arguments</code></strong>, optional arguments that are passed to the executable.</p><p><strong class="userinput"><code>Input</code></strong>, optional input that is passed to the process via stdin.</p><p><strong class="userinput"><code>Working directory</code></strong>, the working directory the tool will be started in. If empty, the working directory is set to the current document’s path.</p><p><strong class="userinput"><code>Mime types</code></strong>, if set, the tool is active only if the current document’s mime type matches.</p><p><strong class="userinput"><code>Save</code></strong>, when invoked, saves none, the current document, or all documents.</p><p><strong class="userinput"><code>Trigger</code></strong>, a trigger to execute this tool. A trigger will only affect the currently active document and will only execute if the mimetype of current active document matches the mimetype of the external tool.</p><div class="variablelist"><dl class="variablelist"><dt><span class="term">Following triggers are available:</span></dt><dd><p><strong class="userinput"><code>None</code></strong>, this is the default, it means the tool has no trigger.</p><p><strong class="userinput"><code>Before Save</code></strong>, this trigger will execute right before saving the document.</p><p><strong class="userinput"><code>After Save</code></strong>, this trigger will execute the tool after the document was saved.</p></dd></dl></div><p><strong class="userinput"><code>Reload current document after execution</code></strong>, useful when the current file is modified on disk.</p><p><strong class="userinput"><code>Output</code></strong>, the output defines the target of stdout. It is either set to <strong class="userinput"><code>Ignored</code></strong>, <strong class="userinput"><code>Insert at Cursor Position</code></strong>, <strong class="userinput"><code>Replace Selected Text</code></strong>, <strong class="userinput"><code>Replace Current Document</code></strong>, <strong class="userinput"><code>Append to Current Document</code></strong>, <strong class="userinput"><code>Insert in New Document</code></strong>, <strong class="userinput"><code>Copy to Clipboard</code></strong>, or <strong class="userinput"><code>Display in Pane</code></strong>.</p><p><strong class="userinput"><code>Editor command</code></strong>, optional command that can be used to invoke the external tool via the built-in <a class="ulink" href="help:/katepart/advanced.html#advanced-editing-tools-commandline" target="_top">command line</a>.</p></dd></dl></div><p>The button <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Defaults</span></span> is visible only for tools that
are shipped with Kate. When clicked, all tool’s settings reverted to default
(aka factory) values.
</p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="kate-application-plugin-external-tools-variables"></a>Variable Expansion</h3></div></div></div><p>
Some editing fields such as the <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Executable</span></span>, the
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Arguments</span></span>, the <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Input</span></span> and the
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Working Directory</span></span> support variables that are expanded
on tool invocation. This is indicated by the icon <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">{}</span></span>
that appears once one of these text input fields has focus (see red circle):
</p><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="katevariableexpansion.png"></div><p>
Hovering over one of these text input fields also shows a tooltip with the
current expanded text. Further, clicking on the <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">{}</span></span>
action will open a dialog that lists all available variables:
</p><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="kateexternaltoolvariablechooser.png"></div><p>
This feature provides a lot of flexibility when defining an external tool since
all variables of the form <strong class="userinput"><code>%{...}</code></strong> are expanded when the tool
gets invoked. There are two kind of variables supported:

</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p><strong class="userinput"><code>%{variable-name}</code></strong></p></li><li class="listitem"><p><strong class="userinput"><code>%{variable-name:&lt;value&gt;}</code></strong></p></li></ul></div><p>
The first form <strong class="userinput"><code>%{variable-name}</code></strong> simply replaces the
variable with its contents. For instance, the variable <strong class="userinput"><code>%{Document:FileName}</code></strong>
is replaced by the current document’s filename without its path.
The second form <strong class="userinput"><code>%{variable-name:&lt;value&gt;}</code></strong> gets the
<strong class="userinput"><code>&lt;value&gt;</code></strong> as contents. For example, this can be used
to expand an environment variable with <strong class="userinput"><code>%{ENV:HOME}</code></strong>,
or one can obtain the current date in the preferred format like
<strong class="userinput"><code>%{Date:yyyy-MM-dd}</code></strong>.
</p><div class="variablelist"><dl class="variablelist"><dt><span class="term">Supported variables include:</span></dt><dd><p><strong class="userinput"><code>Document:FileBaseName</code></strong>: File base name without path and suffix of the current document.</p><p><strong class="userinput"><code>Document:FileExtension</code></strong>: File extension of the current document.</p><p><strong class="userinput"><code>Document:FileName</code></strong>: File name without path of the current document.</p><p><strong class="userinput"><code>Document:FilePath</code></strong>: Full path of the current document including the file name</p><p><strong class="userinput"><code>Document:Text</code></strong>: Contents of the current document.</p><p><strong class="userinput"><code>Document:Path</code></strong>: Full path of the current document excluding the file name.</p><p><strong class="userinput"><code>Document:NativeFilePath</code></strong>: Full document path including file name, with native path separator (backslash on Windows).</p><p><strong class="userinput"><code>Document:NativePath</code></strong>: Full document path excluding file name, with native path separator (backslash on Windows).</p><p><strong class="userinput"><code>Document:Cursor:Line</code></strong>: Line number of the text cursor position in current document (starts with 0).</p><p><strong class="userinput"><code>Document:Cursor:Column</code></strong>: Column number of the text cursor position in current document (starts with 0).</p><p><strong class="userinput"><code>Document:Cursor:XPos</code></strong>: X component in global screen coordinates of the cursor position.</p><p><strong class="userinput"><code>Document:Cursor:YPos</code></strong>: Y component in global screen coordinates of the cursor position.</p><p><strong class="userinput"><code>Document:Selection:Text</code></strong>: Text selection of the current document.</p><p><strong class="userinput"><code>Document:Selection:StartLine</code></strong>: Start line of selected text of the current document.</p><p><strong class="userinput"><code>Document:Selection:StartColumn</code></strong>: Start column of selected text of the current document.</p><p><strong class="userinput"><code>Document:Selection:EndLine</code></strong>: End line of selected text of the current document.</p><p><strong class="userinput"><code>Document:Selection:EndColumn</code></strong>: End column of selected text of the current document.</p><p><strong class="userinput"><code>Document:RowCount</code></strong>: Number of rows of the current document.</p><p><strong class="userinput"><code>Document:Variable:&lt;variable&gt;</code></strong>: Expand arbitrary <a class="ulink" href="help:/katepart/config-variables.html" target="_top">document variables</a>.</p><p><strong class="userinput"><code>Date:Locale</code></strong>: The current date in current locale format.</p><p><strong class="userinput"><code>Date:ISO</code></strong>: The current date (ISO).</p><p><strong class="userinput"><code>Date:&lt;value&gt;</code></strong>: The current date (<a class="ulink" href="https://doc.qt.io/qt-5/qdate.html#toString" target="_top">QDate formatstring</a>).</p><p><strong class="userinput"><code>Time:Locale</code></strong>: The current time in current locale format.</p><p><strong class="userinput"><code>Time:ISO</code></strong>: The current time (ISO).</p><p><strong class="userinput"><code>Time:&lt;value&gt;</code></strong>: The current time (<a class="ulink" href="https://doc.qt.io/qt-5/qtime.html#toString" target="_top">QTime formatstring</a>).</p><p><strong class="userinput"><code>ENV:&lt;value&gt;</code></strong>: Access to environment variables.</p><p><strong class="userinput"><code>JS:&lt;expression&gt;</code></strong>: Evaluate simple JavaScript statements.</p><p><strong class="userinput"><code>PercentEncoded:&lt;text&gt;</code></strong>: Percent encoded text.</p><p><strong class="userinput"><code>UUID</code></strong>: Generate a new UUID.</p></dd></dl></div><p>
</p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="kate-application-plugin-external-tools-defaults"></a>List of Default Tools</h3></div></div></div><p>
Several tools are shipped by default. However, if you have more useful tools
please contribute those to <code class="email">(kwrite-devel AT kde.org)</code> so that we can add them to this list.
All default tools are visible in the list view by default. However, all tools can be
changed to your liking, including the category or even deleting tools.
Deleted tools can be added back again by clicking on the <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guibutton">Add</span></span>
button in the config page as described above.
</p><div class="variablelist"><p class="title"><b>git-cola</b></p><dl class="variablelist"><dt><span class="term">git-cola is a graphical git client that enables you to easily stage and commit changes.
If installed, it is available also through the command line by typing <strong class="userinput"><code>git-cola</code></strong></span></dt><dd><p><strong class="userinput"><code>Name</code></strong>: git-cola</p><p><strong class="userinput"><code>Icon</code></strong>: git-cola</p><p><strong class="userinput"><code>Executable</code></strong>: git-cola</p><p><strong class="userinput"><code>Arguments</code></strong>: -r %{Document:Path}</p><p><strong class="userinput"><code>Editor command</code></strong>: git-cola</p></dd></dl></div><div class="variablelist"><p class="title"><b>gitk</b></p><dl class="variablelist"><dt><span class="term">gitk is a git client as well that allows to nicely visualize the git history.</span></dt><dd><p><strong class="userinput"><code>Name</code></strong>: gitk</p><p><strong class="userinput"><code>Icon</code></strong>: git-gui</p><p><strong class="userinput"><code>Executable</code></strong>: gitk</p><p><strong class="userinput"><code>Working directory</code></strong>: %{Document:Path}</p><p><strong class="userinput"><code>Editor command</code></strong>: gitk</p></dd></dl></div><div class="variablelist"><p class="title"><b>git blame</b></p><dl class="variablelist"><dt><span class="term">Starts git blame to easily follow git changes in the current file.</span></dt><dd><p><strong class="userinput"><code>Name</code></strong>: git blame</p><p><strong class="userinput"><code>Executable</code></strong>: git</p><p><strong class="userinput"><code>Arguments</code></strong>: gui blame %{Document:FileName}</p><p><strong class="userinput"><code>Save</code></strong>: Current Document</p><p><strong class="userinput"><code>Working directory</code></strong>: %{Document:Path}</p><p><strong class="userinput"><code>Editor command</code></strong>: git-blame</p></dd></dl></div><div class="variablelist"><p class="title"><b>Run Shell Script</b></p><dl class="variablelist"><dt><span class="term">Starts an external konsole in which the current document is executed.
The script needs to state the interpreter in the first line via a shebang <strong class="userinput"><code>#!/path/interpreter</code></strong>.</span></dt><dd><p><strong class="userinput"><code>Name</code></strong>: Run Shell Script</p><p><strong class="userinput"><code>Icon</code></strong>: system-run</p><p><strong class="userinput"><code>Executable</code></strong>: konsole</p><p><strong class="userinput"><code>Arguments</code></strong>: -e sh -c "cd %{Document:Path} &amp;&amp; pwd &amp;&amp; chmod -vc a+x %{Document:FileName} &amp;&amp; ./%{Document:FileName} ; echo Press any key to continue. &amp;&amp; read -n 1"</p><p><strong class="userinput"><code>Save</code></strong>: Current Document</p><p><strong class="userinput"><code>Working directory</code></strong>: %{Document:Path}</p><p><strong class="userinput"><code>Editor command</code></strong>: run-script</p></dd></dl></div><div class="variablelist"><p class="title"><b>Google Selected Text</b></p><dl class="variablelist"><dt><span class="term">Search in google for the selected text.</span></dt><dd><p><strong class="userinput"><code>Name</code></strong>: Google Selected Text</p><p><strong class="userinput"><code>Icon</code></strong>: globe</p><p><strong class="userinput"><code>Executable</code></strong>: xdg-open</p><p><strong class="userinput"><code>Arguments</code></strong>: "https://www.google.com/search?q=%{Document:Selection:Text}"</p><p><strong class="userinput"><code>Editor command</code></strong>: google</p></dd></dl></div><div class="variablelist"><p class="title"><b>Insert UUID</b></p><dl class="variablelist"><dt><span class="term">Inserts a new UUID each time this action is invoked.</span></dt><dd><p><strong class="userinput"><code>Name</code></strong>: Insert UUID</p><p><strong class="userinput"><code>Executable</code></strong>: echo</p><p><strong class="userinput"><code>Arguments</code></strong>: %{UUID}</p><p><strong class="userinput"><code>Output</code></strong>: Insert at Cursor Position</p><p><strong class="userinput"><code>Editor command</code></strong>: uuid</p></dd></dl></div><div class="variablelist"><p class="title"><b>Clang Format Full File</b></p><dl class="variablelist"><dt><span class="term">Runs clang-format on the current file on disk. The document is reloaded afterwards.</span></dt><dd><p><strong class="userinput"><code>Name</code></strong>: Clang Format Full File</p><p><strong class="userinput"><code>Executable</code></strong>: clang-format</p><p><strong class="userinput"><code>Arguments</code></strong>: -i %{Document:FileName}</p><p><strong class="userinput"><code>Working directory</code></strong>: %{Document:Path}</p><p><strong class="userinput"><code>Save</code></strong>: Current Document</p><p><strong class="userinput"><code>Reload</code></strong>: Yes</p><p><strong class="userinput"><code>Editor command</code></strong>: clang-format-file</p></dd></dl></div><div class="variablelist"><p class="title"><b>Clang Format Selected Text</b></p><dl class="variablelist"><dt><span class="term">Runs clang-format just on the selected text in the current document.</span></dt><dd><p><strong class="userinput"><code>Name</code></strong>: Clang Format Selected Text</p><p><strong class="userinput"><code>Executable</code></strong>: clang-format</p><p><strong class="userinput"><code>Arguments</code></strong>: -assume-fileName: %{Document:FileName}</p><p><strong class="userinput"><code>Working directory</code></strong>: %{Document:Path}</p><p><strong class="userinput"><code>Input</code></strong>: %{Document:Selection:Text}</p><p><strong class="userinput"><code>Output</code></strong>: Replace Selected Text</p><p><strong class="userinput"><code>Editor command</code></strong>: clang-format-selection</p></dd></dl></div><div class="variablelist"><p class="title"><b>Qt Quick 2 Preview (qmlscene)</b></p><dl class="variablelist"><dt><span class="term">Previews the current qml file in qmlscene.</span></dt><dd><p><strong class="userinput"><code>Name</code></strong>: Qt Quick 2 Preview (qmlscene)</p><p><strong class="userinput"><code>Executable</code></strong>: qmlscene</p><p><strong class="userinput"><code>Arguments</code></strong>: %{Document:FileName}</p><p><strong class="userinput"><code>Save</code></strong>: Current Document</p><p><strong class="userinput"><code>Working directory</code></strong>: %{Document:Path}</p><p><strong class="userinput"><code>Editor command</code></strong>: qml-preview</p></dd></dl></div><div class="variablelist"><p class="title"><b>JSON Format Full File</b></p><dl class="variablelist"><dt><span class="term">Format the entire JSON file.</span></dt><dd><p><strong class="userinput"><code>Name</code></strong>: JSON Format Full File</p><p><strong class="userinput"><code>Icon</code></strong>: application-json</p><p><strong class="userinput"><code>Executable</code></strong>: jq</p><p><strong class="userinput"><code>Arguments</code></strong>: %{Document:FileName}</p><p><strong class="userinput"><code>Save</code></strong>: Current Document</p><p><strong class="userinput"><code>Working directory</code></strong>: %{Document:Path}</p><p><strong class="userinput"><code>Output</code></strong>: Replace Current Document</p><p><strong class="userinput"><code>Editor command</code></strong>: json-format-file</p></dd></dl></div><div class="variablelist"><p class="title"><b>XML Format Full File</b></p><dl class="variablelist"><dt><span class="term">Format the entire XML file.</span></dt><dd><p><strong class="userinput"><code>Name</code></strong>: JSON Format Full File</p><p><strong class="userinput"><code>Icon</code></strong>: application-xml</p><p><strong class="userinput"><code>Executable</code></strong>: xmllint</p><p><strong class="userinput"><code>Arguments</code></strong>: --format %{Document:FileName}</p><p><strong class="userinput"><code>Save</code></strong>: Current Document</p><p><strong class="userinput"><code>Working directory</code></strong>: %{Document:Path}</p><p><strong class="userinput"><code>Output</code></strong>: Replace Current Document</p><p><strong class="userinput"><code>Editor command</code></strong>: xml-format-file</p></dd></dl></div></div></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="plugins.html">Prev</a></td><td class="upCell"><a accesskey="h" href="index.html">Contents</a></td><td class="nextCell"><a accesskey="n" href="kate-application-plugin-backtracebrowser.html">Next</a></td></tr><tr><td class="prevCell">Working with Plugins </td><td class="upCell">Working with Plugins</td><td class="nextCell"> Backtrace Browser Plugin</td></tr></table></div><div id="footer_text">Would you like to make a comment or contribute an update to this page?<br>Send feedback to the <a href="mailto:kde-doc-english@kde.org" class="footer_email">KDE Docs Team</a></div></div></div></body></html></FILENAME><FILENAME filename="kate-application-plugin-backtracebrowser.html"><html><head><title>Backtrace Browser Plugin</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, kdebase, Kate, text, editor, programmer, programming, projects, MDI, Multi, Document, Interface, terminal, console"><link rel="home" href="index.html" title="The Kate Handbook"><link rel="up" href="plugins.html" title="Chapter 4. Working with Plugins"><link rel="prev" href="kate-application-plugin-external-tools.html" title="External Tools"><link rel="next" href="kate-application-plugin-build.html" title="Build Plugin"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> Backtrace Browser Plugin</div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="kate-application-plugin-external-tools.html">Prev</a></td><td class="upCell">Working with Plugins</td><td class="nextCell"><a accesskey="n" href="kate-application-plugin-build.html">Next</a></td></tr></table></div><div id="contentBody"><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="kate-application-plugin-backtracebrowser"></a>Backtrace Browser Plugin</h2></div></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="backtracebrowser-using"></a>Using the Backtrace Browser Plugin</h3></div></div></div><p>This plugin is meant for developers and probably of little use for users.
It shows a backtrace delivered by gdb in a listview in a <span class="application">Kate</span> toolview.
Clicking on an item opens the selected file and jumps to the correct line number.
It works for backtraces generated on your own machine, but it will also work for
backtraces from other people, <abbr class="abbrev">i.e.</abbr> with <code class="filename">/home/dummy/qt-copy/…/qwidget.cpp</code>
will still be found on other machines. For that to work, you have to index the
directories where the source code is located.
</p><p>Sometimes there are several files with the same name, <abbr class="abbrev">e.g.</abbr></p><table border="0" summary="Simple list" class="simplelist"><tr><td><code class="filename">kdegraphics/okular/generators/dvi/config.h</code></td></tr><tr><td><code class="filename">kdepim-runtime/resources/gmail/saslplugin/config.h</code></td></tr></table><p>To pick the right choice, the plugin picks the last two parts of the <acronym class="acronym">URL</acronym>,
in this case this would be</p><table border="0" summary="Simple list" class="simplelist"><tr><td><code class="filename">dvi/config.h</code></td></tr><tr><td><code class="filename">saslplugin/config.h</code></td></tr></table><p>And then usually the plugin finds the correct one.</p><p>Indexing master and a branches of course will lead to a clash.</p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="backtracebrowser-config"></a>Configuration</h3></div></div></div><p>On the configuration page add the directories containing the source code.</p><div class="screenshot"><a name="screenshot-backtrace-settings"></a><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="backtrace-settings.png"><div class="caption">Configure Paths in Backtrace browser tool view</div></div></div><p>Clicking <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guibutton">OK</span></span> will start indexing.
When indexing is finished, open the toolview <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Backtrace Browser</span></span>.</p><p>Now you can load a backtrace from the clipboard (<abbr class="abbrev">e.g.</abbr>, when you clicked
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guibutton">Copy to Clipboard</span></span> in <span class="application">DrKonqi</span>) or from a file.</p></div></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="kate-application-plugin-external-tools.html">Prev</a></td><td class="upCell"><a accesskey="h" href="index.html">Contents</a></td><td class="nextCell"><a accesskey="n" href="kate-application-plugin-build.html">Next</a></td></tr><tr><td class="prevCell">External Tools </td><td class="upCell">Working with Plugins</td><td class="nextCell"> Build Plugin</td></tr></table></div><div id="footer_text">Would you like to make a comment or contribute an update to this page?<br>Send feedback to the <a href="mailto:kde-doc-english@kde.org" class="footer_email">KDE Docs Team</a></div></div></div></body></html></FILENAME><FILENAME filename="kate-application-plugin-build.html"><html><head><title>Build Plugin</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, kdebase, Kate, text, editor, programmer, programming, projects, MDI, Multi, Document, Interface, terminal, console"><link rel="home" href="index.html" title="The Kate Handbook"><link rel="up" href="plugins.html" title="Chapter 4. Working with Plugins"><link rel="prev" href="kate-application-plugin-backtracebrowser.html" title="Backtrace Browser Plugin"><link rel="next" href="kate-application-plugin-closeexceptlike.html" title="Close Except/Like Plugin"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> Build Plugin</div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="kate-application-plugin-backtracebrowser.html">Prev</a></td><td class="upCell">Working with Plugins</td><td class="nextCell"><a accesskey="n" href="kate-application-plugin-closeexceptlike.html">Next</a></td></tr></table></div><div id="contentBody"><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="kate-application-plugin-build"></a>Build Plugin</h2></div><div><div class="authorgroup"><p class="author"><span class="firstname">Salma</span> <span class="surname">Sultana</span> </p><p class="author"><span class="firstname">T.C.</span> <span class="surname">Hollingsworth</span> <code class="email">&lt;tchollingsworth@gmail.com&gt;</code></p></div></div></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="build-intro"></a>Introduction</h3></div></div></div><p>The Build plugin allows you to run actions like build, clean and compile
on a project.</p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="build-using"></a>Using the Build Plugin</h3></div></div></div><p>The Build plugin adds a <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Build Output</span></span> tool view at the
bottom and a <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Build</span></span> menu on the menubar. The tool view can be used to configure
build target settings, while the menu can be used to perform build, clean and
compile actions.</p><div class="screenshot"><a name="screenshot-build-output"></a><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="build-output.png"></div></div><p>The <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Build Output</span></span> tool view has two tabs:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Target Settings</span></span></p></li><li class="listitem"><p><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Output</span></span></p></li></ul></div><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="build-using-target-settings"></a>Target Settings tab</h4></div></div></div><p>The target settings tab can be used to configure various build targets and define targets sets.</p><p>To change the names or commands double click on the entries in the table and use the
dropdown box to select the active target set. Use the checkbox in front of each target to define a default.</p><p>A new target set contains several configuration options:</p><div class="variablelist"><dl class="variablelist"><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Working Directory</span></span></span></dt><dd><p>You can set the path to the project here. Leave this empty to
use the directory the current document is located in.</p></dd><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Build</span></span></span></dt><dd><p>This option lets you define the build command. It is set to
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="command"><span class="command"><strong>make</strong></span></span> by default.</p></dd><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Clean</span></span></span></dt><dd><p>The option lets you define the clean command. It is set to
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="command"><span class="command"><strong>make clean</strong></span></span> by default.</p></dd><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Config</span></span></span></dt><dd><p>This option lets you define the config command. It is set
to <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="command"><span class="command"><strong>cmake -DCMAKE_BUILD_TYPE=Debug -DCMAKE_INSTALL_PREFIX=/usr/local ../</strong></span></span>
by default.</p></dd></dl></div><p>On the top this plugin has a toolbar with the following buttons :</p><table border="0" summary="Simple list" class="simplelist"><tr><td>
<span class="guiicon"><span class="inlinemediaobject"><img src="dialog-ok-22.png"></span></span>
Build the selected target</td></tr><tr><td>
<span class="guiicon"><span class="inlinemediaobject"><img src="list-add-22.png"></span></span>
Add a new build target</td></tr><tr><td>
<span class="guiicon"><span class="inlinemediaobject"><img src="document-new-22.png"></span></span>
Create a new build target set</td></tr><tr><td>
<span class="guiicon"><span class="inlinemediaobject"><img src="edit-copy-22.png"></span></span>
Copy a command or target set</td></tr><tr><td>
<span class="guiicon"><span class="inlinemediaobject"><img src="edit-delete-22.png"></span></span>
Delete the current command or target set</td></tr></table></div><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="build-using-output"></a>Output tab</h4></div></div></div><p>The <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Output</span></span> tab shows the console output generated by
the last command.</p><p>Use the slider at the top to show or hide categories of output:</p><p><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Full Output</span></span>, <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Parsed Output</span></span>,
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Errors and Warnings</span></span> or <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Only Errors</span></span>
</p><p>Each line contains a message and the file name and line number if available.
Clicking on the error or warning takes you to the appropriate file and places
the cursor on the corresponding line number.</p><p>To navigate to the previous error, press
<span class="keycap"><strong>Alt</strong></span>+<span class="keycap"><strong>Shift</strong></span>+<span class="keysym">Left</span>.
To navigate to the next error, press
<span class="keycap"><strong>Alt</strong></span>+<span class="keycap"><strong>Shift</strong></span>+<span class="keysym">Right</span>.</p></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="build-menu"></a>Menu Structure</h3></div></div></div><div class="variablelist"><a name="build-build"></a><dl class="variablelist"><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Build</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Select Target</span></span></span></dt><dd><p>Select from a list of targets configured by the user.</p></dd><dt><a name="build-default"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Build</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Build Default Target</span></span></span></dt><dd><p>Builds the target defined as default in the active target set.</p></dd><dt><a name="build-previous"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Build</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Build Previous Target</span></span></span></dt><dd><p>Switch to the previous target configured by the user.</p></dd><dt><a name="build-stop"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Build</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Stop</span></span></span></dt><dd><p>Stop building a target.</p></dd><dt><a name="build-previous-error"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Build</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Previous Error</span></span> (<span class="shortcut"><strong><span class="keycap"><strong>Ctrl</strong></span>+<span class="keycap"><strong>Alt</strong></span>+<span class="keysym">Left</span></strong></span>)</span></dt><dd><p>Moves the cursor to the location of the previous error in the
document.</p></dd><dt><a name="build-next-error"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Build</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Next Error</span></span> (<span class="shortcut"><strong><span class="keycap"><strong>Ctrl</strong></span>+<span class="keycap"><strong>Alt</strong></span>+<span class="keysym">Right</span></strong></span>)</span></dt><dd><p>Moves the cursor to the location of the next error in the
document.</p></dd></dl></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="build-ack"></a>Thanks and Acknowledgments</h3></div></div></div><p>The <span class="application">Kate</span> Build Plugin was written by Kåre Särs.</p><p>Special thanks to Google Code-In 2011 participant Salma Sultana for
writing much of this section.</p></div></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="kate-application-plugin-backtracebrowser.html">Prev</a></td><td class="upCell"><a accesskey="h" href="index.html">Contents</a></td><td class="nextCell"><a accesskey="n" href="kate-application-plugin-closeexceptlike.html">Next</a></td></tr><tr><td class="prevCell">Backtrace Browser Plugin </td><td class="upCell">Working with Plugins</td><td class="nextCell"> Close Except/Like Plugin</td></tr></table></div><div id="footer_text">Would you like to make a comment or contribute an update to this page?<br>Send feedback to the <a href="mailto:kde-doc-english@kde.org" class="footer_email">KDE Docs Team</a></div></div></div></body></html></FILENAME><FILENAME filename="kate-application-plugin-closeexceptlike.html"><html><head><title>Close Except/Like Plugin</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, kdebase, Kate, text, editor, programmer, programming, projects, MDI, Multi, Document, Interface, terminal, console"><link rel="home" href="index.html" title="The Kate Handbook"><link rel="up" href="plugins.html" title="Chapter 4. Working with Plugins"><link rel="prev" href="kate-application-plugin-build.html" title="Build Plugin"><link rel="next" href="kate-application-plugin-colorpicker.html" title="Color Picker Plugin"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> Close Except/Like Plugin</div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="kate-application-plugin-build.html">Prev</a></td><td class="upCell">Working with Plugins</td><td class="nextCell"><a accesskey="n" href="kate-application-plugin-colorpicker.html">Next</a></td></tr></table></div><div id="contentBody"><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="kate-application-plugin-closeexceptlike"></a>Close Except/Like Plugin</h2></div></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="closeexceptlike-intro"></a>Introduction</h3></div></div></div><p>This plugin allows you to close a group of documents based on their extension and path.</p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="closeexceptlike-using"></a>Using the Close Except/Like Plugin</h3></div></div></div><p>Assumed you have these documents opened in <span class="application">Kate</span>:</p><table border="0" summary="Simple list" class="simplelist"><tr><td>/tmp/subfolder/test.h</td></tr><tr><td>/tmp/test.cpp</td></tr><tr><td>/tmp/test.txt</td></tr></table><p>Then you have the following options to close documents as displayed in the screenshot:</p><div class="screenshot"><a name="screenshot-closeexceptlike"></a><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="close-except-like.png"></div></div><p>Use the checkbox in the last item of the list to enable or disable a confirmation dialog.
The selected option will be applied to both close actions.
</p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="closeexceptlike-menu"></a>Menu Structure</h3></div></div></div><div class="variablelist"><dl class="variablelist"><dt><a name="file-close-except"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">File</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Close Except</span></span></span></dt><dd><p><span class="action">Close</span> all open documents, <span class="emphasis"><em>except</em></span>
those which match the path or file extension selected from the submenu.</p></dd><dt><a name="file-close-like"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">File</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Close Like</span></span></span></dt><dd><p><span class="action">Close</span> all open documents
which match the path or file extension selected from the submenu.</p></dd></dl></div></div></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="kate-application-plugin-build.html">Prev</a></td><td class="upCell"><a accesskey="h" href="index.html">Contents</a></td><td class="nextCell"><a accesskey="n" href="kate-application-plugin-colorpicker.html">Next</a></td></tr><tr><td class="prevCell">Build Plugin </td><td class="upCell">Working with Plugins</td><td class="nextCell"> Color Picker Plugin</td></tr></table></div><div id="footer_text">Would you like to make a comment or contribute an update to this page?<br>Send feedback to the <a href="mailto:kde-doc-english@kde.org" class="footer_email">KDE Docs Team</a></div></div></div></body></html></FILENAME><FILENAME filename="kate-application-plugin-colorpicker.html"><html><head><title>Color Picker Plugin</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, kdebase, Kate, text, editor, programmer, programming, projects, MDI, Multi, Document, Interface, terminal, console"><link rel="home" href="index.html" title="The Kate Handbook"><link rel="up" href="plugins.html" title="Chapter 4. Working with Plugins"><link rel="prev" href="kate-application-plugin-closeexceptlike.html" title="Close Except/Like Plugin"><link rel="next" href="kate-application-plugin-colored-brackets.html" title="Colored Brackets"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> Color Picker Plugin</div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="kate-application-plugin-closeexceptlike.html">Prev</a></td><td class="upCell">Working with Plugins</td><td class="nextCell"><a accesskey="n" href="kate-application-plugin-colored-brackets.html">Next</a></td></tr></table></div><div id="contentBody"><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="kate-application-plugin-colorpicker"></a>Color Picker Plugin</h2></div></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="colorpicker-intro"></a>Introduction</h3></div></div></div><p>This plugin adds an inline color preview/picker to colors in the text (<abbr class="abbrev">e.g.</abbr>, <code class="literal">#FFFFFF</code>,
<code class="literal">white</code>).</p><p>To load this plugin open <span class="application">Kate</span>'s configuration dialog under <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Settings</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Configure <span class="application">Kate</span>...</span></span>.
Then select <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Color Picker</span></span> and close the dialog.
</p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="colorpicker-config"></a>Configuration</h3></div></div></div><p>On the Color Picker settings page in <span class="application">Kate</span>'s configuration, you can configure the following options of the plugin behavior.</p><div class="variablelist"><dl class="variablelist"><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Show preview for known color names</span></span></span></dt><dd><p>Whether to show the color picker for known color names (<abbr class="abbrev">e.g.</abbr>, <code class="literal">skyblue</code>). See <a class="ulink" href="https://www.w3.org/TR/SVG11/types.html#ColorKeywords" target="_top">this page</a> for the list of colors.</p></dd><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Place preview after text color</span></span></span></dt><dd><p>Whether to place the inline preview after text color in the text.</p></dd><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Hex color matching</span></span></span></dt><dd><p>Here, you can choose the best matching option for the colors used in your code.</p></dd></dl></div></div></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="kate-application-plugin-closeexceptlike.html">Prev</a></td><td class="upCell"><a accesskey="h" href="index.html">Contents</a></td><td class="nextCell"><a accesskey="n" href="kate-application-plugin-colored-brackets.html">Next</a></td></tr><tr><td class="prevCell">Close Except/Like Plugin </td><td class="upCell">Working with Plugins</td><td class="nextCell"> Colored Brackets</td></tr></table></div><div id="footer_text">Would you like to make a comment or contribute an update to this page?<br>Send feedback to the <a href="mailto:kde-doc-english@kde.org" class="footer_email">KDE Docs Team</a></div></div></div></body></html></FILENAME><FILENAME filename="kate-application-plugin-colored-brackets.html"><html><head><title>Colored Brackets</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, kdebase, Kate, text, editor, programmer, programming, projects, MDI, Multi, Document, Interface, terminal, console"><link rel="home" href="index.html" title="The Kate Handbook"><link rel="up" href="plugins.html" title="Chapter 4. Working with Plugins"><link rel="prev" href="kate-application-plugin-colorpicker.html" title="Color Picker Plugin"><link rel="next" href="kate-application-plugin-ctags.html" title="CTags Plugin"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> Colored Brackets</div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="kate-application-plugin-colorpicker.html">Prev</a></td><td class="upCell">Working with Plugins</td><td class="nextCell"><a accesskey="n" href="kate-application-plugin-ctags.html">Next</a></td></tr></table></div><div id="contentBody"><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="kate-application-plugin-colored-brackets"></a>Colored Brackets</h2></div></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="idm1466"></a>Introduction</h3></div></div></div><p>
Colored brackets plugin colors matching bracket pairs in different colors to enhance readability. However, not all brackets get colored. A bracket whose matching opener or closer is not visible will be ignored. Similarly, a bracket pair that is the sole bracket pair on a line will not get colored.
</p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="idm1469"></a>Configuration</h3></div></div></div><p>The plugin doesn't provide any configurations.</p></div></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="kate-application-plugin-colorpicker.html">Prev</a></td><td class="upCell"><a accesskey="h" href="index.html">Contents</a></td><td class="nextCell"><a accesskey="n" href="kate-application-plugin-ctags.html">Next</a></td></tr><tr><td class="prevCell">Color Picker Plugin </td><td class="upCell">Working with Plugins</td><td class="nextCell"> CTags Plugin</td></tr></table></div><div id="footer_text">Would you like to make a comment or contribute an update to this page?<br>Send feedback to the <a href="mailto:kde-doc-english@kde.org" class="footer_email">KDE Docs Team</a></div></div></div></body></html></FILENAME><FILENAME filename="kate-application-plugin-ctags.html"><html><head><title>CTags Plugin</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, kdebase, Kate, text, editor, programmer, programming, projects, MDI, Multi, Document, Interface, terminal, console"><link rel="home" href="index.html" title="The Kate Handbook"><link rel="up" href="plugins.html" title="Chapter 4. Working with Plugins"><link rel="prev" href="kate-application-plugin-colored-brackets.html" title="Colored Brackets"><link rel="next" href="kate-application-plugin-preview.html" title="Document Preview Plugin"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> CTags Plugin</div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="kate-application-plugin-colored-brackets.html">Prev</a></td><td class="upCell">Working with Plugins</td><td class="nextCell"><a accesskey="n" href="kate-application-plugin-preview.html">Next</a></td></tr></table></div><div id="contentBody"><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="kate-application-plugin-ctags"></a>CTags Plugin</h2></div></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="ctags-intro"></a>Introduction</h3></div></div></div><p><a class="ulink" href="https://en.wikipedia.org/wiki/Ctags" target="_top">CTags</a> generates an
index (or tag) file of language objects found in source files that allows these
items to be quickly and easily located using this plugin in <span class="application">Kate</span>.
</p><p>A tag signifies a language object for which an index entry is available
(or, alternatively, the index entry created for that object).</p><p>Tag generation is supported for these
<a class="ulink" href="http://ctags.sourceforge.net/languages.html" target="_top">programming languages</a>.
</p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="ctags-config"></a>Configuration</h3></div></div></div><p>The CTags plugin uses two different database files for the index.</p><p>On the CTags settings page in <span class="application">Kate</span>'s configuration you can add or remove
directories containing the source code and regenerate the common CTags database.</p><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="ctags-config-common"></a>Common Index</h4></div></div></div><div class="screenshot"><a name="screenshot-ctags-global-settings"></a><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="ctags-global-setting.png"><div class="caption">Configure CTags Global Database</div></div></div><p>At the bottom of the settings page you can adapt the <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">CTags command</span></span>.
</p><p>For more information about all available options please read the CTags man page. This man page
is available in <span class="application">KHelpCenter</span> and you can also enter the <acronym class="acronym">URL</acronym> <span class="emphasis"><em>man:/ctags</em></span>
directly into <span class="application">Konqueror</span>
</p><p>Clicking <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guibutton">Update</span></span> will start indexing.
When indexing is finished, close the dialog.</p></div><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="ctags-config-session"></a>Session Index</h4></div></div></div><p>To configure the session index open the <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">CTags</span></span> view.</p><div class="variablelist"><dl class="variablelist"><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Index Targets</span></span></span></dt><dd><p>On this tab you can add or remove directories containing the source code and manually
regenerate the session specific CTags database.</p></dd><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Database</span></span></span></dt><dd><div class="screenshot"><a name="screenshot-ctags-session-settings"></a><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="ctags-session-setting.png"><div class="caption">Configure CTags Session Database</div></div></div><p>Select another CTags database file, configure the CTags command or revert
to the default command.</p></dd></dl></div></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="ctags-using"></a>Using the CTags Plugin</h3></div></div></div><p>
You place the mouse cursor on the language object like function, symbol <abbr class="abbrev">etc.</abbr>
that you are interested in and then select one of the actions in the
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">CTags</span></span> menu to jump to the line and file where the object is
defined or declared.</p><p>By default the actions in the <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">CTags</span></span> menu have no shortcuts assigned.
Use the <a class="ulink" href="help:/fundamentals/shortcuts.html" target="_top">keyboard shortcut editor</a>
to configure your own shortcuts.</p><p>Alternatively use the search field on the <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Lookup</span></span> tab of the
CTags view.</p><p>Entering characters into the search field will start the search and display matching names
of language objects like functions, classes, symbols <abbr class="abbrev">etc.</abbr> together with type and filename.</p><p>Select an item in the list to jump to the corresponding line in the source file.</p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="ctags-menu"></a>Menu Structure</h3></div></div></div><div class="variablelist"><dl class="variablelist"><dt><a name="ctags-jumpback"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">CTags</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Jump back one step</span></span></span></dt><dd><p>Navigate back in the history to the last visited tag.</p></dd><dt><a name="ctags-lookup"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">CTags</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Lookup Current Text</span></span></span></dt><dd><p>Opens the <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Lookup</span></span> tab of the CTags view and displays all
language objects matching the current text selection in the list.</p></dd><dt><a name="ctags-gotodeclaration"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">CTags</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Go to Declaration</span></span></span></dt><dd><p>If the cursor is in a definition object this will open the document
containing the corresponding declaration if needed, activate its view and
place the cursor at the start of the declaration.</p></dd><dt><a name="ctags-gotodefinition"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">CTags</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Go to Definition</span></span></span></dt><dd><p>If the cursor is in a declaration object this will open the document
containing the corresponding definition if needed, activate its view and
place the cursor at the start of the definition.</p></dd></dl></div></div></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="kate-application-plugin-colored-brackets.html">Prev</a></td><td class="upCell"><a accesskey="h" href="index.html">Contents</a></td><td class="nextCell"><a accesskey="n" href="kate-application-plugin-preview.html">Next</a></td></tr><tr><td class="prevCell">Colored Brackets </td><td class="upCell">Working with Plugins</td><td class="nextCell"> Document Preview Plugin</td></tr></table></div><div id="footer_text">Would you like to make a comment or contribute an update to this page?<br>Send feedback to the <a href="mailto:kde-doc-english@kde.org" class="footer_email">KDE Docs Team</a></div></div></div></body></html></FILENAME><FILENAME filename="kate-application-plugin-preview.html"><html><head><title>Document Preview Plugin</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, kdebase, Kate, text, editor, programmer, programming, projects, MDI, Multi, Document, Interface, terminal, console"><link rel="home" href="index.html" title="The Kate Handbook"><link rel="up" href="plugins.html" title="Chapter 4. Working with Plugins"><link rel="prev" href="kate-application-plugin-ctags.html" title="CTags Plugin"><link rel="next" href="kate-application-plugin-documentswitcher.html" title="Document Switcher Plugin"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> Document Preview Plugin</div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="kate-application-plugin-ctags.html">Prev</a></td><td class="upCell">Working with Plugins</td><td class="nextCell"><a accesskey="n" href="kate-application-plugin-documentswitcher.html">Next</a></td></tr></table></div><div id="contentBody"><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="kate-application-plugin-preview"></a>Document Preview Plugin</h2></div></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="preview-introduction"></a>Introduction</h3></div></div></div><p>
The plugin enables a live preview of the currently edited text document in the
final format in the sidebar. So when editing <abbr class="abbrev">e.g.</abbr> a <acronym class="acronym">Markdown</acronym> text or an <acronym class="acronym">SVG</acronym> image,
the result is instantly visible next to the source text.
</p><p>For the display the plugin uses that <acronym class="acronym">KParts</acronym> plugin which is currently selected
as the preferred one for the <acronym class="acronym">MIME</acronym> type of the document.
If there is no <acronym class="acronym">KParts</acronym> plugin for that type, no preview is possible.
</p><p>To change the preferred plugin open the <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">File Associations</span></span>
module in the <span class="application">System Settings</span> and edit the <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Services Preference Order</span></span>
on the <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Embedding</span></span> tab.
</p><div class="table"><a name="idm1589"></a><p class="title"><b>Table 4.1. Some available <acronym class="acronym">KParts</acronym> plugins</b></p><div class="table-contents"><table class="table" summary="Some available KParts plugins" border="1"><colgroup><col><col></colgroup><tbody><tr><td><acronym class="acronym">MIME</acronym> type</td><td><acronym class="acronym">KParts</acronym> plugin</td></tr><tr><td><acronym class="acronym">Markdown</acronym> text</td><td>KMarkdownWebViewPart or OkularPart</td></tr><tr><td><acronym class="acronym">SVG</acronym> image</td><td>SVGPart</td></tr><tr><td><span class="trademark">Qt</span>™ UI files</td><td>KUIViewerPart</td></tr><tr><td><acronym class="acronym">DOT</acronym> graph files</td><td>KGraphviewerPart</td></tr></tbody></table></div></div><br class="table-break"></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="preview-menu"></a>Menu Structure</h3></div></div></div><div class="variablelist"><dl class="variablelist"><dt><a name="view-toolviews-show-preview"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">View</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Tool Views</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Show Preview</span></span></span></dt><dd><p>Toggle the display of <span class="application">Kate</span>'s Document preview in a sidebar.</p></dd></dl></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="preview-interface"></a>Interface</h3></div></div></div><p>The buttons at the top of the preview window provide these actions:
</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>Lock the preview to a given document. Selecting this option ensures
that if switching the focus to the view of another document in the same <span class="application">Kate</span>
window, the preview will not follow to that document, but keep previewing
this document.</p></li><li class="listitem"><p>Enable or disable updates of the preview of the current document content</p></li><li class="listitem"><p>Manually update the preview of the current document content</p></li><li class="listitem"><p>A dropdown menu with actions from the <acronym class="acronym">KParts</acronym> plugin</p></li></ul></div></div></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="kate-application-plugin-ctags.html">Prev</a></td><td class="upCell"><a accesskey="h" href="index.html">Contents</a></td><td class="nextCell"><a accesskey="n" href="kate-application-plugin-documentswitcher.html">Next</a></td></tr><tr><td class="prevCell">CTags Plugin </td><td class="upCell">Working with Plugins</td><td class="nextCell"> Document Switcher Plugin</td></tr></table></div><div id="footer_text">Would you like to make a comment or contribute an update to this page?<br>Send feedback to the <a href="mailto:kde-doc-english@kde.org" class="footer_email">KDE Docs Team</a></div></div></div></body></html></FILENAME><FILENAME filename="kate-application-plugin-documentswitcher.html"><html><head><title>Document Switcher Plugin</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, kdebase, Kate, text, editor, programmer, programming, projects, MDI, Multi, Document, Interface, terminal, console"><link rel="home" href="index.html" title="The Kate Handbook"><link rel="up" href="plugins.html" title="Chapter 4. Working with Plugins"><link rel="prev" href="kate-application-plugin-preview.html" title="Document Preview Plugin"><link rel="next" href="kate-application-plugin-fsbrowser.html" title="File System Browser"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> Document Switcher Plugin</div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="kate-application-plugin-preview.html">Prev</a></td><td class="upCell">Working with Plugins</td><td class="nextCell"><a accesskey="n" href="kate-application-plugin-fsbrowser.html">Next</a></td></tr></table></div><div id="contentBody"><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="kate-application-plugin-documentswitcher"></a>Document Switcher Plugin</h2></div></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="documentswitcher-menu"></a>Menu Structure</h3></div></div></div><div class="variablelist"><dl class="variablelist"><dt><a name="view-documentswitcher"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">View</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Last Used Views</span></span> (<span class="shortcut"><strong><span class="keycap"><strong>Ctrl</strong></span>+<span class="keycap"><strong>Tab</strong></span></strong></span>), </span><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">View</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Last Used Views (Reverse)</span></span> (<span class="shortcut"><strong><span class="keycap"><strong>Ctrl</strong></span>+<span class="keycap"><strong>Shift</strong></span>+<span class="keycap"><strong>Tab</strong></span></strong></span>)</span></dt><dd><p><span class="action">Opens</span> a list with the last viewed documents:</p><div class="screenshot"><a name="screenshot-documentswitcher"></a><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="documentswitcher.png"></div></div><p>Keep the <span class="keycap"><strong>Ctrl</strong></span> key pressed and use the <span class="keycap"><strong>Tab</strong></span> key to cycle forward through the list.
Additionally press the <span class="keycap"><strong>Shift</strong></span> key to reverse the direction.
</p><p>Keep the shortcut <span class="keycap"><strong>Ctrl</strong></span>+<span class="keycap"><strong>Tab</strong></span> pressed and
can use the <span class="keysym">Up</span>, <span class="keysym">Down</span>, <span class="keycap"><strong>Home</strong></span> or
<span class="keycap"><strong>End</strong></span> keys to navigate in the list. Pressing a char key consecutively
will cycle through all items with the first matching in the list.
If you release the shortcut keys the view will switch to the selected document in the list.
</p></dd></dl></div></div></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="kate-application-plugin-preview.html">Prev</a></td><td class="upCell"><a accesskey="h" href="index.html">Contents</a></td><td class="nextCell"><a accesskey="n" href="kate-application-plugin-fsbrowser.html">Next</a></td></tr><tr><td class="prevCell">Document Preview Plugin </td><td class="upCell">Working with Plugins</td><td class="nextCell"> File System Browser</td></tr></table></div><div id="footer_text">Would you like to make a comment or contribute an update to this page?<br>Send feedback to the <a href="mailto:kde-doc-english@kde.org" class="footer_email">KDE Docs Team</a></div></div></div></body></html></FILENAME><FILENAME filename="kate-application-plugin-fsbrowser.html"><html><head><title>File System Browser</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, kdebase, Kate, text, editor, programmer, programming, projects, MDI, Multi, Document, Interface, terminal, console"><link rel="home" href="index.html" title="The Kate Handbook"><link rel="up" href="plugins.html" title="Chapter 4. Working with Plugins"><link rel="prev" href="kate-application-plugin-documentswitcher.html" title="Document Switcher Plugin"><link rel="next" href="kate-application-plugin-documents.html" title="The Documents List"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> File System Browser</div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="kate-application-plugin-documentswitcher.html">Prev</a></td><td class="upCell">Working with Plugins</td><td class="nextCell"><a accesskey="n" href="kate-application-plugin-documents.html">Next</a></td></tr></table></div><div id="contentBody"><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="kate-application-plugin-fsbrowser"></a>File System Browser</h2></div></div></div><p>The File System Browser is a folder viewer, allowing you to open
files from a displayed folder in the current frame.</p><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="fsbrowser-menu"></a>Menu Structure</h3></div></div></div><div class="variablelist"><dl class="variablelist"><dt><a name="view-toolviews-show-filebrowser"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">View</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Tool Views</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Show Filesystem Browser</span></span></span></dt><dd><p>Toggle the display of <span class="application">Kate</span>'s Filesystem Browser.</p></dd></dl></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="fsbrowser-interface"></a>Interface</h3></div></div></div><p>From the top down, the Filesystem Browser consists of the following
elements:</p><div class="variablelist"><dl class="variablelist"><dt><span class="term">A Toolbar</span></dt><dd><p>This contains standard navigations tool buttons:</p><div class="variablelist"><dl class="variablelist"><dt><span class="term"><span class="guiicon"><span class="inlinemediaobject"><img src="go-previous-22.png"></span> Back</span></span></dt><dd><p>Causes the folder view to <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="command"><span class="command"><strong>cd</strong></span></span> to the previously displayed folder in the history.
This button is disabled, if there is no previous item.</p></dd><dt><span class="term"><span class="guiicon"><span class="inlinemediaobject"><img src="go-next-22.png"></span> Forward</span></span></dt><dd><p>Causes the folder view to <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="command"><span class="command"><strong>cd</strong></span></span> to the next folder in the history.
This button is disabled, if there is no next folder.</p></dd><dt><span class="term"><span class="guiicon"><span class="inlinemediaobject"><img src="bookmarks-22.png"></span> Bookmarks</span></span></dt><dd><p>Opens a submenu to edit or add bookmarks and to add a new bookmark folder.</p></dd><dt><span class="term"><span class="guiicon"><span class="inlinemediaobject"><img src="system-switch-user-22.png"></span> Current Document Folder</span></span></dt><dd><p>This button will cause the folder view to
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="command"><span class="command"><strong>cd</strong></span></span> to the folder of the currently active
document if possible. This button is disabled, if the active document
is a new, unsaved file, or the folder in which it resides can not
be decided.</p></dd><dt><span class="term"><span class="guiicon"><span class="inlinemediaobject"><img src="games-config-options-22.png"></span> Options</span></span></dt><dd><div class="variablelist"><dl class="variablelist"><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Short View</span></span></span></dt><dd><p>Displays only the filenames.</p></dd><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Detailed View</span></span></span></dt><dd><p>Displays <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Name</span></span>, <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Date</span></span> and
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Size</span></span> of the files.</p></dd><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Tree View</span></span></span></dt><dd><p>Like Short View, but folders can be expanded to view their contents.</p></dd><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Detailed Tree View</span></span></span></dt><dd><p>This also allows folders to be expanded, but displays the additional columns
available in Detailed View.</p></dd><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Show Hidden Files</span></span></span></dt><dd><p>Displays files normally hidden by your operating system.</p></dd><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Automatically synchronize with current document</span></span></span></dt><dd><p>When this option is enabled the filesystem browser will automatically <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="command"><span class="command"><strong>cd</strong></span></span>
to the folder of the document currently open in the editing area every time it changes.</p></dd></dl></div></dd></dl></div></dd><dt><span class="term">A Location Entry</span></dt><dd><p>This displays a breadcrumb navigation to the currently open folder, similarly to
<span class="application">Dolphin</span>.  You can click on a any folder to browse to it, or click on one of the
arrows to the left of a folder to select any folders beneath it.  You may also
select from your list of Places by clicking the leftmost icon in the breadcrumb
navigation, which displays an icon that represents your current Place.</p><p>You can also click to the right of the breadcrumbs to change them to a text box
where you can type the path of a folder to browse. The <acronym class="acronym">URL</acronym>
entry maintains a list of previously typed paths. To choose one, use
the arrow button to the right of the entry.</p><div class="tip" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title">Tip</h3><p>The <acronym class="acronym">URL</acronym> entry has folder auto-completion. The completion
method can be set using the <span class="mousebutton">right</span> mouse button menu of the text
entry.</p></div></dd><dt><span class="term">A Folder View</span></dt><dd><p>This is a standard <span class="orgname">KDE</span> folder view.</p></dd><dt><span class="term">A Filter Entry</span></dt><dd><p>The Filter entry allows you to enter a filter for the files
displayed in the folder view. The filter uses standard globs; patterns
must be separated by white space. Example: <strong class="userinput"><code>*.cpp *.h
*.moc</code></strong></p><p>To display all files, enter a single asterisk
<strong class="userinput"><code>*</code></strong>.</p><p>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.  You can disable the filter by pressing
the <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guibutton">Clear text</span></span> button to the left of the autocompletion
arrow button.</p></dd></dl></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="fsbrowser-config"></a>Configuration</h3></div></div></div><p>This plugin can be configured on the <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Filesystem Browser</span></span> page
of <a class="link" href="configuring-kate-configdialog.html" title="The Main Configuration Dialog"><span class="application">Kate</span>'s configuration</a>.</p><div class="variablelist"><dl class="variablelist"><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Toolbar</span></span></span></dt><dd><p>Configure the buttons on the Filesystem Browser toolbar
by moving the ones you want enabled to the <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Selected Actions</span></span>
list, and order them using the arrow buttons at the side of the list.</p></dd></dl></div></div></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="kate-application-plugin-documentswitcher.html">Prev</a></td><td class="upCell"><a accesskey="h" href="index.html">Contents</a></td><td class="nextCell"><a accesskey="n" href="kate-application-plugin-documents.html">Next</a></td></tr><tr><td class="prevCell">Document Switcher Plugin </td><td class="upCell">Working with Plugins</td><td class="nextCell"> The Documents List</td></tr></table></div><div id="footer_text">Would you like to make a comment or contribute an update to this page?<br>Send feedback to the <a href="mailto:kde-doc-english@kde.org" class="footer_email">KDE Docs Team</a></div></div></div></body></html></FILENAME><FILENAME filename="kate-application-plugin-documents.html"><html><head><title>The Documents List</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, kdebase, Kate, text, editor, programmer, programming, projects, MDI, Multi, Document, Interface, terminal, console"><link rel="home" href="index.html" title="The Kate Handbook"><link rel="up" href="plugins.html" title="Chapter 4. Working with Plugins"><link rel="prev" href="kate-application-plugin-fsbrowser.html" title="File System Browser"><link rel="next" href="kate-application-plugin-gdb.html" title="GDB Plugin"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> The Documents List</div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="kate-application-plugin-fsbrowser.html">Prev</a></td><td class="upCell">Working with Plugins</td><td class="nextCell"><a accesskey="n" href="kate-application-plugin-gdb.html">Next</a></td></tr></table></div><div id="contentBody"><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="kate-application-plugin-documents"></a>The Documents List</h2></div></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="documents-intro"></a>Introduction</h3></div></div></div><p><a class="indexterm" name="idm1828"></a>
The documents list displays a list of all documents currently open in
<span class="application">Kate</span>. Modified files will have a small <span class="guiicon">floppy
disk</span> icon on their left to indicate that state.</p><p>On the top the Documents list has a toolbar with the following buttons:</p><table border="0" summary="Simple list" class="simplelist"><tr><td>
<span class="guiicon"><span class="inlinemediaobject"><img src="document-new-22.png"></span></span>
Create new document</td></tr><tr><td>
<span class="guiicon"><span class="inlinemediaobject"><img src="document-open-22.png"></span></span>
Open an existing document</td></tr><tr><td>
<span class="guiicon"><span class="inlinemediaobject"><img src="go-up-22.png"></span></span>
Previous Document</td></tr><tr><td>
<span class="guiicon"><span class="inlinemediaobject"><img src="go-down-22.png"></span></span>
Next Document</td></tr><tr><td>
<span class="guiicon"><span class="inlinemediaobject"><img src="document-save-22.png"></span></span>
Save the current document</td></tr><tr><td>
<span class="guiicon"><span class="inlinemediaobject"><img src="document-save-as-22.png"></span></span>
Save the current document under a new name</td></tr></table><p>By default, the Documents list appears in
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Tree Mode</span></span>, which displays the folder structure
surrounding all currently open documents. Also available is
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">List Mode</span></span>, which displays a simple list of all
open documents. You can switch modes by right-clicking on the list and selecting
from the <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">View Mode</span></span> menu.</p><p>If two or more files with the same name (located in different
folders) are open in <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">List Mode</span></span>, the names of the second will be prepended
<span class="quote">“<span class="quote">(2)</span>”</span> and so on. The tool-tip for the file will
display its full name including the path, allowing you to choose the
desired one.</p><p>To display a document in the currently
active frame, click the document name in the list.</p><p>The context menu has some common actions from the <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">File</span></span> menu.</p><p>Additionally there are filemanager actions to rename or delete the file. With
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Copy Location</span></span> you can copy the full path of the document
to the clipboard.</p><p>You can sort the list in a few different ways by right clicking the
list and selecting from the <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Sort By</span></span> menu.

The options are:
</p><div class="variablelist"><dl class="variablelist"><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Document Name</span></span></span></dt><dd><p>Lists the documents alphabetically by their name.</p></dd><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Document Path</span></span></span></dt><dd><p>Lists the documents alphabetically by the path to them.</p></dd><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Opening Order</span></span></span></dt><dd><p>Lists the documents in the order of opening.</p></dd></dl></div><p>

</p><p>The document list will per default visualize your history by shading the
entries for the most recent documents with a background color. If the document
was edited, an extra color is blended in. The most recent document has the
strongest color, so that you can easily find the documents you are working on.
This feature can be disabled in the
<a class="link" href="kate-application-plugin-documents.html#config-dialog-documents" title="Configuration">Documents</a> page
of the configuration dialog.</p><p>The default location of the document list in the <span class="application">Kate</span> window is to the left of the
editing area.</p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="documents-menus"></a>Menu Structure</h3></div></div></div><div class="variablelist"><dl class="variablelist"><dt><a name="view-document-previous"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">View</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Previous Document</span></span> (<span class="shortcut"><strong><span class="keycap"><strong>Alt</strong></span>+<span class="keysym">Up</span></strong></span>)</span></dt><dd><p>Opens the document displayed above the currently open document in the Documents list.</p></dd><dt><a name="view-document-next"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">View</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Next Document</span></span> (<span class="shortcut"><strong><span class="keycap"><strong>Alt</strong></span>+<span class="keysym">Down</span></strong></span>)</span></dt><dd><p>Opens the document displayed below the currently open document in the Documents list.</p></dd><dt><a name="view-active"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">View</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Show Active</span></span></span></dt><dd><p>Displays the currently open document in the Documents list.</p></dd></dl></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="config-dialog-documents"></a>Configuration</h3></div></div></div><div class="variablelist"><dl class="variablelist"><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Background Shading</span></span></span></dt><dd><p>This section allows you to enable or disable the background
shading visualization of your recent activity, and choose which colors to use if
enabled.</p></dd><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Sort By</span></span></span></dt><dd><p>Set how you want the document list sorted. This can be set
from the <span class="mousebutton">right</span> mouse button menu in the document list as well.</p></dd><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">View Mode</span></span></span></dt><dd><p>This provides two options that effect the display of the
Documents tool view.  The <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Tree View</span></span> option will display
the documents in a tree underneath the folders they are in, while the
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">List View</span></span> option will display a flat list of documents.
</p></dd><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Show Full Path</span></span></span></dt><dd><p>When Tree View and this option are enabled, the folder entries
displayed in the Documents tool view will display the full filesystem path to
the folder in addition to the name of the folder.  It has no effect in List
View.</p></dd><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Show Toolbar</span></span></span></dt><dd><p>When Tree View and this option are enabled, a toolbar with
actions like <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guibutton">Save</span></span> is displayed above the
list of documents. Uncheck this option if the toolbar should be
hidden.</p></dd><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Show Close Button</span></span></span></dt><dd><p>When this option is enabled, <span class="application">Kate</span> will show a close button
for opened documents on hover.</p></dd></dl></div></div></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="kate-application-plugin-fsbrowser.html">Prev</a></td><td class="upCell"><a accesskey="h" href="index.html">Contents</a></td><td class="nextCell"><a accesskey="n" href="kate-application-plugin-gdb.html">Next</a></td></tr><tr><td class="prevCell">File System Browser </td><td class="upCell">Working with Plugins</td><td class="nextCell"> <acronym class="acronym">GDB</acronym> Plugin</td></tr></table></div><div id="footer_text">Would you like to make a comment or contribute an update to this page?<br>Send feedback to the <a href="mailto:kde-doc-english@kde.org" class="footer_email">KDE Docs Team</a></div></div></div></body></html></FILENAME><FILENAME filename="kate-application-plugin-gdb.html"><html><head><title>GDB Plugin</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, kdebase, Kate, text, editor, programmer, programming, projects, MDI, Multi, Document, Interface, terminal, console"><link rel="home" href="index.html" title="The Kate Handbook"><link rel="up" href="plugins.html" title="Chapter 4. Working with Plugins"><link rel="prev" href="kate-application-plugin-documents.html" title="The Documents List"><link rel="next" href="kate-application-plugin-projects.html" title="Project Plugin"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> <acronym class="acronym">GDB</acronym> Plugin</div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="kate-application-plugin-documents.html">Prev</a></td><td class="upCell">Working with Plugins</td><td class="nextCell"><a accesskey="n" href="kate-application-plugin-projects.html">Next</a></td></tr></table></div><div id="contentBody"><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="kate-application-plugin-gdb"></a><acronym class="acronym">GDB</acronym> Plugin</h2></div><div><div class="authorgroup"><p class="author"><span class="firstname">Martin</span> <span class="surname">Gergov</span> </p><p class="author"><span class="firstname">T.C.</span> <span class="surname">Hollingsworth</span> <code class="email">&lt;tchollingsworth@gmail.com&gt;</code></p></div></div></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="gdb-intro"></a>Introduction</h3></div></div></div><p><span class="application">Kate</span>'s <acronym class="acronym">GDB</acronym> plugin provides a simple frontend to the popular <acronym class="acronym">GNU</acronym>
Project Debugger.</p><div class="important" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title">Important</h3><p>Previous experience with <acronym class="acronym">GDB</acronym> is strongly recommended.  For more
information on using <acronym class="acronym">GDB</acronym>, visit <a class="ulink" href="https://www.gnu.org/software/gdb/" target="_top">the
<acronym class="acronym">GDB</acronym> website</a>.</p></div><p>You can enable the <acronym class="acronym">GDB</acronym> plugin in
<a class="link" href="config-dialog.html#config-dialog-plugins" title="Plugins">the Plugins section of <span class="application">Kate</span>'s
configuration</a>.</p><p>For the plugin to work properly, you must have a source file (of any type
supported by <acronym class="acronym">GDB</acronym>) and an executable.</p><div class="tip" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title">Tip</h3><p>If you compile using <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="command"><span class="command"><strong>gcc</strong></span></span>/<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="command"><span class="command"><strong>g++</strong></span></span> you might want to use
the <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="command"><span class="command"><strong><span class="parameter"><em class="parameter"><code>-ggdb</code></em></span></strong></span></span> command line argument.
</p></div><p>After these preparations are made, open the source file in <span class="application">Kate</span>,
enter the path to the executable in the <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Settings</span></span> tab of the
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Debug View</span></span> tool view, and select
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Debug</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Start Debugging</span></span>
from the menu to get started.</p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="gdb-menus"></a>Menu and Toolbar Structure</h3></div></div></div><p>All of these options are available in <span class="application">Kate</span>'s menus, and many are
available on the Debug toolbar as well.</p><div class="variablelist"><dl class="variablelist"><dt><a name="gdb-menus-show-debug-view"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">View</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Tool View</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Show Debug View</span></span></span></dt><dd><p>Shows a tool view containing <acronym class="acronym">GDB</acronym> output, the <acronym class="acronym">GDB</acronym> command
line used, and other settings.</p></dd><dt><a name="gdb-menus-show-locals-and-stack"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">View</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Tool View</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Show Locals and Stack</span></span></span></dt><dd><p>Shows a list of all currently loaded variables and their values and a <acronym class="acronym">GDB</acronym> backtrace.
</p></dd><dt><a name="gdb-menus-targets"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Debug</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Targets</span></span></span></dt><dd><p>A submenu containing a list of targets (executables).
</p></dd><dt><a name="gdb-menus-start"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Debug</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Start Debugging</span></span></span></dt><dd><p>Starts <acronym class="acronym">GDB</acronym> with a target.</p></dd><dt><a name="gdb-menus-kill"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Debug</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Kill / Stop Debugging</span></span></span></dt><dd><p>Stops <acronym class="acronym">GDB</acronym>.</p></dd><dt><a name="gdb-menus-restart"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Debug</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Restart Debugging</span></span></span></dt><dd><p>Restarts <acronym class="acronym">GDB</acronym>.</p></dd><dt><a name="gdb-menus-break"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Debug</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Toggle Breakpoint / Break</span></span></span></dt><dd><p>Set a breakpoint at the current cursor position.
</p></dd><dt><a name="gdb-menus-step-in"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Debug</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Step In</span></span></span></dt><dd><p>Execute the present statement (function call will be debugged).
</p></dd><dt><a name="gdb-menus-step-over"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Debug</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Step Over</span></span></span></dt><dd><p>Execute the present statement (function call will not be
debugged).</p></dd><dt><a name="gdb-menus-step-out"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Debug</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Step Out</span></span></span></dt><dd><p>Resumes execution until the program that is executing
terminates.</p></dd><dt><a name="gdb-menus-move-pc"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Debug</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Move PC</span></span></span></dt><dd><p>Move program counter (next execution).</p></dd><dt><a name="gdb-menus-run-to-cursor"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Debug</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Run To Cursor</span></span></span></dt><dd><p>Runs the program until it reaches current cursor position.
</p></dd><dt><a name="gdb-menus-continue"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Debug</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Continue</span></span></span></dt><dd><p>Ignores any breakpoints and executes program until it terminates
(successfully or not).</p></dd><dt><a name="gdb-menus-print-value"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Debug</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Print Value</span></span></span></dt><dd><p>Prints the value of the variable that the cursor is currently
pointing to.</p></dd><dt><a name="gdb-menus-toolbar"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Settings</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Toolbars Shown</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem"><acronym class="acronym">GDB</acronym> Plugin</span></span></span></dt><dd><p>Display the debugging toolbar.</p></dd></dl></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="gdb-debug-view"></a>Debug View</h3></div></div></div><p>The <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Debug View</span></span> tool view consists of several tabs:
</p><div class="variablelist"><dl class="variablelist"><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel"><acronym class="acronym">GDB</acronym> Output</span></span></span></dt><dd><p>Contains output from <acronym class="acronym">GDB</acronym> and a <acronym class="acronym">GDB</acronym> command line.</p><div class="screenshot"><a name="screenshot-gdb-output"></a><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="gdb-output.png" alt="The Output tab."><div class="caption"><p>The <span class="guiitem"><span class="guilabel">Output</span></span> tab displaying the output from a
debugging session.</p></div></div></div></dd><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Settings</span></span></span></dt><dd><div class="variablelist"><dl class="variablelist"><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Executable</span></span></span></dt><dd><p>Path to the target (executable) for debugging.</p></dd><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Working Directory</span></span></span></dt><dd><p>The current working directory provided to the target.
</p></dd><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Arguments</span></span></span></dt><dd><p>Arguments passed to the program.</p></dd><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Keep focus</span></span></span></dt><dd><p>Keeps focus on the <acronym class="acronym">GDB</acronym> command line.</p></dd><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Redirect IO</span></span></span></dt><dd><p>Opens a new <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">IO</span></span> tab in the <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Debug
View</span></span> where you can view output and provide input to the running
program.</p></dd></dl></div><div class="screenshot"><a name="screenshot-gdb-settings"></a><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="gdb-settings.png" alt="The Settings dialog"><div class="caption"><p>The <span class="guiitem"><span class="guilabel">Settings</span></span> dialog displaying the configuration
of a debugging session.</p></div></div></div></dd><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">IO</span></span></span></dt><dd><p>Contains an area that displays output from the running program and a
command line where you may provide input to it.</p><div class="screenshot"><a name="screenshot-gdb-io"></a><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="gdb-io.png" alt="The IO tab."><div class="caption"><p>The <span class="guiitem"><span class="guilabel">IO</span></span> tab displaying output from a simple
test program.</p></div></div></div></dd></dl></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="gdb-other"></a>Call Stack and Locals</h3></div></div></div><p>The <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Call Stack</span></span> tool view contains a list of the formatted
backtrace returned from <acronym class="acronym">GDB</acronym>.</p><div class="screenshot"><a name="screenshot-gdb-call-stack"></a><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="gdb-call-stack.png" alt="The Call Stack tool view."><div class="caption"><p>The <acronym class="acronym">GDB</acronym> Plugin's <span class="guiitem"><span class="guilabel">Call Stack</span></span> tool view.
</p></div></div></div><p>The <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Locals</span></span> tool view contains a list of all currently
loaded variables from the program and their corresponding values.</p><div class="screenshot"><a name="screenshot-gdb-locals"></a><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="gdb-locals.png" alt="The Locals tool view."><div class="caption"><p>The <acronym class="acronym">GDB</acronym> Plugin's <span class="guiitem"><span class="guilabel">Locals</span></span> tool view.
</p></div></div></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="gdb-ack"></a>Thanks and Acknowledgments</h3></div></div></div><p>Special thanks to Google Code-In 2011 participant Martin Gergov for
writing much of this section.</p></div></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="kate-application-plugin-documents.html">Prev</a></td><td class="upCell"><a accesskey="h" href="index.html">Contents</a></td><td class="nextCell"><a accesskey="n" href="kate-application-plugin-projects.html">Next</a></td></tr><tr><td class="prevCell">The Documents List </td><td class="upCell">Working with Plugins</td><td class="nextCell"> Project Plugin</td></tr></table></div><div id="footer_text">Would you like to make a comment or contribute an update to this page?<br>Send feedback to the <a href="mailto:kde-doc-english@kde.org" class="footer_email">KDE Docs Team</a></div></div></div></body></html></FILENAME><FILENAME filename="kate-application-plugin-projects.html"><html><head><title>Project Plugin</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, kdebase, Kate, text, editor, programmer, programming, projects, MDI, Multi, Document, Interface, terminal, console"><link rel="home" href="index.html" title="The Kate Handbook"><link rel="up" href="plugins.html" title="Chapter 4. Working with Plugins"><link rel="prev" href="kate-application-plugin-gdb.html" title="GDB Plugin"><link rel="next" href="kate-application-plugin-lspclient.html" title="LSP Client Plugin"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> Project Plugin</div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="kate-application-plugin-gdb.html">Prev</a></td><td class="upCell">Working with Plugins</td><td class="nextCell"><a accesskey="n" href="kate-application-plugin-lspclient.html">Next</a></td></tr></table></div><div id="contentBody"><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="kate-application-plugin-projects"></a>Project Plugin</h2></div></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="project-intro"></a>Introduction</h3></div></div></div><p>The basic idea of the Project plugin is to have a structured list of
files belonging to the project with the following properties:</p><div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem"><p>Provide a structured view of the files</p></li><li class="listitem"><p>Make it easy and very fast to open and switch projects</p></li><li class="listitem"><p>Support search and replace for a project</p></li><li class="listitem"><p>Provide simple auto completion</p></li><li class="listitem"><p>Make it simple to quickly open files in the project</p></li><li class="listitem"><p>Support for building the project</p></li></ol></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="project-view"></a>Structured View of the Files</h3></div></div></div><p>Once the Project plugin is loaded in the <span class="application">Kate</span> configuration page, open a file
in a project and a sidebar
appears that lists all projects as well as the project files as follows:</p><div class="screenshot"><a name="screenshot-project-view"></a><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="project-view.png"></div></div><p>As you can see, the currently active project is <span class="quote">“<span class="quote">Kate</span>”</span>, and its contents is
listed in the tree view. Clicking on files in the tree view opens the file in the
editor. Further, a context menu is provided with which you can open files with
other applications, such as a <code class="filename">.ui</code> file with Qt Designer.</p><p>You can filter the items by typing parts of the file name you are looking for into the search bar
at the bottom of the list.</p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="project-switch"></a>Switching Projects</h3></div></div></div><p>The idea is that you never have to open a project manually, this is even not
supported at all. Hence, what happens if you open a file, the Project plugin quickly
scans the folder and its parent folders for a <code class="filename">.kateproject</code> file. If found, the project
is automatically loaded.</p><p>Furthermore, if you open another document in <span class="application">Kate</span>, that belongs to another project,
the Project plugin automatically switches the current project. So intuitively, always the
correct project is active. Of course, you can also switch the currently active project
using the combo box.</p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="project-search-replace"></a>Search and Replace in Projects</h3></div></div></div><p><span class="application">Kate</span> has a Search and Replace plugin that shows up in the
bottom sidebar. If a project is loaded, open the Search and Replace sidebar,
and switch to the mode to search and replace in the current project:</p><div class="screenshot"><a name="screenshot-projects-search"></a><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="project-search.png"></div></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="project-autocompletition"></a>Simple Auto Completion</h3></div></div></div><p>With the knowledge of all files belonging to a project, the Project plugin provides
simple auto completion facilities based on CTags. If a project is initially opened, CTags
parses all project files in a background thread and saves the CTags information to
<code class="filename">/tmp</code>. This file then is used to populate the auto
completion popup in <span class="application">Kate</span>.</p><p>In contrast, without this auto completion, <span class="application">Kate</span> is only capable of showing auto
completion items based on the words in the current file. So the auto completion provided
by the Project plugin is much more powerful.</p><div class="screenshot"><a name="screenshot-completion-search"></a><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="project-completition.png"></div></div><p>If CTags is missing, a passive popup warns you about this issue. It is also noteworthy,
that the CTags file in <code class="filename">/tmp</code> is cleaned up when <span class="application">Kate</span>
exits, so the plugin does not pollute any folder with unwanted files.</p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="project-build"></a>Support for Building the Project</h3></div></div></div><p>Another feature is to have support for the <a class="link" href="kate-application-plugin-projects.html#projects-build-support">Build Plugin</a>,
so that it automatically is configured correctly.</p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="project-create"></a>Creating Projects</h3></div></div></div><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="project-autoload"></a>Loading Projects Automatically</h4></div></div></div><p>The Project plugin has an auto-loading feature. You can read the file list from
the version control system. To this end, auto-loading for the respective version control
system needs to be enabled in the settings (enabled by default):
</p><div class="screenshot"><a name="screenshot-project-configure"></a><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="project-configure.png"></div></div></div><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="project-manual"></a>Creating Projects Manually</h4></div></div></div><p>
You just have to create a <code class="filename">.kateproject</code> file in the root folder of the project.
For instance, the <span class="quote">“<span class="quote">Kate</span>”</span> <code class="filename">.kateproject</code> file looks like this:
</p><pre class="screen">
{
  "name": "Kate",
  "files": [
    {
      "git": 1
    }
  ]
}
</pre><p>The file content is written in <acronym class="acronym">JSON</acronym> syntax. The project name is <span class="quote">“<span class="quote">Kate</span>”</span>, and
the files contained in should be read from <span class="application">Git</span>.
</p><p>
Also supported instead of <code class="literal">git</code> is subversion through <code class="literal">svn</code> and
mercurial through <code class="literal">hg</code>.

If you do not want to read files from a version control system, you can just invoke kate from command line as:
</p><pre class="screen">
kate /path/to/folder
</pre><p>
or you can tell it to recursively load files from directories as follows:
</p><pre class="screen">
{
  "name": "Kate",
  "files": [
    {
      "directory": "kate",
      "filters": [
        "*.cpp",
        "*.h",
        "*.ui",
        "CMakeLists.txt",
        "Find*.cmake"
      ],
      "recursive": 1
    }
  ]
}
</pre><p>
Here, subfolders and filters define what’s part of the project.
You can also mix version control and files based on filters.
</p><p><a name="projects-build-support"></a>If you want to add support for the building, you can write a
<code class="filename">.kateproject</code> like this:</p><pre class="screen">
{
  "name": "Kate",
  "files": [
    {
      "git": 1
    }
  ],
  "build": {
    "directory": "build",
    "build": "make all",
    "clean": "make clean",
    "install": "make install",
    "targets": [
      {
        "name": "all",
        "build_cmd": "ninja"
        "run_cmd": "./bin/kate"
      },
      {
        "name": "kate",
        "build_cmd": "ninja kate-bin"
      }
    ]
  }
}
</pre><p>
The targets specified above will then appear in the <a class="link" href="kate-application-plugin-build.html" title="Build Plugin">Build Plugin </a> under <span class="bold"><strong>
"Project Plugin Targets"</strong></span>.

If the <code class="code">"targets"</code> array is specified then <code class="code">"build"</code>, <code class="code">"clean"</code> and <code class="code">"install"</code> are ignored. Each element in the array specifies a target. <code class="code">"name"</code> is the name of the target, <code class="code">"build_cmd"</code> will be used to build the target, <code class="code">"run_cmd"</code> will be used to run the target. Most important of all is <code class="code">"directory"</code>, this is where the commands will be executed.

</p><p>
In case you have a <code class="filename">.kateproject</code> file tracked by a control
version system, but you need to tweak the configuration for a particular
workspace, you can save those changes to a separated file named
<code class="filename">.kateproject.local</code>. The content of this file will take
precedence over <code class="filename">.kateproject</code>.
</p></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="project-current"></a>Current Project</h3></div></div></div><p>Using <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Projects</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Go To</span></span> (<span class="shortcut"><strong><span class="keycap"><strong>Alt</strong></span>+<span class="keycap"><strong>1</strong></span></strong></span>) you can open the
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Current Project</span></span> view at the bottom of the editor window with four tabs:</p><div class="screenshot"><a name="screenshot-project-current"></a><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="project-current-analysis.png"></div></div><div class="variablelist"><dl class="variablelist"><dt><span class="term">
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Terminal Panel</span></span>
</span></dt><dd><p>A <a class="link" href="kate-application-plugin-konsole.html" title="Terminal Tool View Plugin">Terminal emulator</a> starting in the
root folder of the project.</p></dd><dt><span class="term">
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Code Index</span></span>
</span></dt><dd><p>Entering characters into the search bar will start the search and display matching names
of functions, classes, symbols <abbr class="abbrev">etc.</abbr> together with kind, filename and line number.</p><p>Select an item in the list to jump to the corresponding line in the source file.</p></dd><dt><span class="term">
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Code Analysis</span></span>
</span></dt><dd><p>Click <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Start Analysis</span></span> to run a static code analysis for the C and C++
using <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="command"><span class="command"><strong>cppcheck</strong></span></span> and to generate a report showing filename, line number, severity
(style, warning <abbr class="abbrev">etc.</abbr>) and the issue found.</p><p>Select an item in the list to jump to the corresponding line in the source file.</p></dd><dt><span class="term">
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Notes</span></span>
</span></dt><dd><p>Text entered in this tab will be saved in the file
<code class="filename">.kateproject.notes</code>.</p></dd></dl></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="projects-menu"></a>The Projects Menu</h3></div></div></div><p>The <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Projects</span></span> menu allows you to switch between
currently open projects.  It is displayed by the Project plugin.</p><div class="variablelist"><dl class="variablelist"><dt><a name="projects-back"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Projects</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Back</span></span> (<span class="shortcut"><strong><span class="keycap"><strong>Ctrl</strong></span>+<span class="keycap"><strong>Alt</strong></span>+<span class="keysym">Left</span></strong></span>)</span></dt><dd><p>Switch to the previous project.</p></dd><dt><a name="projects-forward"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Projects</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Forward</span></span> (<span class="shortcut"><strong><span class="keycap"><strong>Ctrl</strong></span>+<span class="keycap"><strong>Alt</strong></span>+<span class="keysym">Right</span></strong></span>)</span></dt><dd><p>Switch to the next project.</p></dd><dt><a name="projects-goto"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Projects</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Go To</span></span> (<span class="shortcut"><strong><span class="keycap"><strong>Alt</strong></span>+<span class="keycap"><strong>1</strong></span></strong></span>)</span></dt><dd><p>Open the <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Current Project</span></span> view at the bottom of the editor window.</p></dd></dl></div></div></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="kate-application-plugin-gdb.html">Prev</a></td><td class="upCell"><a accesskey="h" href="index.html">Contents</a></td><td class="nextCell"><a accesskey="n" href="kate-application-plugin-lspclient.html">Next</a></td></tr><tr><td class="prevCell"><acronym class="acronym">GDB</acronym> Plugin </td><td class="upCell">Working with Plugins</td><td class="nextCell"> LSP Client Plugin</td></tr></table></div><div id="footer_text">Would you like to make a comment or contribute an update to this page?<br>Send feedback to the <a href="mailto:kde-doc-english@kde.org" class="footer_email">KDE Docs Team</a></div></div></div></body></html></FILENAME><FILENAME filename="kate-application-plugin-lspclient.html"><html><head><title>LSP Client Plugin</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, kdebase, Kate, text, editor, programmer, programming, projects, MDI, Multi, Document, Interface, terminal, console"><link rel="home" href="index.html" title="The Kate Handbook"><link rel="up" href="plugins.html" title="Chapter 4. Working with Plugins"><link rel="prev" href="kate-application-plugin-projects.html" title="Project Plugin"><link rel="next" href="kate-application-plugin-searchinfiles.html" title="Search &amp; Replace"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> LSP Client Plugin</div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="kate-application-plugin-projects.html">Prev</a></td><td class="upCell">Working with Plugins</td><td class="nextCell"><a accesskey="n" href="kate-application-plugin-searchinfiles.html">Next</a></td></tr></table></div><div id="contentBody"><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="kate-application-plugin-lspclient"></a>LSP Client Plugin</h2></div></div></div><p>The LSP Client plugin provides many language features such as code completion, code navigation or finding references
based on the <a class="ulink" href="https://microsoft.github.io/language-server-protocol/" target="_top">Language Server Protocol</a>.</p><p>Once you have enabled the LSP Client in the plugin page, a new
page called LSP Client will appear in your <span class="application">Kate</span> configuration dialog.
</p><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="lspclient-menu"></a>Menu Structure</h3></div></div></div><p>
If appropriate, a corresponding LSP command is also mentioned in the
explanation below, the documentation of which may then provide additional
background and interpretation, though it may vary depending on the actual
language. The phrase 'current symbol' refers to the symbol corresponding to the
current cursor position, as so determined by the language and server
implementation.
</p><div class="variablelist"><dl class="variablelist"><dt><a name="lspclient-definition"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">LSP Client</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Go to Definition</span></span></span></dt><dd><p>[textDocument/definition] Go to current symbol definition.</p></dd><dt><a name="lspclient-declaration"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">LSP Client</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Go to Declaration</span></span></span></dt><dd><p>[textDocument/declaration] Go to current symbol declaration.</p></dd><dt><a name="lspclient-typedefinition"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">LSP Client</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Go to Type Definition</span></span></span></dt><dd><p>[textDocument/typeDefinition] Go to current symbol type definition.</p></dd><dt><a name="lspclient-references"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">LSP Client</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Find References</span></span></span></dt><dd><p>[textDocument/references] Find references to current symbol.</p></dd><dt><a name="lspclient-implementation"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">LSP Client</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Find Implementations</span></span></span></dt><dd><p>[textDocument/implementation] Find implementations of current symbol.</p></dd><dt><a name="lspclient-highlight"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">LSP Client</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Highlight</span></span></span></dt><dd><p>[textDocument/documentHighlight] Highlight current symbol references in current document.</p></dd><dt><a name="lspclient-hover"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">LSP Client</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Hover</span></span></span></dt><dd><p>[textDocument/hover] Hover info for current symbol.</p></dd><dt><a name="lspclient-format"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">LSP Client</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Format</span></span></span></dt><dd><p>[textDocument/formatting] [textDocument/rangeFormatting]
Format the current document or current selection.</p></dd><dt><a name="lspclient-rename"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">LSP Client</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Rename</span></span></span></dt><dd><p>[textDocument/rename] Rename current symbol.</p></dd><dt><a name="lspclient-quick-fix"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">LSP Client</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Quick Fix</span></span></span></dt><dd><p>[textDocument/codeAction, workspace/executeCommand]
Computes and applies a quick fix for a diagnostic on current position (or line).</p></dd><dt><a name="lspclient-completion-documentation"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">LSP Client</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Show selected completion documentation</span></span></span></dt><dd><p>Show documentation for a selected item in the completion list.</p></dd><dt><a name="lspclient-signature-help"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">LSP Client</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Enable signature help with auto completion</span></span></span></dt><dd><p>Also show signature help in the completion list.</p></dd><dt><a name="lspclient-declaration-references"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">LSP Client</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Include declaration in references</span></span></span></dt><dd><p>Request to include a symbol's declaration when requesting references.</p></dd><dt><a name="lspclient-completion-parens"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">LSP Client</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Add parentheses upon function completion</span></span></span></dt><dd><p>Automatically add a pair of parentheses after completion of a function.</p></dd><dt><a name="lspclient-show-hover"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">LSP Client</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Show hover information</span></span></span></dt><dd><p>Show hover information upon (mouse cursor) hover.
Regardless of this setting, the request can always be manually initiated.
</p></dd><dt><a name="lspclient-format-typing"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">LSP Client</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Format on typing</span></span></span></dt><dd><p>[document/onTypeFormatting] Format parts of document when typing certain trigger characters.
For example, this might apply indentation upon newline, or as otherwise determined by LSP Server.
Note that editor indentation scripts might be trying to do the same (depending on the mode)
and so it may not be advisable to have both enabled at the same time.
</p></dd><dt><a name="lspclient-incremental-sync"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">LSP Client</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Incremental document synchronization</span></span></span></dt><dd><p>Send partial document edits to update the server rather than whole document text (if supported).</p></dd><dt><a name="lspclient-highlight-goto"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">LSP Client</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Highlight goto location</span></span></span></dt><dd><p>Provide a transient visual cue after performing a goto to a location (of definition, declaration, etc).</p></dd><dt><a name="lspclient-diagnostics"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">LSP Client</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Show diagnostics notifications</span></span></span></dt><dd><p>[textDocument/publishDiagnostics] Process and show diagnostics notifications sent by server.</p></dd><dt><a name="lspclient-diagnostics-highlight"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">LSP Client</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Show diagnostics highlights</span></span></span></dt><dd><p>Add text highlights for ranges indicated in diagnostics.</p></dd><dt><a name="lspclient-diagnostics-marks"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">LSP Client</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Show diagnostics marks</span></span></span></dt><dd><p>Add document marks for lines indicated in diagnostics.</p></dd><dt><a name="lspclient-diagnostics-tab"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">LSP Client</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Switch to diagnostic tab</span></span></span></dt><dd><p>Switch to the diagnostic tab in the plugin toolview.</p></dd><dt><a name="lspclient-close-non-diagnostics"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">LSP Client</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Close all non-diagnostics tabs</span></span></span></dt><dd><p>Close all non-diagnostics (<abbr class="abbrev">e.g.</abbr> references) tabs in plugin toolview.</p></dd><dt><a name="lspclient-restart"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">LSP Client</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Restart LSP Server</span></span></span></dt><dd><p>Restart current document's LSP Server.</p></dd><dt><a name="lspclient-restart-all"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">LSP Client</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Restart all LSP Servers</span></span></span></dt><dd><p>Stop all LSP Servers which will then be (re)started as needed.</p></dd></dl></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="lspclient-go-to-symbol"></a>Goto Symbol support</h3></div></div></div><p>
LSP Client can help you jump to any symbol in your project or current file.

To jump to any symbol in the file, use the toolview "LSP Client Symbol Outline"
on the right border of kate. This toolview lists all symbols found by the server
in current document.
</p><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="lspclient-symbol-outline-config"></a>Configuring LSP Client Symbol Outline</h4></div></div></div><p>
By default the symbols are sorted by their occurrence in the
document but you can change the sort to be alphabetical. To do so, right click in
the toolview and check "Sort Alphabetically".
</p><p>
The toolview shows the symbols in tree mode by default, however you can change it to a list using the
context menu.
</p></div><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="lspclient-global-go-to-symbol"></a>Global Goto symbol support</h4></div></div></div><p>
To jump to any symbol in your project, you can open the goto symbol dialog using
<span class="keycap"><strong>Ctrl</strong></span>+<span class="keycap"><strong>Alt</strong></span>+<span class="keycap"><strong>p</strong></span>.
The dialog is empty when it opens but as soon as you type something the dialog will start showing
you matching symbols. The quality of matches as well as filtering capabilities depend upon the server
that you use. For example, clangd supports fuzzy filtering but some other server may not.
</p></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="lspclient-extra"></a>Other Features</h3></div></div></div><p>
Clangd switch source header command is supported. To switch source header in a C or C++ project either use the "Switch Source Header"
option from the context menu or the shortcut <span class="keycap"><strong>F12</strong></span>.
</p><p>
You can jump to a symbol quickly by putting your mouse over the symbol and then pressing
<span class="keycap"><strong>Ctrl</strong></span> + left mouse button.
</p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="lspclient-configuration"></a>Configuration</h3></div></div></div><p>
The plugin's configuration page mostly allows for persistent configuration of
some of the above menu items.  However, there is one additional entry
to specify the Server Configuration file.  This is a <acronym class="acronym">JSON</acronym> file that
can be used to specify the LSP server to start (and then to communicate
with over stdin/stdout).  For convenience, some default configuration
is included, which can be inspected in the plugin's configuration page.
To aid in the explanation below, an excerpt of that configuration is given here:
</p><pre class="screen">
{
    "servers": {
        "bibtex": {
            "use": "latex",
            "highlightingModeRegex": "^BibTeX$"
        },
        "c": {
            "command": ["clangd", "-log=error", "--background-index"],
            "commandDebug": ["clangd", "-log=verbose", "--background-index"],
            "url": "https://clang.llvm.org/extra/clangd/",
            "highlightingModeRegex": "^(C|ANSI C89|Objective-C)$"
        },
        "cpp": {
            "use": "c",
            "highlightingModeRegex": "^(C\\+\\+|ISO C\\+\\+|Objective-C\\+\\+)$"
        },
        "d": {
            "command": ["dls", "--stdio"],
            "url": "https://github.com/d-language-server/dls",
            "highlightingModeRegex": "^D$"
        },
        "fortran": {
            "command": ["fortls"],
            "rootIndicationFileNames": [".fortls"],
            "url": "https://github.com/hansec/fortran-language-server",
            "highlightingModeRegex": "^Fortran.*$"
        },
        "javascript": {
            "command": ["typescript-language-server", "--stdio"],
            "rootIndicationFileNames": ["package.json", "package-lock.json"],
            "url": "https://github.com/theia-ide/typescript-language-server",
            "highlightingModeRegex": "^JavaScript.*$",
            "documentLanguageId": false
        },
        "latex": {
            "command": ["texlab"],
            "url": "https://texlab.netlify.com/",
            "highlightingModeRegex": "^LaTeX$"
        },
        "go": {
            "command": ["go-langserver"],
            "commandDebug": ["go-langserver", "-trace"],
            "url": "https://github.com/sourcegraph/go-langserver",
            "highlightingModeRegex": "^Go$"
        },
        "python": {
            "command": ["python3", "-m", "pyls", "--check-parent-process"],
            "url": "https://github.com/palantir/python-language-server",
            "highlightingModeRegex": "^Python$"
        },
        "rust": {
            "command": ["rls"],
            "path": ["%{ENV:HOME}/.cargo/bin", "%{ENV:USERPROFILE}/.cargo/bin"],
            "rootIndicationFileNames": ["Cargo.lock", "Cargo.toml"],
            "url": "https://github.com/rust-lang/rls",
            "highlightingModeRegex": "^Rust$"
        },
        "ocaml": {
            "command": ["ocamlmerlin-lsp"],
            "url": "https://github.com/ocaml/merlin",
            "highlightingModeRegex": "^Objective Caml.*$"
        }
    }
}
</pre><p>
Note that each "command" may be an array or a string (in which case it is
split into an array). Also, a top-level "global" entry (next to "server") is
considered as well (see further below).
The specified binary is searched for in the usual way, e.g. using <code class="literal">PATH</code>.
If it is installed in some custom location, then the latter may have to be
extended.  Or alternatively, a (sym)link or wrapper script may be used in a location
that is within the usual <code class="literal">PATH</code>.  As illustrated above,
one may also specify a "path" that will be searched for after the standard locations.
</p><p>
All of the entries in "command", "root" and "path" are subject to variable expansion.
</p><p>
The "highlightingModeRegex" is used to map the highlighting mode as used by <span class="application">Kate</span>
to the language id of the server. If no regular expression is given, the language id
itself is used.  If a "documentLanguageId" entry is set to false, then no
language id is provided to the server when opening the document.  This may
have better results for some servers that are more precise in determining
the document type than doing so based on a kate mode.
</p><p>
From the above example, the gist is presumably clear.  In addition, each server
entry object may also have an "initializationOptions" entry, which is passed
along to the server as part of the 'initialize' method.
If present, a "settings" entry is passed to the server by means of the
'workspace/didChangeConfiguration' notification.
</p><p>
Various stages of override/merge are applied;
</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>user configuration (loaded from file) overrides (internal) default configuration</p></li><li class="listitem"><p>"lspclient" entry in <code class="filename">.kateproject</code> project configuration overrides the above</p></li><li class="listitem"><p>the resulting "global" entry is used to supplement (not override) any server entry</p></li></ul></div><p>
</p><p> One server instance is used per (root, servertype) combination. If "root"
is specified as an absolute path, then it used as-is, otherwise it is relative
to the <span class="quote">“<span class="quote">projectBase</span>”</span> (as determined by the <a class="link" href="kate-application-plugin-projects.html" title="Project Plugin">Project plugin</a>) if applicable,
or otherwise relative to the document's directory. If not specified and
"rootIndicationFileNames" is an array as filenames, then a parent directory of
current document containing such a file is selected. Alternatively, if "root" is not specified and 
"rootIndicationFilePatterns" is an array of file patterns, then a parent directory of the current document matching the file pattern is selected. As a last fallback, the
home directory is selected as "root". For any document, the resulting "root"
then determines whether or not a separate instance is needed. If so, the "root"
is passed as rootUri/rootPath. </p><p>
In general, it is recommended to leave root unspecified, as it is not that
important for a server (your mileage may vary though).  Fewer server instances
are obviously more efficient, and they also have a 'wider' view than
the view of many separate instances.
</p><p>
As mentioned above, several entries are subject to variable expansion.
A suitable application of that combined with "wrapper script" approaches
allows for customization to a great many circumstances.
For example, consider a python development scenario that consists of multiple
projects (e.g. git repos), each with its own virtualenv setup.  Using the default
configuration, the python language server will not be aware of the virtual env.
However, that can be remedied with the following approach.  First, the following
fragment can be entered in LSPClient plugin's "User Server Settings":
</p><pre class="screen">
{
        "servers":
        {
                "python":
                {
                        "command": ["pylsp_in_env"], ["%{Project:NativePath}"],
                        "root": "."
                }
        }
}
</pre><p>
The root entry above is relative to the project directory and ensures that a
separate language server is started for each project, which is necessary in
this case as each has a distinct virtual environment.
</p><p>
<code class="filename">pylsp_in_env</code> is a small "wrapper script" that should be placed
in <code class="literal">PATH</code> with the following (to-be-adjusted) content:
</p><pre class="screen">
#!/bin/bash
cd $1
# run the server (python-lsp-server) within the virtualenv
# (i.e. with virtualenv variables setup)
# so source the virtualenv
source XYZ
# server mileage or arguments may vary
exec myserver
</pre><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="lspclient-customization"></a>LSP Server Configuration</h4></div></div></div><p>

Each particular LSP server has its own way of customization and may use
language/tool specific means for configuration, <abbr class="abbrev">e.g.</abbr>
<code class="filename">tox.ini</code> (a.o. for python),
<code class="filename">.clang-format</code> for C++ style format. Such configuration may
then also be used by other (non-LSP) tools (such as then
<span class="application">tox</span> or <span class="application">clang-format</span>). On
top of that, some LSP servers also load configuration from custom files (<abbr class="abbrev">e.g.</abbr>
<code class="filename">.ccls</code>). Furthermore, custom server configuration can also
be passed through LSP (protocol), see the aforementioned
"initializationOptions" and "settings" entries in server configuration.

</p><p>
Since various level of override/merge are applied, the following example
of user specified client configuration tweaks some python-language-server
configuration.
</p><pre class="screen">
{
    "servers": {
        "python": {
            "settings": {
                "pyls": {
                    "plugins": {
                        "pylint": {
                            "enable": true
                        }
                    }
                }
            }
        }
    }
}
</pre><p>
Unfortunately, LSP server configuration/customization is often not so well
documented, in ways that only examining the source code shows configuration
approaches and the set of available configuration options.  In particular,
the above example's server supports many more options in "settings".
See <a class="ulink" href="https://github.com/neoclide/coc.nvim/wiki/Language-servers" target="_top">
another LSP client's documentation</a> for various other language server
examples and corresponding settings, which can easily and readily be
transformed to the <acronym class="acronym">JSON</acronym> configuration that is used here and outlined above.
</p></div><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="lspclient-diagnostics-suppression"></a>LSP Server Diagnostic Suppression</h4></div></div></div><p>
It may happen that diagnostics are reported which are not quite useful.
This can be quite cumbersome, especially if there are many (often of the same
kind). In some cases, this may be tweaked by language (server) specific means.
For example, the <a class="ulink" href="https://clangd.llvm.org/config.html" target="_top">clangd
configuration  mechanism</a> allows tweaking of some diagnostics aspects. In
general, however, it may not always be evident how to do so, or it may not even
be possible at all in desired ways due to server limitations or bug.
</p><p>
As such, the plugin supports diagnostics suppression similar to e.g. valgrind
suppressions. The most fine-grained configuration can be supplied in a
"suppressions" key in the (merged) <acronym class="acronym">JSON</acronym> configuration.
</p><pre class="screen">
{
    "servers": {
        "c": {
            "suppressions": {
                "rulename": ["filename", "foo"],
                "clang_pointer": ["", "clang-tidy", "clear_pointer"],
            }
        }
    }
}
</pre><p>
Each (valid) rule has an arbitrary name and is defined by an array of length
2 or 3 which provides a regex to match against the (full) filename, a regex
to match against the diagnostic (text) and an optional regex matched against
the (source code range of) text to which the diagnostic applies.
</p><p>
In addition to the above fine-grained configuration, the context menu in the
diagnostics tab also supports add/remove of suppressions that match a particular
diagnostic (text) exactly, either globally (any file) or locally (the specific
file in question).  These suppression are stored in and loaded from session config.
</p></div><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="lspclient-troubleshooting"></a>LSP Server Troubleshooting</h4></div></div></div><p>
It is one thing to describe how to configure a (custom) LSP server for
any particular language, it is another to end up with the server running
smoothly. Usually, the latter is fortunately the case.  Sometimes, however,
problems may arise due to either some "silly" misconfiguration or a more
fundamental problem with the server itself.  The latter might typically manifest
itself as a couple of attempts at starting the server, as so reported in <span class="application">Kate</span>
Output tab. The latter, however, is only meant to convey high-level messages or
progress rather than to provide detailed diagnostics, and even less so for what
is in fact another process (the LSP server).
</p><p>
The usual way to diagnose this is to add some flag(s) to the startup
command (of the language server) that enables (additional) logging (to
some file or standard error), in as far as it does not do so by default. If
<span class="application">Kate</span> is then started on the command line, then one might be able to obtain
more (in)sight in what might be going wrong.
</p><p>
It may also be informative to examine the protocol exchange between <span class="application">Kate</span>'s
LSP client and the LSP server.  Again, the latter usually has ways to trace
that.  The LSP client also provides additional debug tracing (to stderr)
when <span class="application">Kate</span> is invoked with the following
<code class="literal">QT_LOGGING_RULES=katelspclientplugin=true</code> suitably
<code class="literal">export</code>'ed.
</p></div></div></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="kate-application-plugin-projects.html">Prev</a></td><td class="upCell"><a accesskey="h" href="index.html">Contents</a></td><td class="nextCell"><a accesskey="n" href="kate-application-plugin-searchinfiles.html">Next</a></td></tr><tr><td class="prevCell">Project Plugin </td><td class="upCell">Working with Plugins</td><td class="nextCell"> Search &amp; Replace</td></tr></table></div><div id="footer_text">Would you like to make a comment or contribute an update to this page?<br>Send feedback to the <a href="mailto:kde-doc-english@kde.org" class="footer_email">KDE Docs Team</a></div></div></div></body></html></FILENAME><FILENAME filename="kate-application-plugin-searchinfiles.html"><html><head><title>Search &amp; Replace</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, kdebase, Kate, text, editor, programmer, programming, projects, MDI, Multi, Document, Interface, terminal, console"><link rel="home" href="index.html" title="The Kate Handbook"><link rel="up" href="plugins.html" title="Chapter 4. Working with Plugins"><link rel="prev" href="kate-application-plugin-lspclient.html" title="LSP Client Plugin"><link rel="next" href="kate-application-plugin-snippets.html" title="Kate Snippets"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> Search &amp; Replace</div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="kate-application-plugin-lspclient.html">Prev</a></td><td class="upCell">Working with Plugins</td><td class="nextCell"><a accesskey="n" href="kate-application-plugin-snippets.html">Next</a></td></tr></table></div><div id="contentBody"><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="kate-application-plugin-searchinfiles"></a>Search &amp; Replace</h2></div><div><div class="authorgroup"><p class="author"><span class="firstname">T.C.</span> <span class="surname">Hollingsworth</span> <code class="email">&lt;tchollingsworth@gmail.com&gt;</code></p></div></div></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="searchinfiles-intro"></a>Introduction</h3></div></div></div><p><span class="application">Kate</span>'s Search &amp; Replace plugin allows you to search for text or
<a class="ulink" href="help:/katepart/regular-expressions.html" target="_top">regular expressions</a>
in many different files at once.  You can search all open files, all the files
in one directory and optionally its subdirectories, or in the active file.
You can even filter by filename, for instance searching only files
that end with a particular file extension.</p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="searchinfiles-ui"></a>Interface</h3></div></div></div><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="searchinfiles-ui-query"></a>Search Query</h4></div></div></div><p>The following options are always displayed at the top of the Search in
Files tool view:</p><div class="variablelist"><dl class="variablelist"><dt><span class="term"><span class="guiicon"><span class="inlinemediaobject"><img src="tab-new-22.png"></span></span></span></dt><dd><p>
You can have as many searches as you want open at the same time.  Simply click
the new tab button at the top-left corner of the Search
tool view and a new results tab will open permitting you to perform another
search.
</p></dd><dt><span class="term"><span class="guiicon"><span class="inlinemediaobject"><img src="games-config-options-22.png"></span></span></span></dt><dd><p>
The button in the top right-corner of the Search in Files tool view will
toggle the bottom half of the tool view between displaying additional options
for the Search in Folder mode and the results of your search.
</p></dd><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Find</span></span></span></dt><dd><p>
This is where you type in what you want to find.  You may enter standard text,
or a regular expression if enabled.
</p></dd><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Replace</span></span> (text box)</span></dt><dd><p>
Replacement text that will be added to file(s) in place of the text in the
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Find</span></span> text box.
</p></dd><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guibutton">Search</span></span></span></dt><dd><p>
When you've finished configuring everything, just press the
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guibutton">Search</span></span> button to perform your search.  You may also press
<span class="keysym">Enter</span> in the <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Find</span></span> text box to do the same.
</p></dd><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guibutton">Replace</span></span></span></dt><dd><p>
When you've finished configuring everything, just press the
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guibutton">Replace</span></span> button to replace the text entered in the
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Find</span></span> text box with that of the <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Replace</span></span>
text box.  You may also press <span class="keysym">Enter</span> in the <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Replace</span></span> text
box to do the same.
</p></dd><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guibutton">Next</span></span></span></dt><dd><p>
Go to the next match of your search query, switching files if necessary.
</p></dd><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guibutton">Replace Checked</span></span></span></dt><dd><p>
The same as <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guibutton">Replace</span></span>, but will only perform replacements
in files that are checked in the pane below.
</p></dd></dl></div></div><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="searchinfiles-ui-folder"></a>Search in Folder Options</h4></div></div></div><p>These options are displayed below the aforementioned query options. If search
results are being displayed instead, press the <span class="guiicon"><span class="inlinemediaobject"><img src="games-config-options-22.png"></span></span>
button to display them.</p><div class="variablelist"><dl class="variablelist"><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Search in</span></span></span></dt><dd><p>
This has three options.  Select <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Open Files</span></span> to search all
files currently open in <span class="application">Kate</span>.  Select <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Folder</span></span> to
search inside a folder and optionally its subfolders.  Select <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Current
File</span></span> to search only in the active file.
</p><p>If the <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Projects</span></span> plugin is loaded, you can also search in
the <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Current Project</span></span> or in <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">All Open Projects</span></span>.
</p></dd><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Match case</span></span></span></dt><dd><p>
Restricts search results to only those that have the exact same combination
of upper and lower case letters as your search query.
</p></dd><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Regular expressions</span></span></span></dt><dd><p>
Permits you to use <a class="ulink" href="help:/katepart/regular-expressions.html" target="_top">regular
expressions</a> instead of simple text as your search query.
</p></dd><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Expand results</span></span></span></dt><dd><p>
Display all the results found in each file, instead of just a list of files
that contain the search query.
</p></dd><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Folder</span></span></span></dt><dd><p>
You may enter the path of the folder you wish to search.  For instance, you might
enter <strong class="userinput"><code>~/development/kde/kate/</code></strong> if you wished to search the
<span class="application">Kate</span> source code.  This option is only available when using
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">in Folder</span></span> mode.
</p></dd><dt><span class="term"><span class="guiicon">Open file dialog</span></span></dt><dd><p>
Press this button to locate the folder in your desktop's folder browser. This
button only works when using <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Folder</span></span> mode.
</p></dd><dt><span class="term"><span class="guiicon"><span class="inlinemediaobject"><img src="go-up-22.png"></span></span></span></dt><dd><p>
Press this button to change <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Folder</span></span> to the parent of the
currently selected folder. This button only works when using
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Folder</span></span> mode.
</p></dd><dt><span class="term"><span class="guiicon"><span class="inlinemediaobject"><img src="view-refresh-22.png"></span></span></span></dt><dd><p>
This button will set the <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Folder</span></span> entry to the folder in which
the currently open document is located. This button only works when using
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Folder</span></span> mode.
</p></dd><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Filter</span></span></span></dt><dd><p>
This permits you to only search filenames that match a particular pattern. For
instance, to only search files written in C++, change it to
<strong class="userinput"><code>*.cpp</code></strong>.  To search only files beginning with
<code class="literal">kate</code>, change it to <strong class="userinput"><code>kate*</code></strong>. You can
enter multiple filters separated with a comma (<strong class="userinput"><code>,</code></strong>). This
option is not available when using <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Open files</span></span> mode.
</p></dd><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Exclude</span></span></span></dt><dd><p>
The opposite of <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Filter</span></span>, this prevents <span class="application">Kate</span> from
searching files that match the specified patterns. As with
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Filter</span></span>, you can enter multiple patterns separated with a
comma (<strong class="userinput"><code>,</code></strong>). This option is not available when using
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Open files</span></span> mode.
</p></dd><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Recursive</span></span></span></dt><dd><p>
If this option is enabled, <span class="application">Kate</span> will also search in all subfolders of the
selected folder. This option is only available when using
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Folder</span></span> mode.
</p></dd><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Include hidden</span></span></span></dt><dd><p>
If this option is enabled, <span class="application">Kate</span> will also search in files or folders that
are typically hidden by your operating system. This option is only available when using
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Folder</span></span> mode.
</p></dd><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Follow symbolic links</span></span></span></dt><dd><p>
The Search in Files plugin typically does not follow
<a class="ulink" href="https://en.wikipedia.org/wiki/Symbolic_link" target="_top">symbolic links</a>.
When this option is enabled, the plugin will follow them instead and search inside
the files or folders they reference. This option is only available when using
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Folder</span></span> mode.
</p><div class="warning" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title">Warning</h3><p>It's possible for symbolic links to reference a folder that is the
parent of the folder currently being searched, or other folders that contain
symbolic links to their parent.  If there is such a link in the folder being
searched and this option is enabled, <span class="application">Kate</span> will repeatedly follow the link
and search the folder, and the search will never complete.</p></div></dd><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Include binary files</span></span></span></dt><dd><p>
If enabled, <span class="application">Kate</span> will also search in files that do not appear to be text
files.
</p></dd></dl></div></div><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="searchinfiles-ui-results"></a>Search Results</h4></div></div></div><p>The results of your search are displayed below the query options.  If
options for Search in Folder mode are displayed, simply press the
<span class="guiicon"><span class="inlinemediaobject"><img src="games-config-options-22.png"></span></span>
button to display them.  They will also
automatically be displayed as soon as a search is performed.</p><p>The search results display a list of files that contains text that matches
your search query, followed by the number of matches found in that file.</p><p>To see a list of matches in that file, simply click the expansion arrow
to the left of the file name.  (If you selected the <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Expand
results</span></span> option, this will already be done for you.)  The line number
each match is found on will be displayed, followed by the contents of that line,
with your search query indicated in bold text.</p><p>To open the file your result was found in, simply double-click it.  <span class="application">Kate</span>
will open the file if needed.  You can also move the cursor to the location of
a particular match by double-clicking on its listing instead of the file name.
</p></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="searchinfiles-menu"></a>Menu Structure</h3></div></div></div><div class="variablelist"><dl class="variablelist"><dt><a name="edit-searchinfiles"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Edit</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Search in Files</span></span> (<span class="shortcut"><strong><span class="keycap"><strong>Ctrl</strong></span>+<span class="keycap"><strong>Alt</strong></span>+<span class="keycap"><strong>F</strong></span></strong></span>)</span></dt><dd><p>Launches the Search and Replace tool view.</p></dd><dt><a name="edit-next-match"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Edit</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Go to Next Match</span></span></span></dt><dd><p>Go to the next match in a search performed by the Search and Replace
plugin.</p></dd><dt><a name="edit-previous-match"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Edit</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Go to Previous Match</span></span></span></dt><dd><p>Go to the previous match in a search performed by the Search and Replace
plugin.</p></dd><dt><a name="view-toolviews-searchandreplace"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">View</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Tool Views</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Show Search and Replace</span></span></span></dt><dd><p>Toggle the display of <span class="application">Kate</span>'s <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Search and Replace</span></span> tool.
</p></dd></dl></div></div></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="kate-application-plugin-lspclient.html">Prev</a></td><td class="upCell"><a accesskey="h" href="index.html">Contents</a></td><td class="nextCell"><a accesskey="n" href="kate-application-plugin-snippets.html">Next</a></td></tr><tr><td class="prevCell">LSP Client Plugin </td><td class="upCell">Working with Plugins</td><td class="nextCell"> <span class="application">Kate</span> Snippets</td></tr></table></div><div id="footer_text">Would you like to make a comment or contribute an update to this page?<br>Send feedback to the <a href="mailto:kde-doc-english@kde.org" class="footer_email">KDE Docs Team</a></div></div></div></body></html></FILENAME><FILENAME filename="kate-application-plugin-snippets.html"><html><head><title>Kate Snippets</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, kdebase, Kate, text, editor, programmer, programming, projects, MDI, Multi, Document, Interface, terminal, console"><link rel="home" href="index.html" title="The Kate Handbook"><link rel="up" href="plugins.html" title="Chapter 4. Working with Plugins"><link rel="prev" href="kate-application-plugin-searchinfiles.html" title="Search &amp; Replace"><link rel="next" href="kate-application-plugin-keyboardmacros.html" title="Keyboard Macros Plugin"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> <span class="application">Kate</span> Snippets</div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="kate-application-plugin-searchinfiles.html">Prev</a></td><td class="upCell">Working with Plugins</td><td class="nextCell"><a accesskey="n" href="kate-application-plugin-keyboardmacros.html">Next</a></td></tr></table></div><div id="contentBody"><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="kate-application-plugin-snippets"></a><span class="application">Kate</span> Snippets</h2></div><div><div class="authorgroup"><p class="author"><span class="firstname">Martin</span> <span class="surname">Gergov</span> </p><p class="author"><span class="firstname">T.C.</span> <span class="surname">Hollingsworth</span> <code class="email">&lt;tchollingsworth@gmail.com&gt;</code></p></div></div></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="snippets-intro"></a>Introduction</h3></div></div></div><p><span class="application">Kate</span> Snippets is a plugin used to save you some time by adding support for
so-called <span class="quote">“<span class="quote">snippets</span>”</span> (re-usable source code, machine code or text). The plugin
also supports code completion and <span class="application">JavaScript</span>.</p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="snippets-menu"></a>Menu Structure</h3></div></div></div><div class="variablelist"><dl class="variablelist"><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">View</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Tool Views</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Show Snippets</span></span></span></dt><dd><p>Shows snippets panel containing all snippets in your repository
that are for the currently opened file type.</p></dd><dt><a name="tools-create-snippet"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Tools</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Create Snippet</span></span></span></dt><dd><p>Create a new snippet, which is a reusable chunk of text you
may insert in any part of any document.</p></dd></dl></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="snippets-panel"></a>Snippets panel</h3></div></div></div><div class="screenshot"><a name="screenshot-snippets-panel"></a><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="snippets-panel.png" alt="The Kate snippets panel."><div class="caption"><p>The panel for <span class="application">Kate</span> Snippets.</p></div></div></div><p>In the panel you should see a list of snippet repositories,
along with options to create your own, get them from the Internet or load
them from a local file.  Each repository has a checkbox that can be used to
activate or deactivate it.  There are also buttons to edit and delete existing
repositories.</p><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="snippets-repo-internet"></a>Loading Snippet Repository Files</h4></div></div></div><p>You can download snippet repositories from the Internet.  Just click
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guibutton">Get New Snippets</span></span> and a window with a list of snippet
repositories will open.  After downloading the desired snippet, make sure that
you have activated it.</p></div><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="snippets-repo-editor"></a>Creating and Editing Repositories</h4></div></div></div><p>To create a new snippet repository, click <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guibutton">Add Repository</span></span>.
You should now see a dialog that asks for the name of the snippet file, license and
author. After choosing the desired options, click <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guibutton">OK</span></span>.</p><div class="screenshot"><a name="screenshot-snippets-repository"></a><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="snippets-repository.png" alt="The repository editor."><div class="caption"><p>The repository editor interface.</p></div></div></div><p>The snippet repository editor contains the following options:</p><div class="variablelist"><dl class="variablelist"><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Name</span></span></span></dt><dd><p>Appears in the list of snippets in the tool view and is also
searched when using the code completion feature.</p></dd><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Namespace</span></span></span></dt><dd><p>Prefix used while using code completion.</p></dd><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">License</span></span></span></dt><dd><p>Select the license for you snippet repository.</p></dd><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Authors</span></span></span></dt><dd><p>Enter the name(s) of the author(s) of the snippet file.</p></dd><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">File types</span></span></span></dt><dd><p>Select the file type(s) you want the snippet repository to apply
to.  It is set to <span class="quote">“<span class="quote"></span>”</span> by default, so the repository applies to all files. You
can change it to something like <strong class="userinput"><code>C++</code></strong> for instance, or select
from a list by clicking on the items.  You can specify more
than one file type pressing the <span class="keycap"><strong>Shift</strong></span> while adding types.</p></dd></dl></div></div><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="snippets-editor"></a>Creating and Editing Snippets</h4></div></div></div><div class="screenshot"><a name="screenshot-snippets-form"></a><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="snippets-form.png" alt="The snippet editor."><div class="caption"><p>The snippet editor interface.</p></div></div></div><div class="variablelist"><dl class="variablelist"><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Name</span></span></span></dt><dd><p>The name will be shown in the completion list.</p></dd><dt><span class="term">Shortcut</span></dt><dd><p>Pressing this shortcut will insert the snippet into the document.</p></dd><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Snippets</span></span></span></dt><dd><p>The text your snippet will insert into the document.</p><p>A snippet can contain editable fields. They can be cycled by
pressing <span class="keycap"><strong>Tab</strong></span>. The following expressions can be used in the template
text to create fields:</p><p><strong class="userinput"><code>${<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="replaceable"><em class="replaceable"><code>field_name</code></em></span>}</code></strong> creates a
simple, editable field. All subsequent occurrences of the same
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="replaceable"><em class="replaceable"><code>field_name</code></em></span> create fields which mirror the contents
of the first during editing.</p><p><strong class="userinput"><code>${<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="replaceable"><em class="replaceable"><code>field_name=default</code></em></span>}</code></strong>
can be used to specify a default value for the field.
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="replaceable"><em class="replaceable"><code>default</code></em></span> can be any <span class="application">JavaScript</span> expression.</p><p>Use <strong class="userinput"><code>${<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="replaceable"><em class="replaceable"><code>field_name</code></em></span>=<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="replaceable"><em class="replaceable"><code>text</code></em></span>}</code></strong>
to specify a fixed string as default value.</p><p><strong class="userinput"><code>${func(<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="replaceable"><em class="replaceable"><code>other_field1</code></em></span>,
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="replaceable"><em class="replaceable"><code>other_field2</code></em></span>, ...)}</code></strong> can be used to create a
field which evaluates a <span class="application">JavaScript</span> function on each edit and contains its
contents. See the <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Scripts</span></span> tab for more information.</p><p><strong class="userinput"><code>${cursor}</code></strong> can be used to mark the end position
of the cursor after everything else was filled in.</p></dd><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Scripts</span></span></span></dt><dd><p><span class="application">JavaScript</span> helper functions to use in your snippets.</p><p>All <span class="application">JavaScript</span> functions should return the contents you want to place in a
template field as a string.</p><p>Functions are called in a scope which contains the contents of all
editable template fields as local variables. For example in a snippet
containing <strong class="userinput"><code>${<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="replaceable"><em class="replaceable"><code>field</code></em></span>}</code></strong>,
a variable called <strong class="userinput"><code>field</code></strong> will be present which contains
the up-to-date contents of the template field. Those variables can either
be used in the function statically or passed as arguments, by using the
<strong class="userinput"><code>${func(field)}</code></strong> or <strong class="userinput"><code>${<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="replaceable"><em class="replaceable"><code>field2=func(field)</code></em></span>}</code></strong>
syntax in the snippet string.</p><p>You can use
the <a class="ulink" href="help:/katepart/dev-scripting.html#dev-scripting-api" target="_top"><span class="application">Kate</span> scripting API</a>
to get the selected text, full text, file name and
more by using the appropriate methods of the <strong class="userinput"><code>document</code></strong>
and <strong class="userinput"><code>view</code></strong> objects. Refer to the scripting API
documentation for more information.</p><p>For more complex scripts it may be important to understand that
<span class="emphasis"><em>first</em></span>, the raw snippet is inserted into the document, and <span class="emphasis"><em>then</em></span>
functions are being evaluated. E.g., if a function retrieves the text on the
line where the snippet is being inserted, that text will also contain
<strong class="userinput"><code>${functionCall()}</code></strong>.</p><p>As an example of working with selections using the scripting API, a simple way
to wrap selected text inside tags is this snippet:
<strong class="userinput"><code>&lt;strong&gt;${view.selectedText()}&lt;/strong&gt;</code></strong>
</p><p>The following example invokes a script that inserts a default text in case
there is no selection. Snippet:</p><p>
<strong class="userinput"><code>${rangeCommand("&lt;strong&gt;%%1&lt;/strong&gt;", "Bold")}</code></strong></p><p>Script:
</p><pre class="programlisting">
function rangeCommand(command, def) {
    if (view.selectedText().length &gt; 0) {
        return command.replace("%%1", view.selectedText());
    } else {
        return command.replace("%%1", def);
    }
}
</pre><p>
</p></dd></dl></div></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="snippets-using"></a>Using Snippets</h3></div></div></div><div class="screenshot"><a name="screenshot-snippets-usage"></a><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="snippets-usage.png" alt="Accessing Kate Snippets from a tool view and a drop down menu."><div class="caption"><p>Selecting from a list of snippets.</p></div></div></div><p>You can call snippets in two ways:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>By choosing the snippet from the tool view.</p></li><li class="listitem"><p>While writing, you can press <span class="keycap"><strong>Ctrl</strong></span>+<span class="keysym">Space</span>, which will display all the snippets in a
convenient window from which you can choose.  This key combination provides
functionality similar to code completion.</p></li></ul></div><p>If the snippet contains variables (besides <code class="literal">${cursor}</code>)
the cursor will automatically go to the first occurrence of a variable and will
wait for you to write something. When you are done, you can press <span class="keycap"><strong>Tab</strong></span> to move
to the next variable, and so on.</p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="snippets-ack"></a>Thanks and Acknowledgments</h3></div></div></div><p><span class="application">Kate</span> Snippets was written by Joseph Wenninger.</p><p>Special thanks to Google Code-In 2011 participant Martin Gergov for
writing much of this section.</p></div></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="kate-application-plugin-searchinfiles.html">Prev</a></td><td class="upCell"><a accesskey="h" href="index.html">Contents</a></td><td class="nextCell"><a accesskey="n" href="kate-application-plugin-keyboardmacros.html">Next</a></td></tr><tr><td class="prevCell">Search &amp; Replace </td><td class="upCell">Working with Plugins</td><td class="nextCell"> Keyboard Macros Plugin</td></tr></table></div><div id="footer_text">Would you like to make a comment or contribute an update to this page?<br>Send feedback to the <a href="mailto:kde-doc-english@kde.org" class="footer_email">KDE Docs Team</a></div></div></div></body></html></FILENAME><FILENAME filename="kate-application-plugin-keyboardmacros.html"><html><head><title>Keyboard Macros Plugin</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, kdebase, Kate, text, editor, programmer, programming, projects, MDI, Multi, Document, Interface, terminal, console"><link rel="home" href="index.html" title="The Kate Handbook"><link rel="up" href="plugins.html" title="Chapter 4. Working with Plugins"><link rel="prev" href="kate-application-plugin-snippets.html" title="Kate Snippets"><link rel="next" href="kate-application-plugin-sql.html" title="SQL Plugin"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> Keyboard Macros Plugin</div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="kate-application-plugin-snippets.html">Prev</a></td><td class="upCell">Working with Plugins</td><td class="nextCell"><a accesskey="n" href="kate-application-plugin-sql.html">Next</a></td></tr></table></div><div id="contentBody"><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="kate-application-plugin-keyboardmacros"></a>Keyboard Macros Plugin</h2></div><div><div class="authorgroup"><p class="author"><span class="firstname">Pablo</span> <span class="surname">Rauzy</span> <code class="email">&lt;r .at. uzy.me&gt;</code></p></div></div></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="keyboardmacros-intro"></a>Introduction</h3></div></div></div><p>Record and play keyboard macros (i.e., keyboard action sequences).</p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="keyboardmacros-basicusage"></a>Basic usage</h3></div></div></div><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="keyboardmacros-basicusage-record"></a>To start recording a keyboard macro:</h4></div></div></div><p>
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Tools</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Keyboard Macros</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Record Macro...</span></span>
(<span class="keycap"><strong>Ctrl</strong></span>+<span class="keycap"><strong>Shift</strong></span>+<span class="keycap"><strong>K</strong></span>).
</p><p>The plugin will record every key presses until you end recording.</p></div><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="keyboardmacros-basicusage-record-end"></a>To end recording:</h4></div></div></div><p>
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Tools</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Keyboard Macros</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">End Macro Recording</span></span>
(<span class="keycap"><strong>Ctrl</strong></span>+<span class="keycap"><strong>Shift</strong></span>+<span class="keycap"><strong>K</strong></span>).
</p><p>The plugin will stop recording key presses and save the sequence as the current macro.</p></div><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="keyboardmacros-basicusage-record-cancel"></a>To cancel recording:</h4></div></div></div><p>
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Tools</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Keyboard Macros</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Cancel Macro Recording</span></span>
(<span class="keycap"><strong>Ctrl</strong></span>+<span class="keycap"><strong>Alt</strong></span>+<span class="keycap"><strong>Shift</strong></span>+<span class="keycap"><strong>K</strong></span>).
</p><p>The plugin will stop recording key presses but the current macro won't change.</p></div><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="keyboardmacros-basicusage-play"></a>To play the current macro:</h4></div></div></div><p>
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Tools</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Keyboard Macros</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Play Macro</span></span>
(<span class="keycap"><strong>Ctrl</strong></span>+<span class="keycap"><strong>Alt</strong></span>+<span class="keycap"><strong>K</strong></span>).
</p><p>The plugin will play the current macro.</p><p>The <strong class="userinput"><code>kmplay</code></strong> command without any arguments will also play the current macro.</p></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="keyboardmacros-namedmacros"></a>Named macros</h3></div></div></div><p>It is possible to save keyboard macros by giving them a name.</p><p>Named macros are persistent between Kate's sessions, they're saved in the <code class="filename">keyboardmacros.json</code> file in Kate's user data directory (usually <code class="filename">~/.local/share/kate/</code>).</p><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="keyboardmacros-namedmacros-save"></a>To save the current macro:</h4></div></div></div><p>
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Tools</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Keyboard Macros</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Save Current Macro</span></span>
(<span class="keycap"><strong>Alt</strong></span>+<span class="keycap"><strong>Shift</strong></span>+<span class="keycap"><strong>K</strong></span>).
</p><p>The plugin will prompt you for a name and save the macro under it.</p><p>The <strong class="userinput"><code>kmsave <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="replaceable"><em class="replaceable"><code>name</code></em></span></code></strong> command will save the current macro under the name <strong class="userinput"><code><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="replaceable"><em class="replaceable"><code>name</code></em></span></code></strong>.</p></div><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="keyboardmacros-namedmacros-load"></a>To load a saved macro as the current one:</h4></div></div></div><p>
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Tools</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Keyboard Macros</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Load Named Macro...</span></span>.
</p><p>The plugin lists saved macros as items in this submenu, activating an item will load the corresponding macro as the current one.</p><p>The <strong class="userinput"><code>kmload <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="replaceable"><em class="replaceable"><code>name</code></em></span></code></strong> command will load the macro saved under the name <strong class="userinput"><code><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="replaceable"><em class="replaceable"><code>name</code></em></span></code></strong> as the current one.</p></div><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="keyboardmacros-namedmacros-play"></a>To play a saved macro without loading it:</h4></div></div></div><p>
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Tools</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Keyboard Macros</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Play Named Macro...</span></span>.
</p><p>The plugin lists saved macros as items in this submenu, activating an item will play the corresponding macro without loading it.</p><p>Note that each saved macros is an action that is part of the current action collection so that a custom shortcut can be assigned to it through the <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Settings</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Configure Keyboard Shortcuts...</span></span> interface.</p><p>The <strong class="userinput"><code>kmplay <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="replaceable"><em class="replaceable"><code>name</code></em></span></code></strong> command will play the macro saved under the name <strong class="userinput"><code><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="replaceable"><em class="replaceable"><code>name</code></em></span></code></strong> without loading it.</p></div><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="keyboardmacros-namedmacros-wipe"></a>To wipe (i.e., delete) a saved macro:</h4></div></div></div><p>
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Tools</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Keyboard Macros</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Wipe Named Macro...</span></span>.
</p><p>The plugin lists saved macros as items in this submenu, activating an item will wipe (i.e., delete) the corresponding macro.</p><p>The <strong class="userinput"><code>kmwipe <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="replaceable"><em class="replaceable"><code>name</code></em></span></code></strong> command will wipe the macro saved under the name <strong class="userinput"><code><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="replaceable"><em class="replaceable"><code>name</code></em></span></code></strong>.</p></div><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="keyboardmacros-namedmacros-command-tips"></a>Tips for commands:</h4></div></div></div><p>Note that after the <strong class="userinput"><code>km</code></strong> prefix, all these commands use a different letter so you can efficiently call them using tab-completion!</p></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="keyboardmacros-limitations"></a>Limitations</h3></div></div></div><p>As of now, keyboard macros fail to play properly if some types of GUI widgets are used: QMenu, QuickOpenLineEdit, or TabSwitcherTreeView, for example.
I'm not sure why but my first guess would be that these widgets work in a non-standard way regarding keyboard events.</p></div></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="kate-application-plugin-snippets.html">Prev</a></td><td class="upCell"><a accesskey="h" href="index.html">Contents</a></td><td class="nextCell"><a accesskey="n" href="kate-application-plugin-sql.html">Next</a></td></tr><tr><td class="prevCell"><span class="application">Kate</span> Snippets </td><td class="upCell">Working with Plugins</td><td class="nextCell"> SQL Plugin</td></tr></table></div><div id="footer_text">Would you like to make a comment or contribute an update to this page?<br>Send feedback to the <a href="mailto:kde-doc-english@kde.org" class="footer_email">KDE Docs Team</a></div></div></div></body></html></FILENAME><FILENAME filename="kate-application-plugin-sql.html"><html><head><title>SQL Plugin</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, kdebase, Kate, text, editor, programmer, programming, projects, MDI, Multi, Document, Interface, terminal, console"><link rel="home" href="index.html" title="The Kate Handbook"><link rel="up" href="plugins.html" title="Chapter 4. Working with Plugins"><link rel="prev" href="kate-application-plugin-keyboardmacros.html" title="Keyboard Macros Plugin"><link rel="next" href="kate-application-plugin-symbolviewer.html" title="Symbol Viewer Plugin"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> SQL Plugin</div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="kate-application-plugin-keyboardmacros.html">Prev</a></td><td class="upCell">Working with Plugins</td><td class="nextCell"><a accesskey="n" href="kate-application-plugin-symbolviewer.html">Next</a></td></tr></table></div><div id="contentBody"><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="kate-application-plugin-sql"></a>SQL Plugin</h2></div><div><div class="authorgroup"><p class="author"><span class="firstname">Ömer</span> <span class="othername">Faruk</span> <span class="surname">ORUÇ</span> </p><p class="author"><span class="firstname">T.C.</span> <span class="surname">Hollingsworth</span> <code class="email">&lt;tchollingsworth@gmail.com&gt;</code></p></div></div></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="sql-intro"></a>Introduction</h3></div></div></div><p>The Structured Query Language (SQL) is a specialized language for updating,
deleting, and requesting information from databases.</p><p>The <span class="application">Kate</span> SQL Plugin allows you to:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>Create a database</p></li><li class="listitem"><p>Connect to existing databases</p></li><li class="listitem"><p>Insert and delete data in the database</p></li><li class="listitem"><p>Execute queries</p></li><li class="listitem"><p>Display results in a table</p></li></ul></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="sql-connecting"></a>Connecting to a Database</h3></div></div></div><p>Select <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guibutton">Add Connection</span></span> from the <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">SQL</span></span>
menu or toolbar, and then select the <span class="trademark">Qt</span>™ database driver you want to use (including
QSQLITE, QMYSQL3, QMYSQL, QODBC3, QODBC, QPSQL7, and QPSQL).  If you can't see
the desired driver, you need to install it.  Then, press <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guibutton">Next</span></span>.
</p><p>If the database you selected uses a file, simply indicate the database's
location and press the <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guibutton">Next</span></span> button.  If it requires connecting
to a server, you must enter the hostname of the server, your username and password,
and any other information that particular driver may require. Then press
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guibutton">Next</span></span>.</p><p>Finally, give a name to your connection, and press <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guibutton">Finish</span></span>.</p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="sql-querying"></a>Running Queries</h3></div></div></div><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="sql-querying-insert-delete-update"></a>INSERT/DELETE/UPDATE</h4></div></div></div><p>You can insert, delete, and update data using the SQL plugin just as
you would from the command line or from within a program.  Simply enter a query
and press the <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guibutton">Run query</span></span> button in the toolbar or
use <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">SQL</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Run query</span></span>
(<span class="keycap"><strong>Ctrl</strong></span>+<span class="keycap"><strong>E</strong></span>).</p><div class="example"><a name="idm3367"></a><p class="title"><b>Example 4.1. Some Example Queries</b></p><div class="example-contents"><div class="variablelist"><dl class="variablelist"><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="command"><span class="command"><strong>INSERT</strong></span></span></span></dt><dd><pre class="programlisting">
INSERT INTO <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="replaceable"><em class="replaceable"><code>table_name</code></em></span> ("<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="replaceable"><em class="replaceable"><code>feature1</code></em></span>", "<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="replaceable"><em class="replaceable"><code>feature2</code></em></span>", "<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="replaceable"><em class="replaceable"><code>feature3</code></em></span>", "<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="replaceable"><em class="replaceable"><code>feature4</code></em></span>", "<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="replaceable"><em class="replaceable"><code>feature5</code></em></span>")
VALUES ("<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="replaceable"><em class="replaceable"><code>value1</code></em></span>", "<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="replaceable"><em class="replaceable"><code>value2</code></em></span>", "<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="replaceable"><em class="replaceable"><code>value3</code></em></span>", "<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="replaceable"><em class="replaceable"><code>value4</code></em></span>", "<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="replaceable"><em class="replaceable"><code>value5</code></em></span>" )
</pre></dd><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="command"><span class="command"><strong>DELETE</strong></span></span></span></dt><dd><pre class="programlisting">
DELETE FROM <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="replaceable"><em class="replaceable"><code>table_name</code></em></span> WHERE name = "<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="replaceable"><em class="replaceable"><code>text</code></em></span>"
</pre></dd><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="command"><span class="command"><strong>UPDATE</strong></span></span></span></dt><dd><pre class="programlisting">
UPDATE <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="replaceable"><em class="replaceable"><code>table_name</code></em></span> SET "<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="replaceable"><em class="replaceable"><code>feature1</code></em></span>" = "<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="replaceable"><em class="replaceable"><code>text</code></em></span>", "<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="replaceable"><em class="replaceable"><code>feature2</code></em></span>" = "<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="replaceable"><em class="replaceable"><code>text</code></em></span>", "<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="replaceable"><em class="replaceable"><code>feature3</code></em></span>" = "<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="replaceable"><em class="replaceable"><code>text</code></em></span>", "<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="replaceable"><em class="replaceable"><code>feature4</code></em></span>" = "<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="replaceable"><em class="replaceable"><code>text</code></em></span>", "<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="replaceable"><em class="replaceable"><code>feature5</code></em></span>" = "<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="replaceable"><em class="replaceable"><code>text</code></em></span>"
</pre></dd></dl></div></div></div><br class="example-break"></div><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="sql-querying-select"></a>SELECT</h4></div></div></div><p>After running a  <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="command"><span class="command"><strong>SELECT</strong></span></span> query, you can view the results
as a table that will appear in the <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">SQL Data Output</span></span> tool view at
the bottom of <span class="application">Kate</span>, or as text in the <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">SQL Text Output</span></span>.
If there is an error, you can see it in the text output.</p><div class="example"><a name="idm3419"></a><p class="title"><b>Example 4.2. Example <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="command"><span class="command">SELECT</span></span> Query</b></p><div class="example-contents"><pre class="programlisting">
SELECT * FROM <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="replaceable"><em class="replaceable"><code>table_name</code></em></span>
</pre></div></div><br class="example-break"><p>In the <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">SQL Data Output</span></span> tool view, there are several buttons:</p><div class="variablelist"><dl class="variablelist"><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guibutton">Resize columns to contents</span></span></span></dt><dd><p>Changes the size of columns to fit their contents.</p></dd><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guibutton">Resize rows to contents</span></span></span></dt><dd><p>Changes the size of rows to fit their contents.</p></dd><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guibutton">Copy</span></span></span></dt><dd><p>Selects all of the table contents and copies it to the clipboard buffer.</p></dd><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guibutton">Export</span></span></span></dt><dd><p>Exports all of the table contents to a file, the clipboard, or the
current document in the Comma Separated Values format.</p></dd><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guibutton">Clear</span></span></span></dt><dd><p>Removes everything from the table view.</p></dd></dl></div><p>You can now change the colors displayed in the table in the <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">SQL</span></span>
section of <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Settings</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Configure <span class="application">Kate</span>...</span></span>.</p></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="sql-browsing"></a>Browsing</h3></div></div></div><p>You can browse your database using the <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Database schema</span></span> browser
tool view on the left.  The information displayed varies depending on which
database driver you are using.</p><p>To refresh this list, right-click anywhere in the tool view and select
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Refresh</span></span>.  To generate a query on any entry in the list,
right-click on an entry, select <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Generate</span></span>, and select the
query type (<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">SELECT</span></span>, <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">UPDATE</span></span>,
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">INSERT</span></span>, or <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">DELETE</span></span>) from
the submenu that appears.</p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="sql-menus"></a>Menu Structure</h3></div></div></div><div class="variablelist"><dl class="variablelist"><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">SQL</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Add connection...</span></span></span></dt><dd><p>
Adds a new connection using any database driver.
</p></dd><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">SQL</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Remove connection</span></span></span></dt><dd><p>
Removes the selected connection.
</p></dd><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">SQL</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Edit connection...</span></span></span></dt><dd><p>
Edits the current connection's settings.
</p></dd><dt><span class="term">Connections</span></dt><dd><p>
All database connections you have created are listed between the
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Edit connection</span></span> and <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Run query</span></span>
menu items.  Select one to run queries or make modifications to it.
</p></dd><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">SQL</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Run query</span></span> (<span class="shortcut"><strong><span class="keycap"><strong>Ctrl</strong></span>+<span class="keycap"><strong>E</strong></span></strong></span>)</span></dt><dd><p>
Runs your query.
</p></dd></dl></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="sql-ack"></a>Thanks and Acknowledgments</h3></div></div></div><p>The SQL Plugin was written by Marco Mentasti.</p><p>Special thanks to Google Code-In 2011 participant Ömer Faruk ORUÇ for
writing much of this section.</p></div></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="kate-application-plugin-keyboardmacros.html">Prev</a></td><td class="upCell"><a accesskey="h" href="index.html">Contents</a></td><td class="nextCell"><a accesskey="n" href="kate-application-plugin-symbolviewer.html">Next</a></td></tr><tr><td class="prevCell">Keyboard Macros Plugin </td><td class="upCell">Working with Plugins</td><td class="nextCell"> Symbol Viewer Plugin</td></tr></table></div><div id="footer_text">Would you like to make a comment or contribute an update to this page?<br>Send feedback to the <a href="mailto:kde-doc-english@kde.org" class="footer_email">KDE Docs Team</a></div></div></div></body></html></FILENAME><FILENAME filename="kate-application-plugin-symbolviewer.html"><html><head><title>Symbol Viewer Plugin</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, kdebase, Kate, text, editor, programmer, programming, projects, MDI, Multi, Document, Interface, terminal, console"><link rel="home" href="index.html" title="The Kate Handbook"><link rel="up" href="plugins.html" title="Chapter 4. Working with Plugins"><link rel="prev" href="kate-application-plugin-sql.html" title="SQL Plugin"><link rel="next" href="kate-application-plugin-konsole.html" title="Terminal Tool View Plugin"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> Symbol Viewer Plugin</div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="kate-application-plugin-sql.html">Prev</a></td><td class="upCell">Working with Plugins</td><td class="nextCell"><a accesskey="n" href="kate-application-plugin-konsole.html">Next</a></td></tr></table></div><div id="contentBody"><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="kate-application-plugin-symbolviewer"></a>Symbol Viewer Plugin</h2></div></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="symbolviewer-using"></a>Using the Close Except/Like Plugin</h3></div></div></div><p>It allows developers to view symbols (functions, macros and structures) from source code.</p><p>By clicking the parsed information you can easily browse the code.</p><p>At the moment the following languages are supported:</p><p>C/C++, <span class="trademark">Java</span>™, Perl, PHP, Python, Ruby, XSLT, Tcl/Tk, Fortran</p><p>Feature list:</p><table border="0" summary="Simple list" class="simplelist"><tr><td>List/Tree mode</td></tr><tr><td>Enable/disable sorting</td></tr><tr><td>Hide/Show Functions Parameters</td></tr><tr><td>Expand/collapse tree mode</td></tr><tr><td>Auto-update on document change</td></tr><tr><td>Code parsing is based on the Syntax-Highlighting framework from <span class="productname"><span class="orgname">KDE</span> Frameworks</span></td></tr></table></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="symbolviewer-menu"></a>Menu Structure</h3></div></div></div><div class="variablelist"><dl class="variablelist"><dt><a name="tools-symbolviewer"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">View</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Tool Views</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Show Symbol List</span></span> (<span class="shortcut"><strong><span class="keycap"><strong>Ctrl</strong></span>+<span class="keycap"><strong>\</strong></span></strong></span>)</span></dt><dd><p>Toggle the display of <span class="application">Kate</span>'s Symbol List displaying Functions, Macros and
Structures of the source code in the active document.</p></dd></dl></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="symbolviewer-config"></a>Configuration</h3></div></div></div><div class="screenshot"><a name="screenshot-symbolviewer-settings"></a><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="symbolviewer-settings.png"><div class="caption"><p>Choose the default parser options</p></div></div></div></div></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="kate-application-plugin-sql.html">Prev</a></td><td class="upCell"><a accesskey="h" href="index.html">Contents</a></td><td class="nextCell"><a accesskey="n" href="kate-application-plugin-konsole.html">Next</a></td></tr><tr><td class="prevCell">SQL Plugin </td><td class="upCell">Working with Plugins</td><td class="nextCell"> Terminal Tool View Plugin</td></tr></table></div><div id="footer_text">Would you like to make a comment or contribute an update to this page?<br>Send feedback to the <a href="mailto:kde-doc-english@kde.org" class="footer_email">KDE Docs Team</a></div></div></div></body></html></FILENAME><FILENAME filename="kate-application-plugin-konsole.html"><html><head><title>Terminal Tool View Plugin</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, kdebase, Kate, text, editor, programmer, programming, projects, MDI, Multi, Document, Interface, terminal, console"><link rel="home" href="index.html" title="The Kate Handbook"><link rel="up" href="plugins.html" title="Chapter 4. Working with Plugins"><link rel="prev" href="kate-application-plugin-symbolviewer.html" title="Symbol Viewer Plugin"><link rel="next" href="kate-application-plugin-textfilter.html" title="Text Filter Plugin"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> Terminal Tool View Plugin</div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="kate-application-plugin-symbolviewer.html">Prev</a></td><td class="upCell">Working with Plugins</td><td class="nextCell"><a accesskey="n" href="kate-application-plugin-textfilter.html">Next</a></td></tr></table></div><div id="contentBody"><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="kate-application-plugin-konsole"></a>Terminal Tool View Plugin</h2></div></div></div><p><a class="indexterm" name="idm3562"></a>
The built in Terminal Emulator is a copy of the <span class="orgname">KDE</span> <span class="application">Konsole</span>
terminal application, for your convenience. It is available from the
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">View</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Tool Views</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Show Terminal Panel</span></span> menu item and will get the focus
whenever displayed. Additionally, if the <a class="link" href="kate-application-plugin-konsole.html#konsole-config" title="Configuration">Automatically synchronize
the terminal with the current document when possible</a> option is enabled, it will
change to the directory of the current document if
possible when it is displayed, or when the current document
changes.</p><p>The default location in the <span class="application">Kate</span> window is at the bottom,
below the editing area.</p><p>You can configure the <span class="application">Konsole</span> using its <span class="mousebutton">right</span> mouse button menu, for more
information, see the <a class="ulink" href="help:/konsole/index.html" target="_top"><span class="application">Konsole</span> manual</a>.</p><p>The built-in terminal emulator is provided by the Terminal Tool View plugin.</p><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="konsole-menus"></a>Menu Structure</h3></div></div></div><div class="variablelist"><dl class="variablelist"><dt><a name="view-toolviews-show-terminal"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">View</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Tool Views</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Show Terminal Panel</span></span></span></dt><dd><p>Toggles the display of the built-in terminal emulator.</p><p>When activated for the first time, the terminal will be created.</p><p>When the terminal emulator is displayed, it will get the focus, so that
you can start typing in commands immediately. If the <a class="link" href="kate-application-plugin-konsole.html#konsole-config" title="Configuration">Automatically synchronize the terminal
with the current document when possible</a> option is enabled in the
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Terminal</span></span> page of the <a class="link" href="config-dialog.html" title="The Kate Application Configuration">Main configuration dialog</a> the shell session will
change to the directory of the active document, if it is a local file.</p></dd><dt><a name="view-toolviews-pipe-to-terminal"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Tools</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Pipe to
Terminal</span></span></span></dt><dd><p>Feed the currently selected text into the built-in terminal
emulator. No newline is added after the text.</p></dd><dt><a name="tools-sync-terminal-document"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Tools</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Synchronize Terminal with Current Document</span></span></span></dt><dd><p>This will cause the built-in Terminal to <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="command"><span class="command"><strong>cd</strong></span></span> into the
directory of the active document.</p><p>Alternatively, you can configure <span class="application">Kate</span> to always keep the terminal in
sync with the current document.  See
<a class="xref" href="kate-application-plugin-konsole.html#konsole-config" title="Configuration">the section called “Configuration”</a> for more information.</p></dd><dt><a name="tools-focus-terminal"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Tools</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Focus/Defocus Terminal Panel</span></span></span></dt><dd><p>Switch the focus from the current document to the terminal and vice versa.
</p></dd></dl></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="konsole-config"></a>Configuration</h3></div></div></div><p>You can configure the Terminal Tool View plugin on the
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Terminal</span></span> page of the
<a class="link" href="configuring-kate.html" title="Chapter 9. Configuring Kate">configuration dialog</a>.</p><p>The following options are available:</p><div class="variablelist"><dl class="variablelist"><dt><span class="term">
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Automatically synchronize the terminal with the current document when possible</span></span></span></dt><dd><p>This will cause the built-in terminal to
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="command"><span class="command"><strong>cd</strong></span></span> into the directory of the active document when
launched and when a new document gets the focus. If not enabled, you
have to do all your navigation in the terminal on your own.
</p></dd><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Set EDITOR environment variable to 'kate -b'</span></span></span></dt><dd><p>This sets the <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="envar"><code class="envar">EDITOR</code></span> environment variable so programs
run in the built-in terminal that automatically open a file in an editor will open
them in <span class="application">Kate</span> instead of the default editor configured in your shell.  You will
not be able to continue using the terminal until you have closed the file in <span class="application">Kate</span>,
so the calling program is aware you have finished editing the file.</p></dd><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Hide <span class="application">Konsole</span> on pressing 'Esc'</span></span></span></dt><dd><p>This allows closing the built-in terminal by pressing the <span class="keycap"><strong>Esc</strong></span> key. May cause issues with terminal applications
that use <span class="keycap"><strong>Esc</strong></span> key, <abbr class="abbrev">e.g.</abbr> <span class="application">vim</span>. Add such applications in the text input box below.
The items in the list should be separated with comma.</p></dd></dl></div></div></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="kate-application-plugin-symbolviewer.html">Prev</a></td><td class="upCell"><a accesskey="h" href="index.html">Contents</a></td><td class="nextCell"><a accesskey="n" href="kate-application-plugin-textfilter.html">Next</a></td></tr><tr><td class="prevCell">Symbol Viewer Plugin </td><td class="upCell">Working with Plugins</td><td class="nextCell"> Text Filter Plugin</td></tr></table></div><div id="footer_text">Would you like to make a comment or contribute an update to this page?<br>Send feedback to the <a href="mailto:kde-doc-english@kde.org" class="footer_email">KDE Docs Team</a></div></div></div></body></html></FILENAME><FILENAME filename="kate-application-plugin-textfilter.html"><html><head><title>Text Filter Plugin</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, kdebase, Kate, text, editor, programmer, programming, projects, MDI, Multi, Document, Interface, terminal, console"><link rel="home" href="index.html" title="The Kate Handbook"><link rel="up" href="plugins.html" title="Chapter 4. Working with Plugins"><link rel="prev" href="kate-application-plugin-konsole.html" title="Terminal Tool View Plugin"><link rel="next" href="kate-application-plugin-xmlcheck.html" title="XML Validation"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> Text Filter Plugin</div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="kate-application-plugin-konsole.html">Prev</a></td><td class="upCell">Working with Plugins</td><td class="nextCell"><a accesskey="n" href="kate-application-plugin-xmlcheck.html">Next</a></td></tr></table></div><div id="contentBody"><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="kate-application-plugin-textfilter"></a>Text Filter Plugin</h2></div></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="textfilter-using"></a>Using the Text Filter Plugin</h3></div></div></div><p>You can use this plugin to process selected text using terminal commands.
The selection will be used as input for the command, and the output will either
replace the selection or be copied to the clipboard, depending on the user's preference.
</p><div class="itemizedlist"><p class="title"><b>Examples:</b></p><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="command"><span class="command"><strong>less /etc/fstab</strong></span></span> - paste the contents of this file or copy it to the clipboard
</p></li><li class="listitem"><p>
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="command"><span class="command"><strong>wc</strong></span></span> - count lines, words and characters of the selection and
paste this into the document or copy it to the clipboard
</p></li><li class="listitem"><p>
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="command"><span class="command"><strong>sort</strong></span></span> - sort lines of the selection and paste the result into
the document or copy it to the clipboard
</p></li></ul></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="textfilter-menu"></a>Menu Structure</h3></div></div></div><div class="variablelist"><dl class="variablelist"><dt><a name="tools-textfilter"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Tools</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Filter Text</span></span> (<span class="shortcut"><strong><span class="keycap"><strong>Ctrl</strong></span>+<span class="keycap"><strong>\</strong></span></strong></span>)</span></dt><dd><p><span class="action">Opens</span> the Text Filter dialog:</p><div class="screenshot"><a name="screenshot-filtertext"></a><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="textfilter.png"></div></div><p>Enter the shell command into the combobox or select a previous command from the history.</p><div class="variablelist"><dl class="variablelist"><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Copy the result instead of pasting it</span></span></span></dt><dd><p>Copy the result to clipboard leaving a document unchanged.</p></dd><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Merge STDOUT and STDERR</span></span></span></dt><dd><p>
If checked, an output from STDOUT and STDERR will be merged and no errors will be reported.
Otherwise, STDERR will be displayed as a passive message.</p></dd></dl></div></dd></dl></div></div></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="kate-application-plugin-konsole.html">Prev</a></td><td class="upCell"><a accesskey="h" href="index.html">Contents</a></td><td class="nextCell"><a accesskey="n" href="kate-application-plugin-xmlcheck.html">Next</a></td></tr><tr><td class="prevCell">Terminal Tool View Plugin </td><td class="upCell">Working with Plugins</td><td class="nextCell"> <acronym class="acronym">XML</acronym> Validation</td></tr></table></div><div id="footer_text">Would you like to make a comment or contribute an update to this page?<br>Send feedback to the <a href="mailto:kde-doc-english@kde.org" class="footer_email">KDE Docs Team</a></div></div></div></body></html></FILENAME><FILENAME filename="kate-application-plugin-xmlcheck.html"><html><head><title>XML Validation</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, kdebase, Kate, text, editor, programmer, programming, projects, MDI, Multi, Document, Interface, terminal, console"><link rel="home" href="index.html" title="The Kate Handbook"><link rel="up" href="plugins.html" title="Chapter 4. Working with Plugins"><link rel="prev" href="kate-application-plugin-textfilter.html" title="Text Filter Plugin"><link rel="next" href="kate-application-plugin-xmltools.html" title="XML Completion"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> <acronym class="acronym">XML</acronym> Validation</div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="kate-application-plugin-textfilter.html">Prev</a></td><td class="upCell">Working with Plugins</td><td class="nextCell"><a accesskey="n" href="kate-application-plugin-xmltools.html">Next</a></td></tr></table></div><div id="contentBody"><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="kate-application-plugin-xmlcheck"></a><acronym class="acronym">XML</acronym> Validation</h2></div><div><div class="authorgroup"><p class="author"><span class="firstname">Daniel</span> <span class="surname">Naber</span> <code class="email">&lt;daniel.naber@t-online.de&gt;</code></p></div></div></div></div><p>This plugin checks <acronym class="acronym">XML</acronym> files for validity and being well-formed.</p><p>This plugin checks the current file. A list of warnings and errors
will appear at the bottom of <span class="application">Kate</span>'s main window. You can click on an error message
to jump to the corresponding place in the file. If the file has a <span class="quote">“<span class="quote">DOCTYPE</span>”</span>
the DTD given with this doctype will be used to check the file for validity. The
DTD is expected at a position relative to the current file, <abbr class="abbrev">e.g.</abbr> if the doctype
refers to <span class="quote">“<span class="quote">DTD/xhtml1-transitional.dtd</span>”</span> and the file is <code class="filename">/home/peter/test.xml</code>
the DTD is expected to be located at <code class="filename">/home/peter/DTD/xhtml1-transitional.dtd</code>.
However, remote DTDs specified via http are supported.</p><p>If the file has no doctype it will be checked for being well-formed.</p><p>To learn more about <acronym class="acronym">XML</acronym> check out the <a class="ulink" href="https://www.w3.org/XML/" target="_top"> official W3C <acronym class="acronym">XML</acronym> pages</a>.</p><p>Internally this plugin calls the external command <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="command"><span class="command"><strong>xmllint</strong></span></span>, which
is part of libxml2. If this command is not correctly installed on your system, the plugin
will not work.</p><p>To load this plugin open <span class="application">Kate</span>'s configuration dialog under <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Settings</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Configure <span class="application">Kate</span>...</span></span>.
Then select <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel"><acronym class="acronym">XML</acronym> Validation</span></span> which will appear
in the <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Application</span></span> / <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Plugins</span></span> section and close the dialog.
</p><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="xmlcheck-menu"></a>Menu Structure</h3></div></div></div><div class="variablelist"><dl class="variablelist"><dt><span class="term">
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu"><acronym class="acronym">XML</acronym></span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Validate <acronym class="acronym">XML</acronym></span></span>
</span></dt><dd><p>This will start the check, as described above.</p></dd></dl></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="xmlcheck-thanks-and-acknowledgements"></a>Thanks and Acknowledgments</h3></div></div></div><p>
<span class="application">Kate</span> Plugin <span class="quote">“<span class="quote"><acronym class="acronym">XML</acronym> Validation</span>”</span> copyright 2002 <span class="firstname">Daniel</span> <span class="surname">Naber</span>
<code class="email">(daniel.naber AT t-online.de)</code>.
</p><p>Documentation copyright 2002 <span class="firstname">Daniel</span> <span class="surname">Naber</span></p></div></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="kate-application-plugin-textfilter.html">Prev</a></td><td class="upCell"><a accesskey="h" href="index.html">Contents</a></td><td class="nextCell"><a accesskey="n" href="kate-application-plugin-xmltools.html">Next</a></td></tr><tr><td class="prevCell">Text Filter Plugin </td><td class="upCell">Working with Plugins</td><td class="nextCell"> <acronym class="acronym">XML</acronym> Completion</td></tr></table></div><div id="footer_text">Would you like to make a comment or contribute an update to this page?<br>Send feedback to the <a href="mailto:kde-doc-english@kde.org" class="footer_email">KDE Docs Team</a></div></div></div></body></html></FILENAME><FILENAME filename="kate-application-plugin-xmltools.html"><html><head><title>XML Completion</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, kdebase, Kate, text, editor, programmer, programming, projects, MDI, Multi, Document, Interface, terminal, console"><link rel="home" href="index.html" title="The Kate Handbook"><link rel="up" href="plugins.html" title="Chapter 4. Working with Plugins"><link rel="prev" href="kate-application-plugin-xmlcheck.html" title="XML Validation"><link rel="next" href="advanced-editing-tools.html" title="Chapter 5. Advanced Editing Tools"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> <acronym class="acronym">XML</acronym> Completion</div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="kate-application-plugin-xmlcheck.html">Prev</a></td><td class="upCell">Working with Plugins</td><td class="nextCell"><a accesskey="n" href="advanced-editing-tools.html">Next</a></td></tr></table></div><div id="contentBody"><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="kate-application-plugin-xmltools"></a><acronym class="acronym">XML</acronym> Completion</h2></div><div><div class="authorgroup"><p class="author"><span class="firstname">Daniel</span> <span class="surname">Naber</span> <code class="email">&lt;daniel.naber@t-online.de&gt;</code></p></div></div></div></div><p>This plugin gives hints about what is allowed at a certain position in
an <acronym class="acronym">XML</acronym> file, according to the file's DTD. It will list possible
elements, attributes, attribute values or entities, depending on the
cursor position (<abbr class="abbrev">e.g.</abbr> all entities are listed if the character on the left
of the cursor is <span class="quote">“<span class="quote">&amp;</span>”</span>). It's also possible to close the nearest
open tag on the left.</p><p>The <acronym class="acronym">DTD</acronym> must exist in <acronym class="acronym">XML</acronym> format, as produced by the Perl program
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="command"><span class="command"><strong>dtdparse</strong></span></span>. We will call a DTD in this format <span class="quote">“<span class="quote">meta DTD</span>”</span>.
Some meta DTDs are supplied. They are installed in
<code class="filename">katexmltools/</code> in
<strong class="userinput"><code><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="command"><span class="command"><strong>qtpaths</strong></span></span> <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="option"><code class="option">--paths GenericDataLocation </code></span></code></strong>,
which is also the default folder when you choose
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Assign Meta DTD...</span></span>.
To produce your own meta DTDs, get <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="command"><span class="command"><strong>dtdparse</strong></span></span> from
<a class="ulink" href="http://dtdparse.sourceforge.net" target="_top">http://dtdparse.sourceforge.net</a>.</p><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="xmltools-how-to-use"></a>How to Use</h3></div></div></div><p>Start <span class="application">Kate</span> and open the configuration dialog under <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Settings</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Configure <span class="application">Kate</span>...</span></span>.
Then select <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel"><acronym class="acronym">XML</acronym> Completion</span></span> which will appear
in the <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Application</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Plugins</span></span> page and close the dialog. After
that, select <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu"><acronym class="acronym">XML</acronym></span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Assign Meta DTD...</span></span>.
If your document contains no <span class="quote">“<span class="quote">DOCTYPE</span>”</span> or the doctype is unknown, you will have to
select a meta DTD from the file system. Otherwise the meta DTD that
matches the current document's DOCTYPE will be loaded automatically.</p><p>You can now use the plugin while typing your text:</p><div class="variablelist"><dl class="variablelist"><dt><span class="term"><span class="keycap"><strong>&lt;</strong></span> (less than key)</span></dt><dd><p>This will trigger a list of possible elements unless the
cursor is inside a tag already. Note that you currently cannot use
this to insert the top level element (<abbr class="abbrev">e.g.</abbr> <span class="quote">“<span class="quote">&lt;html&gt;</span>”</span>).</p></dd><dt><span class="term"><span class="keycap"><strong>&lt;</strong></span><span class="keycap"><strong>/</strong></span>(less than key + slash)</span></dt><dd><p>Entering these characters will offer to close the current element
(nearest open one to the left of the cursor). Press <span class="keysym">Enter</span> to accept the suggestion.
Unlike the <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Close Element</span></span> menu item, this works only with
a DTD assigned.</p></dd><dt><span class="term"><span class="keycap"><strong>"</strong></span> (quote key)</span></dt><dd><p>The quote key will trigger a list of possible attribute
values (if there are any) if you are inside a tag.</p></dd><dt><span class="term"><span class="keycap"><strong> </strong></span> (space key)</span></dt><dd><p>This key will trigger a list of possible attributes for the
current element if you are inside a tag.</p></dd><dt><span class="term"><span class="keycap"><strong>&amp;</strong></span> (ampersand key)</span></dt><dd><p>This key will trigger a list of named entities.</p></dd></dl></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="xmltools-features-and-limitations"></a>Features and Limitations</h3></div></div></div><p>You can test all functions and limitations by loading
<code class="filename">katexmltools/testcases.xml</code> in
<strong class="userinput"><code><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="command"><span class="command"><strong>qtpaths</strong></span></span> <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="option"><code class="option">--paths GenericDataLocation </code></span></code></strong>
into <span class="application">Kate</span> and following the instructions.</p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="xmltools-menu"></a>Menu Structure</h3></div></div></div><div class="variablelist"><a name="xml-insert-element"></a><dl class="variablelist"><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu"><acronym class="acronym">XML</acronym></span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Insert Element...</span></span> (<span class="shortcut"><strong><span class="keycap"><strong>Ctrl</strong></span>+<span class="keysym">Enter</span></strong></span>)</span></dt><dd><p>This will open a dialog that lets you insert an <acronym class="acronym">XML</acronym> element.
The &lt;, &gt; characters and the closing tag will be inserted automatically.
If you have selected text when this menu item is selected, the selected
text will be surrounded by the opening and the closing tag.
The dialog also offers completion of all elements that may be inserted
at the current cursor position if you have assigned a meta DTD by
using <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Assign Meta DTD...</span></span>.
</p></dd><dt><a name="xml-close-element"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu"><acronym class="acronym">XML</acronym></span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Close Element</span></span> (<span class="shortcut"><strong><span class="keycap"><strong>Ctrl</strong></span>+<span class="keycap"><strong>&lt;</strong></span></strong></span>)</span></dt><dd><p>This will search your text for a tag that is not yet closed
and will close it by inserting the corresponding closing tag.
The search starts at the cursor position and goes left. If
it cannot find an open tag nothing will happen.</p></dd><dt><a name="xml-assign-metadtd"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu"><acronym class="acronym">XML</acronym></span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Assign Meta DTD...</span></span></span></dt><dd><p>This will tell the plugin which meta DTD to use for the
current document. Note that this assignment will not be saved.
You will have to repeat it when you start <span class="application">Kate</span> the next time.</p></dd></dl></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="xmltools-thanks-and-acknowledgements"></a>Thanks and Acknowledgments</h3></div></div></div><p>
<span class="application">Kate</span> Plugin <span class="quote">“<span class="quote"><acronym class="acronym">XML</acronym> Completion</span>”</span> copyright 2001,2002 <span class="firstname">Daniel</span> <span class="surname">Naber</span>
<code class="email">(daniel.naber AT t-online.de)</code>.
</p><p><span class="orgname">KDE</span> SC 4 version copyright 2010 Tomáš Trnka</p><p>Documentation copyright 2001,2002 <span class="firstname">Daniel</span> <span class="surname">Naber</span></p></div></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="kate-application-plugin-xmlcheck.html">Prev</a></td><td class="upCell"><a accesskey="h" href="index.html">Contents</a></td><td class="nextCell"><a accesskey="n" href="advanced-editing-tools.html">Next</a></td></tr><tr><td class="prevCell"><acronym class="acronym">XML</acronym> Validation </td><td class="upCell">Working with Plugins</td><td class="nextCell"> Advanced Editing Tools</td></tr></table></div><div id="footer_text">Would you like to make a comment or contribute an update to this page?<br>Send feedback to the <a href="mailto:kde-doc-english@kde.org" class="footer_email">KDE Docs Team</a></div></div></div></body></html></FILENAME></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="kate-part.html">Prev</a></td><td class="upCell"><a accesskey="h" href="index.html">Contents</a></td><td class="nextCell"><a accesskey="n" href="kate-application-plugin-external-tools.html">Next</a></td></tr><tr><td class="prevCell">Working with the <span class="application">Kate</span> Editor </td><td class="upCell"> </td><td class="nextCell"> External Tools</td></tr></table></div><div id="footer_text">Would you like to make a comment or contribute an update to this page?<br>Send feedback to the <a href="mailto:kde-doc-english@kde.org" class="footer_email">KDE Docs Team</a></div></div></div></body></html></FILENAME><FILENAME filename="advanced-editing-tools.html"><html><head><title>Chapter 5. Advanced Editing Tools</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, kdebase, Kate, text, editor, programmer, programming, projects, MDI, Multi, Document, Interface, terminal, console"><link rel="home" href="index.html" title="The Kate Handbook"><link rel="up" href="index.html" title="The Kate Handbook"><link rel="prev" href="kate-application-plugin-xmltools.html" title="XML Completion"><link rel="next" href="dev.html" title="Chapter 6. Extending Kate"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> Advanced Editing Tools</div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="kate-application-plugin-xmltools.html">Prev</a></td><td class="upCell"> </td><td class="nextCell"><a accesskey="n" href="dev.html">Next</a></td></tr></table></div><div id="contentBody"><div class="chapter"><div class="titlepage"><div><div><h1 class="title"><a name="advanced-editing-tools"></a>Chapter 5. Advanced Editing Tools</h1></div></div></div><p>For information about the advanced editing tools included with <span class="application">Kate</span>,
see the <a class="ulink" href="help:/katepart/advanced-editing-tools.html" target="_top">Advanced Editing Tools chapter
of the <span class="application">KatePart</span> Handbook</a>.</p></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="kate-application-plugin-xmltools.html">Prev</a></td><td class="upCell"><a accesskey="h" href="index.html">Contents</a></td><td class="nextCell"><a accesskey="n" href="dev.html">Next</a></td></tr><tr><td class="prevCell"><acronym class="acronym">XML</acronym> Completion </td><td class="upCell"> </td><td class="nextCell"> Extending <span class="application">Kate</span></td></tr></table></div><div id="footer_text">Would you like to make a comment or contribute an update to this page?<br>Send feedback to the <a href="mailto:kde-doc-english@kde.org" class="footer_email">KDE Docs Team</a></div></div></div></body></html></FILENAME><FILENAME filename="dev.html"><html><head><title>Chapter 6. Extending Kate</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, kdebase, Kate, text, editor, programmer, programming, projects, MDI, Multi, Document, Interface, terminal, console"><link rel="home" href="index.html" title="The Kate Handbook"><link rel="up" href="index.html" title="The Kate Handbook"><link rel="prev" href="advanced-editing-tools.html" title="Chapter 5. Advanced Editing Tools"><link rel="next" href="highlight.html" title="Working with Syntax Highlighting"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> Extending <span class="application">Kate</span></div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="advanced-editing-tools.html">Prev</a></td><td class="upCell"> </td><td class="nextCell"><a accesskey="n" href="highlight.html">Next</a></td></tr></table></div><div id="contentBody"><div class="chapter"><div class="titlepage"><div><div><h1 class="title"><a name="dev"></a>Chapter 6. Extending <span class="application">Kate</span></h1></div><div><div class="authorgroup"><p class="author"><span class="firstname">T.C.</span> <span class="surname">Hollingsworth</span> <code class="email">&lt;tchollingsworth@gmail.com&gt;</code></p></div></div></div></div><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="dev-intro"></a>Introduction</h2></div></div></div><p>Like any advanced text editor, <span class="application">Kate</span> offers a variety of ways to extend
its functionality.  You can <a class="link" href="dev-scripting.html" title="Scripting with JavaScript">write simple scripts
to add functionality with <span class="application">JavaScript</span></a>
or add even more functionality to the editor itself with 
<a class="link" href="dev-app.html" title="Kate (C++) Application Plugins"><span class="application">Kate</span> Application Plugins written in C++</a>. 
Finally, once you have extended <span class="application">Kate</span>, you are welcome to
<a class="ulink" href="https://kate-editor.org/join-us/" target="_top">join us</a> and share your
enhancements with the world!</p></div><FILENAME filename="highlight.html"><html><head><title>Working with Syntax Highlighting</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, kdebase, Kate, text, editor, programmer, programming, projects, MDI, Multi, Document, Interface, terminal, console"><link rel="home" href="index.html" title="The Kate Handbook"><link rel="up" href="dev.html" title="Chapter 6. Extending Kate"><link rel="prev" href="dev.html" title="Chapter 6. Extending Kate"><link rel="next" href="dev-scripting.html" title="Scripting with JavaScript"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> Working with Syntax Highlighting</div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="dev.html">Prev</a></td><td class="upCell">Extending <span class="application">Kate</span></td><td class="nextCell"><a accesskey="n" href="dev-scripting.html">Next</a></td></tr></table></div><div id="contentBody"><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="highlight"></a>Working with Syntax Highlighting</h2></div></div></div><p>For information about adding or modifying syntax highlighting definitions,
see the <a class="ulink" href="help:/katepart/highlight.html" target="_top">Working with Syntax
Highlighting section of the Development chapter of the <span class="application">KatePart</span>
Handbook</a>.</p></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="dev.html">Prev</a></td><td class="upCell"><a accesskey="h" href="index.html">Contents</a></td><td class="nextCell"><a accesskey="n" href="dev-scripting.html">Next</a></td></tr><tr><td class="prevCell">Extending <span class="application">Kate</span> </td><td class="upCell">Extending <span class="application">Kate</span></td><td class="nextCell"> Scripting with <span class="application">JavaScript</span></td></tr></table></div><div id="footer_text">Would you like to make a comment or contribute an update to this page?<br>Send feedback to the <a href="mailto:kde-doc-english@kde.org" class="footer_email">KDE Docs Team</a></div></div></div></body></html></FILENAME><FILENAME filename="dev-scripting.html"><html><head><title>Scripting with JavaScript</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, kdebase, Kate, text, editor, programmer, programming, projects, MDI, Multi, Document, Interface, terminal, console"><link rel="home" href="index.html" title="The Kate Handbook"><link rel="up" href="dev.html" title="Chapter 6. Extending Kate"><link rel="prev" href="highlight.html" title="Working with Syntax Highlighting"><link rel="next" href="dev-app.html" title="Kate (C++) Application Plugins"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> Scripting with <span class="application">JavaScript</span></div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="highlight.html">Prev</a></td><td class="upCell">Extending <span class="application">Kate</span></td><td class="nextCell"><a accesskey="n" href="dev-app.html">Next</a></td></tr></table></div><div id="contentBody"><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="dev-scripting"></a>Scripting with <span class="application">JavaScript</span></h2></div></div></div><p>For information about scripting with <span class="application">JavaScript</span>, see the
<a class="ulink" href="help:/katepart/dev-scripting.html" target="_top">Scripting with <span class="application">JavaScript</span>
section of the Development chapter of the <span class="application">KatePart</span> Handbook</a>.</p></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="highlight.html">Prev</a></td><td class="upCell"><a accesskey="h" href="index.html">Contents</a></td><td class="nextCell"><a accesskey="n" href="dev-app.html">Next</a></td></tr><tr><td class="prevCell">Working with Syntax Highlighting </td><td class="upCell">Extending <span class="application">Kate</span></td><td class="nextCell"> <span class="application">Kate</span> (C++) Application Plugins</td></tr></table></div><div id="footer_text">Would you like to make a comment or contribute an update to this page?<br>Send feedback to the <a href="mailto:kde-doc-english@kde.org" class="footer_email">KDE Docs Team</a></div></div></div></body></html></FILENAME><FILENAME filename="dev-app.html"><html><head><title>Kate (C++) Application Plugins</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, kdebase, Kate, text, editor, programmer, programming, projects, MDI, Multi, Document, Interface, terminal, console"><link rel="home" href="index.html" title="The Kate Handbook"><link rel="up" href="dev.html" title="Chapter 6. Extending Kate"><link rel="prev" href="dev-scripting.html" title="Scripting with JavaScript"><link rel="next" href="vi-input-mode-chapter.html" title="Chapter 7. The VI Input Mode"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> <span class="application">Kate</span> (C++) Application Plugins</div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="dev-scripting.html">Prev</a></td><td class="upCell">Extending <span class="application">Kate</span></td><td class="nextCell"><a accesskey="n" href="vi-input-mode-chapter.html">Next</a></td></tr></table></div><div id="contentBody"><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="dev-app"></a><span class="application">Kate</span> (C++) Application Plugins</h2></div></div></div><p><a class="link" href="plugins.html#kate-application-plugins" title="Kate Application Plugins"><span class="application">Kate</span> Application Plugins</a>
extend the functionality of the <span class="application">Kate</span> editor itself in any way you can imagine,
using the same programming language <span class="application">Kate</span> is written in, C++.</p><p>To get started, see the 
<a class="ulink" href="https://kate-editor.org/2004/01/06/writing-a-kate-plugin/" target="_top">Writing a
<span class="application">Kate</span> Plugin tutorial on the <span class="application">Kate</span> website</a>.</p></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="dev-scripting.html">Prev</a></td><td class="upCell"><a accesskey="h" href="index.html">Contents</a></td><td class="nextCell"><a accesskey="n" href="vi-input-mode-chapter.html">Next</a></td></tr><tr><td class="prevCell">Scripting with <span class="application">JavaScript</span> </td><td class="upCell">Extending <span class="application">Kate</span></td><td class="nextCell"> The VI Input Mode</td></tr></table></div><div id="footer_text">Would you like to make a comment or contribute an update to this page?<br>Send feedback to the <a href="mailto:kde-doc-english@kde.org" class="footer_email">KDE Docs Team</a></div></div></div></body></html></FILENAME></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="advanced-editing-tools.html">Prev</a></td><td class="upCell"><a accesskey="h" href="index.html">Contents</a></td><td class="nextCell"><a accesskey="n" href="highlight.html">Next</a></td></tr><tr><td class="prevCell">Advanced Editing Tools </td><td class="upCell"> </td><td class="nextCell"> Working with Syntax Highlighting</td></tr></table></div><div id="footer_text">Would you like to make a comment or contribute an update to this page?<br>Send feedback to the <a href="mailto:kde-doc-english@kde.org" class="footer_email">KDE Docs Team</a></div></div></div></body></html></FILENAME><FILENAME filename="vi-input-mode-chapter.html"><html><head><title>Chapter 7. The VI Input Mode</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, kdebase, Kate, text, editor, programmer, programming, projects, MDI, Multi, Document, Interface, terminal, console"><link rel="home" href="index.html" title="The Kate Handbook"><link rel="up" href="index.html" title="The Kate Handbook"><link rel="prev" href="dev-app.html" title="Kate (C++) Application Plugins"><link rel="next" href="the-menu-entries.html" title="Chapter 8. The Menu Entries"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> The VI Input Mode</div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="dev-app.html">Prev</a></td><td class="upCell"> </td><td class="nextCell"><a accesskey="n" href="the-menu-entries.html">Next</a></td></tr></table></div><div id="contentBody"><div class="chapter"><div class="titlepage"><div><div><h1 class="title"><a name="vi-input-mode-chapter"></a>Chapter 7. The VI Input Mode</h1></div></div></div><p>For information about <span class="application">Kate</span>'s VI input mode, see the 
<a class="ulink" href="help:/katepart/vi-input-mode-chapter.html" target="_top">VI Input Mode chapter
of the <span class="application">KatePart</span> Handbook</a>.</p></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="dev-app.html">Prev</a></td><td class="upCell"><a accesskey="h" href="index.html">Contents</a></td><td class="nextCell"><a accesskey="n" href="the-menu-entries.html">Next</a></td></tr><tr><td class="prevCell"><span class="application">Kate</span> (C++) Application Plugins </td><td class="upCell"> </td><td class="nextCell"> The Menu Entries</td></tr></table></div><div id="footer_text">Would you like to make a comment or contribute an update to this page?<br>Send feedback to the <a href="mailto:kde-doc-english@kde.org" class="footer_email">KDE Docs Team</a></div></div></div></body></html></FILENAME><FILENAME filename="the-menu-entries.html"><html><head><title>Chapter 8. The Menu Entries</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, kdebase, Kate, text, editor, programmer, programming, projects, MDI, Multi, Document, Interface, terminal, console"><link rel="home" href="index.html" title="The Kate Handbook"><link rel="up" href="index.html" title="The Kate Handbook"><link rel="prev" href="vi-input-mode-chapter.html" title="Chapter 7. The VI Input Mode"><link rel="next" href="edit-menu.html" title="The Edit Menu"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> The Menu Entries</div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="vi-input-mode-chapter.html">Prev</a></td><td class="upCell"> </td><td class="nextCell"><a accesskey="n" href="edit-menu.html">Next</a></td></tr></table></div><div id="contentBody"><div class="chapter"><div class="titlepage"><div><div><h1 class="title"><a name="the-menu-entries"></a>Chapter 8. The Menu Entries</h1></div></div></div><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="file-menu"></a>The File Menu</h2></div></div></div><div class="variablelist"><dl class="variablelist"><dt><a name="file-new"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">File</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">New</span></span> (<span class="shortcut"><strong><span class="keycap"><strong>Ctrl</strong></span>+<span class="keycap"><strong>N</strong></span></strong></span>)</span></dt><dd><p>
This command <span class="action">starts a new document</span> in the editing
window.  In the <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guibutton">Documents</span></span> list on the left the new file
is named <span class="emphasis"><em>Untitled</em></span>.
</p></dd><dt><a name="file-open"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">File</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Open...</span></span> (<span class="shortcut"><strong><span class="keycap"><strong>Ctrl</strong></span>+<span class="keycap"><strong>O</strong></span></strong></span>)</span></dt><dd><p>Displays a standard <span class="orgname">KDE</span> <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Open File</span></span>
dialog. Use the file view to select the file you want to open, and
click on <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guibutton">Open</span></span> to open it.</p></dd><dt><a name="file-open-recent"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">File</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Open Recent</span></span></span></dt><dd><p>
This is a shortcut to open recently saved documents. Clicking on this
item opens a list to the side of the menu with several of the most
recently saved files. Clicking on a specific file will open it in
this application - if the file still resides at the same
location.
</p></dd><dt><a name="file-open-with"></a><span class="term">
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">File</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Open With</span></span>
</span></dt><dd><p>
This submenu presents a list of applications known to handle the <acronym class="acronym">MIME</acronym> type
of your current document. Activating an entry will open the current document
with that application.</p><p>In addition, an entry <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Other...</span></span> launches
the open with dialog box that allows you to <span class="action">select another application
to open the active file</span>. Your file will still be open in <span class="application">Kate</span>.
</p></dd><dt><a name="file-save"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">File</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Save</span></span> (<span class="shortcut"><strong><span class="keycap"><strong>Ctrl</strong></span>+<span class="keycap"><strong>S</strong></span></strong></span>)</span></dt><dd><p>
This saves the current document.  If there has already been a save of
the document then this will overwrite the previously saved file without
asking for the user's consent.  If it is the first save of a new
document the save as dialog (described below) will be invoked.
</p></dd><dt><a name="file-save-as"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">File</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Save As...</span></span> (<span class="shortcut"><strong><span class="keycap"><strong>Ctrl</strong></span>+<span class="keycap"><strong>Shift</strong></span>+<span class="keycap"><strong>S</strong></span></strong></span>)</span></dt><dd><p>
This allows a document to be saved with a new file name. This is done by
means of the file dialog box described above in the <a class="link" href="the-menu-entries.html#file-open">Open</a> section of this help file.
</p></dd><dt><a name="file-save-as-encoding"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">File</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Save As with Encoding</span></span>
</span></dt><dd><p>
Save a document with a new file name in a different encoding.</p></dd><dt><a name="file-save-copy-as"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">File</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Save Copy As</span></span></span></dt><dd><p>
Save a copy of the document with a new file name and continue editing the original document.</p></dd><dt><a name="file-save-all"></a><span class="term">
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">File</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Save All</span></span> (<span class="shortcut"><strong><span class="keycap"><strong>Ctrl</strong></span>+<span class="keycap"><strong>L</strong></span></strong></span>)
</span></dt><dd><p>
This command <span class="action">saves all modified open files</span>.
</p></dd><dt><a name="file-reload"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">File</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Reload</span></span> (<span class="shortcut"><strong><span class="keycap"><strong>F5</strong></span></strong></span>)
</span></dt><dd><p>
Reloads the active file from disk. This command is useful if another program or
process has changed the file while you have it open in this application.
</p></dd><dt><a name="file-reload-all"></a><span class="term">
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">File</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Reload All</span></span>
</span></dt><dd><p>
<span class="action">Reloads all opened files.</span>.
</p></dd><dt><a name="file-print"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">File</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Print...</span></span> (<span class="shortcut"><strong><span class="keycap"><strong>Ctrl</strong></span>+<span class="keycap"><strong>P</strong></span></strong></span>)</span></dt><dd><p>
Opens a simple print dialog allowing the user to specify what, where,
and how to print.
</p></dd><dt><a name="file-export-as-html"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">File</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Export as HTML</span></span></span></dt><dd><p>Save the currently open document as an <acronym class="acronym">HTML</acronym> file, which will be
formatted using the current syntax highlighting and color scheme settings.</p></dd><dt><a name="file-close"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">File</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Close</span></span> (<span class="shortcut"><strong><span class="keycap"><strong>Ctrl</strong></span>+<span class="keycap"><strong>W</strong></span></strong></span>)</span></dt><dd><p>
Close the active file with this command. If you have made unsaved changes, you
will be prompted to save the file before <span class="application">Kate</span> closes it.
</p></dd><dt><a name="file-close-other"></a><span class="term">
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">File</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Close Other</span></span>
</span></dt><dd><p>
Close other open documents.
</p></dd><dt><a name="file-close-all"></a><span class="term">
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">File</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Close All</span></span>
</span></dt><dd><p>
This command <span class="action">closes all the files you have open</span>
in <span class="application">Kate</span>.
</p></dd><dt><a name="file-close-orphaned"></a><span class="term">
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">File</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Close Orphaned</span></span>
</span></dt><dd><p><span class="action">Close</span> all documents in the file list, which could
not be reopened during startup, because they are not accessible anymore.
</p></dd><dt><a name="file-quit"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">File</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Quit</span></span> (<span class="shortcut"><strong><span class="keycap"><strong>Ctrl</strong></span>+<span class="keycap"><strong>Q</strong></span></strong></span>)</span></dt><dd><p>
This command <span class="action">closes <span class="application">Kate</span></span> and any files you were
editing. If you have made unsaved changes to any of the files you were
editing, you will be prompted to save them.
</p></dd></dl></div></div><FILENAME filename="edit-menu.html"><html><head><title>The Edit Menu</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, kdebase, Kate, text, editor, programmer, programming, projects, MDI, Multi, Document, Interface, terminal, console"><link rel="home" href="index.html" title="The Kate Handbook"><link rel="up" href="the-menu-entries.html" title="Chapter 8. The Menu Entries"><link rel="prev" href="the-menu-entries.html" title="Chapter 8. The Menu Entries"><link rel="next" href="view-menu.html" title="The View Menu"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> The Edit Menu</div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="the-menu-entries.html">Prev</a></td><td class="upCell">The Menu Entries</td><td class="nextCell"><a accesskey="n" href="view-menu.html">Next</a></td></tr></table></div><div id="contentBody"><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="edit-menu"></a>The Edit Menu</h2></div></div></div><div class="variablelist"><dl class="variablelist"><dt><a name="edit-undo"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Edit</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Undo</span></span> (<span class="shortcut"><strong><span class="keycap"><strong>Ctrl</strong></span>+<span class="keycap"><strong>Z</strong></span></strong></span>)</span></dt><dd><p>Undo the last editing command (typing, copying, cutting <abbr class="abbrev">etc.</abbr>)</p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title">Note</h3><p>This may undo several editing commands of the same type, like typing
in characters.</p></div></dd><dt><a name="edit-redo"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Edit</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Redo</span></span> (<span class="shortcut"><strong><span class="keycap"><strong>Ctrl</strong></span>+<span class="keycap"><strong>Shift</strong></span>+<span class="keycap"><strong>Z</strong></span></strong></span>)</span></dt><dd><p>This will reverse the most recent change (if any) made using Undo.</p></dd><dt><a name="edit-cut"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Edit</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Cut</span></span> (<span class="shortcut"><strong><span class="keycap"><strong>Ctrl</strong></span>+<span class="keycap"><strong>X</strong></span></strong></span>)</span></dt><dd><p>This command deletes the current selection and places it on the
clipboard. The clipboard works invisibly and provides a way to
transfer data between applications.</p></dd><dt><a name="edit-copy"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Edit</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Copy</span></span> (<span class="shortcut"><strong><span class="keycap"><strong>Ctrl</strong></span>+<span class="keycap"><strong>C</strong></span></strong></span>)</span></dt><dd><p>This copies the currently selected text to the clipboard so that it may
be pasted elsewhere. The clipboard works invisibly and provides a way to
transfer data between applications.</p></dd><dt><a name="edit-paste"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Edit</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Paste</span></span> (<span class="shortcut"><strong><span class="keycap"><strong>Ctrl</strong></span>+<span class="keycap"><strong>V</strong></span></strong></span>)</span></dt><dd><p>This will insert the first item in the clipboard at the cursor position.
The clipboard works invisibly and provides a way to
transfer data between applications.</p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title">Note</h3><p>If Overwrite Selection is enabled, the pasted text will overwrite the selection, if any.</p></div></dd><dt><a name="edit-paste-selection"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Edit</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Paste Selection</span></span> (<span class="shortcut"><strong><span class="keycap"><strong>Ctrl</strong></span>+<span class="keycap"><strong>Shift</strong></span>+<span class="keycap"><strong>Ins</strong></span></strong></span>)</span></dt><dd><p>This will paste the <a class="ulink" href="https://en.wikipedia.org/wiki/Clipboard_(computing)#X_Window_System" target="_top">mouse selection</a> contents that were chosen previously. Mark some text with the mouse pointer to paste it in the currently open file using this menu item.</p></dd><dt><a name="edit-swap-with-clipboard-contents"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Edit</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Swap with clipboard contents</span></span></span></dt><dd><p>This will swap the selected text with the <a class="ulink" href="https://en.wikipedia.org/wiki/Clipboard_(computing)#X_Window_System" target="_top">clipboard</a> contents.</p></dd><dt><a name="edit-clipboard-history"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Edit</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Clipboard History</span></span></span></dt><dd><p>This submenu will display the beginning of portions of text recently
copied to the clipboard.  Select an item from this menu to paste it in the
currently open file.</p></dd><dt><a name="edit-copy-as-html"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Edit</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Copy as HTML</span></span></span></dt><dd><p>Copy the selection as <acronym class="acronym">HTML</acronym>, formatted using the current syntax
highlighting and color scheme settings.</p></dd><dt><a name="edit-select-all"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Edit</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Select All</span></span> (<span class="shortcut"><strong><span class="keycap"><strong>Ctrl</strong></span>+<span class="keycap"><strong>A</strong></span></strong></span>)</span></dt><dd><p>This will select the entire document. This could be very useful for
copying the entire file to another application.</p></dd><dt><a name="edit-deselect"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Edit</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Deselect</span></span> (<span class="shortcut"><strong><span class="keycap"><strong>Ctrl</strong></span>+<span class="keycap"><strong>Shift</strong></span>+<span class="keycap"><strong>A</strong></span></strong></span>)</span></dt><dd><p>Deselects the selected text in the editor if any.</p></dd><dt><a name="edit-toggle-block-selection"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Edit</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Block Selection Mode</span></span> (<span class="shortcut"><strong><span class="keycap"><strong>Ctrl</strong></span>+<span class="keycap"><strong>Shift</strong></span>+<span class="keycap"><strong>B</strong></span></strong></span>)</span></dt><dd><p>Toggles Selection Mode. When the Selection Mode is <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">BLOCK</span></span>,
the status bar contains the string <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">[BLOCK]</span></span> and
you can make vertical selections, <abbr class="abbrev">e.g.</abbr> select column 5 to 10 in lines 9 to 15.</p></dd><dt><a name="edit-input-modes"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Edit</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Input Modes</span></span></span></dt><dd><p>Switch between a normal and a vi-like, modal editing mode. The vi input mode supports the most used commands
and motions from vim's normal and visual mode and has an optional vi mode statusbar.
This status bar shows commands while they are being entered, output from commands and
the current mode. The behavior of this mode can be configured in the
<a class="ulink" href="help:/katepart/config-dialog-editor.html#pref-edit-vi-input-mode" target="_top">Vi
Input Mode</a> section of the <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Editing</span></span> page in
this application's settings dialog.</p></dd><dt><a name="edit-overwrite-mode"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Edit</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Overwrite Mode</span></span> (<span class="shortcut"><strong><span class="keycap"><strong>Ins</strong></span></strong></span>)</span></dt><dd><p>Toggles the Insert/Overwrite modes. When the mode is <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">INS</span></span>, you
insert characters where the cursor is. When the mode is <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">OVR</span></span>, writing
characters will replace the current characters if your cursor is positioned
before any character. The status bar shows the current state of the Overwrite
Mode, either <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">INS</span></span> or <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">OVR</span></span>.</p></dd><dt><a name="edit-find"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Edit</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Find...</span></span> (<span class="shortcut"><strong><span class="keycap"><strong>Ctrl</strong></span>+<span class="keycap"><strong>F</strong></span></strong></span>)</span></dt><dd><p>This opens the incremental search bar at the bottom of the editor window.
On the left side of the bar is a button with an icon to close the bar, followed by a small text
box for entering the search pattern.</p><p>When you start entering characters of your search pattern, the search starts
immediately. If there is a match in the text this is highlighted and the background color
of the entry field changes to light green. If the search pattern does not match any
string in the text, this is indicated by a light red background color of the entry field.</p><p>Use the
<span class="inlinemediaobject"><img src="arrow-up-double-22.png"></span> or
<span class="inlinemediaobject"><img src="arrow-down-double-22.png"></span> button
to jump to the next or previous match in the document.</p><p>Matches in the document are highlighted even when you close the search bar. To clear
this highlighting, press the <span class="keycap"><strong>Esc</strong></span> key.</p><p>You can choose whether the search should be case sensitive.
Selecting <span class="inlinemediaobject"><img src="format-text-superscript-22.png"></span>
will limit finds to entries that match the
case (upper or lower) of each of the characters in the search  pattern.
</p><p>Click on the <span class="inlinemediaobject"><img src="configure-shortcuts-22.png"></span>
button at the right side of the incremental search bar to
switch to the power search and replace bar.
</p></dd><dt><a name="edit-find-next"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Edit</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Find Variants</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Find Next</span></span> (<span class="shortcut"><strong><span class="keycap"><strong>F3</strong></span></strong></span>)</span></dt><dd><p>This repeats the last find operation, if any, without calling the incremental
search bar, and searching forwards through the document starting from the cursor position.
</p></dd><dt><a name="edit-find-previous"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Edit</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Find Variants</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Find Previous</span></span> (<span class="shortcut"><strong><span class="keycap"><strong>Shift</strong></span>+<span class="keycap"><strong>F3</strong></span></strong></span>)</span></dt><dd><p>
This repeats the last find operation, if any, without calling the incremental
search bar, and searching backwards instead of forwards through the
document.
</p></dd><dt><a name="edit-find-selected"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Edit</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Find Variants</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Find Selected</span></span> (<span class="shortcut"><strong><span class="keycap"><strong>Ctrl</strong></span>+<span class="keycap"><strong>H</strong></span></strong></span>)</span></dt><dd><p>Finds next occurrence of selected text.</p></dd><dt><a name="edit-find-selected-backwards"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Edit</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Find Variants</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Find Selected Backwards</span></span> (<span class="shortcut"><strong><span class="keycap"><strong>Ctrl</strong></span>+<span class="keycap"><strong>Shift</strong></span>+<span class="keycap"><strong>H</strong></span></strong></span>)</span></dt><dd><p>Finds previous occurrence of selected text.</p></dd><dt><a name="edit-replace"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Edit</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Replace...</span></span> (<span class="shortcut"><strong><span class="keycap"><strong>Ctrl</strong></span>+<span class="keycap"><strong>R</strong></span></strong></span>)</span></dt><dd><p>This command opens the power search and replace bar.
On the upper left side of the bar is a button with an icon to close the bar, followed by a small text
box for entering the search pattern.</p><p>You can control the search mode by selecting <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Plain text</span></span>,
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Whole words</span></span>, <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Escape sequences</span></span> or
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Regular expression</span></span> from the drop down box.
</p><p>If <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Escape sequences</span></span> or <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Regular expression</span></span> are
selected, the <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guibutton">Add...</span></span> menuitem at the bottom of the context menu of the text boxes will be enabled
and allows you to add escape sequences or regular expression items to the
search or replace pattern from predefined lists.</p><p>Use the
<span class="inlinemediaobject"><img src="arrow-up-double-22.png"></span> or
<span class="inlinemediaobject"><img src="arrow-down-double-22.png"></span> button
to jump to the next or previous match in the document.</p><p>Enter the text to replace with in the text box labeled <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Replace</span></span>
and click the <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guibutton">Replace</span></span> button to replace only the highlighted text or
the <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guibutton">Replace All</span></span> button to replace the search text in the whole document.
</p><p>You can modify the search and replace behavior by selecting different
options at the bottom of the bar.
Selecting <span class="inlinemediaobject"><img src="format-text-superscript-22.png"></span>
will limit finds to entries that match the
case (upper or lower) of each of the characters in the search  pattern.
<span class="inlinemediaobject"><img src="edit-select-all-22.png"></span>
will search and replace within the current selection only.
The <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Find All</span></span> button highlights all matches in the document and shows the
number of found matches in a small popup.
</p><p>Click on the <span class="inlinemediaobject"><img src="configure-shortcuts-22.png"></span>
button at the right side of the power search and replace bar to
switch to the incremental search bar.
</p></dd><dt><a name="edit-go-to-matching-bracket"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Edit</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Go To</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Go to Matching Bracket</span></span> (<span class="shortcut"><strong><span class="keycap"><strong>Ctrl</strong></span>+<span class="keycap"><strong>6</strong></span></strong></span>)</span></dt><dd><p>Move the cursor to the associated opening or closing bracket.</p></dd><dt><a name="edit-select-to-matching-bracket"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Edit</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Go To</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Select to Matching Bracket</span></span> (<span class="shortcut"><strong><span class="keycap"><strong>Ctrl</strong></span>+<span class="keycap"><strong>Shift</strong></span>+<span class="keycap"><strong>6</strong></span></strong></span>)</span></dt><dd><p>Selects the text between associated opening and closing brackets.</p></dd><dt><a name="edit-go-to-previous-modified-line"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Edit</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Go To</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Go to Previous Modified Line</span></span></span></dt><dd><p>Lines that were changed since opening the file are called modified lines. This action jumps the previous modified line.
</p></dd><dt><a name="edit-go-to-next-modified-line"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Edit</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Go To</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Go to Next Modified Line</span></span></span></dt><dd><p>Lines that were changed since opening the file are called modified lines. This action jumps the next modified line.
</p></dd><dt><a name="edit-edit-go-to-line"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Edit</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Go To</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Go to Line...</span></span> (<span class="shortcut"><strong><span class="keycap"><strong>Ctrl</strong></span>+<span class="keycap"><strong>G</strong></span></strong></span>)</span></dt><dd><p>
This opens the goto line bar at the bottom of the window which is used to have the cursor
jump to a particular line (specified by number) in the document.  The
line number may be entered directly into the text box or graphically by
clicking on the up or down arrow spin controls at the side of the text
box. The little up arrow will increase the line number and the down
arrow decrease it. Close the bar with a click on the button with an icon on the left side of the bar.
</p></dd></dl></div></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="the-menu-entries.html">Prev</a></td><td class="upCell"><a accesskey="h" href="index.html">Contents</a></td><td class="nextCell"><a accesskey="n" href="view-menu.html">Next</a></td></tr><tr><td class="prevCell">The Menu Entries </td><td class="upCell">The Menu Entries</td><td class="nextCell"> The View Menu</td></tr></table></div><div id="footer_text">Would you like to make a comment or contribute an update to this page?<br>Send feedback to the <a href="mailto:kde-doc-english@kde.org" class="footer_email">KDE Docs Team</a></div></div></div></body></html></FILENAME><FILENAME filename="view-menu.html"><html><head><title>The View Menu</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, kdebase, Kate, text, editor, programmer, programming, projects, MDI, Multi, Document, Interface, terminal, console"><link rel="home" href="index.html" title="The Kate Handbook"><link rel="up" href="the-menu-entries.html" title="Chapter 8. The Menu Entries"><link rel="prev" href="edit-menu.html" title="The Edit Menu"><link rel="next" href="bookmarks-menu.html" title="The Bookmarks Menu"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> The View Menu</div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="edit-menu.html">Prev</a></td><td class="upCell">The Menu Entries</td><td class="nextCell"><a accesskey="n" href="bookmarks-menu.html">Next</a></td></tr></table></div><div id="contentBody"><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="view-menu"></a>The View Menu</h2></div></div></div><div class="variablelist"><dl class="variablelist"><dt><a name="view-new-window"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">View</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">New Window</span></span></span></dt><dd><p>
<span class="action">Opens another instance of <span class="application">Kate</span></span>.
The new instance will be identical to your previous instance.
</p></dd><dt><a name="view-next-tab"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">View</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Next Tab</span></span> (<span class="shortcut"><strong><span class="keycap"><strong>Alt</strong></span>+<span class="keysym">Right</span></strong></span>)</span></dt><dd><p>Activates the next tab in the tabbar.</p></dd><dt><a name="view-previous-tab"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">View</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Previous Tab</span></span> (<span class="shortcut"><strong><span class="keycap"><strong>Alt</strong></span>+<span class="keysym">Left</span></strong></span>)</span></dt><dd><p>Activates the previous tab in the tabbar.</p></dd><dt><a name="view-quick-open"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">View</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Quick Open</span></span> (<span class="shortcut"><strong><span class="keycap"><strong>Ctrl</strong></span>+<span class="keycap"><strong>Alt</strong></span>+<span class="keycap"><strong>O</strong></span></strong></span>)</span></dt><dd><p>Show a search field and a list of opened files in the editor area.
While entering text in the search
field the document names and document <acronym class="acronym">URL</acronym>s are searched for matching text.
While entering text in the search field you can use
the cursor keys <span class="keysym">Up</span> and <span class="keysym">Down</span> to navigate in the
list view. Pressing the <span class="keysym">Enter</span> key or double clicking on an item in the list switches
the view to the document selected in the list view. This makes switching between
documents easier, if there are a lot of them open.</p><p>This action is available also using the
<span class="inlinemediaobject"><img src="quickopen-22.png"></span>
icon at the top right of the editor window.</p></dd><dt><a name="view-split-previous"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">View</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Split View</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Previous Split View</span></span> (<span class="shortcut"><strong><span class="keycap"><strong>Shift</strong></span>+<span class="keycap"><strong>F8</strong></span></strong></span>)</span></dt><dd><p>Focus the previous document view, if you have split the editor
area in more views.</p></dd><dt><a name="view-split-next"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">View</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Split View</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Next Split View</span></span> (<span class="shortcut"><strong><span class="keycap"><strong>F8</strong></span></strong></span>)
</span></dt><dd><p>Focus the next document view, if you have split the editor
area in more views.</p></dd><dt><a name="view-split-left"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">View</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Split View</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Left Split View</span></span>
</span></dt><dd><p>Focus the split view intuitively on the left, using the cursor position to disambiguate if necessary.</p></dd><dt><a name="view-split-right"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">View</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Split View</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Right Split View</span></span>
</span></dt><dd><p>Focus the split view intuitively on the right, using the cursor position to disambiguate if necessary.</p></dd><dt><a name="view-split-upward"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">View</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Split View</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Upward Split View</span></span>
</span></dt><dd><p>Focus the split view intuitively upward, using the cursor position to disambiguate if necessary.</p></dd><dt><a name="view-split-downward"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">View</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Split View</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Downward Split View</span></span>
</span></dt><dd><p>Focus the split view intuitively downward, using the cursor position to disambiguate if necessary.</p></dd><dt><a name="view-split-vertical"></a><span class="term">
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">View</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Split View</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Split Vertical</span></span> (<span class="shortcut"><strong><span class="keycap"><strong>Ctrl</strong></span>+<span class="keycap"><strong>Shift</strong></span>+<span class="keycap"><strong>L</strong></span></strong></span>)
</span></dt><dd><p>This will split the frame (which may be the main editing area) in two equally sized frames,
the new one to the left of the current one. The new frame gets the focus, and will display the
same document as the old one.</p><p>See also <a class="link" href="kate-mdi.html" title="Working With the Kate MDI">Working with the <span class="application">Kate</span> MDI</a>.</p></dd><dt><a name="view-split-horizontal"></a><span class="term">
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">View</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Split View</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Split Horizontal</span></span> (<span class="shortcut"><strong><span class="keycap"><strong>Ctrl</strong></span>+<span class="keycap"><strong>Shift</strong></span>+<span class="keycap"><strong>T</strong></span></strong></span>)
</span></dt><dd><p>Splits the current frame (which may be the main editing area) in two equally sized frames,
the new one below the current one. The new frame gets the focus, and displays the same document as
the old one.</p><p>See also <a class="link" href="kate-mdi.html" title="Working With the Kate MDI">Working with the <span class="application">Kate</span> MDI</a></p></dd><dt><a name="move-document-to-new-vertical-split"></a><span class="term">
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">View</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Split View</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Move Document to New Vertical Split</span></span>
</span></dt><dd><p>This will split the currently active view vertically into two views and move the 
currently active document to right view.</p><p>See also <a class="link" href="kate-mdi.html" title="Working With the Kate MDI">Working with the <span class="application">Kate</span> MDI</a>.</p></dd><dt><a name="move-document-to-new-horizontal-split"></a><span class="term">
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">View</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Split View</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Move Document to New Horizontal Split</span></span>
</span></dt><dd><p>This will split the currently active view horizontally into two views and move the 
currently active document to view below.</p><p>See also <a class="link" href="kate-mdi.html" title="Working With the Kate MDI">Working with the <span class="application">Kate</span> MDI</a></p></dd><dt><a name="view-split-toggle-orientation"></a><span class="term">
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">View</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Split View</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Toggle Orientation</span></span>
</span></dt><dd><p>Switch between horizontal and vertical split.</p></dd><dt><a name="view-close-current"></a><span class="term">
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">View</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Split View</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Close Current View</span></span> (<span class="shortcut"><strong><span class="keycap"><strong>Ctrl</strong></span>+<span class="keycap"><strong>Shift</strong></span>+<span class="keycap"><strong>R</strong></span></strong></span>)
</span></dt><dd><p>Closes the active frame, which can be identified as the one displaying a
blinking cursor.  This is disabled, if there is only one frame
(the main editing area).</p><p>No documents get closed by closing a
frame – they will still be available in the <a class="link" href="view-menu.html" title="The View Menu"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">View</span></span> Menu</a> as well as in
the File List.</p><p>See also <a class="link" href="kate-mdi.html" title="Working With the Kate MDI">Working with the
<span class="application">Kate</span> MDI</a></p></dd><dt><a name="view-close-inactive"></a><span class="term">
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">View</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Split View</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Close Inactive Views</span></span>
</span></dt><dd><p>Closes all frames except the active frame (the one with a blinking cursor).
This is disabled, if there is only one frame (the main editing area).</p><p>No documents get closed by closing a frame – they will still be
available in the <a class="link" href="view-menu.html" title="The View Menu"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">View</span></span> Menu</a>
as well as in the File List.</p></dd><dt><a name="view-hide-inactive"></a><span class="term">
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">View</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Split View</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Hide Inactive Views</span></span>
</span></dt><dd><p>This hides all split views except the currently active one.</p></dd><dt><a name="view-move-splitter-left"></a><span class="term">
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">View</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Split View</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Move Splitter Left</span></span>
</span></dt><dd><p>When Split View is enabled, this will move the border between two
vertically split documents further left.</p></dd><dt><a name="view-move-splitter-right"></a><span class="term">
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">View</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Split View</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Move Splitter Right</span></span>
</span></dt><dd><p>When Split View is enabled, this will move the border between two
vertically split documents further right.</p></dd><dt><a name="view-move-splitter-up"></a><span class="term">
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">View</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Split View</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Move Splitter Up</span></span>
</span></dt><dd><p>When Split View is enabled, this will move the border between two
horizontally split documents further up.</p></dd><dt><a name="view-move-splitter-down"></a><span class="term">
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">View</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Split View</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Move Splitter Down</span></span>
</span></dt><dd><p>When Split View is enabled, this will move the border between two
horizontally split documents further down.</p></dd></dl></div><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title">Note</h3><p>Some common actions in the <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">View</span></span><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Split View</span></span> menu are available using the
<span class="guiicon"><span class="inlinemediaobject"><img src="view-split-left-right-22.png"></span></span> button at the top right corner of the editor window
</p></div><div class="variablelist"><dl class="variablelist"><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">View</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Tool Views</span></span></span></dt><dd><div class="variablelist"><dl class="variablelist"><dt><a name="view-toolviews-show-sidebars"></a><span class="term">
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">View</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Tool Views</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Show Sidebars</span></span> (<span class="shortcut"><strong><span class="keycap"><strong>Ctrl</strong></span>+<span class="keycap"><strong>Alt</strong></span>+<span class="keycap"><strong>Shift</strong></span>+<span class="keycap"><strong>F</strong></span></strong></span>)</span></dt><dd><p>Toggles the display of the sidebar button rows. This command
does not affect the display of the sidebar content widgets, any sidebar that
is visible will stay visible, and if you assigned shortcuts to the
commands below those will of course continue to work.</p></dd><dt><a name="view-toolviews-show-plugins"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">View</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Tool Views</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Show <span class="replaceable"><em class="replaceable"><code>Plugin</code></em></span></span></span></span></dt><dd><p>A list of all enabled plugins. Use the checkbox in front of each item
to toggle the display of the tool view.</p></dd></dl></div></dd><dt><a name="view-command-line"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">View</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Switch to Command Line</span></span> (<span class="shortcut"><strong><span class="keycap"><strong>F7</strong></span></strong></span>)</span></dt><dd><p>This command will toggle the display of the
<a class="ulink" href="help:/katepart/advanced-editing-tools-commandline.html" target="_top">built-in
command line</a>.
</p></dd><dt><a name="view-enlarge-font"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">View</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Enlarge Font</span></span> (<span class="shortcut"><strong><span class="keycap"><strong>Ctrl</strong></span>+<span class="keycap"><strong>+</strong></span></strong></span>)</span></dt><dd><p>This increases the display font size.</p></dd><dt><a name="view-shrink-font"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">View</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Shrink Font</span></span> (<span class="shortcut"><strong><span class="keycap"><strong>Ctrl</strong></span>+<span class="keycap"><strong>-</strong></span></strong></span>)</span></dt><dd><p>This decreases the display font size.</p></dd><dt><a name="view-schema"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">View</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Schema</span></span></span></dt><dd><p>This menu lists the available color schemes. You can change the
schema for the current view here, to change the default schema you need to
use the <a class="ulink" href="help:/katepart/config-dialog-editor.html#prefcolors" target="_top">Fonts
&amp; Colors</a> page of the config dialog.</p></dd><dt><a name="view-dynamic-word-wrap"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">View</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Word Wrap</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Dynamic Word Wrap</span></span> (<span class="shortcut"><strong><span class="keycap"><strong>F10</strong></span></strong></span>)</span></dt><dd><p>Toggles dynamic word wrap in the current view. Dynamic word
wrap makes all the text in a view visible without the need for horizontal
scrolling by rendering one actual line on more visual lines as needed.</p></dd><dt><a name="view-dynamic-word-wrap-indicators"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">View</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Word Wrap</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Dynamic Word Wrap Indicators</span></span></span></dt><dd><p>Choose when and how the dynamic word wrap indicators should be
displayed. This is only available if the <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Dynamic Word
Wrap</span></span> option is checked.</p></dd><dt><a name="view-show-statik-word-wrap-markers"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">View</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Word Wrap</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Show Static Word Wrap Marker</span></span></span></dt><dd><p>Toggles the display of a vertical line indicating the position
of the wrap width as configured in the
<a class="ulink" href="help:/katepart/config-dialog-editor.html#pref-wrap-words-at" target="_top">config
dialog</a>. This feature requires that you use a true fixed-width font.
</p></dd><dt><a name="view-show-icon-border"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">View</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Borders</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Show Icon Border</span></span> (<span class="shortcut"><strong><span class="keycap"><strong>F6</strong></span></strong></span>)</span></dt><dd><p>This is a toggle item. Setting it on checked will make the Icon Border
visible in the left side of the active editor, and vice versa. The Icon Border
indicates the positions of the marked lines in the editor.</p></dd><dt><a name="view-show-line-numbers"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">View</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Borders</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Show Line Numbers</span></span> (<span class="shortcut"><strong><span class="keycap"><strong>F11</strong></span></strong></span>)</span></dt><dd><p>This is a toggle Item. Setting it on checked will make a pane displaying
the line numbers of the document visible in the left border of the active
editor, and vice versa.</p></dd><dt><a name="view-scrollbar-marks"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">View</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Borders</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Show Scrollbar Marks</span></span></span></dt><dd><p>Toggles the visualization of bookmarks (and other marks) on the
vertical scrollbar. When enabled, a mark is represented by a thin line in the
mark color at the scrollbar, clicking the <span class="mousebutton">middle</span> mouse button on the line will scroll the view
to a position near the mark.</p></dd><dt><a name="view-border-show-scrollbar-minimap"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">View</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Borders</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Show Scrollbar Mini-Map</span></span></span></dt><dd><p>This will replace the scrollbar with a visualization of the
current document. For more information on the scrollbar minimap, see the
<a class="ulink" href="help:/katepart/kate-part-scrollbar-minimap.html" target="_top">Scrollbar Minimap
section of the <span class="application">KatePart</span> Handbook</a>.</p></dd><dt><a name="view-code-folding"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">View</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Code Folding</span></span></span></dt><dd><p>These options pertain to
<a class="ulink" href="help:/katepart/advanced-editing-tools-code-folding.html" target="_top">code
folding</a>:</p><div class="variablelist"><dl class="variablelist"><dt><a name="view-show-folding-markers"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Show Folding Markers</span></span> (<span class="shortcut"><strong><span class="keycap"><strong>F9</strong></span></strong></span>)</span></dt><dd><p>Toggles the display of the folding marker pane in the left
side of the view.</p></dd><dt><a name="view-fold-current-node"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Fold Current Node</span></span></span></dt><dd><p>Collapse the region that contains the cursor.</p></dd><dt><a name="view-unfold-current-node"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Unfold Current Node</span></span></span></dt><dd><p>Expand the region that contains the cursor.</p></dd><dt><a name="view-fold-toplevel-nodes"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Fold Toplevel Nodes</span></span> (<span class="shortcut"><strong><span class="keycap"><strong>Ctrl</strong></span>+<span class="keycap"><strong>Shift</strong></span>+<span class="keycap"><strong>-</strong></span></strong></span>)</span></dt><dd><p>Collapse all toplevel regions in the document.
Click on the right pointing triangle to expand all toplevel regions.</p></dd><dt><a name="view-unfold-toplevel-nodes"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Unfold Toplevel Nodes</span></span> (<span class="shortcut"><strong><span class="keycap"><strong>Ctrl</strong></span>+<span class="keycap"><strong>Shift</strong></span>+<span class="keycap"><strong>+</strong></span></strong></span>)</span></dt><dd><p>Expand all toplevel regions in the document.</p></dd></dl></div></dd><dt><a name="view-show-non-printable-spaces"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Show Non-Printable Spaces</span></span></span></dt><dd><p>Show/hide bounding box around non-printable spaces.</p></dd></dl></div></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="edit-menu.html">Prev</a></td><td class="upCell"><a accesskey="h" href="index.html">Contents</a></td><td class="nextCell"><a accesskey="n" href="bookmarks-menu.html">Next</a></td></tr><tr><td class="prevCell">The Edit Menu </td><td class="upCell">The Menu Entries</td><td class="nextCell"> The Bookmarks Menu</td></tr></table></div><div id="footer_text">Would you like to make a comment or contribute an update to this page?<br>Send feedback to the <a href="mailto:kde-doc-english@kde.org" class="footer_email">KDE Docs Team</a></div></div></div></body></html></FILENAME><FILENAME filename="bookmarks-menu.html"><html><head><title>The Bookmarks Menu</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, kdebase, Kate, text, editor, programmer, programming, projects, MDI, Multi, Document, Interface, terminal, console"><link rel="home" href="index.html" title="The Kate Handbook"><link rel="up" href="the-menu-entries.html" title="Chapter 8. The Menu Entries"><link rel="prev" href="view-menu.html" title="The View Menu"><link rel="next" href="sessions-menu.html" title="The Sessions Menu"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> The Bookmarks Menu</div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="view-menu.html">Prev</a></td><td class="upCell">The Menu Entries</td><td class="nextCell"><a accesskey="n" href="sessions-menu.html">Next</a></td></tr></table></div><div id="contentBody"><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="bookmarks-menu"></a>The Bookmarks Menu</h2></div></div></div><p>Below the entries described here, one entry for each bookmark in
the active document will be available. The text will be the first few
words of the marked line. Choose an item to move the cursor to the
start of that line. The editor will scroll as necessary to make that
line visible.</p><div class="variablelist"><dl class="variablelist"><dt><a name="bookmarks-set-bookmark"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Bookmarks</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Set Bookmark</span></span> (<span class="shortcut"><strong><span class="keycap"><strong>Ctrl</strong></span>+<span class="keycap"><strong>B</strong></span></strong></span>)</span></dt><dd><p>Sets or removes a bookmark in the current line of the active document.
(If it's there, it is removed, otherwise one is set.)</p></dd><dt><a name="bookmarks-clear-bookmarks"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Bookmarks</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Clear All Bookmarks</span></span></span></dt><dd><p>
This command will remove all the markers from the document as well as
the list of markers which is appended at the bottom of this menu item.
</p></dd><dt><a name="bookmarks-bookmarks-previous"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Bookmarks</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Previous</span></span> (<span class="shortcut"><strong><span class="keycap"><strong>Alt</strong></span>+<span class="keysym">PgUp</span></strong></span>)</span></dt><dd><p>This will move the cursor to beginning of the first above line
with a bookmark. The menuitem text will include the line number and the first
piece of text on the line. This item is only available when there is a bookmark
in a line above the cursor.</p></dd><dt><a name="bookmarks-bookmarks-next"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Bookmarks</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Next</span></span> (<span class="shortcut"><strong><span class="keycap"><strong>Alt</strong></span>+<span class="keysym">PgDn</span></strong></span>)</span></dt><dd><p>This will move the cursor to beginning of the next line with a
bookmark. The menuitem text will include the line number and the first piece of
text on the line. This item is only available when there is a bookmark in a line
below the cursor.</p></dd></dl></div></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="view-menu.html">Prev</a></td><td class="upCell"><a accesskey="h" href="index.html">Contents</a></td><td class="nextCell"><a accesskey="n" href="sessions-menu.html">Next</a></td></tr><tr><td class="prevCell">The View Menu </td><td class="upCell">The Menu Entries</td><td class="nextCell"> The Sessions Menu</td></tr></table></div><div id="footer_text">Would you like to make a comment or contribute an update to this page?<br>Send feedback to the <a href="mailto:kde-doc-english@kde.org" class="footer_email">KDE Docs Team</a></div></div></div></body></html></FILENAME><FILENAME filename="sessions-menu.html"><html><head><title>The Sessions Menu</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, kdebase, Kate, text, editor, programmer, programming, projects, MDI, Multi, Document, Interface, terminal, console"><link rel="home" href="index.html" title="The Kate Handbook"><link rel="up" href="the-menu-entries.html" title="Chapter 8. The Menu Entries"><link rel="prev" href="bookmarks-menu.html" title="The Bookmarks Menu"><link rel="next" href="tools-menu.html" title="The Tools Menu"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> The Sessions Menu</div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="bookmarks-menu.html">Prev</a></td><td class="upCell">The Menu Entries</td><td class="nextCell"><a accesskey="n" href="tools-menu.html">Next</a></td></tr></table></div><div id="contentBody"><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="sessions-menu"></a>The Sessions Menu</h2></div></div></div><p>This menu contains entries for using and managing <span class="application">Kate</span> sessions.
For more information, read <a class="link" href="fundamentals-using-sessions.html" title="Using Sessions">Using Sessions</a>.</p><div class="variablelist"><dl class="variablelist"><dt><a name="sessions-new"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Sessions</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">New</span></span></span></dt><dd><p>Creates a new empty session. All currently open files will
be closed.</p></dd><dt><a name="sessions-open"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Sessions</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Open Session...</span></span></span></dt><dd><p>Open an existing session. The Session Chooser dialog is
displayed to let you choose one.</p></dd><dt><a name="sessions-quick-open"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Sessions</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Quick Open Session</span></span></span></dt><dd><p>This submenu lets you open an existing session.</p></dd><dt><a name="sessions-save"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Sessions</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Save Session</span></span></span></dt><dd><p>Save the current session. If the session is anonymous, you will
be prompted for a session name.</p></dd><dt><a name="sessions-save-as"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Sessions</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Save Session As...</span></span></span></dt><dd><p>Save the current session under a new name. You are prompted for
a name to use.</p></dd><dt><a name="sessions-manage"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Sessions</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Manage Sessions...</span></span></span></dt><dd><p>Displays the Session Manager dialog which allows you to rename
and delete sessions.</p></dd></dl></div></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="bookmarks-menu.html">Prev</a></td><td class="upCell"><a accesskey="h" href="index.html">Contents</a></td><td class="nextCell"><a accesskey="n" href="tools-menu.html">Next</a></td></tr><tr><td class="prevCell">The Bookmarks Menu </td><td class="upCell">The Menu Entries</td><td class="nextCell"> The Tools Menu</td></tr></table></div><div id="footer_text">Would you like to make a comment or contribute an update to this page?<br>Send feedback to the <a href="mailto:kde-doc-english@kde.org" class="footer_email">KDE Docs Team</a></div></div></div></body></html></FILENAME><FILENAME filename="tools-menu.html"><html><head><title>The Tools Menu</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, kdebase, Kate, text, editor, programmer, programming, projects, MDI, Multi, Document, Interface, terminal, console"><link rel="home" href="index.html" title="The Kate Handbook"><link rel="up" href="the-menu-entries.html" title="Chapter 8. The Menu Entries"><link rel="prev" href="sessions-menu.html" title="The Sessions Menu"><link rel="next" href="settings-help-menu.html" title="The Settings and Help Menu"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> The Tools Menu</div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="sessions-menu.html">Prev</a></td><td class="upCell">The Menu Entries</td><td class="nextCell"><a accesskey="n" href="settings-help-menu.html">Next</a></td></tr></table></div><div id="contentBody"><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="tools-menu"></a>The Tools Menu</h2></div></div></div><div class="variablelist"><dl class="variablelist"><dt><a name="tools-read-only"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Tools</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Read Only Mode</span></span></span></dt><dd><p>Set the current document to Read Only mode. This prevents any text
addition and any changes in the document formatting.</p></dd><dt><a name="tools-filetype"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Tools</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Mode</span></span></span></dt><dd><p>Choose the filetype scheme you prefer for the active document. This
overwrites the global
<a class="ulink" href="help:/katepart/pref-open-save-modes-filetypes.html" target="_top">filetype</a>
mode set in <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Settings</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Configure
<span class="application">Kate</span>...</span></span> in the Filetypes tab for your current
document only.</p></dd><dt><a name="tools-highlighting"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Tools</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Highlighting</span></span></span></dt><dd><p>Choose the Highlighting scheme you prefer for the active document. This
overwrites the global highlighting mode set in <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Settings</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Configure Editor...</span></span> for your current document only.</p></dd><dt><a name="tools-indentation"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Tools</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Indentation</span></span></span></dt><dd><p>Choose the <a class="ulink" href="help:/katepart/kate-part-autoindent.html" target="_top">style of
indentation</a> you want for your active document.
This overwrites the global indentation mode set in <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Settings</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Configure Editor...</span></span> for your current document only.</p></dd><dt><a name="tools-encoding"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Tools</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Encoding</span></span></span></dt><dd><p>You can overwrite the default encoding set in <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Settings</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Configure Editor...</span></span> in the <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Open/Save</span></span> page
to set a different encoding for your current document. The encoding you
set here will be only valid for your current document.</p></dd><dt><a name="tools-end-of-line"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Tools</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">End of Line</span></span></span></dt><dd><p>Choose your preferred end of line mode for your active
document. This overwrites the global end of line mode set in <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Settings</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Configure Editor...</span></span> for your current document only.</p></dd><dt><a name="tools-add-byte-mark-order"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Tools</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Add Byte Mark Order (BOM)</span></span></span></dt><dd><p>Checking this action you can explicitly add a byte order mark for unicode
encoded documents. The byte order mark (BOM) is a Unicode character used to signal
the endianness (byte order) of a text file or stream, for more information see
<a class="ulink" href="https://en.wikipedia.org/wiki/Byte_order_mark" target="_top">Byte Order Mark</a>.</p></dd><dt><a name="tools-scripts"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Tools</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Scripts</span></span></span></dt><dd><p>This submenu contains a list of all scripted actions. The list can easily be
modified by
<a class="ulink" href="help:/katepart/dev-scripting.html#dev-scripting-command-line" target="_top">writing
your own scripts</a>. This way, <span class="application">Kate</span> can be extended with user-defined tools.
</p><p><a class="ulink" href="help:/katepart/dev-scripting.html" target="_top">There is a complete list of
scripts in the <span class="application">KatePart</span> documentation.</a></p></dd><dt><a name="tools-invoke-code-completition"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Tools</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Invoke Code Completion</span></span> (<span class="shortcut"><strong><span class="keycap"><strong>Ctrl</strong></span>+<span class="keysym">Space</span></strong></span>)</span></dt><dd><p>Manually invoke command completion, usually by using a shortcut bound to this action.</p></dd><dt><a name="tools-word-completition"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Tools</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Word Completion</span></span></span></dt><dd><p><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Reuse Word Below</span></span> (<span class="keycap"><strong>Ctrl</strong></span>+<span class="keycap"><strong>9</strong></span>) and <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Reuse Word Above</span></span>
(<span class="keycap"><strong>Ctrl</strong></span>+<span class="keycap"><strong>8</strong></span>) complete the
currently typed text by searching for similar
words backward or forward from the current cursor position. <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Shell
Completion</span></span> pops up a completion box with matching entries.</p></dd><dt><a name="spelling-automatic-spell-checking"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Tools</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Spelling</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Automatic Spell Checking</span></span> (<span class="shortcut"><strong><span class="keycap"><strong>Ctrl</strong></span>+<span class="keycap"><strong>Shift</strong></span>+<span class="keycap"><strong>O</strong></span></strong></span>)</span></dt><dd><p>When <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Automatic Spell Checking</span></span> is enabled, wrongly spelled text
is underlined in the document on-the-fly.</p></dd><dt><a name="spelling-spelling"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Tools</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Spelling</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Spelling...</span></span></span></dt><dd><p><span class="action">This initiates the spellchecking program - a program
designed to help the user catch and correct any spelling errors.</span></p><p>For more information on how to use the <span class="orgname">KDE</span> spellchecking program, see the
<a class="ulink" href="help:/fundamentals/spellcheck.html" target="_top"><span class="emphasis"><em>Check Spelling</em></span>
section of the <span class="emphasis"><em><span class="orgname">KDE</span> Fundamentals</em></span> documentation</a>.
</p></dd><dt><a name="tools-spelling-from-cursor"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Tools</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Spelling</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Spelling (from cursor)...</span></span></span></dt><dd><p>This initiates the spellchecking program but it starts where your cursor
is instead of at the beginning of the document.</p></dd><dt><a name="tools-spellcheck-selection"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Tools</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Spelling</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Spellcheck Selection...</span></span></span></dt><dd><p>Spellchecks the current selection.</p></dd><dt><a name="tools-change-dictionary"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Tools</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Spelling</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Change Dictionary</span></span></span></dt><dd><p>Displays a drop down box with all available dictionaries for spellchecking
at the bottom of the editor window. This allows easy switching of the spellcheck
dictionary <abbr class="abbrev">e.g.</abbr> for automatic spellcheck of text in different languages.</p></dd></dl></div></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="sessions-menu.html">Prev</a></td><td class="upCell"><a accesskey="h" href="index.html">Contents</a></td><td class="nextCell"><a accesskey="n" href="settings-help-menu.html">Next</a></td></tr><tr><td class="prevCell">The Sessions Menu </td><td class="upCell">The Menu Entries</td><td class="nextCell"> The Settings and Help Menu</td></tr></table></div><div id="footer_text">Would you like to make a comment or contribute an update to this page?<br>Send feedback to the <a href="mailto:kde-doc-english@kde.org" class="footer_email">KDE Docs Team</a></div></div></div></body></html></FILENAME><FILENAME filename="settings-help-menu.html"><html><head><title>The Settings and Help Menu</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, kdebase, Kate, text, editor, programmer, programming, projects, MDI, Multi, Document, Interface, terminal, console"><link rel="home" href="index.html" title="The Kate Handbook"><link rel="up" href="the-menu-entries.html" title="Chapter 8. The Menu Entries"><link rel="prev" href="tools-menu.html" title="The Tools Menu"><link rel="next" href="configuring-kate.html" title="Chapter 9. Configuring Kate"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> The Settings and Help Menu</div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="tools-menu.html">Prev</a></td><td class="upCell">The Menu Entries</td><td class="nextCell"><a accesskey="n" href="configuring-kate.html">Next</a></td></tr></table></div><div id="contentBody"><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="settings-help-menu"></a>The Settings and Help Menu</h2></div></div></div><p>
<span class="application">Kate</span> has the common <span class="orgname">KDE</span> <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Settings</span></span> and <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Help</span></span>
menu items, for more information read the sections about the <a class="ulink" href="help:/fundamentals/menus.html#menus-settings" target="_top">Settings Menu</a> and <a class="ulink" href="help:/fundamentals/menus.html#menus-help" target="_top">Help Menu</a>
of the <span class="orgname">KDE</span> Fundamentals with these additional entries:
</p><div class="variablelist"><dl class="variablelist"><dt><a name="settings-colorscheme"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Settings</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Color Theme</span></span></span></dt><dd><p>Use a different color scheme from the system’s global color schemes
described in the <span class="application">System Settings</span> module <a class="ulink" href="help:/kcontrol/colors/index.html" target="_top">Colors</a>.
</p></dd><dt><a name="settings-show-tabs"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Settings</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Show Tabs</span></span></span></dt><dd><p>Tabs are moveable using the <span class="mousebutton">left</span> mouse button and have actions in the context menu
to close documents, copy the path to the clipboard or open the folder of the document in the filemanager.
Using the <span class="inlinemediaobject"><img src="quickopen-22.png"></span>
<a class="link" href="view-menu.html#view-quick-open"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guibutton">Quick Open</span></span> </a> button makes switching between documents easy.
Click the <span class="inlinemediaobject"><img src="view-split-left-right-22.png"></span>
button with the <span class="mousebutton">left</span> mouse button to open a menu with actions from the <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">View</span></span><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Split View</span></span> menu.
</p></dd><dt><a name="settings-show-path"></a><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Settings</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Show Path in Titlebar</span></span></span></dt><dd><p>If enabled the full path of the active document is displayed, otherwise only the filename.
This is useful if you edit several files with the same filename to distinguish them.</p></dd></dl></div></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="tools-menu.html">Prev</a></td><td class="upCell"><a accesskey="h" href="index.html">Contents</a></td><td class="nextCell"><a accesskey="n" href="configuring-kate.html">Next</a></td></tr><tr><td class="prevCell">The Tools Menu </td><td class="upCell">The Menu Entries</td><td class="nextCell"> Configuring <span class="application">Kate</span></td></tr></table></div><div id="footer_text">Would you like to make a comment or contribute an update to this page?<br>Send feedback to the <a href="mailto:kde-doc-english@kde.org" class="footer_email">KDE Docs Team</a></div></div></div></body></html></FILENAME></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="vi-input-mode-chapter.html">Prev</a></td><td class="upCell"><a accesskey="h" href="index.html">Contents</a></td><td class="nextCell"><a accesskey="n" href="edit-menu.html">Next</a></td></tr><tr><td class="prevCell">The VI Input Mode </td><td class="upCell"> </td><td class="nextCell"> The Edit Menu</td></tr></table></div><div id="footer_text">Would you like to make a comment or contribute an update to this page?<br>Send feedback to the <a href="mailto:kde-doc-english@kde.org" class="footer_email">KDE Docs Team</a></div></div></div></body></html></FILENAME><FILENAME filename="configuring-kate.html"><html><head><title>Chapter 9. Configuring Kate</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, kdebase, Kate, text, editor, programmer, programming, projects, MDI, Multi, Document, Interface, terminal, console"><link rel="home" href="index.html" title="The Kate Handbook"><link rel="up" href="index.html" title="The Kate Handbook"><link rel="prev" href="settings-help-menu.html" title="The Settings and Help Menu"><link rel="next" href="configuring-kate-configdialog.html" title="The Main Configuration Dialog"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> Configuring <span class="application">Kate</span></div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="settings-help-menu.html">Prev</a></td><td class="upCell"> </td><td class="nextCell"><a accesskey="n" href="configuring-kate-configdialog.html">Next</a></td></tr></table></div><div id="contentBody"><div class="chapter"><div class="titlepage"><div><div><h1 class="title"><a name="configuring-kate"></a>Chapter 9. Configuring <span class="application">Kate</span></h1></div><div><div class="authorgroup"><p class="author"><span class="firstname">Anders</span> <span class="surname">Lund</span> <code class="email">&lt;anders@alweb.dk&gt;</code></p></div></div></div></div><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="configuring-overview"></a>Overview</h2></div></div></div><p>
<a class="indexterm" name="idm5241"></a>
<a name="find"></a>
<a name="find-again"></a>

<a name="replace"></a>

<a name="undo"></a>
<a name="redo"></a>
<span class="application">Kate</span> offers several means of tweaking the application to behave as desired.
The most important ones are:
</p><div class="variablelist"><dl class="variablelist"><dt><span class="term"><a name="configure"></a>The Configuration Dialog</span></dt><dd><p>The main configuration tool, allowing you to configure the <span class="application">Kate</span> application,
the editor component and the usage of plugins.</p></dd><dt><span class="term"><a name="settings"></a>The <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Settings</span></span> Menu</span></dt><dd><p>Allows you to change often used settings, and to
launch the configuration dialogs.</p></dd><dt><span class="term">The <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">View</span></span> Menu</span></dt><dd><p>Allows you to split the current frame, as well as to
display the icons and line numbers pane for the currently edited
document.</p></dd></dl></div><p>The embedded terminal uses the configuration defined in the
<span class="application">System Settings</span>, and may also be configured by clicking the
<span class="mousebutton">right</span> mouse button to display a context menu.</p></div><FILENAME filename="configuring-kate-configdialog.html"><html><head><title>The Main Configuration Dialog</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, kdebase, Kate, text, editor, programmer, programming, projects, MDI, Multi, Document, Interface, terminal, console"><link rel="home" href="index.html" title="The Kate Handbook"><link rel="up" href="configuring-kate.html" title="Chapter 9. Configuring Kate"><link rel="prev" href="configuring-kate.html" title="Chapter 9. Configuring Kate"><link rel="next" href="config-dialog.html" title="The Kate Application Configuration"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> The Main Configuration Dialog</div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="configuring-kate.html">Prev</a></td><td class="upCell">Configuring <span class="application">Kate</span></td><td class="nextCell"><a accesskey="n" href="config-dialog.html">Next</a></td></tr></table></div><div id="contentBody"><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="configuring-kate-configdialog"></a>The Main Configuration Dialog</h2></div></div></div><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="configdialog01.png"></div><p>The <span class="application">Kate</span> configuration dialog displays a tree of topics on the
left, and a configuration page corresponding to the selected topic on
the right.</p><p>The configuration is divided into two groups, namely:
</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p><a class="link" href="config-dialog.html" title="The Kate Application Configuration">Application configuration</a>
</p></li><li class="listitem"><p><a class="link" href="config-dialog.html#config-dialog-editor" title="The Editor Component Configuration">Editor component configuration</a></p></li></ul></div><p>

</p></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="configuring-kate.html">Prev</a></td><td class="upCell"><a accesskey="h" href="index.html">Contents</a></td><td class="nextCell"><a accesskey="n" href="config-dialog.html">Next</a></td></tr><tr><td class="prevCell">Configuring <span class="application">Kate</span> </td><td class="upCell">Configuring <span class="application">Kate</span></td><td class="nextCell"> The <span class="application">Kate</span> Application Configuration</td></tr></table></div><div id="footer_text">Would you like to make a comment or contribute an update to this page?<br>Send feedback to the <a href="mailto:kde-doc-english@kde.org" class="footer_email">KDE Docs Team</a></div></div></div></body></html></FILENAME><FILENAME filename="config-dialog.html"><html><head><title>The Kate Application Configuration</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, kdebase, Kate, text, editor, programmer, programming, projects, MDI, Multi, Document, Interface, terminal, console"><link rel="home" href="index.html" title="The Kate Handbook"><link rel="up" href="configuring-kate.html" title="Chapter 9. Configuring Kate"><link rel="prev" href="configuring-kate-configdialog.html" title="The Main Configuration Dialog"><link rel="next" href="credits.html" title="Chapter 10. Credits and License"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> The <span class="application">Kate</span> Application Configuration</div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="configuring-kate-configdialog.html">Prev</a></td><td class="upCell">Configuring <span class="application">Kate</span></td><td class="nextCell"><a accesskey="n" href="credits.html">Next</a></td></tr></table></div><div id="contentBody"><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="config-dialog"></a>The <span class="application">Kate</span> Application Configuration</h2></div></div></div><p>This group contains pages to configure the main <span class="application">Kate</span> application</p><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="config-dialog-general"></a>General</h3></div></div></div><p>This section contains a few global options for <span class="application">Kate</span></p><div class="variablelist"><dl class="variablelist"><dt><span class="term"><a name="config-general-behavior"></a>
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Behavior</span></span></span></dt><dd><div class="variablelist"><dl class="variablelist"><dt><span class="term"><a name="config-dialog-general-switch-to-output"></a>
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Switch to output view upon message type</span></span></span></dt><dd><p>This option allows configuring when <span class="application">Kate</span> should show an
output pane depending on the type of action output.</p><p>It is possible to choose between <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Never</span></span>,
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Error</span></span> (on error), <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Warning</span></span>
(on warning or above), <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Info</span></span> (on info or above),
and <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Log</span></span> (on log or above).</p></dd><dt><span class="term"><a name="config-dialog-general-separate-dialog"></a>
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Use a separate dialog for handling externally modified files</span></span></span></dt><dd><p>When enabled, <span class="application">Kate</span> will notify you with a modal dialog about all
files modified from outside the application whenever the main window receives input focus.
You will be able to deal with several modified files at once, you
can reload, save or discard changed files in groups.</p><p>If not enabled, <span class="application">Kate</span> will individually ask you what to do for each modified file only
when that file's view receives focus.</p></dd></dl></div></dd><dt><span class="term"><a name="config-general-quick-open"></a>
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Quick Open</span></span></span></dt><dd><div class="variablelist"><dl class="variablelist"><dt><span class="term"><a name="config-general-quick-open-match-mode"></a>
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Match Mode</span></span></span></dt><dd><p>Set the list mode for the <a class="link" href="view-menu.html#view-quick-open">Quick Open</a> tool. The files can be matched by their name or by their path.</p></dd><dt><span class="term"><a name="config-general-quick-open-list-mode"></a>
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">List Mode</span></span></span></dt><dd><p>Set the list mode for the <a class="link" href="view-menu.html#view-quick-open">Quick Open</a> tool. It is possible to choose from <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Current Project Files</span></span> and <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">All Projects Files</span></span>.</p></dd></dl></div></dd><dt><span class="term"><a name="config-general-tabs"></a>
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Tabs</span></span></span></dt><dd><div class="variablelist"><dl class="variablelist"><dt><span class="term"><a name="config-general-limit-number-of-tabs"></a>
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Limit number of tabs</span></span></span></dt><dd><p>Set the maximum number of tabs. Choose <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Unlimited</span></span> if you do not want to restrict this number.</p></dd><dt><span class="term"><a name="config-general-auto-hide-tabs"></a>
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Auto hide tabs</span></span></span></dt><dd><p>When checked tabs will be hidden if only one document is open.</p></dd><dt><span class="term"><a name="config-general-show-close-button"></a>
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Show close button</span></span></span></dt><dd><p>When checked each tab will display a close button.</p></dd><dt><span class="term"><a name="config-general-expand-tabs"></a>
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Expand tabs</span></span></span></dt><dd><p>When checked tabs take as much size as possible.</p></dd><dt><span class="term"><a name="config-general-double-click"></a>
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Double click opens a new document</span></span></span></dt><dd><p>When checked double click opens a new document.</p></dd><dt><span class="term"><a name="config-general-middle-click"></a>
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Middle click closes a document</span></span></span></dt><dd><p>When checked middle click closes a document.</p></dd><dt><span class="term"><a name="config-general-tab-scrolling"></a>
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Allow tab scrolling</span></span></span></dt><dd><p>When checked this will allow scrolling in tab bar when number of tabs is large.</p></dd><dt><span class="term"><a name="config-general-elide-tab-text"></a>
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Elide tab text</span></span></span></dt><dd><p>When checked tab text might be elided if its too long.</p></dd></dl></div></dd><dt><span class="term"><a name="config-general-mouse"></a>
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Tabs</span></span></span></dt><dd><div class="variablelist"><dl class="variablelist"><dt><span class="term"><a name="config-general-backward-button-pressed"></a>
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Backward button pressed</span></span></span></dt><dd><p>Allows selecting the mouse back button action between the <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Previous tab</span></span> and the <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">History back</span></span> items.</p></dd><dt><span class="term"><a name="config-general-forward-button-pressed"></a>
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Forward button pressed</span></span></span></dt><dd><p>Allows selecting the mouse forward button action between the <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Next tab</span></span> and the <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">History forward</span></span> items.</p></dd></dl></div></dd></dl></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="config-dialog-sessions"></a>Session</h3></div></div></div><p>This section contains options related to <a class="link" href="fundamentals-using-sessions.html" title="Using Sessions">using sessions</a>.</p><div class="variablelist"><dl class="variablelist"><dt><span class="term"><a name="config-dialog-sessions-startup-behavior"></a>
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Application Startup Behavior</span></span></span></dt><dd><p>Select how you want <span class="application">Kate</span> to behave at startup. This setting can be
overridden by specifying what to do on the <a class="link" href="fundamentals.html#command-line-options" title="Command Line Options">command line</a>.</p><div class="variablelist"><dl class="variablelist"><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Start new session</span></span></span></dt><dd><p>With this option, <span class="application">Kate</span> will start a new, unnamed session
when you start the application.</p></dd><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Load last-used session</span></span></span></dt><dd><p><span class="application">Kate</span> will use the most recently opened session at
startup. This is good if you want to use the same session always or switch
rarely.</p></dd><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Manually choose a session</span></span></span></dt><dd><p><span class="application">Kate</span> will display a small dialog that lets you choose
your preferred session, or load the default session if none have been saved.
This is the default behavior. Nice if you use a lot of different sessions
frequently.</p></dd></dl></div></dd><dt><span class="term"><a name="config-dialog-sessions-shutdown-behavior"></a>
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Application Startup/Shutdown Behavior</span></span></span></dt><dd><p>Select how you want <span class="application">Kate</span> to behave at shutdown. It is possible to define what
<span class="application">Kate</span> should <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Automatically save and restore</span></span>.</p><div class="variablelist"><dl class="variablelist"><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Newly-created unsaved files</span></span></span></dt><dd><p>With this item checked, <span class="application">Kate</span> will automatically save
all newly-created unsaved files.</p></dd><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Files with unsaved changes</span></span></span></dt><dd><p>This item allows configuring <span class="application">Kate</span> for automatically saving
all files with unsaved changes on shutdown.</p></dd><dt><span class="term"><a name="config-dialog-sessions-close-mod"></a>
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Close Kate entirely when the last file is closed</span></span></span></dt><dd><p>If enabled, <span class="application">Kate</span> will shutdown when the last file being edited is closed,
otherwise a blank page will open so that you can start a new file.</p></dd></dl></div></dd><dt><span class="term"><a name="config-dialog-sessions-elements"></a>
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Session Elements</span></span></span></dt><dd><div class="variablelist"><dl class="variablelist"><dt><span class="term"><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Include window configuration</span></span></span></dt><dd><p>If enabled, <span class="application">Kate</span> will save the window configuration
with each session.</p></dd></dl></div></dd><dt><span class="term"><a name="config-sessions-keep-meta-information"></a>
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Keep meta-information past sessions</span></span></span></dt><dd><p>When enabled, <span class="application">Kate</span> will store meta data such as bookmarks
and session configuration even when you close your documents. The data
will be used if the document is unchanged when reopened.</p></dd><dt><span class="term"><a name="config-sessions-delete-meta-information-after"></a>
<span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Delete unused meta-information after</span></span></span></dt><dd><p>Set the maximum number of days to keep meta information
for previously opened files. This helps keep the database of meta information
reasonably sized.</p></dd></dl></div><p>Any changes to the session data (opened files and, if enabled,
window configuration) will always be saved.</p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="config-dialog-plugins"></a>Plugins</h3></div></div></div><p>This page provides a list of installed plugins for the <span class="application">Kate</span>
application. Each plugin is represented with its name and a short description.
You can check the checkbox with an item to enable the plugin it represents.
</p><p>If a plugin provides configuration options, a section to access those
will appear as a child of this page.</p><p>For more information about the available plugins, see
<a class="xref" href="plugins.html" title="Chapter 4. Working with Plugins">Chapter 4, <i>Working with Plugins</i></a>.</p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="config-dialog-editor"></a>The Editor Component Configuration</h3></div></div></div><p>For information about this section of the configuration dialog, see the
<a class="ulink" href="help:/katepart/config-dialog.html" target="_top">Editor Component
Configuration section of the <span class="application">KatePart</span> Handbook</a>.</p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="config-variables"></a>Configuring With Document Variables</h3></div></div></div><p>For information about using document variables with <span class="application">Kate</span>, see the
<a class="ulink" href="help:/katepart/config-variables.html" target="_top">Configuring with Document
Variables section of the <span class="application">KatePart</span> Handbook</a>.</p></div></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="configuring-kate-configdialog.html">Prev</a></td><td class="upCell"><a accesskey="h" href="index.html">Contents</a></td><td class="nextCell"><a accesskey="n" href="credits.html">Next</a></td></tr><tr><td class="prevCell">The Main Configuration Dialog </td><td class="upCell">Configuring <span class="application">Kate</span></td><td class="nextCell"> Credits and License</td></tr></table></div><div id="footer_text">Would you like to make a comment or contribute an update to this page?<br>Send feedback to the <a href="mailto:kde-doc-english@kde.org" class="footer_email">KDE Docs Team</a></div></div></div></body></html></FILENAME></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="settings-help-menu.html">Prev</a></td><td class="upCell"><a accesskey="h" href="index.html">Contents</a></td><td class="nextCell"><a accesskey="n" href="configuring-kate-configdialog.html">Next</a></td></tr><tr><td class="prevCell">The Settings and Help Menu </td><td class="upCell"> </td><td class="nextCell"> The Main Configuration Dialog</td></tr></table></div><div id="footer_text">Would you like to make a comment or contribute an update to this page?<br>Send feedback to the <a href="mailto:kde-doc-english@kde.org" class="footer_email">KDE Docs Team</a></div></div></div></body></html></FILENAME><FILENAME filename="credits.html"><html><head><title>Chapter 10. Credits and License</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, kdebase, Kate, text, editor, programmer, programming, projects, MDI, Multi, Document, Interface, terminal, console"><link rel="home" href="index.html" title="The Kate Handbook"><link rel="up" href="index.html" title="The Kate Handbook"><link rel="prev" href="config-dialog.html" title="The Kate Application Configuration"><link rel="next" href="regular-expressions.html" title="Appendix A. Regular Expressions"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> Credits and License</div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="config-dialog.html">Prev</a></td><td class="upCell"> </td><td class="nextCell"><a accesskey="n" href="regular-expressions.html">Next</a></td></tr></table></div><div id="contentBody"><div class="chapter"><div class="titlepage"><div><div><h1 class="title"><a name="credits"></a>Chapter 10. Credits and License</h1></div></div></div><p>
<span class="application">Kate</span>. Program copyright 2000, 2001, 2002 - 2005 by the <span class="application">Kate</span> developer team.
</p><div class="variablelist"><p class="title"><b>The <span class="application">Kate</span> team:</b></p><dl class="variablelist"><dt><span class="term"><span class="firstname">Christoph</span> <span class="surname">Cullmann</span> <code class="email">(cullmann AT kde.org)</code></span></dt><dd><p>Project Manager &amp; Core Developer</p></dd><dt><span class="term"><span class="firstname">Anders</span> <span class="surname">Lund</span> <code class="email">(anders AT alweb.dk)</code></span></dt><dd><p>Core Developer, Perl syntax highlighting,
documentation</p></dd><dt><span class="term"><span class="firstname">Joseph</span> <span class="surname">Wenninger</span> <code class="email">(kde AT jowenn.at)</code></span></dt><dd><p>Core Developer, syntax highlighting</p></dd><dt><span class="term">Michael Bartl <code class="email">(michael.bartl1 AT chello.at)</code></span></dt><dd><p>Core Developer</p></dd><dt><span class="term">Phlip <code class="email">(phlip_cpp AT my-deja.com)</code></span></dt><dd><p>The project compiler</p></dd><dt><span class="term"><span class="firstname">Waldo</span> <span class="surname">Bastian</span> <code class="email">(bastian AT kde.org)</code></span></dt><dd><p>The cool buffer system</p></dd><dt><span class="term">Matt Newell <code class="email">(newellm AT proaxis.com)</code></span></dt><dd><p>Testing...</p></dd><dt><span class="term">Michael McCallum <code class="email">(gholam AT xtra.co.nz)</code></span></dt><dd><p>Core Developer</p></dd><dt><span class="term">Jochen Wilhemly <code class="email">(digisnap AT cs.tu-berlin.de)</code></span></dt><dd><p><span class="application">KWrite</span> Author</p></dd><dt><span class="term"><span class="firstname">Michael</span> <span class="surname">Koch</span> <code class="email">(koch AT kde.org)</code></span></dt><dd><p><span class="application">KWrite</span> port to <acronym class="acronym">KParts</acronym></p></dd><dt><span class="term"><span class="firstname">Christian</span> <span class="surname">Gebauer</span> <code class="email">(gebauer AT bigfoot.com)</code></span></dt><dd><p>Unspecified</p></dd><dt><span class="term"><span class="firstname">Simon</span> <span class="surname">Hausmann</span> <code class="email">(hausmann AT kde.org)</code></span></dt><dd><p>Unspecified</p></dd><dt><span class="term">Glen Parker <code class="email">(glenebob AT nwlink.com)</code></span></dt><dd><p><span class="application">KWrite</span> Undo History, KSpell integration</p></dd><dt><span class="term">Scott Manson <code class="email">(sdmanson AT alltel.net)</code></span></dt><dd><p><span class="application">KWrite</span> <acronym class="acronym">XML</acronym> syntax highlighting support</p></dd><dt><span class="term"><span class="firstname">John</span> <span class="surname">Firebaugh</span> <code class="email">(jfirebaugh AT kde.org)</code></span></dt><dd><p>Various Patches</p></dd><dt><span class="term"><span class="firstname">Dominik</span> <span class="surname">Haumann</span> <code class="email">(dhdev AT gmx.de)</code></span></dt><dd><p>Developer, Highlight wizard</p></dd></dl></div><div class="variablelist"><p class="title"><b>Many other people have contributed:</b></p><dl class="variablelist"><dt><span class="term">Matteo Merli <code class="email">(merlim AT libero.it)</code></span></dt><dd><p>Highlighting for RPM Spec-Files, Diff and more</p></dd><dt><span class="term">Rocky Scaletta <code class="email">(rocky AT purdue.edu)</code></span></dt><dd><p>Highlighting for VHDL</p></dd><dt><span class="term">Yury Lebedev </span></dt><dd><p>Highlighting for SQL</p></dd><dt><span class="term">Chris Ross</span></dt><dd><p>Highlighting for Ferite</p></dd><dt><span class="term">Nick Roux</span></dt><dd><p>Highlighting for ILERPG</p></dd><dt><span class="term"><span class="firstname">John</span> <span class="surname">Firebaugh</span></span></dt><dd><p>Highlighting for <span class="trademark">Java</span>™, and much more</p></dd><dt><span class="term"><span class="firstname">Carsten</span> <span class="surname">Niehaus</span></span></dt><dd><p>Highlighting for L<sup>A</sup>T<sub>E</sub>X</p></dd><dt><span class="term">Per Wigren</span></dt><dd><p>Highlighting for Makefiles, Python</p></dd><dt><span class="term">Jan Fritz</span></dt><dd><p>Highlighting for Python</p></dd><dt><span class="term"><span class="firstname">Daniel</span> <span class="surname">Naber</span></span></dt><dd><p>Small bugfixes, <acronym class="acronym">XML</acronym> plugin</p></dd></dl></div><p>Documentation copyright 2000,2001 <span class="firstname">Seth</span> <span class="surname">Rothberg</span>
<code class="email">(sethmr AT bellatlantic.org)</code></p><p>Documentation copyright 2002, 2003, 2005 <span class="firstname">Anders</span> <span class="surname">Lund</span>
<code class="email">(anders AT alweb.dk)</code></p><p><a name="gnu-fdl"></a>This documentation is licensed under the terms of the <a class="ulink" href="help:/kdoctools5-common/fdl-license.html" target="_top">GNU Free Documentation
License</a>.</p><p>This program is licensed under the terms of the <a class="ulink" href="help:/kdoctools5-common/gpl-license.html" target="_top">GNU General Public License</a>.</p></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="config-dialog.html">Prev</a></td><td class="upCell"><a accesskey="h" href="index.html">Contents</a></td><td class="nextCell"><a accesskey="n" href="regular-expressions.html">Next</a></td></tr><tr><td class="prevCell">The <span class="application">Kate</span> Application Configuration </td><td class="upCell"> </td><td class="nextCell"> Regular Expressions</td></tr></table></div><div id="footer_text">Would you like to make a comment or contribute an update to this page?<br>Send feedback to the <a href="mailto:kde-doc-english@kde.org" class="footer_email">KDE Docs Team</a></div></div></div></body></html></FILENAME><FILENAME filename="regular-expressions.html"><html><head><title>Appendix A. Regular Expressions</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, kdebase, Kate, text, editor, programmer, programming, projects, MDI, Multi, Document, Interface, terminal, console"><link rel="home" href="index.html" title="The Kate Handbook"><link rel="up" href="index.html" title="The Kate Handbook"><link rel="prev" href="credits.html" title="Chapter 10. Credits and License"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> Regular Expressions</div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="credits.html">Prev</a></td><td class="upCell"> </td><td class="nextCell"></td></tr></table></div><div id="contentBody"><div class="appendix"><div class="titlepage"><div><div><h1 class="title"><a name="regular-expressions"></a>Appendix A. Regular Expressions</h1></div></div></div><p>For information about using regular expressions in <span class="application">Kate</span>, see the
<a class="ulink" href="help:/katepart/regular-expressions.html" target="_top">Regular Expressions appendix
to the <span class="application">KatePart</span> Handbook</a>.</p></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="credits.html">Prev</a></td><td class="upCell"><a accesskey="h" href="index.html">Contents</a></td><td class="nextCell"></td></tr><tr><td class="prevCell">Credits and License </td><td class="upCell"> </td><td class="nextCell"> </td></tr></table></div><div id="footer_text">Would you like to make a comment or contribute an update to this page?<br>Send feedback to the <a href="mailto:kde-doc-english@kde.org" class="footer_email">KDE Docs Team</a></div></div></div></body></html></FILENAME></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"></td><td class="upCell"> </td><td class="nextCell"><a accesskey="n" href="introduction.html">Next</a></td></tr><tr><td class="prevCell"> </td><td class="upCell"> </td><td class="nextCell"> Introduction</td></tr></table></div><div id="footer_text">Would you like to make a comment or contribute an update to this page?<br>Send feedback to the <a href="mailto:kde-doc-english@kde.org" class="footer_email">KDE Docs Team</a></div></div></div></body></html></FILENAME>

Generated by dwww version 1.15 on Sun Jun 23 03:48:10 CEST 2024.