Friday, October 09, 2009

Tip: Navigate “Back” like in a browser in Microsoft Word

Quick tip: In Microsoft Word, in a document with in-document hyperlinks, after navigating to another location in the document by clicking on a hyperlink (typically by holding Ctrl and clicking the link, as Word will prompt when the mouse cursor is hovered over a link), you can go back to where you were before in the document by using Alt+LeftArrow (hold down the Alt key and press the Left Arrow key) – similar to clicking on the Back button in a web browser.

Alt+RightArrow also works to go forward once again after using the Alt+LeftArrow shortcut to go back.

These are a good shortcuts to be aware of, since Word doesn’t by default show Back/Forward buttons in the toolbar like a browser does.  (This is the case in Word 2003 – I don’t have a copy of Word 2007 in front of me at the moment to check.)

In Word 2003, you can get Word to show Back/Forward buttons in the toolbar by making Word’s Web toolbar visible.  (Right-click a blank area of the toolbar at the top of the Word window, and select Web from the context menu that appears.)

The Alt+LeftArrow and Alt+RightArrow keyboard shortcuts to navigate Back or Forward respectively also work in most web browsers on Windows.

Thursday, October 01, 2009

Creating Mirrored Content in MS Word

It is possible to set up sections of “mirrored content” in Microsoft Word, such that the same content appears in two or more places in the document, and changes to the content in the “master” location are automatically mirrored to the other instances of the content.

The following instructions apply to Word 2003; I’ve done this in Word 2007 as well, but the specific procedure will differ slightly due to 2007’s use of the Ribbon interface rather than the traditional menu.

1. Designate the master content

To designate the “master” (primary) version of the content to be mirrored, select the content (e.g. by left-clicking and dragging the mouse cursor over it), and then create a “Bookmark” on the content by selecting Insert | Bookmark from the menu.  In the Bookmark dialog, add a new bookmark and name it whatever you like.

Tip: You may also want to enable “Show Bookmarks” at Tools menu | Options | View tab, so that you can see the bounds of the bookmark you created.

2. Place the mirrored content

Now, go to the place in the document where you want the mirrored copy of the content to appear.  At that location, add a “Cross-Reference” via Insert menu | Reference | Cross-reference.  In the Cross-reference dialog, set Reference Type to “Bookmark” and Insert Reference To to “Bookmark Text”; in the For Which Bookmark field, select the bookmark you created. 

Optionally, you can leave the “Insert as hyperlink” dialog checked.  If this is checked, the mirrored content will still appear normally (it won’t be underlined like a typical World Wide Web hyperlink), but readers of the document will be able to Ctrl+click the mirrored content to jump to the location of the master copy of the content.

Finally, click the dialog’s Insert button, and then the Close button.  The mirrored copy of the content should now appear in the document!

3. Updating the mirrored content

The mirrored content will not immediately automatically update when the master content is updated.  You can update the mirrored copy manually by right-clicking the mirrored text, and selecting “Update Field” from the context menu that appears.

You can update all of the mirrored content in the document at once by selecting the entire document (Edit menu | Select All; or press Ctrl+A), right-clicking anywhere in the document, and selecting “Update Field.”  All mirrored content fields (and any other fields that may be present in the document) will be updated.

Alternatively, you can set Word to automatically update all fields in documents each time the document is printed.  To do this, in Tools menu | Options | Print tab, select the Update Fields check box.

Bonus Tip: Capitalizing the mirrored content

Optionally, you can make the mirrored content appear in ALL CAPS even if the master content is mixed-case.  To do this:

  1. Right-click the mirrored content; from the context menu, select Edit Field.
  2. In the Field dialog, click the Field Codes button. 
  3. In the Field Codes text box that appears, type the following text at the end of the existing content of the text box:
    \* UPPER
  4. Click OK. The mirrored content should now appear in all uppercase!

(Thanks to Graham Mayor for the tip on the capitalization field switch. See Graham's site for lots of other advanced tips regarding what can be done with Word fields.)

Tuesday, September 01, 2009

Fix: FTP on Vista: "Replace Existing File with Temp File:I/O Error"

I ran into a problem trying to use Vista's command-line FTP utility (ftp.exe) to download a file directly into the \inetpub\wwwroot directory (the root IIS directory) on my local machine.

The ftp get command produced the following output:

150 Opening ASCII mode data connection for file(4538 bytes).
> Replace Existing File with Temp File:I/O Error
226 Transfer complete.
ftp: 4538 bytes received in 0.17Seconds 26.69Kbytes/sec.

When I checked the local destination directory, the file was not present.

The cause of the problem was that the local directory I was trying to download the file into (in this case, \inetpub\wwwroot) is a protected directory in Vista, requiring administrator access to copy into.

So, there are a couple of possible workarounds:

  1. Run ftp.exe as Administrator. (One way to do this is to open Windows Explorer, navigate to the directory where ftp.exe is located -- typically C:\Windows\System32 -- and right-click ftp.exe and select Run As Administrator.)
  2. Download the file into a non-protected directory, and then use another tool (such as Windows Explorer) to copy the file to the protected final destination directory.

Thursday, July 09, 2009

Tip: How to easily reorder bullet points in MS Word

A quick tip on a discovery I just made: You can quickly reorder bullet points in Microsoft Word putting the caret in the bulleted item to be reordered (i.e. click on the item), and then use Alt+Shift+UpArrow or Alt+Shift+DownArrow to reorder the selected item within the list of bullet points.  Apparently this works in other MS Office programs as well (such as PowerPoint).

I’ve found that this works a lot more nicely than cutting the item to be moved, and then pasting the item in the new location in the list (since often, line breaks need to be fixed up after the new item is pasted in.)

Bonus tip: Alt+Shift+LeftArrow and Alt+Shift+RightArrow will indent/unindent the selected bulleted item.

Thursday, July 02, 2009

Installing m2eclipse in Eclipse 3.5

After newly installing Eclipse 3.5 (replacing my old Eclipse 3.3 install), when I tried to view a document with a Maven pom.xml file that I’d previously had open in my workspace, I got an error:

Could not open the editor: No editor descriptor for id org.maven.ide.eclipse.editor.MavenPomEditor

The fix was to install m2eclipse (the Maven plugin for Eclipse). I did this in Eclipse 3.5 as follows:

  • Help | Install New Software
  • In the "Install" dialog: click the Add button
  • In the "Add Site" dialog:
    • Name: m2eclipse
    • Location: http://m2eclipse.sonatype.org/update/
  • Click OK
  • Back in the "Install" dialog, in the "Add Site" dropdown, select: m2eclipse
  • Under "Maven Integration", I checked:
    • "Maven Integration for Eclipse (Required)"
    • "Maven POM Editor (Optional)"
    • "Maven POM XML Editor (Optional)"
  • Click Next, go through and complete the Install wizard.
  • When prompted, I restarted Eclipse.

That got my Maven POM editor up and running in Eclipse 3.5.

Monday, June 22, 2009

Multiple Displays: The future of TV & gaming?

I’ve been running three monitors on my PC at work for a while now, and it’s been working great for me.  Multiple monitors works great for running business applications and/or doing software development; for example, I typically run my programming environment maximized on my primary monitor, run most the programming environment’s secondary windows (e.g. project file list, search results, list of compiler warnings/errors, etc.) on the second monitor, and the application’s UI or other reference material on the third monitor.  I’m able to see everything I need to see at once without shuffling windows around.

PC Games

As multiple monitors on PCs continue to gain more market penetration, it would be nice to see more PC games join business applications and take advantage of the potential availability of multiple displays.  A game’s main view of the game world could go on the primary monitor, and secondary information could go on a second monitor, freeing the entire screen area of the primary monitor to show the game world.  For example:

  • In MMORPGs such as World of Warcraft, the display can become pretty “cluttered” with ability toolbars, party status display, mini-map/radar, active buffs/debuffs, and more.  All of that could (optionally) be moved onto a secondary monitor, freeing the entire area of the primary monitor to show the game world.
  • In RTS games such as the classic Starcraft, the selected unit(s) and their information, “order” buttons (move, attack, stop, etc.), and mini-map could be moved onto the second monitor.
  • In traditional RPGs, secondary data such as inventory screens, skill/spell lists, character statistics display, and so forth could be shown on the second monitor, again freeing the entire area of the primary monitor to show the game world at all times.

Console Games

It would also be nice if future console systems (i.e. successors of the current generation’s Wii, Xbox 360, and Playstation 3) would (optionally) support hook-up to multiple television sets in the future.  In addition to the getting the same benefits that would be realized by PC games, this might also help with situations where there are multiple players playing simultaneously on the same local console system. 

Today, local multiplayer is typically accomplished via split screen; in the future, one or more players’ view could be moved onto the second screen.  If a future Rock Band or Guitar Hero game supported the addition of a keyboard (piano) part or otherwise supported more players playing together beyond the 4 supported today, multiple TVs could help with the problem that would otherwise be encountered in trying to squeeze 5+ players’ parts onto the same screen!

Handheld Games

Obviously, the one gaming system that is way out ahead of the curve as far as multiple monitor support goes is the Nintendo DS.  With two screens built into the hardware, all games on the platform can be designed to fully take advantage of the availability of two screens. 

Although I don’t own a DS, I’ve had a chance to briefly borrow one owned by my nephews on a couple of occasions.  It is really cool in a game like Zelda to be able to see both the primary game world and the overhead map view (while in a dungeon) at all times.

TV - Sports

Multiple screen support would also be really cool in the future for TV – particularly for sports broadcasts.  In my case, I’m a big fan of Michigan Football.  Instead of watching games on just a single screen (where the display tends to focus in on the quarterback or whomever has the ball, to the exclusion of the rest of the field), it would be amazing to have a second screen showing what the downfield receivers are doing (or other action away from the ball appropriate to the play), and a third screen dedicated to showing real-time stats at all times.  The score and “ticker” could also be shown on the third screen, freeing the entire area of the main screen to show the game action.

Obviously, support for people watching the game on just a single TV (I’d likely be among them, at least for now!) would have to be maintained as well.  Perhaps an “all in one” game broadcast (essentially what we have today) could be carried on a particular channel; the “multiple screens” version of the game could be carried on a separate set of channels.

This kind of multiple screen support for sports broadcasts, particularly combined with support for single-TV viewers, would work out to quite a few channels being dedicated to sports broadcasts!  Still, with the proliferation of channels available even today via digital cable or satellite broadcasts, this kind of thing might be possible in the not-too-far future.

Put those old displays to use!

This would also give people something to do with “old” PC monitors and TVs as they gradually get replaced over time with HD versions: Put the old displays to good use as secondary information displays for games and TV!  One of the 3 monitors that I have at work is an old monitor that would be sitting on a shelf at home (or worse, in a landfill somewhere) if I didn’t have a use for it as the third monitor on my work machine.

So, PC game developers, console hardware companies, and sports broadcasters: Go forth and make it so.  :-)

Monday, June 01, 2009

PC Frequently Rebooting due to Power Supply Unit Issue

This past Saturday, I was having lunch with the family in the kitchen when I heard from the office the sound effect that my new PC plays after booting.  I thought that was odd (since no one was in there using the PC), but shrugged and figured that maybe the PC had rebooted itself due to some automatic update?  When I heard the same sound again a few minutes later, though – indicating a second reboot in the span of a few minutes, with no one sitting at the machine – I investigated.

As I worked on the PC, I found that it was rebooting itself every few minutes, at irregular intervals.  The PC had never done this before; aside from some heat-related bluescreen issues after I first put the PC together, the PC had been quite stable for the 6 months or so since it was built.  I had the reboot problem reproduce once while I was in the boot-time BIOS configuration utility, which proved the problem wasn’t a Windows issue.

Due to the intermittent nature of the problem, I initially suspected it might be caused by another overheating issue.  However, the BIOS configuration utility showed that the CPU was operating at a nice and cool (relatively speaking!) 40 degrees C or so. 

I also suspected a possible RAM issue – perhaps one of the four RAM modules had gone bad and was causing the reboots.  However, I tried removing two of the RAM modules at a time (with the machine powered off, of course); the spontaneous reboot reproduced with only modules #1 and 2 in the machine, and also with only modules 3 and 4 in the machine, which appeared to rule out a memory module issue.

Finally, though, I got “lucky” in my investigation.  After the machine rebooted itself twice in rapid succession, I manually toggled off the power switch at the back of the PC’s power supply unit (PSU) to keep the machine off while I (once again) manually inspected the machine’s hardware.  When I toggled the power supply unit switch back on, I got a surprise – a bright spark and a loud “POP” sound from within the power supply unit!  I immediately pulled the power cord out of the PC to prevent anything further from occurring with the PSU.

This seemed unlikely to be a coincidence.  If the PSU had indeed gone bad somehow, I could see that the behavior of the system rebooting (with no error message, except Windows complaining that it hadn’t been shut down properly at restart time) would be consistent with the system losing power momentarily, and then getting it back immediately afterwards.  I was fairly confident that the incoming power supply to the machine was OK, as I had the machine hooked up to power via a UPS (an uninterruptable power supply -- designed to ensure a consistent flow of power, even in the event of a power failure).

I replaced the apparently faulty power supply unit with a spare that my father-in-law Doug had on hand (thanks Dad K.!) – and that resolved the issue!  The machine has been running since Saturday afternoon with no problems.  So the intermittent spontaneous reboot problem had been caused by a faulty power supply unit. 

I wrote “BAD” on the faulty PSU and threw it away.  I also ordered a modern 500W PSU with integrated PCI-Express and 8-pin CPU connectors to replace the one I’m borrowing from my father-in-law.

The lesson learned here for me is not to cheap out on buying a PSU when building a new PC!  When selecting a case and power supply for this machine, I’d mostly paid attention to cases, and had just accepted the included power supply that came with the case – for the PSU, I had only really looked at the raw wattage on the PSU (450W).  The PSU had turned out to be an older/cheaper model with no PCIe connection, and only one SCSI drive connection.  For this PC, with reasonably demanding power requirements (including a GeForce 9800 PCIe video card), the lower-end power supply that came with the case apparently just wasn’t sufficient over the long term.

In the future when building PCs, I’ll most likely opt for purchasing the case and power supply unit separately, and will certainly pay more attention to the detailed specs of the PSU to ensure that it is likely to be sufficient for the needs of the system I’m building!