Jump to content
Sign in to follow this  
AZJIO

Tools for Notepad++

Recommended Posts

AZJIO

Place the Notepad ++ in the AutoIt3 folder
Just replace the files in your Notepad++. The path must be "AutoIt3Notepad++"

NotepadPlus.7z (v6.5.3 Ru, 4.9 Mb)

5c1ee1695ae2t.jpg

shortcuts.xml, Contains commands:
F5 - Start File (Alt + F5 - Setting)
F6 - Start Script (ConsoleWrite) (Ctrl + F6 - Setting)
Alt + F - Jump to function as a SciTE 
Alt+X - AutoIt3Wrapper (Ctrl + F6 - ConsoleWrite)
Alt + Z - Tidy.exe %1 /refc /reel /bdir=C:AutoIt3BackUp
Alt+i - Au3Info.exe
Alt + R - ToolsRegExpRegExp.exe
Alt + F1 (F2, F3) - HELP_AutoIt3.au3
Alt+F6 - Converter AU3 to BBcode
Alt + F8 - list_var_funk.au3
Alt + Shift + A - txt2au3
Alt + G - JumpRegCMD
Alt+Shift+D - Remove spaces

Alt + K - Strip Comments

Alt + L - Debugger

Alt + F - JumpFunc

Alt + N - CreateNewFile

Alt + O - OpenToExplorer

Alt + F7 - Renaming variables
Ctrl + F7 - Include_Helper
Ctrl + F9 - panel_function
Ctrl + F12 - JumpToString
Ctrl + 1 (2 ,3 ,4 ,5) - Set the color of the selected
Ctrl + Shift + 1 (2 ,3 ,4 ,5) - Remove the color of the selected
Ctrl + Shift + 0 - Remove the color of all selected


langs.xml
Added registered functions, operators and keywords

themes
AutoIt_Def.xml
AutoIt+Zenburn.xml

autoit.xml, batch.xml (for example enter "ms" and press "Enter")

XBrackets.dll - sets closing brackets (disabled by default)
NppExec.dll - Ctrl + F6 - for ConsoleWrite
FunctionList.dll - List of functions
NppSnippets.dll
ScrollPastEOFUni.dll
 
 
>JumpToString (Notepad++)
>Include_Helper
>Renaming variables

>Debugger

Edited by AZJIO
  • Like 3

Share this post


Link to post
Share on other sites
babaorom

Hi!

I 'm testing your programm

how is it possible to set notepad ++in english ?

Thanks

Share this post


Link to post
Share on other sites
AZJIO

babaorom

Notepad++ Web Site

Then copy files from my archive.

doLocalConf.xml - use the settings from the directory Notepad++

config.xml - ready to configure

HELP_AutoIt3.au3 - This file allows you to go to the Help for the selected functions in a Notepad++

This allows for the text in autoit.xml in any language

$text='Message'
$aText=StringSplit($text, '')
$text0=''
For $i = 1 to $aText[0]
$text0&='&#x'&Hex(AscW($aText[$i]),4)&';'
Next
ClipPut($text0)
MsgBox(0, 'Message', $text0)

; #include <Array.au3>
; $text='041C;&#x0430;&#x0441;&#x0442;&#x0435;&#x0440;&#x0441;&#x043A;&#x0430;&#x044F;&#x0434;&#x0438;&#x0441;&#x0442;&#x0440;&#x0438;&#x0431;&#x0434;&#x043B;&#x044F;&#x0438;&#x043D;&#x0435;&#x0442;&#x0430;&#x0441;&#x043A;&#x0440;&#x0438;&#x043F;&#x0442;&#x044B;&#x0434;&#x043B;&#x044F;&#x0441;&#x043F;&#x0440;&#x0430;&#x0432;&#x043A;&#x0438;&#x0441;&#x0444;&#x043E;&#x0440;&#x0443;&#x043C;&#x043E;&#x0432;&#x043F;&#x0435;&#x0440;&#x0435;&#x0437;&#x0430;&#x043F;&#x0443;&#x0441;&#x043A;&#x043D;&#x0430;&#x0447;&#x0438;&#x0441;&#x0442;&#x043E;&#x043C;&#x0430;&#x0443;&#x0442;&#x043E;&#x0438;&#x0442;&#x0435'
; $aText=StringSplit($text, ';&#x', 1)
; _ArrayDisplay($aText, 'Array')
; $text0=''
; For $i = 1 to $aText[0]
; $text0&=ChrW(Dec($aText[$i]))
; Next
; MsgBox(0, 'Message', $text0)

Share this post


Link to post
Share on other sites
AZJIO

Update

v6.1.6

NppExec.dll - Ctrl + F6 - for ConsoleWrite

FunctionList.dll

FunctionListRules.xml

<Language name="AutoIt" imagelistpath="pluginsConfigC++.flb">
        <CommList param1=";" param2="" />
         <Group name="FUNCTION" subgroup="" icon="9" child="17" autoexp="4" matchcase="0" fendtobbeg="" bbegtobend="" keywords="">
            <Rules regexbeg="^Funcs+" regexfunc="[wd]+" regexend="" bodybegin="" bodyend="" sep="" />
        </Group>
    </Language>

<Language name="AutoIt" imagelistpath="pluginsConfigC++.flb">
        <CommList param1=";" param2="" />
        <Group name="INCLUDE" subgroup="" icon="0" child="0" autoexp="0" matchcase="0" fendtobbeg="" bbegtobend="" keywords="">
            <Rules regexbeg="#includes+" regexfunc="[^rn]+" regexend="" bodybegin="" bodyend="$" sep="" />
        </Group>
        <Group name="VARIABLE" subgroup="" icon="0" child="0" autoexp="0" matchcase="0" fendtobbeg="" bbegtobend="" keywords="">
            <Rules regexbeg="$" regexfunc="[wd]+" regexend="" bodybegin="b" bodyend="b" sep="" />
        </Group>
        <Group name="MACRO" subgroup="" icon="0" child="0" autoexp="0" matchcase="0" fendtobbeg="" bbegtobend="" keywords="">
            <Rules regexbeg="" regexfunc="@[wd]+" regexend="" bodybegin="b" bodyend="b" sep="" />
        </Group>
        <Group name="Hex" subgroup="" icon="0" child="0" autoexp="0" matchcase="0" fendtobbeg="" bbegtobend="" keywords="">
            <Rules regexbeg="" regexfunc="0x[0-9A-Fa-f]{6}" regexend="" bodybegin="[DW]" bodyend="[DW]" sep="" />
        </Group>
         <Group name="FUNCTION" subgroup="" icon="9" child="17" autoexp="4" matchcase="0" fendtobbeg="" bbegtobend="" keywords="">
            <Rules regexbeg="^Funcs+" regexfunc="[wd]+" regexend="" bodybegin="" bodyend="" sep="" />
        </Group>
    </Language>

<Language name="CSS" imagelistpath="pluginsConfigC++.flb">
        <CommList param1=";" param2="" />
        <Group name="CLASS" subgroup="" icon="16" child="13" autoexp="4" matchcase="0" fendtobbeg="" bbegtobend="" keywords="">
            <Rules regexbeg="" regexfunc="[.wd]+" regexend="h*(/[^rn]+/)*s*{" bodybegin="^" bodyend="$" sep="" />
        </Group>
    </Language>

Edited by AZJIO

Share this post


Link to post
Share on other sites
AZJIO

JumpFunc.au3,  + nppUDF.au3

#NoTrayIcon
#include <nppUDF.au3>
#include <File.au3>
; #include <Array.au3>

; [1] $(NPP_DIRECTORY)
; [2] $(CURRENT_WORD)
; [3] $(FULL_CURRENT_PATH)
Local $aLng[8] = [ _
'Error', _
'Select the name of the function', _
'The "Include" directory not found', _
'Not found', _
'Sought but not found', _
'Possible problems:' & @LF & '1. The function name with typo' & @LF & '2. "Include" is not inserted' & @LF & @LF & 'Want to do a search in all "include"?', _
'Found in', _
'Copy string to Clipboard?']

; Local $aLng[8] = [ _
; 'Ошибка', _
; 'Выделите имя функции', _
; 'Каталог Include не найден', _
; 'Не найден', _
; 'Искали, но не нашли', _
; 'Возможные проблемы:' & @LF & '1. Имя функции с опечаткой' & @LF & '2. include не подключён' & @LF & @LF & 'Хотите сделать поиск во всех include?', _
; 'Найдено в', _
; 'Копировать строку в буфер?']

If $CmdLine[0] > 2 Then
    ; $sText = FileRead($CmdLine[3]) ; читаем файл
    $sText = _npp_GetText() ; Читаем из окна редактора. Нет проблемы если текст не сохранён.
    $a = StringRegExp($sText, '(?i)[\r\n\A]\s*Func\s+' & $CmdLine[2], 1) ; поиск имени функции в тексте
    If @error Then
        $Include_script = StringRegExp($sText, '(?mi)^\s*#include\s*[<"'']*([^\r\n]+?\.au3)', 3) ; возвращает include указанные в скрипте
        ; _ArrayDisplay($Include_script, 'Array')
        $sInclude_Path = _GetIncludePath()
        ; If @error Then
        ; $sInclude_Path = @ScriptDir
        ; Else
        ; $sInclude_Path &= ';' & @ScriptDir
        ; EndIf
        $aInclude_Path = StringSplit($sInclude_Path, ';')
        For $j = 1 To $aInclude_Path[0]
            If Not FileExists($aInclude_Path[$j]) Then ContinueLoop
            For $i = 0 To UBound($Include_script) - 1
                ; MsgBox(0, 'Сообщение', $sInclude_Path)
                ; MsgBox(0, 'Сообщение', $Include_script[$i])
                $sText = FileRead($aInclude_Path[$j] & '\' & $Include_script[$i]) ; открываем include файл
                $a = StringRegExp($sText, '(?i)[\r\n\A]\s*Func\s+' & $CmdLine[2], 1) ; поиск имени функции в тексте
                If Not @error Then ; если нет ошибки, т.е. нашли, то делаем прыжок
                    $iPos = @extended - StringLen($a[0]) + 6 ; Сразу сохраняем позицию
                    Run('"' & $CmdLine[1] & '\notepad++.exe" "' & $aInclude_Path[$j] & '\' & $Include_script[$i] & '"') ; открываем файл
                    Sleep(300) ; на всякий случай ждём его открытия
                    _JumpToFunc($sText, $iPos) ; выполняем прыжок в файле
                    Exit
                EndIf
            Next
        Next
        If MsgBox(4 + 32, $aLng[3], $aLng[5]) = 6 Then
            For $j = 1 To $aInclude_Path[0] ; Обработка всех файлов в include-папках
                If Not FileExists($aInclude_Path[$j]) Then ContinueLoop
                $aFileList = _FileListToArray($aInclude_Path[$j], '*.au3', 1) ; поиск файлов
                If Not @error Then ; если нет ошибки (всмысле найдены файлы), то
                    For $i = 1 To $aFileList[0] ; обрабатываем каждый файл
                        $sText = FileRead($aInclude_Path[$j] & '\' & $aFileList[$i]) ; открываем include файл
                        $a = StringRegExp($sText, '(?i)[\r\n\A]\s*Func\s+' & $CmdLine[2], 1) ; поиск имени функции в тексте
                        If Not @error Then ; если нет ошибки, т.е. нашли, то делаем прыжок
                            $iPos = @extended - StringLen($a[0]) + 6 ; Сразу сохраняем позицию
                            Run('"' & $CmdLine[1] & '\notepad++.exe" "' & $aInclude_Path[$j] & '\' & $aFileList[$i] & '"') ; открываем файл
                            Sleep(300) ; на всякий случай ждём его открытия
                            _JumpToFunc($sText, $iPos) ; выполняем прыжок в файле
                            If MsgBox(4 + 32, $aLng[6] & ' ' & $aFileList[$i], $aLng[7] & @LF & @LF & '#include <' & $aFileList[$i] & '>') = 6 Then ClipPut('#include <' & $aFileList[$i] & '>')
                            Exit
                        EndIf
                    Next
                EndIf
            Next
        EndIf
        MsgBox(16, $aLng[3], $aLng[4], 1)
    Else
        ; прыг в текущем файле
        $iPos = @extended - StringLen($a[0]) + 6
        _JumpToFunc($sText, $iPos)
    EndIf
Else
    MsgBox(0, $aLng[0], $aLng[1])
EndIf

Func _JumpToFunc(ByRef $AllText, $iPos)
    ; Поиск найденного в тексте кода
    
    ; Вычисляем номер строки
    $iPos = StringRegExp(StringLeft($AllText, $iPos), '(\r\n|\r|\n)', 3)
    $iPos = UBound($iPos)
    ; делаем поправку, чтоб передвинуть строку к центру окна
    $CurLine = _SendMessage(WinGetHandle('[CLASS:Notepad++]'), $NPPM_GETCURRENTLINE, 0, 0)
    $pos = ControlGetPos('[CLASS:Notepad++]', "", "[CLASSNN:Scintilla1]")
    $iPos2 = $pos[3] / 32 ; высоту делим на 32 пикселя чтобы определить кол строк до средины окна
    If $iPos > $CurLine Then
        $iPos2 = $iPos + $iPos2
    Else
        $iPos2 = $iPos - $iPos2
    EndIf
    _npp_SetCurPos($iPos2)
    _npp_SetCurPos($iPos)
    WinActivate('[CLASS:Notepad++]')
EndFunc   ;==>_JumpToFunc

Func _GetIncludePath()
    $sInclude_Path = RegRead("HKLM\SOFTWARE\AutoIt v3\AutoIt", "InstallDir")
    If @error Then
        $sInclude_Path = RegRead('HKCU\Software\AutoIt v3\Autoit', 'Include')
    Else
        $sInclude_Path &= "\Include"
    EndIf
    If $sInclude_Path Then
        Return $sInclude_Path & ';' & @ScriptDir
    Else
        Return @ScriptDir
    EndIf
EndFunc   ;==>_GetIncludePath

shortcuts.xml

<Command name="JumpFunc" Ctrl="no" Alt="yes" Shift="no" Key="70">&quot;$(NPP_DIRECTORY)\..\AutoIt3.exe&quot; &quot;$(NPP_DIRECTORY)\Instrument_azjio\JumpFunc.au3&quot; &quot;$(NPP_DIRECTORY)&quot; &quot;$(CURRENT_WORD)&quot; &quot;$(FULL_CURRENT_PATH)&quot;</Command>

Alt + F - Jump to function as a SciTE 

Edited by AZJIO

Share this post


Link to post
Share on other sites
lehoangebc

thanks so much

Share this post


Link to post
Share on other sites
AZJIO

Update

+ pluginsNppSnippets.dll

* autoit.xml

* Command.au3

* AU3_Sample.ini

* list_var_funk.au3

* shortcuts.xml

It is removed DSpellCheck.dll

Share this post


Link to post
Share on other sites
kaesereibe

One of my favourite N++ Plugin

RunMe allows to execute the currently open file, based on its shell association.

The plugin allows also to open an explorer or command shell at the file location.

Options are available to same the current file (or all the files) before execution.

The executed file can be run in foreground,background, or hidden mode.

Context menu entries and tool bar icons are available.

Share this post


Link to post
Share on other sites
AZJIO

RunMe allows to execute the currently open file, based on its shell association.

I added it even without a plug-in and without scripts

The plugin allows also to open an explorer or command shell at the file location.

It is added using the internal variables Notepad++

Share this post


Link to post
Share on other sites
Melba23

Odraude,

Please read this sticky. :)

M23

  • Like 1

Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind._______My UDFs:

Spoiler

ArrayMultiColSort ---- Sort arrays on multiple columns
ChooseFileFolder ---- Single and multiple selections from specified path treeview listing
Date_Time_Convert -- Easily convert date/time formats, including the language used
ExtMsgBox --------- A highly customisable replacement for MsgBox
GUIExtender -------- Extend and retract multiple sections within a GUI
GUIFrame ---------- Subdivide GUIs into many adjustable frames
GUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView items
GUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeView
Marquee ----------- Scrolling tickertape GUIs
NoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxes
Notify ------------- Small notifications on the edge of the display
Scrollbars ----------Automatically sized scrollbars with a single command
StringSize ---------- Automatically size controls to fit text
Toast -------------- Small GUIs which pop out of the notification area

 

Share this post


Link to post
Share on other sites
Odraude

Odraude,

Please read this sticky. :)

M23

Thanks!

The strange thing is that it detects the Trojan AU3_Sample.ini file instead of an exe

Share this post


Link to post
Share on other sites
Melba23

Odraude,

Which just goes to show how little faith you should put in the scan. ;)

M23


Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind._______My UDFs:

Spoiler

ArrayMultiColSort ---- Sort arrays on multiple columns
ChooseFileFolder ---- Single and multiple selections from specified path treeview listing
Date_Time_Convert -- Easily convert date/time formats, including the language used
ExtMsgBox --------- A highly customisable replacement for MsgBox
GUIExtender -------- Extend and retract multiple sections within a GUI
GUIFrame ---------- Subdivide GUIs into many adjustable frames
GUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView items
GUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeView
Marquee ----------- Scrolling tickertape GUIs
NoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxes
Notify ------------- Small notifications on the edge of the display
Scrollbars ----------Automatically sized scrollbars with a single command
StringSize ---------- Automatically size controls to fit text
Toast -------------- Small GUIs which pop out of the notification area

 

Share this post


Link to post
Share on other sites
ricky

Hello,

thanks for this version, unfortunate that everything is in Russian.

Did you modify the english.xml or russian.xml provided by default?

Share this post


Link to post
Share on other sites
AZJIO

@ricky03

Copy the file, having replaced.

"Notepad++localizationenglish.xml" => "Notepad++nativeLang.xml"

Update
Notepad++ 6.5.3

+ debugger.au3

Share this post


Link to post
Share on other sites
cookiemonster

Hi,

Ive tried using 'FunctionList.dll - List of functions' version 2.1 against notepad++ v6.6.9, but when I load an autoit .au3 file into notepad++ the function list box says 'No Rule Define', I have put the 'FunctionListRules.xml' into 'C:Usersusername'AppDataRoamingNotepad++', also tried putting it in 'C:Program Files (x86)Notepad++pluginsconfig'

Has anyone got any ideas to make it work?

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

  • Similar Content

    • jaberwacky
      By jaberwacky
      SciTE Customization GUI is intended to be your one-stop solution for your SciTE customization needs.
      With SciTE Customization GUI you can create new themes from scratch without having to touch a single configuration file.  Simply select 'Default Theme' from the file menu.  This will start you out with a default theme.  Then make your changes to the theme.  Finally, select 'Save As' from the file menu and give it a name.  Or you can select from an already existing theme.
      You can see live changes to SciTE as you change things around (some settings are not live). You can change various SciTE4AutoIt3 settings such as Tidy, Tools, debug trace messages, etc.
      I mostly want to try out new ideas which I hope will get used in the official SciTE4AutoIt3.  I also wanted to see how large of a program I could script in AutoIt before it become a mass of unmaintable spaghetti. I feel that I am successful in that regard. It is reasonably easy to debug, extend and understand. I feel that this was achieved by employing the Model-View-Controller pattern. I also used AutoItObject which allows me to achieve a level of information hiding which would not have been possible otherwise.
      I stand on the shoulders of giants so credit where credit is due. Thanks to Jos for the original SciTEConfig. Thanks to Jon for AutoIt. Melba23 for the SciTE Abbreviation Manager and the SciTE UserCalltip Manager.
      Credits and changelog have be moved to the script.
      Note: this is not an official script.  Jon, Jos or the rest of the AutoIt team do not provide support.  That's all up to me.
      SciTE Customization GUI.zip -- downloads: ~5253
      SciTE Customization GUI -- Source.zip -- Includes all of the required dependencies.
    • Beege
      By Beege
      If you have every taken the time to set up a nice dark theme for your scite editor, you probably noticed shortly after a small yet really annoying flaw. For what ever reason, scite is not set up to let you change the caret fore color and caret line color per language. This really sucks if say you want to edit a properties file or any of the many other languages that Scite currently is setup to support. Pretty much all the other languages are set as light theme so unless you change the theme for those file types, you end up with something like below:
       

       
      To get around this I came up with the following that seems to work pretty well.  
       
      Add the following properties to SciteUser.properties file (Options -> Open User Options File)
      # The default values will be used only if an extention value is not defined. caret.default.line.back=#FFFED8 caret.default.fore=#000000 # Set Caret Colors per extention. You can add other extentions as well caret.au3.fore=#FFFFFF caret.au3.line.back=#111111  
      Next open SciteStartup.lua (Options -> Open Lua Startup Script) and add the following to the list of files loaded:
      LoadLuaFile("CaretSwitch.lua")  
      Now add CaretSwitch.lua file to your ~program files~AutoIt3SciTELUA directory. 
      CaretOnSwitchFile = EventClass:new(Common) CaretOnFileOpen = EventClass:new(Common) function CaretOnFileOpen:OnOpen(fn) --~ split up fullfilepath path, filename, ext = string.match(fn, "(.-)([^\\]-([^\\%.]+))$") if props['caret.' .. ext .. '.line.back'] ~= '' then props['caret.line.back'] = props['caret.' .. ext .. '.line.back'] else props['caret.line.back'] = props['caret.default.line.back'] end if props['caret.' .. ext .. '.fore'] ~= '' then props['caret.fore'] = props['caret.' .. ext .. '.fore'] else props['caret.fore'] = props['caret.default.fore'] end end function CaretOnSwitchFile:OnSwitchFile(fn) path, filename, ext = string.match(fn, "(.-)([^\\]-([^\\%.]+))$") if props['caret.' .. ext .. '.line.back'] ~= '' then lineback = props['caret.' .. ext .. '.line.back'] else lineback = props['caret.default.line.back'] end if props['caret.' .. ext .. '.fore'] ~= '' then fore = props['caret.' .. ext .. '.fore'] else fore = props['caret.default.fore'] end --~ these commands takes color values as BBGGRR even though all property colors are defined as RRGGBB. Brilliant!! editor.CaretLineBack = tonumber(string.sub(lineback, 6, 7) .. string.sub(lineback, 4, 5) .. string.sub(lineback, 2, 3), 16) editor.CaretFore = tonumber(string.sub(fore, 6, 7) .. string.sub(fore, 4, 5) .. string.sub(fore, 2, 3), 16) end  
      Last restart SciTE and that should be it. Let me know if you have any issues. Thanks

      PS: If someone jumps on here and shows me a option to fix this I swear I'm going to stab my self in the eye. I searched for like 2 hours before coming to the conclusion that these values cant be set per language.   
       
      CaretSwitch.zip
×