Advanced Usage

Changing User Preferences

As of PowerShell version 0.63, there is no longer a need to hand-edit .pshellrc, although you are, of course, free to do so if you wish. With version 0.63, the Preferences dialog supports every option which is configurable in PowerShell.

This section of the documentation covers the Preferences dialog in-depth and explains in detail every option available within.

The Appearance Tab

The Appearance tab controls the way the program looks, and also controls some aspects of its behavior.

The top half of this tab change the background of the terminal. They allow you to make the terminal transparent so that your desktop background can show through as well as to set a background image.

The "Transparent" checkbox controls whether or not to allow the desktop background to show through the terminal. The "Use Background Pixmap" checkbox controls whether or not to use a background image in the terminal (this option overrides the "Transparent" option if both are set.) The "Shaded" checkbox controls whether or not to darken the background of the terminal. This is useful, for example, when you have the "Transparent" option checked and you want to easily be able to distinguish the program from your desktop background.

The "Background Pixmap" text field is where you enter the image you want to use for the background of the terminal. The "Browse" button brings up a file selection dialog box where you can find the image visually.

The bottom half of this tab change miscellaneous settings with the way the terminal behaves, such as whether or not it will scroll back down to the bottom when you press a key.

The "Use Blinking Cursor" checkbox, quite obviously, sets whether or not the cursor will blink. The "Enable Terminal Bell" checkbox controls whether or not PowerShell will beep when a program running inside it beeps or if it will keep quit. "Scroll on Keystroke" controls whether or not the terminal will scroll back down to the bottom when you press a key, and "Scroll on Output" controls whether or not it will scroll back down when terminal output appears. "Swap Backspace/Delete" sets whether or not to switch the key values of the backspace and delete key. Use this option if, for example, you are more used to pressing Backspace than Delete and a program you are running only accepts Delete.

"Ask for SSH Password" is a currently unimplemented feature; it is there for later when I plan to add automated login features via SSH and Telnet.

The "Scrollback Lines" text field is where you enter the number of lines you want PowerShell to save so that you can scroll back and look at later.

The Handlers Tab

The Handlers tab controls which programs handle which types of URLs when clicked on in the terminal. This tab is only visible if support for URL matching was compiled into PowerShell. The full path for these programs must be included.

The "HTTP Handler" text field controls what program is called when the user clicks on an HTTP link. This link is defined as anything that begins with http:// or www., and contains no spaces or various other punctuation marks. I have attempted to make it as accurate as possible in detecting URLs, and if you run across one that is not detected properly, send me the URL and I'll update PowerShell to handle it.

The "FTP Handler" text field controls what program is called when the user clicks on an FTP link. This link is defined as a URL that begins with ftp://.

The "Mail Handler" text field controls what program is called when the user clicks on an email address. This is defined as a text pattern with matches <something>@<something>.<something>

The "Telnet Handler" text field controls what program is called when the user clicks on a telnet link. This link is defined as a URL that begins with telnet://.

The Colors Tab

This tab is fairly self-explanatory. The top palette defines the color scheme, and the bottom defines the foreground and background colors.

The Menus Tab

This tab is a new addition for version 0.65, and it very convenient. It allows the user to edit the application launchers in the File menu without hand-editing ~/.pshellrc.

Note: Changes made in the Menu editor don't take effect until you restart PowerShell. Hopefully this will have changed in a future version.

To add a new menu option, fill in the 3 fields at the top (they are self-explanatory) and press the "Add" button. To change an existing menu entry, select it in the list, make the changes you want in the 3 text boxes at the top, and press the "Update" button. To delete a menu entry, select it in the list, and press the "Remove" button.

If you put a %s in the command, PowerShell will prompt you for arguments to give the program. For example, if you create a menu option which calls /usr/bin/telnet %s, when you choose this option, a dialog box comes up and asks you for the arguments to telnet, and they will replace the %s.

Changing the font

This should really be in the Preferences dialog, and I'll move it at some point, but for now, it's staying where it is.

Changing the font is simple, and works exactly like changing a font in any other program. Just choose the font from the dialog box which comes up when you select the menu item and press OK.

Note: There is a known bug in PowerShell which causes problems when you go from a larger font to a smaller one. The window stays the same size it was for the larger font, so you end up with a large window with a large number of rows and columns.