<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Select bookmarked lines]]></title><description><![CDATA[<p dir="auto">Is there a way to do it? I want to de a series of steps, which is not possible using any plugin what so ever, so if anyone could help i will be grateful.</p>
<p dir="auto">1st one is select the bookmarked lines and add a certain text at the start and end of each “selected line”</p>
<p dir="auto">2nd one is reverseing the order of selected text, for example: 12345 will be 54321, but for the unicode character set, not only ASCII characters.<br />
For instance, the sentence<br />
(hello in Japanese is こんにちは), will be<br />
(はちにんこ si esenapaJ ni olleh)</p>
]]></description><link>https://community.notepad-plus-plus.org/topic/12932/select-bookmarked-lines</link><generator>RSS for Node</generator><lastBuildDate>Sat, 11 Jul 2026 20:19:42 GMT</lastBuildDate><atom:link href="https://community.notepad-plus-plus.org/topic/12932.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 16 Dec 2016 19:17:15 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Select bookmarked lines on Wed, 21 Dec 2016 21:05:25 GMT]]></title><description><![CDATA[<p dir="auto">Hi, <strong>abuali huma</strong>,</p>
<p dir="auto">Not <strong>very</strong> difficult to achieve !</p>
<hr />
<p dir="auto"><strong>EXAMPLE 1</strong> :</p>
<p dir="auto">SEARCH <strong><code>^(.+)\|(.+)</code></strong></p>
<p dir="auto">REPLACE <strong><code>\2|\1</code></strong></p>
<p dir="auto"><strong>Notes</strong> :</p>
<ul>
<li>
<p dir="auto">This <strong>first</strong>  regex separates the <strong>two</strong> parts of text, <strong>before</strong> and <strong>after</strong> the symbol <strong><code>|</code></strong> , which must be <strong>escaped</strong> ( <strong><code>\|</code></strong> ) as this symbol, in <strong>search</strong> regexes, stands for the normal <strong>alternation</strong> symbol !</p>
</li>
<li>
<p dir="auto">The part, <strong>before</strong> the symbol, is stored as <strong>group 1</strong> and the part, located <strong>after</strong>, is stored as <strong>group 2</strong></p>
</li>
<li>
<p dir="auto">In <strong>replacement</strong>, we just <strong>reverse</strong> the order of these <strong>two</strong> groups</p>
</li>
</ul>
<hr />
<p dir="auto"><strong>EXAMPLE 2</strong></p>
<p dir="auto">SEARCH <strong><code>^(.+?)\|(.+)\|(.+)</code></strong></p>
<p dir="auto">REPLACE <strong><code>\3|\2|\1</code></strong></p>
<p dir="auto"><strong>Notes</strong> :</p>
<ul>
<li>
<p dir="auto">This <strong>second</strong> regex separates the <strong>three</strong> parts of text, created by the symbol <strong><code>|</code></strong>, which are stored as <strong>group 1</strong>, <strong>group 2</strong> and <strong>group 3</strong></p>
</li>
<li>
<p dir="auto">The first part <strong><code>^(.+?)\|</code></strong>, tries to match, from <strong>beginning</strong> of line ( <strong><code>^</code></strong>) , the <strong>shortest non-null</strong> range of characters, till the <strong>FIRST separation</strong> symbol ( <strong><code>\|</code></strong> ), because of the <strong>lazy</strong> quantifier  ( <strong><code>+?</code></strong>)</p>
</li>
<li>
<p dir="auto">Note that if we would have written this <strong>first</strong>  part <strong><code>^(.+)\|</code></strong>, it would have matched the string <strong>this is text number three|this is text number two</strong>. Indeed, due to the <strong>greedy</strong> quantifier ( <strong><code>+</code></strong> ), it would have matched the <strong>tallest non-null</strong> range of characters, till the <strong>SECOND separation</strong> symbol !</p>
</li>
<li>
<p dir="auto">Then for the <strong>two remaining</strong> parts, of the regex, <strong><code>(.+)\|(.+)</code></strong> just refer to the <strong>previous</strong> regex for explanations</p>
</li>
<li>
<p dir="auto">In <strong>replacement</strong>, we just perform a <strong>permutation</strong> of these <strong>three</strong> groups</p>
</li>
</ul>
<p dir="auto">Cheers,</p>
<p dir="auto">guy038</p>
]]></description><link>https://community.notepad-plus-plus.org/post/20205</link><guid isPermaLink="true">https://community.notepad-plus-plus.org/post/20205</guid><dc:creator><![CDATA[guy038]]></dc:creator><pubDate>Wed, 21 Dec 2016 21:05:25 GMT</pubDate></item><item><title><![CDATA[Reply to Select bookmarked lines on Wed, 21 Dec 2016 04:00:13 GMT]]></title><description><![CDATA[<p dir="auto">Back again,<br />
this time I want to swap two sentences or three separated by a symbol.</p>
<p dir="auto">example1<br />
Original</p>
<pre><code> this is text number two|This is text number one
</code></pre>
<p dir="auto">Result</p>
<pre><code> This is text number one|this is text number two
</code></pre>
<p dir="auto">Example2</p>
<pre><code> this is text number three|this is text number two|This is text number one
</code></pre>
<p dir="auto">Result</p>
<pre><code> This is text number one|this is text number two|this is text number three
</code></pre>
]]></description><link>https://community.notepad-plus-plus.org/post/20182</link><guid isPermaLink="true">https://community.notepad-plus-plus.org/post/20182</guid><dc:creator><![CDATA[abuali huma]]></dc:creator><pubDate>Wed, 21 Dec 2016 04:00:13 GMT</pubDate></item><item><title><![CDATA[Reply to Select bookmarked lines on Tue, 20 Dec 2016 12:37:12 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/guy038" aria-label="Profile: guy038">@<bdi>guy038</bdi></a> said:</p>
<blockquote>
<p dir="auto">Hi, <strong>abuali huma</strong>,</p>
<p dir="auto">OK.! So, the <strong>general</strong> S/R becomes :</p>
<p dir="auto">SEARCH <strong><code>(?-si)^(.+?)(;.*)\R(.+)</code></strong></p>
<p dir="auto">REPLACE <strong><code>\3\2\1</code></strong></p>
<p dir="auto"><strong>NOTES</strong> :</p>
<ul>
<li>
<p dir="auto">The <strong>group 2</strong>, ( <strong><code>(;.*)</code></strong> ), begins, as expected, with a <strong>semicolon</strong>, followed by any range, even <strong>empty</strong>, of <strong>standard</strong> character(s) ( Remember that the quantifier <strong><code>*</code></strong> is the <strong>short</strong> form for <strong><code>{0,}</code></strong> ! )</p>
</li>
<li>
<p dir="auto">The <strong>group 1</strong>, ( <strong><code>(.+?)</code></strong> ), after the location <strong>beginning</strong> of line, looks for the <strong>shortest</strong>, <strong>NON-empty</strong>, range of <strong>standard</strong> character, till a <strong>semicolon</strong>.</p>
</li>
<li>
<p dir="auto">Note that the form <strong><code>.+?</code></strong>, equivalent to <strong><code>.{1,}?</code></strong> is a <strong>lazy</strong> quantifier, which forces the regex engine to find the <strong>MINIMUM</strong> of <strong>standard</strong> characters till a <strong>semicolon</strong> =&gt; So, in your previous <strong>first</strong> example, <strong>group 1</strong> is equal to the string <strong>こんにちは</strong></p>
</li>
<li>
<p dir="auto">On the contrary, if we have used the <strong>greedy</strong> quantifier, <strong><code>.+</code></strong>, equivalent to <strong><code>.{1,}</code></strong>, it would have forced the regex engine to find the <strong>MAXIMUM</strong> of <strong>standard</strong> characters, till a <strong>semicolon</strong>. So, in your previous <strong>first</strong> example, <strong>group 1</strong> would have been equal to the string <strong>こんにちは;Ax#&amp;</strong>, before the <strong>second</strong> semicolon !</p>
</li>
<li>
<p dir="auto">The <strong>group 3</strong>, ( <strong><code>(.+)</code></strong> ), after the <strong>EOL</strong> character(s) of the <strong>first</strong> line, represents any <strong>NON-empty</strong> range of <strong>standard</strong> characters, of the <strong>second</strong> line</p>
</li>
<li>
<p dir="auto">Remember that, as <strong>each</strong> group contains <strong>standard</strong> characters, they may, also, <strong>begins</strong> and/or <strong>ends</strong> with some <strong>space</strong> or <strong>tabulation</strong> character(s), except for <strong>group 2</strong>, which must begin with a <strong>semicolon</strong></p>
</li>
</ul>
<hr />
<p dir="auto">BTW, to know the meaning of the different <strong>quantifiers</strong>, just see my post to <strong>Casey</strong>, below :</p>
<p dir="auto"><a href="https://notepad-plus-plus.org/community/topic/12905/how-to-remove-duplicate-row-in-find-result/4**NON-empty" rel="nofollow ugc">https://notepad-plus-plus.org/community/topic/12905/how-to-remove-duplicate-row-in-find-result/4**NON-empty</a>**</p>
<p dir="auto">Best Regards,</p>
<p dir="auto">guy038</p>
</blockquote>
<p dir="auto">Thanks, that is perfect one, it saved me alot of time</p>
]]></description><link>https://community.notepad-plus-plus.org/post/20158</link><guid isPermaLink="true">https://community.notepad-plus-plus.org/post/20158</guid><dc:creator><![CDATA[hu ma]]></dc:creator><pubDate>Tue, 20 Dec 2016 12:37:12 GMT</pubDate></item><item><title><![CDATA[Reply to Select bookmarked lines on Sun, 18 Dec 2016 03:31:10 GMT]]></title><description><![CDATA[<p dir="auto">Hi, <strong>abuali huma</strong>,</p>
<p dir="auto">OK.! So, the <strong>general</strong> S/R becomes :</p>
<p dir="auto">SEARCH <strong><code>(?-si)^(.+?)(;.*)\R(.+)</code></strong></p>
<p dir="auto">REPLACE <strong><code>\3\2\1</code></strong></p>
<p dir="auto"><strong>NOTES</strong> :</p>
<ul>
<li>
<p dir="auto">The <strong>group 2</strong>, ( <strong><code>(;.*)</code></strong> ), begins, as expected, with a <strong>semicolon</strong>, followed by any range, even <strong>empty</strong>, of <strong>standard</strong> character(s) ( Remember that the quantifier <strong><code>*</code></strong> is the <strong>short</strong> form for <strong><code>{0,}</code></strong> ! )</p>
</li>
<li>
<p dir="auto">The <strong>group 1</strong>, ( <strong><code>(.+?)</code></strong> ), after the location <strong>beginning</strong> of line, looks for the <strong>shortest</strong>, <strong>NON-empty</strong>, range of <strong>standard</strong> character, till a <strong>semicolon</strong>.</p>
</li>
<li>
<p dir="auto">Note that the form <strong><code>.+?</code></strong>, equivalent to <strong><code>.{1,}?</code></strong> is a <strong>lazy</strong> quantifier, which forces the regex engine to find the <strong>MINIMUM</strong> of <strong>standard</strong> characters till a <strong>semicolon</strong> =&gt; So, in your previous <strong>first</strong> example, <strong>group 1</strong> is equal to the string <strong>こんにちは</strong></p>
</li>
<li>
<p dir="auto">On the contrary, if we have used the <strong>greedy</strong> quantifier, <strong><code>.+</code></strong>, equivalent to <strong><code>.{1,}</code></strong>, it would have forced the regex engine to find the <strong>MAXIMUM</strong> of <strong>standard</strong> characters, till a <strong>semicolon</strong>. So, in your previous <strong>first</strong> example, <strong>group 1</strong> would have been equal to the string <strong>こんにちは;Ax#&amp;</strong>, before the <strong>second</strong> semicolon !</p>
</li>
<li>
<p dir="auto">The <strong>group 3</strong>, ( <strong><code>(.+)</code></strong> ), after the <strong>EOL</strong> character(s) of the <strong>first</strong> line, represents any <strong>NON-empty</strong> range of <strong>standard</strong> characters, of the <strong>second</strong> line</p>
</li>
<li>
<p dir="auto">Remember that, as <strong>each</strong> group contains <strong>standard</strong> characters, they may, also, <strong>begins</strong> and/or <strong>ends</strong> with some <strong>space</strong> or <strong>tabulation</strong> character(s), except for <strong>group 2</strong>, which must begin with a <strong>semicolon</strong></p>
</li>
</ul>
<hr />
<p dir="auto">BTW, to know the meaning of the different <strong>quantifiers</strong>, just see my post to <strong>Casey</strong>, below :</p>
<p dir="auto"><a href="https://notepad-plus-plus.org/community/topic/12905/how-to-remove-duplicate-row-in-find-result/4**NON-empty" rel="nofollow ugc">https://notepad-plus-plus.org/community/topic/12905/how-to-remove-duplicate-row-in-find-result/4**NON-empty</a>**</p>
<p dir="auto">Best Regards,</p>
<p dir="auto">guy038</p>
]]></description><link>https://community.notepad-plus-plus.org/post/20107</link><guid isPermaLink="true">https://community.notepad-plus-plus.org/post/20107</guid><dc:creator><![CDATA[guy038]]></dc:creator><pubDate>Sun, 18 Dec 2016 03:31:10 GMT</pubDate></item><item><title><![CDATA[Reply to Select bookmarked lines on Sat, 17 Dec 2016 21:08:29 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/guy038" aria-label="Profile: guy038">@<bdi>guy038</bdi></a> said:</p>
<blockquote>
<p dir="auto"><strong>abuali huma</strong>,</p>
<p dir="auto">Seemingly, you consider in the <strong>original first</strong> line, <strong>two</strong> parts :</p>
<ul>
<li>
<p dir="auto">The <strong>first</strong> part , which, <strong>after</strong> replacement, will be moved to the <strong>end</strong> of this <strong>first</strong> line</p>
</li>
<li>
<p dir="auto">The <strong>second</strong> part, which, <strong>after</strong> replacement, will follow the contents of the <strong>deleted second</strong> line</p>
</li>
</ul>
<p dir="auto">I, just, supposed that the <strong>limit</strong>, between these <strong>two</strong> parts, was the one between <strong>ideographic</strong> and <strong>NON-ideographic</strong> characters</p>
<p dir="auto">However, <strong>any</strong> kind of <strong>limit</strong> may be considered. For instance, if you prefer, we may suppose that <strong>group 1</strong> is all the characters of the <strong>first</strong> line, till a first <strong>semicolon</strong> or… anything else ! Just tell me which <strong>criterion</strong> to choose :-))</p>
<p dir="auto">Cheers,</p>
<p dir="auto">guy038</p>
</blockquote>
<p dir="auto">Well let’s see,<br />
group one should be all characters until the first semicolon<br />
group two from the semicolon till line ends<br />
group three should be all characters in the line</p>
<p dir="auto">and there’s some lines “minoraty” that contains 5 or 7 groups, but I think I could just duplicate the process.</p>
]]></description><link>https://community.notepad-plus-plus.org/post/20097</link><guid isPermaLink="true">https://community.notepad-plus-plus.org/post/20097</guid><dc:creator><![CDATA[abuali huma]]></dc:creator><pubDate>Sat, 17 Dec 2016 21:08:29 GMT</pubDate></item><item><title><![CDATA[Reply to Select bookmarked lines on Sat, 17 Dec 2016 20:55:00 GMT]]></title><description><![CDATA[<p dir="auto"><strong>abuali huma</strong>,</p>
<p dir="auto">Seemingly, you consider in the <strong>original first</strong> line, <strong>two</strong> parts :</p>
<ul>
<li>
<p dir="auto">The <strong>first</strong> part , which, <strong>after</strong> replacement, will be moved to the <strong>end</strong> of this <strong>first</strong> line</p>
</li>
<li>
<p dir="auto">The <strong>second</strong> part, which, <strong>after</strong> replacement, will follow the contents of the <strong>deleted second</strong> line</p>
</li>
</ul>
<p dir="auto">I, just, supposed that the <strong>limit</strong>, between these <strong>two</strong> parts, was the one between <strong>ideographic</strong> and <strong>NON-ideographic</strong> characters</p>
<p dir="auto">However, <strong>any</strong> kind of <strong>limit</strong> may be considered. For instance, if you prefer, we may suppose that <strong>group 1</strong> is all the characters of the <strong>first</strong> line, till a first <strong>semicolon</strong> or… anything else ! Just tell me which <strong>criterion</strong> to choose :-))</p>
<p dir="auto">Cheers,</p>
<p dir="auto">guy038</p>
]]></description><link>https://community.notepad-plus-plus.org/post/20096</link><guid isPermaLink="true">https://community.notepad-plus-plus.org/post/20096</guid><dc:creator><![CDATA[guy038]]></dc:creator><pubDate>Sat, 17 Dec 2016 20:55:00 GMT</pubDate></item><item><title><![CDATA[Reply to Select bookmarked lines on Sat, 17 Dec 2016 20:16:31 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/guy038" aria-label="Profile: guy038">@<bdi>guy038</bdi></a> said:</p>
<blockquote>
<p dir="auto">Hi, <strong>abuali huma</strong>,</p>
<p dir="auto">Sorry, I was <strong>absent</strong> for a while, because of an <strong>virus analysis</strong> on my laptop ! But, please be quiet : absolutely <strong>NO</strong> connection with our <strong>NodeBB</strong> site nor our <strong>discussion</strong>, too :-))</p>
<p dir="auto">For a <strong>general</strong> regex, no problem at all ! I just interpreted that :</p>
<ul>
<li>
<p dir="auto"><strong>Group 1</strong>, beginning the <strong>first</strong> line, is supposed to contain <strong>ideographic</strong> characters, ONLY</p>
</li>
<li>
<p dir="auto"><strong>Group 2</strong> represents any range, after the <strong>last ideographic</strong> character, in the <strong>first</strong> line, till the <strong>end</strong> of the line</p>
</li>
<li>
<p dir="auto"><strong>Group 3</strong>, standing for the <strong>second</strong> line, is supposed, also, to contain <strong>ideographic</strong> characters, ONLY</p>
</li>
</ul>
<p dir="auto"><strong>Remark</strong> :</p>
<p dir="auto">Some additional <strong>space</strong> characters, <strong>NOT</strong> present in the <strong>original</strong> text, seem included in the <strong>replacement</strong> text, of your <strong>two</strong> examples :</p>
<ul>
<li>
<p dir="auto"><strong>Before</strong> the <strong>first semicolon</strong>, in your <strong>first</strong> example</p>
</li>
<li>
<p dir="auto"><strong>After</strong> the <strong>ampersand</strong> character, in your <strong>second</strong> example</p>
</li>
</ul>
<p dir="auto">From my <strong>hypotheses</strong>, any <strong>space</strong> character would be stored in <strong>group 2</strong>, of course !. In addition, you may <strong>separate</strong>, in <strong>replacement</strong>, the <strong>three</strong> groups with a <strong>space</strong> character, as well !</p>
<hr />
<p dir="auto">So, a <strong>general</strong> S/R would be :</p>
<p dir="auto">SEARCH <strong><code>(?-si)^([\x{3000}-\x{9faf}]+)(.*)\R([\x{3000}-\x{9faf}]+)</code></strong></p>
<p dir="auto">REPLACE <strong><code>\3\2\1</code></strong></p>
<p dir="auto"><strong>Notes</strong> :</p>
<ul>
<li>
<p dir="auto">The part <strong><code>[\x{3000}-\x{9faf}]+</code></strong> tries to match the <strong>largest,  non empty</strong>, range of <strong>ideographic</strong> characters, from <strong>beginning</strong> of a line ( <strong><code>^</code></strong> ), stored in <strong>group 1</strong> OR after an <strong>EOL</strong> character (<strong><code>\R</code></strong> ), stored in <strong>group 3</strong></p>
</li>
<li>
<p dir="auto">During <strong>replacement</strong>, these <strong>three</strong> groups, on <strong>two consecutive</strong> lines, are, just, re-written, in a <strong>single</strong> line, into a <strong>different</strong> order !</p>
</li>
<li>
<p dir="auto">As said above, the <strong>replacement</strong> regex may be changed into <strong><code>\3 \2 \1</code></strong></p>
</li>
</ul>
<p dir="auto">Cheers,</p>
<p dir="auto">guy038</p>
</blockquote>
<p dir="auto">Thanks mate, I will give it a try once I get back on my pc after a while…</p>
<p dir="auto">But as I understand from you, that is in group 1&amp;3, if the line had mixed character set, the regex will not apply to that line ?</p>
]]></description><link>https://community.notepad-plus-plus.org/post/20092</link><guid isPermaLink="true">https://community.notepad-plus-plus.org/post/20092</guid><dc:creator><![CDATA[hu ma]]></dc:creator><pubDate>Sat, 17 Dec 2016 20:16:31 GMT</pubDate></item><item><title><![CDATA[Reply to Select bookmarked lines on Sat, 17 Dec 2016 19:56:27 GMT]]></title><description><![CDATA[<p dir="auto">Hi, <strong>abuali huma</strong>,</p>
<p dir="auto">Sorry, I was <strong>absent</strong> for a while, because of an <strong>virus analysis</strong> on my laptop ! But, please be quiet : absolutely <strong>NO</strong> connection with our <strong>NodeBB</strong> site nor our <strong>discussion</strong>, too :-))</p>
<p dir="auto">For a <strong>general</strong> regex, no problem at all ! I just interpreted that :</p>
<ul>
<li>
<p dir="auto"><strong>Group 1</strong>, beginning the <strong>first</strong> line, is supposed to contain <strong>ideographic</strong> characters, ONLY</p>
</li>
<li>
<p dir="auto"><strong>Group 2</strong> represents any range, after the <strong>last ideographic</strong> character, in the <strong>first</strong> line, till the <strong>end</strong> of the line</p>
</li>
<li>
<p dir="auto"><strong>Group 3</strong>, standing for the <strong>second</strong> line, is supposed, also, to contain <strong>ideographic</strong> characters, ONLY</p>
</li>
</ul>
<p dir="auto"><strong>Remark</strong> :</p>
<p dir="auto">Some additional <strong>space</strong> characters, <strong>NOT</strong> present in the <strong>original</strong> text, seem included in the <strong>replacement</strong> text, of your <strong>two</strong> examples :</p>
<ul>
<li>
<p dir="auto"><strong>Before</strong> the <strong>first semicolon</strong>, in your <strong>first</strong> example</p>
</li>
<li>
<p dir="auto"><strong>After</strong> the <strong>ampersand</strong> character, in your <strong>second</strong> example</p>
</li>
</ul>
<p dir="auto">From my <strong>hypotheses</strong>, any <strong>space</strong> character would be stored in <strong>group 2</strong>, of course !. In addition, you may <strong>separate</strong>, in <strong>replacement</strong>, the <strong>three</strong> groups with a <strong>space</strong> character, as well !</p>
<hr />
<p dir="auto">So, a <strong>general</strong> S/R would be :</p>
<p dir="auto">SEARCH <strong><code>(?-si)^([\x{3000}-\x{9faf}]+)(.*)\R([\x{3000}-\x{9faf}]+)</code></strong></p>
<p dir="auto">REPLACE <strong><code>\3\2\1</code></strong></p>
<p dir="auto"><strong>Notes</strong> :</p>
<ul>
<li>
<p dir="auto">The part <strong><code>[\x{3000}-\x{9faf}]+</code></strong> tries to match the <strong>largest,  non empty</strong>, range of <strong>ideographic</strong> characters, from <strong>beginning</strong> of a line ( <strong><code>^</code></strong> ), stored in <strong>group 1</strong> OR after an <strong>EOL</strong> character (<strong><code>\R</code></strong> ), stored in <strong>group 3</strong></p>
</li>
<li>
<p dir="auto">During <strong>replacement</strong>, these <strong>three</strong> groups, on <strong>two consecutive</strong> lines, are, just, re-written, in a <strong>single</strong> line, into a <strong>different</strong> order !</p>
</li>
<li>
<p dir="auto">As said above, the <strong>replacement</strong> regex may be changed into <strong><code>\3 \2 \1</code></strong></p>
</li>
</ul>
<p dir="auto">Cheers,</p>
<p dir="auto">guy038</p>
]]></description><link>https://community.notepad-plus-plus.org/post/20090</link><guid isPermaLink="true">https://community.notepad-plus-plus.org/post/20090</guid><dc:creator><![CDATA[guy038]]></dc:creator><pubDate>Sat, 17 Dec 2016 19:56:27 GMT</pubDate></item><item><title><![CDATA[Reply to Select bookmarked lines on Sat, 17 Dec 2016 14:59:31 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/guy038" aria-label="Profile: guy038">@<bdi>guy038</bdi></a> said:</p>
<blockquote>
<p dir="auto">Hello, <strong>abuali huma</strong>,</p>
<p dir="auto">You didn’t say if the regex must keep the <strong>Line 2</strong> <strong>unchanged</strong> or if you want to <strong>wipe out</strong> this line !</p>
<p dir="auto">Anyway, here are the appropriate regexes for <strong>each</strong> case :</p>
<ul>
<li><strong>1)</strong> If line <strong>2</strong> is <strong>unchanged</strong> :</li>
</ul>
<p dir="auto">From the <strong>original</strong> text :</p>
<pre><code>FGHI;Ax#&amp;;Dx#&amp;
BCDE
</code></pre>
<p dir="auto">the S/R, below :</p>
<p dir="auto">SEARCH <strong><code>(?-si)^(FGHI)(.*)(?=\R(BCDE))</code></strong></p>
<p dir="auto">REPLACE <strong><code>\3\2\1</code></strong></p>
<p dir="auto">would give the result :</p>
<pre><code>BCDE;Ax#&amp;;Dx#&amp;FGHI
BCDE
</code></pre>
<p dir="auto"><strong>NOTES</strong> :</p>
<ul>
<li>
<p dir="auto">The <strong>first</strong> part  <strong><code>(?-si)</code></strong> forces the <strong>dot</strong> ( <strong><code>.</code></strong> ) to match <strong>standard</strong> characters, only, and the regex engine to work, in a <strong>NON-insensitive</strong> way</p>
</li>
<li>
<p dir="auto">The <strong><code>\R</code></strong> form represents any kind of <strong>EOL</strong> characters  (<strong><code>\r\n</code></strong> ), (<strong><code>\n</code></strong> ) or (<strong><code>\r</code></strong> )</p>
</li>
<li>
<p dir="auto">The <strong><code>(?=\R(BCDE))</code></strong> syntax is called a <strong>positive look-ahead</strong>, that is to say a <strong>condition</strong> which must be <strong>verified</strong> to valid the <strong>overall</strong> regex, but which is <strong>never</strong> part of the <strong>final</strong> match. So the condition is “Does it exist, at the <strong>end</strong> of line <strong>1</strong>, some <strong>EOL</strong> character(s), followed by the string <strong>BCDE</strong> ?”. The string <strong>BCDE</strong> is stored in <strong>group 3</strong></p>
</li>
</ul>
<hr />
<ul>
<li><strong>2)</strong> If line <strong>2</strong> must be d<strong>eleted</strong>, too :</li>
</ul>
<p dir="auto">From the <strong>original</strong> text :</p>
<pre><code>FGHI;Ax#&amp;;Dx#&amp;
BCDE
</code></pre>
<p dir="auto">The <strong>second</strong> S/R :</p>
<p dir="auto">SEARCH <strong><code>(?-si)^(FGHI)(.*)\R(BCDE)</code></strong></p>
<p dir="auto">REPLACE <strong><code>\3\2\1</code></strong></p>
<p dir="auto">would give the final text :</p>
<pre><code>BCDE;Ax#&amp;;Dx#&amp;FGHI
</code></pre>
<p dir="auto">Best Regards,</p>
<p dir="auto">guy038</p>
</blockquote>
<p dir="auto">What if it is different text?<br />
Example one<br />
Line#1 こんにちは;Ax#&amp;;Dx#&amp;<br />
Line#2 行く<br />
Result<br />
Line#1 行く ;Ax#&amp;;Dx#&amp;こんにちは</p>
<p dir="auto">Example two<br />
Line#18 細かい ;Ax#&amp;;Dx#&amp;<br />
Line#19 自分を愛する<br />
Result<br />
Line#18 自分を愛する ;Ax#&amp;;Dx#&amp; 細かい</p>
<p dir="auto">and so on, and yes 2nd line is supposed to be deleted</p>
]]></description><link>https://community.notepad-plus-plus.org/post/20083</link><guid isPermaLink="true">https://community.notepad-plus-plus.org/post/20083</guid><dc:creator><![CDATA[abuali huma]]></dc:creator><pubDate>Sat, 17 Dec 2016 14:59:31 GMT</pubDate></item><item><title><![CDATA[Reply to Select bookmarked lines on Sat, 17 Dec 2016 14:30:57 GMT]]></title><description><![CDATA[<p dir="auto">Hello, <strong>abuali huma</strong>,</p>
<p dir="auto">You didn’t say if the regex must keep the <strong>Line 2</strong> <strong>unchanged</strong> or if you want to <strong>wipe out</strong> this line !</p>
<p dir="auto">Anyway, here are the appropriate regexes for <strong>each</strong> case :</p>
<ul>
<li><strong>1)</strong> If line <strong>2</strong> is <strong>unchanged</strong> :</li>
</ul>
<p dir="auto">From the <strong>original</strong> text :</p>
<pre><code>FGHI;Ax#&amp;;Dx#&amp;
BCDE
</code></pre>
<p dir="auto">the S/R, below :</p>
<p dir="auto">SEARCH <strong><code>(?-si)^(FGHI)(.*)(?=\R(BCDE))</code></strong></p>
<p dir="auto">REPLACE <strong><code>\3\2\1</code></strong></p>
<p dir="auto">would give the result :</p>
<pre><code>BCDE;Ax#&amp;;Dx#&amp;FGHI
BCDE
</code></pre>
<p dir="auto"><strong>NOTES</strong> :</p>
<ul>
<li>
<p dir="auto">The <strong>first</strong> part  <strong><code>(?-si)</code></strong> forces the <strong>dot</strong> ( <strong><code>.</code></strong> ) to match <strong>standard</strong> characters, only, and the regex engine to work, in a <strong>NON-insensitive</strong> way</p>
</li>
<li>
<p dir="auto">The <strong><code>\R</code></strong> form represents any kind of <strong>EOL</strong> characters  (<strong><code>\r\n</code></strong> ), (<strong><code>\n</code></strong> ) or (<strong><code>\r</code></strong> )</p>
</li>
<li>
<p dir="auto">The <strong><code>(?=\R(BCDE))</code></strong> syntax is called a <strong>positive look-ahead</strong>, that is to say a <strong>condition</strong> which must be <strong>verified</strong> to valid the <strong>overall</strong> regex, but which is <strong>never</strong> part of the <strong>final</strong> match. So the condition is “Does it exist, at the <strong>end</strong> of line <strong>1</strong>, some <strong>EOL</strong> character(s), followed by the string <strong>BCDE</strong> ?”. The string <strong>BCDE</strong> is stored in <strong>group 3</strong></p>
</li>
</ul>
<hr />
<ul>
<li><strong>2)</strong> If line <strong>2</strong> must be d<strong>eleted</strong>, too :</li>
</ul>
<p dir="auto">From the <strong>original</strong> text :</p>
<pre><code>FGHI;Ax#&amp;;Dx#&amp;
BCDE
</code></pre>
<p dir="auto">The <strong>second</strong> S/R :</p>
<p dir="auto">SEARCH <strong><code>(?-si)^(FGHI)(.*)\R(BCDE)</code></strong></p>
<p dir="auto">REPLACE <strong><code>\3\2\1</code></strong></p>
<p dir="auto">would give the final text :</p>
<pre><code>BCDE;Ax#&amp;;Dx#&amp;FGHI
</code></pre>
<p dir="auto">Best Regards,</p>
<p dir="auto">guy038</p>
]]></description><link>https://community.notepad-plus-plus.org/post/20082</link><guid isPermaLink="true">https://community.notepad-plus-plus.org/post/20082</guid><dc:creator><![CDATA[guy038]]></dc:creator><pubDate>Sat, 17 Dec 2016 14:30:57 GMT</pubDate></item><item><title><![CDATA[Reply to Select bookmarked lines on Sat, 17 Dec 2016 14:09:36 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/guy038" aria-label="Profile: guy038">@<bdi>guy038</bdi></a> said:</p>
<blockquote>
<p dir="auto">Hi, <strong>hu ma</strong>,</p>
<p dir="auto">Ah! I see ! You’re using <strong>CJK ideographic</strong> characters !</p>
<p dir="auto">The different <strong>Unicode CJK</strong> scripts are :</p>
<pre><code>- CJK Radicals Supplement - Phonetics and Symbols  (  2E80 -  2EFF )
- CJK Kangxi Radicals                              (  2F00 -  2FDF )
- CJK Ideographic Description Characters           (  2FF0 -  2FFF )
- CJK Symbols and Punctuation                      (  3000 -  303F )
- CJK Strokes                                      (  31C0 -  31EF )
- CJK Enclosed Letters and Months                  (  3200 -  32FF )
- CJK Compatibility                                (  3300 -  33FF )
- CJK Unified Ideographs Extension A               (  3400 -  4DB5 )
- CJK Unified Ideographs                           (  4E00 -  9FD5 )
- CJK Compatibility Ideographs                     (  F900 -  FAFF )
- CJK Compatibility Forms                          (  FE30 -  FE4F )
- CJK Half-width Punctuation                       (  FF61 -  FF64 )
- CJK Unified Ideographs Extension B               ( 20000 - 2A6D6 )
- CJK Unified Ideographs Extension C               ( 2A700 - 2B734 )
- CJK Unified Ideographs Extension D               ( 2B740 - 2B91D )
- CJK Compatibility Ideographs Supplement          ( 2F800 - 2FA1F )
</code></pre>
<p dir="auto">As I have <strong>Asiatic</strong> languages, installed in my <strong>Win XP</strong> configuration, I chose the <strong>SimSun</strong> font to give you an <strong>example</strong> of my <strong>regex</strong> search/replacement, which <strong>does</strong> work, perfectly well !</p>
<p dir="auto">In this <strong>example</strong>, the regex looks, successively, for the <strong>three</strong> following characters, enclosed by <strong>two angle</strong> brackets <strong><code>&lt;&gt;</code></strong> :</p>
<ul>
<li>
<p dir="auto">The <strong>second</strong> character, of your range <strong><code>[\x{3000}-\x{9faf}]</code></strong>, known in my <strong>SimSun</strong> font, ( <strong><code>、</code></strong> ), of <strong>Unicode</strong> code-point <strong><code>\x{3001}</code></strong></p>
</li>
<li>
<p dir="auto">A character, in the <strong>middle</strong> of your range <strong><code>[\x{3000}-\x{9faf}]</code></strong> , ( <strong><code>栀</code></strong> ), of <strong>Unicode</strong> code-point <strong><code>\x{6800}</code></strong></p>
</li>
<li>
<p dir="auto">The <strong>last</strong> character, of your range <strong><code>[\x{3000}-\x{9faf}]</code></strong>, known in my <strong>SimSun</strong> font, ( <strong><code>龥</code></strong> ), of <strong>Unicode</strong> code-point <strong><code>\x{9fa5}</code></strong></p>
</li>
</ul>
<p dir="auto">Moreover, I added some <strong>random</strong> values :</p>
<ul>
<li>
<p dir="auto">The <strong>three</strong> characters <strong>一倀怀</strong>, of <strong>Unicode</strong> code-points <strong><code>\x{4e00}\x{5000}\x{6000}</code></strong>, <strong>before</strong> the searched string</p>
</li>
<li>
<p dir="auto">The <strong>three</strong> characters <strong>瀀耀退</strong>, of <strong>Unicode</strong> code-points <strong><code>\x{7000}\x{8000}\x{9000}</code></strong>, <strong>after</strong> the searched string</p>
</li>
</ul>
<p dir="auto">And, in <strong>replacement</strong>, I inserted the string <strong>Inserted灭Text</strong>, containing the ideographic character <strong><code>灭</code></strong>, of <strong>Unicode</strong> code-point <strong><code>\x{706d}</code></strong></p>
<hr />
<p dir="auto">So, starting with the <strong>original</strong> text :</p>
<pre><code>一倀怀&lt;、&gt;瀀耀退
一倀怀&lt;栀&gt;瀀耀退
一倀怀&lt;龥&gt;瀀耀退
</code></pre>
<p dir="auto">The <strong>first</strong> S/R :</p>
<p dir="auto">SEARCH <strong><code>^.*&lt;[\x{3000}-\x{9faf}]&gt;</code></strong></p>
<p dir="auto">REPLACE <strong><code>Inserted灭Text$0</code></strong></p>
<p dir="auto">gives the <strong>resulting</strong> text :</p>
<pre><code>Inserted灭Text一倀怀&lt;、&gt;瀀耀退
Inserted灭Text一倀怀&lt;栀&gt;瀀耀退
Inserted灭Text一倀怀&lt;龥&gt;瀀耀退
</code></pre>
<hr />
<p dir="auto">And the <strong>second</strong> S/R :</p>
<p dir="auto">SEARCH <strong><code>[\x{3000}-\x{9faf}]&gt;.*</code></strong></p>
<p dir="auto">REPLACE <strong><code>$0Inserted灭Text</code></strong></p>
<p dir="auto">gives the <strong>final</strong> text :</p>
<pre><code>一倀怀&lt;、&gt;瀀耀退Inserted灭Text
一倀怀&lt;栀&gt;瀀耀退Inserted灭Text
一倀怀&lt;龥&gt;瀀耀退Inserted灭Text
</code></pre>
<p dir="auto">Cheers,</p>
<p dir="auto">guy038</p>
<p dir="auto"><strong>P.S.</strong> :</p>
<p dir="auto">I just saw your <strong>recent</strong> post. Let’s me a couple of minutes to think about it. I’m <strong>back</strong> , soon !</p>
</blockquote>
<p dir="auto">I see bunch of options here I could use, thanks for the information</p>
]]></description><link>https://community.notepad-plus-plus.org/post/20081</link><guid isPermaLink="true">https://community.notepad-plus-plus.org/post/20081</guid><dc:creator><![CDATA[hu ma]]></dc:creator><pubDate>Sat, 17 Dec 2016 14:09:36 GMT</pubDate></item><item><title><![CDATA[Reply to Select bookmarked lines on Sat, 17 Dec 2016 14:36:28 GMT]]></title><description><![CDATA[<p dir="auto">Hi, <strong>hu ma</strong>,</p>
<p dir="auto">Ah! I see ! You’re using <strong>CJK ideographic</strong> characters !</p>
<p dir="auto">The different <strong>Unicode CJK</strong> scripts are :</p>
<pre><code>- CJK Radicals Supplement - Phonetics and Symbols  (  2E80 -  2EFF )
- CJK Kangxi Radicals                              (  2F00 -  2FDF )
- CJK Ideographic Description Characters           (  2FF0 -  2FFF )
- CJK Symbols and Punctuation                      (  3000 -  303F )
- CJK Strokes                                      (  31C0 -  31EF )
- CJK Enclosed Letters and Months                  (  3200 -  32FF )
- CJK Compatibility                                (  3300 -  33FF )
- CJK Unified Ideographs Extension A               (  3400 -  4DB5 )
- CJK Unified Ideographs                           (  4E00 -  9FD5 )
- CJK Compatibility Ideographs                     (  F900 -  FAFF )
- CJK Compatibility Forms                          (  FE30 -  FE4F )
- CJK Half-width Punctuation                       (  FF61 -  FF64 )
- CJK Unified Ideographs Extension B               ( 20000 - 2A6D6 )
- CJK Unified Ideographs Extension C               ( 2A700 - 2B734 )
- CJK Unified Ideographs Extension D               ( 2B740 - 2B91D )
- CJK Compatibility Ideographs Supplement          ( 2F800 - 2FA1F )
</code></pre>
<p dir="auto">As I have <strong>Asiatic</strong> languages, installed in my <strong>Win XP</strong> configuration, I chose the <strong>SimSun</strong> font to give you an <strong>example</strong> of my <strong>regex</strong> search/replacement, which <strong>does</strong> work, perfectly well !</p>
<p dir="auto">In this <strong>example</strong>, the regex looks, successively, for the <strong>three</strong> following characters, enclosed by <strong>two angle</strong> brackets <strong><code>&lt;&gt;</code></strong> :</p>
<ul>
<li>
<p dir="auto">The <strong>second</strong> character, of your range <strong><code>[\x{3000}-\x{9faf}]</code></strong>, known in my <strong>SimSun</strong> font, ( <strong><code>、</code></strong> ), of <strong>Unicode</strong> code-point <strong><code>\x{3001}</code></strong></p>
</li>
<li>
<p dir="auto">A character, in the <strong>middle</strong> of your range <strong><code>[\x{3000}-\x{9faf}]</code></strong> , ( <strong><code>栀</code></strong> ), of <strong>Unicode</strong> code-point <strong><code>\x{6800}</code></strong></p>
</li>
<li>
<p dir="auto">The <strong>last</strong> character, of your range <strong><code>[\x{3000}-\x{9faf}]</code></strong>, known in my <strong>SimSun</strong> font, ( <strong><code>龥</code></strong> ), of <strong>Unicode</strong> code-point <strong><code>\x{9fa5}</code></strong></p>
</li>
</ul>
<p dir="auto">Moreover, I added some <strong>random</strong> values :</p>
<ul>
<li>
<p dir="auto">The <strong>three</strong> characters <strong>一倀怀</strong>, of <strong>Unicode</strong> code-points <strong><code>\x{4e00}\x{5000}\x{6000}</code></strong>, <strong>before</strong> the searched string</p>
</li>
<li>
<p dir="auto">The <strong>three</strong> characters <strong>瀀耀退</strong>, of <strong>Unicode</strong> code-points <strong><code>\x{7000}\x{8000}\x{9000}</code></strong>, <strong>after</strong> the searched string</p>
</li>
</ul>
<p dir="auto">And, in <strong>replacement</strong>, I inserted the string <strong>Inserted灭Text</strong>, containing the ideographic character <strong><code>灭</code></strong>, of <strong>Unicode</strong> code-point <strong><code>\x{706d}</code></strong></p>
<hr />
<p dir="auto">So, starting with the <strong>original</strong> text, with an <strong>UTF-8</strong> encoding :</p>
<pre><code>一倀怀&lt;、&gt;瀀耀退
一倀怀&lt;栀&gt;瀀耀退
一倀怀&lt;龥&gt;瀀耀退
</code></pre>
<p dir="auto">The <strong>first</strong> S/R :</p>
<p dir="auto">SEARCH <strong><code>^.*&lt;[\x{3000}-\x{9faf}]&gt;</code></strong></p>
<p dir="auto">REPLACE <strong><code>Inserted灭Text$0</code></strong></p>
<p dir="auto">gives the <strong>resulting</strong> text :</p>
<pre><code>Inserted灭Text一倀怀&lt;、&gt;瀀耀退
Inserted灭Text一倀怀&lt;栀&gt;瀀耀退
Inserted灭Text一倀怀&lt;龥&gt;瀀耀退
</code></pre>
<hr />
<p dir="auto">And the <strong>second</strong> S/R :</p>
<p dir="auto">SEARCH <strong><code>&lt;\x{3000}-\x{9faf}]&gt;.*</code></strong></p>
<p dir="auto">REPLACE <strong><code>$0Inserted灭Text</code></strong></p>
<p dir="auto">gives the <strong>final</strong> text :</p>
<pre><code>一倀怀&lt;、&gt;瀀耀退Inserted灭Text
一倀怀&lt;栀&gt;瀀耀退Inserted灭Text
一倀怀&lt;龥&gt;瀀耀退Inserted灭Text
</code></pre>
<p dir="auto">Cheers,</p>
<p dir="auto">guy038</p>
<p dir="auto"><strong>P.S.</strong> :</p>
<p dir="auto">I just saw your <strong>recent</strong> post. Let’s me a couple of minutes to think about it. I’m <strong>back</strong> , soon !</p>
]]></description><link>https://community.notepad-plus-plus.org/post/20079</link><guid isPermaLink="true">https://community.notepad-plus-plus.org/post/20079</guid><dc:creator><![CDATA[guy038]]></dc:creator><pubDate>Sat, 17 Dec 2016 14:36:28 GMT</pubDate></item><item><title><![CDATA[Reply to Select bookmarked lines on Sat, 17 Dec 2016 13:26:42 GMT]]></title><description><![CDATA[<p dir="auto">Sorry if the previous isn’t clear example<br />
better example would be</p>
<p dir="auto">Original<br />
Line#1 FGHI;Ax#&amp;;Dx#&amp;<br />
Line#2 BCDE</p>
<p dir="auto">Result<br />
Line#1 BCDE;Ax#&amp;;Dx#&amp;FGHI</p>
]]></description><link>https://community.notepad-plus-plus.org/post/20077</link><guid isPermaLink="true">https://community.notepad-plus-plus.org/post/20077</guid><dc:creator><![CDATA[abuali huma]]></dc:creator><pubDate>Sat, 17 Dec 2016 13:26:42 GMT</pubDate></item><item><title><![CDATA[Reply to Select bookmarked lines on Sat, 17 Dec 2016 12:34:22 GMT]]></title><description><![CDATA[<p dir="auto">What if i want to do this?</p>
<p dir="auto">Original<br />
Line#1 Aaaaaa;Ax#&amp;;Dx#&amp;<br />
Line#2 Bbbbb</p>
<p dir="auto">Result<br />
Line#1 Bbbbb;Ax#&amp;;Dx#&amp;Aaaaaa</p>
<p dir="auto">And again with unicode character texts also</p>
]]></description><link>https://community.notepad-plus-plus.org/post/20073</link><guid isPermaLink="true">https://community.notepad-plus-plus.org/post/20073</guid><dc:creator><![CDATA[hu ma]]></dc:creator><pubDate>Sat, 17 Dec 2016 12:34:22 GMT</pubDate></item><item><title><![CDATA[Reply to Select bookmarked lines on Sat, 17 Dec 2016 00:59:25 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/scott-sumner" aria-label="Profile: Scott-Sumner">@<bdi>Scott-Sumner</bdi></a> said:</p>
<blockquote>
<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/abuali-huma" aria-label="Profile: abuali-huma">@<bdi>abuali-huma</bdi></a></p>
<p dir="auto">This short script could do it:</p>
<pre><code>npp_bookmark_marker_id_number = 24
npp_bookmark_marker_mask = 1 &lt;&lt; npp_bookmark_marker_id_number
line_nbr = editor.markerNext(0, npp_bookmark_marker_mask)
while line_nbr != -1:
    editor.setSelectionStart(editor.positionFromLine(line_nbr))
    editor.setSelectionEnd(editor.getLineEndPosition(line_nbr))
    editor.replaceSel(editor.getSelText().decode('utf8')[::-1].encode('utf8'))
    line_nbr = editor.markerNext(line_nbr + 1, npp_bookmark_marker_mask)
</code></pre>
</blockquote>
<p dir="auto">Thanks, that saved my day!</p>
]]></description><link>https://community.notepad-plus-plus.org/post/20066</link><guid isPermaLink="true">https://community.notepad-plus-plus.org/post/20066</guid><dc:creator><![CDATA[abuali huma]]></dc:creator><pubDate>Sat, 17 Dec 2016 00:59:25 GMT</pubDate></item><item><title><![CDATA[Reply to Select bookmarked lines on Sat, 17 Dec 2016 00:47:34 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/abuali-huma" aria-label="Profile: abuali-huma">@<bdi>abuali-huma</bdi></a></p>
<p dir="auto">This short script could do it:</p>
<pre><code>npp_bookmark_marker_id_number = 24
npp_bookmark_marker_mask = 1 &lt;&lt; npp_bookmark_marker_id_number
line_nbr = editor.markerNext(0, npp_bookmark_marker_mask)
while line_nbr != -1:
    editor.setSelectionStart(editor.positionFromLine(line_nbr))
    editor.setSelectionEnd(editor.getLineEndPosition(line_nbr))
    editor.replaceSel(editor.getSelText().decode('utf8')[::-1].encode('utf8'))
    line_nbr = editor.markerNext(line_nbr + 1, npp_bookmark_marker_mask)
</code></pre>
]]></description><link>https://community.notepad-plus-plus.org/post/20065</link><guid isPermaLink="true">https://community.notepad-plus-plus.org/post/20065</guid><dc:creator><![CDATA[Scott Sumner]]></dc:creator><pubDate>Sat, 17 Dec 2016 00:47:34 GMT</pubDate></item><item><title><![CDATA[Reply to Select bookmarked lines on Sat, 17 Dec 2016 00:42:57 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/abuali-huma" aria-label="Profile: abuali-huma">@<bdi>abuali-huma</bdi></a></p>
<p dir="auto">so you want reverse the whole line of every bookmarked line, correct?</p>
<p dir="auto">Cheers<br />
Claudia</p>
]]></description><link>https://community.notepad-plus-plus.org/post/20064</link><guid isPermaLink="true">https://community.notepad-plus-plus.org/post/20064</guid><dc:creator><![CDATA[Claudia Frank]]></dc:creator><pubDate>Sat, 17 Dec 2016 00:42:57 GMT</pubDate></item><item><title><![CDATA[Reply to Select bookmarked lines on Sat, 17 Dec 2016 00:16:03 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/claudia-frank" aria-label="Profile: Claudia-Frank">@<bdi>Claudia-Frank</bdi></a> said:</p>
<blockquote>
<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/abuali-huma" aria-label="Profile: abuali-huma">@<bdi>abuali-huma</bdi></a></p>
<p dir="auto">or you could try to adapt the script with what I’ve posted <a href="https://notepad-plus-plus.org/community/topic/12912/shortcut-for-bookmark-selected-text/6" rel="nofollow ugc">here</a>.</p>
<p dir="auto">Cheers<br />
Claudia</p>
</blockquote>
<p dir="auto">Well, I didn’t know how to adapt a script<br />
let say all the lines that I’m bookmarking is containing this text :</p>
<ul>
<li>=txeT eniL&lt;</li>
</ul>
<p dir="auto">Or if it is better this regex</p>
<ul>
<li>[\x{3000}-\x{9faf}]</li>
</ul>
]]></description><link>https://community.notepad-plus-plus.org/post/20063</link><guid isPermaLink="true">https://community.notepad-plus-plus.org/post/20063</guid><dc:creator><![CDATA[abuali huma]]></dc:creator><pubDate>Sat, 17 Dec 2016 00:16:03 GMT</pubDate></item><item><title><![CDATA[Reply to Select bookmarked lines on Sat, 17 Dec 2016 00:01:53 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/abuali-huma" aria-label="Profile: abuali-huma">@<bdi>abuali-huma</bdi></a></p>
<p dir="auto">or you could try to adapt the script with what I’ve posted <a href="https://notepad-plus-plus.org/community/topic/12912/shortcut-for-bookmark-selected-text/6" rel="nofollow ugc">here</a>.</p>
<p dir="auto">Cheers<br />
Claudia</p>
]]></description><link>https://community.notepad-plus-plus.org/post/20061</link><guid isPermaLink="true">https://community.notepad-plus-plus.org/post/20061</guid><dc:creator><![CDATA[Claudia Frank]]></dc:creator><pubDate>Sat, 17 Dec 2016 00:01:53 GMT</pubDate></item><item><title><![CDATA[Reply to Select bookmarked lines on Fri, 16 Dec 2016 23:54:15 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/scott-sumner" aria-label="Profile: Scott-Sumner">@<bdi>Scott-Sumner</bdi></a> said:</p>
<blockquote>
<p dir="auto">This could possibly work, but if it doesn’t I am handing off to an encoding expert (<a class="plugin-mentions-user plugin-mentions-a" href="/user/guy038" aria-label="Profile: guy038">@<bdi>guy038</bdi></a> ?) because I’m pretty much exclusively an A-Z person.  :-)</p>
<pre><code>editor.replaceSel(editor.getSelText().decode('utf8')[::-1].encode('utf8'))
</code></pre>
</blockquote>
<p dir="auto">Thanks, It work really well now.<br />
The only what remaining is to select each bookmarked lines then flip them by one click</p>
]]></description><link>https://community.notepad-plus-plus.org/post/20059</link><guid isPermaLink="true">https://community.notepad-plus-plus.org/post/20059</guid><dc:creator><![CDATA[abuali huma]]></dc:creator><pubDate>Fri, 16 Dec 2016 23:54:15 GMT</pubDate></item><item><title><![CDATA[Reply to Select bookmarked lines on Fri, 16 Dec 2016 23:29:27 GMT]]></title><description><![CDATA[<p dir="auto">This could possibly work, but if it doesn’t I am handing off to an encoding expert (<a class="plugin-mentions-user plugin-mentions-a" href="/user/guy038" aria-label="Profile: guy038">@<bdi>guy038</bdi></a> ?) because I’m pretty much exclusively an A-Z person.  :-)</p>
<pre><code>editor.replaceSel(editor.getSelText().decode('utf8')[::-1].encode('utf8'))
</code></pre>
]]></description><link>https://community.notepad-plus-plus.org/post/20057</link><guid isPermaLink="true">https://community.notepad-plus-plus.org/post/20057</guid><dc:creator><![CDATA[Scott Sumner]]></dc:creator><pubDate>Fri, 16 Dec 2016 23:29:27 GMT</pubDate></item><item><title><![CDATA[Reply to Select bookmarked lines on Fri, 16 Dec 2016 23:21:08 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/scott-sumner" aria-label="Profile: Scott-Sumner">@<bdi>Scott-Sumner</bdi></a> said:</p>
<blockquote>
<p dir="auto">Here’s a quick Pythonscript one-liner that reverses the currently selected text:</p>
<pre><code>editor.replaceSel(editor.getSelText()[::-1])
</code></pre>
<p dir="auto">I presume it works for Unicode; I only tried it out quickly with ASCII.</p>
<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/guy038" aria-label="Profile: guy038">@<bdi>guy038</bdi></a>, Your solution for the other part works as long as the original poster is doing a find (more accurately a “mark”-find); when I read the posting originally, my impression was that the set of bookmarked lines was marked manually.  An approach in that case could be to number all lines with the column editor feature, then cut all bookmarked lines to another file, do a regex-based find-and-replace (that of course ignores the artificial line numbers), then copy the lines from this new file back to the original file, then sort that file and finally delete the line numbers…whew…a lot of work!  :-)</p>
</blockquote>
<p dir="auto">Unfortunately it is works only for  ASCII, For Unicode it mess up the text</p>
]]></description><link>https://community.notepad-plus-plus.org/post/20056</link><guid isPermaLink="true">https://community.notepad-plus-plus.org/post/20056</guid><dc:creator><![CDATA[abuali huma]]></dc:creator><pubDate>Fri, 16 Dec 2016 23:21:08 GMT</pubDate></item><item><title><![CDATA[Reply to Select bookmarked lines on Fri, 16 Dec 2016 22:38:46 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/guy038" aria-label="Profile: guy038">@<bdi>guy038</bdi></a> said:</p>
<blockquote>
<p dir="auto">Hello, <strong>hu ma</strong>,</p>
<ul>
<li>
<p dir="auto">Concerning your <strong>second</strong> step, I suppose that a simple <strong>Lua</strong> or <strong>Python</strong> script would do it, fine ! I can’t help you ( <strong>yet</strong> ! ), in that matter, but I guess that <strong>Claudia</strong> or <strong>Scott</strong> ( Two <strong>Python’s gurus</strong> ! ) will be, certainly, able to get the <strong>appropriate</strong> script !</p>
</li>
<li>
<p dir="auto">Concerning your <strong>first</strong> step, <strong>NO</strong> need to <strong>bookmark</strong> any text, for adding text in <strong>front</strong> of / at <strong>end</strong> of each <strong>bookmarked</strong> line ( unless you need the <strong>bookmarked</strong> lines for an <strong>other</strong> purpose ! )</p>
</li>
</ul>
<hr />
<p dir="auto">Just do a <strong>search/replacement</strong>, in <strong>Regular expression</strong> search mode :</p>
<ul>
<li>To add text, at <strong>beginning</strong> of <strong>all</strong> the lines, matching a <strong>specific</strong> regex :</li>
</ul>
<p dir="auto">SEARCH <strong><code>(?-s)^.*</code>&lt;Your regex|String|Character&gt;</strong></p>
<p dir="auto">REPLACE <strong><code>Text to add at beginning$0</code></strong></p>
<ul>
<li>To add text, at <strong>end</strong> of <strong>all</strong> the lines, matching a <strong>specific</strong> regex :</li>
</ul>
<p dir="auto">SEARCH <strong><code>(?-s)</code>&lt;Your regex|String|Character&gt;<code>.*</code></strong></p>
<p dir="auto">REPLACE <strong><code>$0Text to add at end</code></strong></p>
<p dir="auto"><strong>NOTES</strong> :</p>
<ul>
<li>
<p dir="auto">The <strong>&lt;Your regex|String|Character&gt;</strong> expression is the <strong>regex</strong>, <strong>string</strong>or <strong>character</strong>, that you would have used to <strong>bookmark</strong> lines, <strong>matching</strong> that regex, string or character !</p>
</li>
<li>
<p dir="auto">The part <strong><code>(?-s)</code></strong> in a <strong>pattern modifier</strong>, which <strong>forces</strong> the regex engine to consider the <strong>dot</strong> <strong>meta</strong>-character (<strong><code>.</code></strong> ) as any <strong>standard</strong> character, except for any <strong>EOL</strong> character, as <strong><code>\r</code></strong> or <strong><code>\n</code></strong></p>
</li>
<li>
<p dir="auto">The part <strong><code>^.*</code></strong> represents <strong>any</strong> range of <strong>standard</strong> characters, even <strong>empty</strong>, between the <strong>beginning</strong> of a line and your <strong>expression</strong> to match</p>
</li>
<li>
<p dir="auto">The part <strong><code>.*</code></strong> are all the <strong>remaining standard</strong> characters, even <strong>zero</strong>, between your <strong>expression</strong> to match and the <strong>end</strong> of a line, before the <strong>EOL</strong> characters</p>
</li>
</ul>
</blockquote>
<blockquote>
<p dir="auto">In <strong>replacement</strong>, the <strong><code>$0</code></strong> syntax stands for the <strong>complete</strong> current <strong>search</strong> match</p>
<p dir="auto">Best regards,</p>
<p dir="auto">guy038</p>
</blockquote>
<p dir="auto">it doesn’t work when I put SEARCH (?-s)^.*&lt;[\x{3000}-\x{9faf}]&gt;<br />
I don’t have a special characters at each line that I use for searching, only a random characters between [\x{3000}-\x{9faf}] is how I bookmark them.</p>
<p dir="auto">Anyway, I managed to do this by recording macro after bookmarking all lines by<br />
wirting start line text&gt; press END&gt; wirting END line text&gt; Toggle Bookmark&gt; F2 to Move to next bookmark<br />
playing that marco does the trick for me</p>
]]></description><link>https://community.notepad-plus-plus.org/post/20051</link><guid isPermaLink="true">https://community.notepad-plus-plus.org/post/20051</guid><dc:creator><![CDATA[abuali huma]]></dc:creator><pubDate>Fri, 16 Dec 2016 22:38:46 GMT</pubDate></item><item><title><![CDATA[Reply to Select bookmarked lines on Fri, 16 Dec 2016 22:02:33 GMT]]></title><description><![CDATA[<p dir="auto">Here’s a quick Pythonscript one-liner that reverses the currently selected text:</p>
<pre><code>editor.replaceSel(editor.getSelText()[::-1])
</code></pre>
<p dir="auto">I presume it works for Unicode; I only tried it out quickly with ASCII.</p>
<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/guy038" aria-label="Profile: guy038">@<bdi>guy038</bdi></a>, Your solution for the other part works as long as the original poster is doing a find (more accurately a “mark”-find); when I read the posting originally, my impression was that the set of bookmarked lines was marked manually.  An approach in that case could be to number all lines with the column editor feature, then cut all bookmarked lines to another file, do a regex-based find-and-replace (that of course ignores the artificial line numbers), then copy the lines from this new file back to the original file, then sort that file and finally delete the line numbers…whew…a lot of work!  :-)</p>
]]></description><link>https://community.notepad-plus-plus.org/post/20045</link><guid isPermaLink="true">https://community.notepad-plus-plus.org/post/20045</guid><dc:creator><![CDATA[Scott Sumner]]></dc:creator><pubDate>Fri, 16 Dec 2016 22:02:33 GMT</pubDate></item></channel></rss>