Programmer's Notepad 2.2 Released

I’m happy to announce a new stable release, Programmer’s Notepad 2.2, has been released to our Google Code page. This release is very similar to 2.1.5 (fixing a few bugs and landing a few minor changes), but is a huge improvement over the last stable release 2.0.10.

Headline Changes in 2.2:

There have been too many improvements since 2.0.10 to recount them all here, but these are the headline changes in 2.2 over 2.0.10:

  1. Complete Unicode conversion, files, searching, projects, UI, clips…

  2. Complete redesign of text clips, with editing built in to new UI view and code templates and text clips consolidated

  3. Multiple concurrent selections (ctrl+select)

  4. Type into multiple selections and block selections

  5. Virtual space

  6. Translations - PN in your language

  7. Flexible split views

  8. Converting between ANSI/Unicode properly converts current file contents

  9. Vastly improved file encoding options and defaults

Downloads: Download 2.2 Installer Download 2.2 Portable Download 2.2 Multi-Language

You may also like to add the PyPN extension to your 2.2 install to get support for scripting/macros with Python: PyPN 0.12

Thanks to all contributors, translators and testers for their help with this release.

PyPN 0.12 Released

Coinciding with the new Programmer’s Notepad 2.1.5 release, PyPN 0.12 is a minor update fixing a few bugs and adding support for some new small but important scenarios.

Download: PyPN 0.12 for Python 2.6

As of this release, I have dropped support for Python 2.4 and 2.5, as there seems to be little benefit in maintaining multiple versions especially as these releases are so old. I am considering trying to bundle a specific version of Python with future releases, to avoid the need for separate installs.

Once you have installed PyPN 0.12, you can now use Python code in your Text Clips by enclosing it in backticks, e.g.

print “Hello from PyPN”

Anything you print to stdout will be included in the clip text.

Programmer's Notepad Testing Release, 2.1.5

A new testing release, Programmer’s Notepad 2.1.5, has been released to our Google Code page. This release fixes important bugs, adds support for script in text clips, and is a release candidate build for a new stable release.

Changes in 2.1.5:

  1. Text clips can now contain python script, anything written to stdout is included in the clip.

  2. Improvements to ANSI/Unicode encoding support and conversion

  3. Make sure smart highlight works throughout the whole document. Fixes issue #898.

  4. Added files exclusion filter to magic folder.

  5. Allow setting current scheme from Pyextensions. Allow inserting clip from extensions.

  6. Now available in English, Spanish, Hungarian, Romanian, Chinese, better translation support.

  7. When saving the workspace sort the documents by tab order. Fixes issue #201.

  8. Text clips now have a context menu

  9. Allow forcing readonly from the command line. Fixes issue #953.

  10. Switch desktop icon to common desktop. Fixes issue #81.

  11. Add date and time for clips, fix tab size, and remove line endings from current line. Fixes issue #944.

  12. Add updated clips thanks to Sam Collett

  13. Next and previous placeholder now uses indexes properly. Fixes issue #925.

  14. Allow resizing the text clip editor dialog, and centre on display. Fixes issue #926.

  15. Handle the case where we fail to open xml files for writing better. Fixes issue #1024.

  16. Make sure tab completion works with individual output window. Fixes issue #996.

  17. Add the dollar sign to word characters for PHP. Fixes issue #951.

  18. Fix smarthighlight/split view clash. Fixes issue #738.

  19. Fix sorting in clips control.

Downloads: Download 2.1.5 Installer Download 2.1.5 Portable Download 2.1.5 Multi-Language

Thanks to all contributors, translators and testers for their help with this release.

Zen Coding in Programmer’s Notepad

A user requested support for Zen Coding on the bug tracker.

Zen Coding is a system for writing HTML and CSS in text editors, expanding shorthand notation to full code.

I hadn’t used Zen myself, but a quick read of the excellent Smashing Magazine Introduction and a watch of the above video and I was intrigued.

Zen itself is an editor-agnostic set of scripts available in both Javascript and Python. That’s right, Python!

As testament to the good design of Zen, it was a piece of cake to integrate it with PyPN, allowing you to drop Zen for PyPN into your scripts directory and start taking advantage of this useful shorthand.

If you use PN 2.1.4 or later, you can start using Zen yourself right now:

  1. Download Zen Coding for PyPN Preview

  2. Extract the contents of the zip into your Programmer’s Notepad\Scripts directory

  3. Start PN

  4. Optionally bind the Expand Abbreviation script to a keyboard shortcut

Future enhancements to this implementation (and PN 2.1.5) will bring tab stops so that you can tab through the generated code, and probably other Zen Coding commands. For now, let me know what you think!

Using JSLint with Programmer's Notepad

JSLint is a useful JavaScript tool that checks your syntax and finds common quality problems. Pat Cavit has a nice writeup on using JSLint in Programmer’s Notepad. Thanks Pat!