I thank the lexer.bash.styling.inside.string information. How to set it ? If Geany color application followed a simple rule, it would NOT depend on language neither of this config. The algorithm now paits string after the identifier_1 color with is for dollar variables. If just the identifier_1 color were applyed ALWAYS to all dollar variables wherever they are, and AFTER strings where colored, the result would be correct, becase identifier_1 (dollar variables) are more important to have a different color than a string.
In php vim does equal geany, treating all as **keyword** color, **not** uses identifier_1 config. But in shell, it is different. The problem in shell is that before a variable is "dollared" (identifier_1) it was a simple identifier, without dollar. And identifier color is default, but you can set identifier_1 to be magenta in a green string as I do. # Shell, bash, sh syntax: variable="value" #here has no dollar, geany reads variable as a simple **identifier** NOT **identifier_1** echo $variable #after the value, it is **identifier_1**, magenta in my case. echo "a string with $variable" # Geany do not priorize **identifier_1** that was correct in the 2nd line above, painting green (string): ![ashel](https://github.com/geany/geany/assets/34313003/2918b314-5e7b-4f65-b964-02e8cb3f631b) ![aphp](https://github.com/geany/geany/assets/34313003/3b0b5aa6-f020-4cba-9ad6-ad0bfe427296) See the sh correct syntax (identifier_1 priority) done by vim: ![ashell2](https://github.com/geany/geany/assets/34313003/b95d4565-2642-4995-a6fb-a95b4c5d3a37) -- Reply to this email directly or view it on GitHub: https://github.com/geany/geany/issues/3860#issuecomment-2081411458 You are receiving this because you are subscribed to this thread. Message ID: <geany/geany/issues/3860/2081411...@github.com>