Notepad++ official repository
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

195 lines
4.1 KiB

::StartupScript
npp_console keep
npp_exec "SetSingleEdgeLine"
::MultipleSelectAddNext
npp_console keep
sci_sendmsg SCI_SETSEARCHFLAGS SCFIND_WHOLEWORD
sci_sendmsg SCI_TARGETWHOLEDOCUMENT
sci_sendmsg SCI_MULTIPLESELECTADDNEXT
::MultipleSelectAddEach
npp_console keep
sci_sendmsg SCI_SETSEARCHFLAGS SCFIND_WHOLEWORD
sci_sendmsg SCI_TARGETWHOLEDOCUMENT
sci_sendmsg SCI_GETSELECTIONEMPTY
if $(MSG_RESULT) == 1 then
sci_sendmsg SCI_MULTIPLESELECTADDNEXT
endif
sci_sendmsg SCI_MULTIPLESELECTADDEACH
::SetSingleEdgeLine
npp_console keep
sci_sendmsg SCI_SETEDGECOLUMN 80
sci_sendmsg SCI_SETEDGEMODE EDGE_LINE
::ConfigSingleEdgeLine
npp_console keep
sci_sendmsg SCI_GETEDGECOLUMN
inputbox "Input edge column" : "Edge column" : $(MSG_RESULT)
sci_sendmsg SCI_SETEDGECOLUMN $(INPUT)
sci_sendmsg SCI_SETEDGEMODE EDGE_LINE
::SingleEdgeLineOn
npp_console keep
sci_sendmsg SCI_SETEDGEMODE EDGE_LINE
::MultipleEdgeLinesOn
npp_console keep
sci_sendmsg SCI_SETEDGEMODE EDGE_MULTILINE
::BackgroundEdgeOn
npp_console keep
sci_sendmsg SCI_SETEDGEMODE EDGE_BACKGROUND
::EdgesOff
npp_console keep
sci_sendmsg SCI_SETEDGEMODE EDGE_NONE
::WrapSelectedLinesAtEdge
npp_console keep
sci_sendmsg SCI_GETEDGEMODE
if~ $(MSG_RESULT) != EDGE_LINE then
set local $(LinePixelWidth) = 0
goto :DoWrap
endif
sci_sendmsg SCI_GETEDGECOLUMN
set local $(LineCharWidth) ~ $(MSG_RESULT) + 1
set local $(TemplateStr) = W
set local $(Cnt) = 2
:ForLoopStart
if $(Cnt) > $(LineCharWidth) goto :ForLoopEnd
set local $(TemplateStr) = $(TemplateStr)W
set local $(Cnt) ~ $(Cnt) + 1
goto :ForLoopStart
:ForLoopEnd
sci_sendmsg SCI_TEXTWIDTH STYLE_DEFAULT "$(TemplateStr)"
set local $(LinePixelWidth) = $(MSG_RESULT)
:DoWrap
sci_sendmsg SCI_TARGETFROMSELECTION
sci_sendmsg SCI_LINESSPLIT $(LinePixelWidth)
::DeleteLinesFrom2ndView
npp_console keep
npp_console disable
npe_console -- m-
sci_sendmsg SCI_DOCUMENTSTART
npp_sendmsg NPPM_MENUCOMMAND 0 IDM_VIEW_SWITCHTO_OTHER_VIEW
sci_sendmsg SCI_DOCUMENTSTART
npp_sendmsg NPPM_GETCURRENTVIEW
if $(MSG_RESULT) == 0 then
npp_sendmsg NPPM_MENUCOMMAND 0 IDM_VIEW_SWITCHTO_OTHER_VIEW
endif
sci_sendmsg SCI_GETLINECOUNT
set local $(LineCount) = $(MSG_RESULT)
set local $(LineIdx) = 0
:ProcessSearchTerms
if $(LineIdx) >= $(LineCount) goto :End
sci_sendmsg SCI_GETLINE $(LineIdx) @""
set local $(CurLine) = $(MSG_LPARAM)
if "$(CurLine)" == "" goto :AdvanceToNextLine
npp_sendmsg NPPM_MENUCOMMAND 0 IDM_VIEW_SWITCHTO_OTHER_VIEW
sci_sendmsg SCI_GETCURRENTPOS
sci_sendmsg SCI_LINEFROMPOSITION $(MSG_RESULT)
set local $(StartLineIdx) = $(MSG_RESULT)
set local $(Flags) ~ NPE_SF_SETPOS
:ReplaceLoop
sci_find $(Flags) "$(CurLine)"
if $(MSG_RESULT) == -1 goto :ReplaceLoopEnd
sci_sendmsg SCI_LINEFROMPOSITION $(MSG_RESULT)
set local $(FoundLineIdx) = $(MSG_RESULT)
sci_sendmsg SCI_GETLINE $(FoundLineIdx) @""
set local $(FoundLine) = $(MSG_LPARAM)
set local $(FoundLineLC) ~ strlower "$(FoundLine)"
set local $(CurLineLC) ~ strlower "$(CurLine)"
if "$(FoundLineLC)" == "$(CurLineLC)" then
sci_sendmsg SCI_GOTOLINE $(FoundLineIdx)
sci_sendmsg SCI_LINEDELETE
endif
set local $(Flags) ~ $(Flags) | NPE_SF_NEXT
goto :ReplaceLoop
:ReplaceLoopEnd
sci_sendmsg SCI_GOTOLINE $(StartLineIdx)
npp_sendmsg NPPM_MENUCOMMAND 0 IDM_VIEW_SWITCHTO_OTHER_VIEW
:AdvanceToNextLine
set local $(LineIdx) ~ $(LineIdx) + 1
goto :ProcessSearchTerms
:End
sci_sendmsg SCI_DOCUMENTSTART
npp_sendmsg NPPM_MENUCOMMAND 0 IDM_VIEW_SWITCHTO_OTHER_VIEW
sci_sendmsg SCI_DOCUMENTSTART
npp_sendmsg NPPM_GETCURRENTVIEW
if $(MSG_RESULT) == 1 then
npp_sendmsg NPPM_MENUCOMMAND 0 IDM_VIEW_SWITCHTO_OTHER_VIEW
endif
npp_console enable
::ReadLongText
npp_console keep
npp_sendmsg WM_COMMAND IDM_VIEW_CLONE_TO_ANOTHER_VIEW
sci_sendmsg SCI_PAGEDOWN
npp_sendmsg WM_COMMAND IDM_VIEW_SYNSCROLLV
::TrimTrailingSpace
npp_console keep
npp_sendmsg WM_COMMAND IDM_EDIT_TRIMTRAILING