mirror of
https://github.com/eclipse-cdt/cdt
synced 2025-07-31 12:55:40 +02:00
277 lines
12 KiB
XML
277 lines
12 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<?eclipse version="3.0"?>
|
|
<!--
|
|
# Copyright (c) 2006, 2018 Wind River Systems, Inc. and others.
|
|
# All rights reserved. This program and the accompanying materials
|
|
# are made available under the terms of the Eclipse Public License 2.0
|
|
# which accompanies this distribution, and is available at
|
|
# https://www.eclipse.org/legal/epl-2.0/
|
|
|
|
SPDX-License-Identifier: EPL-2.0
|
|
#
|
|
# Contributors:
|
|
# Michael Scharf (Wind River) - initial API and implementation
|
|
# Martin Oberhuber (Wind River) - fixed copyright headers and beautified
|
|
# Michael Scharf (Wind River) - [237425] undefined tm.terminal command
|
|
# Martin Oberhuber (Wind River) - [378691][api] push Preferences into the Widget
|
|
# Martin Oberhuber (Wind River) - [434294] Add Mac bindings with COMMAND
|
|
# Martin Oberhuber (Wind River) - [434487] Add key bindings for "maximize view" and "quick access"
|
|
# Martin Oberhuber (Wind River) - [434939] Fix Keybinding conflicts with JEE Luna package
|
|
-->
|
|
<plugin>
|
|
<extension-point id="connectors" name="%terminal.connectors.name" schema="schema/connectors.exsd"/>
|
|
|
|
<extension point="org.eclipse.ui.contexts">
|
|
<context
|
|
name="%terminal.context.name.terminal"
|
|
description="%terminal.context.description.terminal"
|
|
parentId="org.eclipse.ui.contexts.window"
|
|
id="org.eclipse.tm.terminal.TerminalContext"
|
|
/>
|
|
<context
|
|
name="%terminal.context.name.edit"
|
|
description="%terminal.context.description.edit"
|
|
parentId="org.eclipse.ui.contexts.window"
|
|
id="org.eclipse.tm.terminal.EditContext" />
|
|
</extension>
|
|
|
|
<extension point="org.eclipse.help.contexts">
|
|
<contexts file="HelpContexts.xml"/>
|
|
</extension>
|
|
<extension
|
|
point="org.eclipse.ui.commands">
|
|
<!-- Dummy commands for bindings, see below -->
|
|
<command
|
|
categoryId="org.eclipse.tm.terminal.category1"
|
|
id="org.eclipse.tm.terminal.command1"
|
|
name="%terminal.insertion.name"/>
|
|
<command
|
|
categoryId="org.eclipse.tm.terminal.category1"
|
|
id="org.eclipse.tm.terminal.copy"
|
|
name="%terminal.command.copy.name"/>
|
|
<command
|
|
categoryId="org.eclipse.tm.terminal.category1"
|
|
id="org.eclipse.tm.terminal.paste"
|
|
name="%terminal.command.paste.name"/>
|
|
<command
|
|
categoryId="org.eclipse.tm.terminal.category1"
|
|
id="org.eclipse.tm.terminal.maximize"
|
|
name="%terminal.command.maximize.name">
|
|
</command>
|
|
<command
|
|
categoryId="org.eclipse.tm.terminal.category1"
|
|
id="org.eclipse.tm.terminal.quickaccess"
|
|
name="%terminal.command.quickaccess.name"/>
|
|
<category
|
|
description="%terminal.view.insertion.description"
|
|
id="org.eclipse.tm.terminal.category1"
|
|
name="%terminal.insertion.category.name"/>
|
|
</extension>
|
|
|
|
<extension point="org.eclipse.help.contexts">
|
|
<contexts file="HelpContexts.xml"/>
|
|
</extension>
|
|
|
|
<extension
|
|
point="org.eclipse.ui.bindings">
|
|
<!--
|
|
These keybindings are needed to disable the menu-activation keys (e.g.,
|
|
Alt-F for the File menu, etc.). The code in method
|
|
TerminalControl.TerminalFocusListener.focusGained() disables the Eclipse key
|
|
binding service, but it doesn't disable the global menu-activation
|
|
keys.
|
|
-->
|
|
<key
|
|
commandId="org.eclipse.tm.terminal.command1"
|
|
contextId="org.eclipse.tm.terminal.TerminalContext"
|
|
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
|
|
sequence="Alt+A"/> <!-- Search -->
|
|
<key
|
|
commandId="org.eclipse.tm.terminal.command1"
|
|
contextId="org.eclipse.tm.terminal.TerminalContext"
|
|
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
|
|
sequence="Alt+B"/> <!-- Readline word-left: just to be safe -->
|
|
<key
|
|
commandId="org.eclipse.tm.terminal.command1"
|
|
contextId="org.eclipse.tm.terminal.TerminalContext"
|
|
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
|
|
sequence="Alt+C"/> <!-- ClearCase, Extract Constant -->
|
|
<key
|
|
commandId="org.eclipse.tm.terminal.command1"
|
|
contextId="org.eclipse.tm.terminal.TerminalContext"
|
|
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
|
|
sequence="Alt+D"/> <!-- Design, Diagram, Debug -->
|
|
<key
|
|
commandId="org.eclipse.tm.terminal.command1"
|
|
contextId="org.eclipse.tm.terminal.TerminalContext"
|
|
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
|
|
sequence="Alt+E"/> <!-- Edit -->
|
|
<key
|
|
commandId="org.eclipse.tm.terminal.command1"
|
|
contextId="org.eclipse.tm.terminal.TerminalContext"
|
|
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
|
|
sequence="Alt+F"/> <!-- File -->
|
|
<key
|
|
commandId="org.eclipse.tm.terminal.command1"
|
|
contextId="org.eclipse.tm.terminal.TerminalContext"
|
|
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
|
|
sequence="Alt+G"/> <!-- Tar&get -->
|
|
<key
|
|
commandId="org.eclipse.tm.terminal.command1"
|
|
contextId="org.eclipse.tm.terminal.TerminalContext"
|
|
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
|
|
sequence="Alt+H"/> <!-- Help -->
|
|
<key
|
|
commandId="org.eclipse.tm.terminal.command1"
|
|
contextId="org.eclipse.tm.terminal.TerminalContext"
|
|
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
|
|
sequence="Alt+L"/> <!-- Ana&lyze -->
|
|
<key
|
|
commandId="org.eclipse.tm.terminal.command1"
|
|
contextId="org.eclipse.tm.terminal.TerminalContext"
|
|
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
|
|
sequence="Alt+N"/> <!-- Navigate -->
|
|
<key
|
|
commandId="org.eclipse.tm.terminal.command1"
|
|
contextId="org.eclipse.tm.terminal.TerminalContext"
|
|
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
|
|
sequence="Alt+P"/> <!-- Project, Papyrus, Ping -->
|
|
<key
|
|
commandId="org.eclipse.tm.terminal.command1"
|
|
contextId="org.eclipse.tm.terminal.TerminalContext"
|
|
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
|
|
sequence="Alt+R"/> <!-- Run -->
|
|
<key
|
|
commandId="org.eclipse.tm.terminal.command1"
|
|
contextId="org.eclipse.tm.terminal.TerminalContext"
|
|
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
|
|
sequence="Alt+S"/> <!-- Source -->
|
|
<key
|
|
commandId="org.eclipse.tm.terminal.command1"
|
|
contextId="org.eclipse.tm.terminal.TerminalContext"
|
|
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
|
|
sequence="Alt+T"/> <!-- Refactor -->
|
|
<key
|
|
commandId="org.eclipse.tm.terminal.command1"
|
|
contextId="org.eclipse.tm.terminal.TerminalContext"
|
|
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
|
|
sequence="Alt+V"/> <!-- CVS -->
|
|
<key
|
|
commandId="org.eclipse.tm.terminal.command1"
|
|
contextId="org.eclipse.tm.terminal.TerminalContext"
|
|
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
|
|
sequence="Alt+W"/> <!-- Window -->
|
|
<key
|
|
commandId="org.eclipse.tm.terminal.command1"
|
|
contextId="org.eclipse.tm.terminal.TerminalContext"
|
|
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
|
|
sequence="Alt+Y"/> <!-- S&ystem -->
|
|
<!--
|
|
For Copy and Paste, we need replacements since the default Ctrl+C / Ctrl+V
|
|
need to go to the terminal and thus are not available for local Copy and Paste.
|
|
This is not an issue on Mac, where COMMAND+C / COMMAND+V works fine.
|
|
|
|
We add both CTRL+INSERT and CTRL+SHIFT+C since on some keyboards, an INSERT key
|
|
may not be available. Note: we want the "least surprising" and "most available"
|
|
of all bindings to be shown in the context menu according to the algorithm in
|
|
IBindingService#getBestActiveBindingFor().
|
|
Therefore, we do not want these extra bindings to be shown on the Mac.
|
|
|
|
Unfortunately, there is no way in Bindings to say "NOT Platforms X,Y,Z"
|
|
We would really like one of the following here but it doesnt work with Eclipse 4.3:
|
|
platforms="!carbon,!cocoa"
|
|
platforms="win32,motif,gtk,photon,wpf"
|
|
Since Eclipse doesnt support this, we will redefine the original Mac bindings below,
|
|
just to make them show up in the context menu.
|
|
-->
|
|
<key
|
|
commandId="org.eclipse.tm.terminal.copy"
|
|
contextId="org.eclipse.tm.terminal.EditContext"
|
|
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
|
|
sequence="M1+INSERT"/><!-- Ctrl+Insert -->
|
|
<key
|
|
commandId="org.eclipse.tm.terminal.copy"
|
|
contextId="org.eclipse.tm.terminal.EditContext"
|
|
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
|
|
sequence="M1+M2+C"><!-- Ctrl+Shift+C -->
|
|
</key>
|
|
<key
|
|
commandId="org.eclipse.tm.terminal.paste"
|
|
contextId="org.eclipse.tm.terminal.EditContext"
|
|
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
|
|
sequence="M2+INSERT"/><!-- Shift+Insert -->
|
|
<key
|
|
commandId="org.eclipse.tm.terminal.paste"
|
|
contextId="org.eclipse.tm.terminal.EditContext"
|
|
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
|
|
sequence="M1+M2+V"/><!-- Ctrl+Shift+V -->
|
|
<!--
|
|
Mac shortcuts need to be redefined with Platform Filter, in order to make
|
|
them "better" than the bindings above and thus show up in the menu.
|
|
See the algorithm in IBindingService#getBestActiveBindingFor().
|
|
It looks like the "carbon" entry is also valid for "cocoa" automatically.
|
|
-->
|
|
<key
|
|
commandId="org.eclipse.tm.terminal.copy"
|
|
contextId="org.eclipse.tm.terminal.EditContext"
|
|
platform="carbon"
|
|
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
|
|
sequence="M1+C">
|
|
</key>
|
|
<key
|
|
commandId="org.eclipse.tm.terminal.paste"
|
|
contextId="org.eclipse.tm.terminal.EditContext"
|
|
platform="carbon"
|
|
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
|
|
sequence="M1+V"/>
|
|
<!--
|
|
Additional Bindings for Quick Access (Ctrl+3) and Maximize View (Ctrl+M)
|
|
since these are extremely valuable, but the original shortcut may need
|
|
to go to the Terminal.
|
|
-->
|
|
<!-- org.eclipse.ui.window.quickAccess -->
|
|
<key
|
|
commandId="org.eclipse.tm.terminal.quickaccess"
|
|
contextId="org.eclipse.tm.terminal.EditContext"
|
|
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
|
|
sequence="M3+ARROW_RIGHT"/>
|
|
<!-- org.eclipse.ui.window.maximizePart -->
|
|
<key
|
|
commandId="org.eclipse.tm.terminal.maximize"
|
|
contextId="org.eclipse.tm.terminal.EditContext"
|
|
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
|
|
sequence="M3+ARROW_UP"/>
|
|
</extension>
|
|
|
|
<extension point="org.eclipse.ui.preferencePages">
|
|
<page
|
|
name="%terminal.preferences.name"
|
|
class="org.eclipse.tm.internal.terminal.preferences.TerminalPreferencePage"
|
|
id="org.eclipse.tm.terminal.TerminalPreferencePage">
|
|
</page>
|
|
</extension>
|
|
|
|
<extension point="org.eclipse.core.runtime.preferences">
|
|
<initializer class="org.eclipse.tm.internal.terminal.preferences.TerminalPreferenceInitializer"/>
|
|
</extension>
|
|
|
|
<extension point="org.eclipse.ui.themes" id="terminal.font">
|
|
<fontDefinition
|
|
defaultsTo="org.eclipse.jface.textfont"
|
|
id="terminal.views.view.font.definition"
|
|
label="%terminal.font.label">
|
|
<description>
|
|
%terminal.font.description
|
|
</description>
|
|
</fontDefinition>
|
|
</extension>
|
|
|
|
<!-- Theme contributions -->
|
|
<extension point="org.eclipse.e4.ui.css.swt.theme">
|
|
<stylesheet
|
|
uri="css/org.eclipse.tm.terminal.stylesheet.dark.css">
|
|
<themeid refid="org.eclipse.e4.ui.css.theme.e4_dark"/>
|
|
</stylesheet>
|
|
</extension>
|
|
|
|
</plugin>
|