Skip to content

Commit

Permalink
добавлена подсветка языков abnf, bnf, ebnf, markdown (#1075)
Browse files Browse the repository at this point in the history
И добавлены алиасы:

* asm -> ASM-X86
* bas -> BASIC
* md  -> Markdown
* pas -> Pascal
* py  -> Python
* rb  -> Ruby
* rs  -> Rust
* ts  -> TypeScript

Переименования:

* ARMASM  -> ASM-ARM
* AVRASM  -> ASM-AVR
* MIPSASM -> ASM-MIPS
* X86ASM  -> ASM-X86
  • Loading branch information
data-man authored Sep 1, 2024
1 parent a546c84 commit fb800fd
Show file tree
Hide file tree
Showing 6 changed files with 162 additions and 97 deletions.
2 changes: 1 addition & 1 deletion README.highlight.js.txt
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
Подсветка кода от https://highlightjs.org/.

Версия 11.9.0
Версия 11.10.0

Сборка через build-hljs
4 changes: 2 additions & 2 deletions build-hljs
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,8 @@ fi
cwd=`pwd`

cd "$highlight_js_path" && node "tools/build.js" \
armasm avrasm awk basic bash brainfuck clojure cmake coffeescript c cpp csharp css d delphi diff erlang \
fortran fsharp go haskell ini java javascript json julia lisp llvm lua makefile mipsasm nim nix ocaml \
abnf armasm avrasm awk basic bash bnf brainfuck clojure cmake coffeescript c cpp csharp css d delphi diff ebnf erlang \
fortran fsharp go haskell ini java javascript json julia lisp llvm lua makefile markdown mipsasm nim nix ocaml \
objectivec perl php python ruby rust sql scala scheme smalltalk tcl typescript latex vala vim wasm x86asm xml yaml \

cp "$highlight_js_path/build/highlight.min.js" $cwd/src/main/webapp/js/highlight.min.js
Expand Down
21 changes: 17 additions & 4 deletions src/main/java/ru/org/linux/util/bbcode/tags/CodeTag.java
Original file line number Diff line number Diff line change
Expand Up @@ -62,11 +62,17 @@
public class CodeTag extends Tag {
public static final ImmutableMap<String, String> langHash =
ImmutableMap.<String, String>builder().
put("armasm", "language-armasm")
.put("avrasm", "language-avrasm")
put("abnf", "language-abnf")
.put("asm", "language-x86asm")
.put("asm-arm", "language-armasm")
.put("asm-avr", "language-avrasm")
.put("asm-mips", "language-mipsasm")
.put("asm-x86", "language-x86asm")
.put("awk", "language-awk")
.put("bas", "language-basic")
.put("bash", "language-bash")
.put("basic", "language-basic")
.put("bnf", "language-bnf")
.put("brainfuck", "language-brainfuck")
.put("c", "language-c")
.put("c#", "language-csharp")
Expand All @@ -82,6 +88,7 @@ public class CodeTag extends Tag {
.put("d", "language-d")
.put("delphi", "language-delphi")
.put("diff", "language-diff")
.put("ebnf", "language-ebnf")
.put("erlang", "language-erlang")
.put("f#", "language-fsharp")
.put("fs", "language-fsharp")
Expand All @@ -92,25 +99,31 @@ public class CodeTag extends Tag {
.put("ini", "language-ini")
.put("java", "language-java")
.put("javascript", "language-javascript")
.put("jl", "language-julia")
.put("js", "language-javascript")
.put("json", "language-json")
.put("julia", "language-julia")
.put("lisp", "language-lisp")
.put("llvm", "language-llvm")
.put("lua", "language-lua")
.put("md", "language-markdown")
.put("makefile", "language-makefile")
.put("mipsasm", "language-mipsasm")
.put("markdown", "language-markdown")
.put("nim", "language-nim")
.put("nix", "language-nix")
.put("ocaml", "language-ocaml")
.put("objc", "language-objectivec")
.put("objectivec", "language-objectivec")
.put("pas", "language-delphi")
.put("pascal", "language-delphi")
.put("patch", "language-diff")
.put("perl", "language-perl")
.put("php", "language-php")
.put("plain", "no-highlight")
.put("py", "language-python")
.put("python", "language-python")
.put("rb", "language-ruby")
.put("rs", "language-rust")
.put("ruby", "language-ruby")
.put("rust", "language-rust")
.put("scala", "language-scala")
Expand All @@ -120,11 +133,11 @@ public class CodeTag extends Tag {
.put("sql", "language-sql")
.put("tex", "language-latex")
.put("tcl", "language-tcl")
.put("ts", "language-typescript")
.put("typescript", "language-typescript")
.put("vala", "language-vala")
.put("vim", "language-vim")
.put("wasm", "language-wasm")
.put("x86asm", "language-x86asm")
.put("xml", "language-xml")
.put("yaml", "language-yaml")
.build();
Expand Down
28 changes: 16 additions & 12 deletions src/main/webapp/help/lorcode.md
Original file line number Diff line number Diff line change
Expand Up @@ -72,11 +72,15 @@
Блоки кода выделяются тегом `[code]`. Язык программирования можно указать в параметре, например `[code=java]`.
Поддерживаются следующие языки:

* ARMASM
* AVRASM
* ABNF
* ASM-ARM
* ASM-AVR
* ASM-MIPS
* ASM-X86 (`asm`)
* AWK
* Bash, Shell
* Basic
* Basic (`bas`)
* BNF
* Brainfuck
* C
* C# (`c#`, `cs`)
Expand All @@ -87,6 +91,7 @@
* CSS
* D
* Diff (`patch`, `diff`)
* EBNF
* Erlang
* F# (`f#`, `fs`)
* Fortran
Expand All @@ -97,33 +102,32 @@
* Java
* JavaScript (`js`, `javascript`)
* JSON
* Julia
* Julia (`jl`)
* Lisp
* LLVM
* Lua
* Makefile
* MIPSASM
* Markdown (`md`)
* Nim
* Nix
* Ocaml
* OCaml
* Objective C (`objc`, `objectivec`)
* Pascal, Delphi
* Pascal, Delphi (`pas`)
* Perl
* PHP
* Python
* Ruby
* Rust
* Python (`py`)
* Ruby (`rb`)
* Rust (`rs`)
* Scala
* Scheme
* Smalltalk
* SQL
* TCL
* TypeScript
* TypeScript (`ts`)
* TeX
* Vala
* Vim
* WASM
* X86ASM
* YAML

## Спойлер (cut) в ленте
Expand Down
28 changes: 16 additions & 12 deletions src/main/webapp/help/markdown.md
Original file line number Diff line number Diff line change
Expand Up @@ -189,11 +189,15 @@ git pull && sbt compile

Поддерживаются следующие языки:

* ARMASM
* AVRASM
* ABNF
* ASM-ARM
* ASM-AVR
* ASM-MIPS
* ASM-X86 (`asm`)
* AWK
* Bash, Shell
* Basic
* Basic (`bas`)
* BNF
* Brainfuck
* C
* C# (`c#`, `cs`)
Expand All @@ -204,6 +208,7 @@ git pull && sbt compile
* CSS
* D
* Diff (`patch`, `diff`)
* EBNF
* Erlang
* F# (`f#`, `fs`)
* Fortran
Expand All @@ -214,33 +219,32 @@ git pull && sbt compile
* Java
* JavaScript (`js`, `javascript`)
* JSON
* Julia
* Julia (`jl`)
* Lisp
* LLVM
* Lua
* Makefile
* MIPSASM
* Markdown (`md`)
* Nim
* Nix
* Ocaml
* OCaml
* Objective C (`objc`, `objectivec`)
* Pascal, Delphi
* Pascal, Delphi (`pas`)
* Perl
* PHP
* Python
* Ruby
* Rust
* Python (`py`)
* Ruby (`rb`)
* Rust (`rs`)
* Scala
* Scheme
* Smalltalk
* SQL
* TCL
* TypeScript
* TypeScript (`ts`)
* TeX
* Vala
* Vim
* WASM
* X86ASM
* YAML

## Спойлер (cut) в ленте
Expand Down
Loading

0 comments on commit fb800fd

Please sign in to comment.