SQL-Developer: Using macros – Update for version 4.01 ++

[This is a follow up to post SQL-Developer: Using macros]

Has the macro function been dropped?

I got a question from “Bob Thompson“, he asked if the macro function has been removed in SQL Developer version 4.01.
So I tried to use the function on my computer and it still worked.
But then I looked in the preferences (menu “Tools/Preferences”) under “Shortcut Keys”: the macro commands are no loger there!

Dont panik!

The macro feature is still there, what’s missing from version 4.01 on is the ability to add the neccessary shortcut keys via the preferences window.
That’s why it still working on my computer – the update to version 4.01 took over the settings for the shortcut keys.

Workaround

Here is workaround to add the shortcut keys for macro recording and playback manually:

  1. Quit Oracle SQL Developer
    .
  2. Look for the file settings.xml in the following folder:
    %USERPROFILE%\AppData\Roaming\SQL Developer\system4.0.1.14.48\o.ide.12.1.3.2.41.140207.1351\settings.xml
    On some systems it might be in a different place:
    %USERPROFILE%\Application Data\Sql Developer\system4.0.1.14.48\o.ide.12.1.3.2.41.140207.1351\settings.xml
    .
  3. Open the file settings.xml with the text editor of your choice.
  4. Search for the following section in the file:
       oracle/ide/ceditor/keymap/accelerators.xml
          oracle.ide.keyboard.KeyStrokeMap">
             <data>
    
  5. Add the following lines underneath the tag “<data>”:
    <Item class="oracle.javatools.util.Pair">
       <first class="java.lang.String">toggle-macro-recording</first>
       <second class="oracle.ide.keyboard.KeyStrokes">
          <data>
             <Item class="javax.swing.KeyStroke">shift control PERIOD</Item>
          </data>
       </second>
    </Item>
    <Item class="oracle.javatools.util.Pair">
       <first class="java.lang.String">playback-macro</first>
       <second class="oracle.ide.keyboard.KeyStrokes">
          <data>
             <Item class="javax.swing.KeyStroke">control PERIOD</Item>
          </data>
       </second>
    </Item>
    
  6. The final result should look like this:
       oracle/ide/ceditor/keymap/accelerators.xml
          oracle.ide.keyboard.KeyStrokeMap">
             <data>
                <Item class="oracle.javatools.util.Pair">            
                   <first class="java.lang.String">toggle-macro-recording</first>
                   <second class="oracle.ide.keyboard.KeyStrokes">
                      <data>
                         <Item class="javax.swing.KeyStroke">shift control PERIOD</Item>
                      </data>
                   </second>
                </Item>
                <Item class="oracle.javatools.util.Pair">
                   <first class="java.lang.String">playback-macro</first>
                   <second class="oracle.ide.keyboard.KeyStrokes">
                      <data>
                         <Item class="javax.swing.KeyStroke">control PERIOD</Item>
                      </data>
                   </second>
                </Item>
    
  7. Save the file.
    .
  8. Restart Oracle SQL-Developer and use the macro function as describe here:
    SQL-Developer: Using macros

 

Additional informations can be found in these OTN Community posts:

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s