Подсветка синтаксиса нано для C# и / или ASP.Net
Кто-нибудь получил (или может указать в направлении) файл нанорка, содержащий подсветку синтаксиса для C# и / или ASP.Net?
2 ответа
Я не знаю о существующей подсветке C# в Nano, но вы могли бы написать свою собственную. Синтаксис для подсветки синтаксиса довольно прост. Вот пример для Java (который будет очень похож на синтаксис C# - в основном просто разные ключевые слова):
## Here is an example for Java.
##
syntax "java" "\.java$"
color green "\<(boolean|byte|char|double|float|int|long|new|short|this|transient|void)\>"
color red "\<(break|case|catch|continue|default|do|else|finally|for|if|return|switch|throw|try|while)\>"
color cyan "\<(abstract|class|extends|final|implements|import|instanceof|interface|native|package|private|protected|public|static|strictfp|super|synchronized|throws|volatile)\>"
color red ""[^"]*""
color yellow "\<(true|false|null)\>"
color blue "//.*"
color blue start="/\*" end="\*/"
color brightblue start="/\*\*" end="\*/"
color ,green "[[:space:]]+$"
Это сидит в /usr/share/nano/java.nanorc
, Если вы напишите свой собственный, вам нужно будет ссылку на него с /etc/nanorc
, Может быть и локальная версия для обоих пользователей, но я ее не знаю.
Редактировать: для ASP.NET вы можете просто клонировать HTML и немного изменить синтаксис для обработки тегов ASP.NET. Это не будет идеально (это не справится <script runat="server">...</script>
содержимое например) но это должно быть лучше, чем тыкать в глаз острой палкой.
Копирую мой ответ.
Используя пример Java с http://wiki.linuxhelp.net/index.php/Nano_Syntax_Highlighting, вы можете попробовать добавить что-то вроде следующего в ваш ~/.nanorc
:
syntax "C# source" "\.cs$"
color green "\<(bool|byte|sbyte|char|decimal|double|float|int|uint|long|ulong|new|object|short|ushort|string|base|this|void)\>"
color red "\<(as|break|case|catch|checked|continue|default|do|else|finally|fixed|for|foreach|goto|if|is|lock|return|switch|throw|try|unchecked|while)\>"
color cyan "\<(abstract|class|const|delegate|enum|event|explicit|extern|implicit|in|internal|interface|namespace|operator|out|override|params|private|protected|public|readonly|ref|sealed|sizeof|static|struct|typeof|using|virtual|volatile)\>"
color red ""[^\"]*""
color yellow "\<(true|false|null)\>"
color blue "//.*"
color blue start="/\*" end="\*/"
color brightblue start="/\*\*" end="\*/"
color brightgreen,green " +$"
Это работает для меня:
syntax "cs" "\.cs$"
magic "Cs "
comment "//"
color green "\<(bool|byte|sbyte|char|decimal|double|float|int|uint|long|ulong|new|object|short|ushort|string|base|this|void)\>"
color red "\<(as|break|case|catch|checked|continue|default|do|else|finally|fixed|for|foreach|goto|if|is|lock|return|switch|throw|try|unchecked|while)\>"
color cyan "\<(abstract|class|const|delegate|enum|event|explicit|extern|implicit|in|internal|interface|namespace|operator|out|override|params|private|protected|public|readonly|ref|sealed|size$
color red ""[^\"]*""
color yellow "\<(true|false|null)\>"
color blue "//.*"
color blue start="/\*" end="\*/"
color brightblue start="/\*\*" end="\*/"
color brightgreen,green " +$"