This file is indexed.

/usr/share/doc/gnat-gps/html/Binding-actions-to-keys.html is in gnat-gps-doc 5.0-16.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- Copyright (C) 2002-2010 AdaCore.

This document is free; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.

This document is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License along
with this program; if not, see http://www.gnu.org/licenses/.

A copy of the license is included in the section entitled
"GNU General Public License". -->
<!-- Created by GNU Texinfo 5.1, http://www.gnu.org/software/texinfo/ -->
<head>
<title>Using the GNAT Programming Studio: Binding actions to keys</title>

<meta name="description" content="Using the GNAT Programming Studio: Binding actions to keys">
<meta name="keywords" content="Using the GNAT Programming Studio: Binding actions to keys">
<meta name="resource-type" content="document">
<meta name="distribution" content="global">
<meta name="Generator" content="makeinfo">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<link href="index.html#Top" rel="start" title="Top">
<link href="Index-table.html#Index-table" rel="index" title="Index table">
<link href="Customizing-through-XML-and-Python-files.html#Customizing-through-XML-and-Python-files" rel="up" title="Customizing through XML and Python files">
<link href="Preferences-support-in-custom-files.html#Preferences-support-in-custom-files" rel="next" title="Preferences support in custom files">
<link href="Adding-tool-bar-buttons.html#Adding-tool-bar-buttons" rel="previous" title="Adding tool bar buttons">
<style type="text/css">
<!--
   

a.summary-letter {text-decoration: none}
blockquote.smallquotation {font-size: smaller}
div.display {margin-left: 3.2em}
div.example {margin-left: 3.2em}
div.indentedblock {margin-left: 3.2em}
div.lisp {margin-left: 3.2em}
div.smalldisplay {margin-left: 3.2em}
div.smallexample {margin-left: 3.2em}
div.smallindentedblock {margin-left: 3.2em; font-size: smaller}
div.smalllisp {margin-left: 3.2em}
kbd {font-style:oblique}
pre.display {font-family: inherit}
pre.format {font-family: inherit}
pre.menu-comment {font-family: serif}
pre.menu-preformatted {font-family: serif}
pre.smalldisplay {font-family: inherit; font-size: smaller}
pre.smallexample {font-size: smaller}
pre.smallformat {font-family: inherit; font-size: smaller}
pre.smalllisp {font-size: smaller}
span.nocodebreak {white-space:nowrap}
span.nolinebreak {white-space:nowrap}
span.roman {font-family:serif; font-weight:normal}
span.sansserif {font-family:sans-serif; font-weight:normal}
ul.no-bullet {list-style: none}
pre.smallexample {background-color:rgb(240,240,240);
                     font-family: courier new,courier,fixed;
                     font-size: 14px;
                     margin: 0px 40px 0px 40px;
                     border-width: 1px 2px 2px 1px;
                     border-top-style: dotted;
                     border-left-style: dotted;
                     border-right-style: solid;
                     border-bottom-style: solid;
                     border-color: black;}
   code             {color:black;
                     font-family: courier new,courier,fixed;
                     font-size: 14px;}
   body             {font-family: arial,helvetica,sans-serif;
                     font-size: 16px;
                     max-width: 800px;
                     text-align: justify}
   samp             {font-family: courier new,courier,fixed;
                     font-size: 14px}
                    

-->
</style>


</head>

<body lang="en" bgcolor="#FFFFFF" text="#000000" link="#0000FF" vlink="#800080" alink="#FF0000">
<a name="Binding-actions-to-keys"></a>
<div class="header">
<p>
Next: <a href="Preferences-support-in-custom-files.html#Preferences-support-in-custom-files" accesskey="n" rel="next">Preferences support in custom files</a>, Previous: <a href="Adding-tool-bar-buttons.html#Adding-tool-bar-buttons" accesskey="p" rel="previous">Adding tool bar buttons</a>, Up: <a href="Customizing-through-XML-and-Python-files.html#Customizing-through-XML-and-Python-files" accesskey="u" rel="up">Customizing through XML and Python files</a> &nbsp; [<a href="Index-table.html#Index-table" title="Index" rel="index">Index</a>]</p>
</div>
<hr>
<a name="Binding-actions-to-keys-1"></a>
<h4 class="subsection">16.5.8 Binding actions to keys</h4>
<a name="index-key-7"></a>
<a name="index-_003ckey_003e"></a>

<p>All the actions defined above can be bound to specific key shortcuts through
the <code>&lt;key&gt;</code> attribute. As usual, it requires one <code>&lt;action&gt;</code>
attribute to specify what to do when the key is pressed. The name of the
action can start with a &rsquo;/&rsquo; to indicate that a menu should be executed
instead of a user-defined action.
</p>
<p>If the action is the empty string, then instead the key will no longer be
bound to any action.
</p>
<p>This tag doesn&rsquo;t contain any child tag. Instead, its text contents specified
the keyboard shortcut. The name
of the key can be prefixed by <code>control-</code>, <code>alt-</code>, <code>shift-</code> or
any combination of these to specify the key modifiers to apply.
</p>
<p>You can also define multiple key bindings similar to Emacs&rsquo;s by separating them
by a space. For instance, <code>control-x control-k</code> means that the user should
press <tt class="key">control-x</tt>, followed by a <tt class="key">control-k</tt> to activate the
corresponding action. This is only possible if the prefix key is not already
bound to an action. If it is, you should first unbound it by passing an
empty action to <code>&lt;key&gt;</code>.
</p>
<p>Use an empty string to describe the key binding if you wish to deactivate a
preexisting binding. The second example below deactivates the standard binding.
</p>
<div class="smallexample">
<pre class="smallexample">&lt;?xml version=&quot;1.0&quot; ?&gt;
&lt;keys&gt;
  &lt;key action=&quot;expand alias&quot;&gt;control-o&lt;/key&gt;
  &lt;key action=&quot;Jump to matching delimiter&quot; /&gt;

  &lt;!--  Bind a key to a menu --&gt;
  &lt;key action=&quot;/Window/Close&quot;&gt;control-x control-w&lt;/key&gt;
&lt;/key&gt;
</pre></div>

<p>Multiple actions can be bound to the same key binding. They will all be
executed in turn, followed by any menu for which this key is an accelerator.
</p>
<p>When GPS processes a <code>&lt;key&gt;</code> tag, it does the following:
</p><ul>
<li> Removes all actions bound to that key.
   This ensures that if you press the key, any action associated with it by
   default in GPS or in some other XML file will no longer be executed, and
   only the last one will be executed.
</li><li> Adds the new key to the list of shortcuts that can execute the
   action. Any existing shortcut on the action is preserved, and
   therefore there are multiple possible shortcuts for this action.
</li></ul>

<hr>
<div class="header">
<p>
Next: <a href="Preferences-support-in-custom-files.html#Preferences-support-in-custom-files" accesskey="n" rel="next">Preferences support in custom files</a>, Previous: <a href="Adding-tool-bar-buttons.html#Adding-tool-bar-buttons" accesskey="p" rel="previous">Adding tool bar buttons</a>, Up: <a href="Customizing-through-XML-and-Python-files.html#Customizing-through-XML-and-Python-files" accesskey="u" rel="up">Customizing through XML and Python files</a> &nbsp; [<a href="Index-table.html#Index-table" title="Index" rel="index">Index</a>]</p>
</div>



</body>
</html>