Guru: Ready Or Not! Part 5 Of Big Changes In RDi V9.6, Edit/Browse Toggle, PDM Perspective, More
October 22, 2018 Susan Gantner
In this tip I’m going to cover a few of the “smaller” features implemented in V9.6.0.3 and …0.4 that I think you should know about. I’ll cover my favorite — the Edit/Browse toggle feature — as well as some enhancements to Block Nesting. I’ll also follow-on to my last tip about the PDM affinity features in the Object Table — the PDM perspective — plus a few more little goodies.
A quick hint for you on the subject of exactly what new features became available within RDi and when: If you ever want to see a complete list of new features and fixes added in previous RDi releases, take a look at this page from IBM DeveloperWorks.
Since my last tip, there has been yet another new point release: V9.6.0.4. The primary feature added there is a longer trial period — 120 days, formerly 60 days — for those installing the trial version. This is great news for those who are still on the fence about giving RDi a try. For those of us who already use RDi regularly, there are still some features from the earlier releases that I haven’t covered yet.
The Edit/Browse toggle meets a long-time need. By default, double clicking on a member in Remote Systems or Object Table would open it for edit. To open for browse requires a right click to use the “Browse with …” option. You could, of course, change a preference setting to make your default open for browse. But it always seemed a bit more cumbersome than it needed to be to switch back and forth when you want some things open for browse and some for edit. Now it’s very fast and easy. Just open a member with a double click and then — when necessary — toggle it to browse (or edit).
In fact, we now have no less than three different ways to switch an already open source member between browse and edit modes. My favorite is to use the Ctrl+Shift+G shortcut. It takes a second or two to happen (so be patient), but it does work. There’s also a “Toggle Edit/Browse Mode” option from the Source pull-down menu. The third way is to double click on a space at the very bottom of your RDi window — not the bottom of the editor view. In Figure 1 below you can see the word “Browse” is annotated at the bottom of the window. That’s the spot where you can double click to switch. Warning: While it’s obvious where that spot is when you’re in browse mode, when you’re in edit mode, that space is blank. You may think you could double click on the word “Browse” that appears near the top of the editor window (also highlighted in the figure), but sadly that doesn’t work.
Also in Figure 1 you can see the new browse icon that appears in the tab to clearly indicate which members are editable and which are not. That’s been needed for a long time, too!
There have been a few other small but nice enhancements recently. For example, the hover comment support that I covered in an earlier tip originally only worked for subprocedures and other definitions but not for subroutines. It now includes subroutines.
In that same earlier tip, I talked about the annotation support for compile-time errors. A little later, support for navigating through the annotations in a source member was added. Using the keyboard shortcuts Ctrl+. <period> for next and Ctrl+, <comma> for previous you can jump to the lines of code where errors occur. If you prefer to use toolbar icons for the navigation, they look like this:
You may also set preferences to customize what type of annotations should be included in the navigation. For example, you may not want the unreferenced item annotations to be included. In Preferences, drill down to:
General > Text Editors > Annotations to find the list of items. The check box next to “Include in next/previous navigation” determines which annotations appear in the list.
Source members that contain trailing spaces on each line will now have those spaces automatically trimmed when they are opened in RDi. This makes it easier to jump to the end of the code in a line by using the End key.
Remember Show Block Nesting? That’s the feature that draws the arrows to indicate the beginning and end of a block and any/all blocks nested inside it. It has been around for a long time and is very handy when working with old fixed format logic. It has recently been enhanced in two ways. First, it now supports 15 levels of nesting. I’m not sure how many it supported before, because fortunately I’ve never had to work on code with more levels of nesting than that! The nice side effect of that is that the lines and arrows themselves are now more obvious because the lines are longer.
In addition, you can now be positioned on an ELSE, ELSEIF. WHEN or OTHER statement when you invoke Show Block Nesting (using either Ctrl+Shift+O or Source > Show Block Nesting from the context menu). In the past, you needed to be positioned on either the beginning or the end of a block.
The New PDM Perspective
The last feature I want to cover is the new PDM perspective. This perspective is intended to help make the transition to RDi from PDM a little easier. It is a simplified perspective that contains no Remote Systems view, only the editor, Outline and Object table, along with Error List, Job Status, Tasks and Commands Log. The Object table — which does look and feel much closer to PDM — is used to navigate and open source members instead of Remote Systems. It is a little like having Work Members PDM and (several) SEU edit windows open at the same time. I covered the newly enhanced Object Table in this tip back in July so I won’t repeat the details of that feature here.
Personally, I think the PDM perspective will probably be very helpful at some point in the (hopefully near) future. At the moment, I’m concerned that the relatively small number of PDM options that currently work in the new Object Table — and those that work in a way that is more cumbersome than PDM — may prevent it being a positive introduction to RDi. But then, I’m definitely not the target audience for that perspective. It is targeted to RDi neophytes. Figure 3 below shows the PDM perspective so you can make your own judgements about its usefulness.
Wrapping Up
I think this is the end of my series of V9.6 enhancements to RDi. But who knows! Maybe there will be more new features arriving soon. They seem to be coming at it much faster than in the past! Or perhaps I’ll discover some new feature that I have previously overlooked. In the meantime, I hope my five-part series on recent RDi enhancements has been helpful.
If you missed out on any of the first four tips in this V9.6 series, check out the Related Stories links below.
Susan Gantner, an IBM Champion and co-author of the popular Redbook, Who Knew You Could Do That with RPG IV, is one of the top speakers/writers/trainers on IBM i development topics. She is a partner at Partner400 and System i Developer, and she hosts the RPG & DB2 Summit twice per year with partners Jon Paris and Paul Tuohy.
“You could, of course, change a preference setting to make your default open for browse.”
For the life of me, I cannot find such an option in 9.6.0.3. Can you please elaborate?
Hi Allister.
My apologies – I’ve only just noticed this question. I can see why you had trouble finding the option – I also had trouble finding it! I finally Googled it and found an article that I wrote back in March 2017 when the feature first came out – where fortunately I had described where to specify it.
It’s on the not-so-obvious (to me, anyway) Preferences page which you can find at: Remote Systems > IBM i > Objects Subsystem. There’s a check box at the bottom of that page that says “Open source in browse mode” which is de-selected by default.
Hope that helps. Susan