<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="bbPress/1.0.3" -->
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title>pnotepad.org forums &#187; Recent Posts</title>
		<link>http://pnotepad.org/forums/</link>
		<description>Programmer&#039;s Notepad Forums</description>
		<language>en-US</language>
		<pubDate>Tue, 07 Feb 2012 13:12:40 +0000</pubDate>
		<generator>http://bbpress.org/?v=1.0.3</generator>
		<textInput>
			<title><![CDATA[Search]]></title>
			<description><![CDATA[Search all topics from these forums.]]></description>
			<name>q</name>
			<link>http://pnotepad.org/forums/search.php</link>
		</textInput>
		<atom:link href="http://pnotepad.org/forums/rss/" rel="self" type="application/rss+xml" />

		<item>
                        <title>auto-indent Python code (fongandrew)</title>
			<link>http://pnotepad.org/forums/topic/5441#post-10636</link>
			<pubDate>Sun, 05 Feb 2012 07:09:54 +0000</pubDate>
			<dc:creator>fongandrew</dc:creator>
			<guid isPermaLink="false">10636@http://pnotepad.org/forums/</guid>
			<description>&#60;p&#62;In case anyone is stumbling on this via Google, here's a fix for the comment and multiple indentation bugs. Edit PN_dir\init.py and change the python_indent function as follows:&#60;/p&#62;
&#60;pre&#62;&#60;code&#62;import re

# Indention regex - look for colon, then optional spaces and comment
PY_INDENT_RE = re.compile(r&#38;#039;:\s*(#.*)?$&#38;#039;)

@indenter(&#38;quot;python&#38;quot;)
def python_indent(c, doc):
    sci = scintilla.Scintilla(doc)
    if c == &#38;#039;\n&#38;#039; or c == &#38;#039;\r&#38;#039;:
        pos = sci.CurrentPos
        line = sci.LineFromPosition( pos )
        prev_line = sci.GetLine(line - 1)

        # If the previous line matches regular expression above, then indent
        if PY_INDENT_RE.search(prev_line):
            indent = sci.GetLineIndentation( line )

            # The DumbIndent system may already have indented this line...
            previndent = sci.GetLineIndentation( line - 1 )
            if indent == previndent or indent == 0:
                indent += 4
                sci.IndentLine( line, indent )&#60;/code&#62;&#60;/pre&#62;</description>
		</item>
		<item>
                        <title>Find in Files / Find Results (Rehnn)</title>
			<link>http://pnotepad.org/forums/topic/7451#post-10635</link>
			<pubDate>Wed, 01 Feb 2012 10:06:35 +0000</pubDate>
			<dc:creator>Rehnn</dc:creator>
			<guid isPermaLink="false">10635@http://pnotepad.org/forums/</guid>
			<description>&#60;p&#62;I was using 2.2 (7th Jan 2011), I downloaded the latest version yesterday (2.3.4.2350).&#60;/p&#62;
&#60;p&#62;I've done a little experiment.&#60;br /&#62;
The files I'm searching through are on a network drive and added to my Documents Library on Windows 7 (libraries\Documents).&#60;/p&#62;
&#60;p&#62;When I search the same files on my local hard disk, this doesn't happen.&#60;br /&#62;
When I search the same file on another network location that isn't in my Document library, this problem doesn't happen.&#60;/p&#62;
&#60;p&#62;All a little odd.
&#60;/p&#62;</description>
		</item>
		<item>
                        <title>Find in Files / Find Results (simon)</title>
			<link>http://pnotepad.org/forums/topic/7451#post-10634</link>
			<pubDate>Wed, 01 Feb 2012 09:15:53 +0000</pubDate>
			<dc:creator>simon</dc:creator>
			<guid isPermaLink="false">10634@http://pnotepad.org/forums/</guid>
			<description>&#60;p&#62;Hmm, that shouldn't be happening, and doesn't for me in a simple test. What version are you using?
&#60;/p&#62;</description>
		</item>
		<item>
                        <title>PyPN for Python 2.7 (simon)</title>
			<link>http://pnotepad.org/forums/topic/7452#post-10633</link>
			<pubDate>Wed, 01 Feb 2012 08:52:40 +0000</pubDate>
			<dc:creator>simon</dc:creator>
			<guid isPermaLink="false">10633@http://pnotepad.org/forums/</guid>
			<description>&#60;p&#62;It's intentional in that I haven't had a chance to build PyPN with 2.7 and test it yet. Other than that, there will be a version at some point that uses 2.7.
&#60;/p&#62;</description>
		</item>
		<item>
                        <title>PyPN for Python 2.7 (tanveer)</title>
			<link>http://pnotepad.org/forums/topic/7452#post-10631</link>
			<pubDate>Wed, 01 Feb 2012 02:08:13 +0000</pubDate>
			<dc:creator>tanveer</dc:creator>
			<guid isPermaLink="false">10631@http://pnotepad.org/forums/</guid>
			<description>&#60;p&#62;Hi,&#60;br /&#62;
I find the installer for PyPN for Python 2.6 but there is no installer for Python 2.7. Is this intentional or unsupported on 2.7?&#60;/p&#62;
&#60;p&#62;Thanks
&#60;/p&#62;</description>
		</item>
		<item>
                        <title>Find in Files / Find Results (Rehnn)</title>
			<link>http://pnotepad.org/forums/topic/7451#post-10630</link>
			<pubDate>Tue, 31 Jan 2012 16:20:37 +0000</pubDate>
			<dc:creator>Rehnn</dc:creator>
			<guid isPermaLink="false">10630@http://pnotepad.org/forums/</guid>
			<description>&#60;p&#62;If I do a &#34;Find in Files&#34; search for a string the &#34;Find Results&#34; dialogue box appears. Every time I click on a result a new tab opens in the main editor window.&#60;br /&#62;
For example... If the text &#34;print_hello()&#34; appears three times in the file lcd.c, if I double click each result in the &#34;Find Results&#34; windows, three copies of the the file lcd.c are opened.&#60;br /&#62;
What is worse if the text &#34;print_hello()&#34; appears Once  in the file driver.c, if I double click this result multiple times then multiple copies of this file are opened in the main editor window.&#60;/p&#62;
&#60;p&#62;Is there a way to stop PN opening multiple copies of the same file when doing a &#34;Find in Files&#34;?
&#60;/p&#62;</description>
		</item>
		<item>
                        <title>A couple schemedef questions (re: preprocessor, comments) (Roody)</title>
			<link>http://pnotepad.org/forums/topic/7438#post-10629</link>
			<pubDate>Mon, 30 Jan 2012 19:29:00 +0000</pubDate>
			<dc:creator>Roody</dc:creator>
			<guid isPermaLink="false">10629@http://pnotepad.org/forums/</guid>
			<description>&#60;p&#62;Thanks for the response!
&#60;/p&#62;</description>
		</item>
		<item>
                        <title>Technical questions about extensions (jalopeura)</title>
			<link>http://pnotepad.org/forums/topic/7446#post-10628</link>
			<pubDate>Mon, 30 Jan 2012 19:22:13 +0000</pubDate>
			<dc:creator>jalopeura</dc:creator>
			<guid isPermaLink="false">10628@http://pnotepad.org/forums/</guid>
			<description>&#60;p&#62;I'm writing a Perl scripting extension. I've got some basic functionality compiling, and I'm testing it. I still need to add callbacks and allow users to register scripts. (For testing, it's hard-coded to run a particular file.)&#60;/p&#62;
&#60;p&#62;I've been using PN for years and ever since extensions became possible I've been wanting to write one for Perl. I recently finished my Masters, and I am freelancing while I seek funding for a PhD, so I have occasional free time now.&#60;/p&#62;
&#60;p&#62;I hope to release something by the end of February, but it depends on how busy I am. I am a freelancer and some days I'm busier than others. Yesterday, I got several hours in, but today, I did almost nothing on the plugin because I had a lot of paying work.&#60;/p&#62;
&#60;p&#62;So basically I should never delete any objects, and I should free any non-const strings returned to me.&#60;/p&#62;
&#60;p&#62;Now I need to figure out how to make Perl play nice with &#60;code&#62;shared_ptr&#60;/code&#62;. Perl is written in C, and I'm casting object pointers to &#60;code&#62;void*&#60;/code&#62; so my Perl objects can store them. A pointer to a &#60;code&#62;shared_ptr&#60;/code&#62;, cast to a &#60;code&#62;void*&#60;/code&#62; - I don't think &#60;code&#62;shared_ptr&#60;/code&#62; will track that properly.
&#60;/p&#62;</description>
		</item>
		<item>
                        <title>A couple schemedef questions (re: preprocessor, comments) (simon)</title>
			<link>http://pnotepad.org/forums/topic/7438#post-10627</link>
			<pubDate>Mon, 30 Jan 2012 17:03:40 +0000</pubDate>
			<dc:creator>simon</dc:creator>
			<guid isPermaLink="false">10627@http://pnotepad.org/forums/</guid>
			<description>&#60;p&#62;There's no way to terminate preprocessor coloring, but you could try using something else like a string type for this. However I don't know if you could easily get it so that it was terminated either by line end or a closing character. You'd need to experiment.&#60;/p&#62;
&#60;p&#62;The comment thing is unfortunate, there's no support for regular expressions for matching at the moment, although there may be something like this in the future.
&#60;/p&#62;</description>
		</item>
		<item>
                        <title>PN on Linux (Ubuntu) (simon)</title>
			<link>http://pnotepad.org/forums/topic/4903#post-10626</link>
			<pubDate>Mon, 30 Jan 2012 17:01:54 +0000</pubDate>
			<dc:creator>simon</dc:creator>
			<guid isPermaLink="false">10626@http://pnotepad.org/forums/</guid>
			<description>&#60;p&#62;Thanks @nebenaube, that's good to know. I've actually just started using PN under Wine myself and so far very impressed with how well it works!
&#60;/p&#62;</description>
		</item>
		<item>
                        <title>Technical questions about extensions (simon)</title>
			<link>http://pnotepad.org/forums/topic/7446#post-10625</link>
			<pubDate>Mon, 30 Jan 2012 17:00:50 +0000</pubDate>
			<dc:creator>simon</dc:creator>
			<guid isPermaLink="false">10625@http://pnotepad.org/forums/</guid>
			<description>&#60;p&#62;In general, items that PN calls methods with (IDocumentPtr etc) are owned by PN, and ideally you should not store references to them between calls. In the case of IDocumentPtr this is relaxed a bit, as it's useful to tie things to doc instances, but make sure you use shared_ptr to keep the reference.&#60;/p&#62;
&#60;p&#62;For event sinks and other types where PN takes a &#60;code&#62;&#38;lt;classname&#38;gt;Ptr&#60;/code&#62; instance, you should create and store these directly in &#60;code&#62;shared_ptr&#60;/code&#62;, and then the &#60;code&#62;shared_ptr&#60;/code&#62; gubbins will take care of lifetime management - you can pass to PN and forget and &#60;code&#62;shared_ptr&#60;/code&#62; will take care of deletion when there are no references left.&#60;/p&#62;
&#60;p&#62;From my recollection (I don't have the code in front of me) menu item collections are copied so you don't need to keep them around, I'd have to double-check.&#60;/p&#62;
&#60;p&#62;Any string returned to you non-const must be released with PN::ReleaseString. In most cases I've switched to using &#60;code&#62;PN::BaseString&#60;/code&#62; for this as this removes the need for this, the rest will eventually follow. Anything else you'll need to copy to keep.&#60;/p&#62;
&#60;p&#62;Hope this helps!&#60;/p&#62;
&#60;p&#62;Out of interest, what are you building?
&#60;/p&#62;</description>
		</item>
		<item>
                        <title>Creating a new scheme in PN portable (prgcoder)</title>
			<link>http://pnotepad.org/forums/topic/7445#post-10623</link>
			<pubDate>Mon, 30 Jan 2012 04:26:35 +0000</pubDate>
			<dc:creator>prgcoder</dc:creator>
			<guid isPermaLink="false">10623@http://pnotepad.org/forums/</guid>
			<description>&#60;p&#62;Thanks Roody - that has helped me get something started.
&#60;/p&#62;</description>
		</item>
		<item>
                        <title>Technical questions about extensions (jalopeura)</title>
			<link>http://pnotepad.org/forums/topic/7446#post-10619</link>
			<pubDate>Sat, 28 Jan 2012 15:25:18 +0000</pubDate>
			<dc:creator>jalopeura</dc:creator>
			<guid isPermaLink="false">10619@http://pnotepad.org/forums/</guid>
			<description>&#60;p&#62;I'm working on an extension, and I have a few questions.&#60;/p&#62;
&#60;p&#62;First, all the interfaces have a destructor in the class definition. One group of them by their nature seem to be singleton objects, and therefore I shouldn't ever delete them (IPN, IOptions, etc.). Another group is things I define my own descendant class for, and therefore I should create and destroy them myself (event sinks, for example).&#60;/p&#62;
&#60;p&#62;However, there are two groups I'm not sure about. One of them is things like IDocument. Are these pointers to copies of objects that I take ownership of, or are they pointers to the same objects the main program is using, and therefore the main program retains ownership?&#60;/p&#62;
&#60;p&#62;The other group (well, a group of one) is MenuItems, which I pass to the main program via AddPluginMenuItems. Does the main program take ownership of this, or should I delete it when the plugin exits?&#60;/p&#62;
&#60;p&#62;Most of the strings passed back and forth seem to be either const'ed or passed via PN::BaseString. I assume that any const char*/wchar_t* I pass to the main program are copied if necessary, and thus I can safely free them after the call. Similarly, if I get them from the main program, I assume I have to copy them if I want to keep them around.&#60;/p&#62;
&#60;p&#62;There are, however, three examples of non-const wchar_t* being returned. On two of those, there is a comment indicating that I should use PN::ReleaseString when I'm done with it. Am I correct in my assumption that the other one should be treated the same way? The method in question is:&#60;/p&#62;
&#60;p&#62;&#60;code&#62;virtual wchar_t* InputBox(const wchar_t* title, const wchar_t* caption) = 0;&#60;/code&#62;
&#60;/p&#62;</description>
		</item>
		<item>
                        <title>Creating a new scheme in PN portable (Roody)</title>
			<link>http://pnotepad.org/forums/topic/7445#post-10618</link>
			<pubDate>Sat, 28 Jan 2012 03:35:44 +0000</pubDate>
			<dc:creator>Roody</dc:creator>
			<guid isPermaLink="false">10618@http://pnotepad.org/forums/</guid>
			<description>&#60;p&#62;It took me some time to find where things are explained, too. It seems that all of the .scheme files refer to lexers that are built-in to the Scintilla SciLexer.dll file. Unless the language you're trying to add is 100% compatible to one of those built-in lexers, yeah, you need to make a .schemedef file. Here's an example file for prolog. I think I got it from somewhere on here.&#60;/p&#62;
&#60;p&#62;&#60;code&#62;&#60;br /&#62;
&#38;lt;?xml version=&#34;1.0&#34; ?&#38;gt;&#60;/p&#62;
&#60;p&#62;&#38;lt;!-- This is a very improvised, kluged schemedef for Prolog, written without&#60;br /&#62;
     documentation of Programmers Notepad scheme definition syntax.&#60;/p&#62;
&#60;p&#62;     Main limitations:&#60;br /&#62;
	  No folding of comments.&#60;br /&#62;
          Quoted atoms with a quote doubled ('don''t panic') are not treated correctly.&#60;br /&#62;
          Escaped quoted atoms ('don\'t panic') are OK and are preferred.&#60;/p&#62;
&#60;p&#62;     Michael A. Covington - University of Georgia - &#60;a href=&#34;http://www.ai.uga.edu/mc&#34; rel=&#34;nofollow&#34;&#62;http://www.ai.uga.edu/mc&#60;/a&#62;&#60;br /&#62;
--&#38;gt;&#60;/p&#62;
&#60;p&#62;&#38;lt;Scheme&#38;gt;&#60;br /&#62;
&#38;lt;keyword-classes&#38;gt;&#60;br /&#62;
		&#38;lt;keyword-class name=&#34;prolog&#34;&#38;gt;&#60;br /&#62;
		&#38;lt;!-- Strictly speaking Prolog has no keywords. These are the ISO directives. --&#38;gt;&#60;br /&#62;
		dynamic multifile module discontiguous set_prolog_flag&#60;br /&#62;
		op char_conversion initialization include ensure_loaded&#60;br /&#62;
		&#38;lt;/keyword-class&#38;gt;&#60;br /&#62;
	&#38;lt;/keyword-classes&#38;gt;&#60;/p&#62;
&#60;p&#62;	&#38;lt;schemedef name=&#34;prolog&#34; title=&#34;Prolog&#34; author=&#34;M. Covington&#34; url=&#34;http://www.ai.uga.edu/mc/&#34; version=&#34;1&#34;&#60;br /&#62;
		casesensitive=&#34;true&#34; braces=&#34;{[()]}&#34;&#38;gt;&#60;/p&#62;
&#60;p&#62;		&#38;lt;!-- Max 2 --&#38;gt;&#60;br /&#62;
		&#38;lt;strings&#38;gt;&#60;br /&#62;
			&#38;lt;!-- Quoted atom, with \ as an escape character. --&#38;gt;&#60;br /&#62;
			&#38;lt;stringtype id=&#34;0&#34; start=&#34;'&#34; end=&#34;'&#34; multiline=&#34;false&#34; escape=&#34;\&#34; /&#38;gt;&#60;br /&#62;
			&#38;lt;!-- Double quoted string, same --&#38;gt;&#60;br /&#62;
			&#38;lt;stringtype id=&#34;1&#34; start=&#34;&#38;quot;&#34; end=&#34;&#38;quot;&#34; multiline=&#34;false&#34; escape=&#34;\&#34; /&#38;gt;&#60;br /&#62;
		&#38;lt;/strings&#38;gt;&#60;/p&#62;
&#60;p&#62;		&#38;lt;identifiers start=&#34;[\_a-zA-Z]&#34; /&#38;gt;&#60;/p&#62;
&#60;p&#62;		&#38;lt;comments&#38;gt;&#60;br /&#62;
			&#38;lt;line start=&#34;%&#34; /&#38;gt;&#60;br /&#62;
			&#38;lt;block start=&#34;/*&#34; end=&#34;*/&#34; /&#38;gt;&#60;br /&#62;
		&#38;lt;/comments&#38;gt;&#60;/p&#62;
&#60;p&#62;		&#38;lt;numbers start=&#34;[0-9]&#34; content=&#34;[0-9.]&#34; /&#38;gt;&#60;/p&#62;
&#60;p&#62;		&#38;lt;!-- From here on is the traditional scheme definition block... --&#38;gt;&#60;br /&#62;
		&#38;lt;lexer name=&#34;prolog&#34; /&#38;gt;&#60;br /&#62;
		&#38;lt;use-styles&#38;gt;&#60;br /&#62;
			&#38;lt;style name=&#34;Default&#34; key=&#34;32&#34; /&#38;gt;&#60;br /&#62;
			&#38;lt;style name=&#34;Line Comment&#34; key=&#34;1&#34; class=&#34;comment&#34; /&#38;gt;&#60;br /&#62;
			&#38;lt;style name=&#34;Block Comment&#34; key=&#34;2&#34; class=&#34;comment&#34; /&#38;gt;&#60;br /&#62;
			&#38;lt;style name=&#34;Atom, Variable&#34; key=&#34;3&#34; fore=&#34;000080&#34;/&#38;gt;&#60;br /&#62;
			&#38;lt;style name=&#34;Number&#34; key=&#34;4&#34; class=&#34;number&#34; /&#38;gt;&#60;br /&#62;
			&#38;lt;style name=&#34;Directive&#34; key=&#34;5&#34; class=&#34;keyword&#34; /&#38;gt;&#60;br /&#62;
			&#38;lt;!-- &#38;lt;style name=&#34;Keywords 2&#34; key=&#34;6&#34; class=&#34;keyword&#34; fore=&#34;f80000&#34; /&#38;gt; --&#38;gt;&#60;br /&#62;
			&#38;lt;style name=&#34;Quoted Atom&#34; key=&#34;10&#34; class=&#34;string&#34; /&#38;gt;&#60;br /&#62;
			&#38;lt;style name=&#34;Edinburgh String&#34; key=&#34;11&#34; class=&#34;string&#34; fore=&#34;f80000&#34;/&#38;gt;&#60;br /&#62;
			&#38;lt;!-- &#38;lt;style name=&#34;Pre-Processor&#34; key=&#34;12&#34; class=&#34;preprocessor&#34; /&#38;gt; --&#38;gt;&#60;br /&#62;
			&#38;lt;!-- &#38;lt;style name=&#34;Special Identifier&#34; key=&#34;13&#34; fore=&#34;478698&#34; /&#38;gt; --&#38;gt;&#60;br /&#62;
		&#38;lt;/use-styles&#38;gt;&#60;/p&#62;
&#60;p&#62;		&#38;lt;use-keywords&#38;gt;&#60;br /&#62;
			&#38;lt;keyword key=&#34;0&#34; name=&#34;Keywords&#34; class=&#34;prolog&#34;/&#38;gt;&#60;br /&#62;
		&#38;lt;/use-keywords&#38;gt;&#60;/p&#62;
&#60;p&#62;	&#38;lt;/schemedef&#38;gt;&#60;br /&#62;
&#38;lt;/Scheme&#38;gt;&#60;br /&#62;
&#60;/code&#62;
&#60;/p&#62;</description>
		</item>
		<item>
                        <title>Creating a new scheme in PN portable (prgcoder)</title>
			<link>http://pnotepad.org/forums/topic/7445#post-10617</link>
			<pubDate>Fri, 27 Jan 2012 06:17:17 +0000</pubDate>
			<dc:creator>prgcoder</dc:creator>
			<guid isPermaLink="false">10617@http://pnotepad.org/forums/</guid>
			<description>&#60;p&#62;Hi All, &#38;lt;first post&#38;gt;&#60;br /&#62;
I am having some problems trying to create a scheme for Ingres and/or OpenRoad.&#60;br /&#62;
I am using the portable version of PN (nice).&#60;br /&#62;
I see in the forum some talk of .schemedef files - i do not see any of these in the portable version.&#60;br /&#62;
I have tried copying existing .scheme files and associated them through the Tools &#38;gt; Options &#38;gt; Files &#38;gt; Add button, but no luck.&#60;/p&#62;
&#60;p&#62;Any pointers would be greatly appreciated.&#60;/p&#62;
&#60;p&#62;Regards,&#60;br /&#62;
Andy.
&#60;/p&#62;</description>
		</item>
		<item>
                        <title>PN on Linux (Ubuntu) (nebenaube)</title>
			<link>http://pnotepad.org/forums/topic/4903#post-10615</link>
			<pubDate>Thu, 26 Jan 2012 05:04:06 +0000</pubDate>
			<dc:creator>nebenaube</dc:creator>
			<guid isPermaLink="false">10615@http://pnotepad.org/forums/</guid>
			<description>&#60;p&#62;Solved my own problem, I had to install the VC9 runtimes in wine. &#60;/p&#62;
&#60;p&#62;&#60;a href=&#34;http://www.microsoft.com/downloads/details.aspx?FamilyID=A821847E-4C44-45C0-9128-61C822BB3280&#38;#038;displaylang=e&#38;#038;displaylang=en&#34; rel=&#34;nofollow&#34;&#62;http://www.microsoft.com/downloads/details.aspx?FamilyID=A821847E-4C44-45C0-9128-61C822BB3280&#38;#038;displaylang=e&#38;#038;displaylang=en&#60;/a&#62;
&#60;/p&#62;</description>
		</item>
		<item>
                        <title>PN on Linux (Ubuntu) (nebenaube)</title>
			<link>http://pnotepad.org/forums/topic/4903#post-10614</link>
			<pubDate>Thu, 26 Jan 2012 00:20:54 +0000</pubDate>
			<dc:creator>nebenaube</dc:creator>
			<guid isPermaLink="false">10614@http://pnotepad.org/forums/</guid>
			<description>&#60;p&#62;Greets, I intend to use pn.exe in Ubuntu 11.10 under wine.  I haven't experienced any crashes yet, but I am having problems with ctags.exe being force closed when opening files.  I've tried setting the path in the wine registry but that doesn't appear to help.  Anybody else?  The only problem I can find reference to is the search function which seems to work fine.
&#60;/p&#62;</description>
		</item>
		<item>
                        <title>A couple schemedef questions (re: preprocessor, comments) (Roody)</title>
			<link>http://pnotepad.org/forums/topic/7438#post-10606</link>
			<pubDate>Sat, 21 Jan 2012 20:37:15 +0000</pubDate>
			<dc:creator>Roody</dc:creator>
			<guid isPermaLink="false">10606@http://pnotepad.org/forums/</guid>
			<description>&#60;p&#62;Hi, I use a somewhat obscure text adventure language called Hugo that has some funny syntax, and now I'm trying to make a PN schemedef file to suit it.&#60;/p&#62;
&#60;p&#62;First off, is there any way to terminate the preprocessor coloring before the end of line? I've played around with some methods but nothing has worked.&#60;/p&#62;
&#60;p&#62;Secondly, is there a way to use regular expression for comment definitions? Hugo uses &#34;!&#34; for single line comments, and &#34;!\&#34; to begin blocks and &#34;\!&#34; to end blocks. Right now, they aren't coexisting happily.&#60;/p&#62;
&#60;p&#62;Thanks for any help!
&#60;/p&#62;</description>
		</item>
		<item>
                        <title>Possible to open a document with all folds collapsed? (maxmanley)</title>
			<link>http://pnotepad.org/forums/topic/7435#post-10603</link>
			<pubDate>Fri, 20 Jan 2012 11:23:19 +0000</pubDate>
			<dc:creator>maxmanley</dc:creator>
			<guid isPermaLink="false">10603@http://pnotepad.org/forums/</guid>
			<description>&#60;p&#62;Currently when I open a document all folds are expanded.  Is it possible to have it opened with the folds colla[sed?  Maybe a command-line switch or something?&#60;/p&#62;
&#60;p&#62;Thanks in advance for any assistance.
&#60;/p&#62;</description>
		</item>
		<item>
                        <title>Convert portable  &#34;classic&#34; ? what to do? (jwka)</title>
			<link>http://pnotepad.org/forums/topic/7433#post-10601</link>
			<pubDate>Thu, 19 Jan 2012 16:40:44 +0000</pubDate>
			<dc:creator>jwka</dc:creator>
			<guid isPermaLink="false">10601@http://pnotepad.org/forums/</guid>
			<description>&#60;p&#62;Hi all,&#60;/p&#62;
&#60;p&#62;I have used the &#34;clasic&#34; install so far but now I need to replicate the settings etc. between some PC's and I guess the easiest way to do so is using the portable version?&#60;/p&#62;
&#60;p&#62;Can anyone direct me as how to bring my settings (especially the color schemes and textclips) from my classic installation to the portable one?&#60;/p&#62;
&#60;p&#62;Thanks in advance&#60;br /&#62;
jwka
&#60;/p&#62;</description>
		</item>
		<item>
                        <title>RegEx in PN  - Example (NickDMax)</title>
			<link>http://pnotepad.org/forums/topic/7416#post-10570</link>
			<pubDate>Thu, 12 Jan 2012 15:30:06 +0000</pubDate>
			<dc:creator>NickDMax</dc:creator>
			<guid isPermaLink="false">10570@http://pnotepad.org/forums/</guid>
			<description>&#60;p&#62;Well I think that the dot operator should be [^\r\n] because as the defect points out the current behavior is not consistent. However I love that PN does actually support multi-line regex - i.e. that [\s\S] WILL match across new-line chars. Though I suppose that it would be nice to have a &#34;single-line/muti-line&#34; option that would either look at the document on a line-by-line basis or (as it is currently) as a single stream.&#60;/p&#62;
&#60;p&#62;Since this is one area of PN that I use extensively I too will be looking into improving PN's regex support. For my personal use I have already added the &#60;a href=&#34;http://code.google.com/p/pnotepad/issues/detail?id=1534&#38;amp;q=regex&#38;amp;sort=-id&#34;&#62;format_perl&#60;/a&#62; features from Xpressive.&#60;/p&#62;
&#60;p&#62;I also spectacularly failed in my attempt to add Unicode support for replace! However, I am still looking into how you managed to get unicode search working and I am confident that I can sort things out. My fail-safe plan is to parse the replace string and &#34;encode&#34; the unicode chars into \x00\x00 etc. so that the replace string can remain a std::string. However, I know next to nothing about the non-ASCII world so I don't know how successful I will be. I will probably pester you with questions. :)
&#60;/p&#62;</description>
		</item>
		<item>
                        <title>AutoIt3 - Updated au3.scheme file (2012, v3.3.8.0) (simon)</title>
			<link>http://pnotepad.org/forums/topic/7351#post-10569</link>
			<pubDate>Thu, 12 Jan 2012 10:21:59 +0000</pubDate>
			<dc:creator>simon</dc:creator>
			<guid isPermaLink="false">10569@http://pnotepad.org/forums/</guid>
			<description>&#60;p&#62;Thanks for your contribution!
&#60;/p&#62;</description>
		</item>
		<item>
                        <title>Polish translation is ready (simon)</title>
			<link>http://pnotepad.org/forums/topic/7233#post-10568</link>
			<pubDate>Thu, 12 Jan 2012 10:21:47 +0000</pubDate>
			<dc:creator>simon</dc:creator>
			<guid isPermaLink="false">10568@http://pnotepad.org/forums/</guid>
			<description>&#60;p&#62;Thanks maroQ, I'll be adding it for the next release! Please update the issue with a name to put in the credits.
&#60;/p&#62;</description>
		</item>
		<item>
                        <title>RegEx in PN  - Example (simon)</title>
			<link>http://pnotepad.org/forums/topic/7416#post-10567</link>
			<pubDate>Thu, 12 Jan 2012 10:20:39 +0000</pubDate>
			<dc:creator>simon</dc:creator>
			<guid isPermaLink="false">10567@http://pnotepad.org/forums/</guid>
			<description>&#60;p&#62;Excellent stuff! This would be great content for the docs or blog - perhaps both. &#60;/p&#62;
&#60;p&#62;It's definitely worth looking into Xpressive's newline matching behaviour. I agree that generally we don't want to match newlines, although for some multi-line matching it can be useful.
&#60;/p&#62;</description>
		</item>
		<item>
                        <title>RegEx in PN  - Example (NickDMax)</title>
			<link>http://pnotepad.org/forums/topic/7416#post-10563</link>
			<pubDate>Wed, 11 Jan 2012 23:37:56 +0000</pubDate>
			<dc:creator>NickDMax</dc:creator>
			<guid isPermaLink="false">10563@http://pnotepad.org/forums/</guid>
			<description>&#60;p&#62;As long as we are on the topic of RegEx: &#60;a href=&#34;http://code.google.com/p/pnotepad/issues/detail?id=1533&#38;amp;sort=-id&#34;&#62;There is a defect logged about the nature of the dot (.) operator.&#60;/a&#62; As I understand it the dot operator should not match to EOL chars. The XPressive search is given the option regex_constants::not_dot_newline which keeps the dot from matching to \n. However windows tends to use \r\n as a newline marker and the dot will match to \r.&#60;/p&#62;
&#60;p&#62;So when it comes to the end of the line, the dot operator can be a little funny. So often it is best just to not use it!&#60;/p&#62;
&#60;p&#62;the dot operator operates as: [^\n] -- matches everything BUT the new line char.&#60;br /&#62;
What windows users typically expect: [^\r\n] -- match everything BUT the windows new line chars&#60;br /&#62;
How to match any char: [\s\S] -- will match any char.&#60;/p&#62;
&#60;p&#62;Example: Say you want to replace the inner most div tags with span tags.&#60;/p&#62;
&#60;p&#62;Find What: &#38;lt;div&#38;gt;(?![\s\S]*?&#38;lt;div&#38;gt;[\s\S]*)([\s\S]*?)&#38;lt;/div&#38;gt;&#60;br /&#62;
Replace with: &#38;lt;span&#38;gt;\1&#38;lt;/span&#38;gt;&#60;/p&#62;
&#60;p&#62;The basic version of this regex is: &#38;lt;div&#38;gt;([\s\S]*?)&#38;lt;/div&#38;gt;&#60;/p&#62;
&#60;p&#62;this captures all chars inside of a div tag-- however if the tags are nested then problems happen since this will match the first open div tag with the first close div tag. So we add an assertion that the match does not include a div tag itself. The result is that we will look for the inner most div tag (assuming of course valid HTML).&#60;/p&#62;
&#60;p&#62;The point of the example is that we can use [\s\S] to capture all chars in the tags (including new line chars). \s is the class of all white-space characters and \S is the set of all NON-white-space characters. One could equally use [\w\W] or [\d\D] &#60;/p&#62;
&#60;p&#62;Sometimes however it is nice to be able to limit our searches to a single line. Using [\s\S] can get us into trouble here since even something like: //([\s\S]*)$ &#60;/p&#62;
&#60;p&#62;an attempt to grab the content of an end-of-line comment - but this will match past the end of lines. We would need: //([\s\S]*?)$  to ensure the non-greedy match.&#60;/p&#62;
&#60;p&#62;Or we could just be more specific on what we were looking for: //([^\r\n]*)&#60;/p&#62;
&#60;p&#62;So it is true that the dot operator is a little buggy in PN (when operating of files using \r\n or \r line endings) but a little knowledge can get you around and let you use the full power of PN's regular expression search and replace.
&#60;/p&#62;</description>
		</item>
		<item>
                        <title>RegEx in PN  - Example (NickDMax)</title>
			<link>http://pnotepad.org/forums/topic/7416#post-10562</link>
			<pubDate>Wed, 11 Jan 2012 15:05:11 +0000</pubDate>
			<dc:creator>NickDMax</dc:creator>
			<guid isPermaLink="false">10562@http://pnotepad.org/forums/</guid>
			<description>&#60;p&#62;So how might this be useful? Well people often use TODO: tags in comments to identify tasks that need to be completed. The following PyPn script will extract all TODO: EOL comments (on their own line) into a new file.&#60;/p&#62;
&#60;pre&#62;&#60;code&#62;###############################################################################
## Extract all ToDo lines into a new file
## By: NickDMax

import pn
import scintilla
from pypn.decorators import script

@script(&#38;quot;Extract Todo&#38;quot;,&#38;quot;CPP Utils&#38;quot;)
def Name():
    &#38;quot;&#38;quot;&#38;quot; Extract TODO: lines into a new file &#38;quot;&#38;quot;&#38;quot;
    #recorded search/replace wrapped in an UndoAction
    doc = pn.CurrentDoc()
    sci = scintilla.Scintilla(doc)
    sci.BeginUndoAction()
    opt = pn.GetUserSearchOptions()
    opt.FindText = u&#38;#039;^(?:(?![ \\t]*//[ \\t]*(?i:TODO:)).*(?:\\r\\n)+&#124;[ \\t]*//[ \\t]*(?i:TODO:)[ \\t]*(.*)(\\r\\n)?(?:\\r\\n)*)&#38;#039;
    opt.MatchWholeWord = False
    opt.MatchCase = False
    opt.UseRegExp = True
    opt.SearchBackwards = False
    opt.LoopOK = True
    opt.UseSlashes = False
    opt.ReplaceText = u&#38;#039;\\1\\2&#38;#039;
    opt.ReplaceInSelection = False
    doc.ReplaceAll(opt)
    sci.EndUndoAction()
    #Now to save the text in a new file
    startPos = 0
    endPos = sci.Length
    text = sci.GetTextRange(startPos, endPos)
    newDoc = pn.NewDocument(&#38;quot;&#38;quot;)
    newsci = scintilla.Scintilla(newDoc)
    newsci.BeginUndoAction()
    newsci.AppendText(len(text), text)
    newsci.EndUndoAction()
    #restore the document
    sci.Undo();&#60;/code&#62;&#60;/pre&#62;
&#60;p&#62;Of course I have only tested this with one test file:&#60;br /&#62;
&#60;pre&#62;&#60;code&#62;#include&#38;lt;iostream&#38;gt;

//TODO: remember to do something here.

int main() {
    //TODO: remember to do something else here
    //  TODO:  oh don&#38;#039;t forget to do this

    return 0;
}

//  ToDo:   and then there is this here too.&#60;/code&#62;&#60;/pre&#62;
&#60;p&#62;So a little more testing is probably needed to ensure that it is working as expected.
&#60;/p&#62;</description>
		</item>
		<item>
                        <title>RegEx in PN  - Example (NickDMax)</title>
			<link>http://pnotepad.org/forums/topic/7416#post-10559</link>
			<pubDate>Wed, 11 Jan 2012 02:51:44 +0000</pubDate>
			<dc:creator>NickDMax</dc:creator>
			<guid isPermaLink="false">10559@http://pnotepad.org/forums/</guid>
			<description>&#60;p&#62;So I was thinking about this &#60;a href=&#34;http://untidy.net/blog/2011/05/18/regular-expressions-and-scripts-worked-example/&#34;&#62;RegEx/Script example from the Untidy blog&#60;/a&#62; and I thought: &#34;Can that be one in 1 RegEx?&#34;&#60;/p&#62;
&#60;p&#62;The answer is of course: Yes - but would you really want to.&#60;/p&#62;
&#60;p&#62;Search: ^(?:(?!LogStep).*(?:\r\n)+)&#124;(?:LogStep\(\s*&#34;([^&#34;]+)&#34;\s*\).*(\r\n)(\r\n)*)&#60;br /&#62;
Replace: \1\2&#60;/p&#62;
&#60;p&#62;hit &#38;lt;Replace All&#38;gt;&#60;/p&#62;
&#60;p&#62;This is a pretty complex RegEx so lets break it up. The overall structure is A&#124;B&#60;/p&#62;
&#60;p&#62;A: RegEx to match the rest of a line NOT BEGINNING with &#34;LogStep&#34;&#60;br /&#62;
B: RegEx to match the rest of a line that DOES begin with &#34;LogStep&#34; - capture the text (and a CRLF new line)&#60;/p&#62;
&#60;p&#62;The whole thing is wrapped in a the expression: ^(?:A&#124;B)&#60;/p&#62;
&#60;p&#62;where ^ asserts the beginning of a line, and (?: ) is a non-capture group - that is it treated as a group but not captured into \1 or \2 etc. - this outer non-capture group creates separation. Without it our expression would need to be: ^A&#124;^B&#60;/p&#62;
&#60;p&#62;Since the expression A contains no capture groups BUT the overall expression DOES contain capture 2 capture groups \1 and \2 will be empty when expression A matches. When B matches \1 is the text inside of the quotation marks, and \2 is a crlf (\r\n) pair.
&#60;/p&#62;</description>
		</item>
		<item>
                        <title>AutoIt3 - Updated au3.scheme file (2012, v3.3.8.0) (ascend4nt)</title>
			<link>http://pnotepad.org/forums/topic/7351#post-10483</link>
			<pubDate>Thu, 05 Jan 2012 07:41:02 +0000</pubDate>
			<dc:creator>ascend4nt</dc:creator>
			<guid isPermaLink="false">10483@http://pnotepad.org/forums/</guid>
			<description>&#60;p&#62;Since the au3.scheme file on the Add-Ons page is outdated, and I've been using Programmer's Notepad 2 to do some script editing, I decided to update the scheme so that syntax highlighting works as it does in SciTE.&#60;/p&#62;
&#60;p&#62;Here's a link to the updated au3.scheme file:&#60;br /&#62;
&#60;a href=&#34;https://sites.google.com/site/ascend4ntscode/autoit3-syntax-highlighters/au3.scheme?attredirects=0&#38;#038;d=1&#34; rel=&#34;nofollow&#34;&#62;https://sites.google.com/site/ascend4ntscode/autoit3-syntax-highlighters/au3.scheme?attredirects=0&#38;#038;d=1&#60;/a&#62;&#60;/p&#62;
&#60;p&#62;Just put that in the 'schemes' folder and restart the program.&#60;/p&#62;
&#60;p&#62;Thanks for this great program!&#60;br /&#62;
Ascend4nt
&#60;/p&#62;</description>
		</item>
		<item>
                        <title>Scintilla document functions/methods not mapped in PyPN (simon)</title>
			<link>http://pnotepad.org/forums/topic/5483#post-10351</link>
			<pubDate>Wed, 28 Dec 2011 21:51:42 +0000</pubDate>
			<dc:creator>simon</dc:creator>
			<guid isPermaLink="false">10351@http://pnotepad.org/forums/</guid>
			<description>&#60;p&#62;Thanks, I've also fixed up registration - I guess it got broken by a security upgrade at some point.
&#60;/p&#62;</description>
		</item>
		<item>
                        <title>Polish translation is ready (maroQ)</title>
			<link>http://pnotepad.org/forums/topic/7233#post-10348</link>
			<pubDate>Wed, 28 Dec 2011 20:12:22 +0000</pubDate>
			<dc:creator>maroQ</dc:creator>
			<guid isPermaLink="false">10348@http://pnotepad.org/forums/</guid>
			<description>&#60;p&#62;I have written translation to Polish language and I have add it in here: &#60;a href=&#34;https://code.google.com/p/pnotepad/issues/detail?id=1539&#38;#038;thanks=1539&#38;#038;ts=1325102927&#34; rel=&#34;nofollow&#34;&#62;https://code.google.com/p/pnotepad/issues/detail?id=1539&#38;#038;thanks=1539&#38;#038;ts=1325102927&#60;/a&#62;&#60;/p&#62;
&#60;p&#62;Plz let me know when you will add it to Programmers Notepad.&#60;/p&#62;
&#60;p&#62;I'm using Programmers Notepad right now so if there will be any translation problem I will try to solve it :D
&#60;/p&#62;</description>
		</item>
		<item>
                        <title>Vertical line indicator (CoDEmanX)</title>
			<link>http://pnotepad.org/forums/topic/6545#post-10203</link>
			<pubDate>Wed, 21 Dec 2011 23:04:52 +0000</pubDate>
			<dc:creator>CoDEmanX</dc:creator>
			<guid isPermaLink="false">10203@http://pnotepad.org/forums/</guid>
			<description>&#60;p&#62;See this &#60;a href=&#34;http://img6.imagebanana.com/img/18jt8xr2/PNLineNumberColumn.png&#34;&#62;Screenshot with annotations&#60;/a&#62;
&#60;/p&#62;</description>
		</item>
		<item>
                        <title>auto-close tags (metaphor)</title>
			<link>http://pnotepad.org/forums/topic/6972#post-10197</link>
			<pubDate>Wed, 21 Dec 2011 18:14:11 +0000</pubDate>
			<dc:creator>metaphor</dc:creator>
			<guid isPermaLink="false">10197@http://pnotepad.org/forums/</guid>
			<description>&#60;p&#62;yes of course, nevermind I was just being stupid...&#60;br /&#62;
thanks
&#60;/p&#62;</description>
		</item>
		<item>
                        <title>auto-close tags (CoDEmanX)</title>
			<link>http://pnotepad.org/forums/topic/6972#post-10192</link>
			<pubDate>Wed, 21 Dec 2011 13:32:54 +0000</pubDate>
			<dc:creator>CoDEmanX</dc:creator>
			<guid isPermaLink="false">10192@http://pnotepad.org/forums/</guid>
			<description>&#60;p&#62;Tools - options - autocomplete - autocomplete after 2 characters
&#60;/p&#62;</description>
		</item>
		<item>
                        <title>Scintilla document functions/methods not mapped in PyPN (NickDMax)</title>
			<link>http://pnotepad.org/forums/topic/5483#post-10149</link>
			<pubDate>Tue, 20 Dec 2011 18:53:53 +0000</pubDate>
			<dc:creator>NickDMax</dc:creator>
			<guid isPermaLink="false">10149@http://pnotepad.org/forums/</guid>
			<description>&#60;p&#62;&#60;a href=&#34;http://www.pnotepad.org/docs/pypn_api_pages#the_scintilla_module&#34;&#62;Done&#60;/a&#62;
&#60;/p&#62;</description>
		</item>
		<item>
                        <title>auto-close tags (metaphor)</title>
			<link>http://pnotepad.org/forums/topic/6972#post-10145</link>
			<pubDate>Tue, 20 Dec 2011 17:25:08 +0000</pubDate>
			<dc:creator>metaphor</dc:creator>
			<guid isPermaLink="false">10145@http://pnotepad.org/forums/</guid>
			<description>&#60;p&#62;Oh by the way, a different topic but before I forget...&#60;br /&#62;
The autocomplete only works with ctrl+j right? Isn't there a way of showing it automatically after writing two letters of the function or so? You really need to press the shortcut keys to trigger it?&#60;/p&#62;
&#60;p&#62;Cheers once again.
&#60;/p&#62;</description>
		</item>

	</channel>
</rss>

