Learn how easy it is to sync an existing GitHub or Google Code repo to a SourceForge project! See Demo

Close

Notepad++ v6.5 Release Candidate

Don HO
2013-09-22
2013-10-07
1 2 > >> (Page 1 of 2)
  • Don HO
    Don HO
    2013-09-22

    Release Candidate for Notepad++ v6.5 can be downloaded from:
    http://notepad-plus-plus.org/tmp/npp.6.5.RC.7z

    if there're no problems reported then it will be released in around 3 days.

    Here is its change log:
    1. Update Scintilla to 3.3.4
    2. Add Coffee script support.
    3. Add multi-paste support for multi-selection/column mode.
    4. Add new feature: auto-close parentheses, quotes, bracket and matched xml/html tag.
    5. Add php, perl, xml, batch, ini and nsis for the build-in function list.
    6. Add User Defined Languages support for the build-in function list.
    7. Fix a minor problem of file extension support for the build-in function list.
    8. Fix a tag matching bug by disabling tag matching inside PHP code blocks.
    9. Fix right-to-left text after closing document map bug.
    10. Fix canceling shutdown make Notepad++ quit w/o saving files bug.
    11. Enhance "Begin/End select" feature: Check "Begin/End select" menu item when active.
    12. Enhance Mark all feature: 2 options "Match case" and "Match whole word only" in Find/Replace dialog .
    13. Fix a Replace dialog status bar display problem by clearing status bar before processing any action.
    14. Add new feature: if Notepad++ is running as administrator, display this info on the title bar.
    15. Rename "block comment" to "Single line comment" and "stream comment" to "block comment".
    16. Remove invalid command "Online Documentation".

    Don

     
    Last edit: Don HO 2013-09-24
  • Predelnik
    Predelnik
    2013-09-23

    If I try to run this version from msys git bash (mingw msys will do also), I get this:
    img1
    Then this (sorry for Russian words :) ):
    img2
    Then no matter what I press:
    img3
    And it all finally leads to N++ which looks like this:
    img4
    If I try to close it, nothing happens, I mean it's not closing without killing the process (with plugins in place it also shows unknown exceptions).

    This stuff is obviously very important for those who are using Notepad++ as their editor in git.

    I run it without any plugins, using Windows 7 x64, without admin access to program files. If I run git bash with admin rights everything works fine.

     
    • Don HO
      Don HO
      2013-09-23

      Doesn't it work only on v6.5 or it's the same result for the previous versions?

      I would say that the bash is not really conventional windows environment, so the result doesn't surprise me.

      Don

       
      • Predelnik
        Predelnik
        2013-09-24

        It worked before this version normally for sure, I used it very often.

         
        • Don HO
          Don HO
          2013-09-24

          Then it's a regression.
          Could you tell me where do you unzip Notepad++ RC?

          Don

           
        • Don HO
          Don HO
          2013-09-24

          I can launch Notepad++ under the git bash w/o any problem, that's what I did:

          1. copy unzipped folder npp into C:\Program Files (x86)\Git\bin\
          2. launch bash.exe
          3. cd ../npp
          4. ./notepad++.exe

          I'm under windows 7 x64 and bash.exe was launched w/o admin right.
          What is your environment?
          Could you provide me the detailed instructions to reproduce it?

          Don

           
          Last edit: Don HO 2013-09-24
          • Predelnik
            Predelnik
            2013-09-24

            I noticed that the problem disappears after I run Notepad++ from bash with admin rights just once.
            So for me it could be reproduced as:
            1. Remove Notepad++ folder.
            2. Install version 6.4.4 (it's just one I happened to have installation file for)
            3. Copy unzipped contents of 6.5RC to program files (x86)\Notepad++ folder with admin rights and overwriting everything.
            4. Try to launch it by bash w/o admin rights.

             
            • Don HO
              Don HO
              2013-09-24

              How ca I run "C:\Program Files (x86)\notepad++\notepad++.exe" which is beyond the root in bash ?

               
              • Loreia2
                Loreia2
                2013-09-24

                How ca I run "C:\Program Files (x86)\notepad++\notepad++.exe" which is beyond the root in bash ?

                /c/rest-of-path-on-c-drive

                This issue is not related to new version. I was able to trigger this few times in the past, but I don't remember how I solved it. I think it just stopped after restarting visual studio.

                BR,
                Loreia

                 
              • Predelnik
                Predelnik
                2013-09-24

                Well msys bash understands path like that, but it doesn't matter if I write:
                "/c/Program Files (x86)/notepad++/notepad++.exe"
                or just go into Notepad++ dir and write "./notepad++.exe" to run it, it happens all the same.

                Btw looks like the problem actually that it tries to create config.xml and shortcuts.xml in Notepad++ dir (though it isn't happening on normal launch without bash).

                 
                • Don HO
                  Don HO
                  2013-09-24

                  OK, I see what happened.

                  Normally your Notepad++ installed by installer loads lang.xml, config.xml and style.xml from %APPDATA%\Notepad++\ If it doesn't find these 3 files in %APPDATA%\Notepad++\ , it copies 3 files from lang.model.xml, config.model.xml and style.model.xml into the directory in question, then reloads them.

                  The zip package doesn't contains 3 conf files (lang.xml, config.xml and style.xml), but only 3 model files (lang.model.xml, config.model.xml and style.model.xml).
                  The zip package contains also doLocalConf.xml which is a 0 length file.
                  When doLocalConf.xml exists, Notepad++ loads conf files from its installed directory. Otherwise, it loads conf files from %APPDATA%\Notepad++\ .
                  doLocalConf.xml is used as indicator, it allows user to install Notepad++ out of Microsoft's convention.

                  So what happened is doLocalConf.xml was copied into c:/program files/Notepad++/ then Notepad++ should load 3 conf files from its directory - 3 conf files cannot be found. It tried to copy them from 3 model files, but failed due to the lack of admin right.

                  Just remove your doLocalConf then everything will get back in order.

                  Don

                   
                  Last edit: Don HO 2013-09-24
                  • Predelnik
                    Predelnik
                    2013-09-24

                    Well, thank you, removing doLocalConf.xml was a right thing to do anyway. But I'm wondering why the same thing isn't happening when I'm running N++ outside bash without admin rights?

                    Edit: And also a little suggestion to do some more understandable warning in this case, because appearing of unclosable application may be quite scary for some users :)

                     
                    Last edit: Predelnik 2013-09-24
  • AMIB
    AMIB
    2013-09-23

    Hi

    Setting text direction to RTL just mirrors the LTR text and after Minimizing/Restoring the window, It is displayed correctly
    Switching back to LTR also needs Minimize/Restore to show the text in the correct way.

    Selecting "Auto Insert XML/HTML Closing Tag" does not work with .php files
    php is also an inline HTML file

    Thanks.

     
    • Don HO
      Don HO
      2013-09-24

      Regarding RTL & LTR problem, I have no solution (yet) to make it correctly displayed. If anyone get any idea to fix it, please let me know.

      Regarding "Auto Insert XML/HTML Closing Tag", it works (so far) only on html/xml files. If there're more request for php file, I'll consider to add an option for working for php file.

      Don

       
      • AMIB
        AMIB
        2013-09-30

        Found a quick method to solve the problem for now
        Pressing F11 twice also solves the RTL and LTR problem !

         
  • THEVENOT Guy
    THEVENOT Guy
    2013-09-23

    Hi Don,

    First impression, on the new version 6.5 :

    Thank you for this new release. The points 5, 11, 12, 13 and 14 of the change.log are interesting.

    The new feature of the point 4, in Preferences dialog, is nice. It's really easy to customize !

    But, I didn't understand exactly what you mean at points 3 and 6 :

    3. Add multi-paste support for multi-selection/column mode.
    6. Add User Defined Languages support for the build-in function list.

    Would it be possible to develop these two points, a little, please ?

    On the other hand, I think that I found an issue in the file FunctionList.xml !?

    If you double-click on this file, it can't be open in a browser !

    After some investigations, it seems that's because of an extra & character,
    ( 5 occurrences ), in the PHP section, at the end of the file
    . If this character is deleted, from the PHP section, the file FunctionList.xml is readable, again and can be opened in a browser.

    Have a look at the attached file : PHP.png.

    But, I'm not a specialist and I didn't test with real PHP files . So, it's up to you to verify. ( may be, on the contrary, some characters are missing ? )

    Cheers,

    guy038

     
    Last edit: THEVENOT Guy 2013-09-29
    Attachments
    • Don HO
      Don HO
      2013-09-24

      For the #3, as Andreas Jonsson explained, the occurence to paste will replace all the selections, if multi-selection has been done.

      For the #6, 2 User Defined Languages "my user defined language" and "Autocad" are recognized when user set the following 2 lines in functionList.xml :

      <association userDefinedLangName="my user defined language" id="my_udl_passer_id"/>
      <association userDefinedLangName="Autocad" id="my_autocad_passer_id"/>
      

      The display in browser problem of functionList.xml is, as you said, due to '&' : in a valid xml file this character should be replaced by "& amp;". Our situation is special because the regular expresion should be kept as it for the reason of readability.

      Don

       
      Last edit: Don HO 2013-09-24
  • Multi-paste means that if you select many lines and then paste, the text will be pasted in all lines (instead of just the first).

     
  • Here is a problem with the feature "auto-close parentheses, quotes, bracket and matched xml/html tag."

    So Auto insert is enable on "()" in my notepad++.
    I want to write "if()" on 3 lines simultaneously with the column mode.
    So I select the 3 lines in column mode,
    I start to write "if("

    The new feature auto close the last parenthesis :
    if(
    if(
    if()

    The problem is :
    - there are two parenthesis not auto-closed
    - the column selection is unselected. So I have to reselect my column area if I want to continue my column write

    Suggestion : auto-close should be deactivate on column write mode.

     
    • Don HO
      Don HO
      2013-09-28

      I'll see what can I do about this bug.

      Don

       
  • Phong Lo
    Phong Lo
    2013-09-25

    Hi Don,

    I found some issues on FunctionList feature for php language:
    1) not found abstract class
    Ex:

        abstract class Foobar{
            function foobar(){
            }
        }
    

    2) not found function that has default value of param is array or string have symbol characters.
    EX:

        function foobar($param=array()){
            // write code at here
        }
    
        function foobar($param='(){}'){
            // write code at here
        }
    

    3) close tag of class is at the end of file }:
    EX:

        class Foobar{
            function foobar(){
            }
        }<end of file>
    

    I fixed issues 1 and 2 for my self by change parser for php in functionList.xml file. The attachment file is the changing.

    Still have issue 3, i don't have solution for it.

    Thanks

     
    Last edit: Phong Lo 2013-09-25
    • Don HO
      Don HO
      2013-09-28

      THank you.

      I'll use your parser for the next release.

      Your contribution reveals a problem: How can we tell it's the most suitable parser for whatever language?
      I cannot (and am not qualified to) verify the parser each time people tell me that their parser covers more casees.
      So it'll better it's the same contributors who check and merge the parser (ie. he maintains the parser).
      The parser maintainer should know well not only the language in question, but also the PCRE.
      What do you think?

      Don

       
  • THEVENOT Guy
    THEVENOT Guy
    2013-10-04

    Hello Don and All,

    @ Don,

    Forgive me, but I was too busy and I couldn't answer you until now !

    Thanks you for your explanation of #6 in the change.log file ( handle of User Define Languages by Function List )

    To do a rapid test :

    • I created a User Define Language, named "Docum", with extension "aid"

    • In the AssociationMap section of the file functionList.xml :

    I add the line :

    <association userDefinedLangName="Docum" id="ini_section"/>
    
    • I opened an .INI file, containing some sections, of the form [...]

    • I changed the original associated language "MS ini file" to my User Define Language "Docum"

    • Then I open FunctionList => The different sections appeared, as expected, in the FunctionList Windows. Nice :-)

    Nevertheless, I noticed that the use of the extension, with the line below, instead of the User Define Language name, didn't work at all :( Don't know why ? )

    <association ext=".aid" id="ini_section"/>
    

    As for the #3, in the change.log I don't understand yet !. May be, I miss something obvious !

    With the Multi-Editing settings" square box enabled, in Settings\Preferences\Editing, I selected three lines, one after another ( let say the thirth, the fifth and the seventh lines of the file ) and then, I pasted this multi-selection in, for example, four different other locations in this file, with the CTRL + left mouse click gesture.

    => I wasn't able to see any difference between the 6.5 version and the 6.4.5 version or older versions. It's OK with both versions ???

    Moreover, the behaviour of the column mode selection seems also identical ?

    So, could you, please, tell me where are the improvement(s) ?!


    Concerning the maintain of FunctionList's parsers, I do agree with you :

    As these parsers are used by many users, with different levels of knowledge concerning the languages, it would be better that the parser's maintainer of a specific language had, both, good bases in this language and in the PCRE syntax of regular expressions !


    @ All

    To get acquainted with parsers and FunctionList, I decided to investigate the INI parser ( as an initial and easy exercise ! )

    So that, I will contribute, a little, to the improvement of FunctionList :-)

    First I did some tests, on .INI files and I could highlight 4 main points :

    • Both, comments and sections can be preceded by any of the four characters

    below :

    SPACE (\x20), TAB (\t), VT (\x0b) and FF (\f)
    
    • Comments always begin by a semicolon (;) OR the number sign (#)

    • Sections begin with an opening square bracket and end with an ending square bracket, at the very end of line.

    • Inside a couple of square brackets, ANY character, different of the NULL character (\0), NEW LINE (\n) and CARIAGE RETURN (\r), are allowed for the name of a section.

    For example, the strange section [T[[]es[]]t] is quite legal, in an INI file !!!

    The NULL character could, also, be part of a section's name, but encoding problems occur, both, in the INI file and in FunctionList window. So it's better to avoid NULL characters, in an INI file.

    I won't describe all my tries to create a correct regex for INI parser and all the tests done, but, to sum up, I think that all the INI parser could be shortened in :

                <parser id="ini_section" displayName="INI Section">
                    <function
                        mainExpr="^[\t \f\x0b]*\[\K.+?(?=\]$)"
                        displayMode="$functionName">
                    </function>
                </parser>
    

    Note the SPACE, between characters \t and \f !

    Briefly :

    ^[\t \f\x0b]*\[ represents the opening square bracket, eventually separated from the very start of a line, by some of the four allowed characters, before sections or comments.

    \K allows the PCRE engine to "forget" this previous search.

    .+?(?=\]$) , the remainder, represents ANY character until an ending square bracket, at the very end of line, that is excluded from the search, because inside the lookahead ! In other words, the exact name of each section !

    To end up, I tested with an big INI file, containing 30,000 sections, and I didn't notice any difference of displaying, between the actual INI parser and my INI parser ( About 8 seconds, in both cases, to display the 30,000 sections in the FunctionList window, with my old XP computer ! )

    Hope you like it !

    Best Regards,

    guy038

     
    Last edit: THEVENOT Guy 2013-10-04
    • Davey
      Davey
      2013-10-06

      Hello TheVenotGuy and all
      I posted a comment in the General Discussion forum about the Function List not working. It was working great till version 6.5, but with the new installation it stopped listing my functions.
      I updated the xml file in the Appdata folder, but still not working.

      After reading this last post, I realized maybe something was wrong with the extension recognition in the function list (since that was how I had it working previously... according to extension name)

      So I updated the xml file and changed the association map tag to the new user defined language method and it worked!!

      In summary, seemingly there is a bug with the extension method in the association mapping. Even more so, if you map it with both "user defined language" and "extension name" it also wont work, seemingly due to the bug in the extension mapper.

      Thanks
      Davey

       
    • Don HO
      Don HO
      2013-10-06

      Both following associations should work:
      <association userDefinedLangName="Docum" id="ini_section"/>
      <association ext=".aid" id="ini_section"/>
      I'll reproduce it then see what's wrong.

      Regarding the multi-paste, copy a text, say "toto" into clipboard by using Ctrl-C, then after doing a 5 line column selection, do a Ctrl-V.
      In 6.4.5 "toto" is pasted only on the 5th line.
      In 6.5, "toto" is pasted only on all 5 lines.

      Don

       
1 2 > >> (Page 1 of 2)