Overview

Why PSPad?

  • Do you work in different programming environments?
  • Do you like syntax highlighting in your code?
  • Do you like syntax highlighting in your code?
  • Do you need small tool with simple controls and the capabilities of a mighty code editor?
  • Are you looking for a tool for work with plain text files?
  • Do you want to save money and still have functionality of professional products?

If you have answered 'YES' to any of the above questions, then PSPad is for you.

What do you get with PSPad Freeware editor?

  • Projects. Create project files to organise your work that can include multiple sub-folders and automatic file name sorting. Create projects based on all of the files in directory.
  • Work with files of unlimited length.
  • Work on several documents at the same time. Multiple document interface (MDI) and/or tabbed document interface (TDI).
  • Single document window splitting and window splitting.
  • Save desktop session so you can resume your work exactly where you left off.
  • Built-in FTP client so you can edit your files directly over the Internet.
  • Macro recorder so you can record, save and playback commonly used sequences.
  • Active scripting via MS Windows Scripting host (WSH) for automation.
  • Search and replace not just in your active file, but also in all open files, all project files, or any folder.
  • View file differences with color highlighting.
  • Clips. Using clips you can have snippets of code at your fingertips. Create your own clips and never forget the syntax of the function call again. Clips can be interactive allowing you to generate code quickly and efficiently. Installation contains clip files for HTML, PHP, Pascal, JScript, VBScript, MySQL, MS-Dos, Perl, and many more.
  • Syntax highlight. Highlighting can be set by file type. Highlighting is user-configurable.
  • Create syntax highlighters for your own exotic environments
  • Auto correction.
  • Spell checking.
  • Multiple undo/redo.
  • Support for ANSI, Unicode, OEM, Kamenicky, and ISO files.
  • Full HEX editor.
  • Call external programs to operate on or with your file. Different sets of programs can be defined for each file type.
  • Call an external compiler. Create different compiler settings for each file type. Calls to compiler send output to log window. A configurable log parser allows you to pinpoint compile errors quickly.
  • Color syntax highlighted print with print preview.
  • Export with highlighting to RTF, HTML, TeX to file or clipboard.
  • Column block select/Rectangular block selection.
  • Bookmarks
  • Line numbers.
  • Reformat and compress HTML code, change case of tags.
  • Integrated TiDy library for formatting and checking HTML code, conversion to CSS, XML, XHTML.
  • Integrated free version of top CSS editor TopStyle Lite.
  • Line sorting with the ability to sort on defined column, with the option to drop duplicates.
  • ASCII chart with HTML entities
  • Code explorer for C, Pascal, INI, HTML, XML, PHP and more.
  • Internal web browser with web server (i.e. APACHE) using IE and Mozilla rendering engines.
  • Export with highlight to RTF, HTML, TeX format into file or clipboard.
  • Matching bracket highlighting.

Editor PSPad - freeware editor, © 1991 - 2006 Jan Fiala
All text is available under the terms of the GNU Free Documentation License.


Whats new

Changes

  • Version 4.5.1 (2206) Date: 29 Apr 2006
  • Version 4.5.1 (2199) Date: 3 Mar 2006
  • Version 4.5.1 (2197) Date: Mar 2006
  • Version 4.5.0 (2183) Date: 14 Feb 2006
  • Version 4.5.0 (2177) Date: 24 Dec 2005
  • Version 4.3.3 Date: 18 Jun 2005
  • Version 4.3.2 Date: 24 Dec 2004
  • Version 4.3.1 Date: 26 Aug 2004
  • Version 4.3.0 Date: 5 May 2004
  • Version 4.2.9 Date: 16 Feb 2004
  • Version 4.2.8 Date: 29 Dec 2003

Legend

  • Added
  • Removed
  • Corrected

History

Version 4.5.1 (2206) Date: 29 Apr 2006
  • Added internals optimizations.
  • Added program icon 48x48.
  • Favourite panel - new function Copy link.
  • Improved memory management.
  • New Context menu handler.
  • New localizations: Norsk (Stein-Aksel Basma), Galician (Xabier Cancela)
  • Program settings / System - new option allows switch off PSPad scripting.
  • Program settings/ Registered file types - added buttons for register/unregister all files from the list.
  • Bookmarks wan't visible after PSPad start.
  • Cancel Search in Files during building matching file list.
  • Close All Files confirmation closed by the cross button.
  • Command line function doesn't work correctly.
  • Compress HTML code - unicode support.
  • Empty splashscreen.
  • Export to Clipboard in HTML format (supported standard HTML fragment format).
  • File explorer - Show hidden files option doesn't work.
  • File explorer - sort order for dirs contain underscore char.
  • File format (Dos, Mac, Unix) was always DOS if file was empty. Now is set with a same rule as the New file.
  • Fixed issue were it was possible to edit splitted read only file.
  • Function Check HTML code switches off wordwrap.
  • HTML to TXT - unicode support.
  • Insert from file(s) - file doesn't start on the new line.
  • Internal name stored by the PDB plugin contains full path.
  • List of filters in the File Explorer and allowed highlighters.
  • Missing keyword in the Perl highlighter.
  • New Clip list was stored with the unicode encoding.
  • Reformat CSS.
  • Remove redundant spaces function doesn't supports unicode.
  • Replaced '_' character in image name after insert into HTML.
  • Smart file switching behaviour.
  • Stored history (Search, Search in files, Google, ...) doesn't supports unicode. Now stored in UTF-8 encoding.
  • Text to JScript, Text to PHP variable - unicode support.
  • User highlighter - chars ?, | wasn't highlighted as the symbol.
  • Wrong fingerprint calculation for files over 250 MB.

Version 4.5.1 (2199) Date: 29 Mar 2006
  • Program settings / Files / new option - Ignored file masks list (CVS, backups, ...). It works near in whole PSPad - Project from direcotry, Scripts, ...
  • Missing options (Move, Resize) added into the TaskBar context menu.
  • New variable F1InEditor in the [Special Settings] section - you can switch off help on F1 in the editor Window and use F1 for your purposes.
  • Added LIST -aL command for keep FTP connection alive.
  • Fortran Highlighter - added new keywords.
  • Char tab - added symbols (defined in Ascii.ini)
  • Added Ignore files setting.
  • Program hang-up if some tools was active (e.g. Numeric base translator) and you open new file from "outside".
  • Save as behaviour.
  • Log window behaviour.
  • HTML TiDy and UTF-8 documents.
  • JScript Code explorer for JScript - variables outside function, comments.
  • Fortran Code explorer - Sort code explorer result option has no meaning.

Version 4.5.1 (2197) Date: 6 Mar 2006
  • New option OldSpecialChars in the Program settings / Direct edit. Set value to 1 if you use non unicode fonts, e.g. FixedSys
  • In Program settings > Program - Look in the file tab format you can limit length of the File name on the File tab. Use %d:nn (nn = number of chars).
  • HTML reformat function uses new reformat function for XML. Decision depends of used highlighter.
  • New function in the Edit menu > Line manipulations > Swap with line Above.
  • Program settings > Dialogs - option allows you switch off FTP replace file confirmation.
  • Methods support in the Tcl/Tk highlighter.
  • Dictionary handling was changed, important is extension .DIC only (go to the SpellSettings (Ctrl+F7) and choose dictionary).
  • Added new keywords into PERL highlighter.
  • User highlighter - added ability switch off label highlight.
  • User highlighter - new comment style $...$.
  • Spell check settings - new button will navigate you to the dictionary download web page.
  • Added new keywords (PHP5) into PHP highlighter.
  • Changed default shortcut for the Delete word command from Ctrl+T to Ctrl+Del.
  • Speed up compiler run with [x]Catch external output.
  • Drag/Drop file tab to favourite panel.
  • Switch from the Hex mode into Text mode with active ASCII table.
  • Text to HTML conversion switches off source editor highlight.
  • You don't need restart PSPad if you modify code clips.
  • Search in files results highlight and Ignore case setting.
  • Search in files adds BOM into UTF-8 files.
  • Code explorer for PHP - accented chars support in the variables.
  • Extended copy doesn't works with the last line.
  • Find/Replace dialog - replace confirmation.
  • PSPad doesn't respect individual TabWidth for highlighters.
  • Function CloseAll closes project files too without confirmation.
  • Editor line height with and without highlighter.
  • File tab - file name limit works for first 9 tabs only.
  • Fotran comment (Shift+Ctrl+A) changed from '*' to '!'.
  • Registration was moved from HKCR into HKCU for WindowsXP and above. You can register file types, set PSPad into context menu with user rights without influence of other computer users.
  • Drag/Drop file into TextDiff doesn't open a file.
  • User highlighter - keywords can start with chars contained in the Alloved Keyword chars field.
  • SpellCheck and exception after Add word to dictionary.
  • C++ highlighter doesn't highlight Assembler block.
  • F1 in the editor window doesn't show help.
  • Multihighlighter was limited up to 250 000 chars, now depends of the HlUpToSize variable in the Special settings section.
  • Clip list for plain text files (TXT.DEF).
  • Align block function removes EOL from the last selected line.
  • LeftToPreviousLine in Special settings section doesn't work.
  • FileSearch/Replace and unicode chars in modified lines.

Version 4.5.1 (2185) Date: 23 Feb 2006
  • Allow number of chareters displayed on file tab to be set.
  • HTML reformat function uses new reformat function for XML.
  • New option OldSpecialChars in the Program settings > Direct edit.
  • Drag/Drop file tab to favourite panel.
  • Restart not required if to modify code clips.
  • Switch from Hex mode into Text mode with active ASCII table.
  • Text to HTML conversion switches off source editor highlight.

Version 4.5.0 (2183) Date: 14 Feb 2006
  • Added support for system folders: %AppData%, %HomePath%, %Temp%, %UserProfile%, %WinDir%.
  • Added variable %Project% - the actual project name with the path.
  • Goto source in the Text diff works on nonumbered lines.
  • HEX editor shows number of selected chars.
  • In the backup folder specification, you can use all PSPad path related variables.
  • In the Program settings, added option to set the StatusBar action with the double click instead the single click.
  • In the Program settings/Program, added option [x]Highlight URL addresses.
  • New line comment style $ (CPL) in the user highlighter.
  • New multiline comment in the user highlighter.
  • Right bar in the TextDiff allows clicking.
  • Scripting extended of the project access. New functions: projectSave(), projectFilesCount() and projectFiles(index) - returns file name, projectFileName - returns project file name.
  • TextDiff function - added band with whole file changes indication.
  • Widget keywords support added into TCL/TK highlighter.
  • '-' char was set as the work break char in the CSS highlighter.
  • '$' char and PL/SQL code explorer.
  • Amtersand char in the fle name and file tab.
  • ASCII table - char selection.
  • Bracket highligh in MS-Dos BAT and UNIX Shell Script highlighters.
  • Change tag char case trim last two chars.
  • Color schemes.
  • Comment block function.
  • Confirm dialog after close to tray.
  • Extended Copy breaks national chars.
  • Find in Files - spaces in the file maks list, combo box behaviour.
  • FTP client - year 2005 was placed if a ftp server doesn't return year.
  • Hash variables in the PERL highlighter.
  • Interfaces in the PHP code explorer.
  • Left gutter with and line numbers.
  • Line block and bracket completion.
  • Load KeyMap settings from a file.
  • Missing keywords in the PHP highlighter.
  • Mouse wheel scroll flickering.
  • Paragraph reformat and national characters.
  • PHP code explorer and final class.
  • Reformat paragraph function.
  • Sorting in the FTP client.
  • TeX highlighter - WordWrap trims TeX commands.

Version 4.5.0 (2177) Date: 24 Dec 2005
  • Ability drag/drop text between editor windows.
  • Added opera8 support in program settings / system.
  • Added pasv command to keep ftp online.
  • Added the system variable %filename2% - returns file name without an extension.
  • Changed file type plugins. Read readme.Txt file in plugin directory. This is not a last plugin change. If you use plugins, please wait for the next build.
  • Clip files handling was rewritten.
  • Close all function added into file tab context menu.
  • Cobol highlighter - in highlighter settings is possible to set area a start, area b start and code end position.
  • Code explorer for fortran.
  • Connect to ftp button - added drop-down menu with the existing ftp connection list.
  • Copy directory with your last pspad full version to separate directory and replace pspad.exe from cab archive. You can work with both version together..
  • Double click in perl highlighter selects a variable include @, $, %.
  • Don't forget, this is first alpha version only !.
  • Expanded hash generator (md4, md5, sha1, ripemd160).
  • Expanded sql code explorer.
  • Expression evaluator allow you paste the result only or an expression with the result.
  • Extended end key option added to extended home key.
  • Extended home/end key separated to two options.
  • External applications and compiler setting - pspad suggest you the application directory in default directory selection.
  • File icons in ftp client.
  • File setting stores the right edge position too.
  • Hide file tab numbering - new option in the program settings / program-look.
  • In sort function is possible enter locale for sorting (available on WinNT only).
  • In spell check settings you can switch on/off auto correction.
  • Internal html preview refresh after save file if visible.
  • Is possible to change auto complete window size.
  • Kixtart highlighter - new keywords.
  • Max. Number of autocomplete items was limited to 20.
  • Mysql highlighter - added new mysql 5.0 keywords.
  • Native unicode support - you can write in several charsets together.
  • New comment styles $$ and //* *// in user highlighter.
  • New editor command ecSelWord - same functionality as Shift+ctrl+down.
  • New file tabs panel.
  • New korean localization added (shin ryu).
  • New option indent width (program settings / editor) - individual number of chars for the indent/unindent block. It has no influence if real tabs are used.
  • New scripting functions - printFile (print file - for text only !) And activate (brings editor to the top). New VBScript example - function for print all files.
  • New user highlighter comment style #| |# (clisp).
  • New variable in [special settings] section - simplefiletabs=0 switch off owner draw for file tabs - problems with 64bit os.
  • New wordwrap (i hope functional).
  • Possibility change clip list window size.
  • Program settings / program-look - you can set format of file tab numbers. If you don't want to have numbered file tabs, set format to %name%.
  • Proxy password is crypted now. If you used proxy password in program settings / internet, you must re-enter it.
  • Pspad registered itself into register, key "app paths". You will be able to run it without write path.
  • Rewritten insert text to lines (alt+i) function. You can insert begin and end of the text at once now.
  • Search.Ini file is obsolete. All settings was moved into recent.Ini file.
  • Search/replace in files - added unicode support - please test it before serious work.
  • Single click in the project tree activates a file if open.
  • Sort function with selected locale rules.
  • Speed optimizations - search/replace and reformat html.
  • Switch editors in split window with ctrl+tab or shift+ctrl+tab.
  • Tcl/tk highlighter extended of new keywords (expect extension).
  • Tcl/tk highlighter supports now tix extension.
  • The running time information added at the end of the compiler log.
  • Unicode support.
  • User convertors - the backward conversion takes replace list from the end.
  • User highlighters - new vcomment style " ". Only used comment styles are stored in definition.
  • You can switch off system file icons (speed up network drives access) in program settings.
  • A filename on the file tab wasn't visible if file has extension only and file extensions was hidden in the program settings.
  • Accented chars was marked as "bad" in java highlighter.
  • Add word to spell dictionary exception.
  • Added missing functionality comment/uncomment block.
  • Autocomplete function doesn't offer keywords from the user highlighter definition if no word was found in the text.
  • Autocorrection doesn't work in splitted window.
  • Autocorrection in html - problem with html elements.
  • Autorefresh window setting from the menu window.
  • Autosave - status bars flickers only if some file is saved.
  • Backup hex editor files unified with standard backup system.
  • Bad char coding in search in files result after search in oem or iso files.
  • C code explorer - function problem.
  • C++ code explorer and {} brackets in the string.
  • C++ code explorer and imported classes.
  • Calculate block function.
  • Char case change in win9x.
  • Click on the first line in the code explorer.
  • Clip shortcuts are restored after ctrl+space.
  • Clipboard monitor inserts 2 times texts copied in pspad.
  • Clipboard monitor pastes text with the line break.
  • Clips and problem with russian ? Char.
  • Code clips.
  • Code explorer and comments problem (c++, php).
  • Code explorer for oracle doesn't display whole package name if name contains char $.
  • Code explorer for perl and the hash variables/strings.
  • Code explorer for vb, c++.
  • Code format freezes program.
  • Comment code problems.
  • Comments and uncomment code if on the last line was selected one char.
  • Comments in foxpro.
  • Comment/uncomment code style in multihighlighter depends of actual highlighter.
  • Continue comments /** .. */ For c++, php.
  • Copy command during macro recording.
  • Corrected ctrl+right behaviour.
  • Corrected internal conversion table - ansi - iso-8859-2.
  • Css highlighting.
  • Ctrl+Double click select text include quotes.
  • Double click on word doesn't select whole word if numbers were contained.
  • Double click on word with accented chars with active highlighting.
  • Double click to select a word in the highlighters: sql, css, perl, cobol.
  • Delete word function on the end of the file.
  • Eol in unicode files depends of file type (dos/max/unix) setting in pspad.
  • Exception after change hex editor settings if bytes per column was set to 1.
  • Exception after close internal html preview with javascript.
  • Exception after run external tool from favourite tab if no file open.
  • Exception if code page different from ansi and 0 bytes file size.
  • Exception if pspad starts with parameters binary file + line number.
  • File change check for hex editor.
  • File without extension and highlighter detection.
  • Find in files - search in the ansi files.
  • Find in files function in unicode files.
  • Find in files in binary file closes pspad.
  • Flickering button problem.
  • Ftp client - refresh connect to ftp if disconnected.
  • Function autrefresh doesn't work from window menu.
  • Handled exception now if your e-mail client doesn't support simple mapi interface.
  • Hex editor and black background.
  • Hex editor and column number change with mouse wheel.
  • Hex editor colors doesn't corresponds to the program settings.
  • Hex editor ignores bytes per column setting.
  • Highlighter settings - buttons al, none don't activate apply button.
  • If clip contains empty lines, pspad inserts previous line instead empty line.
  • If no printer installed, print and print preview is disabled.
  • Incorrect address in internal html preview raises exception.
  • Individual tab width in highlighter settings.
  • Insert color from css clips doesn't respect css color format.
  • Insert text to lines function - insert text to position.
  • Insert text to lines if block was select from the end.
  • Internally rewrote huge of code (optimalization, unicode support).
  • Java - identifiers, started with accented chars.
  • Java code explorer and protected methods.
  • Javascript comment freezes program.
  • Missing %input%variable support in favourite tools tab.
  • Missing ecnextlinestart editor command.
  • Missing editor shortcuts (i hope its a final correction).
  • Mouse wheel in hex editor.
  • Mousewheel scroll - correct line scroll.
  • Msdos bat highlighter and echo followed by a command highlighting.
  • Multiline comments {} in user highlighter.
  • National chars in search and ftp dialog.
  • Negative numbers in the css highlighter.
  • New file with default template content doesn't respect code page from the menu format.
  • Nonsense string was stored in the project settings / web server if empty.
  • Open copy (ctrl+d) delete file after window was closed.
  • Open file from internet.
  • Option add cr+lf to eof wasn't functional.
  • Option wrap with right edge works again.
  • Pen file from internet - problem with file name if url ends with \.
  • Php - select word include '$'.
  • Possibility set main window from menu window.
  • Problem with left gutter size when you create bookmark.
  • Problem with the active scroll past eol option and the sort function.
  • Problems if pspad was running and file contains '.Exe' in the middle of the file name.
  • Program settings - some options doesn't enable "apply" button.
  • Pspad freezes with some user highlighters (e.G. Asp).
  • Pspad handles changes of printers number during pspad session.
  • Pspad shouldn't write into opera settings if isn't changed in program settings.
  • Reopen file and wordwrap.
  • Reopen file function from the ftp server.
  • Run external application causes a delay if you want return back to pspad.
  • Save as... With hex editor file.
  • Search in files - some options was disabled if different cp than ansi.
  • Search in files and Double click on the binary file in search result.
  • Search in r/o files.
  • Search next occurences doesn't work in some classes.
  • Search/replace in files keeps file format (dos/mac/unix).
  • Select block on the end of long file very slows program.
  • Select string inside brackets.
  • Select string inside quotes with mouse.
  • Senthesize text, cases when '?,' '?:' e.T.C..
  • Shift+space in hex editoru exception.
  • Small gui correction - char '&' in hints e.T.C..
  • Solved problem with editor keys.
  • Spell check and right mouse on word contains underscore.
  • Store user spell dictionaries into user profile.
  • Swap lines function in no while lines was selected.
  • Switch to hex mode and back doesn't keep cursor position.
  • Tcl/tk comment.
  • Text Differences - refresh function doesn't work, last line in first window wasn't processed.
  • Textdiff - missing lines into new file.
  • Textdiff - the result position depends of result setting from the program settings / editor.
  • The c++ code explorer and compiler defines.
  • The pspad freeze problem during clip insert.
  • User highlighter - some chars (e.G. ':') Wasn't highlighted as a symbol.
  • User highlighter and comment problem with #{.
  • User highlighter and comments after single and double quote.
  • User highlighter with specific settings freezes pspad.
  • Window flickers after reopen function (ctrl+r).
  • Window switching.
  • With active wordwrap and Double click in log wasn't active line visible.
  • With utf-8 code page was always crlf eol.

Version 4.3.3 Date: 18 Jun 2005
  • Improved open files panel - active file is bold, panel follows active window, added modified status
  • Rewrote KeyMap handling in Program settings
  • Files from FTP are locally stored into folder with connection name instead FTP server name
  • Variable MainFileInPreview in Program settings [Special Settings] section says, if internal HTML preview shows MainFile or actual file
  • Plugins for file handling (save and open). Plugins are DLL libraries, stored in subdirectory \Plugins\FileType. Interface description is in included file. If exists plugin with name corespnding to file extension, is used to handle open/save file.
  • Max. file size is for now limited to 5000000 bytes. For now 2 plugins are available - PDB (Palm database - e-books) and ZText (ZLib packed text). If you don't want it, delete it
  • New variable WordWrapEnabled in [special settings] section. Default state is 0 - wordwrap is disabled. If you want actual buggy wordwrap, you must enable it
  • Updated TiDy.EXE
  • Lorem Ipsum generator in menu Tools. Dictionaries are stored in .\Spell\Lorem*.txt
  • TeX highlighter expanded with keywords
  • Is possible assign shortcuts to split window horizontal and vertical
  • In [Special settings] section is possible to set max. number of recent files and othres history items (search, Command window, Google, ...)
  • In UserHighlighter setting you can assign existing code parser for Code Explorer. Let me know what you are using or send me User highlighter definition
  • New option in [Special settings] section - GutterClickInclLF=1 mean line is selected include line feed if you click on left gutter
  • New configuration file Google.INI in PSPad folder for Google search configuration
  • Tab number is visible for better orientation, if you use Alt+number for switch tab
  • New backup type - filename.BAK.type. Check backup settings !
  • Added Svedish localization (Hans Ericson)
  • Many new keywords for highlighter for MS SQL 2000
  • Added Kurdish localization (PCKurd group)
  • Rewrote INI files handling, I hope problem with antivirus during save settings will be gone
  • Rewrote CodeExplorer handling - each Window keep own content
  • Expanded Code explorer for Tcl/Tk
  • You see searched text in clip window
  • Added LOG access with scripting
  • Expanded code explorer for C++
  • Real window split in one document window with content synchronization. Call again to remove split. Added function into Window menu
  • Added support for Account in FTP connection setting
  • Buttons expand and collapse has influence for whole code editor content
  • Code explorer handled VB files include class files
  • Added variables %DosFile% and %DosDir% (short file and path) for external application and compiler in 8.3 name format
  • After cliplist call, you can continue to write and search clips, backspace returns you back
  • Bitmaps with button set was moved into Skin subdirectory. Please move there your bitmaps. Internal button set was changed to Frolov
  • Added support for all installed languages in WSH. Some scripting supported method was Rewrote, see included RTF. If some error in script, script file will be open and cursor position set to proper line
  • PSPad can handle PDB (Palm database) documents. You can open it, save it, for save text to PDB, use PDB file extension or choose File | Export | Save as PDB...
  • Rewrote statusbar part - slow scrolling, flickering
  • Added comment (+ ... +) for "D" language
  • Code explorer version for PL/SQL
  • Added Active scripting, uses WSH (in 1.phase VB support). I suggest to study included example and RTF document in Scipt subdirectory. Thanks to Uwe Boeckers for help
  • PSPad now works with command line TiDy.EXE instead of TiDyxxx.DLL. You can actualize TiDy version as you need from http://tidy.sourceforge.net
  • During end session PSPad check recent list and remove nonexistent files
  • Open/Close folder files in project panel let focus in project window
  • Move file keeps original file time if file isn't changed
  • Remember file state option remembers Code page too. Structure of PSCache.BIN was changes, PSPad delete it first time you run this build or you can delete it manually
  • In [Special settings] section added variable HLOnUpToSize. If file size exceed value of this variable, syntax highlight will be off after load file
  • Double click in TextDiff window has GotoSource functionality
  • New Icon set from Leonid Frolov
  • Program settings / Program-behaviour - new option Autosave main window position
  • In menu Settings added menuitem Save Main Window position - manually saves actual Window position and disable Autosave main window position in program settings
  • In file tab context menu added item System menu
  • Program remembers last path used in CSV Import during program session
  • If more than one program instances is enables, program title on taskbar shows Project name instead filename
  • In program settings / Direct edit [Special settings] you are able set old PSPad icon with variable: "OldMainIcon=1"
  • Font from Language file wasn't accepted in some dialogs
  • PHP Code explorer - constructor symbol color in PHP class
  • Double click on project name call Open File dialog, bad project name icon
  • Find in files - problem with WholeWords only switch and TAB char before or after search word
  • Exception with search in Code Explorer and no file open
  • If file Links.INI doesn't exists, wasn't possible to add new link
  • XHTML export exports attribute name with small letters
  • Perl Code Explorer and missing hash variables
  • AutoCorrect
  • Python highlighter
  • Closing PSPad and Exception after Save all confirmation and Cancel in Save file dialog
  • Exception if you close favourite panel and then close PSPad
  • HTML Code explorer - TBODY was detected as BODY
  • CSS highlighter and multiple numbers as parameter
  • Export to HTML - problem with font
  • Change of new/old icon in program settings has now influences of PSPad link icon too
  • Pascal Code explorer and problems with comment {} and // combination
  • HTML preview hide behind main PSPad window if you move cursor over PSPad main window
  • Corrected function Remove HTML tags (spaces, styles, scripts)
  • In R/O files was possible make changes with ClipList and clips hotkeys
  • Bookmarks and scroll in HEX editor
  • Drag/Drop file in project with auto sort active
  • Open R/O file with File / Open doesn't set R/O mode in PSPad
  • Problems with nonstandard font and Search in files result
  • Caption in play macro menu stay even macro file was deleted in Macro manager
  • Project information was disabled if no files open
  • Exception if you call File info and file was locked
  • Project from directory don't ask for save changed files
  • Corrected code explorer for PHP5
  • Compare empty files and go to previous change raised exception
  • Save file to FTP and server name on FTP panel
  • Show color doesn't work if you select color from right to left. In HTML and CSS is color selected by Double click with "#" char
  • Exception during add extension in settings dialog with low user rights
  • Problems with backup files in scripts directory
  • Default directory problem
  • Exception with empty UTF-8 file
  • Exception if file WWWTools.INI missing
  • Exception if you call Refresh in TextDiff window if source files was closed
  • Paragraph reformat with Shift+Ctrl+K without selection adds empty line to begin of doc
  • In CLipboard monitor wasn't possible delete with Del and Ctrl+Del
  • \# in PERL highlighter was highlighted as comment
  • Code page change and File Format was possible in R/O file
  • ESC in command window closes Whole program if Escape exit activated
  • Code explorer for PHP - added missing definitions
  • User highlighters doesn't support label starts with digit
  • FTP client, UNIX L8 SunOS and TMP directory
  • Copy to clipboard from Command line window edit fields
  • New file wasn't highlighted
  • AutoComplete doesn't take words from user highlighter, Keywords2 and Keywords3 sections
  • FTP client - used nonstandard port wasn't reset for other connections
  • Invisible File tabs after start
  • If R/O file was active, wasn!t possible to open file with Drag/Drop to PSpad
  • Some correction in Code explorer for Java, PHP, Python
  • FTP exception after CHMOD command with no file selected
  • Rename folder in Project tree
  • File name for recorded macro allows enter unalloyed chars - exception
  • LOG window was always visible after start
  • Call Clip window with selected text - search behaviour
  • Was possible to write unalloyed chars into new FTP directory
  • Corrected problem with PHP script in multihighlighter - isn't necessary to write space before script end mark
  • Corrected shortcut settings for bookmarks, you can redefine Ctrl+number or Shift+Ctrl+Number now
  • Was possible to insert Date/Time, color, clipboard monitor even file was marked as R/O
  • Nonfunctional ENTER key in Internal HTML preview
  • Function Close all files except active raised exception
  • Corrected HTML TiDy cooperation - lost line in header
  • Exception if you run Macro and no file open
  • Splitted window and splitter moved to top of window
  • Splitted editor window and "modified" indication after save
  • Exception in HTML multihighlighter and PHP code
  • Problem with save param file if more running instances of PSPad closed together
  • Code highlighter for C
  • Clip shortcuts and highlighter colors and new file
  • Split two different files with file tabs context menu
  • Strings in KiXtart with combination single and double quotes
  • In splitted window both window doesn't accept commands like ShowLine Numbers, change highlighter,
  • Exception after Open All files in Search in Files result if no file is open
  • Resolve color function and expression: #007F7F,bold
  • If you send link as PSPad parameter, PSPad opens link instead linked file
  • Scrollbars in splitted window
  • Horizontal scrollbar in search result

Version 4.3.2 Date: 24 Dec 2004
  • TextDiff with file - PSPad remembers last path during session
  • Favourite panel/Tools has now possibility of compiler
  • New option in Program settings section [Special settings] - CtrScrollIfSelected. If set to "1", window will always scroll with Ctrl key
  • New backup option in Program settings / Backup - add .BAK extension to filename
  • New options in Program settings / Confirmation - Search in file confirmation, Close all confirmation
  • Favourite panel code was rewrite - program remembers expand/collapse state, removed items expand button
  • Is possible to use variables in Compilar paths
  • Program settings / KeyMap - actual shortcuts list in HTML (Print)
  • Added history for %input% param dialog
  • Start PSPad in TextDiff mode. Syntax: PSPad.EXE -d "file1" "file2"
  • Log and Search result windows content is possible open in new window (button on the left side)
  • New languages - Japanese and Romenian
  • Internal optimalization with TreeView control
  • Program settings - in [Special settings] you can set line spacing with ExtraLineSpacing (integer) parameter
  • Button added in New file dialog / Template for direct template edit
  • You can choose button icon set in Program settings/Program-look. Please delete PSPad.BMP. This set will be distribute as VitezslavValka.BMP. PSPad value is used for default (old) PSPad buttons
  • Find in files - info about number of occurences and files after search, in results info for occurences in files
  • Added class support in VBScript Code explorer
  • In [Special settings] section in program settings - added CheckDocChanges -enables/disables document change detection
  • Confirmation for reload document(s) changed by other program you can make for all changed documents
  • In Program settings / Files new option - default file format
  • FTP connection dialog - import from FileZilla
  • CommandLine - added default directory
  • In OpenFile dialog possibility open file as R/O
  • In Program Settings/Key Map with button "Direct edit" you can edit KeyMap.INI
  • User Highlighter - added comment style "-*" for WebFocus
  • In Language file is possible set font for dialogs in section [Common], DefaultFont=font_name
  • User highlighter - new comment style "|" for Baan4GL
  • File list panel - added context menu, Rewrote panel behaviour
  • Code explorer for KixStart - added Labels
  • Search in files - new switch to prevent clear last result messages
  • Program settings / editor - possible switch off smart chars completion - inserts chars always
  • New tab Confirmation in Program settings
  • Parameter TextClipsIfHLOff ve [Special settings] - if Highlighter is off, TEXT clip file is used
  • File tabs context menu - you can close files right/left from tab you call menu
  • In FTP panel you can delete files with DEL
  • ASCII chart is set to actual char if you call it from status bar
  • Is possible open/close all project files if you use "Open folder files" function on project name node
  • You can use "CWD ./" command for keep FTP connection
  • In menu Project add menuitem Save as...
  • Find dialog - you can create non matching list
  • Code explorer remembers open state
  • If you call user highlighter, open dialog occurs
  • Multiline strings in KixStart highlighter
  • New comment style {- -} in UserHighlighter for Haskell
  • PHP highlighter highlight hash variable too
  • In Program Settings | Editor new option Group UNDO
  • Code Explorer for MS-Dos batch files doesn't ignore commented lines, recognize of comments improved
  • Corrected user highlighter definition - SMARTY comments
  • Exception with menu Windows | Cascade or Arange
  • Exception after create template from block in TXT file
  • Correction for end of PHP script in Multihighlighter
  • Corrected comments for SAS in user highlighter
  • Link in Send menu doesn't accept PSPad HEX settings
  • Code comment if highlighter switched off
  • Select inside brackets
  • Search in files recognizes "_" and "-" as wordbreak chars
  • During PSPad closing wasn't modified file from FTP save back to FTP
  • Exception - right mouse in empty workspace
  • Corrected behaviour - expand nodes in file search result
  • Drop .LNK into editor doesn't open file but link
  • Insert time in format Unix timespamp
  • Right side docked Code explorer doesn't show content after open
  • New file dialog doesn't actualize Template list during program session
  • CSS Code explorer and comment as part of line
  • ESC exits program from autocompletion dialog
  • No warning in KeyMap if ShortCut exists in Editor section
  • User highlighter - comments problems
  • Little correction in Code explorer for Java, PHP
  • Wasn't possible show Code Explorer after hide it
  • Java Script and export to HTML, ...
  • Parameters %line%, %word%, ... in program after compilation
  • Little changes in Autocorrection behaviour
  • Save Work/Desktop and open files outside PSPad
  • Save All reaction when exiting PSPad and locked file
  • File format of new file if open from template
  • Correction in JAVA highlighter
  • User highlighters doesn't work correctly with keyword chars
  • Font settings with some dialogs
  • Search in files without result and click to Expand all or Close All button
  • Copy in Search dialog - several occurences of same line if several result in line
  • Select inside brackets exception in new empty document
  • Close into Tray - if you run PSPad from link, desktop wasn't restored
  • Smart window switching order and new file
  • Run compilator and exception after compilator settings dialog
  • Default directory in compilator settings doesn't accept file variables
  • User highlighter - highlighting with char $
  • If save history from local drives only enabled, history from some dialogs wasn't stored
  • New file / Template - exception after Modify button
  • Save file with R/O attributes
  • Missing VBS properties in Code explorer
  • Indent block and TabWidth set to 4 - exception in some classes (depends of parameters combination)
  • Solved problem with mouse scroll in editor and Log window
  • Corrected Unindent if no text selected
  • Added "else" keyword in MS_Dos highlighter
  • FTP client and parsing problem if permissions contains upcase letter
  • Bookmarks list doesn't respect font settings
  • ASCII table wasn't Stay on top if unlocked
  • Exception after Copy/Count/List in Find dialog with noncorrect regular expression
  • Search in files - Open all button opens all files as empty
  • Internal HTML preview with Gecko after hide preview (F10) - PSPad stay nonactive
  • Code explorer and "Exit Sub" in VBS
  • Improved behaviour of search for file name in Project tree
  • TextDiff and corresponding file type in OpenDialog
  • Exception, if you send file mask as program parameter
  • Block align doesn't keep bookmark settings
  • Auto correction - nonsense behaviour after brackets, after PSPad start wasn't active
  • Small correction in Smart file switch behaviour

Version 4.3.1 Date: 26 Aug 2004
  • User highlighter definition (include clips) for R (Nick Drew)
  • PHP5 keywords added into PHP highlighter
  • First CSS code explorer version - required structured CSS
  • Search in project tree with writing file name
  • Open file appointed by selection - opens for PSPad unknown file in default application
  • Show color function - added mixer possibilities
  • Added user highlighter for FLEX
  • New comment style in user highlighter *...;
  • Program settings - new button Direct edit - you can direct edit PSPad.INI from PSPad
  • New parameter in [Special settings] - DontChangeFileAttribs - disables file attributes manipulation for PSPad
  • New parameter in [Special settings] - AutoDetectBinary - enables binary file autodetection
  • New function - Repead last command in menu tool
  • User highlighters - new comment style { for PocoScript
  • New option in program settings / tools - Sort Code Explorer results alphabetically
  • Code parsing internally Rewrote to use regular expressions
  • N user highlighter definition you can specify chars to be part of keywords
  • Open file appointed by selection looks for files in project too (usefull if path missing)
  • Program settings / system - new parameter - switch off PSPad Hex in context menu (possibility to open binary file in editor will be soon)
  • Program settings / files - new parameter - always open selecteded file type as new file
  • CHMOD command added into FTP context menu
  • New non-visual parameter OpenAllReadOnly - possibility to open all files in R/O mode
  • User highlighter has now 4 sections for keywords
  • New option in Program settings / Files - Store for files from local drives only
  • Class support in PHP Code Explorer (first version)
  • Eye dropper - move with cursors
  • Enter in Clipboard monitor inserts selected items
  • Extended function Swap lines - if you use it on selected block, all lines in block are swapped
  • New section [Special settings] in PSPad.INI, available only with manually editing. PSPad.INI isn't possible to edit direct in PSPad !
  • Highlighter detection - enabled highlighters are preferred before disabled
  • Rewrote Code explorer for LaTeX
  • File Explorer remembers File name width
  • New tab on Project panel - open file list
  • Into external file is sent selected text if available
  • Find in Files dialog - you can insert actual file path with new button
  • New empty file on the FTP with context menu in FTP
  • For HTML files bigger 500kB is used simple HTML highlighter instead HTML multihighlighter - speed load
  • With shortcuts ALT+n (n=1..9) you can switch file tabs
  • Code explorer for VB Script
  • If program is run with /H /nnn parameter, position in Hex editor is set to nnn
  • In function Clip from selection you can insert chars | and § with click on the label
  • In FTP connection settings you can import accounts from WS_FTP (change filter type in dialog)
  • Find in Files - file mask is always available
  • Editor component function ecInsertLine inserts line only without break of active line
  • New version of FTP parsing - please report all problems
  • In FTP connection settings you can choose binary or ASCII transfer mode
  • In search dialog added regular expression examples
  • For Convert tabs to spaces you can manually enter TAB width
  • Code explorer for TCL/TK
  • Updated KixStart highlighter
  • First version of LaTeX document explorer
  • Into external file is sent selected text if available
  • Find in Files dialog - you can insert actual file path with new button
  • New empty file on the FTP with context menu in FTP
  • For HTML files bigger 500kB is used simple HTML highlighter instead HTML multihighlighter - speed load
  • With shortcuts ALT+n (n=1..9) you can switch file tabs
  • Code explorer for VB Script
  • If program is run with /H /nnn parameter, position in Hex editor is set to nnn
  • In function Clip from selection you can insert chars | and § with click on the labelextended MS-Dos BAT highlighter (Echo, Label)
  • New version of FTP parsing - please report all problems !!!
  • In FTP connection settings you can choose binary or ASCII transfer mode
  • In search dialog added regular expression examples
  • For Convert tabs to spaces you can manually enter TAB width
  • Code explorer for TCL/TK
  • Updated KixStart highlighter
  • Dded Croatian localization (Mladen Mintakoviæ)
  • In Program settings / Files you can set directory where you want store local copy of files from FTP
  • Dialogs for Color, Clip monitor, ASCII remember un-docked window position
  • Into project yuou can add all open files (menu Project or context project menu)
  • Added autodetection of binary files
  • Optimalization memory and GDI if PSPad is minimized to Tray
  • Char case change or reformat block preserve block selection
  • New comment style in User highlighter $(..)$ a $*
  • Changed word count algorithm in File Information. Now is limited with 50 000 unique words in file
  • Added highlighting of ˜ and Ÿ in HTML highlighter
  • Enabled HTML compression for HTML
  • Program hang after Select Tag in file without tags
  • Wasn't possible open UNICODE file if doesn't contain BOM bytes
  • Open FTP file containing unallowed chars
  • Code Explorer and PHP with specific comments
  • Corrected problem with animated GIFs in Clip dialog
  • Problems with noncorect tabs after Save All
  • Corrected ESC chars in JavaScript strings
  • Highlighting PHP with string, containing "\$xxx"
  • After file delete with context menu in File Explorer PSPad doesn't stay as active application
  • Resolve color, if cursor stay before ";"
  • Goto Line doesn't actualize status line information
  • HTML multihighlighter - "?>" in code break PHP highlighting
  • SQL highlighter with Interbase dialect causes exception
  • Parameter with %SelText% variable in external applications
  • Goto bookmark with Alt+Up/Down doesn't respect cursor result in program settings
  • If file was opened from FTP, Double click in FTP dialog rewrite file without warning
  • Code explorer for INI shows tabs as squares
  • Reopen of file loaded from FTP didn't reload it from FTP
  • After project load wasn't activated clips hotkeys
  • UNICODE file was in some cases detected as binary file
  • If PSPad was running and you open file with line number > 99
  • Redundant background color in export into XHTML
  • Close nonactive file tab - bad file tab was selected
  • Corrected Chinese language detection
  • Code Explorer for Perl cut off char from function name
  • Search in files - line number doesn't correspond if WordWrap
  • Corrected HTML reformat with PHP code
  • Add/remove comments sometimes cut off char from line without comment on the begin
  • Solved problem with long file name as parameter without doublequotes
  • Bug in File Explorer if you enter first char of nonexits File name
  • Corrected Chinese language detection
  • Code Explorer for Perl cut off char from function name
  • Search in files - line number doesn't correspond if WordWrap
  • Corrected HTML reformat with PHP code
  • Add/remove comments sometimes cut off char from line without comment on the begin
  • Solved problem with long file name as parameter without doublequotes
  • File size for files bigger than 2GB in File Explorer
  • Lines start with "c" are accepted as comments in Fortran too
  • SendTo check box in program settings doesn't accept actual state
  • External application and %SelText% variable
  • Tuning of Code explorer for Java
  • Missing keywords for Fortran Highlighter
  • Broken Reopen function
  • Eye dropper doesn't put colors in RGB although it was set in Settings / HTML tools
  • Last file change doesn't respect Time zones
  • Hang-up in Code Explorer in plain text file
  • User Highlighter and case sensitive keywords
  • Numeric Base Calculator - paste negative number from clipboard
  • Added check FTP connection before FTP file save
  • Reformat CSS to structured changes style name to lower case
  • Code explorer refresh during switching
  • Many little bugs
  • HEX editor / Goto dialog - disabled lowercase letters
  • Change CP in Find in Files dialog disabled "Whole words only" option
  • HEX editor doesn't make back-ups
  • Code Explorer collapses
  • Option save recent from Local drives only wasn't saved
  • PSPad freezes for some configuration in User Highlighters
  • Some correction if long file name as parameter wasn't enclosed in doublequotes
  • PHP highlighter and highlighting variables in apostrophe strings
  • Drag/drop directory to PSPad
  • Wasn't possible call context menu via standard Shift+F10 in editor
  • Exception if pspad was run as minimized and direct closed
  • Even file was R/O, was possible to drag/drop text into editor

Version 4.3.0 Date: 5 May 2004
  • Auto Refresh and SaveAs added to file tab Right click menu
  • FTP client - sort by window title click
  • New localization - Turkish (Cemal Dogan)
  • User convertors - added button for modifying
  • New user highlighter for Clarion (Nelson A. H. de Carvalho)
  • MD5 fingerprint can compare existing MD5
  • Into CSS you can insert color in format rgb(r,g,b) - format is in Program settings / WWW Tools
  • Project info dialog - Double click or Enter - file info
  • Right mouse menu in project - add file info
  • Right from menu you can edit configuration files for Online help and tools, TiDy, WWW tools,...
  • New menu style - in program settings you can switch it off - it can be slow on old computers
  • Import FTP settings from Total Commander
  • Added new variable %Line% - line number
  • New FTP code version (same author) - report me know problems
  • New button with tools in HTML preview
  • Variable %Word% is ready to use in Link panel too
  • New HEX editor component version (you can change size with Ctrl+Wheel or Shift+Ctrl+Wheel)
  • R/O files are indicated by other color in FileExplorer
  • Drag/drop image into CSS
  • FTP shows hidden files too
  • Show color works with short form #RGB
  • New function - expression evaluator (available function list will be in help)
  • In CSS are words selected include "-"
  • Insert from file - available multi-select in dialog - you can insert more then 1 file
  • New HTML conversion function - Selection to PHP variable
  • Documentation comments in JAVA, C, ... - modified behaviour
  • If word select with Double click, next Shift+Click select whole word
  • Find dialog remembers (o) Entire Scope option
  • In Project settings you can specify own Document Root and Web Server name
  • New Sentensize char case conversion
  • New FTL list window
  • Changed format for Text to Java conversion
  • New Interactive template control for horizontal line: @--
  • Status bar shows position on LOG window too
  • New tool MD5 finger print - creates MD5 from text or file
  • Added tool button for CodeExplorer
  • You can change language by Double click or Enter key in Language list
  • New variable %PSPath% available for external help
  • In Windows SendTo context menu added PSPad HEX editor link
  • Macro recording behaviour - after record is F5 (or what you have set) automatically assigned to new macro
  • Rewrote C++ code parser for Code explorer - increase speed
  • New parameter in program settings / editor settings - number of line for Mouse wheel
  • Program settings dialog completely Rewrote
  • If you edit and save Online.INI, PSPad menu for online help and tools is reinitialized
  • changed Add/Remove comments behaviour
  • Standalone HEX editor settings was integrated into program settings
  • HTML preview on CSS file opens this file again and again
  • Error if language file is empty
  • Was possible run Spell check without dictionary
  • Code Explorer has problem in some HTML code
  • Error message during Project file saving
  • PasswordChar and Traditional Chinese environment
  • Resolve color - in some cases add double quote behind HTML color
  • Code explorer for Java doesn't allow accent chars in object name and properties
  • With CSS document wasn't available CSS tools from menu HTML
  • Some corrections in FTP client - let me know
  • Code Explorer improved for GNU C syntax
  • Code Explorer improved for JAVA
  • Printing selected text with text contains real tabs
  • FTP for Sun AIX server
  • Clip files - sometime lost shortcuts
  • New document with only several highlighter enabled
  • LOG windows width problem
  • Disconnected FTP and click in FTP list
  • Switching project doesn't set correct file TAB
  • Problem with last localized month in FTP connection settings
  • Unregister file type deletes assigned PSPad icon
  • If MultiUser environment, ErrorLog is stored in User profile
  • Quick typing in File Explorer filter
  • Drag/Drop more files on PSPad link or Send To
  • Template from block (Shift+Ctrl+Space)
  • Import from CSV - exception if source file was locked by other app
  • Some correction in Code Explorer with PHP, HTML, XHTML
  • New file opens HTML files in multihighlighter
  • Variables in Online Tool was case sensitive
  • Wasn't possible to open file with 0B length
  • After TopStyle CSS education bookmarks are restored
  • CSS reformat - spaces before colon
  • HTML reformat - problems with script in some cases
  • File Explorer - sort files by type
  • Last CrLf is saved and open as is in file - no other settings
  • Double click in LOG window in some classes opens bad file
  • Color Translator in empty line
  • Switch to HEX mode with empty file
  • Code Explorer - problems with //** comments in C++
  • MySQL highlighting
  • Expression evaluator and no file open
  • Password in FTP LOG is masked by *****
  • FTP connect to other port than 21 (server:port)
  • Corrected new Macro assign to F5 key
  • Cannot rename FTP file with '.' on the begin of filename
  • Variable %PSPath% doesn't work in link panel
  • Select inside bracket in non HTML code
  • OPERA 75 integration
  • Switch into HEX view in empty file
  • Total Commander integration and disabled ini file writing
  • Numeric base calculator - day has 60 hours :-(
  • Closing PSPad - if file can't be saved, PSPad doesn't close
  • Code explorer for C++
  • FTP directory delete
  • Corrected Notepad.EXE wraper - long file name nonclosed in double quote
  • Code explorer and INI files - if on the begin wasn't section
  • Double click select word with underscore in plain text too
  • Clip list and problem with non europe fonts
  • Find dialog List function and lines with length > 1024 chars
  • Use convertor can contain spaces on the begin of strings
  • Error reading file from FTP if server variable includes port (server:port)
  • WordWrap and setting right edge under 0

Version 4.2.9 Date: 16 Feb 2004
  • Online Tools – A new menu item in HELP menu
  • Added Catalan localization (thanks to Antoni Clavell) + spell check dictionary
  • New dialog to set HEX editor options on the Settings menu.
  • Ctrl+TAB switches between 2 last windows. Active only if Smart File option is set in Settings / Program Settings/ Program.
  • New German spell check dictionary
  • If you edit file direct in HEX editor, you can switch line length (16B, 32B, 64B, 128B)
  • In FTP connection settings you can set localized month names
  • Added question before deleting history (in Settings / Program Settings). Search history is deleted too.
  • Windows switching - if you keep Ctrl pressed, windows are switched continuously, in other case you switch between last used windows (When Smart FIle Switching is enabled)
  • New version of spell check dictionaries (Czech, Slovak, English) - download from PSPad download page.
  • You can use multiselect on the recent tab of the New File dialog.
  • Added Netherlands localization (Thanks to Petyr)
  • In Settings Program settings / Editor you can switch off middle mouse button for clip list
  • Tools / Special converters was moved into Edit / Special Conversion
  • Added select directory button for Document Root in Settings / Program Settings / Internet
  • Added system variable %PSPad% with PSPad version and build
  • New buttons added on FTP LOG panel. You can see LIST direct from FTP and possibility to mail FTP LOG
  • Standard context menu added to directory list in FileExplorer
  • Find in Files remembers expanded state
  • You can switch off icons in menu (Settings / Program Settings) to aid visually handicapped people who have problems.
  • Test on the PSPad start if OS is Windows 98 and above
  • Settings / Program Settings / Internet has a new option to take proxy setting from IE.
  • If in only one line is selected when the command line is called from within the Editor the text is placed as the command.
  • In multihighlighter it is possible to open ASP files - highlighter for <% %>
  • Select all added into context menu.
  • It is possible to save and load alternative key shortcut settings in Settings / Program Settings / Key Mapping.
  • Mozilla Internal HTML preview. If you download and install Mozilla ActiveX control (isn't as part of Mozilla Browser). You can us it for Internal HTML Previews by using the first icon on Internal Preview toolbar.
  • Default settings for backup directory.
  • Drag/Drop image into HTML source creates TAG <IMG...>.
  • New way to display object borders (table...) in HTML preview (Zdenek Homola)
  • Automatic LOG parser settings for HTML and PHP if not defined.
  • Join lines - new function in menu Edit / Lines manipulation (and on the context menu too)
  • Special converters - encode and decode URL and Quoted printable
  • HTML preview and HTML preview web server added into main context menu.
  • HTML preview web server changed to standard program action - you can change hotkey now
  • Click on position in status bar shows dialog "Goto line"
  • EyeDropper shows actual color and color code
  • Text to HTML - document is marked as modified
  • If PSPad was maximalized, after EyeDropper was restored from maximize
  • Open folder files in project tree opens folders as files too
  • Autosave shows dialog if new project.
  • During Close folder files function nonsaved file from removed project
  • Code parser doesn't work with normal "/" in file name (e.g. RUBY language)
  • Highlighter settings doesn't save changed file extension.
  • File explorer changes directory in some cases.
  • Wasn't possible to rename project subfolder with F2.
  • Problem with renaming subfolders in project tree with F2.
  • Dialog New file and bigger system font size.
  • Spell check icon stay active after tray minimize.
  • Problems with UTF-8 coding.
  • Assigning highlighter for <% %> in MultiHighlighter (Program Settings / HTML).
  • Favourite panel behaviour.
  • Insert from file function - disabled multiselect in Open file dialog.
  • Disabled "Save project" if no file open.
  • Code explorer and XML file with wrong structure.
  • ESC in clip list close PSPad instead hide list.
  • Text to HTML - creates new doc with same name and .HTML extension.
  • Block align stay disabled after close all docs.
  • Improved highlighting of string in PHP.
  • Tile window horizontal and vertical preserve minimized windows.
  • Hide all panels and Show Macro panel only.
  • Drag/Drop link to PSPad opens link instead document.
  • Java Script preview in internal browser has .HTML extension.
  • XHTML colors was not load on start if XHTML was base for Multihighlighter.
  • UTF-8 problems with Unix or Mac lines.
  • Internal FTP code corrections.
  • Wasn't possible delete backup path in Settings / Program Settings / Files.
  • If Tools are docked into left panel, panel is displayed if not visible.
  • Corrected multiline File tabs in Button mode.
  • Program settings saving was optimized.
  • HEX editor and change highlighter.
  • HEX editor - enabled Indent and Unindent block actions.
  • In PHP highlighter text disappears after $ char.
  • Sometimes error occurs during show template list.
  • If you press Cancel in highlighter settings, program forgot user highlighter assign.
  • User highlighter set wasn't seen in New file dialog until after program restart.
  • HTML reformat destroy PHP formating.
  • Problems with status bar info and HEX view text file.
  • Import HTML - exception if another application lock source file (Word).
  • Corrected Cancel button behaviour in dialog after Close All.
  • Added confirmation in Save project dialog if you save over existing file.
  • Delete History in program settings doesn't delete contents of Recent.INI.
  • Save As in HEX editor set nonsense file attributes.
  • Spell check context menu works with all words, not only "bad" words.
  • Default compiler directory - program doesn't remember setting.
  • Resolve color - error if comma behind color.
  • Code Explorer for Java Script - bad line number in variable occurences.
  • Links panel / Edit link - wasn't possible add parameter from context menu.

Version 4.2.8 Date: 29 Dec 2003
  • Add Accent marks function works with selected text too
  • PSPad instalation register TiDy library - user with limited rights can use TiDy functions
  • first version of JAVA Code explorer
  • EyeDropper - new function in menu tool for get color from screen pixel in HTML format
  • PHP code parser - all variables, improved speed
  • File information - possibility run detail statistic for big files manually
  • Added 2 slots for user highlighters
  • Function Select inside brackets works with char "`"
  • New parametr in FTP settings - compatibility mode for old PROXY/NAT
  • Programm settings / Internet - option to use default mail client
  • Text to HTML - reuslt is in new window
  • FTP client - possibility to send RAW command (context menu)
  • Improved language detection for first PSPad run - language can be set to your environment (if available)
  • Changed file saving mechanism - please report any problems
  • Status line displays decimal value in the HEX editor
  • You can open new file by doubleclick next file tabs
  • Drag/drop from link window into editor place Command line instead link name. You can also manage your link by draging
  • Modified function "open file from selected text" - you can open file without path, if path corespond to actual document
  • Add/remove comments added into Unix Shell Script
  • Possibility to entere general file mask (wild chars *, ?) in file explorer filter edit box
  • Two new comment styles added into user highlighter definition
  • Added %Input% variable - you can enter parametr before compilator or external app runs
  • Code explorer expanded to XML, XHTML a RSS
  • Program remembers checkbox states in Find/Replace dialog between sessions.
  • Program remembers child window state (maximized) between sessions.
  • It is possible to send error messages right from Error dialog.
  • Environment help (Alt+F1) - you can use connect to online help. Variable %word% in URL address is replaced by current word from editor
  • File Explorer - Renaiming a file in File Explorer changes the name file name tab is the file is open in the editor. It also changes the file name in the project window, where appropriate.
  • Increased PSPad mail form size and enabled form resize.
  • Code Explorer - you can insert selected text in cursor position or drag/drop into editor.
  • File Explorer - you can edit file filter now
  • New localization - Ukrainian (Taras Kapuszczak).
  • New template fot C++.
  • Bracket isn't completed before $ (PHP variable).
  • Open file from selected text - if URL address, file is open in default webbrowser. If you need source code, use it with CTRL.
  • DoubleClick in PHP select variable include $ on the begin.
  • Program Settings / HTML - convertion from text to HTML - option <br> or <p>...</p> for paragraphs.
  • Changed files are checked after compilation (e.g. open Log files).
  • Code explorer - added JavaScript and Python parsing.
  • Now you are able to change shortcut for clips (Ctrl+Space and Shift+Ctrl+Space).
  • Confirm dialog before 'Character Case Change' for whole document.
  • Search dialog - added context menu for search expression with regular expression.
  • Drag/Drop support for Link panel - from internal explorer, file tab and from PSPad "outside"
  • A default template can be used for use when creating a new file of a particular type.
  • Command Line - new function
  • Close window with middle button click on file tab panel
  • Added new variable %SelText% for using with compiler and external apps
  • Print Preview - mouse wheel change scale
  • Added list of last command to Google and Highlighter settings/Help files
  • Sort dialog remembers last settings between PSPad sessions
  • Resolve color - removed default hotkey Ctrl+Alt+C
  • Bug in CodeExplorer sorting if no line selected
  • Bug with position if you insert template more times
  • User variables wasn't saved
  • Incorrect char set in print header and footer
  • If all files closed, recent project was disabled
  • File info - detail statistics limited for files up to 50 000 lines
  • Select inside brackets wasn't work with "<" ">" brackets
  • Function "Insert without cursor change" wasn't correct if some text selected
  • Was possible to insert Date or GUID into R/O file
  • Individual Tab settings from highlighter settings wasn't load
  • Search dialog - error message if can't write settings
  • Project tree - wasn't possible to sort whole project
  • Project tree - impossible create folder if folder with same name exists
  • Incorrect behaviour in some cases with TiDy reformat
  • Google search dialog has OK button disabled even last search was filled
  • Clip from selection wasn't enabled for simple text
  • Search in Files - after cancel confirm dialog, OK button was disabled
  • UnIndent (Shift+Tab) error with enabled "Trim trailing spaces"
  • UnixShellScript doesn't highlight strings `string` and variables before =
  • Error inserting date time in RFC format if timezone with minutes used
  • Code Explorer doesn't clear content after all files closed
  • Highlighter settings - autoindent chars wasn't loaded
  • ASCII chart inserts even editor was ReadOnly
  • Error calling function "Resolve color" behind end of line
  • Error if bad e-mail client set
  • Corrected Code explorer behaviour and file switching
  • Error expand tree in Code explorer if tree is empty
  • Status bar line and position info behaviour
  • Edit commands (Cut/Copy/Paste) in Command line
  • Base calculator - behaviour when variable base was changed
  • If template directory was empty and autoopen empty file disabled
  • Lost highlighters settings
  • List of User syntax definition in Highlighter settings


Help File Updates

Copyright © 2002-2006 Jan Fiala.
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled "GNU Free Documentation License" (see Licence).

The English Language version of the PSPad help file is currently undergoing a rewrite.

This section lists when last the topics were updated. If you find any mistakes and/or omissions please let us know at pspadhelp@shemminga.cix.co.uk or pspadhelp@gogogadgetscott.info. It would help, if you could also include the phrase 'PSPad Help' in the subject of your message.

Updates

  • April 2006
  • March 2006
  • February 2006
  • December 2005
  • January 2004
  • December 2003

April 2006

  • FAQ
  • Credits
  • Project Menu
  • Editor - settings
  • Files and dirs
  • System integration
  • Special settings
  • Script User's Guide

March 2006

  • Lines Manipulation
  • Confirmation

February 2006

  • Files and folders
  • Command/Compiler Variables
  • Script Language Reference

December 2005

  • Overview
  • Licence
  • Working with File Tabs
  • File Tabs Context Menu
  • Project Context Menu
  • Working with Text
  • Working with Color
  • The Statusbar Explained
  • Macro
  • Macro Manager
  • Macro commands
  • Keyboard shortcuts
  • Mouse control
  • File type plug-ins
  • Insert Text Into Lines
  • Special Conversion
  • Selection Type
  • Format Menu
  • Case change
  • Block format
  • Tools Menu
  • Script Menu
  • Settings Menu
  • Program - look
  • Program - behaviour
  • Compiler examples
  • Spell check options

January 2004

  • Context Files
  • File Menu
  • Open Special
  • Edit Menu
  • Date Dialog
  • Search Menu
  • Search and Replace
  • Search and Replace in Files
  • Google Search
  • Regular Expressions
  • View Menu
  • Toolbars
  • Main Toolbar
  • Look Toolbar
  • HTML Toolbar
  • Internet

December 2003

  • Starting PSPad
  • Working With Projects
  • Hex editor
  • Code page conversion
  • Template Files
  • Clips
  • Interactive Clips
  • Save desktop
  • External applications


FAQ

The Questions

  1. Interface
    1. My dockable window (ASCII, Clipboard, ...) has moved from the right. How do I put it back?
    2. Why would I want a dockable window to float?
    3. How do I find out what a particular hotkey does?
    4. How to set file Tabs across the bottom?
    5. Which icon is for gray checkbox in 3-way checkbox? [0] or [X]?
    6. Under Program Settings > Files and Dirs > Save work, there are 3 settings. What is the difference?
    7. Show Color is missing under menu HTML, like Help file says. Put in Color Dialog?
    8. Can user set size of Project Tree? Seems too wide for me.
    9. How do I maximize all windows after I've looked at them in restore mode?
    10. How do I eleminate the grey thin line crossing the text area?
    11. How do I change just one of the button icons?
  2. Editor
    1. What is Swap Line?
    2. What is Paste as HTML?
    3. How can I delete empty lines?
    4. How can I join lines?
    5. Add Cr+Lf: Each time file is saved?
    6. Could anyone explain me Reformat, and what are the differences between blank line and short line?
    7. Undo all the way back to first edit of active file will NOT reset marker of File Modified. So it will still prompt you to save on exit.
    8. If you undo all the way back to the file where it was not modified, shouldn't the editor not prompt you to save? Or should'nt the little red corner on the tap disapear too?
    9. Line wrapping behaves weird. It often misplaces the cursor after inserting or deleting text in a line.
    10. Weird undo behaviour and weird paste behavior.
    11. I can not use the Word Wrap function, neither in the Toolbar nor via menu.
    12. I am sick of copying a file path or web address to the clipboard just to open it. Is there a way to open the selected text?
    13. What is the difference between Tab width and Indent width?
  3. Search
    1. How to find text?
    2. What are Regular Expressions (RegExp)?
    3. Find/Replace vs. Find/Replace in Files? What's the difference?
    4. Search and replace didn't work as expected.
    5. Can i use RegExp for search/replace in multiple files or for multi-line search/replace?
  4. Tools
    1. What is Clip Board Monitor?
    2. What is Code Explorer? Mine seems broken.
    3. How to set external programs?
    4. How to: "Open Active File in External Program"? The icon Button should have a pull down triangle to the right of icon.
    5. Internal web browser with Apache web server support ??? What does that mean?
    6. Can I run HTML or Javascript through other browser like Mozilla Firefox beside IE to see the script result?
  5. Highlighter/Clips
    1. Is there any way to setup more then 5 user highlighters?
    2. Multihighlighter for Embedded Clips?
    3. What are "variables" that get highlighted? The variables that I create in Perl are NOT highlighted. But a few built-in vars are: $_ Oh, I see. "Identifies" are the variables I create.
    4. How to tear out a highlighter I have created?
    5. How can I change Filter Mask in Highlighter Settings / Filter?
    6. Is there a Glossary or Clips Library?
    7. Is AutoComplete (Ctrl+J or Tools / AutoComplete) like a glossary?
    8. What is "Repeat" in the HTML dialog box? (html Crtl+Space) Not in Help.
    9. Clips are hard. Can someone create a template to generate new Clips?
    10. What are User Variables?
  6. FTP
    1. Can I upload binary files like .ZIP or .CHM help files in PSPad's FTP client?
    2. In FTP client context menu of an active connection, what's the difference between: "Open as Text" and "Direct Edit in PSPad"?
    3. FTP Files are stored in temporary folder (structure): TEMP\PSPad\server\ftp_path\file (Is that under PSPad directory?)
    4. Why after save a file using ftp that has a uppercase name, it is converted to lowercase?
  7. General
    1. I want to create some tutorials. What do you need?
    2. I hate spam, and I do NOT want my email address published.
    3. Known BUG: Sometimes on opening program I get a Page Fault Error: in module USER.EXE at 001e:00001df6. Can happen several times in a row. Not sure how to reproduce.
    4. Where do I get a help file for a particular language?
    5. Maximum Line Length?
    6. menu File / Projects / Open Project seems the same as File / Projects / Project from Directory ... Are they the same?
    7. I miss a feature from an older build...
  8. Just don't know how to...
    1. Get column select or Alt+Drag working.
    2. Move cursor past last character.
    3. Set highlighter file size limit.

The Answers

  1. Interface
    1. My dockable window (ASCII, Clipboard, ...) has moved from the right. How do I put it back?

      Grab the title bar of the mobile window. Drag it over the right scroll bar or right border and drop it when you see it snap in place. Any of the windows on the right are "dockable", meaning you can drag them free to float anywhere on the screen. Or you can dock them to the left or right. TIP: You can drag your FTP or Links window to the right and then even close them, but any time you restart PSPad, they will be returned to the Project Tree on the left.

      Back to Questions
    2. Why would I want a dockable window to float?

      You might want to keep up, say the ASCII table, but not take away space from the editor window. So you float it. Or switch sides. As long as your Project Tree is showing, you might want your Clipboard Monitor docked in there, rather than taking up more room on the right.

      Back to Questions
    3. How do I find out what a particular hotkey does?

      Examine .\PSPad\KeyMap.INI to look up a particular hotkey. Or look through Program Settings / Key Mapping.

      Back to Questions
    4. How to set file Tabs across the bottom?

      Program settings / Program / [ ] File panel on top (un-check)

      Back to Questions
    5. Which icon is for gray checkbox in 3-way checkbox? [0] or [X]?

      [X] is black check. [0] is gray check. [ ] is unchecked. I forgot about non-WinXP users :-(. Maybe if we change color of [0] in Help to gray it will help user.

      Back to Questions
    6. Under Program Settings > Files and Dirs > Save work, there are 3 settings. What is the difference?

      Two modes. Restore all files (gray check) restores all open files from last PSPad state. Restores only files opened in PSPad: You edit some files in PSPad. Exit PSPad, run it again, files are back. Now exit PSPad, open some file from TotalCommander in PSPad, exit PSPad. Than run PSPad again. Back are files you previously edited, but not files you opened from Total Commander or with double click in Windows Explorer. See Save desktop.

      Back to Questions
    7. Show Color is missing under menu HTML, like Help file says. Put in Color Dialog?

      I moved it under Tools. "Show color" works not only for HTML. And name was changed to "Color Selector" (or possibly Color Translator)

      Back to Questions
    8. Can user set size of Project Tree? Seems too wide for me.

      Resize it with mouse. Simply drag right edge of project. Width is remembered.

      Back to Questions
    9. How do I maximize all windows after I've looked at them in restore mode?

      Maximize any of them and they all maximize.

      Back to Questions
    10. How do I eleminate the grey thin line crossing the text area?

      Settings > Program Settings > Editor - Settings > set "Position of right edge" to 0

      Back to Questions
    11. How do I change just one of the button icons?

      Additional tool button icon sets are stored in the Skin (.\PSPad\Skin) folder. Using you favorite graphics editor, make whatever changes you wish and be sure to save your changes. Open PSPad and select the updated icon set from Program Settings > Program - Look > Tool button icon set. Click OK.

      If you would like to edit the default skin but cannot find it in the Skin folder you may need to extract it using a resource editor.

      Back to Questions
  2. Editor
    1. What is Swap Line?

      It will swap lines with the line below it. Now called, "Swap with Line Below" Right click on a line, select Special / Swap Lines.

      Back to Questions
    2. What is Paste as HTML?

      It works with M$ product. E.g. if you copy to clipboard from IE, you can paste it into PSPad as HTML source, not only as plain text. You can use it as paste from Word too, if you don't mind Word's HTML jungle (dirty HTML).

      Back to Questions
    3. How can I delete empty lines?

      Select Edit > Lines manipulation > Remove Blank Lines | Remove Redundant Blank Lines

      Back to Questions
    4. How can I join lines?

      Select Edit > Lines manipulation > Join Lines

      Back to Questions
    5. Add Cr+Lf: Each time file is saved?

      No. After file is saved, one blank line is added to the end, unless one already exists. Blank lines don't keep adding up.

      Back to Questions
    6. Could anyone explain me Reformat, and what are the differences between blank line and short line?

      Reformat delete line breaks and make new format of paragraph with right edge.

      paragraph=blank line: Its mean that paragraph end is blank line. All to blank line is taken as one paragraph.

      paragraph=short line: Paragraph end is sort line (about half of right edge).

      Back to Questions
    7. Undo all the way back to first edit of active file will NOT reset marker of File Modified. So it will still prompt you to save on exit.

      And now imagine case, when you open file, make some changes, save it. Modified status is reset. Then you undo all your changes, even those before the save. PSPad makes it possible do UNDO even after file Save. (AFNAB)

      Back to Questions
    8. If you undo all the way back to the file where it was not modified, shouldn't the editor not prompt you to save? Or should'nt the little red corner on the tap disapear too?

      PSPad base editor component hasn't this support. When new version of this component will be available, I try to add this functionality.

      Back to Questions
    9. Line wrapping behaves weird. It often misplaces the cursor after inserting or deleting text in a line.

      Word wrap has a bug, it is a bug in the component SynEdit and the people now working on SynEdit to resolve this issue.

      Back to Questions
    10. Weird undo behaviour and weird paste behavior.

      Don't use Word Wrap function when editing is required

      Back to Questions
    11. I can not use the Word Wrap function, neither in the Toolbar nor via menu.

      If you have enabled Trim Trailing spaces, Word Wrap is disabled.

      Back to Questions
    12. I am sick of copying a file path or web address to the clipboard just to open it. Is there a way to open the selected text?

      Selected the text (file path, url, email) > right-click on select text > Open file appointed by selection or Click File menu > Open Special > Open file appointed by selection.

      Back to Questions
    13. What is the difference between Tab width and Indent width?

      Tab Width means number of spaces when you press TAB. Where Indent Width means number of spaces when you use Indent block.

      Back to Questions
  3. Search
    1. How to find text?

      There are several ways to find text:

      1. Ctrl+F or Select > Find
      2. F3 to find Next or Shift+F3 to find Previous
      3. Shift+Ctrl+Up or Shift+Ctrl+Down to quickly find current word or selected text
      4. Ctrl+E to do Incremental Search (see The Statusbar Explained)

      Back to Questions
    2. What are Regular Expressions (RegExp)?

      Very powerful addition to the Find command. I used: Caption=[A-Z]\w+ to find all lines with Caption followed by = and a Capitol Letter, followed by any letters and a space. Then F3 gave me the next. Learn them! (See Regular Expressions)

      Back to Questions
    3. Find/Replace vs. Find/Replace in Files? What's the difference?

      Use Ctrl+H to Find/Replace text in active file. Alt-F is the key I assigned to Find/Replace in Files. Be careful. Use the List button to see proposed changes. Find/Replace in Files is very powerful, and thereby dangerous. Can change all occurrences in all files in a directory.

      Back to Questions
    4. Search and replace didn't work as expected.

      Replace from the end of file, being sure to set direction appropriately to backwards. Its base component limitation.

      RegExp for multi-line search/replace may be performed with a script.

      Back to Questions
    5. Can i use RegExp for search/replace in multiple files or for multi-line search/replace?

      The base component SynEdit doesn't support this yet.

      RegExp for multi-line search/replace may be performed with a script.

      Back to Questions
  4. Tools
    1. What is Clip Board Monitor?

      After you start it, a window will show up to the right. This window will capture all of your Copy (to clipboard) commands, such as Ctrl+C, Ctrl+X and menu Edit / Copy. Then if you want to Paste one of them, you just double click on it in the Clip Board Monitor. Once open, you can: Start/Stop monitoring, Delete all items from list, Copy text to clipboard, Paste text to your document, or delete an item from the list.

      Back to Questions
    2. What is Code Explorer? Mine seems broken.

      Code explorer only works with some environments at this time. Try it with your English.INI files. You will see headings followed by items for that heading. You may need to click the plus to expand. This was buggy, not allowing you to open it, close it and open it again. Being fixed in next version.

      Back to Questions
    3. How to set external programs?

      Tools / Highlighter Settings / External Applications. These can be set independently for each language in the list on the left.

      Back to Questions
    4. How to: "Open Active File in External Program"? The icon Button should have a pull down triangle to the right of icon.

      Every highlighter has space to set 5 external programs and one compiler. You can run it With hotkeys (F9 ...), from menu File / Open Special / Open With or from menu File / Compile. You can also show Control Toolbar (Menu View / Toolbars) or Right Click on Toolbar you have buttons on toolbar to run it.

      Back to Questions
    5. Internal web browser with Apache web server support ??? What does that mean?

      If you have Apache installed, set correct HT Docs directory in Program Setting / Internet. If you use Shift+Ctrl+F10 instead F10, internal browser will browse from your Apache server, not from local file. You can see PHP results, CGI scripts run, ...

      Back to Questions
    6. Can I run HTML or Javascript through other browser like Mozilla Firefox beside IE to see the script result?

      Download and Install Mozilla ActiveX control. Then you will be able to use Mozilla as the internal HTML preview (first button on toolbar switches between Mozilla and IE).

      You can assign any external browsers in Settings / Highlighter settings / HTML / External application.

      Back to Questions
  5. Highlighter/Clips
    1. Is there any way to setup more then 5 user highlighters?

      No, currently on the todo list.

      Back to Questions
    2. Multihighlighter for Embedded Clips?

      You can get different Clips (highlighting) when you are inside the JavaScript part of an HTML file. That is useful when you have, say, PHP or JavaScript embedded inside your HTML. Try it (Ctrl+Space) in HTML with PHP or JScript in Multihighlighter. You get a template for the specific part of code you are in. In PHP part, you get PHP template, in HTML part, you get HTML Clips. Clips can also be interactive (like most of HTML Clips are.)

      Back to Questions
    3. What are "variables" that get highlighted? The variables that I create in Perl are NOT highlighted. But a few built-in vars are: $_ Oh, I see. "Identifies" are the variables I create.

      Jan: Already corrected (still in my comp). Some user from forum told me. In new version all variables in Perl will be highlighted.

      Back to Questions
    4. How to tear out a highlighter I have created?

      If you mean user highlighter, go to Tools / Highlighter Settings / Filters. Click on your highlighter (one of the bold) and in list, click on blank line on top.

      Back to Questions
    5. How can I change Filter Mask in Highlighter Settings / Filter?

      You can't modify the Filter Mask in Highlighter Settings / Filter for the User highlighters (bold font). Other highlighters are editable there. User highlighter Filter Mask you can edit in Tools / User highlighter

      If you are looking at a User Highlighter (bold font), then you must edit the File Filter mask in: menu Tools / User Highlighter / File types, comma delimited. However, all the others can be edited in Tools / Highlighter Settings. (Why? Seems unnecessarily difficult)

      Back to Questions
    6. Is there a Glossary or Clips Library?

      First check out AutoCorrect: menu Tools / Spell Settings ... and enter some values for words you want replaced when you hit a space after you write them. For example, I put in my initials "sel" and my name "Steve LeBlanc". So anytime I type sel, followed by a space, it gets changed to "Steve LeBlanc". It was designed for fixing common typos, but works great for abbreviated entries. For more complex items, use Clips and User Clips. Follow the first few letters of the command (or tag) with Ctrl+Space. Or follow the full name with Shift+Space. Clips are predefined for the major languages, like C, HTML, PHP and Perl.

      Back to Questions
    7. Is AutoComplete (Ctrl+J or Tools / AutoComplete) like a glossary?

      No, it is just a fast way to enter the rest of any single word you have started to write, a word which is already in the current document. It saves me little time. But I'm a pretty good typist. Some people love it.

      Back to Questions
    8. What is "Repeat" in the HTML dialog box? (html Crtl+Space) Not in Help.

      It will repeat pasting template item without leaving it. e.g. when you need to add more of the same item in the list.

      Back to Questions
    9. Clips are hard. Can someone create a template to generate new Clips?

      Sure, I think. It would have to go in the ???.DEF file.

      Back to Questions
    10. What are User Variables?

      User variables are used in Clips (See Context Files) They are always surrounded by %percentsigns% and you may use predefined ones or add/edit/delete your own using User variables dialog box (See Menu - Settings).

      Clip variables are listed at top of context file. May are premade: HTML, Perl, PHP, INI, XML, JavaScript. If a For example, you define in User variables %PI%=3.141592654. In clip list you can write:
      [pi | Insert number value pi]
      %MyTestVariable%;

      To insert the value of PI into your document, press Ctrl+Space and select pi. You must add or modify the clip in the language.def you use with your language/filetype.
      i.e. PSPad\Context\HTML.def for html files.

      You are not required to use them, you could wrote 3,1415... directly in the clip unter "[pi | Insert number value pi]", but the other way you could modify the value easly using User variables dialog box. You can also use the build-in variables in clips. i.e. %FileName%, %Company% or %Date% and so on.

      Back to Questions
  6. FTP
    1. Can I upload binary files like .ZIP or .CHM help files in PSPad's FTP client?

      No! PSPad only handles text files. To upload binary files, you will need a full functioning FTP client, such as ws_FTP LE or FileZilla. Even if you Open in Hex Editor, the "Save To FTP" will be grayed out. There is no Binary transfer mode available in this FTP client.

      Back to Questions
    2. In FTP client context menu of an active connection, what's the difference between: "Open as Text" and "Direct Edit in PSPad"?

      Open as Text creates a local copy of the file in the Windows Temp folder. This makes for fast edits and saves. You may then Right Click the tab and select Save To FTP. Direct Edit, on the other hand, never saves a local copy. Any time you hit Save, it saves to the FTP host. Direct Edit is better for quick edits and will also prevent you from forgetting to save your changes to the FTP site. When you double click a file, you get a Direct Edit.

      Back to Questions
    3. FTP Files are stored in temporary folder (structure): TEMP\PSPad\server\ftp_path\file (Is that under PSPad directory?)

      No. This is really the Windows Temporary directory. In Temp is created PSPad subdirectory and files are stored in this subdirectory. But I found a bug. The path missed part of FTP_Path, so all files was stored into TEMP\PSPad\server\file.

      Back to Questions
    4. Why after save a file using ftp that has a uppercase name, it is converted to lowercase?

      You may disable the feature in FTP connection properties dialog. [ ]Change File Name to Lower Case

      Back to Questions
  7. General
    1. I want to create some tutorials. What do you need?

      All I need is content, preferably in HTML. I want modify English pages like the Czech - right menu. Then we can publish your tutorial on PSPad web pages.

      Back to Questions
    2. I hate spam, and I do NOT want my email address published.

      I don't publish any address without owner consent.

      Back to Questions
    3. Known BUG: Sometimes on opening program I get a Page Fault Error: in module USER.EXE at 001e:00001df6. Can happen several times in a row. Not sure how to reproduce.

      I can tell you how to do it. Run PSPad, minimize (with Esc) it and run it again direct with PSPad link (e.g. on Desktop). Only happens on W9x and only if you Run PSPad without file as parameter. I tried everything, but I don't know reason. All these bugs are my nightmare.

      Back to Questions
    4. Where do I get a help file for a particular language?

      You may create or find a .HLP or .CHM file for your particular computer language on the Internet. You can then configure it in Tools / Highlighter Settings / Filters tab / Help file:. But the template definition files do a pretty good job too, if you only need a syntax reminder. In an HTML document, type the word BODY and before you hit space, press Ctrl+Space. Just remember, you don't have to fill out all the fields. (Make tutorial for this???)

      Back to Questions
    5. Maximum Line Length?

      Now is used only if some special cases. Now PSPad auto-sizes maximum line length. But before this number used to limit maximum line length.

      Back to Questions
    6. menu File / Projects / Open Project seems the same as File / Projects / Project from Directory ... Are they the same?

      No! Project from Directory creates new project from selected directory. Being renamed to: "Create Project from Directory...""

      Back to Questions
    7. I miss a feature from an older build...

      Since PSPad 4.3.1 beta (1989), Date: 07-20-2004 some features are only available by selecting Setting > Program Settings... > Click Direct Edit > Select [Special settings] section.

      Back to Questions
  8. Just don't know how to...
    1. Get column select or Alt+Drag working.

      Real Tabs and word wrap force PSPad to guess what text you realy want to select. Do not use column select with real tabs (See Editor - settings). Do not use column select with word wrap on (See View Menu). In addition, be sure that Alt Sets Column Mode is enabled (See Editor - behaviour). It may also help to enable Scroll Past EOL.

      Back to Questions
    2. Move cursor past last character.

      Enable Scroll past EOL option in Program settings > Editor - behaviour.

      Back to Questions
    3. Set highlighter file size limit.

      Edit HLOnUpToSize value. (See Special settings)

      Back to Questions


Credits

Clips

  • 8051 - Jaromir Rezek
  • ActionScript - Karel Pavelka
  • Ansys - Novotny L. W.
  • ASX - Karel Pavelka
  • AutoHotkey - beardboy, GoGoGadgetScott
  • AutoIt - Petr Franta
  • C++ - Karel Pavelka
  • CAL - Martin Parizek
  • CLARION - Nelson A. H. de Carvalho
  • Cobol - Fiala
  • CSS - Karel Pavelka
  • ECSL - Marko Oette
  • Extensible 3D - Bart
  • HTML - Karel Pavelka
  • IEC11131 - Petr Vetesnik
  • LonWorks NeuronC - Senko
  • MS JScript - Ales Daniel
  • MS-Dos - David Tardon (pøeklad)
  • Object Pascal - Borand
  • Object Pascal - Borland (typo)
  • ObjectScript - Angel Ezquerra
  • Oracle - Kubo Zdeno, Milos Beno
  • OtherCad - Ales Cerny, Ivan a Petr Slepickovi
  • Perl - Karel Pavelka
  • PHP - Krystof Slaby, Karel Pavelka, Frantisek Blaha,
  • Python - Myles
  • QBasic - Kamil Havlíèek
  • R - Nick Drew
  • RSL - Aldar
  • RSS - Karel Pavelka
  • SMARTY - Mazel (Kochi)
  • SQLite command line interface - Arpad Horvath
  • TeX - Tomas Vacek
  • VB.NET - DonQuichote
  • WML - Karel Pavelka
  • XHTML - Karel Pavelka
  • XML - Karel Pavelka

Corrections

  • "Czech" English in localization file and help - Steven LeBlanc, Stuart Hemming

Dictionaries

  • German - Dalibor Pernica, MrSpok
  • Russian - Kokoteev Dmitry (NarKotik)

Documentation

  • 4.5.x Update - Scott Greenberg
  • Working with Text - Jason Zhang

Localization

  • Brazilian Portuguese - Goncin
  • Catalana - Antoni Clavell
  • Chinese - SiC
  • Chinese Big5 - Nelson
  • Croatian - Mladen Mintakoviæ
  • Deutsh - Stefan Schuck, Helfer, Karel Jakl
  • French - Jean-Christophe Meylan
  • Galician - Xabier Cancela
  • German - Karel Jakl
  • Greek - Stefanos Togoulidis
  • Hungarian - Leonard Nimoy
  • Indonesian - Adrian JawZ
  • Italian - Angelo Contardi
  • Japanese - Suguru Yamamoto
  • Korean - Shin Ryu
  • Kurdish - PCKurd group
  • Nederlands - Petyr, Amsterdam
  • Norsk - Stein-Aksel Basma
  • Polish - Piotr Murawski, Rafal Lampe
  • Portuguese - João Alves
  • Romanian - Antal Eugen
  • Russian - Angie NM
  • Slovak I - Jan Skokánek
  • Slovak II - Jozef Kaprál
  • Spanish - Hernan Fernandez
  • Swedish - Hans Ericson
  • Turkish - Cemal Dogan
  • Ukrainian - Taras Kapuszczak

Scripting, Plug-ins

  • Active script (Delphi examples, help, support) - Uwe Boeckers

Spell check dictionaries

  • Catalan - Antoni Clavell
  • Czech - Michal Kolesa, Lubos Nemec, Zdenek Bulin, Radek Tlapak, Tomas Bat
  • English - Dalibor Pernica
  • German - Dalibor Pernica
  • Slovak - Dalibor Pernica
  • Tlapak - Tomas Bat

User highlighters

  • 8051 - Jaromir Rezek
  • ABAP - Pavel Jaroa
  • ADA - Stéphane (Bush Man)
  • Ansys - Novotny L. W.
  • Apache - Paul Mandalka
  • ArchiCad - Lubos Cipra
  • Asm51 - Martin Zeman
  • ASN - Angelo Contardi
  • ASP - Jiri Hudec
  • Assembler x51 - DuckDaffy
  • AutoHotkey - beardboy, GoGoGadgetScott
  • C6000 - Stefanos Togoulidis
  • Clipper - Kamil Vaclav
  • Common Lisp - Durandal
  • Counter Strike - Phil Pendlebury
  • DataFlex - Federico Alcantara
  • DocBook - zdroj
  • Gui4Cli - Angelo Contardi
  • Hakell - Paul Mandalka
  • Harbour - Giuseppe Pergolesi
  • Haskel98 - Václav Veselý
  • Haskell - Paul Mandalka
  • IEC11131 - Petr Vetesnik
  • LotusScript - Mikhail Tarasevich
  • LS-DYNA - Novotny L. W.
  • LUA - Pawel Mrochen
  • MASM32 - Klim
  • MicroChip PIC assembler - F.Bina
  • MicroChip PIC assembler - F.Bína
  • MS JScript - Aleš Daniel
  • NullSoft Install system - Paul Mandalka
  • Progress - Ivo Liska
  • QBasic - Kamil Havlícek
  • R - Nick Drew
  • Rexx - Alojz Kipila
  • RSL - Aldar
  • Ruby in HTML - Tim Curzon
  • RWX (RenderWare Script) - Lode
  • SciLab - Wensong ZHOU
  • Sinumeric840D - Mariusz
  • SMARTY - Pavel Kochman
  • SQLLite - Árpád Horváth
  • Tcl/Tk - Ludek Melichar
  • TnsNames - Aleš Votocek
  • TopoCAD - Christian Panel
  • VB.NET - DonQuichote
  • Verilog - Sergey Klepickov
  • Visual LISP - GoGoGadgetScott
  • WebFocus - Gonzalo
  • WinBatch - Andre Pinheiro
  • WML - Karel Pavelka
  • X3D - Eckhard M. Jäger
  • Z80 - Jiri Jaros

I want to thank all those people who participated in PSPad development - testing, bug reports, dotation, new functionality suggestions...


Licence

PSPad

Copyright © 2002-2006 Jan Fiala

This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages arising from the use of this software.

Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions:

  1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required.
  2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
  3. This notice may not be removed or altered from any source distribution.

GNU Free Documentation License

Version 1.2, November 2002

Copyright (C) 2000,2001,2002  Free Software Foundation, Inc.
51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.

0. PREAMBLE

The purpose of this License is to make a manual, textbook, or other functional and useful document "free" in the sense of freedom: to assure everyone the effective freedom to copy and redistribute it, with or without modifying it, either commercially or noncommercially. Secondarily, this License preserves for the author and publisher a way to get credit for their work, while not being considered responsible for modifications made by others.

This License is a kind of "copyleft", which means that derivative works of the document must themselves be free in the same sense. It complements the GNU General Public License, which is a copyleft license designed for free software.

We have designed this License in order to use it for manuals for free software, because free software needs free documentation: a free program should come with manuals providing the same freedoms that the software does. But this License is not limited to software manuals; it can be used for any textual work, regardless of subject matter or whether it is published as a printed book. We recommend this License principally for works whose purpose is instruction or reference.

1. APPLICABILITY AND DEFINITIONS

This License applies to any manual or other work, in any medium, that contains a notice placed by the copyright holder saying it can be distributed under the terms of this License. Such a notice grants a world-wide, royalty-free license, unlimited in duration, to use that work under the conditions stated herein. The "Document", below, refers to any such manual or work. Any member of the public is a licensee, and is addressed as "you". You accept the license if you copy, modify or distribute the work in a way requiring permission under copyright law.

A "Modified Version" of the Document means any work containing the Document or a portion of it, either copied verbatim, or with modifications and/or translated into another language.

A "Secondary Section" is a named appendix or a front-matter section of the Document that deals exclusively with the relationship of the publishers or authors of the Document to the Document's overall subject (or to related matters) and contains nothing that could fall directly within that overall subject. (Thus, if the Document is in part a textbook of mathematics, a Secondary Section may not explain any mathematics.) The relationship could be a matter of historical connection with the subject or with related matters, or of legal, commercial, philosophical, ethical or political position regarding them.

The "Invariant Sections" are certain Secondary Sections whose titles are designated, as being those of Invariant Sections, in the notice that says that the Document is released under this License. If a section does not fit the above definition of Secondary then it is not allowed to be designated as Invariant. The Document may contain zero Invariant Sections. If the Document does not identify any Invariant Sections then there are none.

The "Cover Texts" are certain short passages of text that are listed, as Front-Cover Texts or Back-Cover Texts, in the notice that says that the Document is released under this License. A Front-Cover Text may be at most 5 words, and a Back-Cover Text may be at most 25 words.

A "Transparent" copy of the Document means a machine-readable copy, represented in a format whose specification is available to the general public, that is suitable for revising the document straightforwardly with generic text editors or (for images composed of pixels) generic paint programs or (for drawings) some widely available drawing editor, and that is suitable for input to text formatters or for automatic translation to a variety of formats suitable for input to text formatters. A copy made in an otherwise Transparent file format whose markup, or absence of markup, has been arranged to thwart or discourage subsequent modification by readers is not Transparent. An image format is not Transparent if used for any substantial amount of text. A copy that is not "Transparent" is called "Opaque".

Examples of suitable formats for Transparent copies include plain ASCII without markup, Texinfo input format, LaTeX input format, SGML or XML using a publicly available DTD, and standard-conforming simple HTML, PostScript or PDF designed for human modification. Examples of transparent image formats include PNG, XCF and JPG. Opaque formats include proprietary formats that can be read and edited only by proprietary word processors, SGML or XML for which the DTD and/or processing tools are not generally available, and the machine-generated HTML, PostScript or PDF produced by some word processors for output purposes only.

The "Title Page" means, for a printed book, the title page itself, plus such following pages as are needed to hold, legibly, the material this License requires to appear in the title page. For works in formats which do not have any title page as such, "Title Page" means the text near the most prominent appearance of the work's title, preceding the beginning of the body of the text.

A section "Entitled XYZ" means a named subunit of the Document whose title either is precisely XYZ or contains XYZ in parentheses following text that translates XYZ in another language. (Here XYZ stands for a specific section name mentioned below, such as "Acknowledgements", "Dedications", "Endorsements", or "History".) To "Preserve the Title" of such a section when you modify the Document means that it remains a section "Entitled XYZ" according to this definition.

The Document may include Warranty Disclaimers next to the notice which states that this License applies to the Document. These Warranty Disclaimers are considered to be included by reference in this License, but only as regards disclaiming warranties: any other implication that these Warranty Disclaimers may have is void and has no effect on the meaning of this License.

2. VERBATIM COPYING

You may copy and distribute the Document in any medium, either commercially or noncommercially, provided that this License, the copyright notices, and the license notice saying this License applies to the Document are reproduced in all copies, and that you add no other conditions whatsoever to those of this License. You may not use technical measures to obstruct or control the reading or further copying of the copies you make or distribute. However, you may accept compensation in exchange for copies. If you distribute a large enough number of copies you must also follow the conditions in section 3.

You may also lend copies, under the same conditions stated above, and you may publicly display copies.

3. COPYING IN QUANTITY

If you publish printed copies (or copies in media that commonly have printed covers) of the Document, numbering more than 100, and the Document's license notice requires Cover Texts, you must enclose the copies in covers that carry, clearly and legibly, all these Cover Texts: Front-Cover Texts on the front cover, and Back-Cover Texts on the back cover. Both covers must also clearly and legibly identify you as the publisher of these copies. The front cover must present the full title with all words of the title equally prominent and visible. You may add other material on the covers in addition. Copying with changes limited to the covers, as long as they preserve the title of the Document and satisfy these conditions, can be treated as verbatim copying in other respects.

If the required texts for either cover are too voluminous to fit legibly, you should put the first ones listed (as many as fit reasonably) on the actual cover, and continue the rest onto adjacent pages.

If you publish or distribute Opaque copies of the Document numbering more than 100, you must either include a machine-readable Transparent copy along with each Opaque copy, or state in or with each Opaque copy a computer-network location from which the general network-using public has access to download using public-standard network protocols a complete Transparent copy of the Document, free of added material. If you use the latter option, you must take reasonably prudent steps, when you begin distribution of Opaque copies in quantity, to ensure that this Transparent copy will remain thus accessible at the stated location until at least one year after the last time you distribute an Opaque copy (directly or through your agents or retailers) of that edition to the public.

It is requested, but not required, that you contact the authors of the Document well before redistributing any large number of copies, to give them a chance to provide you with an updated version of the Document.

4. MODIFICATIONS

You may copy and distribute a Modified Version of the Document under the conditions of sections 2 and 3 above, provided that you release the Modified Version under precisely this License, with the Modified Version filling the role of the Document, thus licensing distribution and modification of the Modified Version to whoever possesses a copy of it. In addition, you must do these things in the Modified Version:

  • A. Use in the Title Page (and on the covers, if any) a title distinct from that of the Document, and from those of previous versions (which should, if there were any, be listed in the History section of the Document). You may use the same title as a previous version if the original publisher of that version gives permission.
  • B. List on the Title Page, as authors, one or more persons or entities responsible for authorship of the modifications in the Modified Version, together with at least five of the principal authors of the Document (all of its principal authors, if it has fewer than five), unless they release you from this requirement.
  • C. State on the Title page the name of the publisher of the Modified Version, as the publisher.
  • D. Preserve all the copyright notices of the Document.
  • E. Add an appropriate copyright notice for your modifications adjacent to the other copyright notices.
  • F. Include, immediately after the copyright notices, a license notice giving the public permission to use the Modified Version under the terms of this License, in the form shown in the Addendum below.
  • G. Preserve in that license notice the full lists of Invariant Sections and required Cover Texts given in the Document's license notice.
  • H. Include an unaltered copy of this License.
  • I. Preserve the section Entitled "History", Preserve its Title, and add to it an item stating at least the title, year, new authors, and publisher of the Modified Version as given on the Title Page. If there is no section Entitled "History" in the Document, create one stating the title, year, authors, and publisher of the Document as given on its Title Page, then add an item describing the Modified Version as stated in the previous sentence.
  • J. Preserve the network location, if any, given in the Document for public access to a Transparent copy of the Document, and likewise the network locations given in the Document for previous versions it was based on. These may be placed in the "History" section. You may omit a network location for a work that was published at least four years before the Document itself, or if the original publisher of the version it refers to gives permission.
  • K. For any section Entitled "Acknowledgements" or "Dedications", Preserve the Title of the section, and preserve in the section all the substance and tone of each of the contributor acknowledgements and/or dedications given therein.
  • L. Preserve all the Invariant Sections of the Document, unaltered in their text and in their titles. Section numbers or the equivalent are not considered part of the section titles.
  • M. Delete any section Entitled "Endorsements". Such a section may not be included in the Modified Version.
  • N. Do not retitle any existing section to be Entitled "Endorsements" or to conflict in title with any Invariant Section.
  • O. Preserve any Warranty Disclaimers.

If the Modified Version includes new front-matter sections or appendices that qualify as Secondary Sections and contain no material copied from the Document, you may at your option designate some or all of these sections as invariant. To do this, add their titles to the list of Invariant Sections in the Modified Version's license notice. These titles must be distinct from any other section titles.

You may add a section Entitled "Endorsements", provided it contains nothing but endorsements of your Modified Version by various parties--for example, statements of peer review or that the text has been approved by an organization as the authoritative definition of a standard.

You may add a passage of up to five words as a Front-Cover Text, and a passage of up to 25 words as a Back-Cover Text, to the end of the list of Cover Texts in the Modified Version. Only one passage of Front-Cover Text and one of Back-Cover Text may be added by (or through arrangements made by) any one entity. If the Document already includes a cover text for the same cover, previously added by you or by arrangement made by the same entity you are acting on behalf of, you may not add another; but you may replace the old one, on explicit permission from the previous publisher that added the old one.

The author(s) and publisher(s) of the Document do not by this License give permission to use their names for publicity for or to assert or imply endorsement of any Modified Version.

5. COMBINING DOCUMENTS

You may combine the Document with other documents released under this License, under the terms defined in section 4 above for modified versions, provided that you include in the combination all of the Invariant Sections of all of the original documents, unmodified, and list them all as Invariant Sections of your combined work in its license notice, and that you preserve all their Warranty Disclaimers.

The combined work need only contain one copy of this License, and multiple identical Invariant Sections may be replaced with a single copy. If there are multiple Invariant Sections with the same name but different contents, make the title of each such section unique by adding at the end of it, in parentheses, the name of the original author or publisher of that section if known, or else a unique number. Make the same adjustment to the section titles in the list of Invariant Sections in the license notice of the combined work.

In the combination, you must combine any sections Entitled "History" in the various original documents, forming one section Entitled "History"; likewise combine any sections Entitled "Acknowledgements", and any sections Entitled "Dedications". You must delete all sections Entitled "Endorsements."

6. COLLECTIONS OF DOCUMENTS

You may make a collection consisting of the Document and other documents released under this License, and replace the individual copies of this License in the various documents with a single copy that is included in the collection, provided that you follow the rules of this License for verbatim copying of each of the documents in all other respects.

You may extract a single document from such a collection, and distribute it individually under this License, provided you insert a copy of this License into the extracted document, and follow this License in all other respects regarding verbatim copying of that document.

7. AGGREGATION WITH INDEPENDENT WORKS

A compilation of the Document or its derivatives with other separate and independent documents or works, in or on a volume of a storage or distribution medium, is called an "aggregate" if the copyright resulting from the compilation is not used to limit the legal rights of the compilation's users beyond what the individual works permit. When the Document is included in an aggregate, this License does not apply to the other works in the aggregate which are not themselves derivative works of the Document.

If the Cover Text requirement of section 3 is applicable to these copies of the Document, then if the Document is less than one half of the entire aggregate, the Document's Cover Texts may be placed on covers that bracket the Document within the aggregate, or the electronic equivalent of covers if the Document is in electronic form. Otherwise they must appear on printed covers that bracket the whole aggregate.

8. TRANSLATION

Translation is considered a kind of modification, so you may distribute translations of the Document under the terms of section 4. Replacing Invariant Sections with translations requires special permission from their copyright holders, but you may include translations of some or all Invariant Sections in addition to the original versions of these Invariant Sections. You may include a translation of this License, and all the license notices in the Document, and any Warranty Disclaimers, provided that you also include the original English version of this License and the original versions of those notices and disclaimers. In case of a disagreement between the translation and the original version of this License or a notice or disclaimer, the original version will prevail.

If a section in the Document is Entitled "Acknowledgements", "Dedications", or "History", the requirement (section 4) to Preserve its Title (section 1) will typically require changing the actual title.

9. TERMINATION

You may not copy, modify, sublicense, or distribute the Document except as expressly provided for under this License. Any other attempt to copy, modify, sublicense or distribute the Document is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance.

10. FUTURE REVISIONS OF THIS LICENSE

The Free Software Foundation may publish new, revised versions of the GNU Free Documentation License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. See http://www.gnu.org/copyleft/.

Each version of the License is given a distinguishing version number. If the Document specifies that a particular numbered version of this License "or any later version" applies to it, you have the option of following the terms and conditions either of that specified version or of any later version that has been published (not as a draft) by the Free Software Foundation. If the Document does not specify a version number of this License, you may choose any version ever published (not as a draft) by the Free Software Foundation.

How to use this License for your documents

To use this License in a document you have written, include a copy of the License in the document and put the following copyright and license notices just after the title page:

      Copyright (c)  YEAR  YOUR NAME.
      Permission is granted to copy, distribute and/or modify this document
      under the terms of the GNU Free Documentation License, Version 1.2
      or any later version published by the Free Software Foundation;
      with no Invariant Sections, no Front-Cover Texts, and no Back-Cover
     Texts.  A copy of the license is included in the section entitled "GNU
      Free Documentation License".

If you have Invariant Sections, Front-Cover Texts and Back-Cover Texts, replace the "with...Texts." line with this:

    with the Invariant Sections being LIST THEIR TITLES, with the
    Front-Cover Texts being LIST, and with the Back-Cover Texts being LIST.

If you have Invariant Sections without Cover Texts, or some other combination of the three, merge those two alternatives to suit the situation.

If your document contains nontrivial examples of program code, we recommend releasing these examples in parallel under your choice of free software license, such as the GNU General Public License, to permit their use in free software.


Contacts and info

About the program

The program is written in Borland Delphi 5 & 7

PSPad uses these components and units:

  • SynEdit - syntax highlight component (http://synedit.sourceforge.net). I expanded on several functions: (e.g. wordwrap, user highlighters...)
  • JCL - Jedi Code Library (http://www.delphi-jedi.org/)
  • HexEditor - Markus Stephany, (http://home.t-online.de/home/mirbir.st)
  • RTF2HTML - RTF to HTML conversion. Source code by David Majda (http://www.majda.cz/)
  • TDiff - text differences by Angus Johnson (http://www.users.on.net/johnson/delphi/)
  • SynSpellCheck - Jakuba Dybala (http://www.synspellcheck.prv.pl) with own functionality - speed optimized and myself created Czech dictionary
  • Algorithm for word difference in spell check by Josef Hampl
  • PNGImage - Gustavo Huffenbacher Daud (http://pngdelphi.sourceforge.net)
  • GifImage - Anders Melander (anders@melander.dk)
  • Synapse - work with HTTP and FTP - Lukáš Gebauer (http://www.ararat.cz/synapse/)
  • PBCClipBoard - clipboard component - Paul Bak (http://home11.inet.tele.dk/BakSoft/)
  • Expression Evaluator - vyhodnocení výrazu - BitSoft Development (http://www.bitsoft.com)
  • MD5 - Matthias Fichtner - (http://www.fichtner.net/delphi)
  • XPMenu - Khaled Shagrouni - (http://www.shagrouni.com/)
  • LVK skripts - V Karlsen - (http://www.vkarlsen.no/)

All used code and components are freeware or are used with author's consent.

All other code is my own and came from PSPad development.

PSPad is freeware. Made available free of charge.

About the author

Name: | Jan Fiala
Email: | support@pspad.com
Web site: | http://www.pspad.com

About the Company

Address: | Prog-Soft s.r.o. Na Kovarske strani 1 17 03 PILSEN
Phone: | 377 243 404
Email: | plzen@prog-soft.cz
Web site: | http://www.prog-soft.cz

We are authors of information system INFOS. This IS is specialized for drinks producers and distributors.


Starting PSPad

From Windows
You can start PSPad by double-clicking on the PSPad.exe file in Windows Explorer, by double-clicking on any file that is associated with PSPad (see Program Settings / System) or by dragging and dropping a file on to either the PSPad.exe file or a shortcut to it.

From the Command Line
The syntax to start PSPad from the command line is:

PSPad "drive:\path\filename" [/switch]

Note: The PSPad directory must be in your $PATH environment variable for this to work. If it isn't then you must enter the full path to the PSPad.exe file.

If the filename passed to PSPad is a PSPad project file then PSPad will open and load the project.

Switch values:
/H    open file in PSPad HEX editor
/R    open file in ReadOnly mode
/nnn  open file and goto line nnn

See Topics

  • Compiler examples


Working with File Tabs

You select a file tab by clicking on it with the left mouse button or by repeatedly pressing Ctrl+Tab until the required file is marked as the active one. You can change the order of the file tabs using drag 'n' drop with the left mouse button. In addition, tabs maybe activated by pressing Alt+number of tab (1-based index).

Right-clicking on a file tab will display a context menu (see File Tabs Context Menu).

The file tab marker indicate a number if things about the file. The following picture shows you the various styles of File Tab. Descriptions providing more information are below. The file tab look and use can be customized (see Program - look).

Changed File

The file has been changed and not saved. Any of the other file types will show the red mark if it has been changed.

Hidden, System or Read-only File

The file on disk is marked as hidden, system or read-only.

Hex Editor File

The file has been opened in the HEX editor (see File Menu).

Auto Refreshed File

The file has been marked to auto-refresh from disk (see File Tabs Context Menu).

Text Differences File

The results of a text differences operation (see File Tabs Context Menu).


File Tabs Context Menu

When right-clicking on a file tab, file tab context menu is displayed. The options shown work with the file over whose file tab you invoked the menu. If function you select from the menu operates on 2 files (for example 'Text Diff with this file') then the system uses the active file and the file over which you called the context menu.

Close (Ctrl+F4)

Closes the current or tab file. If the file has not been saved you will be prompted to save it.

Save (Ctrl+S)

Save the current file. If the file has not previously been saved then the 'File Save As' dialog will open first.

Save to FTP

Saves active file to the open FTP connection.

Save As... (F12)

Saves the current file with new name.

Read Only

Toggles file read-only status. When set as read-only the file name on the file tab is in italics.

System context menu

Display file's system's context menu. Maybe used to delete file.

Close to left

Close file to left of selected tab.

Close to right

Close file to right of selected tab.

Close all but current

Close all currently opened files but selected tab.

Close All

Close all currently opened files include project without exiting the program.

Vertical Split

Shows two views of the same file, to the left and right. Each can be scrolled independently.

Horizontal Split

Shows two views of the same file, one above the other. Each can be scrolled independently.

Autorefresh Window

The window is marked when auto-refresh is ON for the active file. (Refresh icon on status bar and different color in file panel). When AutoRefresh is on, the file is automatically reopened after given interval in seconds (Program Settings > Editor > Auto Refresh [s] ). Refreshing is provided only if document is active. When you click on another file tab, you are not interrupted. When the AutoRefreshed document is once again selected and active, then refreshing will resume. You are prompted for changes: "File 'x' was changed. After reopen, changes will be lost. Continue?" If you say no, the file is not reopened and your changes will not be lost. But you will be prompted again after the inteval.

Synchronize Moving

Shows two files in whole editor area and locks the file positions together so that scrolling in one window causes the other window to scroll by the same amount. Active this by right-clicking second file's tab. The first file is the currenly active tab. Please note this is disable when only one tab is open.

Text Diff with This File...

Compare contents of two text files. This function operates on the selected and the active files. Results are displayed in new window. See Text Differences.

Text Diff with File Contents on Disk

Compare active file with its disk contents. This function is only available if the file has been loaded from disk or it is a newly created file that has been saved to disk. Results are displayed in new window. See Text Differences.

Set as Main File for Compiler

Sets file as main project file. If you run the compiler (see Compiler Settings) the file marked as Main (if set) is always sent to the compiler. That file may or may not call other files to be compiled. If you don't compile this type of file, then setting as Main serves to make that file more visible in the editor file tabs.

Add File to Project

Add file to active project folder.

Copy Filename to Clipboard

Copies selected tab's full file path include filename and extention.

See Topics

  • File Menu
  • The Statusbar Explained
  • Project Menu
  • Main Toolbar
  • User highlighters
  • FTP
  • System integration
  • Working With Projects
  • Project Context Menu
  • Control Toolbar
  • External applications
  • Command/Compiler Variables
  • Project Toolbar


Working With Projects

What are projects for?
A project is a way of managing a collection of different files that are related in some way. For example, if you were working on, say, an Internet application you may have several .html pages, a .css stylesheet or 2 and some script files. You can create a project so that all these files are accessible whilst you are working.

What you get if you use projects.
· Simplicity: You only need open one file to have access to all of the files you need for your project.
· Flexibility: Files in a project can be stored anywhere on your disk or network; you don't have to put them all in the same place. Files can be used in multiple projects.
· Convenience: File is opened by double-clicking the relevant file icon in project tree.
· Organization: Files can placed in project virtual folders and files can be automatically sorted within those folders.
· Automation: You can set main project file so it will be always run in external application and/or compiler by default if one is set (see External Applications and Compiler Settings).
· Continuity: Desktop state can be saved at end of work and restored when the project is reloaded.
· Safety: Adding or removing a file from project has no influence on the file (removing a file from a project does not delete it). Only a file reference (link) is added to or removed from the project.

The Project Tree.
After the program starts an empty project is created (unless you start the program by passing a PSPad Project file name, see Starting PSPad). A Project is activated by adding at least one file. Below is a example Project Tree.

projecttree

The Project tree has a number of Icons at the top.

projfoldernew Create folder
Adds a new virtual folder to the project. The folder name must be unique in this project .

projfolderdel Remove folder
Remove folder and files it contains from project. This option is greyed out if the item selected in the project tree isn't a folder. Note: Any files removed during this operation are not deleted; only the reference to them in the Project file is removed.

projdelfile Remove file from project
Removes the file from the project. This option is greyed out if the item selected in the project tree is not a file. Note: This option does not delete the file, it just removes any references to it from the Project.

projectinfo Project Information
This opens a window that displays a list of all files in the project. The list shows the file name, the number of lines in the file and the full path of each file.

settings Project Settings
This opens a window with 3 tabs; General, External Applications and Compiler. The details for External Applications and Compiler tabs can be found in the chapters External Applications and Compiler Settings (The settings on the Project file have priority over the equivalents in Highligher Settings). The General tab a number of options:

Project Default Directory
The default directory for project files.

Default CP for File Opening
This is the same as the setting in Program Settings / Editor.

New File Format
This sets the file format for new files created whilst this project is open. The choices are DOS, Mac or Unix. Note: The Project file must be saved before this setting takes effect and it will only affect files created after the setting has been set/changed.

Cursor at End of Log File
This is the same as the setting in Program Settings / Program.

Don't open any files after project load
If checked this will cause the program to load the Project file but not open any of the individual files in the project. Otherwise, once the Project file has been loaded, any individual files that had been open when the project was last loaded will be reopened.

How do I organize my Project Tree?
There are a number of ways of organizing your Project tree.

Automatic Sorting
You can set an option in Program Settings / Program to automatically sort files and folders in your Project tree as you add them.

Sort on Demand
You can right-click on the main Project Folder or on any of the virtual folders and select 'Sort by name' to sort that folder. See Project Context Menu for more details.

Manual File manipulation
You can drag and drop files to move them around the Project tree.

How is project stored
All of the project relevant information is stored in a .PPR (PSPad project) file. This file type is automatically associated with PSPad.

Files references are stored with relative path to project file. Its important for easy project moving.

How Files are Selected in a project
Double-clicking a file on the Project tree will load the file into PSPad, if it is a know file type (C, C++, PHP, HTML, etc). However, if that file type is not defined in PSPad then the system will launch that file in its default application. For example, double clicking on a .DOC file will launch Microsoft Word (assuming that this is the program that .DOC files are associated with) with the file name as the parameter. If you define a User Highlighter for a given file type then double-clicking in the project window will launch that file inside of PSPad.

You can always right-click on a file in the project window and select 'Open as Text' or 'Open in Hex Editor' if it is not a type known to PSPad (see Project Context Menu for more details).

See Topics

  • File Tabs Context Menu
  • Project Context Menu
  • Project Toolbar
  • Sort
  • Project Menu
  • Control Toolbar
  • External applications
  • Command/Compiler Variables


Project Context Menu

Right-clicking on the Project tree will display a context menu. The options available will be dependant on where in the Project tree you click.

Project Settings... Project Information File Info Sort by Name Add all open files Add Files... Remove Folder New Folder Set File as Main for Compiler Remove File from Project Rename Close Folder Files Open Folder Files Open with Default Program Open as Text System context menu System context menu

Display file's system's context menu. Maybe used to delete file.

Open as Text

Opens the file in PSPad. If the file type is known to PSPad then the file will be syntax highlighted appropriately. If the file type is not know then the file will be treated as a text file and opened. This option is only available if you have clicked over a file.
Note: Not all files can be read as text files and whilst PSPad will open them, the contents may not appear as you might expect. You should be aware that you could prevent a program from working or lose valuable data if you change a non-text file and save it.

Open with Default Program

This option will open a file using the program it is associated with in Windows. This option is only available if you have clicked over a file.

Open Folder Files

This option will open in PSPad all of the files in a virtual folder. This option is only available if you click on a virtual folder.

Close Folder Files

This option will close any files that are in a virtual folder if they are open in PSPad. This option is only available if you click on a virtual folder.

Rename (F2)

This option will allow you to change either the project name or the name of a virtual folder. This option is not available if you have clicked over a file; to rename a file you should use the "Save As..." option and then add the newly created file to the project. See Menu - File.

Remove File from Project (Shift+Ctrl+Del)

This option removes a file from the project. The option is only available if you click on a file.
Note: The file is not deleted, it is only removed from the project.

Set File as Main for Compiler

Sets the file as main project file. If you run the compiler (see Compiler Settings) the file marked as Main is always sent to the compiler. This option is only available if you click on a file.

New Folder

Creates a new virtual folder.

Remove Folder

Deletes the virtual folder and removes any files in it from the project. This option is not available if you click on a file.
Note: The file is not deleted, it is only removed from the project.

Add Files...

Allows you to add files other than those open in PSPad. You can add multiple files using this option.

Add all open files

Add all open files to selected folder in current project.

Sort by Name

If you select this option after right-clicking on the project folder it will alphabetically sort all of the virtual folders and then sort each folders contents. If you select the option after clicking on an individual virtual folder only that folder will be sorted.

File Info

Shows file statistics.

Project Information

Shows the project information. (See Working With Projects)

Project Settings...

Shows the project settings. See Working with Projects.

See Topics

  • File Tabs Context Menu
  • Working With Projects
  • Project Toolbar
  • Project Menu
  • Control Toolbar
  • External applications
  • Command/Compiler Variables


Working with Text

Introduction

PSPad is a powerful application with dozens of tools. With all the tools at our disposal it sometimes can be difficult determining how to use all of them.

This topic will introduce some of PSPad's text manipulation tools by example.

Example

Have you ever needed to number a 1000 lines, add bullets, or add text at line begin or end?

Let us first look at the requirement. Below is an array of fruits the came from an aged PHP script and our boss needs it convert to ASP, sorted, and duplicates removed; ASAP.

Example text
$fruit[] = 'Strawberry';
$fruit[] = 'Pear';
$fruit[] = 'Peaches';
$fruit[] = 'Grape';
$fruit[] = 'Apple';
$fruit[] = 'Peaches';
$fruit[] = 'Crabapple';

The most obvious way to do this is adjust the text all manually, but consider it we very well could have hundreds of lines.

Let us see what PSPad can do to fix this mess.

  1. Sort the lines in ascending order.
    1. Using the mouse or keyboard, move cursor to the first line and first character.
    2. Using the keyboard press F8, activating block select (see The Statusbar Explained).
    3. Move cursor to the last line and last character.
    4. Press F8, deactivating block select.
    5. Open the Sort dialog by selecting Edit menu > Sort (see Sort).
    6. Set direction as Ascending, sort by as ANSI value and check Remove Duplicates. Select OK.
    Step 1.
    $fruit[] = 'Apple';
$fruit[] = 'Crabapple';
$fruit[] = 'Grape';
$fruit[] = 'Peaches';
$fruit[] = 'Pear';
$fruit[] = 'Strawberry';
  2. Remove the leading dollar marks.
    1. Select the first columns using the Column selection function. Holding the ALT key, dragging the cursor from line 1, column 1 to line 6, column 2.
    2. Delete selection by, selecting Edit menu > Delete (see Edit Menu).
  3. Remove the semicolons

    If we can move all the semicolons into the same column, we can remove them by Column selection, just as we removed the dollar signs.

    1. Position the right edge so that it is to the right of the longest line (see Mouse control).
    2. Justify Right by selecting Format menu > Block Format > Justify Right (see Block format) or press Ctrl+Alt+Right(see Keyboard shortcuts).
    3. Use Column selection and Delete.
      4. Once complete, make the text Justify left using the Block Format menu or pressing Ctrl+Alt+Left.
  4. Replace [] with () and replace ' with ".
    1. Select all the text.
    2. Open the Replace dialog by selecting Search menu > Replace (see Search and Replace).
    3. Using this dialog box you may now preform the replace.
    Step 1.

fruit() = "Apple"
fruit() = "Crabapple"
fruit() = "Grape"
fruit() = "Peaches"
fruit() = "Pear"
fruit() = "Strawberry"

    You may worry that if there are also [] and ' in the string, they will be replaced wrongly. Regular express can help us to avoid this trouble. For more information about regular express, please read the help documents about Search/Replace

  5. Insert the numbering index.
    1. First, select the lines, then presss ATL+I (or click Menu > Edit > Lines Manipulation > Insert Text to Lines) to call the insert dialog out.
    2. Select numbering.
    3. Move the index into the brackets. Press ALT key, and select the first columns.
    4. Press Ctrl+x to cut it to clipboard, then put the cursor into the bracket of the first line. Press Ctrl+v to paste.
  6. Remove extra blank space at the beginning of the lines.
    1. Use column selection again, you can delete them easily.

PSPad provide a lot of functions to deal with the text. Some are obvious and some need your exploring. Once you are familiar with it, your work will be much more efficient.


Working with Color

Simply way to change whole PSPad colors scheme

  1. Basic color settings

    Set basic colors in Settings menu > Program settings > Colors (see Colors). These colors are applied to all highlighters with these rules:

    • If previous font color is same as color of highlighter attributes, attribute color is changed to new color.
    • If previous background color is same as highlighter attribute colors, attributes background is changed to new color.
    • If highlighter attribute font color is same as new background color, attribute font color is changed to new font color.
  2. Fine-tune highlighter colors

    You may fine-tune each highlighter attributes color and font styles in Settings menu > Highlighter Settings > Colors.

  3. Save color scheme

    You may save a highlighter color scheme (see Syntax highlight). Doing so allow you to load the same scheme for any other highlighter, even custom ones. Select Settings menu > Highlighter settings > Colors, in the color scheme box enter new name or choose a prexisting name to overwrite and click the Save button. To load a color scheme, choose a prexisting name from combobox and click the Load button.

See Topics

  • Color Selector


FTP

What is FTP?
FTP (File Transfer Protocol) allows you to connect to an FTP server to send and receive files over the Internet. You might, for example, use PSPad's FTP client to upload (or send or post) your HTML files to your website.

Where is the FTP client ?
The FTP client is a tab in the Project panel. (menu View / Project Tree or Ctrl+F2) After you click the Connect FTP button (top left), a list of defined connections is displayed. You can then connect, add, remove, edit, ...
After successful connection, other buttons are enabled.
You can see connection status information on LOG panel, FTP tab.

FTP client Notes
· A file, opened directly from FTP has yellow background on File Panel. All information about connection is remembered (connection name, FTP directory, ...) Just edit and hit Save.
· After Save Function is called, file is saved back to its original location on the FTP server. If the connection isn't active at this time, PSPad will try to connect. If another connection is active, it will be disconnect.
· If you want to save a file (which was not opened from FTP) to an active FTP directory, you have 3 choices:
1. Select "Save to FTP" from File menu or
2. Pull down the triangle menu next to the Save icon (a disk) or
3. Right Click the active file tab, and select Save to FTP.
· If no FTP connection is active, the option to Save to FTP will be grayed out.
· Files are stored in your Windows temp folder (structure):
TEMP\PSPad\server\ftp_path\file
They stay stored until the contents of your TEMP directory is deleted.
· Un-Warning: You are prevented from actually deleting the parent (..) directory or any non-empty directory, even though it looks like you can. It even prompts you to ask if you are sure.

FTP client allows
· connect/disconnect to FTP server
· a detailed Right Click context menu
· a browsing FTP structure
· refresh (reload) directory structure
· quick jump into root directory
· quick jump into remote (working) directory
· create directory
· delete file or empty directory
· rename file or directory
· keep connection open by sending specified command at intervals
· saves your password in encrypted form
· upload and download text files, NOT binary files, like .JPG, .ZIP or .CHM.

FTP Context Menu
In context menu of an active FTP connection, you can...

Open as Text
Creates a local copy of the file in the Windows Temp folder. This makes for fast edits and saves. You may then Right Click the file tab and "Save To FTP" if you choose. If you want to save the file, take it OUT of the Temp folder, or it may get deleted.

Direct Edit in PSPad
Never saves a local copy. Any time you hit Save, it saves to the FTP host. Direct Edit is better for quick edits. It will also prevent you from forgetting to save your changes to the FTP site. When you double click a file, you get a Direct Edit.

Other Context Menu options are self explanatory.

See Topics

  • File Tabs Context Menu
  • File Menu


FTP setting

Connection Name
User display name for connection list

Server
FTP server name or address. If you need to specify nonstandard port (21), write port number after server address:
ftp.name.domain:port

User Name
User name for FTP server access. It's optional. If not entered, you will be asked for it.

Password
User password for FTP server access. It's optional. If not entered, you will be asked for it. It is stored in file PSPadFTP.INI in encrypted form.

Remote Directory
This directory will be set after the server connects.

Connection Timeout
You can set a timeout for each FTP account. This is the amount of time the FTP client should wait for a response from the server before it disconnects from the server.

Passive Mode
You may need it if you connect to FTP from proxy server or behind a firewall. Always try to connect with it first.

Keep Connection by Sending
In defined intervals (if FTP is idle) PSPad will send chosen command to prevent server from disconnecting you. Many servers will wait 5 minutes (300 seconds) of inactivity before disconnecting you.


Hex editor

PSPad primarily works with text files. The character with ASCII value 00h, is taken to be the end of the text file. That means you can't open a non-text file in the editor. PSPad also contains a HEX editor which will open the sort of files mentioned above.

What is a HEX Editor for?
In the Hex editor you can open any type of file and edit it byte-by-byte. Warning: You can ruin a binary file by changing a single character if you don't know what you are doing.

How to edit any file in PSPad?
You can open a file in PSPad's Hex Editor in a number of ways:
· Use the 'File / Open in HEX Editor...' menu option;
· Drag a file in to PSPad from Windows (or from PSPad's own File Explorer) or otherwise open a file and either:
· Right-click in text area and select 'HEX Edit Mode';
· Select the 'View / HEX Edit Mode' menu option;
· Add the file to a project, right-click on the file and select 'Open in HEX Editor...'

How to edit text file in HEX editor?
With a file open, either select the 'View / HEX Edit Mode' menu option or right-click in the text edit area and select 'HEX Edit Mode'.

Once in HEX edit mode, you can change the file by typing hexadecimal codes directly in to the Hex area on screen or my tying in to the ASCII area to the right of the screen. By default, the editor switches to overwrite mode when editing in Hex mode. Changes to the file are highlighted.

You can toggle between HEX and text modes as often as you need.

What you can do in Hex editor?
· switch between overwrite and insert mode by pressing INSERT;
· goto address - Alt+G (enter the byte address you want to go to in either decimal. To enter an address in Hex prefix the number with '$' - eg. $10 takes you to the 16th byte). Note: The byte address starts at zero, not 1;
· Find and/or replace text or bytes - Ctrl+F;
· Create and goto bookmarks.


Command line parameters

Command format:

"drive:\path\PSPad.EXE" [/switch | -switch] "file1" ["file2" ...]

Available switchech:

/H    open file direct in HEX editor
-H    open file direct in HEX editor
/R    open file in ReadOnly mode
-R    open file in ReadOnly mode
/D    open direct in text difference mode (need min. 2 files)
-D    open direct in text difference mode (need min. 2 files)
/nnn  after open file, goto line or position in HEX nnn
-nnn  after open file, goto line or position in HEX nnn

If FileName or path contains spaces, is necessary to enclose it with double quotes !

See Topics

  • Tools Menu


Code page conversion
How does PSPad convert code pages?
If you set a Code Page other than ANSI it means the file on disk is in this Code Page. So while reading file, PSPad provides conversion from this specific Code Page to ANSI, which is Windows native format.

If you want save file in a different Code Page, simply change the Code Page using the menu and save file; PSPad will convert the file contents during the Save process from ANSI to specific code page.

Most people will use ANSI (no conversion), OEM, ISO-8859-2, UTF-8 or UNICODE. Code pages have meaning for Czech and Slovak users only.

Autodetect CP
Don't use this function! It has meaning for Czech or Slovak users only. In other environments, it will not work.

Example:
Take an ANSI file and save it as UNICODE
1. Set ANSI in menu Format.
2. Open file.
3. Change code page to UNICODE.
4. Save file.
File is converted during save process to UNICODE.


The Statusbar Explained

The statusbar is used to display relevant information about the file you are working on. In some cases this information is imparted using icons. This chapter explains what each of the items means.

Current Highlighter Code Page File Format Character Under Cursor Synchronize moving Block Select or Autorefresh Selection Type Unsaved Changes Cursor Position and File Size Cursor Position and File Size (1)

This panel displays information about the current cursor position and the file size. The first character is the line number the cursor is on, the 2nd is its column position. The 3rd number, in round brackets, is the total number of lines in the file. The 4th, in square brackets is the total number of characters in the file. Left clicking on this panel will display the Goto Line window (see Search Menu).

For reasons of efficiency, if the file exceeds 1000 lines this part of the statusbar changes format.
When in this format, the first number is the line the cursor is on, the second the column. The final number is the number of lines in the file.

In this format the first number is the current line number, the 2nd is the current cursor position and the last, the number of characters in the selection.
Note: The number of characters selected will include 2 characters (LF and CR) for each line boundary crossed.

Unsaved Changes (2)

This panel contains either nothing or a picture of a disk. If the disk is shown then the file has been altered since the last save or has not been saved at all.
Note: Making a change to a file then undoing the change using Edit / Undo will not reset the unsaved changes marker.

Selection Type (3)

This panel indicates the Selection Type currently in force. You can change the selection type by clicking on the icon (see Selection Type). Left clicking on this panel will change the selection type.

Block Select or Autorefresh (4)

This panel indicates whether or not you are using the F8 block select function or a indication that Autorefresh is enable (see File Tabs Context Menu).

Synchronize moving (5)

This panel indicates that synchronize moving is enable (see File Tabs Context Menu).

Character Under Cursor (6)

If the file is not empty, this panel will show details of the character that the cursor is on. Left clicking on this panel (if character is a printable character) will display the ASCII Table window (see Tools Menu). The panel shows up to three values:

  • Character itself (if it is a printable character).
  • Character's ASCII value in decimal.
  • Character's ASCII value in hexadecimal.
Character Under Cursor (7)

This panel displays the name of the highlighter in use where applicable. Left clicking on this panel will display the Change Syntax window (see View Menu).

File Format (8)

This panel shows the format of the file which, describes what characters are used to mark the end of line (see Format Menu). Double-clicking this panel changes the file format.

Code Page (9)

This panel shows the code page currently in use (see Format Menu).

See Topics

  • Editor - behaviour
  • File Tabs Context Menu
  • File Menu
  • Project Menu
  • Main Toolbar
  • User highlighters


Macro

What is a macro?

Macro is a series of editor commands. You are able to record these commands and then replay them later.

How do they work?

Begin recording by ether pressing record from the toolbar, Tools menu or using keybord shortcut (Ctrl+F5). Once in record mode, all text work is recorded. Cursor is set as the to recorder picture.

Enter your text and keyboard commands.

Press stop recording (CTRL+F5 again) and the macro dialog appears, where you may choose a macro name. Your macro is now ready for use.

Macros are saved as .PME (PSPad macro record) files. They are is saved in the .\PSPad\Macro folder, which is created when you make your first macro.

You are able to open macros from disk, edit and save them.

Warning: You are not prompted when you save a macro by the same name as another. It simply overwrites the previous macro.

The following default hotkeys are available for your macros: F5, F6, Alt+F6, Ctrl+Alt+F6. But if you want to assign them to your macros, you will need to go into the Macro Manager (Shift+Ctrl+F5) after you have named your macro (see Macro Manager).

For a list of commands see Macro commands.

Limits

  • Macro does not record mouse actions. Do block selections with Shift+Cursors.
  • Macro does not work with find, replace and other functions.
  • Macro length is unlimited (memory).

If you create a macro that selects text or uses arrows while you are in Word Wrap mode, it may act differently when you later execute the macro with Word Wrap off.

Macro editing

Choose menu Tools / Macro / Macro Manager / Edit macro, you will see macro content. You can use special highlighter and clips (Ctrl+Space).

Inclued with PSPad is user highlighter for macro file. For its use, you will need to manual added it (see Syntax highlight).

Recommended color settings for macro editing are as follows:

  • Comments - Black, Normal Font
  • Identifiers - Red, Normal Font (invalid commands will be colored in red)
  • Keywords - blue, Normal Font

See Topics

  • Context Files
  • Tools Menu


Macro Manager

Start / Stop Recording (Ctrl+F5)

Start / stop macro recording

Play Macro

Play recorded macro

Macro Manager (Shift+Ctrl+F5)

Play

Play x-times

You can choose macro and specify number of times it is played.

Delete

Edit

Opens currently selected macro into new editor (see Macro commands).

Assign Shortcut

Assign a keyboard shortcut to the currently selected macro.

See Topics

  • Macro commands
  • Keyboard shortcuts
  • Mouse control
  • Keyboard commands


Macro commands

File Format

Each command requires a separate line. After character writing command, ecChar places desired character in {} curly braces. For example, the command ecChar{Hello} will output at current cursor position the word "Hello".

List of Commands

Command | Description
ecLeft | Move cursor left one char.
ecRight | Move cursor right one char.
ecUp | Move cursor up one line.
ecDown | Move cursor down one line.
ecWordLeft | Move cursor left one word.
ecWordRight | Move cursor right one word.
ecLineStart | Move cursor to beginning of line.
ecLineEnd | Move cursor to end of line.
ecPageUp | Move cursor up one page.
ecPageDown | Move cursor down one page.
ecPageLeft | Move cursor right one page.
ecPageRight | Move cursor left one page.
ecPageTop | Move cursor to top of page.
ecPageBottom | Move cursor to bottom of page.
ecEditorTop | Move cursor to absolute beginning.
ecEditorBottom | Move cursor to absolute end.
ecGotoXY | Move cursor to specific coordinates.
ecNextLineStart | Move cursor to next line begining.
ecSelLeft | ecLeft + ecSelection
ecSelRight | ecRight + ecSelection
ecSelUp | ecUp + ecSelection
ecSelDown | ecDown + ecSelection
ecSelWordLeft | ecWordLeft + ecSelection
ecSelWordRight | ecWordRight + ecSelection
ecSelLineStart | ecLineStart + ecSelection
ecSelLineEnd | ecLineEnd + ecSelection
ecSelPageUp | ecPageUp + ecSelection
ecSelPageDown | ecPageDown + ecSelection
ecSelPageLeft | ecPageLeft + ecSelection
ecSelPageRight | ecPageRight + ecSelection
ecSelPageTop | ecPageTop + ecSelection
ecSelPageBottom | ecPageBottom + ecSelection
ecSelEditorTop | ecEditorTop + ecSelection
ecSelEditorBottom | ecEditorBottom + ecSelection
ecSelGotoXY | ecGotoXY + ecSelection
ecSelectAll | Select entire content of editor, cursor to end.
ecCopy | Copy selection to clipboard.
ecScrollUp | Scroll up one line leaving cursor position unchanged.
ecScrollDown | Scroll down one line leaving cursor position unchanged.
ecScrollLeft | Scroll left one char leaving cursor position unchanged.
ecScrollRight | Scroll right one char leaving cursor position unchanged.
ecInsertMode | Set insert mode.
ecOverwriteMode | Set overwrite mode.
ecToggleMode | Toggle ins/ovr mode.
ecNormalSelect | Normal selection mode.
ecColumnSelect | Column selection mode.
ecLineSelect | Line selection mode.
ecMatchBracket | Go to matching bracket.
ecGotoMarker0 | Goto marker 0.
ecGotoMarker1 | Goto marker 1.
ecGotoMarker2 | Goto marker 2.
ecGotoMarker3 | Goto marker 3.
ecGotoMarker4 | Goto marker 4.
ecGotoMarker5 | Goto marker 5.
ecGotoMarker6 | Goto marker 6.
ecGotoMarker7 | Goto marker 7.
ecGotoMarker8 | Goto marker 8.
ecGotoMarker9 | Goto marker 9.
ecSetMarker0 | Set marker, 0.
ecSetMarker1 | Set marker, 1.
ecSetMarker2 | Set marker, 2.
ecSetMarker3 | Set marker, 3.
ecSetMarker4 | Set marker, 4.
ecSetMarker5 | Set marker, 5.
ecSetMarker6 | Set marker, 6.
ecSetMarker7 | Set marker, 7.
ecSetMarker8 | Set marker, 8.
ecSetMarker9 | Set marker, 9.
ecDeleteLastChar | Delete last char (i.e. backspace key).
ecDeleteChar | Delete char at cursor (i.e. delete key).
ecDeleteWord | Delete from cursor to end of word.
ecDeleteLastWord | Delete from cursor to start of word.
ecDeleteBOL | Delete from cursor to beginning of line.
ecDeleteEOL | Delete from cursor to end of line.
ecDeleteLine | Delete current line.
ecClearAll | Delete everything.
ecLineBreak | Break line at current position, move caret to new line.
ecInsertLine | Break line at current position, leave caret.
ecChar | Insert a character at current position.
ecImeStr | Insert character(s) from IME.
ecUndo | Perform undo if available.
ecRedo | Perform redo if available.
ecCut | Cut selection to clipboard.
ecPaste | Paste clipboard to current position.
ecBlockIndent | Indent selection.
ecBlockUnindent | Unindent selection.
ecTab | Tab key.
ecShiftTab | Shift+Tab key.
ecUpperCase | Convert to uppercase. Apply to the current or previous word.
ecLowerCase | Convert to lowercase. Apply to the current or previous word.
ecToggleCase | Toggle case. Apply to the current or previous word.
ecTitleCase | Convert to title case. Apply to the current or previous word.
ecUpperCaseBlock | Convert to uppercase. Apply to current selection, or current char if no selection is made.
ecLowerCaseBlock | Convert to lowercase. Apply to current selection, or current char if no selection is made.
ecToggleCaseBlock | Toggle case. Apply to current selection, or current char if no selection is made.

See Topics

  • Macro Manager
  • Keyboard shortcuts
  • Mouse control
  • Keyboard commands


Keyboard shortcuts

Here you will find a complete list of the default keyboard shortcuts. For information on how to change the default see Key mapping.

Sections

Edit | File
Window | Format
Search | Show
HTML | Help
Tools | Insert
Template | Makro
Bookmark | Project
TextDiff | Editor

Edit

Shortcut | Command | Description
Shift+Ctrl+Z | Redo | Redo Last Undo
Ctrl+Z | Undo | Undo last change
Ctrl+X | Cut | Cut selected text to clipboard
Ctrl+C | Copy | Copy selected text to clipboard
Ctrl+V | Paste | Insert clipboard text to cursor position
Ctrl+A | Select All | Mark all text as selected
Shift+Ctrl+' | Select String |
F8 | Block Selection |
Shift+Ctrl+V | Paste Without Cursor Change |
Shift+Ctrl+M | SelMatchBracket |
Ctrl+' | SelString2 |
Ctrl+Ins | CopyEx |
Shift+Del | CutEx |
Shift+Ins | PasteEx |

File

Shortcut | Command | Description
Ctrl+O | Open... | Open Selected File(s)
Ctrl+Alt+F4 | Exit | Exit PSPad
Ctrl+S | Save | Save file
F12 | Save As... | Save open file as file
Ctrl+N | New file... | Create new file
Ctrl+P | Print | Print open file
Ctrl+R | Reopen Active File | Reopen active file & Discard Changes
Alt+P | Print Preview | Print preview
Ctrl+F4 | Close | Close active file
Shift+Ctrl+S | Save All | Save changes of all open files
Ctrl+F9 | Compile | Run external compiler to compile file
Shift+Ctrl+O | Open in HEX Editor... |
Ctrl+Alt+S | Save Without changing File Date |
Ctrl+D | Open Active File with New Name... |
Esc | Exit with ESC |
F9 | Run1 |
Alt+F9 | Run2 |
Shift+F9 | Run3 |

Window

Shortcut | Command | Description
Ctrl+Tab | Next Window | Goto next file
Shift+Ctrl+Tab | Previous Window | Goto previous file
Ctrl+L | Show / Hide LOG window |
Alt+L | Jump to Editor / LOG |
Alt+1 | FileTab1 |
Alt+2 | FileTab2 |
Alt+3 | FileTab3 |
Alt+4 | FileTab4 |
Alt+5 | FileTab5 |
Alt+6 | FileTab6 |
Alt+7 | FileTab7 |
Alt+8 | FileTab8 |
Alt+9 | FileTab9 |

Format

Shortcut | Command | Description
Ctrl+Alt+L | To Lower Case | Change chars to lower case
Ctrl+Alt+U | To Upper Case | Change chars to upper case
Ctrl+Alt+T | Capitalize | Capitalize char case
Shift+Ctrl+I | Indent Block | Indent block
Shift+Ctrl+U | UnIndent Block | UnIndent block
Ctrl+K | Reformat (paragraph=blank line) | Reformat block of text with right edge settings
Shift+Ctrl+A | Add/Remove Comment |
Ctrl+Alt+Left | Justify Left |
Ctrl+Alt+Right | Justify Right |
Shift+Ctrl+K | Reformat (paragraph=short line) | Reformat block of text with right edge settings

Search

Shortcut | Command | Description
Ctrl+F | Find... | Text search
F3 | Find Next | Search text for next occurrence
Ctrl+H | Replace... | Replace text with other text
Ctrl+G | Goto Line... | Jump to selected line
Ctrl+E | Incremental Search | Incremental Search
Shift+F3 | Find Previous | Find previous occurrence
Shift+Ctrl+Down | Next Occurrence of Current Word |
Shift+Ctrl+Up | Previous Occurrence of Current Word |
Ctrl+M | Matching Bracket | Find matching bracket (cursor before bracket)

Show

Shortcut | Command | Description
Ctrl+W | Word Wrap Lines | Switch on or off lines wrapping
Shift+Ctrl+E | Code Explorer window |
F2 | Show/hide panel |

HTML

Shortcut | Command | Description
Alt+C | Color Selector window | Color Selector window
Shift+Ctrl+T | Select TAG |
F10 | HTML Page Preview | Show HTML page in internal browser
Ctrl+F10 | HTMLCheck |
Shift+Ctrl+F10 | WebPrev |

Help

Shortcut | Command | Description
Alt+F1 | Help for Language |

Tools

Shortcut | Command | Description
Alt+A | Char Table | Open ASCII and Symbol table
Alt+I | Insert Text into Lines... |
Alt+M | Clipboard Monitor window |
F7 | Spell Check |
Ctrl+F7 | Spell Settings... |
Ctrl+J | Auto Completion |
Ctrl+Space | Show Clips |
Alt+Q | Repeat last command |
Shift+Space | ClipRun |

Insert

Shortcut | Command | Description
Alt+D | Insert Date Time | Insert date & time

Template

Shortcut | Command | Description
Ctrl+Alt+Space | Create Clip from Block | Create new Clip from selected text

Makro

Shortcut | Command | Description
Ctrl+F5 | Start / Stop Recording | Start / stop macro recording
Shift+Ctrl+F5 | Macro Manager |
F5 | Makro1Play |
F6 | Makro2Play |
Alt+F6 | Makro3Play |
Ctrl+Alt+F6 | Makro4Play |

Bookmark

Shortcut | Command | Description
Shift+Ctrl+B | Bookmark List | Bookmark list
Alt+Left | Set Bookmark |
Alt+Right | Del Bookmark |
Alt+Up | Previous Bookmark |
Alt+Down | Next Bookmark |

Project

Shortcut | Command | Description
Ctrl+F2 | Tool Panel | Show / Hide tool panel
Shift+Ctrl+Del | Remove File from Project | Remove file from project
F2 | Rename |

TextDiff

Shortcut | Command | Description
Shift+Ctrl+G | View Source |

Editor

Shortcut | Command | Description
Up | Up |
Shift+Up | SelUp |
Ctrl+Up | ScrollUp |
Down | Down |
Shift+Down | SelDown |
Ctrl+Down | ScrollDown |
Left | Left |
Shift+Left | SelLeft |
Ctrl+Left | WordLeft |
Shift+Ctrl+Left | SelWordLeft |
Right | Right |
Shift+Right | SelRight |
Ctrl+Right | WordRight |
Shift+Ctrl+Right | SelWordRight |
PgDn | PageDown |
Shift+PgDn | SelPageDown |
Ctrl+PgDn | PageBottom |
Shift+Ctrl+PgDn | SelPageBottom |
PgUp | PageUp |
Shift+PgUp | SelPageUp |
Ctrl+PgUp | PageTop |
Shift+Ctrl+PgUp | SelPageTop |
Home | LineStart |
Shift+Home | SelLineStart |
Ctrl+Home | EditorTop |
Shift+Ctrl+Home | SelEditorTop |
End | LineEnd |
Shift+End | SelLineEnd |
Ctrl+End | EditorBottom |
Shift+Ctrl+End | SelEditorBottom |
Ins | ToggleMode |
Ctrl+C | Copy |
Ctrl+X | Cut |
Ctrl+V | Paste |
Del | DeleteChar |
Shift+BkSp | DeleteLastChar |
Ctrl+BkSp | DeleteLastWord |
Ctrl+Z | Undo |
Shift+Ctrl+Z | Redo |
Ctrl+M | LineBreak |
Tab | Tab |
Shift+Tab | ShiftTab |
F1 | ContextHelp |
Ctrl+A | SelectAll |
Shift+Ctrl+I | BlockIndent |
Shift+Ctrl+U | BlockUnindent |
Ctrl+N | InsertLine |
Ctrl+T | DeleteWord |
Ctrl+Y | DeleteLine |
Shift+Ctrl+Y | DeleteEOL |
Ctrl+0 | GotoMarker0 |
Ctrl+1 | GotoMarker1 |
Ctrl+2 | GotoMarker2 |
Ctrl+3 | GotoMarker3 |
Ctrl+4 | GotoMarker4 |
Ctrl+5 | GotoMarker5 |
Ctrl+6 | GotoMarker6 |
Ctrl+7 | GotoMarker7 |
Ctrl+8 | GotoMarker8 |
Ctrl+9 | GotoMarker9 |
Shift+Ctrl+0 | SetMarker0 |
Shift+Ctrl+1 | SetMarker1 |
Shift+Ctrl+2 | SetMarker2 |
Shift+Ctrl+3 | SetMarker3 |
Shift+Ctrl+4 | SetMarker4 |
Shift+Ctrl+5 | SetMarker5 |
Shift+Ctrl+6 | SetMarker6 |
Shift+Ctrl+7 | SetMarker7 |
Shift+Ctrl+8 | SetMarker8 |
Shift+Ctrl+9 | SetMarker9 |
Shift+Ctrl+N | NormalSelect |
Shift+Ctrl+C | ColumnSelect |
Shift+Ctrl+L | LineSelect |
Shift+Ctrl+B | MatchBracket |

See Topics

  • Mouse control
  • Key mapping
  • Keyboard commands
  • Macro Manager
  • Macro commands


Mouse control

Shortcut | Command
Left Click | Position cursor. Move right edge using ruler.
Right Click | Display context menu.
Middle Click | Display clip list. Closes file using file tab.
Left Click, hold & drag | To select normal block. Rearange file tabs. Add file to project for file tab. Add file path to editor for project panel. Add object to editor from code explorer.
Ctrl+Right Click, hold | Move to scroll window.
Alt+Left Click, hold & drag | To select column block.
Shift+Left Click | Select block from cursor position.
Double Left Click | Select word. On tab panel brings up new file dialog box.
Ctrl+Double Left Click | Select text inside quotes.
Alt+Double Left Click | Select HTML tag.
Left Click Selected Text, hold & drag | To move selected text.
Ctrl+Left Click Selected Text, hold & drag | To copy selected text.
Ctrl+Scroll Wheel | Zoom editor. Scroll up zooms in. Scroll down zooms out.

See Topics

  • Keyboard shortcuts
  • Key mapping
  • Keyboard commands
  • Macro Manager
  • Macro commands


Files and folders

Files and folders location is relative to PSPad.EXE. Some folders are created as needed.
PSPad doesn't need installation. To work you need only PSPad.EXE. If you use PSPad in MultiUser mode (WinNT), some configuration and user files are stored in user profile directory (usually .\Document and settings\User\Application data\PSPad)

Files and directory structure

Main Folder
PSPad.exe
Editor executable file. This is all you need.
PSPad.chm
Application help file.
PSPad.ini
Application settings. In MultiUser mode, it is stored in user profile.
PSPad_MU.ini
Common settings for all users.
PSPad.map
file for debugging. With this file, PSPad creates PSPad_err.LOG file with detailed error info
PSPad_err.log
LOG file with detailed error info
ASCII.ini
List of HTML entits and control chars for ASCII chart. (See Tools Menu)
AutoCorr.txt
List of Autocorect entries.
Google.ini
Configuration file for Google interface.
Licence.txt
Application licence.
PSCache.bin
contains file state of previously opened file. In MultiUser mode is stored in user profile. You can delete it if you want.
Notepad.exe
Replacement for standard Notepad.EXE. It's only a PSPad starter.
Notepad.txt
Notepad.EXE description
Online.ini
Links for Online help and Online tools (menu Help)
Recent.ini
Recent and workspace files. In MultiUser mode, it is stored in user profile.
Search.ini
Search settings. In MultiUser mode, it is stored in user profile.
TiDy.exe
command line tool for HTML code check and format.
TiDyCFG.ini
TiDy configuration file (section are displayed in menu HTML). (See HTML TiDy)
WWWTools.ini
HTML preview commands definitions
Colors
Color schemes (.INI files)
Context
Files with clips (.DEF files). If you open file with some syntax highlighting, corespondent clip file is opened automatically.
BAT.def
HTML.def
:
VBScript.def
Convert
User converter files (.INI files)
Lang
Files with PSPad localization (.INI files)
Macro
Stored recorded macros (.PME files)
Plugins
PSPad File handling plugin (.DLL files)
Script
Flies for active scripting. Sorted by script language in to subdirectories. Must contain only script files!
Skin
Toolbar button icon sets (.BMP files)
Spell
Dictionaries for spell checker (.DIC files). Here you find UserDictionary (if no multiuser PSPad chosen).
Lorem*.txt
Files for Lorem Ipsum generator.
Syntax
User defined highlighters (.INI files)
Template
File / New / User Template offers skeletons for ASP, PHP, HTML, XML, XSLT...

See Topics

  • HTML Menu
  • HTML TiDy


Template Files

Template files allow you to create boilerplates for various file types. For example, if you were working on a particular web project you might have just 2 or 3 page layouts that you use where only the content is different. In this case it would save a great deal of effort if you could create a new file with all of the markup done so you only had to enter the actual content.

PSPad allows you to have any number of different template files for any file type.

How do I create a template?
Simply open a new file and save it in the /Templates directory with the correct file extension. You can save your template with any (legal) name you like but if you create a template with the name 'default' then each time you create a new file based on that file type a copy of your template will be used.

Example - Creating a default template for JavaScript files:
Create a new text file.

Enter the following text:

/* ******************************************* */
/* File Name:                                  */
/* Author:                                     */
/* Description:                                */
/* ******************************************* */

Save the file as default.js in the /Templates directory (there may be one in there already so rename it before saving your own).

Now, select the File / New menu option and choose 'New File' and 'JavaScript' from the dialog box. The system will create a file called something like 'New1.js' and the file will contain the text that you entered in to the template.

How do I use a template other than the default one?
Each file type with at least one defined template is included on the tree view that is displayed when you select the File / New menu option and click on the Use Template' radio button (see below).

usetemplate

Simply double-click on the template you require and it will be loaded.

Remember: The name you save your template file with will be what is displayed in the dialog box show above, so try and give your files meaningful names.

At the bottom of the dialog, you will see a checkbox marked 'File name same as Template name'. Normally PSPad creates file with a name like 'New1' with the relevant extension. If you check this box then the file name will be the same as the template name, so, for example, if you checked the box and then double clicked on the 2nd entry in the HTML template list, your file will be called glossary.html.

See Topics

  • Interactive Clips


Context Files

Context files contain information used for 2 important PSPad features; Show Clips (Ctrl+Space) and Auto Completion (Ctrl+J).

Context files are stored in the /Context sub-directory of you main PSPad folder with a .DEF file extension. The format of these files is described below

Context File Format

The context file has 3 main sections; clip definitions, clip macro definitions, and keywords used for auto-completion.

Clips are templates or pieces of boilerplate code that can be placed at the cursor position in your file. Some of these clips can operate on selected text in a file (See Clips).

The clip macro definitions referred to here are used in 'interactive clip' definitions. These interactive clips make it possible to have blocks of code generated from templates but unlike standard clips, the user can supply values to influence the output (See Interactive Clips).

Auto-completion is a mechanism designed to speed code entry. Auto-completion, when called, will display a popup list of words matching that which you have entered. This list will be made up initially from words listed in the [Keywords] section of the .DEF file. The system will also include words from the file you are working on so that, as you type, things like variable names, etc are added to the list.

There are a number of context files supplied with PSPad. They have the same name as the highlighters they are used with. Some of the context files supplied include:

  • SP.def
  • Bat.def (MS-Dos batch files)
  • CPP.def (C++)
  • CSS.def (Cascaded style sheets)
  • FoxPro.def
  • HTML.def
  • Java.def
  • JavaScript.def (JavaScript)
  • Pascal.def
  • Perl.def
  • PHP.def
  • VBScript.def (Visual Basic script)
  • XML.def

See Topics

  • Macro
  • Tools Menu


Clips

What are clips?

Every clip consists of a name, a description and some content. The name and description is displayed in the clip list that pops up when you call it with the shortcut Ctrl-Space. The selected clip's content is inserted at the cursor position. The content of a clip can be an unlimited number of lines and the structure of the clip in the definition is kept when it is inserted into your file. The clip definitions are not fixed and you can edit the existing definitions or add your own.
Note: The .DEF files are usually reinstalled with each new version of PSPad so if you edit them you should ensure that you have copies before installing any upgrades.

How to call a Clip

Pressing Ctrl-Space will produce the entire list of clips in the file. You can scroll up and down the list to find the entry you want and the press Enter or click on it with the mouse to select it. You can also start to type the name of the clip entry you want and the list will scroll to the closest match. If you enter the name of the clip you require, or part of it, before pressing Ctrl- Space the list will open at the closest match. You can also assign a keyboard shortcut or "Hotkey" to a particular clip (see Settings Menu for details). Clips with a keyboard shortcut are also listed under the Settings menu > Clips Hotkeys. If you type the full clip name then pressing Shift+Space will enter the clip's content directly into the file without displaying the clip list.

Clip file format

The clip definition format is very simple: [name |x description]*shortcut

  • [ - This a required character.
  • name - This is the name of the clip that will appear in the clip list and will appear in a bold font.
  • | - This is a required character that separates the clip name from the description.
  • X - This (optional) character sets the colour that the clip entry will appear as in the list.
    Choose one of:
    • M - Maroon
    • R - Red
    • N - Navy
    • B - Blue
    • P - Purple
    • F - Fuchsia
    • G - Green
    • D - Dark gray
  • * - This character is optional and is only required if a shortcut or hotkey is to be defined for the clip.
  • Shortcut - This entry is only required if a shortcut or hotkey is defined. If multiple keys are required for the hotkey then they should be key1+key2. (See Keyboard commands)

The clip content starts on the line immediately after the definition and continues until the start of the next definition or the end of the file.

The content is entered into your file exactly as it is entered here. There are 2 special characters that you can use in your content; | and § (ALT+167). When your clip is used the cursor will be placed at the position occupied by the | character. If you include this character more than once in your clip content then only the first position will be used. If you have any text highlighted in your file when you call the clip and the clip's content includes the § character then that character will replace the selected text. You can use the § character multiple times; each occurrence will be replaced with the selected text in your file.

You can add comments to the clip definition by starting the line with a semicolon ;. If your clip content needs to include a line that starts with a colon, enter two colons ;;.

Note: You cannot have a line in your clip content that starts with the open square bracket, [ character as this marks the beginning of the next clip definition.

Example:

[Alert Alert]*Ctrl+Alt+A|
alert("§|");


Interactive Clips

This chapter assumes you've read and understood the chapter on Clips.

What are Interactive Clips?
Clips insert text in to your file. Standard clips insert fixed text defined by the clip content. Interactive clips allow you to modify the content of the clip definition before it is inserted into your file using clip macros. You do this by defining your clip macros to use various Windows controls such as text boxes, combo boxes and checkboxes.

How do they work?
The basis of interactive clips is the control definition in the section [Macro definition] at the top of the .DEF file. This section contains all of the common definitions for all of the clips in this particular .DEF file. The clips macros are all stored at the top of the file so that they can be used in many clip definitions.

Note: When an interactive clip is called if no value is entered for a particular macro and that macro has no default value then nothing from that macro will be inserted in to your file; if you need an empty value for a particular macro you must enter a space.

Clip Macro Format:
The clip macro format is as follows

%control%=@x caption,text,default,options,delimiter,dialog_type

%control% The name used in the clip body. The name must contain only alphanumeric characters - no spaces or punctuation characters.
@x    Type of control. One of
@-- = Separator
@C = Combo box
@D = Date dialog
@E = Text box
@F = Font selection dialog
@K = Checkbox
@L = Colour picker dialog
@O = File Open dialog
@P = Picture selection dialog
@S = Directory selection dialog
@T = Topstyle
See below for further details.
caption This text will appear as a label for the control in the dialog.
text Optional fixed text that will be inserted into your file immediately the value you enter in to the control.
default The default value. This value will be used if you don't enter a value of your own in to the control. (optional)
options Depends on the control used, see below (optional).
delimiter These optional Characters will be inserted around value entered into the control (optional). Note: If you use a value for 'text' (see above) this value will not be bracketed by the delimiters.
dialog_type Only used when @x = @O (optional). One of:
A = Absolute path and slash type, or
R = Relative path and slash type
If this value is blank then and the file being edited is an HTML file then the path returned by the control will be relative to the file's path and the path delimiters will be slashes (/). Otherwise the path returned will be absolute and will use backslashes (\).

If you need to include a comma in the value supplied, say, as 'default' or 'options' you need to enclude the comma in quotes.

You don't need to include the optional items although you do need to include the correct number of separating commas if you want to include one of the latter optional items without supplying a value for an earlier one. Special chars or values with spaces would be entered inside double quotes.

Control types:
@-- = Separator
This produces separator line only

@C = Combo box
This produces a list of values from which the you can select one. The list is entered as a semicolon-separated list of values for the options parameter. If the values contain spaces then they must be enclosed in double quotes.

Examples:
%combo1%=@C Centering type:,CENTER=,left,left;right;center,"
%RGB%=@C RGB color:,RGB=,,"255,255,255";"#FFFFFF";"FF;FF;FF";"FF FF FF","

@D = Date dialog
This produces a control that allows you to enter a date. The control also allows you to call up a calendar to use to select the date required.

Example:
%date%=@D Date:,DATE=,,,"

@E = Text box
This is a normal edit textbox to enter general value. If your supply no control type in the clip macro definition, @E is assumed.

@F = Font selection dialog
This produces a combo box containing a list of all fonts installed on the system.

Example:
%fonts%=@F Font face:,font-face=,,,"

@K = Checkbox
This produces a simple checkbox control. If the value of Default is not blank then the control is initial checked.

Examples:
%check%=@K No shade,NoShade
%check%=@K Remember,REMEMBER,,,!!!

@L = Colour picker dialog
This produces the standard Windows colour picker dialog.

@O = File Open dialog
This produces the standard Windows File Open dialog. The options parameter can contain file filters.

Examples:
%file%=@O Reference:,HREF=,,Html files (*.htm;*.html)|*.htm;*.html,"
result: HREF="project/files/soubor.htm"

%file%=@O File:,,,PAS files (*.pas)|*.pas,',A\
result: 'c:\temp\soubor.pas'

%file%=@O File:,,,C files (*.c)|*.pas,,R\\
result: project\\source\\soubor.c

@P = Picture selection dialog
This produces the standard Windows Picture Open dialog.

@S = Directory selection dialog
This produces the standard Windows Directory Select dialog.

@T = Topstyle
This invokes the TopStyle CSS editor. Note: You must have previously installed TopStyle for this to work.

Using clip macros.
You use the clip macros you have defined by simply inserting the clip macro name, bracketed by percent signs (eg %mymacro%) in the clip definition. You can use the same control name several times throughout a clip body. When you do the control appears only once in the dialog when the clip is called but the value entered is inserted to the every occurrence of control in clip body.

When a clip is called that uses a clip macro, the dialog that is displayed has 3 buttons: OK, Repeat and Cancel. The function of the OK and Cancel buttons sis self-explanatory. The Repeat button functions a little like the OK button except that is does not dismiss the dialog. Instead the clip text is entered in to your document and the macro 'resets' itself so that you enter another set of values.

Example 1:

[Macro definition]
%file%=@O Reference:,HREF=,,Html files (*.htm;*.html)|*.htm;*.html,"
...
[ahref | simple reference <a href=...>...</a>]
<a %file%>|</a>

When the clip is called you will see a file open dialog. Once a file is selected the inserted text will look something like:

   <a HREF="choosen file.htm"></a>

and cursor will be positioned then the "|" character appears in the clip definition.

Example 2:

[Macro definition]
%proc%=@E Procedure name:
%autor%=@E Author name:
...
[proc | procedure base]
// Procedure: %proc%
// Author: %autor%
procedure %proc%;
begin
|
end; {procedure %proc%}

When the clip is called you will see a dialog with two text boxes. Once values for 'Procedure name' and 'Author name' are entered the result will look something like:

   // Procedure: ShowDialog
   // Author: Jan Fiala
   procedure ShowDialog;
   begin

   end; {procedure ShowDialog}

Note how the clip macro %proc% has been used more than once in the clip macro definition.

Example 3:

[Macro definition]
%Number%=@E, Enter Number ," ,",,,

[number | number with comma]
%number%

After calling the clip and pressing the Repeat button a number of times a series of numbers and commas will be inserted like this:

   ,123, 456, 12, 5

See Topics

  • Template Files
  • Program - look


Save desktop

What does it mean?

This means that PSPad will remember which files are open when you close the program. Then it reopen them all when the program is restarted. Also the by enabling Remember File State, cursor position, highlighter, and bookmarks are saved each file you have opened.

How do you enable desktop saving?

For details about how to enable or disable desktop saving see Files and dirs.

Philosophy (How does it works?)

If desktop saving is disabled then no record is kept of which files are open when the program exists. When PSPad restarts it opens in the default state using the option "Auto Open New File after Start" (see Program - behaviour).

If you set desktop saving to be on all the time then starting PSPad by say, double clicking on a file in Windows Explorer and then exiting PSPad again will cause the system to reopen that file when you next start PSPad.

The third option for desktop saving means that only files opened directly in PSPad, rather than by, say, double clicking in Windows Explorer, or dragging and dropping a file on to the PSPad shortcut, are remembered. What this means in practice is that you can have a project open, close PSPad, then later open PSPad via Windows Explorer without having your remembered desktop overwritten.

See Topics

  • Files and dirs


HTML page - example

· Open new HTML document. This will also load the clip definition file for HTML, including syntax highlighting.
· Press CTRL+SPACE, choose html (or write html and press SHIFT+SPACE) - you get HTML page base structure
· Use other clips (CTRL+SPACE) or their assigned shortcuts (chapter about clips) to write what you need.
· Create or open other pages
· I recommend you use clips shortcuts like CTRL+Enter, CTRL+B, CTRL+I, .... See what these hotkeys do at: Settings / Clips Hotkeys, (This is empty if there are not shortcuts assigned in the .DEF file for this file type.) For example, when you are in an HTML document, CTRL+B creates a set of bold tags <b></b> with your cursor in the middle of them. If you select your text before hitting CTRL+B, the text will be surrounded by the bold tags.
· Mark main HTML page (index.html) as "Main page" - Ctrl+M for better visibility.
· Press F10 anytime to see result of your work in the default application, which in this case is the built-in browser.
· Press SHIFT+CTRL+E to see Code Explorer for better code orientation

How to effectively use program

· after selecting a block of lines, you can increase or decrease indentation - SHIFT+CTRL+U SHIFT+CTRL+I or Tab / Shift+Tab
· use clips (CTRL+SPACE)
· Use hotkeys. Intead Ctrl+Space, select "B" tag, you can select your text and press Ctrl+B (in HTML document).
· you can use UNDO and REDO at any time
· you can simply reopen file before you save it, if you are not happy with your changes Ctrl+R
· use bookmarks for quick orientation in code CTRL+LEFT/Right, CTRL+DOWN/Up
· use context menu - right mouse button
· use help. Try pressing F1 in various contexts: in the Projects window, in a dialog box, when you mouse has highlighted a pull down menu item.
· explore and try the various menu tools. Some functions can save you a lot of work


File type plug-ins

PSPad from 4.3.3 version supports plugins for file load/save manipulation. Plugins are stored in the .\Plugins\FileType folder as dynamic link library (.dll) files. The name of each dll indicated it's functions are called when loaded and/or saving a file with a matching file extension. i.e. pdb.dll handles files with the pdb (*.pdb) extention

Interface

Each library has simple interface, exports there functions:

  • function PSP_LoadFromFile(FileName, Data: PChar; DataSize: Integer): Integer; stdcall;
    parameter DataSize - max. size of allocated buffer on the PSPad side
    returns real data size
  • function PSP_SaveToFile(FileName, Data: PChar; DataSize: Integer): LongBool; stdcall;
    parameter DataSize - real. size of data
    returns success state - True/False
  • function PSP_Version: Integer; stdcall;
    returns plug-in compatibly version

    • Maximal size is limited to 5,000,000 bytes. If some error occurs in dll (function missing, function returns false), PSPad internal file handling is used. PSPad internally checks the PSPad version Plugin is designed for. A error is raised if version is less then current PSPad interface version and PSPad uses internal file handling.

    Note: Current interface version is 1.

See Topics

  • Export


File Menu

filemenu

new New ... (Ctrl-N)
Create a new file. When selected, this option will display a dialog box that lists all the registered file types (see 'Customizing PSPad - Highlighter Settings'). You can choose from 3 options at the top of the form:

· New File
· Use Template
· Recent Files

New File
This option will open a new file of the selected type. Ordinarily this will be a blank file. However, if a file named 'default.???' (where ??? is the relevant file extension) exists in the \template sub-directory then that file will be used as the basis for the new file.

Use Template
This option will display a list of defined templates. These templates are stored in the \templates sub-directory. More than one template for each file type may exist and you can create your own. Once a template is selected it will be used as the basis for the new file.

There is a checkbox at the bottom of this window; 'File name same as Template Name'. When this option is unset, the newly created file will be called 'NewXX.???' (XX is a number and ??? is the appropriate file extension). When the option is set the file table will be whatever the description of the template was. For example the
template 'Simple HTML' will create a file called 'Simple HTML.html'.

Recent Files
The option will display a Most Recently Used (MRU) file list. Selecting one of the displayed files will open that file. In this respect, the function is 'open file' rather than 'new file'

Note: You can also invoke this dialog by double-clicking anywhere in the file name tabs toolbar.

fileopen Open ...(Ctrl-O)
Opens selected file as text

Open in HEX editor (Shift-Ctrl-O)
Opens selected file directly in HEX editor. You may open any file in the HEX editor, even binaries. Warning: You can ruin an .EXE or .DLL file with one bad character if you don't know what you are doing!

Open Special
See Open Special.

closefile Close File (Ctrl-F4)
Closes the current file. If the file has not been saved you will be prompted to save it.

Close All
Close all files include project

projcompile Compile (Ctrl-F9)
Call the defined compiler. Enabled only if a compiler is set in highlighter settings or in Project Settings.

Open with Program
You can open active file in an external application. Programs are set in Highlighter settings individually for each environment. Note: The first 3 defined applications are assigned the shortcut keys F9, Alt-F9 and Shift-F9 respectively.

save Save (Ctrl-S)
Save the current file. If the file has not previously been saved then the 'File Save As' dialog will open first.

Save As... (F12)
Saves the current file with new name.

Move As...
Saves the current file to new location. The file is deleted from the old location.

saveall Save All (Shift-Ctrl-S)
Saves all changed files. If a file has not previously been saved the 'File Save As' dialog will open first.

Save to FTP
Saves active file to the open FTP connection.

Save Block As...
Saves the selected text as a file.

Export
See Export.

File Info
Shows file statistics.

General
Display word, line and character counts, file path and size, maximum line length date and time of file creation and last save.

Characters
View a count and frequency distribution of each character in the file.

Words
View a count and frequency distribution of each word in the file.

Read-only
Toggles file read-only status. When set as read-only the file name on the file tab is in italics.

print Print (Ctrl-P)
Print the current file.

preview Print Preview (Alt-P)
View a print preview of the current page

Page Settings
Set up page margins, control printing of page header, etc.

setting print Printer Settings
Set printer settings.

Exit (Alt-F4)
Exit program

See Topics

  • Project Menu
  • Main Toolbar
  • File Tabs Context Menu
  • The Statusbar Explained
  • User highlighters
  • View Menu
  • FTP
  • Export


Open Special

openspecialmenu

Reopen Active File (Ctrl-R)
Reopen active file, discarding any unsaved changes made to it.

Open R/O Copy
Opens a new copy of active file as Read Only. Title in file tab is in Italics.

Open Active File with New Name (Ctrl-D)
Opens active file again with name you enter. It combines functions "Save as" and "Open"

Open file from Internet
Opens file specified by URL address directly from internet (http://....). Note: You can also open a file from Internet in an active FTP session, using either "Direct Edit in PSPad" or "Open as Text".

Open file appointed by selection
Opens file whose file name specified by the selected text. If file is URL address, file is open in default web browser. If you press CTRL key when calling this function the source code from web is displayed in PSPad.

There may be a number of files listed in the the line in this menu. This is the Most Recently Used (MRU) list. Clicking on any item in the MRU list will openingh.


Export
exportmenu

sendtodisk save to drive A:
Equivalent to calling 'Save As' and choosing A: as the target drive.

mail4 As e-mail content
The current file is copied in to the body of a new mail message.

mail5 As e-mail attachment
The current file is saved as a file and the file is included in a new mail message as an attachment.

Save using plug-in...
Save the current file with file using file type plug-in. Name of file isn't changed.

Export...
Save the current file, complete with syntax highlighting, as either RTF, HTML, XHTML or TeX file.

Export to clipboard as RTF
Save selected text. complete with syntax highlighting, in RTF format to the clipboard.

Export to clipboard as HTML
Save selected text. complete with syntax highlighting, in HTML format to the clipboard.

Export to clipboard as XHTML
Save selected text. complete with syntax highlighting, in XHTML format to the clipboard.

Export to clipboard as TeX
Save selected text. complete with syntax highlighting, in TeX format to the clipboard.

See Topics

  • File type plug-ins
  • File Menu


Project Menu

New Project...

Creates new project. If you have a project open you will be prompted, if necessary, to save the Project file. If you have any files from the project open you will also be asked if you want them to be closed before the new project is created.
There is no 'Close Project' option. If you explicitly want to close a project then select the 'New Project' option. The new project is not 'active' until at lease on file has been added to it.

Create Project from Directory...

This option allows you to select a directory on your disk (or from a network drive). Once you have made a selection PSPad will:

  1. Name the project using the selected directory name.
  2. Create virtual folders in the Project tree named for any sub-directories found off the selected directory.
  3. Add each file found in the directory structure on disk to the relevant folder in the Project tree.

Add all open files

Add all open files to selected folder in current project.

Open Project...

Opens existing project and restores the project's state.

Save Project

Saves the Project file.

Save As... (F12)

Saves the current file with new name.

Open Folder Files

This option will open in PSPad all of the files in a virtual folder. This option is only available if you click on a virtual folder.

Close Folder Files

This option will close any files that are in a virtual folder if they are open in PSPad. This option is only available if you click on a virtual folder.

Set File as Main for Compiler

Sets the file as main project file. If you run the compiler (see Compiler Settings) the file marked as Main is always sent to the compiler. This option is only available if you click on a file.

Project Information

Shows the project information. (See Working With Projects)

Project Settings...

Shows the project settings. See Working with Projects.

The end of the menu will contain a Most Recently Used list of Project files; double-clicking on any one of them will open that Project file.

See Topics

  • File Menu
  • Main Toolbar
  • File Tabs Context Menu
  • The Statusbar Explained
  • User highlighters
  • Working With Projects
  • Project Context Menu
  • Control Toolbar
  • External applications
  • Command/Compiler Variables
  • Program - behaviour


Edit Menu

If file is in Read/Only mode, text changing function are disabled

editmenu

undo UNDO (Ctrl-Z)
This option undoes the last action. The number of actions you can undo is limited by the setting in Settings / Program Settings / Editor / Max UNDO Operations.

redo Redo (Shift+Ctrl+Z)
This option reapplies any actions undone using the Undo option.

cut Cut (Ctrl+X)
Cuts the selected text and places it in the Windows clip board. The action taken if no text is selected is controlled by Settings / Program Settings / Editor / Extended Cut and Copy. This option is not available if no text is selected and 'Extended Cut and Copy' is not checked.

copy Copy (Ctrl+C)
Copies the selected text and places it in the Windows clip board. The action taken if no text is selected is controlled by Settings / Program Settings / Editor / Extended Cut and Copy. This option is not available if no text is selected and 'Extended Cut and Copy' is not checked.

paste Paste (Ctrl+V)
Places any text in the Windows Clipboard in to the file at the cursor position.

Special Paste
See Special Paste .

delete Delete (Del)
Deletes the selected text. This option is not available if no text is selected.

Lines Manipulation
See Lines Manipulation.

Insert Date Time (Alt+D)
Inserts the current system Time and Date based on the currently selected option in the Date Dialog.

calendar Date Dialog
See Date Dialog.

Insert GUID
This option generates a GUID (Global Unique IDentifier) and inserts it at the cursor position.

Select All (Ctrl+A)
Selects all the text in the file.

Select Inside Brackets (Ctrl+Shift+M)
This option selects all of the text between the following types of brackets <>, {}, [], (). The cursor must be between the brackets for this option to function. The brackets themselves are not selected. Brackets can be nested; this option will select all the text in the innermost set of brackets that the cursor is in.

Select String (Ctrl+Shift+#)
This option only works if the cursor is somewhere within a quoted string and will cause the whole of the string, complete with the enclosing quotes, to be selected. Note: You can nest quotes, but the inner quote character must be different to the outer ones.

A related option is called using Ctrl+#. This option does the same as 'Select String' above but does not include the quotation marks in the selection.

Select Tag (Ctrl+Shift+T)
This function only works if the cursor is somewhere inside an opening tag and is only available when editing files associated with the HTML and XML highlighters. The option will cause all of the text from the beginning of the opening tag to the end of the closing tag to be selected. This will work when tags with the same name are nested.

sort Sort...
See Sort.

Selection Type
See Selection Type.


Special Paste
specpaste

Paste as HTML
If you copy formatted text from some MS product IE or Word, for example - you may paste this into a document along with all the HTML code generated by the source program.

Paste without Cursor Change (Ctrl+Shit+V)
Normally when you paste text in to a file the cursor is moved to the end of the inserted text. If you use this option rather than the normal paste option, the cursor will remain in the place it was before the paste operation

insertfile Insert from File
This option allows you to choose a file the contents of which are inserted in to your file at the cursor position.

See Topics

  • Edit Toolbar
  • HTML Toolbar
  • Program - behaviour


Lines Manipulation

Remove Redundant Blank Lines Remove Remove Redundant Spaces... Remove Email Quoting Insert Text into Lines... Join Lines Swap with Line Above Swap with Line Bellow Copy Line

Copy Line

A copy of the current line is placed on the line immediately below it.

Swap with Line Bellow

Current line is swapped with the one below it. If some text is selected, this function swap all lines from block to reverse order.

Swap with Line Above

Current line is swapped with the one above it. If some text is selected, this function swap all lines from block to reverse order.

Join Lines

Removes all control (13h) and linefeed (0Ah) characters.

Insert Text into Lines... (Alt+I)

See Insert Text Into Lines.

Remove Email Quoting

This option removed the ">" characters that mark quoted lines in email messages. This option will operate on the entire file unless there is highlighted text.

Remove Redundant Spaces...

This option will give you the option of removing leading and/or trailing spaces from the text as well as "compressing" any spaces within a line to a single space. This option will operate on the entire file unless there is highlighted text.

Remove Blank Lines

This option will remove any completely blank lines in either the highlighted text or the entire file.

Remove Redundant Blank Lines

This option will "compress" multiple blank lines in the selected text, or entire file, to a single blank line.


Insert Text Into Lines

This dialog box will preform the following operations:

  • Insert text at beginning and/or end of a line.
  • Insert text at a specified cursor position.
  • Insert line numbering.
  • Insert bullets.
Bullets Before Character Number Skip whitespace on the begin At lines End At lines Begin At lines Begin

This causes text to be entered at left margin not before first character. This means there will be spaces/tabs between inserted text and first character on the line if line is indented. The item marked 1 in the image is where the text to be inserted is entered. This is a drop down list of any entries that have been made in this dialog in this session of PSPad.

At lines End

This causes text to be entered immediately after last character on the line.

Skip whitespace on the begin

This option when checked with insert begin text in front of the first non-whitespace character.

Before Character Number

This causes text to be inserted at column named in the text box. If a line is too short to have a column at the named position then text is added to end of the line. The item marked 2 in the image is an indication of the current cursor position. If the Before Character Number option is selected you can click on this figure to automatically set it as the column position in which text will be entered.

Numbering

This option allows you to insert numbering at the start of every line in the file or every selected line.

The values marked 3 in the picture above show you how your numbering will look when applied.

The value entered in the box marked 4 in the picture is used as the starting value.

The value entered in the box marked 5 in the picture determines how many characters will be used for the numbering. The numbers are left-padded with zeros.

The character(s) entered in the boxed marked 6 above are used to separate the numbering characters from the text on the line.

Bullets

This option inserts bullet marks at the front of each line.

Note: You should switch Word Wrap off before using any of these functions.


Special Conversion

Convert Tabs to Spaces Add Accent Marks Remove Accent from chars Base64 -> ANSI Quoted Printable -> ANSI URL -> ANSI ANSI -> Base64 ANSI -> Quoted Printable ANSI -> URL Hexadecimal -> Decimal Decimal -> Hexadecimal

Decimal -> Hexadecimal

Convert selected text from decimal and hexadecimal. The functions will only work if the selected text contains a valid string in the source base. That is, trying to convert the string "99" from decimal to hex will work (63) but trying to convert the string "cat" won't. Similarly the string "ACE" would convert from hex to decimal (2766) but "AXE" will not. The function will only work on one "word" at a time so the string "112 113 114" would have to be converted in 3 parts.

Hexadecimal -> Decimal

Convert selected text from decimal and hexadecimal.

ANSI -> URL

Convert selected text to encode/decode characters that are not normally allowed in URLs to a form that is acceptable. For example SPACE is converted to %20. If no text is highlighted then these functions will operate on the entire file. Note: encoding multi line files will cause the system to include the string %0D%0A to represent each line break. Further information about the format of URLs can be found here.

ANSI -> Quoted Printable

This functions operate very much line the ANSI->URL functions above but the encoding style is different. For example SPACE is not converted and line break is encoded as =0D=0A. There are a number of internet sites with more information on this subject. Try google to find out more.

ANSI -> Base64

Encoded selected text with base64. Base64-encoded data takes about 33% more space than the original data.

URL -> ANSI

Decodes any %## encoding in selected text.

Quoted Printable -> ANSI

This functions operate very much line the URL->ANSI functions above but the decoding style is different.

Base64 -> ANSI

Decodes Base64-encoded selected text.

Remove Accent from chars

Converts accented characters to their non-accented equivalents.

Add Accent Marks

This option is primarily for use by those dictionaries with accented words. If you highlight a word that has been entered without any accented characters but does have them in the dictionary selecting this option will change the word accordingly.

Convert Tabs to Spaces

Converts tab characters (09h) to spaces. The number of spaces is set by the "Tab Width". See Editor - settings.

See Topics

  • Editor - behaviour
  • Tools
  • Filters


Date Dialog
datedialog

Selecting a date format
You can simply double-click on one of the formats shown in the list and have the current date/time inserted in to your file in that format. Alternatively you can highlight an entry in the list and press ENTER or click on the OK button.

Add
To add a format of your own to the list enter a format picture in the text box at the bottom of the dialog box and press the Add button. The format picture is made up of the following values:

Date
d, dd The day of the month without/with a leading zero.
ddd The 3-letter abbreviated day name.
dddd The full day name.
ddddd The date in the Windows 'Short Date' format.
dddddd The date in the Windows 'Long Date' format.
m, mm The month number without/with a leading zero.
mmm The 3-letter abbreviated month name.
mmmm The full month name.
yy, yyy The year without/with the century.
c Displays the date according the Windows 'Short Date' format followed by the time in the Windows 'Long Time' format.

Time
h, hh Hours past midnight without/with a leading zero.
n,nn Minutes past the hour without/with a leading zero.
s, ss Seconds past the minute without/with a leading zero.
t Displays the time according to the Windows 'Short Time' format.
tt Displays the time according to the Windows 'Long Time' format.
am/pm When used after a time format will display the 'h' component in 12-hour clock format and show 'am' for hours before noon and 'pm' for hours after noon. AM/PM can be used instead to force the display to upper case.

Note: The Windows 'Long Date', 'Short Date', 'Long Time' and 'Short Time' formats are set in the Windows Control panel.

There is also a 'special' format: RFC. This format enters the date/time in to the file with the following format:

ddd, d mmmm yyyy hh:nn:ss z

Where 'z' is the timezone. Note that the format value 'z' above is not enterable in user formats.

To include a literal string include it in single or double quotes. So, for example to Alt+D insert something like:

Last Updated on 2004-01-14 17:00

You would enter a date format like this:

'Last Updated on' yyyy-mm-dd t

Replace
To replace an existing format, click one on it, change the format picture and press the Replace button.

Delete
To delete a format, click one on the item to be deleted and press the Delete button.


Sort
sortdialog

This dialog allows you to control how sorting is performed.

Direction
Ascending / Descending
Set sort order

Case Sensitive
When checked, the sort is case sensitive.

Remove Duplicates
When checked, as well as sorting the file duplicate lines are deleted.

Sort By
Ansi Value
Sort using character set rules.

ASCII Value
Sort using character's ASCII value.

Numeric Value
Sort treating the characters as numbers.

Unless using Numeric Value you may not get the sorting you expect when lines start with a number. Experiment to find the most suitable Sort By option for you needs.

Advanced
Specify Column
Normally sorting compares the characters of the entire line. Checking this option allows you to limit the values the sort operates on.

Column Begin / Column End
Sets the column positions between which the sort compares to determine the line position.

See Topics

  • Working With Projects


Selection Type

This menu allows determine the current selection type.

Select text by clicking and dragging with the left mouse button held down or moving the cursor with the shift key held down. The status bar will display an icon indicating the current selection type (see The Statusbar Explained).

What are the different selection types?

Normal Selection

This is the "standard" type of selection found in may Windows applications.

Column Selection

This selection type allows vertical blocks of text to be selected. The option ALT Sets column mode allows the selection type to be switched to Column Mode when selecting with the mouse by simply holding down the ALT key (see Editor - behaviour).

Line Selection

This selection type allows only complete lines to be selected.

Block Selection (F8)

This selection type is activated using the F8 key. When first activating block selection, the cursor position is saved as the starting selection point. While activated the cursor may be move by any means to a new location. Once deactivated by pressing the F8 key again, a normal selection is made from the starting point to the current cursor point. This is useful when selected a large amount of text that may span may pages.

See Topics

  • View Menu
  • Look Toolbar
  • Editor - behaviour


Search Menu

If file is in Read/Only mode, text changing function are disabled

searchmenu

find Find... (Ctrl+F)
Opens the Find dialog. See Search and Replace.

replace Replace... (Ctrl+H)
Opens the Replace dialog. See Search and Replace.

Find Next (F3)
Uses the previously entered search criteria to find the next occurrence, ie. one closer to the end of the file. This option is not available if a search has not been carried out.

Find Previous (Shift+F3)
Uses the previously entered search criteria to find the previous occurrence, ie. one closer to the start of the file. This option is not available if a search has not been carried out.

Next Occurrence of Current Word (Ctrl+Shift+Down)
Search for the next occurrence of the word under the cursor. If not text is selected (ie the cursor is just 'in' the word) then the first press of the shortcut selects the word and the 2nd and subsequent presses find next occurrence of it. This option is further controlled by the Settings / Program Settings / Editor / Whole Words for Find at Cursor setting.

Previous Occurrence of Current Word (Ctrl+Shift+Up)
Search for the previous occurrence of the word under the cursor. If not text is selected (ie the cursor is just 'in' the word) then the first press of the shortcut selects the word and the 2nd and subsequent presses find previous occurrence of it. This option is further controlled by the Settings / Program Settings / Editor / Whole Words for Find at Cursor setting.

Incremental Search (Ctrl+E)
This option allows you to see the results of what you are searching for immediately. After calling this function an edit field (with yellow background) appears on status bar. What you type is immediately searched for in the editor from cursor position to end of file. Any matched text will be highlighted (see below). This function will only find the next occurrence of the word you are typing.

incrementalsearch

Goto Line (Alt+G)
This option produces the dialog below and allows you to move the cursor to the position detailed.

gotoline

Matching Bracket (Ctrl+M)
Search for matching bracket. If the cursor is places immediately before or after any of the bracket characters and then this option is called the cursor will be moved to the point immediately before the matching bracket.

The bracket characters are (), [], {}, and <>.

filesearch Search/Replace in Files (Alt+F)
See Search and Replace in Files.

G Google Search...
See Google Search.

Create Bookmark (Ctrl+Shift+0 ... Ctrl+Shift+9 / Alt+Left/Right)
This option opens a list of available book marks. When an unallocated one is selected the current line is bookmarked. If you click on an allocated bookmark it is deallocated. The shortcut Alt+Left allocates the next available bookmark to the current line. Alt+Right deallocates a bookmark if one is set for the current line.

Goto Bookmark (Ctrl+0 ... Ctrl+9 / Alt+Up/Down)
This option produces a list of bookmarks and will move the cursor to the bookmarked spot in the file if an allocated bookmark is selected. The keystroke Alt+Down will take you to the next bookmarked point in the file, Alt+Up will take you to the first bookmarked point in the file before the cursor position.

See Topics

  • Search and Replace
  • Regular Expressions
  • Main Toolbar
  • Editor - behaviour
  • Google Search
  • HTML Toolbar


Search and Replace

The dialogs for Find and for Replace are very similar, so this page will just discuss the Replace dialog and point out the changes where necessary.

replacemenu

Find
There are 2 controls here; one in which you enter your search criteria and a button that provides popup help on regular expressions. When you call up the Find dialog the Find box will be prefilled with the word under the cursor. You can type over the entry if you are looking for another word. There is also a dropdown list of phrases previously searched for.

The button brings up the popup help shown below.

findrehelp

For details on using regular expressions in your Find and Replace queries, see Regular Expressions.

Replace (Replace dialog only)
There are 2 controls here; one in which you enter the replace string and a button that provides popup help on the regular expressions you can use when replacing text. When you call up the Replace dialog, the Replace box will be filled with the last string you entered in it. If this is the first time you have called the Replace dialog since starting PSPad then the Replace box will be empty. You can type over any text in box. There is also a dropdown list of strings previously used.

The button brings up the popup help window shown below.

replacerehelp

Options
Case Sensitive
When this option is set the search is done case sensitively. That is to say, for example, that 'Dog', 'DOG' and 'dog' are all treated as different words whereas they are not if the option is not set.

Whole Words Only
When this option is set the system will only find complete words matching the search criteria. So, for example, if 'cat' is the search string the system will not match occurrences of words like 'category' or 'concatenate'.

Prompt Each Replace (Replace dialog only)
Replace usually replaces all matching text in one go. When this option is set PSPad will prompt for confirmation before each change.

Regular Expressions
See Regular Expressions.

Direction
The direction to search. Note: This option is ignored if searching in selected text.
Forward
Search from the cursor position to the end of the file.

Backward
Search from the cursor position to the beginning of the file.

Entire Scope
Search the entire file. In effect, this option moves the cursor to the and searches forward to the end of the file.

Scope
Global
Search the entire file.

Selected Text
Search just the selected text

Copy
This option copies the lines that contain the search text to a new file called 'Search Results'. See the image below for an example.

searchcopy

Note: The Copy option will create multiple copies of a line in the Search Results file if the search value is matched more than once on a line.

Add Line Numbers
If this option is set then the 'Search Results' file created using the Copy button will have lines numbers prepended to each line. These numbers represent the line in the original file.

Count
The option causes PSPad to present a dialog showing the number of matches there are in the current file of the search criteria.

List
List works like copy except it shows the results in the LOG pane rather than as a new file.

See Topics

  • Search Menu
  • Regular Expressions
  • Main Toolbar
  • Editor - behaviour
  • Edit Toolbar
  • Project Toolbar


Search and Replace in Files
Find in files only works with files on disk. If you have edited a file you will find your changes will not be seen by Find in Files routine unless those files are saved before calling it.

searchinfiles

Search/Replace
Text to Find
The text to search for.

Replace With
If checked allows a value to be included to replace the any matches of the search condition.

Whole Words Only
When this option is set the system will only find complete words matching the search criteria. So, for example, if 'cat' is the search string the system will not match occurrences of words like 'category' or 'concatenate'.

Case Sensitive
When this option is set the search is done case sensitively. That is to say, for example, that 'Dog', 'DOG' and 'dog' are all treated as different words whereas they are not if the option is not set.

Prompt Each Replace
Replace usually replaces all matching text in one go. When this option is set PSPad will prompt for confirmation before each change. This option is only available if 'Replace With' (above) is checked.

Files Code Page
Sets the 'Text to Find' value to the selected code page for matching with the file contents.

Search Scope
Project Tree
Search all files in the current Project Tree.

Open Files
Search only the currently open files?

Selected Directory
Search all the files in the selected directory. There is a button next to the text entry area that allows you to navigate you file system to select the directory required.

File Masks
This option allows you to limit the files searched when setting 'Selected Directory' as the search scope. The filer is a list of semicolon (;) separated file masks. Example masks include:

*.* (All files)
*.js (Javascript files)
ab*.* (all files beginning 'ab')

Include Sub-directories
When checked the search will include all sub-directories below the selected directory. This option is only available if the search scope is 'Selected Directory'

Search Result
The search result are displayed under the 'Search in Files Results' LOG window.

Click on a file bar to expand it and list the line numbers that match the search criteria or, if the bar is already expanded, to close it.

In an expanded file bar, double-click on a line to load the file in to PSPad and have the cursor move to the selected line.

findinfilesresults

There is a toolbar on the left hand side of the LOG window when viewing the Find in Files results

fificonopen Expand All
This expands all the file bars in the results window.

fificonclose Collapse All
This collapses all of the file bars in the LOG window.

fificonopenall Open All
This opens all of the files listed in the results window in PSPad.

fifopennew Open results in new document
This creates a new file with a report of all the matches found. See below for an example.

fifopenneweg

Note:
· Search in Files works only with files on disk. So I recommend you save all open files before searching / replacing if those files are in search scope.
· Find and read 2 times before you run Replace! Changes cannot be undone!
· There is no option for Regular Expressions in Search / Replace in Files.


Google Search

This option will submit a query to Google. Note: You must have a functioning internet connection for this option to work correctly.

googlesearch

Simple Search
Enter a phrase or keyword to search for.

Advanced Search
All Words
Google will only return pages that contain all of the words typed in this box.

Exact Phrase
Google will only return pages that contain the exact phrase typed here. If you have text highlighted in you file when calling up the google search it will be copied in to this box.

Any Word
Google will return any pages that contain any of the words typed in this box.

Except Words
This box is used to limit the pages that might be selected by one of the above options and causes Google to discard any pages that include the words included here. This option, if used on its own, will not return any pages.

Search Server Only
You can search one of a number of servers selected from this dropdown list rather than searching the google server's

Results on a page
This option allows you to set the number of pages listed on each page.

See Topics

  • Search Menu
  • HTML Toolbar


Regular Expressions

What are regular expressions ?
Regular Expressions are a widely-used method of specifying patterns of text to search for. Special metacharacters allow you to specify, for instance, that a particular string you are looking for occurs at the beginning or end of a line, or contains n recurrences of a certain character.

Regular expressions may look ugly to novices, but are actually a very simple, handy and powerful tool. (well, usually simple ;) )

Simple Matches
Any single character matches itself, unless it is a metacharacter with a special meaning described below.

A series of characters matches that series of characters in the target string, so the pattern "bluh" would match "bluh'' in the target string. Quite simple, eh ?

You can cause characters that normally function as metacharacters or escape sequences to be interpreted literally by 'escaping' them. Do this by preceding them with a backslash "\". For instance: metacharacter "^" match beginning of string, but "\^" match character "^", "\\" match "\" and so on.

Examples:
foobar          matches string 'foobar'
\^FooBarPtr     matches '^FooBarPtr'

Escape Sequences
Characters may be specified using a escape sequences syntax much like that used in C and Perl: "\n'' matches a newline, "\t'' a tab, etc. More generally, \xnn, where nn is a string of hexadecimal digits, matches the character whose ASCII value is nn. If You need wide (Unicode) character code, you can use '\x{nnnn}', where 'nnnn' is one or more hexadecimal (base 16) digits (1,2,3,4,5,6,7,8,9,A,B,C,D,E,F). Hex digit letters may be in upper or lower case.

  \xnn     char with hex code nn
  \x{nnnn} char with hex code nnnn (one byte for plain text and two bytes for Unicode)
  \t       tab (HT/TAB), same as \x09
  \n       newline (NL), same as \x0a
  \r       car.return (CR), same as \x0d
  \f       form feed (FF), same as \x0c
  \a       alarm (bell) (BEL), same as \x07
  \e       escape (ESC), same as \x1b

Examples:
foo\x20bar   matches 'foo bar' (note space in the middle)
\tfoobar     matches 'foobar' predefined by tab

Character Classes
You can specify a character class, by enclosing a list of characters in [], which will match any one character from the list. If the first character after the "['' is "^'', the class matches any character not in the list.

Examples:
foob[aeiou]r   finds strings 'foobar', 'foober' etc. but not 'foobbr', 'foobcr' etc.
foob[^aeiou]r  find strings 'foobbr', 'foobcr' etc. but not 'foobar', 'foober' etc.

Within a list, the "-'' character is used to specify a range, so that a-z represents all characters between "a'' and "z'', inclusive.

If You want "-'' itself to be a member of a class, put it at the start or end of the list, or escape it with a backslash. If You want ']' you may place it at the start of list or escape it with a backslash.

Examples:
[-az]      matches 'a', 'z' and '-'
[az-]      matches 'a', 'z' and '-'
[a\-z]     matches 'a', 'z' and '-'
[a-z]      matches all twenty six small characters from 'a' to 'z'
[\n-\x0D]  matches any of ASCII #10(Lf),#11,#12(Ff),#13(Cr).
[\d-t]     matches any digit, '-' or 't'.
[]-a]      matches any char from ']'..'a'.

Metacharacters
Metacharacters are special characters which are the essence of Regular Expressions. There are different types of metacharacters, described below.

Metacharacters - Line Separators
^      start of line
$      end of line
\A     start of text
\Z     end of text
.      any character in line

Examples:
^foobar     matches string 'foobar' only if it's at the beginning of line
foobar$     matches string 'foobar' only if it's at the end of line
^foobar$    matches string 'foobar' only if it's the only string in line
foob.r      matches strings like 'foobar', 'foobbr', 'foob1r' and so on

The "^" metacharacter by default is only guaranteed to match at the beginning of the input string/text, the "$" metacharacter only at the end. Embedded line separators will not be matched by "^'' or "$''. You may, however, wish to treat a string as a multi-line buffer, such that the "^'' will match after any line separator within the string, and "$'' will match before any line separator. You can do this by switching On the modifier /m.

The \A and \Z are just like "^'' and "$'', except that they won't match multiple times when the modifier /m is used, while "^'' and "$'' will match at every internal line separator.

Metacharacters - Predefined Classes
\w     an alphanumeric character (including "_")
\W     a nonalphanumeric
\d     a numeric character
\D     a non-numeric
\s     any space (same as [ \t\n\r\f])
\S     a non space

You may use \w, \d and \s within custom character classes.

Examples:
foob\dr     matches strings like 'foob1r', ''foob6r' and so on but not 'foobar', 'foobbr' and so on
foob[\w\s]r matches strings like 'foobar', 'foob r', 'foobbr' and so on but not 'foob1r', 'foob=r' and so on

TRegExpr uses properties SpaceChars and WordChars to define character classes \w, \W, \s, \S, so You can easely redefine it.

Metacharacters - Word Boundaries
\b     Match a word boundary
\B     Match a non-(word boundary)

A word boundary (\b) is a spot between two characters that has a \w on one side of it and a \W on the other side of it (in either order), counting the imaginary characters off the beginning and end of the string as matching a \W.

Metacharacters - Iterators
Any item of a regular expression may be followed by another type of metacharacters - iterators. Using this metacharacters You can specify number of occurrences of previous character, metacharacter or subexpression.

*      zero or more ("greedy"), similar to {0,}
+      one or more ("greedy"), similar to {1,}
?      zero or one ("greedy"), similar to {0,1}
{n}    exactly n times ("greedy")
{n,}   at least n times ("greedy")
{n,m}  at least n but not more than m times ("greedy")
*?     zero or more ("non-greedy"), similar to {0,}?
+?     one or more ("non-greedy"), similar to {1,}?
??     zero or one ("non-greedy"), similar to {0,1}?
{n}?   exactly n times ("non-greedy")
{n,}?  at least n times ("non-greedy")
{n,m}? at least n but not more than m times ("non-greedy")

So, digits in curly brackets of the form {n,m}, specify the minimum number of times to match the item n and the maximum m. The form {n} is equivalent to {n,n} and matches exactly n times. The form {n,} matches n or more times. There is no limit to the size of n or m, but large numbers will chew up more memory and slow down r.e. execution.

If a curly bracket occurs in any other context, it is treated as a regular character.

Examples:
foob.*r     matches strings like 'foobar', 'foobalkjdflkj9r' and 'foobr'
foob.+r     matches strings like 'foobar', 'foobalkjdflkj9r' but not 'foobr'
foob.?r     matches strings like 'foobar', 'foobbr' and 'foobr' but not 'foobalkj9r'
fooba{2}r   matches the string 'foobaar'
fooba{2,}r  matches strings like 'foobaar', 'foobaaar', 'foobaaaar' etc.
fooba{2,3}r matches strings like 'foobaar', or 'foobaaar' but not 'foobaaaar'

A little explanation about "greediness". "Greedy" takes as many as possible, "non-greedy" takes as few as possible. For example, 'b+' and 'b*' applied to string 'abbbbc' return 'bbbb', 'b+?' returns 'b', 'b*?' returns empty string, 'b{2,3}?' returns 'bb', 'b{2,3}' returns 'bbb'.

Metacharacters - Alternatives
You can specify a series of alternatives for a pattern using "|'' to separate them, so that fee|fie|foe will match any of "fee'', "fie'', or "foe'' in the target string (as would f(e|i|o)e). The first alternative includes everything from the last pattern delimiter ("('', "['', or the beginning of the pattern) up to the first "|'', and the last alternative contains everything from the last "|'' to the next pattern delimiter. For this reason, it's common practice to include alternatives in parentheses, to minimize confusion about where they start and end.

Alternatives are tried from left to right, so the first alternative found for which the entire expression matches, is the one that is chosen. This means that alternatives are not necessarily greedy. For example: when matching foo|foot against "barefoot'', only the "foo'' part will match, as that is the first alternative tried, and it successfully matches the target string. (This might not seem important, but it is important when you are capturing matched text using parentheses.)

Also remember that "|'' is interpreted as a literal within square brackets, so if You write [fee|fie|foe] You're really only matching [feio|].

Examples:
foo(bar|foo)  matches strings 'foobar' or 'foofoo'.

Metacharacters - Subexpressions
The bracketing construct ( ... ) may also be used to define r.e. subexpressions (after parsing, you can find subexpression positions, lengths and actual values in MatchPos, MatchLen and Match properties of TRegExpr, and substitute it in clip strings by TRegExpr.Substitute).

Subexpressions are numbered based on the left to right order of their opening parenthesis. First subexpression has number '1' (whole r.e. match has number '0' - You can substitute it in TRegExpr.Substitute as '$0' or '$&').

Examples:
(foobar){8,10}        matches strings which contain 8, 9 or 10 instances of the 'foobar'
foob([0-9]|a+)r       matches 'foob0r', 'foob1r' , 'foobar', 'foobaar', 'foobaar' etc.
(abc(def)ghi(123))xzy matches abcdefghi123xyz (the only match),

Then backreferences:
\1 = abcdefghi123,
\2=def,
\3=123,
\0=abcdefghi123xyz (the whole match)

We could find the same string using metacharacter Iterators with: (\w{3}([d-f]{3})...(\d*))xyz and the backreferences would have the same values. And yet the pattern would also match: '123fdd@#$4444xyz', 'bbbeeeabc1234567xyz', 'ddddddaaaxyz'

Metacharacters - Backreferences
Metacharacters \1 through \9 are interpreted as backreferences in the Find text box. When used outside of the regular expression, such as in the Replace field, metacharacters $1 through $9 are interpreted as backreferences to the last find.

\<n> matches previously matched subexpression #<n>.

Find Examples:
(.)\1+         matches 'aaaa' and 'cc'.
(.+)\1+        also match 'abab' and '123123'
(['"]?)(\d+)\1 matches '"13" (in double quotes), or '4' (in single quotes) or 77 (without quotes) etc

Replace Examples:
Date format change from dd.mm.yyyy to yyyy-mm-dd. This will turn the European date style 26.8.1994 or 26/8/1994 into 1994-8-26.
Search: ([0-9]{1,2}).([0-9]{1,2}).([0-9]{4})
Replace: $3-$2-$1

TIP: Make sure you check the box for "Regular Expression". And I always check, "Prompt Each Replace" to avoid unintended replacements. Make sure your hit "List" or "Count" before you hit "Replace". You want to make sure you get all the strings you had in mind.

For explanation we used help text on regular expressions by Andrey V. Sorokin (http://anso.virtualave.net) Note: This site uses lots of popups!

Regular Expression Tutorials
The following is a list of a few sites that contain tutorials on both regular expressions in general and their use in specific loanguages:

http://www.regular-expressions.info/ (General Tutorial)
Regular Expression HOWTO (For Python)
Regular expressions in UNIX (Spring 1995)
Perl Regular Expression Tutorial

See Topics

  • Search Menu
  • Search and Replace
  • Main Toolbar


View Menu

Toolbars

See Toolbars.

Tool Panel (Ctrl+F2)

Toggles the tool panel on and off.

Spell Check

Toggles the spell checker on and off. When first switched on it will cause PSPad to scan the entire file and mark mis-spelled words; this may take some time. When this option is active, the spell button will be underlined in red (see Look Toolbar).

Active Line

Toggles current line highlighting. When this option is activated a tick will appear in the menu next to the Active Line item (see Colors).

Syntax

Toggles syntx highlighting on and off. This option is disabled if the current file does not have an highlighter associated with it.

Line Numbers

Toggles line numbering (see Look Toolbar). Whether or not the left-hand gutter disappears when this option is switched off is controlled by the Autohide Gutter option (see Program - look).

Word Wrap Lines (Ctrl+W)

Toggles word wrap on and off (see Look Toolbar). The performance of this option and its availability are effect by its options (see Editor - behaviour).

Special Chars

Toggles on and off the option to display "special" characters as visibile ones. Special characters include spaces, tabes and carriage returns.

Ruler

Toggles the ruler at the top of the file edit window on and off.

Hex Edit MODE

Switches between Hex and normal edit modes.

Show OEM chars

This switches between the DOS/IBM and Windows extended character set. This is used to display characters 128 through 255. The DOS/IBM extended character set (known as OEM) contains the line draw characters found in a number of text files. Note: that this only affects the display and not how the file is saved.

Stay on Top

Toggles PSPad's ability to be the topmost window on the desktop.

Change Syntax...

Display a dialog to change the highlighter used for the active document. For a new file that is not yet saved it changes file type (extension). Only selected highlighters are allowed (see Syntax highlight). This also alows control the selected SQL dialect i.e. MSSQL or MySQL.

See Topics

  • Look Toolbar
  • File Menu
  • Tools Menu
  • Program - look
  • Program - behaviour
  • Toolbars
  • Selection Type
  • Editor - behaviour


Toolbars

This menu allows you to control which toolbars are displayed.

Hide All Show All Macro HTML Control Look Edit Main Project Show/hide panel Show/hide panel (F2)

Toggles the toobar panel off and on. Use this, along with Tool Panel on the View Menu, to give you more editor screen space (see View Menu).

Project

Toggle the Project Toolbar on and off (See Project Toolbar).

Main

Toggle the Main Toolbar on and off (see Main Toolbar).

Edit

Toggle the Edit Toolbar on and off (see Edit Toolbar).

Look

Toggle the Look Toolbar on and off (see Look Toolbar).

Control

Toggle the Control Toolbar on and off (see Control Toolbar).

HTML

Toggle the HTML Toolbar on and off (see HTML Toolbar).

Macro

Toggle the Macro Toolbar on and off (see Macro Toolbar).

Show All

This shows all of the toolbars.

Hide All

This hides all of the toolbars.

See Topics

  • View Menu


Project Toolbar

projecttoolbar

For more information on projects see Working With Projects and Project Menu.

projectmenuswitchtoolbar Show/Hide Tool Panel (Ctrl+F2)
This toggles the toobar panel off and on. Use this, along with Tool Panel on the View Menu, to give you more editor screen space.

projectmenunew New Project
Create a new project with an option to close an existing one. For further details see Project Menu.

projectmenuopen Open Project (Ctrl+Shift+P)
Open an existing project. Clicking on the arrow presents a menu with options to open a project or create a project from a folder. In addition, the menu will include a list of most recently accessed project files. For further details see Project Menu.

projectmenusave Save Project
Save the current project. For further details see Project Menu.

projectmenuswitchlog Show/Hide LOG panel
This toggles the LOG panel on and off.

See Topics

  • File Tabs Context Menu
  • Working With Projects
  • Project Context Menu
  • Search and Replace


Main Toolbar

maintoolbar

maintoolbarnew New
Create a new file. Clicking on the button will create a file of the same type as the active file is there is one. If there is no active file then a .TXT file will be created. If you click on the arrow you will be offered a list of active file types to select the new file from.

maintoolbaropen Open
Open an existing file. If you click on the arrow you will be presented with a menu similar to File / Open Special.

maintoolbarsave Save
Save the current file. This option is only available if there is an active file with unsaved changed. If you click on the arrow you will be presented with a menu containing the save, move and export options from the File menu.

maintoolbarsaveall SaveAll
Save all of the currently open files.

maintoolbarfind Find
Opens the Find dialog. See Search and Replace for more information.

maintoolbarreplace Replace
Opens the Replace dialog. See Search and Replace for more information.

maintoolbarfindinfiles Find In Files
Opens the Find In Files dialog. See Search and Replace in Files for more information.

maintoolbarbrackets Find Matching Bracket
Search for matching bracket. If the cursor is places immediately before or after any of the bracket characters and then this option is called the cursor will be moved to the point immediately before the matching bracket.

The bracket characters are (), [], {}, and <>.

maintoolbarbookmarks View Bookmark List
When selected, this option will produce a list of active bookmarks in the file; double-clicking on an item in the list will move the cursor to the relevant place in the file. This option is not available if there are no bookmarks defined in the active file.

maintoolbarpreview Print Preview
Generate a print preview of the active file.

maintoolbarprint Print
Print the active file

maintoolbarundo Undo
This option undoes the last action. The number of actions you can undo is limited by the setting in Settings / Program Settings / Editor / Max UNDO Operations.

maintoolbarredo Redo
This option reapplies any actions undone using the Undo option.

See Topics

  • File Menu
  • Project Menu
  • File Tabs Context Menu
  • The Statusbar Explained
  • User highlighters
  • Search Menu
  • Search and Replace
  • Editor - behaviour
  • Regular Expressions


Edit Toolbar

edittoolbar

copy Copy (Ctrl+C)
Copy selected text. For more details see Edit Menu.

cut Cut (Ctrl+X)
Cut selected text. For more details see Edit Menu.

paste Paste (Ctrl+V)
Paste the contents of the clipboard in to the file at the cursor position. For more details see Edit Menu.

delete Delete (DEL)
Delete selected text. For more details see Edit Menu.

See Topics

  • Search and Replace
  • Special Paste


Look Toolbar

looktoolbar

wordwrap Wordwrap (Ctrl+W)
Toggle word wrap on and off. See View Menu for more details.

specchars Show Special Characters
Toggle special character viewing on and off. See View Menu for more details.

syntaxe Show Syntax
Toggle syntax highlighing on and off. See View Menu for more details.

syntx Change Syntax
Change syntax / File Type. See View Menu for more details.

linenum Line Numbering
Toggle line numbering on and off. See View Menu for more details.

readonly Read Only
Mark the file read-only in PSPad. See File Tabs Context Menu for more details.

spellicon View Spelling Errors
Toggle spelling error indication on and off. See View Menu for more details.

stayontop Stay on Top
Togggle on and off PSPad's ability to remain as the top most window on the desk top. See View Menu for more details.

See Topics

  • Selection Type
  • View Menu
  • Editor - behaviour


Control Toolbar

controltoolbar

externalprogram Run an External Program (F9, Shift+F9, Alt+Shift+F9)
Run the file in one of the defined "External Applications". See Highlighter Settings / External Applications for more information

compile Compile (Ctrl+F9)
Run the file through the compiler. See Highlighter Settings / Compiler Settings for more information.

commandline Command Line
Run a command. See Running a Command.

See Topics

  • File Tabs Context Menu
  • Working With Projects
  • Project Context Menu
  • Project Menu
  • External applications
  • Command/Compiler Variables


HTML Toolbar

htmltoolbar

All of the functions on this toolbar, except where otherwise stated, are disabled when editing anything other than HTML or XML files.

htmltoolbarreformat Reformat HTML (Ctrl+T)
This option reformats the HTML file to make the code easier to read. The functionality of the HTML code itself is unchanged.

htmltoolbarcompress Compress HTML
This option conpresses the HTML file by removing unnecessary spaces and concatenates lines up to the maximum line length set in Program Settings / HTML / Tools ?maximum Compressed Line Length. The functionality of the HTML code itself is unchanged.

htmltoolbarcolors Open Colour Selector (Alt+C)
This option opens the colour selector dialog. See Tools Menu / Colour Selector for more details. This option is available for all file types.

htmltoolbarhtml2text HTML to Text
This option removes all HTML tags from the file and creates a new text file that it populates with the result. The original file is unchanged.

htmltoolbartage2uppercase HTML Tags to Uppercase
This option converts all of the tags in the document to uppercase. This option operates on the entire file, regardless of whether or not text is selected.

htmltoolbartag2lowercase HTML Tags to Lowercase
This option converts all of the tags in the document to lowercase. This option operates on the entire file, regardless of whether or not text is selected.

htmltoolbarinternalbrowser Open File in Internal Browser (F10)
This option displays the file in PSPad's own internal browser. This browser is useful for displaying simple pages but will not necessarily execute pages as if they were installed on a server.

htmltoolbartopstyle Open in TopStyle
Opens TopStyle and displays the selected text. This option is only useful for editing CSS Stylesheets.

htmltoolbargoogle Google Search
Perform an internet search using Google. See Search Menu / Google Search for more details. This option is available for all file types.

See Topics

  • Special Paste
  • Tools
  • Search Menu
  • Google Search
  • HTML Menu


Macros Toolbar

macrotoolbar

Macros are used to record a number of file navigation and editing functions so that they can be repeated later. More information on Macros can be found in Working with PSPad / Macros. A list of the supported actions for macros can be found at Working with PSPad / Macros / Macro Commands.

macrotoolbarrecord Record (Ctrl+F5)
This option toggles macro recording on and off. Note that when PSPad is recording a macro the button changes to macrostop and the cursor changes to macrocursor.

macrotoolbarplay Play (F5, F6, Alt+F6, Ctrl+Alt+F6)
This option opens a menu that allows you to select either one of the up to 4 macros configured to run with a hotkey. It also allows you to open the Macro Manager.

See Topics

  • Running a Command


Format Menu

Font...

Changes font for regular editor or HEX editor (independently). You cannot set the general font style to Bold or Italic because that would clash with Syntax Highlighters, which use those features.

Char Case Change

Changes the case of the selected text (see Case change).

Block Format

Apply indent, line, and justify formats to selected text (see Block format).

Code Case Change...

Apply char case change for specific parts of source code using selected highlighter attribute (keyword, comments, ...).

Add/Remove Comment (Shift+Ctrl+A)

Add/remove comment char (string) to the begin of each line, based on selected syntex. Works only for highlithers that support line comments.

Auto detect CP (Czech only)

Specific to Czech and Slovak users. It won't work in elsewhere.

ANSI

Windows native code page. No CP conversion.

Kamenickych (CP895)

Specific to Czech and Slovak users.

OEM

DOS OEM charset.

ISO 8859-2

ISO extended 8 bit ASCII table white chars for eastern europe.

UTF-8

8-bit Unicode Transformation Format.

UTF-16 LE

16-bit Unicode Transformation Format, little-endian byte order.

UTF-16 BE

16-bit Unicode Transformation Format, big-endian byte order.

DOS (CR+LF)

The end-of-line delimiter for text files on DOS/Windows systems is a carriage return followed by a line feed (CR+LF).

UNIX (LF)

The end-of-line delimiter for text files on Unox systems is a line feed character (LF).

MAC (CR)

The end-of-line delimiter for text files on Mac OS systems is a carriage return (CR).

Note: If file is in Read/Only mode, text changing function are disabled

File formats

End-Of-Line

The first 32 entrys in the ASCII code table is used for (non-printing) control character.
Number 10 (decimal) means a LF (Linefeed, go one line down)
Number 13 (decimal) means a CR (carriage return , go to Pos1)
The various operation systems use various line end chars.
Dependent on what OS you want to use that file, you have to use the right option:

  • DOS
  • UNIX
  • MAC

Note: If you open such files in PSPad, PSPad use the right file format for you (see Format menu and status line). On other hand, if you open e.g. an UNIX file in Notepad, you see a long line with little boxes. Not easy to read. You can convert such files by open them in PSPad, select the File format you want to convert, and save that file again.

ANSI

Windows native code page. No CP conversion. ISO 6937/2 (nearly like the from ISO extended 8 bit ASCII table 8859-1 white chars for western europe, aka ISO-Latin-1)
Related to code page Win-1252
For normal Windows use for western europe, Danish, Dutch, English, Faeroese, Finnish, French, German, Icelandic, Irish, Italian, Norwegian, Portuguese, Spanish and Swedish.

OEM

From IBM extended 8 bit ASCII table.
Related to code page DOS-850 Multilingual Latin 1 and DOS-437 US.
Use for files to be writen or read unter DOS in western europe.
OEM chars are used e.g. in some .NFO .DIZ file to display "pictures" using OEM semigrafic chars. This feature enables you see correct Graphic.

Kamenicky

From IBM extended 8 bit ASCII table.
Related to code page DOS-895. Use for files to be writen or read unter DOS in eastern europe.

ISO 8895-2

Related to code page WIN-1250 \ DOS-852.
For normal Windows use for eastern europe, Albanian, Czech, English, German, Hungarian, Polish, Rumanian, (Serbo-)Croatian, Slovak, Slovene and Swedish.

UNICODE

(This means UTF-16 (Unicode transformation format) or UCS-2)
New ISO standard 10646 who contain all the varios code pages above and much more.
UNICODE use 16 bit to encode the file, so the file is 2 times bigger than ANSI or ISO 8895-x plus 2 Byte BOM (Byte Order Mark) "FF FE" (seen in ANSI as ÿþ ) for ident such UNICODE files.
UNICODE is use for special chars like them in Cyrillic, Arabic, Greek, Nordic, Far East. Windows NT supports UNICODE, but you may have not the right fonts to see such spechial chars.

UTF-8

This is a flexible form from UNICODE.
UTF-8 encoded chars, that normal has to use 16 bit, in 8 bit code.
If there only ASCII standard chars in your file, this file got the same size as ASCII + 3 Byte BOM for ident, "EF BB BF" (seen in ANSI as ï»¿).
If there are special characters, the will be converted in an 8 bit format and the file increase for that.
(e.g. Ä is encodet in UTF-8 as &#196; using standard ASCII chars.)
UTF-8 is used for special chars but to be compatible with other 8 bit char sets.

Note: You must have the right font and code page to display some characters correct.

See Topics

  • Case change
  • Block format


Case change

To Upper Case (Ctrl+Alt+U)

Convert selected text to upper case.

To Lower Case (Ctrl+Alt+L)

Convert selected text to lower case.

Capitalize (Ctrl+Alt+T)

Convert the first letter of all words in the selected text to upper case and the remaining letters to lower case.

Invert Case

Inverts the case of all selected text.

Sentensize

Convert the first letter of all sentence's in the selected text to upper case and the remaining letters to lower case.

See Topics

  • Format Menu
  • Block format


Block format

Indent Block (Shift+Ctrl+I)

Increase block indentation. Works only when block of lines is selected.

UnIndent Block (Shift+Ctrl+U)

Decrease block indentation. Works only when block of lines is selected.

Reformat (paragraph=blank line) (Ctrl+K)

Reformat text with right edge mark. After reformat, all redundant line breaks and redundant spaces are removed. Selected block is reformatted. With no selection, the actual paragraph is reformatted. Paragraph separator is empty line.
For example: if you want to reformat text to 40 chars width, click on ruler (position 40) to set right edge mark and pres Ctrl+K. Now each line is 40 chars or less.
Note: Enabled only when WordWrap is OFF!

Reformat (paragraph=short line) (Shift+Ctrl+K)

Reformat text with right edge mark. After reformat, all redundant line breaks and redundant spaces are removed. Selected block is reformatted. With no selection, the actual paragraph is reformatted. Paragraph separator is sort line (about half of right edge).
Note: Enabled only when WordWrap is OFF!

Justify Left (Ctrl+Alt+Left)

Whole text or selected block will be justified to left.

Justify Right (Ctrl+Alt+Right)

Whole text or selected block will be justified to right.

Justify Center

Whole text or selected block will be justified to center.

Block Align

Whole text or selected block will be right and left justfied. Both sides square.

See Topics

  • Format Menu
  • Case change


Tools Menu

Show Clips (Ctrl+Space)

Display list of code clips corresponding to selected highlighter (see Context Files).

Auto Completion (Ctrl+J)

Very usable function. Write several chars and press Ctrl+J. If only one word is found to match, it is automatically finished. In other cases, it lists words from which you can select. Use Down & Enter to select.
Word list comes only from text previously written in the active document.

Repeat last command (Alt+Q)

This function repeats any any previous program action.

Spell Check

Toggles the spell checker on and off. When first switched on it will cause PSPad to scan the entire file and mark mis-spelled words; this may take some time. When this option is active, the spell button will be underlined in red (see Look Toolbar).

Macro

Toggle the Macro Toolbar on and off (see Macro Toolbar).

Create Clip from Block (Ctrl+Alt+Space)

Wizard for creation new clip. Select block and pres hotkey. Dialog is shown, you write clip name, description, hotkey (optional) and new clip is ready to use.

Text Differences

PSPad allows you compare contents of two text files and displays color highlighted differences in new window (see Text Differences).

Code Explorer window (Shift+Ctrl+E)

A window that helps to quickly orient you to your code. Try it with an HTML, XML or C file. The code explorer looks for specific text patterns to detect functions, include files and macro definitions based on the currently selected syntax.

You may search for items in the code explorer by selecting it, then type the first few letters of your query. When a match is found the query is displayed in the status bar. By dragging the top of the code explorer, it may be integrated with the tool panel, undocked, or docked to right hand side. Code explorer will collapse all, expand all, sort, refresh, or copy item to clipboard by using the bottom on top of windows. It it impotent to note that it is a window and takes focus away from editor.

  • Folder icons are groups
  • Block icons are constructors, constants, labels, or data
  • Shape icons are classes or body elements
  • File icons are include files
  • Flash icons are functions, methods, subroutines, calls, or properties
    • aqua for the constructor function
    • fuchsia for the main function
    • red for a protected functions
    • green if the function is void or unknown
    • yellow in all other cases
  • HTML elements include
    • Links
    • Images
    • Tables
    • Rows
    • Cells

Char Table (Alt+A)

ASCII chart allows you insert active char to active document. In table you will see char, decimal and hexadecimal value, html entities. You can print ASCII chart too.

Color Selector window (Alt+C)

Opens color selection dialog for HTML color selection with possibility to insert selected color into text. You can choose from safe colors palette, 16 colors palette, gray palette, color name palette and standard color dialog.

Color Translator...

Translates any form of a color to the other forms: HTML Color Code, Color Name, Percent Notation, RGB Notation. Shows resulting color. Selected text before dialog calling if parsed in dialog.

EyeDropper

A color spy. Simply point to the color and it will paste the HTML value of color it to current document. Once activated, PSPad window is minimized until command is complete. Pressing the escape key will cancel operation.

Clipboard Monitor window (Alt+M)

If active, catch all clipboard manipulation and contents is displayed in special window. In this window you can pause monitor catching, work with clipboard history, delete it, ...

Command Line

Allows command line execution (see Running a Command).

Hash generator (MD5,SHA1,...)

Calculate hash for file or string and/or compare with existing hash.

Lorem Ipsum generator

This function is usefull, if you write pages and you need some text to see results. You sets parameters (number of paragraphs, length of paragraph) and Lorem Ipsum generates "nonsens" text.

Calculate Block

Having selected a block of numbers, this function will give: Sum, Min, Max, Average, & Count of all the numbers.

Numeric Base Translator...

This tool helps convert numbers between any numeric bases from binary to hexadecimal. And as bonus, you can convert Roman numbers and convert milliseconds to datetime.

Expression Evaluator

This tool performs evaluates numerical expression. Results may by pasted into current document at selected position. Selected text before dialog calling will initialize the expression. (See Expression evaluator)

User Convertors...

For use with external files you can create user defined converters (see User convertors).

Run Last used convertor

When conventing more then one block of text, use this function. You canon assign shortcut and simply convert files with one key click.

Open System Files

This function opens Autoexec, Config, System.INI a Win.INI include syntax highlight.

See Topics

  • View Menu
  • Macro
  • Context Files
  • Text Differences
  • Text difference
  • Command line parameters


Color Selector

What does the Color Selector do?

The color selector is designed to include the correct HTML color code or color name in to your file for the color you select. When you move your cursor over one of the small color swatches that color is reflected in the larger swatch at the bottom of the Color Selector along with that color's HTML code and, where appropriate, the color's name.
There are 5 palettes you can select from:

Safe Colors

This palette is limited to the 216, so called, 'Netscape' colours.

16-color Palette

This palette is limited to the 16 colours supported by older computers.

Gray Scale

This palette contains the 256 grey shades between black and white.

Named Colors

This palette is limited to the original 140 colours that have standard HTML names. A full list of the names can be found here.

Windows

This option opens the standard windows colour selection dialog. The swatch at the bottom of the Colour Selector does not change to reflect the colours your cursor moves over whilst using the Windows colour selection dialog.

See Topics

  • Working with Color


Spell check

PSPad allows you spell check your document. Spell check is independent of installation MS Office and other packages. Dictionaries are ready for download from PSPad pages.

How it works ?
With first use, dictionary is loaded. It can take several seconds, so be patient. Then text is checked and unknown words are marked.
Unknown words you add to dictionary are added into user dictionary.
For spell check settings and dictionary selection see Spell check options.

Spell check works in two modes:

Mark unknown words
After activation unknown words are underlined. It's used for quick orientation.

Spell check with word correction
Starting from cursor position, text is processed. Unknown words are displayed in a dialog. You may get a list of suggested spellings. You can choose from these actions:
· skip
· always skip
· add to dictionary
· change
· change and add to dictionary

Add diacritic (accent marks)
Text is processed and into words are added diacritical signs. Only for Czech & Slovak users.

See Topics

  • Settings Menu
  • Spell check options


Expression evaluator

Is a mathematical function parser. It allows you to calculate a value given an expression in string form. It supports the following
operators and functions:

    +       Addition
    -       Substraction
    *       Multiplication
    /       Division
    ^       Exponential (only positive numbers for the base)
    (       Open parenthesis
    )       Close parenthesis
   MOD      MOD operator.  Integers only (if used with floating
            point numbers, it will round the values to integers)

   ABS      (Range: -1e4932..1e4932)
   ATAN     (Range: -1e4932..1e4932)
   COS      (Range: -1e18..1e18)
   EXP      (Range: -11356..11356)
   LN       (Range: 0..1e4932)
   ROUND    (Range: -1e9..1e9)
   SIN      (Range: -1e18..1e18)
   SQRT     (Range: 0..1e4932)
   SQR      (Range: -1e2446..1e2446)
   TRUNC    (Range: -1e9..1e9)


User convertors

What are they?

Convertor is used to automate char or string bidirectional conversion.

Location of Convertor Files

In subdirectory .\Convert. Convertor definition files are simple text files with INI files structure. In this dir you find the file Template.IN_ - a convertor base template. Convertors can be called from menu Tools / User Convertors...

Convertor syntax

;semicolon is comment - optional, is ignored
;section names are bold - mandatory
;red color - mandatory text. Must be set.
 [Description]
 ;convertor description - will be displayed in menu
 ForwardName=UNICODE chars to HTML entity (WML)
BackwardName=HTML entity (WML) to UNICODE chars
;set of char case ignore. 1 = yes, 0 = no
ForwardIgnoreCase=0
BackWardIgnoreCase=0
;sets whether conversion will be processed with char table or replacing string by string
CharTable=0
;section for replacing string by string. Strings are delimited by | char (pipe or bar)
[Conversion]
 Š|&#x0160;
Œ|&#x015A;
|&#x0164;
 ;list of char, which will be removed during conversion
 [Remove chars]
 10
12
;char conversion table. Numbers are char ASCII values. Write only chars you want to convert.
 [Table]
 134=64
135=12

Conversion char table or string replace?

It depends of convertor meaning. If you want do code page conversion or replace tabs with spaces, use char table. It will be more precise and faster. Otherwise, use string replace.

How conversion char table works

Convertor works with selected block of text or whole document. This text (selected or whole doc) is processed char by char and chars are replaced by corresponding char from conversion table.

How string replace works

Convertor works with selected block of text or whole document. All strings defined in [Conversion] section are applied to the text. It's like a Search/Replace function. For long text, this can take some time.

String conversion possible problems

Circlur definition:

[Conversion]
B|A
A|B

In this case, first all "B" chars replaced with "A" and in next all "A" are replaced with "B" - The result is nothing changes.

[Conversion]
hallo|hi
halloween|party

First, all occurrences of hallo are replaced with hi. After first replace, the word halloween will be word hiween and second step replaces nothing. There are no more halloween words left.

All you need to correct it is to change the position in conversion definition to:

[Conversion]
halloween|party
hallo|hi


Text Differences

Open any file - File1
Two ways to get second file for a Text Diff

1. From menu Tools / Text Differences, select Text Diff with This File. A File Open dialog box will come up. Select file - File2
2. Context menu: Right click over the file TAB of another open file. Select Text Diff with This File. This file will become File2

After comparing, a new Text Diff window is opened with compare results. This window is spit into two parts with locked scrolling. File1 is on the left, File2 is on the right.
In both files are lines corresponding to common parts of text. Extra lines are added to both as needed to reflect the differences. This results are read only.

You can find three kinds of differences:

textdiff

· lines with different content
· lines missing in File2
· lines missing in File1

Moving in results

· previous difference Shift+Ctrl+Up
· next difference Shift+Ctrl+Down

See Topics

  • Tools Menu
  • Text difference


Running a Command

The text box allows you enter a command line to Run. There is a dropdown option to recall previous command lines and a button that allows you to find a file whose path will be used as the command line.

Command

Specifies the command and arguments.

Run under MS-Dos command interpreter

Normally, your command is run silently in the background and so you cannot provide input to or receive output form the program that runs (that said, if the command is a call to a windows program that will open and run as you would normally expect). If you check this option, the command will run in a Command Line box so that you can interacte with the command to be run.

Default directory

Specifies the folder that contains the original item or some related files. Sometimes, programs need to use files from other locations. You might need to specify the folder where these files are located so that the program can find them.

Capture Program Output Window

All of the output generated in the running of the command will be captured and displayed in the LOG screen if this option is set. This option is only available if 'Run under MS-DOS...', above, is selected.

Hide Output window

Hide external program Output Window

See Topics

  • Macro Toolbar


Script Menu

Recompile scripts
Recompile scripts. Only requered if changes have been made to script(s) since PSPad was opened.

Display list of loaded scripts and allows execution. These menu item are created in the Init subroutines. (See Script User's Guide)

See Topics

  • Script User's Guide
  • Script Language Reference


HTML Menu

HTML Page Preview F10
Show / Hide preview of HTML page in internal browser. If preview window stays open in background, it will be refreshed at intervals specified in program settings / editor / Auto Refresh [s].
You can use Mozilla in internal browser too. all whar tou need is download (for free) and install Mozilla ActiveX control. Then you can switch in internal browser between IE and Mozilla with first button.

HTML Preview from HTDocs (web server) Shift+Ctrl+F10
Can be used to preview your page through your web server. Path to server directory is specified in program settings / internet. Part of file path is replaced by http://server/
Default settings for Apache server is C:\Apache\HTDocs. If you call normal HTML preview (F10), the file is displayed in the internal browser.
file://localhost/c:/apache/htdocs/soubor.htm. If you use webserver preview, file is displayed in the internal browser http://localhost/soubor.htm.

htmlreformat Reformat HTML code
Reformats HTML code for pretty print. Scripts, comments and special tags (pre, ...) are not changed.
htmlcompres Compress HTML code
From HTML code redundant spaces, line breaks, ... are removed. Line breaks are inserted approximately after 200 chars.
Result is smallest and worse code for reading. Makes it hard to steal your HTML.
tagupper Tags to upper case
taglower Tags to lower case
Change char case of HTML tags (Lower case tags are standard in XHTML)

Reformat Structured CSS code
Reformats Cascaded Style Sheets to pretty print form

Reformat Inline CSS code
Reformats Cascaded Style Sheets to pretty print form

Top Style
TopStyle (free version TopStyleLite) is a great CSS editor, integrated in many of known HTML editors, and now in PSPad too. To work with TopStyle, you must download and install free version. What you select is transferred to TopStyle for editing. After you press Done button, it is tansferred back to the editor.

Conversion
html2txt Remove Tags
This tool remove tags and shows text content in new file.
Text to HTML
Cover text with HTML tags to make it capable display in HTML browsers
Selection to JavaScript
Selected text is changed to JavaScript function Document.Write()

Import from RTF
Simple RTF document is converted into HTML code. I suggest run function TiDy clean document after, to reformat and upgrade to CSS

Import from CSV
Import from Comma Separated Value file, as can be exported from spreadsheets and databases.

Check HTML Code CTRL+F10
Only check HTML code (without changes). Errors and warning are displayed in LOG window at bottom.

TiDy functions
These functions come from TidyCFG.INI file. Every section in this file is one item in the menu. You can modify it, add to or remove sections, ..
More about syntax in TiDy chapter.

See Topics

  • HTML Toolbar
  • Multihighlighter
  • Script User's Guide
  • Files and folders
  • HTML TiDy


HTML TiDy

What is TiDy ?
TiDy is library for checking, formatting, cleaning HTML code. This library is found in all the better editors that work with HTML code. TiDy is fully integrated into PSPad. All you need is file TiDyCom.DLL in the same directory as PSPad.EXE. With the configuration file TiDyCFG.INI, you can modify the menu for TiDy in PSPad. Each section in this file is one item in PSPad Menu (dynamically created).

You need to restart PSPad after you add or delete section in TiDy config file. TiDy syntax you can find at TiDy quick reference pages

Check HTML Code (Ctrl+F10)
Checks and analyzes HTML code and displays errors in LOG window

TiDy clean document
Cleans and corrects HTML code, include removing parts from MS tools

TiDy upgrade to CSS
Upgrades HTML to CSS

TiDy convert to XML
Converts HTML document to XML

TiDy convert to XHTML
Converts HTML document to XHTML

See Topics

  • Files and folders
  • HTML Menu


Settings Menu

Spell Settings... User Variables... Clips Hotkeys Edit Clip Definition File Save main window position User Highlighter... Highlighters Settings... Program Settings... Program Settings...

Opens dialog box where you can customize PSPad editor (see Program - look).

Highlighters Settings...

In this dialog box you can customize colors for individual environment, assign external files, compilers, ... (See Syntax highlight)

User Highlighter...

Shows dialog box where you can easy define your own highlighter (see User highlighters).

Save main window position

Saves the current windows positon to unsure next application intense will equal the current poistion (see Program - behaviour).

Edit Clip Definition File

Shows a list of possible clips. After you choose, the clip file is opened for editing.

Clips Hotkeys

For each clip you can assign a shortcut for quick access. This lists the existing shortcuts for the active clip definition file. Only enabled if atleast one shortcut exist.

User Variables...

List of static variables for use in clips. You can use predefined or add/edit/delete new variables.

Spell Settings... (Ctrl+F7)

Options for spell check and auto correction (see Spell check options).

See Topics

  • Spell check
  • Spell check options


Language

Sets language for PSPad user interface. it is not necessary to restart PSPad if this setting is changed, however, the selected language file must exist in .PSPad\Lang subdirectory.


Program - look

File Tabs Panel on Top

File panel position top / bottom

Hide File Panel

This checkbox has three states:

  • [ ] - Always visible
  • [•] - Visible with two (2) and more opened files
  • [x] - Always hidden

Button Style File Panel

File panel look. The checkbox has 3 states:

  • [ ] - Tabs
  • [•] - Flat buttons.
  • [x] - Buttons

Multiline File Tabs Panel

When checked the file tabs may occupy several rows in the File Panel.

Don't Show file .EXT on Buttons

When checked the file names will be shown without file name extensions on file panel.

File Tab caption format

Set format of file tab numbers. If you don't want to have numbered (%n%) file tabs, set format to %name%. Use %d:nn (nn = number of chars) to limit number of characters on each file tab. i.e. %n%) %name% %d:16

Tool button icon set

Set the current icon set. Icon set are in the folder .\PSPad\Skin.

System icons in File explorer

Uses the system icon in the file explorer.

Show Icons in Menu

When checked the relevant icons will appear next to options in various menus throughout the system. When uncheck only the text of the menu items will be shown.

Auto hide Left Gutter

When set the left margin gutter will be hidden when line numbering is switched off.

Whole Project File Name

When set the file path will be displayed as the tool tip for the project in the project tree. Otherwise, only the project name is used.

Auto Sort Files in Project

When checked, if a new file added into then Project the files in Project tree will be sorted.

Interactive Clip Vars Sorted

By default all fields in interactive clips are unsorted and displayed in the order written. In special cases, you need show fields in interactive clips in an order other than written in the clip. So you can use this option and give variables fitting names: %1edit%, %2edit%, ... This causes them to sort as you desire.

Note: [•] is a gray check in Win9x.

See Topics

  • Interactive Clips
  • View Menu
  • Program - behaviour


Program - behaviour

Auto Open New File after Start

This determines the default action when the program starts. The checkbox has 3 states:

  • [ ] - Dialog with files type or templates is displayed
  • [•] - Program started without any file
  • [x] - New empty file is created

ESC to Exit Program

When checked, pressing the ESC key will cause the program to Close. Note: If there is no active file then Esc will always close the program.

Show Splash Screen

When checked, the splash screen shows during program start.

Force restore to primary display

After start PSPad will be restored on first screen

Autosave main window position

Ident.bytes in UTF-8 coding

Files with UNICODE or UTF-8 coding has special leading bytes for format identification. For some programs are these bytes are redundant (PHP, Java). You can turn off writing of leading bytes.

R/O mode changes file attribute

When checked, switching R/O mode in PSPad has changes the file read-only attribute. Ordinarily, when PSPad opens a file in R/O mode, it is only Read Only in the editor, and the file attribute is left unchanged.

Czech ANSI <--> OEM Conversion

Provided internal code page conversion instead of system functions. Note: Only has meaning for Czech countries.

Follow compilation progress in LOG (slower)

Cursor placement after LOG is displayed.

Smart File Switching (Ctrl+Tab no sort)

Changes switching file order of Ctrl+Tab a Shift+Ctrl+Tab. If activated, order is changed to order you selected file tabs with mouse. If unchecked, Ctrl+Tab will scroll through one file after the other..

Split Horizontal for Synchronize

When checked the synchronized moving is done with vertically tiled windows (i.e. There is a horizontal split).
Note: When windows are synchronized, you see a chain link icon in the status bar. Click on it to "Unsychronize" the windows or simply give the Synchronize command again to toggle it off.

Color Syntax Print

When checked, printed output is syntax highlighted as it is on the screen.

Note: [•] is a gray check in Win9x.

See Topics

  • Project Menu
  • Special Paste
  • View Menu
  • Program - look


Editor - behaviour

Scroll Past End-of-line
Allow you place cursor after end of line. Any characters you type after you place your cursor after end of line will be preceded with space characters.

Trim Trailing Spaces
When selected trailing spaces will be automatically trimmed from end of line. You cannot use it with Word Wrap feature. If activated, Word Wrap is disabled. The checkbox has 3 states.
[ ] - No trimming
[] - Online trimming
[x] - Trimmed during file save operation

Alt Sets Column Mode
When checked, if you select text whilst holding down the ALT key then the system will use the column selection method otherwise the normal selection method is used.

Right-click Doesn't Move Cursor
After a right mouse button click the cursor is usually set to the place you clicked .You can disable this by checking this option.

Middle mouse - clip list
When checked, after a middle mouse button click Clip list is displayed (if available)

Auto Indent Mode
When checked, this option will cause the cursor to start the new line with a left indent equivalent to that of the previous line. Otherwise each line will start at the left margin.

Extended HOME key
When checked the HOME moves the cursor to a point immediately before the first character on the line. Pressing HOME a second time mores the cursor to the left margin. Otherwise, HOME moves the cursor to the left margin.

Extended Cut and Copy
When checked, if no text selected the Cut and Copy functions will work with whole line

Wrap (soft) with Right Edge
When Word Wrap is on and this option is checked text will be wrapped at right edge mark, not window width. You may change the Right Edge at any time by clicking on the Ruler to dynamically resize the wrap. This is a soft wrap and does not change line length. When not checked, Word Wrap wraps text to the window and changes as you resize the window.

Highlight Matching Bracket
When checked matching brackets are automatically highlighted if cursor is next to bracket. Color of highlight can be set in: Program Settings / Colors / Brackets

Whole Words for Find Word at Cursor
This option sets the mode for searching next / previous occurrence of current word (Shift+Ctrl+Up/Down).

When checked this option will search for the previous/next occurrence of the highlighted text as a whole word.

When unchecked the option will also find the highlighted text as substrings.

When no text is selected, then whatever word the cursor is touching is highlighted as a whole word, regardless of this setting.

Completion of chars ... ( { [ < " '
After writing opening charater the program will automatically write closing, matching character. Note: This does not work during macro recording!

Brackets are completed when the character immediately after the opening bracket isn't word. Quotes are not completed if there is an alphanumeric chararacter immediately before or after the quote.

Examples when autocomplete is not done. Blue is user typed character:
(hallo
"world
"father"

If the leading '(' is written after the word hallo is written, then no match is written because it touches a letter.

Note: [] is gray check in Win9x.

See Topics

  • Editor - settings
  • Special Conversion
  • Tools
  • Filters
  • Selection Type
  • View Menu
  • Look Toolbar
  • Main Toolbar
  • Search Menu
  • Search and Replace
  • The Statusbar Explained


Editor - settings

Real Tabs

Switches between tabs [char(09h)] or required number of spaces [char(20h) when Tab is pressed. Tab Width will determine how much space appears in the editor for each Tab, regardless of this setting.

Smart Tabs

When checked, each TAB press will cause the cursor to follow words from previous line. When the cursor moves past the end of the previous line then TAB adds the normal amount of space, determined by the Tab Width setting.

Group UNDO

Undoing all last changes with same character. E.g. insert char.

Max UNDO operations

Maximum number of UNDO steps. In some special cases, the default value 1024 my not be sufficient (find/replace in long files...)

Tab Width

Set default tab width. Type-specific Tab Widths can be set in highlighter settings.

Indent Width

Set default indent width. Indent Width means number of spaces when you use Indent block.

Auto Refresh [s]

Refreshing interval for HTML browser as well as files marked as Auto Refreshed (see Window Menu).

Max Line Length

You can set maximum line length. Default value is 1024 chars.
Note: This is rarely used and may be eliminated in future version.

Position of Right Edge

Position of right edge marker. You can simply change the position of the marker by clicking on the ruler. This will dynamically rewrap the screen if Word Wrap is turned on. This setting only applies if 'Wrap (soft) with Right Edge' is checked and 'Word Wrap' is turned on.

Mouse Wheel scroll Lines

Number of lines to scroll for mouse wheel.

Search Results

Specifies cursor position after operations like find, goto line, etc. If set to default, position will not be changed.

Insert Mode Cursor

This sets the cursor type when the editor is in 'insert' mode. Set from one of Vertical Line, Block, Half-block and Horizontal Line.

Overwrite Mode Cursor

This sets the cursor type when the editor is in 'overwrite' mode. Set from one of Vertical Line, Block, Half-block and Horizontal Line.

Note: [•] is a gray check in Win9x.

See Topics

  • Editor - behaviour
  • Tools


Confirmation

Ask if OK to wrap search when text not found

Whether confirmation is required to resume search at top of file.

Search in files - summary

Whether to display search summary after performing search in files.

Close all - confirmation

Whether confirmation is required to close the currently open project. See File Menu - Close All.

FTP - overwrite existing file confirmation

Whether confirmation is required when overwriting existing file using ftp.


Files and dirs

Save Recent Files List

Switches on / off recent files saving. If unchecked, recent files history is not remembered after the program exits.

Save Work / Desktop

Sets the behaviour concerning files open when the program exits. This option has 3 states:

[ ] - opened files are not restored next time
[•] - restore all actually open files, including those opened by double-clicking in Windows Explorer, etc.
[x] - restore only files opened in PSPad. This value ignores the recent history of those files opened from outside of PSPad.

The benefit of the last option is that when you open files in PSPad, using it as a Notepad replacement, then you don't lose your "desktop" of files opened when you were working with a project or group of files.

Store for files from local drives only

In Recent file list and Save Work will be stored files from local drive only.

Remember File State

The state of all open files is in the file PSCache.BIN will be stored state of all opened files. If you open this file next time, you will found it in state you close it - cursor position, bookmarks, highlighters, read only state...

Remember Last Filter

When checked causes the system to remember the file type filter last used when opening a file.

New Default

You can set default file type for new document if no file is open. Note: If there is an active document then the type of then new document will be the same as the active document.

Always this type

New file will be always of selected type

New file format

Set default EOL value for new files.

Default CP for files opening

Set to "menu format settings" or other for CP value.

Ignore files (file masks delimited by semicolon)

Set list of file masks. Matches files will be ignored by PSPad (except File explorer).

Remember Last Directory

When checked causes the system remember the last used directory in Open dialog. Project settings has priority over this setting!

Same As Active Document

Sets the Open Dialog to the directory of the active document.

Designate Directory

Specifies default directory when using Open dialog. Project settings has priority!

Clear History

This button will clear the MRU file list.

Save Recent Files List, Save Work / Desktop, Store for files from local drives only, Remember File State, Remember Last Filter, New Default, Always this type, New file format, Default CP for files opening, Ignore files (file masks delimited by semicolon), Remember Last Directory, Same As Active Document, Designate Directory, Clear History,

Note: [•] is a gray check in Win9x.

See Topics

  • Save desktop

Editor PSPad - freeware editor, © 1991 - 2006 Jan Fiala
All text is available under the terms of the GNU Free Documentation License.
Save Recent File List
Switches on / off recent files saving. If unchecked, recent files history is not remembered after the program exits.

Save Work / Desktop
Sets the behaviour concerning files open when the program exits. This option has 3 states:
[ ] - opened files are not restored next time
[] - restore all actually open files, including those opened by double-clicking in Windows Explorer, etc.
[x] - restore only files opened in PSPad. This value ignores the recent history of those files opened from outside of PSPad.

The benefit of the last option is that when you open files in PSPad, using it as a Notepad replacement, then you don't lose your "desktop" of files opened when you were working with a project or group of files.

Remember File State
The state of all open files is in the file PSCache.BIN will be stored state of all opened files. if you open this file next time, you will found it in state you close it - cursor position, bookmarks, highlighters, read only state...

Store only local files
In Recent file list and Save Work will be stored files from local drive only.

Remember Last Filter
When checked causes the system to remember the file type filter last used when opening a file.

New Default
You can set default file type for new document if no file is open. Note: If there is an active document then the type of then new document will be the same as the active document.

Always this type
New file will be always of selected type

Default CP for file opening
Set to "menu format settings" or "Windows CP1250". Note: Has no meaning for non-Czech or Slovak users.

Remember Last Directory
When checked causes the system remember the last used directory in Open dialog. Project settings has priority over this setting!

Same As Active Document
Sets the Open Dialog to the directory of the active document.

Designate Directory:
Specifies default directory when using Open dialog. Project settings has priority!

Clear History
This button will clear the MRU file list.

Note: [] means the gray check in Win9x.

See Topics

  • Save desktop


Backup

Backup Copy of Files
If checked the program will create file backups adding tilde char into extension. If file has name MyFile.TXT, backup file will be MyFile.~TXT. Backup system works differently if backup directory option is used, see below.

Folder for File Backup:
If filled, file name is not changed, but file is copied into specific directory including original directory structure.

Example:
original file: C:\Projects\Delphi\PSPad\PSPad.DPR
backup directory: D:\Backups
backup as: D:\Backups\Projects\Delphi\PSPad\PSPad.DPR

Autosave [min]
When set (ie value is not zero) then PSPad will automatically save changed files.


Colors

Font Color / Background
Changing these colours influence all highlighters by setting them all with the same color of font or background. So, be careful and test it out.

Selected Back / Selected Font
Background and font colours of selected text.

Current Line
Background colour of current line.

Right Edge
Colour of right edge marker. If you want to hide it, set the same color as background.

Gutter
Background colour for left gutter.

Spell Check
Color for underline mark when Spell Checker is enabled.

LOG parser
If you fill Log parser string in compiler settings then after clicking in LOG window, this will be background colour for corresponding line in the editor.

Brackets
Color for matching bracket highlighting.


System integration

Open TXT files

When checked this sets the association for .TXT files to PSPad. otherwise .TXT files are associated with notepad. Note: If Windows notepad.exe is replaced with the version of notepad.exe supplied with PSPad then this option is, effectively, ignored.

Integrate with Right Mouse Click

When Checked you can open any file in PSPad or PSPad HEX editor by clicking right mouse button on it and selecting corresponding item in context menu.

New Context menu handler
  1. Disable this setting.
  2. Start PSPadShell_reg.bat from this PSPad folder. It will register new PSPad context menu handler. Run PSPadShell_unreg.bat to remove Context menu handler.

Limitation:
  1. You have to be a system admin to register DLL.
  2. Context menu items selection isn't implemented yet.

Link on the DeskTop

Adds or removes desktop shorcut for PSPad editor.

Link in the START menu

Adds or removes Start menu shorcut for PSPad editor.

Link in Send To menu

Adds or removes Send To item for PSPad editor in Windows Explorer context menus.

HTML Viewer in IE 5+

When checked, sets PSPad as default HTML viewer for MS Internet Explorer.

HTML Editor for IE

When checked, sets PSPad as default HTML editor for MS Internet Explorer.

HTML Viewer in OPERA

When checked, sets PSPad as default HTML editor for Opera. Note: If OPERA browser is running, this option is disabled!

Editor for Total Commander

Sets PSPad as default editor for Total Commander. Note: TotalCommander is running, this option is disabled! You must have TotalCommander shareware installed for this option to function.

Integrated scripting support (WSH)

Enable/Disable PSPad scripting support. (See Script User's Guide)

Multi User Environment

PSPad is able to work in multiuser environment such as Windows NT, Win2k, WinXP,etc. In this environment normal users may not be able to write or create files in "Program Files" directory. If this option checked, config and other user dependant files are stored in user profile directory.

Minimize to Tray Icon on Exit

Program is minimized to tray on exit. Start from tray is near immediate. You can control it over icon in tray. This behavior will change in next version.

Only One Program Instance

Allows you open either one or several instances of PSPad. When enabled, any new files sent to PSPad will be opened in the currently running instance, in a new file tab.

See Topics

  • File Tabs Context Menu


Registered file types

You can register PSPad for direct opening (double click) chosen file types. For example, Adding .pl will load perl scripts into PSPad when you double click on them (be careful about doing this, as you might want to have these files run in PERL by default). Adding the association will also give perl scripts the PSPad file icon. When you delete a registered file type from the list, it is returned to whatever it was associated with before it leaves the file icon as a PSPad file.


Multihighlighter

PSPad is able to highlight scripts (VBScript, JavaScript, PHP, TCL/Tk) and some other types (CSS, XML for example) inside HTML code. This is done using a special highlighter called the HTML Multi-Highlighter. Uses the settings on this page to determine how it works.

HTML MultiHighlighter
Enable Multi-Highlighter
When checked this option enables the multi-highlighter. This means that the

For <%...%> use
This option allows you to set the language type (and hence the highlighting) that is used between the <% %> usually associated with inline code on ASP pages.

MultiHighlighter Base
This allows you to choose either HTML or XHTML as the basis for the multihighlighter.

Open in Multi-Highlighter
Each file type checked here will open in the HTML Mulit Highlighter rather than it's own. Choose from PHP, JavaScript, VBScript, TCL/TK, XML or CSS.

Multi-Highlighter Section
Section Colour same as Highlighter
When checked, section tags (<style>, <script>, etc) are the same colour as the highlighter that is used to set there contents, otherwise the font and background colours are as set below.

Font Colour / Background
These will be used for highlighting begin and end part of sections in Multi-Highlighter (scripts, CSS, ...)

See Topics

  • HTML Menu
  • Script User's Guide


Tools

Tools
Compressed Line Length
This sets the maximum line length for when the option HTML / Compress HTML Code is used.

Always real Tabs in CCS reformat
When checked this option will cause the system to indent CSS definitions with real tabs regardless of the setting of the 'Real Tabs' option in Settings / Program Settings / Editor.

Text to HTML - Lines as paragraphs
When checked this option will braked each line of text with <p></p> tags when the HTML / Conversion / Text to HTML option is used. Otherwise the end of each line has a <br> tag appended to it.

See Topics

  • HTML Toolbar
  • Special Conversion
  • Editor - behaviour
  • Filters
  • Editor - settings


Text difference

Text Diff File Compare
Ignore Char Case
Character case will be ignored during compare

Ignore Highlighter Colors
Font styles (bold & italics) will be kept in Text difference result window, but syntax highlighting is suppressed.

Ignore Blank Space
Lines with different number of spaces or tabs only wouldn't be marked as changed

Added / Deleted / Modified.
Here you may change background colour of text difference results for the various modifications.

See Topics

  • Tools Menu
  • Text Differences


Internet

Proxy server
Use proxy server
When checked forces the use of a proxy server when viewing HTML pages. The options below can only be accessed when this option is checked.

Get proxy server settings from MS Internet Explorer
When checked this option will cause the proxy server settings to be taken from your MS Internet Explorer settings. This option is not available if 'Use proxy server' is not set.

Address
Proxy server IP address .

Port
Proxy server port address. For MS proxy usually 8080, Winroute, WinProxy use 3128, another common value is 80.

User name / Password
Values required to access to proxy server if necessary.

e-Mail
Choose email client you will use in PSPad editor. Independent of default client in system.


Web server

Settings required when you want preview web pages in your local Web Server (e.g. Apache)

Server
Name of computer with web server. If web server is on your computer, use localhost

Document Root
Default directory of local web server documents (value c:\apache\htdocs is default for freeware Apache web server).


HEX editor

Hexadecimal offsett / decimal offset
You can select if you want address lines in HEX editor by hexadecimal or decimal numbers

Numbers of columns
Numbers of columns displayed in HEX editor

Bytes per columns
Number of bytes displayed in one column

Note: you can set this values direct in HEX editor with MouseWheel or Ctrl+MouseWheel


Key mapping

PSPad allows you to redefine shortcuts. Key mappings are stored in text file KeyMap.INI, placed in same directory as PSPad.exe or user profile directory, if Multiuser environment is activated. You can edit this file manually too.

How do I used it:
· Double click (or Right Arrow) on the file menu or category you want to change;
· Double click (or press Enter) the line in tree with action name you want to set the shortcuts for;
· Press new hotkey in dialog window. Press Esc or Cancel to discard the change you just made or press OK to assign the new shortcut;

Settings are only written after you press main OK button in settings dialog! To discard all changes made to all keys, press Cancel in Settings dialog or press 'Undo Changes'.

If shortcut is assigned to another action, when you press OK, you get a confirmation box asking if you want to overwrite the old setting. Select 'No' cancel the change. After confirmation, the old assignment is deleted and the key stoke is assigned to the new action.

Clear All
Clears all shortcuts

Undo changes
All changes are returned back to the program's last actual state

Default
Deletes file Keymap.INI, so after a restart, default key mapping is restored

Save to file
Saves actual key mapping into file his name you choose

Load from file
Load key maping from file you select

See Topics

  • Keyboard shortcuts
  • Mouse control
  • Keyboard commands


Special settings

In Program settings, there are several advanced options. This options are not accessible in Program settings dialog, but only through direct edit of PSPad.INI or via the Direct edit button.

Most of parameters are switches with 1 or 0 (True or False) value.

LeftToPreviousLine=[0|1]
If you are on line start and press Left button, cursor moves to end of previous line.
ContinueComment=[0|1]
In some languages (Java, C++) are used document comments. PSPad will automatically continue with comment if you start it.
OpenAllReadOnly=[0|1]
Opens all files as Read only - corresponding to set R/O in PSPad.
DontChangeFileAttribs=[0|1]
Disables any file attribute manipulation, this overwrites "Program Settings".
AutoDetectBinary=[0|1]
Dectect and open binary files in his Hex editor by default.
DragImgAlt=[0|1]
DragImgTitle=[0|1]
DragImgBorder=[0|1]
Has influence of content IMG element after drag image into text.
TextClipsIfHLOff=[0|1]
After Ctrl+Space will show Clip library corresponding to highlighter or plain TXT file clip library.
CheckDocChanges=[0|1]
switch on/off document detection made by another program
ExtraLineSpacing=n
This parameter has influence of space between lines. Suggested values are -1..3
CtrScrollIfSelected=[0|1]
If text is selected, Ctrl+Up/Down jump to start/end of selection or scroll document.
GutterClickInclLF=[0|1]
Clicking gutter selects entire line including CrLf.
OldMainIcon=[0|1]
Set old PSPad program icon.
HLOnUpToSize=nnnnnnn
Set number of bytes. If you open file and length of file exceed value, syntax highlight stay off - decrease time need for open file.
MaxRecentFiles=nn
Maximum number of recent files.
MaxRecentHistory=nn
Maximum number of history items (search dialogs, Command Line, ...).
WordWrapEnabled=[0|1]
Due to Word Wrap problems if you want to use Word Wrap, you must enable this option. Use Word Wrap on your own risk.
MainFileInPreview=[0|1]
Switch if internal HTML preview shows MainFile or actual file.
SimpleFileTabs=[0|1]
Enable owner draw file tabs.
OldSpecialChars=[0|1]
Enable use of non-unicode fonts. i.e. FixedSys
F1HelpInEditor=[0|1]
Disable F1 help shortcut, allowing F1 assignment to another command.


Syntax highlight

PSPad uses user highlighter settings. In menu Tools / Highlighter Settings, you have several tabs where you can set colors and font attributes, file filters, external applications and compiler, even a LOG code parser.

Complex color palette
You can read and save complex PSPad color palettes and simply change the look of whole program.
· reading - choose some palette from combo box and press Load button
· saving - write palette name and press Save button

HTML Multi-Highlighter

This highlighter is used for complex highlighting of another code inside HTML code, such as PHP or JavaScript.
Base highlighting comes from HTML highlighter.

Parts of code detection
· <script> </script> JavaScript
· <script...javascript...> </script> JavaScript
· <% %> VisualBasic script
· <script...vbscript...> </script> VisualBasic Script
· <script...tcl...> </script> TCL/TK
· <? ?> PHP
· <script...php...> </script> PHP
· <style...> </style> CSS


Filters

Filter name
Name is displayed in filter list in open and save dialog

Help file (help for environment)
If you fill it in, you can use Alt+F1 to call help for actual word (e.g. if you edit HTML code and cursor is on the "body" word, after Alt+F1 help for HTML syntax is opened and you will see context for "body" keyword). In Multi-Highlighter, the called help depends on the part of code you are in. In PHP part, help for PHP is called.

File masks
With this setting, you choose which highlighter will be active when you open this file type. In Filter Name of HTML Document, you find File Masks of *.htm and *.html. That means any files you open in PSPad with those extensions will use this highlighter.

User Highlighters
You can define your own highlighters. If you use one of the bolded highlighters (bold in highlighter list), list of user definition is enabled. Now you can clicking on items in list assign highlighter definition to one of three user highlighter position.
In this case are filter name and file masks taken from user highlighter definition. See user highlighter definition.

Tab width
You can set individual tab width for each environment. If value is set to 0, tab width is set from program settings / editor.

Extended indent chars
Some program languages (PHP, C,...) uses indentation for code writing:
xxx {
  xxx {
    xxx
    xxx
  }
}
You can define chars for extended indentation.

Conditions:
· char must be last char on line
· in program settings must be checked "autoindent" options

See Topics

  • Special Conversion
  • Editor - behaviour
  • Tools


External applications
For each highlighter (ie, for each file type or 'environment') you can set up to 5 external applications. Shortcut keys are automatically defined for the first 3. These are F9, Alt-F9 and Shift-F9 respectively.

Application List
This is the list of defined External applications for this file type. You can change the order in which they appear using the buttons on the right hand side of the list. To delete or modify an entry in the list highlight it and use the relevant button under list. To add an entry to the list you must supply a name and a path to an application before you can press the 'Add' button.

Name:
This value will be displayed when you select 'File|Open with Program ...' or press the External Applications button on the tool bar.

Application:
Program name including path and parameters. The command line can include a number of variables. Right mouse click will display a menu used to insert variables. See the entry on Compiler and External Program Variables for more information.

LOG file:
If a path to a LOG is specified the external program is executed and any output is captured and sent to the LOG file. Once execution of the program is complete the LOG file is displayed. This means that if a LOG file is specified PSPad will be unavailable for use until the External Program execution is complete. If no LOG file is specified control returns to PSPad immediately. You can use variables in the LOG file entry.

See Topics

  • File Tabs Context Menu
  • Working With Projects
  • Project Context Menu
  • Project Menu
  • Control Toolbar
  • Command/Compiler Variables


Compiler Settings

In some cases you need not only open document in external application, but run in external application, wait for application exit and than show some result (LOG). For this purpose is in PSPad compiler.
Compiler settings you find in menu Tools / Highlighter settings / Compiler tab settings.
You can run it from toolbar projcompile or use shortcut Ctrl+F9

What is given as param to compiler
Sorted as priority:
· main project file
· main file, if project doesn't exists
· active document

Compiler
Full path and program name to compiler without double quotes

Params
You can set compiler params, file name, ...
List of param variables is on bottom of this form. You can use context menu to insert param

LOG file
In this file is usually compilation results. PSPad shows you this file in LOG window on the bottom part of editor.

Run After Compilation
You can run compiler result (result code, or something else) after compilation.

Save All Files Before Compilation
If checked, all modified files will be saved before compilation

Catch Program Output Window

LOG parser:
If you set it, you are able by clicking in LOG window, open (or switch into) source file and set position to line (column) if included in LOG content.

Variables and masks:
*  any text
%F filename
%L line number
%C column number

Example:
LOG:
[Error] uHLSett.pas(346): Undeclared identifier: 'ik'
[Fatal Error] PSPad.dpr(58): Could not compile used unit 'uHLSett.pas'
parser:
*] %F(%L)

Example explanation:
Because line begin in LOG isn't explicit, you need find common parts: ]space and on the begin put *.
Behind is filename %F than ( and line number, so we put %L. Closing bracked isn't necessary,but look nice :-)

Compiler settings examples
see compiler examples chapter.


Compiler examples

For compiler setting details see stand-alone chapter

Green text is to be replace by real values based on your compiler settings.

  • Assembler 8051
  • Assembler x86 with TurboAssembler
  • AutoIT3
  • Borland C++ Builder
  • Java SDK
  • Kix32 - Debug
  • Kix32 - Run
  • LaTeX
  • LaTeX to PDF
  • MS-Dos Batch language
  • MS_SQL
  • ORACLE
  • PHP
  • Perl
  • TiDy - HTML check
  • Turbo pascal
  • VisualBasic Script
  • XMLlint - XML document check

Assembler 8051

Compiler:

drive:\path\cass51.bat

Parameters:

drive:\path\asm51 %Dir% %Name% %Ext%

Content of auxiliary file cass51.bat:

@Echo Off
cd %1
copy %2%3%4 %1%3%4
cass51 %3%4
del %3%4
copy %3.* %2%3.*
del %3.*

Assembler x86 with TurboAssembler

Compiler:

drive:\path\Tasm.bat

Parameters:

drive:\path\tasm\%Dir%%Name%

Run After Compilation:

%Dir%%Name%

Content of auxiliary file Tasm.bat:

@ECHO OFF
REM %1 = filepath
REM %2 = FileName without extension
REM Better do add path to directory with tasm.exe and tlink.exe to system %PATH% variable
CD %1
IF EXIST %2.exe DEL %2.exe
tasm %2.asm
tlink %2.obj
DEL %2.obj
DEL %2.map

AutoIT3

Compiler:

drive:\path\Aut2Exe.exe

Parameters:

/in %File%

Run After Compilation:

%Dir%%Name%.exe

Borland C++ Builder

Compiler:

drive:\path\bcc32.exe

Parameters:

%Name%%Ext%

LOG File:

%Name%.LOG

Run After Compilation:

%Name%.exe

LOG parser:

* * %F %L:

[X] Capture Program Output Window

Java SDK

Compiler:

drive:\path\javac.exe

Parameters:

%Name%.java

LOG File:

%Name%.log

Run After Compilation:

cmd /k Java %Name%

LOG parser:

*:%L

[X] Capture Program Output Window

Kix32 - Debug

Compiler:

drive:\path\Kix32.exe "%File%" /d

Kix32 - Run

Compiler:

drive:\path\Kix32.exe "%File%"

LaTeX

Compiler:

drive:\path\CSLatex.bat

Parameters:

%Name%.tex

LOG File:

%Name%.log

Run After Compilation:

windvi %Name%.dvi

Content of auxiliary file CSLatex.bat (distribution of TeXLive is supposed):

@echo off
kpsewhich cslatex.fmt > nul
if errorlevel 1 goto genformat
if errorlevel 0 goto okay
:genformat
fmtutil --byfmt cslatex
:okay
latex -translate-file=cp1250cs %1 %2 %3 %4 %5 %6 %7 %8 %9

LaTeX to PDF

Compiler:

drive:\path\PDFLatex.bat

Parameters:

%Name%.tex

LOG File:

%Name%.log

Run After Compilation:

path_to_Acrobat_Reader\AcroRd32 %Name%.pdf

Content of auxiliary file PDFLatex.bat (distribution of TeXLive is supposed):

@echo off
kpsewhich pdfcslatex.fmt > nul
if errorlevel 1 goto genformat
if errorlevel 0 goto okay
:genformat
fmtutil --byfmt pdfcslatex
:okay
pdftex -translate-file=cp1250cs %1 %2 %3 %4 %5 %6 %7 %8 %9

MS-Dos Batch language

Compiler:

drive:\path\system32\cmd.exe

Parameters:

/K "%File%"

LOG File:

drive:\path\%Name%.log

Note:
External application example.

MS_SQL

Compiler:

drive:\path\osql

Parameters:

-S server_name -U login_name -P password -d database_name -n -w1000 -i"%File%" -o"%Dir%%Name%.log"

LOG File:

%Dir%%Name%.log

Run After Compilation:

path_to_Acrobat_Reader\AcroRd32 %Name%.pdf

ORACLE

Compiler:

drive:\path\PLUS80.EXE

Parameters:

-s jmeno/heslo@db @ drive:\path\RunSQL "%Dir%%Name%.Log" "%File%"

LOG File:

%Dir%%Name%.Log

Content of auxiliary file RunSQL.SQL:

spool &1
set term off
@&2
spool off
exit

Note:
Don't forget to finish command by " ; " char!

PHP

Compiler:

drive:\path\php.exe

Parameters:

%File%

LOG parser:

*on line b%L

[X] Capture Program Output Window

Perl

Compiler:

drive:\path\perl.exe

Parameters:

%File%

LOG parser:

*on line b%L

[X] Capture Program Output Window

TiDy - HTML check

LOG parser:

line %L

Turbo pascal

Compiler:

drive:\path\tpc.bat

Parameters:

%Dir% %Name%

Run After Compilation:

%Dir%%Name%

Content of auxiliary file tpc.bat:

@ECHO OFF
CD %1
IF EXIST %2.exe DEL %2.exe
tpc %2 -uD:\Programy\PASCAL\tpu -m

VisualBasic Script

Compiler:

drive:\path\system32\wscript.exe

Parameters:

"%File%"

LOG File:

drive:\path\%Name%.log

Note:
External application example.

XMLlint - XML document check

Compiler:

drive:\path\xmllint.exe

Parameters:

--valid %File%

LOG parser:

*:F:%L

[X] Capture Program Output Window

Note:
You need Windows binaries of LibXML package (GPL licence) from LibXML page
Download package include utilities, you need utility XMLlint.EXE

See Topics

  • Starting PSPad


Command/Compiler Variables

How they work

When configuring External Commands or Compilers it is possible to use a number of variables in the application settings path and the LOG file path. These are described below.

Note: These variable names are all case-sensitive so, for example %File% will work, but %file% and %FILE% will fail to produce the expected results.

%File%

Full path name, including drive specifier, of current file.

Example:
C:\MyProg.exe "%File%"

Becomes:
C:\MyProg.exe "C:\Documents and Settings\user\This File.txt"

Note: The quotation marks around the variable name are required if the path name includes spaces.

%Dir%

Full path, including drive specifier, of directory in which current file is saved.

Example:
C:\MyProg.exe -o "%Dir%" ...

Becomes:
C:\MyProg.exe -o "C:\Documents and Settings\user\"

Note: The quotation marks around the variable name are required if path name includes spaces. Also note that the %Dir% variable includes the trailing slash (\).

%DosFile%

Short path name, including drive specifier, of current file.

Example:
C:\MyProg.exe "%File%"

Becomes:
C:\MyProg.exe "C:\DOCUME~1\user\MYDOCU~1\ThisFi~1.txt"

Note: The quotation marks around the variable name are required if the path name includes spaces.

%DosDir%

Full short< path, including drive specifier, of directory in which current file is saved.

Example:
C:\MyProg.exe -o "%Dir%" ...

Becomes:
C:\MyProg.exe -o "C:\DOCUME~1\user\MYDOCU~1\"

Note: The quotation marks around the variable name are required if the path name includes spaces. Also note that the %Dir% variable includes the trailing slash (\).

%Name%

Name, without extension, of current file.

Example:
C:\MyProg.exe "%Name%"

Becomes:
C:\MyProg.exe "This File"

Note: The quotation marks around the variable name are required if file name includes spaces.

%Ext%

Extension of current file name.

Example:
C:\MyProg.exe -e %Ext%

Becomes:
C:\MyProg.exe -e .txt

Note: Extension includes preceding perid (.).

%Project%

Current project name.

Example:
C:\MyProg.exe -p "%Project%"

Becomes:
C:\MyProg.exe -p "New Project"

%PSPath%

PSPad application path.

Example:
C:\MyProg.exe -p "%PSPath%"

Becomes:
C:\MyProg.exe -p "C:\Program Files\PSPad\"

Note: Path includes trailing slash (/).

%URLFile%

Full path name, including drive specifier, of current file preceded by "file://localhost/"

Example:
C:\MyProg.exe "%URLFile%"

Becomes:
C:\MyProg.exe "file://localhost/C:/Documents and Settings/user/This File.txt"

Note: The quotation marks around the variable name are required if the path name includes spaces.

%HttpFile%

Full path name, including drive specifier, of current file preceded by "http://localhost/"

Example:
C:\MyProg.exe "%HttpFile%"

Becomes:
C:\MyProg.exe "http://localhost/C:/Documents and Settings/user/This File.txt"

Note: The quotation marks around the variable name are required if the path name includes spaces.

%PHPFile%

If start of path of current file matches value of setting in "Settings > Program Settings > Internet > Document Root" then the variable will be replaced with the value "http://localhost/" + the path relative to Document Root. Otherwise variable equates to %File%.

Example:
Assume the Document Root is set to "C:\Inetpub\wwwroot" and the current file path is "C:\Inetpub\wwwroot\test.htm" C:\MyProg.exe "%PHPFile%"

Becomes:
C:\MyProg.exe "http://localhost/MySite/text.htm"

Note: The quotation marks around the variable name are required if the path name includes spaces.

%SelText%

Currently selected text.

%Input%

Prompt user to enter value.

Note: If "Cancel" is pressed when prompt is displayed, command will not be run. To run command with no value, delete any text in prompt's input box and press "OK"

%Word%

Word at current cursor position.

%Line%

Line number of current cursor position.

%AppData%

Path where applications store data by default.

%HomePath%

Path to the user's home directory.

Example:
C:\MyProg.exe -p "%HomePath%"

Becomes:
C:\MyProg.exe -p "\Documents and Settings\UserName"

Note: Path excludes drive (C:) and trailing slash (/).

%Temp%

Default temporary directory used by applications for current user.

Example:
C:\MyProg.exe -p "%Temp%"

Becomes:
C:\MyProg.exe -p "C:\DOCUME~1\UserName\LOCALS~1\Temp"

Note: Path is short and usualy excludes trailing slash (/).

%UserProfile%

Path of profile for current user.

Example:
C:\MyProg.exe -p "%UserProfile%"

Becomes:
C:\MyProg.exe -p "C:\Documents and Settings\UserName"

Note: Path excludes trailing slash (/).

%WinDir%

Path of operating system directory.

Example:
C:\MyProg.exe -p "%WinDir%"

Becomes:
C:\MyProg.exe -p "C:\WINDOWS"

Note: Path excludes trailing slash (/).

See Topics

  • File Tabs Context Menu
  • Working With Projects
  • Project Context Menu
  • Project Menu
  • Control Toolbar
  • External applications


Spell check options

Details about using the spell check can be found here.

Dictionary

You may choose one of the installed dictionaries. You may need to download a dictionary (See Spell check).

Show As

Style of word underlining, options include MS word or Corell WordPerfect.

Ignore One-char Words

Ignore Words with Numbers

Auto Correct

How it works?

Auto Correct works with a list of word pairs. Word on left side will be replaced with word or phrase on right side of list.

You write word followed by some word delimiter (space, symbol, ...). If the word is found in the list, it will be replaced with the replacement word (or phrase).

Note: To edit an entry, you must select it, modify it in the lower textboxes and then, press Edit to save your changes.

How and where can I use it?

If you regularly make mistakes with some words (changed letters, missing letters,..). PSPad can auto correct these mistakes. teh > the; theer > there

Next case is to increase speed of writing source code. If you have some long name functions, e.g. IncludeTrailingBackSlash you can simply write itb and PSPad will "correct it" by writing out the full function name.

Where is list stored?

Word list is in text file named AutoCorr.TXT in the same directory as PSPad.EXE or user profile directory, if MultiUser environment is set on. Structure of this file is simple:
What to replace | Replace with

Try Auto Correct yourself

  • Enter your initials, and your full name.
  • Enter teh, and the
  • Enter fo, and for (i= ; i >= ; i++) { }

See Topics

  • Spell check
  • Settings Menu


Window Menu

projfilemain Set as Main file for Compiler Ctrl+M
file marked as "main" is always send to external applications or compiler, if one is set. Otherwise, the active file is sent. Setting file as main also makes it easier to see its file tab.

logwindow Show / Hide LOG Ctrl+L
in LOG window you see compilation results, find in files results, ...

Jump to Editor / LOG Alt+L
you can switch focus between LOG window and editor window

AutoRefresh Window
The window is marked when autorefresh is ON for the active file. (Refresh icon on status bar and different color in file panel). When AutoRefresh is on, the file is automatically reopened after given interval in seconds (Program Settings / Editor / Auto Refresh [s] ). Refreshing is provided only if document is active. When you click on another file tab, you are not interrupted. When the AutoRefreshed document is once again selected and active, then refreshing will resume. You are prompted for changes: "File 'x was changed. After reopen, changes will be lost. Continue?" If you say no, the file is not reopened and your changes will not be lost. But you will be prompted again after the inteval.

Next window CTRL+Tab
Previous window SHIFT+CTRL+Tab

Cascade
Tile vertical
Tile horizontal
Arrange

(Your open file list shows down here)


Script User's Guide

PSPad from 4.3.3 version supports active scripting (users can add functionality with simple scripts) via MS Windows Scripting host (WSH). PSPad script functions and examples may be found here. Scripts are compiled once PSPad opens. Scripts are executed and/or recompiled with the use of the Script menu or via an assigned keyboard shortcut.

WSH must be installed, enabled, and Integrated scripting support (WSH) must be enabled if you want use scripting in PSPad. (See System integration)

WSH supports not only VBScript and JavaScript (default) but also additional languages.

  • WSH download
  • Microsoft scripting documents Includes reference material for VBScrip, JScript (JavaScript), Script Runtime, WSH, WMI, and ADSI.
  • Windows Scripting Languages infomation
  • Batch Scripts for Windows
  • FileSystemObject Basics

Scripts are organised in subdirectories coresponding to language.
Do not put non-script files into this directories!!! Do so may result in script compile error.

You can build script libraries and use functions from other modules. Access to function in other modules required a prefix of the module name separted by a period (.).
i.e. modeuleName.function(index)

New Context menu handler

  1. Disable Program settings / System / [x]Integrate with Right mouse click
  2. Start PSPadShell_reg.bat from this package - it will register new PSPad context menu handler.

Run PSPadShell_unreg.bat to unregister it.

Limitation

  1. You have to be a system admin to register DLL.
  2. Context menu items selection isn't implemented yet.

See Topics

  • Script Menu
  • Script Language Reference
  • Multihighlighter
  • HTML Menu


Script Language Reference

GLOBAL FUNCTIONS/SUBROUTINES

Command | Description
addMenuItem | Creates menu item
echo | Information box with text and button OK
sleep | Stops script execution for number of miliseconds
pspadVersion | Returns PSPad version
moduleExists | Returns version of module, if module doesn't exists, returns empty string
moduleVersion | Returns file name of module, if module doesn't exists, returns empty string
moduleFileName | Returns module filename include last backslash
modulePath | returns module file path include last backslash
closeEditorByTitle | Closes editor by filename
closeEditorByIndex | Closes editor by index
closeAllEditors | Closes all editor windows
newEditor | Creates new object for editor handling
editorsCount | Number of currently open editors.

EDITOR OBJECT FUNCTIONS

Command | Description
assignEditorByName | Assign editor window to object by file name
assignEditorByIndex | Assign editor window to object by editor index
assignActiveEditor | Assign active editor window into object and show it
assignLog | Assign Log window into object
activate | Set focus to editor
newFile | Creates new file in PSPad. File name is optional
openFile | Opens existing file in new editor window
saveFile | Saves file
saveFileAs | Saves file as
reloadFile | Reload file
closeFile | Closes file
printFile | Print editor
text | Replaces/returns all editor text
selText | Replaces/returns selected text from editor
lineText | Replaces/returns content of active line
linesCount | Returns editor lines count
appendText | Appends text to editor end
fileName | Sets/returns editor file name
command | Runs editor command processor command
setCaretPos | Sets editor caret position. -1 in parameter mean no change coordinate
caretX | Sets/returns editor CaretX position
caretY | Sets/returns editor CaretY position

PROJECT ACCESS FUNCTION

Command | Description
projectSave | Save current project
projectFilesCount | Number of files in current project
projectFiles | File path including filename
projectFileName | Project file path including filename

addMenuItem(caption: string; submenu: string; procedure: string; [shortcut: string]): Long(1)

Creates menu item. If you don't want submenu, send empty string as parameter. It is contained in script Init subroutine and works only during Init phase. All other calling is ignored. "&" may be used in caption to assign menu shortcuts. Caption set as "-" creates a line divider. More infomation about shortcut keys is found here. Shortcuts are optional.

Example VBscript
' Subroutine "Init" Is required
' It Is called automatically during initialization To create menu items.
Sub Init
    menuName = "&" & module_name
    addMenuItem "&Main method"         , menuName, "Main"
    addMenuItem "PSPad &version"       , menuName, "Demo1"
    addMenuItem "Script module version", menuName, "Demo2", "CTRL+ALT+1"
    addMenuItem "Open &script file"    , menuName, "openScript"
    addMenuItem "-"                    , menuName, ""
    addMenuItem "&Log Access"          , menuName, "DemoLog"
End Sub
Example JavaScript
// Subroutine "Init" Is required
// It Is called automatically during initialization To create menu items.
function Init() {
    menuName = "&" + module_name;
    addMenuItem("&Main method"         , menuName, "Main");
    addMenuItem("PSPad &version"       , menuName, "Demo1");
    addMenuItem("Script module version", menuName, "Demo2", "CTRL+ALT+2");
    addMenuItem("Open &script file"    , menuName, "openScript");
    addMenuItem("-"                    , menuName, "");
    addMenuItem("&Log Access"          , menuName, "DemoLog");
}
Example Python
def Init():
  pspad.addMenuItem("Example function", "PySample sample", "beispiel")
  pspad.addMenuItem("Version", "PySample sample", "version")
  pspad.addMenuItem("Selection", "PySample sample", "selection")
Back to Top

echo(text: string): void

Information box with text and button OK.

Example VBscript
echo "Hello World!"
Example JavaScript
echo("Hello World!")
Back to Top

sleep(ms: integer): void

Stops script execution for number of miliseconds.

Example VBscript
Sub FindToDos
    Set SH = Wscript.CreateObject("WScript.Shell")
    SH.AppActivate "PSPad"
    Sleep(100)
    '// Send Alt + F
    SH.SendKeys "^f"
    Sleep(100)
    SH.SendKeys "todo"
    Sleep(100)
    '// Sends the shortcut for the ok button. = Alt+O
    SH.SendKeys "%l"
End Sub
Back to Top

pspadVersion(): string

Returns PSPad version.

Example VBscript
echo "PSPad version : " & pspadVersion()
Example JavaScript
echo("PSPad version : " + pspadVersion());
Example Python
def version():
  version = 'pspad version: %s\n' % pspad.pspadVersion()
  pspad.echo(version)
Back to Top

moduleExists(name: string):boolean

Returns version of module, if module doesn't exists, returns empty string.

Back to Top

moduleVersion(name: string):string

Returns file name of module, if module doesn't exists, returns empty string.

Example VBscript
echo "Module version: " & moduleVersion(module_name)
Example JavaScript
echo("Module version: " + moduleVersion(module_name));
Example Python
def version():
  version = 'module version: %s' % pspad.moduleVersion('PySample')
  pspad.echo(version)
Back to Top

moduleFileName(file_name: string): boolean

Returns module filename include last backslash.

Back to Top

modulePath():string

returns module file path include last backslash.

Back to Top

closeEditorByTitle(file_name: string): boolean

Closes editor by filename.

Back to Top

closeEditorByIndex(index: integer): boolean

Closes editor by index.

Back to Top

closeAllEditors(): void

Closes all editor windows.

Back to Top

newEditor(): object

Creates new object for editor handling.

Example VBscript
Set editor = newEditor()
editor.assignActiveEditor
handleSelText = editor.selText
Example JavaScript
var obj1 = newEditor(); //New editor object
obj1.openFile(moduleFileName(module_name)); // Open actual script file
var s = obj1.Text(); //returns all text from window 1
Back to Top

editorsCount():integer

Number of currently open editors..

Back to Top

assignEditorByName(file_name: string): boolean

Assign editor window to object by file name.

Back to Top

assignEditorByIndex(index: integer): boolean

Assign editor window to object by editor index.

Example VBscript
Sub GetOpenFiles()
    On Error Resume Next
    Set tmpeditor = newEditor()
    Set outputlog = NewEditor()
    outputlog.AssignLog
    outputlog.selText(vbNewLine)
    i = 0
    Do While tmpeditor.assignEditorByIndex(i)
        FileName = tmpeditor.fileName
        '// assignEditorByIndex always return 1, hack to detrmine when all
        '// open editors have been handled.
        If FileName = LastFileName Then
            Exit Do
        End If
        LastFileName = FileName
        outputlog.selText(FileName & vbNewLine)
        i = i + 1
    Loop
    outputlog.selText("Number of open file: " & i & vbNewLine)
End Sub
Back to Top

assignActiveEditor(): boolean

Assign active editor window into object and show it.

Example VBscript
Sub replaceRegExp
    Pattern = InputBox("Enter RegExp.", module_name, "([^\n\r]+)[\n\r]{1,2}")
    msg = "Enter replacement text for RegExp /" & Pattern & "/."
    newtext = InputBox(msg, module_name, "$1\+\+\+")
    text = handleSelText("")
    text = runRegExpReplace(text, Pattern, newtext)
    handleSelText text
End Sub

Private Function runRegExpReplace(haystack, Pattern, newtext)
    Set regEx = New RegExp
    If Pattern = "" Then
        runRegExpReplace = haystack
        Exit Function
    End If
    regEx.Pattern    = Pattern
    regEx.IgnoreCase = TRUE
    regEx.Global     = TRUE
    runRegExpReplace = regEx.Replace(haystack, newtext)
End Function

'// @param string Text to replace selected text
Private Function handleSelText(text)
    On Error Resume Next
    Set editor = newEditor()
    editor.assignActiveEditor
    If text = "" Then
        '// Get selected text
        handleSelText = editor.selText
        If handleSelText = "" Then
            '// No text was select. Get all text and select it.
            handleSelText  = editor.Text
            editor.command "ecSelectAll"
        End If
    Else
        '// Set selected text
        editor.selText text
    End If
End Function
Back to Top

assignLog(): boolean

Assign Log window into object.

Example VBscript
'// Paste clipboard content to log
'// Requires PSPad 4.3.3 (2065)
Sub paste2Log
    Set outputlog = NewEditor
    With outputlog
        .AssignLog
        .selText(vbNewLine)
        .command "ecPaste"
    End With
End Sub
Back to Top

activate(): boolean

Set focus to editor. Return a value of True/1 on success.

Back to Top

newFile([file_name: string]): boolean

Creates new file in PSPad. File name is optional.

Back to Top

openFile(file_name: string): boolean

Opens existing file in new editor window.

Back to Top

saveFile(): boolean

Saves file.

Back to Top

saveFileAs(file_name: string): boolean

Saves file as.

Back to Top

reloadFile(): boolean

Reload file.

Back to Top

closeFile(): boolean

Closes file.

Back to Top

printFile(Show dialog box: boolean): boolean

Print editor. Note: For text files only. Will not print Hex file

Back to Top

text(string):string

Replaces/returns all editor text.

Back to Top

selText(string): string

Replaces/returns selected text from editor.

Back to Top

lineText(string): string

Replaces/returns content of active line.

Back to Top

linesCount(): integer

Returns editor lines count.

Back to Top

appendText(string): boolean

Appends text to editor end.

Back to Top

fileName(string): string

Sets/returns editor file name.

Example VBscript
Private Function GetFileName()
    On Error Resume Next
    Set editor = newEditor()
    editor.assignActiveEditor
    GetFileName = editor.fileName
End Function

Sub openFolder
    Set FS     = CreateObject("Scripting.FileSystemObject")
    Set Shell  = CreateObject("Shell.Application")
    Set File   = FS.GetFile(GetFileName())
    folderName = File.ParentFolder
    Shell.Explore folderName
End Sub
Back to Top

command(editor_command: string): boolean

Runs editor command processor command. Click here for a list of comands.

Back to Top

setCaretPos(x: integer; y: integer): boolean

Sets editor caret position. -1 in parameter mean no change coordinate.

Back to Top

caretX(integer): integer

Sets/returns editor CaretX position.

Back to Top

caretY(integer): integer

Sets/returns editor CaretY position.

Back to Top

projectSave(): long

Save current project. Always returns a value of 1.

Back to Top

projectFilesCount(): long

Number of files in current project.

Back to Top

projectFiles(index: long): string

File path including filename.

Example VBscript
Function listProjectFiles()
    data = ""
    For i = 0 To projectFilesCount - 1
        data = data & projectFiles(i) & vbNewLine
    Next
    listProjectFiles = data
End Function
Back to Top

projectFileName(): string

Project file path including filename.

Back to Top

See Topics

  • Script Menu
  • Script User's Guide


User highlighters

How to create user highlighter

Open the user highlighter dialog by selecting Settings menu > User Highlighter.

Highlighter definition
  1. Load highlighter definition for folder .\PSPad\Syntax.
  2. Fill Name.
  3. Fill File Types, Comma Delimited. Comma delimited extension list of file types (.bat, .log, ...)
  4. Select Comment Style. Specification of comment styles used in your language. You can combine several styles together.
  5. Choose string identifiers of double and/or single quotes.
  6. Check Preprocessors. Contains special parts of code, usually compiler directives, usually preceeded with a # symbol.
  7. Fill word word list.
  8. Fill word word list.
  9. Save highlighter definition. User highlighters are saved in the .\PSPad\Syntax folder.

How to tell PSPad to use new highlighter
  1. Select Settings menu > Highlighter settings.
  2. Select Specification tab.
  3. On the left (highlighter) list, click on one of three bolded highlighters.
  4. On the right side is list of user highlighters, select the one you created and click on it.

Color settings for highlighter

If you need change the font and colors for highlighter attributes, go to tab "Colors" and set the colors and font styles you want. If active document corresponds with highlighter you are modifying, you will immediately see the changes you make. (See Working with Color)

Definition file structure description

; Comments, are ignored
; Bold in brackets are section name
 [Settings]
; File name
Name=OtherCad
; List of file extension
FileType=*.prg,*.bpk
; Comments settings (optional) 1 = Yes, 0 = No
ANSIComment=0
PasComment=0
CComment=0
SpecComment=1
BasComment=0
SingleQuote=0
Preprocessors=0
....
; List of keywords and reserved words
; Include the = sign at the end of each word.
[KeyWords]
ABS=
ACOS=
ATN=
BOOLEAN=
[ReservedWords]
BOOLEAN=
INTEGER=
STRING=

See Topics

  • File Tabs Context Menu
  • The Statusbar Explained
  • File Menu
  • Project Menu
  • Main Toolbar


Keyboard commands

This is a list of valid keyboard shortcuts. Keyboard shortcuts maybe used to activate any menu command, insert clips, or run user scripts. If multiple keys are required for the shortcut then they should be compined with a plus(+) symbol. i.e CTRL+ALT+1.

The non-alphabetic keys are:

  • CTRL
  • ALT
  • SHIFT
  • F1 ... F12
  • PGDN
  • PGUP
  • DEL
  • ENTER

See Topics

  • Keyboard shortcuts
  • Mouse control
  • Key mapping
  • Macro Manager
  • Macro commands


Table of contents

Contents

Collapse All | Expand All | Goto Bottom

,- --- Overview
--- Basic information
| ,- --- Whats new
| ,- --- Help File Updates
| --- FAQ
| | ,- --- Interface
| | ,- --- Editor
| | ,- --- Search
| | ,- --- Tools
| | ,- --- Highlighter/Clips
| | ,- --- FTP
| | ,- --- General
| | ,- --- Just don't know how to...
| --- Credits
| | ,- --- Clips
| | ,- --- Corrections
| | ,- --- Dictionaries
| | ,- --- Documentation
| | ,- --- Localization
| | ,- --- Scripting, Plug-ins
| | ,- --- Spell check dictionaries
| | ,- --- User highlighters
| ,- --- Licence
| ,- --- Contacts and info
--- Working with PSPad
| ,- --- Starting PSPad
| --- Working with File Tabs
| | ,- --- File Tabs Context Menu
| --- Working With Projects
| | ,- --- Project Context Menu
| ,- --- Working with Text
| ,- --- Working with Color
| --- FTP
| | ,- --- FTP setting
| ,- --- Hex editor
| ,- --- Command line parameters
| ,- --- Code page conversion
| ,- --- The Statusbar Explained
| --- Macro
| | ,- --- Macro Manager
| | ,- --- Macro commands
| ,- --- Keyboard shortcuts
| ,- --- Mouse control
| --- Files and folders
| | ,- --- Template Files
| --- Context Files
| | ,- --- Clips
| | ,- --- Interactive Clips
| ,- --- Save desktop
| ,- --- HTML page - example
| ,- --- File type plug-ins
--- Menu description
| --- File Menu
| | ,- --- Open Special
| | ,- --- Export
| ,- --- Project Menu
| --- Edit Menu
| | ,- --- Special Paste
| | --- Lines Manipulation
| | | ,- --- Insert Text Into Lines
| | ,- --- Special Conversion
| | ,- --- Date Dialog
| | ,- --- Sort
| | ,- --- Selection Type
| --- Search Menu
| | ,- --- Search and Replace
| | ,- --- Search and Replace in Files
| | ,- --- Google Search
| | ,- --- Regular Expressions
| --- View Menu
| | --- Toolbars
| |    ,- --- Project Toolbar
| |    ,- --- Main Toolbar
| |    ,- --- Edit Toolbar
| |    ,- --- Look Toolbar
| |    ,- --- Control Toolbar
| |    ,- --- HTML Toolbar
| |    ,- --- Macro Toolbar
| --- Format Menu
| | ,- --- Case change
| | ,- --- Block format
| --- Tools Menu
| | ,- --- Color Selector
| | ,- --- Spell check
| | ,- --- Expression evaluator
| | ,- --- User convertors
| | ,- --- Text Differences
| | ,- --- Running a Command
| ,- --- Script Menu
| --- HTML Menu
| | ,- --- HTML TiDy
| --- Settings Menu
| | --- Program settings
| | | ,- --- Language
| | | ,- --- Program - look
| | | ,- --- Program - behaviour
| | | ,- --- Editor - behaviour
| | | ,- --- Editor - settings
| | | ,- --- Confirmation
| | | ,- --- Files and dirs
| | | ,- --- Backup
| | | ,- --- Colors
| | | ,- --- System integration
| | | ,- --- Registered file types
| | | ,- --- Multihighlighter
| | | ,- --- Tools
| | | ,- --- Text difference
| | | ,- --- Internet
| | | ,- --- Web server
| | | ,- --- HEX editor
| | | ,- --- Key mapping
| | | ,- --- Special settings
| | --- Highlighter settings
| | | ,- --- Syntax highlight
| | | ,- --- Filters
| | | ,- --- External applications
| | | --- Compiler Settings
| | | | ,- --- Compiler examples
| | | ,- --- Command/Compiler Variables
| | ,- --- Spell check options
| ,- --- Window Menu
--- Customize PSPad
   --- Script
   | ,- --- Script User's Guide
   | ,- --- Script Language Reference
   ,- --- User highlighters
   ,- --- Keyboard commands


Include Images

This is a hack forceing HTML Help Workshop to include images used by css.

See Topics

  • Special Paste
  • Tools
  • Search Menu
  • Google Search
  • HTML Menu


PSPad Help

This is the documentation for PSPad.

It seems your browser can't interpret the <FRAME>-Tag. Please follow this link to the documentation.