You need to modify lexilla's code, to get the () and [] code folding support for PHP:
geany-2.0/scintilla/lexilla/lexers/LexHTML.cxx
case eScriptPHP: if ( (state != SCE_HPHP_COMMENT) && (state != SCE_HPHP_COMMENTLINE) && (state != SCE_HJ_COMMENT) && (state != SCE_HJ_COMMENTLINE) && (state != SCE_HJ_COMMENTDOC) && (!isStringState(state)) ) { if (ch == '#') { Sci_Position j = i + 1; while ((j < lengthDoc) && IsASpaceOrTab(styler.SafeGetCharAt(j))) { j++; } if (styler.Match(j, "region") || styler.Match(j, "if")) { levelCurrent++; } else if (styler.Match(j, "end")) { levelCurrent--; } } // Modify here //else if ((ch == '{') || (ch == '}') || (foldComment && (ch == '/') && (chNext == '*'))) { //levelCurrent += (((ch == '{') || (ch == '/')) ? 1 : -1); //} else if ((ch == '{') || (ch == '}') || (ch == '[') || (ch == ']') || (ch == '(') || (ch == ')') || (foldComment && (ch == '/') && (chNext == '*'))) { levelCurrent += (((ch == '{') || (ch == '[') || (ch == '(') || (ch == '/')) ? 1 : -1); } } else if (((state == SCE_HPHP_COMMENT) || (state == SCE_HJ_COMMENT || state == SCE_HJ_COMMENTDOC)) && foldComment && (ch == '*') && (chNext == '/')) { levelCurrent--; } break;

So I think you should get a feedback to Scintilla project.


Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you are subscribed to this thread.Message ID: <geany/geany/issues/3561/2130729416@github.com>