Difference between revisions of "WDSC LPEX"

From MidrangeWiki
Jump to: navigation, search
(+Show Block Nesting)
(Remap keyboard shortcuts: + files for key mapping settings)
Line 86: Line 86:
 
[[User:Mattt|Mattt]] 13:56, 29 June 2007 (CDT)
 
[[User:Mattt|Mattt]] 13:56, 29 June 2007 (CDT)
  
Key mappings (7.0) are stored in <workspace>.metadata/.plugins/com.ibm.lpex/Editor.properties
+
<br>
 +
<b>Key mappings are stored in the following files:</b>
 +
 
 +
{| class="wikitable" class=sortable style="position:relative; margin: 0 0 0.5em 1em; border-collapse: collapse; background:white; clear:right; text-align:left;" border="1" cellpadding="3"
 +
|-
 +
! IDE version
 +
! File name
 +
|-
 +
| 7.0
 +
| <workspace>.metadata/.plugins/com.ibm.lpex/Editor.properties
 +
|-
 +
| 8.5
 +
| <workspace>.metadata/.plugins/com.ibm.lpex/Editor.properties
 +
|-
 +
| 9.0
 +
| <workspace>.metadata/.plugins/org.eclipse.core.runtime/.settings/com.ibm.lpex.prefs
 +
|}
  
 
==LPEX command line==
 
==LPEX command line==

Revision as of 20:57, 3 July 2013

WDSC LPEX - Tips for using LPEX (Live Parsing eXtensible Editor)

LPEX is a Java-based editor that 'knows' about System i code, especially in its accommodation of source members, sequence number and date stamp as well as parsers/syntax checkers for DDS, RPG and CL (among others.)

Some LPEX features:

  • Syntax checking
  • Colorised source
  • Outline view
  • Content assist
  • Code templates
  • RPG wizards
  • Automatic FOR/DO completion
  • Context-sensitive help
  • Context-sensitive editing
  • Regular expression Find/replace
  • 50 visible lines of code
  • Automatic indenting
  • Side-by-side editing
  • Filtering
  • Subsetting
  • Show block nesting
  • Filters and filter pools
  • Verify
  • Bookmarks
  • Tasks
  • Reference manuals included
  • Show Block Nesting

Keyboard shortcuts

Keyboard Shortcuts listing

— or —

In the LPEX command line type "?action", "?query", "?lpex" or "?seu" (in the full version of WDSC) and you are taken to the appropriate help page. Note on WDSC Lite V6 typing "?seu" brought up nothing.

WDSC 7.x, RDP 8.x
Anywhere in the workbench press Ctl+Shft+L. This brings up a window called "Key Assist", which can also be accessed via the Help menu.

Drilling into an "in source" subroutine or subprocedure (RPG)

  • Position cursor over subroutine or subprocedure name.
  • Press Ctrl-Q (set a quick mark position).
  • Press F3 to move LPEX editor to that subroutine or subprocedure.
  • When you are finished with that subroutine or subprocedure and wish to return

to the call of the subroutine or subprocedure press Alt-Q.

Mattt 13:56, 29 June 2007 (CDT)

Fonts

Some suggested fonts that don't come installed with Windows:


  1. Download your font of choice.
  2. Install the font into your font folder (usually under the C:\Windows system folder).
  3. Window → Preferences → LPEX Editor → Appearance.
  4. Click on the Font button to change the font to Proggy font you installed.

To assign a font to the editor's printed output, you can use the set command from the command line: set default.print.font ProggyCleanTTSZBP-11 or exit WDSC and edit the properties file located in [path to workspace]\.metadata\.plugins\com.ibm.lpex\Editor.properties

default.swt.print.font.fontData="1|ProggyCleanTTSZBP|11|0|WINDOWS|1|-15|0|0|0|0|0|0|0|1|0|0|0|0|ProggyCleanTTSZBP"
default.swt.print.font="ProggyCleanTTSZBP-regular-11"

set default.print.font "Courier New-8" seems like a decent fit for US 8-1/2 x 11 inch paper printed in portrait mode.

Tip o' the hat to Adrian over at the Lab in Toronto for the printing font tips.

Remap keyboard shortcuts

  • The default action for Alt-S is to split the line and start the split at the left most position of the new line.
  • Many times it is desired to have it split and stay were it split within the new line.
  • From there you can move the new line text only a short distance.
  • To make Alt-S split and leave the starting position of the new text in the same place you want to run the ---
Split and Shift action.


Reassign a shortcut key for LPEX

  1. Window → Preferences → LPEX Editor → User Key Actions.
  2. In the Key entry box, key a-s
  3. In the Action drop down, choose splitAndShift action
  4. Press the Set button.
  5. Press the Apply button.

Mattt 13:56, 29 June 2007 (CDT)


Key mappings are stored in the following files:

IDE version File name
7.0 <workspace>.metadata/.plugins/com.ibm.lpex/Editor.properties
8.5 <workspace>.metadata/.plugins/com.ibm.lpex/Editor.properties
9.0 <workspace>.metadata/.plugins/org.eclipse.core.runtime/.settings/com.ibm.lpex.prefs

LPEX command line

Search for the action of a keyboard shortcut.

  1. Goto into the command line by pressing Esc (if not already there).
  2. key (without quotes) "query keyAction.X-Y" where X is the keyboard shortcut in the form of a=Alt,c=Ctl or s=Shift and Y is any keyboard key.
    • Example, "query keyAction.f4" reports back in default situations "showSourcePromptView".

Search for the keyboard shortcut of an action.

  1. Goto into the command line by pressing Esc (if not already there).
  2. key (without quotes) "query actionKey.ACTION" where ACTION is the LPEX editor action.
    • Example, "query actionKey.showSourcePromptView" reports back in default situations "f4.t".

In the LPEX command line type "?action", "?query", "?lpex" or "?seu" (in the full version of WDSC) and you are taken to the appropriate help page. Note on WDSC Lite V6 typing "?seu" brought up nothing.

New actions

You can add new actions you find by default in the system or one you develop. There are some sample actions that are useful to a degree. Two of them seem the most useful. They are composeAction and setDateAction.

Map these to any keyboard shortcut you wish, I just choose Alt-F1 and Alt-F2 since they were not used.

IMPORTANT text case is very important here.

These actions were obtained from the online help by searching for "lpex samples". Mattt 13:56, 29 June 2007 (CDT)

The basic idea is to register an action with Lpex and then to assign a key sequence to that action. When registering the action, you get to choose the name; it isn't necessarily related to the actual class. For instance, below, we chose the action name to be compose. The class name must be exactly copied from the documentation -case matters- in order to associate the Java class to the action name you chose. Here, that class is com.ibm.lpex.samples.ComposeAction.

You can test these assignments from the command line if you wish. From the editor pane, press Esc to get to the command line. Press Enter to execute a command, then Esc to return to editing.

  • set actionClass.compose com.ibm.lpex.samples.ComposeAction
  • action compose
  • set keyAction.a-f1 compose

You can also find out if a key has an assignment or not:

  • query keyAction.a-f1

You can also disassociate a key from an action:

  • set keyAction.a-f1 (note: no action name drops the assignment)


ComposeAction

This action allows you to enter characters that aren't on your keyboard, like â and é.

Register the action

  1. Window → Preferences → LPEX Editor → User Actions.
  2. In the Name entry box, key actionClass.compose
  3. In the Class name entry box, key com.ibm.lpex.samples.ComposeAction
  4. Press the Set button.
  5. Press the Apply button.

Assign a key

  1. Window → Preferences → LPEX Editor → User Key Actions.
  2. In the Key entry box, key a-F1
  3. In the Action drop down, choose composeAction action
  4. Press the Set button.
  5. Press the Apply button.


SetDateAction

This action allows you to set the date value for a selected group of lines. This is similar to SEUs F13 action to set the date.

Register the action

  1. Window → Preferences → LPEX Editor → User Actions.
  2. In the Name entry box, key actionClass.setDate (NOTE: Some people have found it necessary to enter only "setDate" without the "actionClass." prefix.)
  3. In the Class name entry box, key com.ibm.lpex.samples.SetDateAction
  4. Press the Set button.
  5. Press the Apply button.

Assign a key

  1. Window → Preferences → LPEX Editor → User Key Actions.
  2. In the Key entry box, key a-F2
  3. In the Action drop down, choose setDate action
  4. Press the Set button.
  5. Press the Apply button.

LPEX profile properties

The various settings you change via the command line set command are stored in a text file called Editor.properties. The fastest way to look at the contents of that file is through another command: viewProfile

LPEX configuration

Lpex is incredibly configurable, so much so that it's a very difficult task sometimes to find out where a particular option is configured. In 7.0.0, there is a search filter under Window->Preferences-> but that filter only searches over the headings at the top of the configuration element. For instance, if you want to turn off control block auto-completion, you need to search for ILE RPG, not code, control, completion, for, do or anything like that.

Hovering the mouse over the actual configuration item (in the right window) will give a summary explanation of what the option is for.

Config item What's it do? Search filter
Automatic closure of control block When you type FOR, SELECT, DO, etc., automatically supplies the matching ENDxx. ILE RPG
Automatic indent When you create a control block like FOR, DO, etc., indents the following line automatically. ILE RPG

Outline View export

Outline View information can't officially be exported, but the XML files involved are stored at .metadata\.plugins\com.ibm.etools.iseries.edit\information

(Thanks to Xuan at the RPG Café)

In WDSC 7.0, the XML files are in .metadata\.plugins\com.ibm.etools.iseries.core\information

Catgeories