Skip to main content
summaryrefslogblamecommitdiffstats
blob: 1ec047e252eb57bc3257f72aa0e552d9be4d250d (plain) (tree)
1
2
3
4
5
6
7
8
9

                                      
    
                                                               




                                                                       
               
                                                               
                                                                        
                                                                      
                                                                                
                                                                        
                                                                                                  
                                                                                         
   
        
                                                                                                                

                                                         


                                                                

                                                        
            

                                                            





                                                       
               






                                                          


                                                          
                                                


                                                          
                                                 








                                                          




                                                              




                                                 

















                                                                                  














                                                                           









                                                                     
                                               








                                                                     




                                                                     




                                                                     
                                                              
























                                                                     




                                                                     






















                                                                                               



                                                                     






                                                                     



                                                                     













                                                                                    


                                                           
                             
                                                                     
                             




                                                                                   
                                                
          
                                                           


                                                                     
                                                 
          
                                                        


                                                                     
               
 
                                                     





                                                                                       

                                                           


                                                                                                       

                                                               








                                                    







                                                                  
 
         
<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.0"?>
<!--
# Copyright (c) 2006, 2014 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 v1.0
# which accompanies this distribution, and is available at
# http://www.eclipse.org/legal/epl-v10.html
#
# 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="terminalConnectors" name="Terminal Connectors" schema="schema/terminalConnectors.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"/>
      <modifier class="org.eclipse.tm.internal.terminal.preferences.PreferenceModifyListener"/>
   </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>

Back to the top