AkelPad Forum Index AkelPad
Support forum
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Coder plugin (2)
Goto page Previous  1, 2, 3 ... 35, 36, 37 ... 42, 43, 44  Next
 
Post new topic   Reply to topic    AkelPad Forum Index -> Plugins
View previous topic :: View next topic  
Author Message
Instructor
Site Admin


Joined: 06 Jul 2006
Posts: 5167

PostPosted: Wed Feb 12, 2014 2:54 pm    Post subject: Reply with quote

Drugmix wrote:
правило не работало из-за того, как странно regex parser обрабатывает (call|goto) - достаточно изменить на (goto|call) и всё заработает
Не воспроизводится - работает одинаково.
Back to top
View user's profile Send private message Send e-mail
Drugmix



Joined: 08 Apr 2013
Posts: 367

PostPosted: Wed Feb 12, 2014 3:17 pm    Post subject: Reply with quote

Instructor
перепроверил у себя - и правда работает одинаково. Прошу прощения, возможно, я во время одной из проверок забыл обновить кэш после правки правила из состояния, когда оно было нерабочим. Забираю свои слова назад.
А предположение такое сделал потому что у меня уже были некоторые правила (упоминалось в этой же теме или в теме про регулярные выражения), когда перебор ИЛИ ИЛИ вариантов работал так, что порядок вариантов влиял на результат, например:
Code:
0   "^\s*(?:\}\s*)*?(?:(Else)(?:\s*,\s*|\s+|\s*\{\s*)|(.+(?=::))::)?(?:(Try)(?:\s*,\s*|\s+|\s*\{\s*))?\s*(#InputLevel)(?:(?:\s*,\s*|\s+)(\d|[1-9]\d|100)?)?\s*?((?<=\s);.*)?$" "\1=(4,${IF},0) \2=(4,${STR},0) \3=(2,${OP},0) \4=(2,${AREA},0) \5=(0,${NUM},0) \6=(3,${COMM},0)"   ; \5=${LEVEL}

не срабатывает на строке
Code:
#inputlevel 20

а если группу (\d|[1-9]\d|100) заменить на (100|[1-9]\d|\d) - то уже срабатывает.
Back to top
View user's profile Send private message
Skif_off



Joined: 20 Oct 2013
Posts: 202

PostPosted: Wed Feb 12, 2014 4:32 pm    Post subject: Reply with quote

Drugmix wrote:
попробуйте вот это правило:
Code:

0   "^\s*(goto|call)(?:\s+|\s*:?)(\w+(?:\.\w+)*)([^;])*((?<=\s);.*$)?$" "\1=(0,${OP},0) \2=(0,${AREA},0) \3=(0,${ATTR},0) \4=(3,${COMM},0)"

Начало и конец строки тут лишние, комментарий тоже.

FeyFre
Drugmix

Спасибо за пояснения и предложения, правила писались в три приема между делом, никак руки не доходили очеловечить Smile Остановился на таком варианте:
Code:
0   "(goto|call)(?:\s+|\s*:?)(\w+(?:\.\w+)*)"   "\1=(0,${OP},0) \2=(2,0,0) \3=(2,0,0)"
Back to top
View user's profile Send private message
Drugmix



Joined: 08 Apr 2013
Posts: 367

PostPosted: Wed Feb 12, 2014 4:49 pm    Post subject: Reply with quote

Skif_off
я в своём сообщении ошибку то подправил, и хоть и с ней всё работает нормально, но формально парсер имеет полное право сработать по заданному правилу и ошибочно:
Code:
(?:\s+|\s*:)
там 2-ой знак вопроса не нужен.
И да, у вас лишняя \3=(…) в правиле: там нет захватывающей третьей группы же.
Back to top
View user's profile Send private message
Skif_off



Joined: 20 Oct 2013
Posts: 202

PostPosted: Wed Feb 12, 2014 6:53 pm    Post subject: Reply with quote

Drugmix wrote:
там 2-ой знак вопроса не нужен.

Если его убрать, то получается
goto batchexit
goto :EOF
а с ним как и нужно:
goto batchexit
goto :EOF

Drugmix wrote:
И да, у вас лишняя \3=(…) в правиле: там нет захватывающей третьей группы же.

Решил, что (?:\s+|\s*:?) - третья группа :)
Back to top
View user's profile Send private message
Drugmix



Joined: 08 Apr 2013
Posts: 367

PostPosted: Wed Feb 12, 2014 7:17 pm    Post subject: Reply with quote

Skif_off
не должно быть такого. А если попробовать
Code:
(?:\s*:|\s+)
то результат такой же?

Last edited by Drugmix on Wed Feb 12, 2014 7:40 pm; edited 1 time in total
Back to top
View user's profile Send private message
Skif_off



Joined: 20 Oct 2013
Posts: 202

PostPosted: Wed Feb 12, 2014 7:20 pm    Post subject: Reply with quote

Drugmix wrote:
не должно быть такого. А если попробовать
Code:
(\s*:|\s+)
то результат такой же?

Так вообще не работает.

Вспомнил, почему разнес на два правила:
call set MYPATH=%MYPATH%
Через call нечасто вызывают внутренние функции, но бывает. С :{0,1} таки прогнал.
Back to top
View user's profile Send private message
koros



Joined: 12 Apr 2008
Posts: 52

PostPosted: Wed Feb 12, 2014 7:26 pm    Post subject: Reply with quote

Drugmix wrote:
koros
попробуйте вот это правило:
Code:

0   "^\s*(goto|call)(?:\s+|\s*:)(\w+(?:\.\w+)*)([^;])*((?<=\s);.*$)?$" "\1=(0,${OP},0) \2=(0,${AREA},0) \3=(0,${ATTR},0) \4=(3,${COMM},0)"


Вот, что у меня получается

>>>


Skif_off

Code:
0   "(goto|call)(?:\s+|\s*:?)(\w+(?:\.\w+)*)"   "\1=(2,${OP},0) \2=(2,${AREA},0)"


У меня получается (слетает вся остальная подсветка)

>>>


Вот мой bat.coder

>>>


;----------------------------------------------;
; Coder plugin syntax file ;
;----------------------------------------------;

;Colors
; Color need to be in #RRGGBB format.
; If color equal to zero, then color ignored.
;
;Font styles
; 0 ignored.
; 1 normal.
; 2 bold.
; 3 italic.
; 4 bold italic.
;
;For comfort file viewing/editing set tab size to 8 or higher.


Files:
;==========
;File types
;==========
*.bat
*.cmd


;----------------------------------------------;
; HighLight ;
;----------------------------------------------;

;Flags (sum of the members)
; 1 case sensitive.
; 2 word is a composition of characters ("Words:" section only). Example: "0123456789" - highlight words that contain only digits.
; 4 quote end required ("Quotes:" section only).
; 8 quote start string is ignored and last meet delimiter used as quote start ("Quotes:" section only).
; 16 quote end string is ignored and first meet delimiter used as quote end ("Quotes:" section only).
; 32 don't highlight quote start ("Quotes:" section only).
; 64 don't highlight quote end ("Quotes:" section only).
; 128 don't catch and don't highlight quote start ("Quotes:" section only).
; 256 don't catch and don't highlight quote end ("Quotes:" section only).
; 512 quote start, delimiter or word located at line start.
; 1024 quote end, delimiter or word located at line end.
; 2048 quote start is surrounded with delimiters ("Quotes:" section only).
; 4096 quote end is surrounded with delimiters ("Quotes:" section only).
; 8192 quote doesn't contain delimiters ("Quotes:" section only).
; 16384 only quote start string is catched ("Quotes:" section only).
; 32768 quote doesn't contain any character ("Quotes:" section only).


Font:
;=================================================================
;FontStyle FontSize FaceName
;=================================================================
${HighLight_FontStyle} ${HighLight_FontSize} ${HighLight_FaceName}

BkImage:
;==================================================
;BkImageFile BkImageAlpha
;==================================================
${HighLight_BkImageFile} ${HighLight_BkImageAlpha}

Colors:
;=============================================================================================================================================================================================================================================================================================================================================================================================================================
;BasicTextColor BasicBkColor SelTextColor SelBkColor LineTextColor LineBkColor LineBorderColor AltTextColor AltBkColor AltBorderColor ColumnColor MarkerColor CaretColor UrlColor ActiveUrlColor VisitUrlColor
;=============================================================================================================================================================================================================================================================================================================================================================================================================================
${HighLight_BasicTextColor} ${HighLight_BasicBkColor} ${HighLight_SelTextColor} ${HighLight_SelBkColor} ${HighLight_LineTextColor} ${HighLight_LineBkColor} ${HighLight_LineBorderColor} ${HighLight_AltTextColor} ${HighLight_AltBkColor} ${HighLight_AltBorderColor} ${HighLight_ColumnColor} ${HighLight_MarkerColor} ${HighLight_CaretColor} ${HighLight_UrlColor} ${HighLight_ActiveUrlColor} ${HighLight_VisitUrlColor}


AutoMark:
;====================================================================================================================
;AutoMarkFlags AutoMarkFontStyle AutoMarkTextColor AutoMarkBkColor
;====================================================================================================================
${HighLight_AutoMarkFlags} ${HighLight_AutoMarkFontStyle} ${HighLight_AutoMarkTextColor} ${HighLight_AutoMarkBkColor}


Quotes:
;======================================================================
;Flags Font Color Color Quote Quote Escape Quote Quote
; style text bkgrnd start end char include exclude
;======================================================================
;513=1+512
513 3 ${COMM} 0 "::" "" "" "" ""
;2176=128+2048
2176 3 ${COMM} 0 "REM" "" "" "" ""
;6144=2048+4096
6144 3 ${DEL1} 0 "@ECHO" "OFF" "" " " ""
6144 3 ${DEL1} 0 "@ECHO" "ON" "" " " ""
;5=1+4
;5 3 ${STR} 0 `"` `"` "" "" ""
;2176=128+256+2048
2432 4 ${STR} 0 "ECHO" ">" "" "" ""
;5=1+4
5 0 ${VAR} 0 "!" "!" "" "" ""
;8197=1+4+8192
8197 2 ${VAR} 0 "%~" "0" "" "" ""
8197 2 ${VAR} 0 "%~" "1" "" "" ""
8197 2 ${VAR} 0 "%~" "2" "" "" ""
8197 2 ${VAR} 0 "%~" "3" "" "" ""
8197 2 ${VAR} 0 "%~" "4" "" "" ""
8197 2 ${VAR} 0 "%~" "5" "" "" ""
8197 2 ${VAR} 0 "%~" "6" "" "" ""
8197 2 ${VAR} 0 "%~" "7" "" "" ""
8197 2 ${VAR} 0 "%~" "8" "" "" ""
8197 2 ${VAR} 0 "%~" "9" "" "" ""
;273=1+16+256
;273 0 ${VAR} 0 "%~" "" "" "" ""
;273=1+16+256
273 2 ${VAR} 0 "%%" "" "" "" ""
;8197=1+4+8192
8197 2 ${VAR} 0 "%" "%" "" "" ""
;273=1+16+256
273 2 ${VAR} 0 "%" "" "" "" ""
;1809=1+16+256+512+1024
1809 2 ${AREA} 0 ":" "" "" "" ""


QuotesRE:
;==========================================================================
;Flags Pattern \BackRef=(FontStyle,ColorText,ColorBk) \BackRef=...
;==========================================================================

Delimiters:
;======================================
;Flags Font Color Color Char(s)
; style text bkgrnd
;======================================
1 0 0 0 `"`
1 0 0 0 " "
1 0 0 0 " "
1 0 0 0 %
1 2 ${DEL1} 0 <
1 2 ${DEL1} 0 >
1 2 ${DEL2} 0 @
1 2 ${DEL2} 0 =
1 2 ${DEL2} 0 (
1 2 ${DEL2} 0 )
1 2 ${DEL2} 0 {
1 2 ${DEL2} 0 }
1 2 ${DEL2} 0 \
1 2 ${DEL2} 0 .
1 2 ${DEL2} 0 |
0 2 ${TAG} 0 +A
0 2 ${TAG} 0 +H
0 2 ${TAG} 0 +R
0 2 ${TAG} 0 +S
0 2 ${TAG} 0 -c
0 2 ${TAG} 0 -d
0 2 ${TAG} 0 -f
0 2 ${TAG} 0 -r
0 2 ${TAG} 0 -r0
0 2 ${TAG} 0 -s
0 2 ${TAG} 0 -v
0 2 ${TAG} 0 -y
0 2 ${TAG} 0 /a
0 2 ${TAG} 0 /b
0 2 ${TAG} 0 /B
0 2 ${TAG} 0 /c
0 2 ${TAG} 0 /D
0 2 ${TAG} 0 /d
0 2 ${TAG} 0 /E
0 2 ${TAG} 0 /e
0 2 ${TAG} 0 /ea
0 2 ${TAG} 0 /f
0 2 ${TAG} 0 /g
0 2 ${TAG} 0 /h
0 2 ${TAG} 0 /i
0 2 ${TAG} 0 /im
0 2 ${TAG} 0 /k
0 2 ${TAG} 0 /l
0 2 ${TAG} 0 /MIN
0 2 ${TAG} 0 /n
0 2 ${TAG} 0 /p
0 2 ${TAG} 0 /q
0 2 ${TAG} 0 /REGSERVER
0 2 ${TAG} 0 /s
0 2 ${TAG} 0 /u
0 2 ${TAG} 0 /v
0 2 ${TAG} 0 /ve
0 2 ${TAG} 0 /w
0 2 ${TAG} 0 /wait
0 2 ${TAG} 0 /x
0 2 ${TAG} 0 /y


Words:
;===================================
;Flags Font Color Color Word
; style text bkgrnd
;===================================
; Built-in:
0 2 ${OP} 0 append
0 2 ${OP} 0 arp
0 2 ${OP} 0 assoc
0 2 ${OP} 0 at
0 2 ${OP} 0 atmadm
0 2 ${OP} 0 attrib
0 2 ${OP} 0 bootcfg
0 2 ${OP} 0 break
0 2 ${OP} 0 buffers
0 2 ${OP} 0 cacls
0 2 ${OP} 0 call
0 2 ${OP} 0 cd
0 2 ${OP} 0 change logon
0 2 ${OP} 0 change port
0 2 ${OP} 0 change user
0 2 ${OP} 0 chcp
0 2 ${OP} 0 chdir
0 2 ${OP} 0 chkdsk
0 2 ${OP} 0 chkntfs
0 2 ${OP} 0 cipher
0 2 ${OP} 0 cls
0 2 ${OP} 0 cmd
0 2 ${OP} 0 cmstp
0 2 ${OP} 0 color
0 2 ${OP} 0 command
0 2 ${OP} 0 comp
0 2 ${OP} 0 compact
0 2 ${OP} 0 convert
0 2 ${OP} 0 copy
0 2 ${OP} 0 country
0 2 ${OP} 0 cprofile
0 2 ${OP} 0 cscript
0 2 ${OP} 0 date
0 2 ${OP} 0 debug
0 2 ${OP} 0 defrag
0 2 ${OP} 0 del
0 2 ${OP} 0 delete
0 2 ${OP} 0 device
0 2 ${OP} 0 devicehigh
0 2 ${OP} 0 dir
0 2 ${OP} 0 diskcomp
0 2 ${OP} 0 diskcopy
0 2 ${OP} 0 diskpart
0 2 ${OP} 0 dos
0 2 ${OP} 0 doskey
0 2 ${OP} 0 dosonly
0 2 ${OP} 0 driveparm
0 2 ${OP} 0 driverquery
0 2 ${OP} 0 echo
0 2 ${OP} 0 echoconfig
0 2 ${OP} 0 edit
0 2 ${OP} 0 edlin
0 2 ${OP} 0 endlocal
0 2 ${OP} 0 erase
0 2 ${OP} 0 eventcreate
0 2 ${OP} 0 eventquery
0 2 ${OP} 0 eventtriggers
0 2 ${OP} 0 evntcmd
0 2 ${OP} 0 exe2bin
0 2 ${OP} 0 exit
0 2 ${OP} 0 expand
0 2 ${OP} 0 fastopen
0 2 ${OP} 0 fc
0 2 ${OP} 0 fcbs
0 2 ${OP} 0 files=
0 2 ${OP} 0 find
0 2 ${OP} 0 findstr
0 2 ${OP} 0 finger
0 2 ${OP} 0 flattemp
0 2 ${OP} 0 forcedos
0 2 ${OP} 0 format
0 2 ${OP} 0 fsutil
0 2 ${OP} 0 ftp
0 2 ${OP} 0 ftype
0 2 ${OP} 0 getmac
0 2 ${OP} 0 gpresult
0 2 ${OP} 0 gpupdate
0 2 ${OP} 0 graftabl
0 2 ${OP} 0 graphics
0 2 ${OP} 0 help
0 2 ${OP} 0 helpctr
0 2 ${OP} 0 hostname
0 2 ${OP} 0 install
0 2 ${OP} 0 ipconfig
0 2 ${OP} 0 ipseccmd
0 2 ${OP} 0 ipxroute
0 2 ${OP} 0 irftp
0 2 ${OP} 0 label
0 2 ${OP} 0 lastdrive
0 2 ${OP} 0 lh
0 2 ${OP} 0 loadfix
0 2 ${OP} 0 loadhigh
0 2 ${OP} 0 lodctr
0 2 ${OP} 0 logman
0 2 ${OP} 0 logoff
0 2 ${OP} 0 lpq
0 2 ${OP} 0 lpr
0 2 ${OP} 0 macfile
0 2 ${OP} 0 md
0 2 ${OP} 0 mem
0 2 ${OP} 0 mkdir
0 2 ${OP} 0 mmc
0 2 ${OP} 0 mode
0 2 ${OP} 0 more
0 2 ${OP} 0 mountvol
0 2 ${OP} 0 move
0 2 ${OP} 0 msg
0 2 ${OP} 0 msiexec
0 2 ${OP} 0 msinfo32
0 2 ${OP} 0 mstsc
0 2 ${OP} 0 nbtstat
0 2 ${OP} 0 net accounts
0 2 ${OP} 0 net computer
0 2 ${OP} 0 net config
0 2 ${OP} 0 net continue
0 2 ${OP} 0 net file
0 2 ${OP} 0 net group
0 2 ${OP} 0 net help
0 2 ${OP} 0 net helpmsg
0 2 ${OP} 0 net localgroup
0 2 ${OP} 0 net name
0 2 ${OP} 0 net pause
0 2 ${OP} 0 net print
0 2 ${OP} 0 net send
0 2 ${OP} 0 net session
0 2 ${OP} 0 net share
0 2 ${OP} 0 net start
0 2 ${OP} 0 net statistics
0 2 ${OP} 0 net stop
0 2 ${OP} 0 net time
0 2 ${OP} 0 net use
0 2 ${OP} 0 net user
0 2 ${OP} 0 net view
0 2 ${OP} 0 netsh
0 2 ${OP} 0 netstat
0 2 ${OP} 0 nlsfunc
0 2 ${OP} 0 nslookup
0 2 ${OP} 0 ntbackup
0 2 ${OP} 0 ntcmdprompt
0 2 ${OP} 0 ntsd
0 2 ${OP} 0 openfiles
0 2 ${OP} 0 pagefileconfig
0 2 ${OP} 0 path
0 2 ${OP} 0 pathping
0 2 ${OP} 0 pause
0 2 ${OP} 0 pbadmin
0 2 ${OP} 0 pentnt
0 2 ${OP} 0 perfmon
0 2 ${OP} 0 ping
0 2 ${OP} 0 popd
0 2 ${OP} 0 print
0 2 ${OP} 0 prncnfg
0 2 ${OP} 0 prndrvr
0 2 ${OP} 0 prnjobs
0 2 ${OP} 0 prnmngr
0 2 ${OP} 0 prnport
0 2 ${OP} 0 prnqctl
0 2 ${OP} 0 prompt
0 2 ${OP} 0 pushd
0 2 ${OP} 0 query
0 2 ${OP} 0 query process
0 2 ${OP} 0 query session
0 2 ${OP} 0 query termserver
0 2 ${OP} 0 query user
0 2 ${OP} 0 rasdial
0 2 ${OP} 0 rcp
0 2 ${OP} 0 rd
0 2 ${OP} 0 recover
0 2 ${OP} 0 reg
0 2 ${OP} 0 reg add
0 2 ${OP} 0 reg compare
0 2 ${OP} 0 reg copy
0 2 ${OP} 0 reg delete
0 2 ${OP} 0 reg export
0 2 ${OP} 0 reg import
0 2 ${OP} 0 reg load
0 2 ${OP} 0 reg query
0 2 ${OP} 0 reg restore
0 2 ${OP} 0 reg save
0 2 ${OP} 0 reg unload
0 2 ${OP} 0 reg.exe
0 2 ${OP} 0 register
0 2 ${OP} 0 regsvr32
0 2 ${OP} 0 regsvr32.exe
0 2 ${OP} 0 relog
0 2 ${OP} 0 rem
0 2 ${OP} 0 ren
0 2 ${OP} 0 rename
0 2 ${OP} 0 replace
0 2 ${OP} 0 reset session
0 2 ${OP} 0 rexec
0 2 ${OP} 0 rmdir
0 2 ${OP} 0 route
0 2 ${OP} 0 rsh
0 2 ${OP} 0 rsm
0 2 ${OP} 0 runas
0 2 ${OP} 0 sc
0 2 ${OP} 0 schtasks
0 2 ${OP} 0 secedit
0 2 ${OP} 0 set
0 2 ${OP} 0 setlocal
0 2 ${OP} 0 setver
0 2 ${OP} 0 sfc
0 2 ${OP} 0 shadow
0 2 ${OP} 0 share
0 2 ${OP} 0 shell
0 2 ${OP} 0 shift
0 2 ${OP} 0 shutdown
0 2 ${OP} 0 sort
0 2 ${OP} 0 stacks
0 2 ${OP} 0 start
0 2 ${OP} 0 subst
0 2 ${OP} 0 switches
0 2 ${OP} 0 systeminfo
0 2 ${OP} 0 taskkill
0 2 ${OP} 0 tasklist
0 2 ${OP} 0 tcmsetup
0 2 ${OP} 0 telnet
0 2 ${OP} 0 tftp
0 2 ${OP} 0 time
0 2 ${OP} 0 title
0 2 ${OP} 0 tracerpt
0 2 ${OP} 0 tracert
0 2 ${OP} 0 tree
0 2 ${OP} 0 tscon
0 2 ${OP} 0 tsdiscon
0 2 ${OP} 0 tskill
0 2 ${OP} 0 tsprof
0 2 ${OP} 0 tsshutdn
0 2 ${OP} 0 type
0 2 ${OP} 0 typeperf
0 2 ${OP} 0 unlodctr
0 2 ${OP} 0 ver
0 2 ${OP} 0 verify
0 2 ${OP} 0 vol
0 2 ${OP} 0 vssadmin
0 2 ${OP} 0 w32tm
0 2 ${OP} 0 winnt
0 2 ${OP} 0 winnt32
0 2 ${OP} 0 wmic
0 2 ${OP} 0 xcopy
;--Variable--
0 0 ${VAR} 0 cmdextversion
0 0 ${VAR} 0 errorlevel
;------------
0 2 ${AREA} 0 nul
0 2 ${AREA} 0 end
;--Compare--
0 2 ${OP} 0 EQU
0 2 ${OP} 0 NEQ
0 2 ${OP} 0 LSS
0 2 ${OP} 0 LEQ
0 2 ${OP} 0 GTR
0 2 ${OP} 0 GEQ
;--Conditional--
0 2 ${IF} 0 goto
0 2 ${IF} 0 off
0 2 ${IF} 0 on
0 2 ${IF} 0 if
0 2 ${IF} 0 not
0 2 ${IF} 0 exist
0 2 ${IF} 0 defined
0 2 ${IF} 0 else
0 2 ${IF} 0 for
0 2 ${IF} 0 in
0 2 ${IF} 0 do
0 2 ${IF} 0 eol
0 2 ${IF} 0 skip
0 2 ${IF} 0 delims
0 2 ${IF} 0 tokens
0 2 ${IF} 0 usebackq



;----------------------------------------------;
; CodeFold ;
;----------------------------------------------;

;Flags (sum of the members)
; 1 case sensitive.
; 2 force get fold name for function list from left at the fold start ("Folds:" section only).
; 4 force get fold name for function list from right at the fold start, including fold start ("Folds:" section only).
; 8 fold start located at line start ("Folds:" section only).
; 16 fold start located at line end ("Folds:" section only).
; 32 fold end located at line start ("Folds:" section only).
; 64 fold end located at line end ("Folds:" section only).
; 128 don't catch fold end ("Folds:" section) or skip end ("Skips:" section).
; 256 additional to 128 flag - more priority is given to sibling level instead of parent level ("Folds:" section only).
; 512 comment fold - fold ignore any other folds and skips inside ("Folds:" section only).
; 1024 reserved.
; 2048 deny fold - founded fold will be ignored ("Folds:" section only).
; 4096 xml fold - "<tag" and "</tag>", "<single" and "/>", "<single" and ">" ("Folds:" section only).
; 8192 don't check delimiters from left of fold start ("Folds:" section only).
; 16384 don't check delimiters from right of fold start ("Folds:" section only).
; 32768 don't check delimiters from left of fold end ("Folds:" section only).
; 65536 don't check delimiters from right of fold end ("Folds:" section only).
; 131072 deny delimiters ("Folds:" section only).
; 262144 don't show fold in list ("Folds:" section only).


FoldPanel:
;=================================================================================================================================================================================================================================================================================================================================================================================================================================================================
;PanelFirstBkColor PanelSecondBkColor PanelNormalFoldColor PanelActiveFoldColor PanelNormalNodeOpenBkColor PanelNormalNodeCloseBkColor PanelActiveNodeOpenBkColor PanelActiveNodeCloseBkColor PanelNormalNodeOpenSignColor PanelNormalNodeCloseSignColor PanelActiveNodeOpenSignColor PanelActiveNodeCloseSignColor
;=================================================================================================================================================================================================================================================================================================================================================================================================================================================================
${CodeFold_PanelFirstBkColor} ${CodeFold_PanelSecondBkColor} ${CodeFold_PanelNormalFoldColor} ${CodeFold_PanelActiveFoldColor} ${CodeFold_PanelNormalNodeOpenBkColor} ${CodeFold_PanelNormalNodeCloseBkColor} ${CodeFold_PanelActiveNodeOpenBkColor} ${CodeFold_PanelActiveNodeCloseBkColor} ${CodeFold_PanelNormalNodeOpenSignColor} ${CodeFold_PanelNormalNodeCloseSignColor} ${CodeFold_PanelActiveNodeOpenSignColor} ${CodeFold_PanelActiveNodeCloseSignColor}


FoldList:
;================================================
;ListTextColor ListBkColor
;================================================
${CodeFold_ListTextColor} ${CodeFold_ListBkColor}


TagMark:
;============================================================================================================
;TagMarkFlags TagMarkFontStyle TagMarkTextColor TagMarkBkColor
;============================================================================================================
${CodeFold_TagMarkFlags} ${CodeFold_TagMarkFontStyle} ${CodeFold_TagMarkTextColor} ${CodeFold_TagMarkBkColor}


Skips:
;=============================
;Flags Skip Skip Escape
; start end char
;=============================
1 `"` `"` ""
1 `'` `'` ""
1 "::" "" ""
1 "rem" "" ""


Folds:
;=========================================================
;Flags Font Color Color Fold Fold Delimiters
; style text bkgrnd start end
;=========================================================
1 0 0 0 "(" ")" ""
;109=1+4+8+32+64
109 0 0 0 ":" "goto :eof" ""


;----------------------------------------------;
; AutoComplete ;
;----------------------------------------------;

Blocks:
;======================================================================
;Abbreviations and blocks
;
; $~abbr normal abbreviation.
; $=abbr exact abbreviation. May contain delimiters.
; $[] set caret to this position. Can be multiple (hot spots).
; $[text] select text. Can be multiple (hot spots).
; $$ symbol $.
; $\] escape symbol ]. Can be used in $[text] block: $[One [1$\] ].
; ${VAR} variable assigned from Coder::Settings.
; $; comment line.
;======================================================================
$~echo
echo "$[]"

$~for
for $[] in ($[]) do ($[])
Back to top
View user's profile Send private message
Drugmix



Joined: 08 Apr 2013
Posts: 367

PostPosted: Wed Feb 12, 2014 7:41 pm    Post subject: Reply with quote

Skif_off wrote:
Так вообще не работает.

Я просто забыл ?: в начале скобок поставить, поэтому ничего и не окрасилось, но правило сработало на самом деле.
Back to top
View user's profile Send private message
Skif_off



Joined: 20 Oct 2013
Posts: 202

PostPosted: Wed Feb 12, 2014 7:48 pm    Post subject: Reply with quote

koros
Не знаю, в чем может быть дело, скопировал все себе - нормально, ничего не слетает, все подсвечивается. Или дело в том, что у меня тестовая версия? Открыто несколько файлов + несохраненные, проверить с 4.8.7 пока не могу)

Кстати, правило
Code:
0   2   ${OP}   0   files=

не сработает из-за "=" в Delimiters.


Еще по поводу call:
call d:\work\test.bat "%var%"
Это не дело, наверное, все-таки разнесу.
Back to top
View user's profile Send private message
Skif_off



Joined: 20 Oct 2013
Posts: 202

PostPosted: Wed Feb 12, 2014 7:53 pm    Post subject: Reply with quote

Drugmix wrote:
Skif_off wrote:
Так вообще не работает.

Я просто забыл ?: в начале скобок поставить, поэтому ничего и не окрасилось, но правило сработало на самом деле.

Не понял, где поставить "?:"?
Back to top
View user's profile Send private message
Drugmix



Joined: 08 Apr 2013
Posts: 367

PostPosted: Wed Feb 12, 2014 8:08 pm    Post subject: Reply with quote

Code:
(?:\s*:|\s+)
Back to top
View user's profile Send private message
koros



Joined: 12 Apr 2008
Posts: 52

PostPosted: Wed Feb 12, 2014 8:13 pm    Post subject: Reply with quote

Skif_off wrote:
koros
Не знаю, в чем может быть дело, скопировал все себе - нормально, ничего не слетает, все подсвечивается. Или дело в том, что у меня тестовая версия? Открыто несколько файлов + несохраненные, проверить с 4.8.7 пока не могу)

Кстати, правило
Code:
0   2   ${OP}   0   files=

не сработает из-за "=" в Delimiters.


Еще по поводу call:
call d:\work\test.bat "%var%"
Это не дело, наверное, все-таки разнесу.


Ещё раз собрал перезагрузил AkelPad - вроде всё заработало как надо. Спасибо.
Вот что я подумал:
call test.bat onespace
call d:\work\test.bat "%var%"

test.bat и d:\work\test.bat - вообще не надо подсвечивать, как метки типа :label. Как это сделать?

А по поводу files= - я вообще эту строку уберу, т.к. папка files встречается гораздо чаще, чем команда files.

И ещё вопрос для знатоков: возможно ли в coder.coder задать подсветку так, чтобы при просмотре любого *.coder переменные типа ${COMM} подсвечивались тем цветом, который задан для этой переменной в текущей цветовой теме?
Back to top
View user's profile Send private message
Skif_off



Joined: 20 Oct 2013
Posts: 202

PostPosted: Wed Feb 12, 2014 8:31 pm    Post subject: Reply with quote

Drugmix
Спасибо, исправил.

koros wrote:
test.bat и d:\work\test.bat - вообще не надо подсвечивать, как метки типа :label. Как это сделать?

Я, вероятно, разделю правила для call и goto.

koros wrote:
И ещё вопрос для знатоков: возможно ли в coder.coder задать подсветку так, чтобы при просмотре любого *.coder переменные типа ${COMM} подсвечивались тем цветом, который задан для этой переменной в текущей цветовой теме?

Не знаток, но делал как-то: закомментировать в Quotes
Code:
5   0   ${VAR}   0   "${"   "}"   "$"   ""   ""

в Words добавить
>>>
Code:
0   0   #808080   0   "${STR}"
0   0   #008000   0   "${COMM}"
0   0   #800000   0   "${VAR}"
0   0   #CC3333   0   "${DEL1}"
0   0   0   0   "${DEL2}"
0   0   #3333CC   0   "${TYPE}"
0   0   #3333CC   0   "${OP}"
0   0   #3333CC   0   "${TAG}"
0   0   #339933   0   "${ATTR}"
0   0   #339933   0   "${IF}"
0   0   #FF8000   0   "${AREA}"
0   0   #FF8000   0   "${NUM}"

(для дефолтной темы)
Но в итоге просто держу файл color.coder с одной секцией Words со строками типа
Code:
0   0   #808080   0   STR

цвета и переменные из дефолтной темы + цвета из моей темы + цвета и переменные Infocatcher + основные цвета html/css (с кодом и отдельно с именем).


Еще по вашему bat.coder:
- не будут работать команды с пробелом (net ..., reg ...), т.к. пробел и табуляция есть в Delimiters, у себя делал в Quotes
Code:
32768   0   ${OP}   0   "reg"   " add"      ""   ""   ""

- правило
Code:
0   2   ${OP}   0   regsvr32.exe

тоже не сработает из-за точки в Delimiters. Где-то в теме обсуждалось, добавлял себе в QuotesRE
Code:
; внешние команды
0   "\b(\w+[\-\w]*\w*)\.(bat|cmd|com|exe)"   "\1=(0,${NUM},0) \2=(0,${NUM},0)"
Back to top
View user's profile Send private message
FeyFre



Joined: 07 Aug 2007
Posts: 2004
Location: Vinnitsa, Ukraine

PostPosted: Wed Feb 12, 2014 10:04 pm    Post subject: Reply with quote

Наверное не так поняли. В тесте "goto :wrongsyntax_no_colorisation_label" - ошибка синтаксиса, соответственно раскраска не должна распространяться. Меток начинающихся на : не существует(кроме псевдометки :EOF)
Back to top
View user's profile Send private message AIM Address Yahoo Messenger MSN Messenger
Display posts from previous:   
Post new topic   Reply to topic    AkelPad Forum Index -> Plugins All times are GMT
Goto page Previous  1, 2, 3 ... 35, 36, 37 ... 42, 43, 44  Next
Page 36 of 44

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


SourceForge.net Logo Powered by phpBB © 2001, 2005 phpBB Group