BBCode plugin for Mantis BugTracker 2.x
Incorporates the following configurable features:
- Editor with toolbars and preview (using jQuery MarkItUp).
- BBCode processing.
- Syntax Highlighting (using prismjs).
- Mostly compatible with the Mantis Formatting plugin (this means they can both be enabled, if desired).
- NOTE: This plugin does NOT interact well with the Markdown Processing feature of the Mantis Formatting plugin. Disabling the functionality is advised.
NOTE: BBCodePlus 2.x is now the master for the BBCodePlus project. Please re-fork or (carefully) update your fork (branch structure on upstream and origin).
| Branch | Description |
|---|---|
| master | Support for MantisBT 2.x (current production version). |
| master-1.3.x | Support for MantisBT 1.3.x (legacy). |
If you would like to contribute to BBCode plus, please read this guide first.
- Corrected issue with clipboard js script not being referenced properly on some mantis installs.
- Added
noncerandom token and directives for included js scripts in order to hopefully address CSP restrictions. - Corrected issue with referencing issue images (removed volatile token, now using only file id and type).
- Fixed styling and scripting issues with issue image picker.
- Resized markItUp editor elements.
- NEW: Added image picker modal for picking images that have been uploaded to issue.
- Now including clipboard.min.js locally, to avoid cdn interaction.
- Corrected email parsing behavior when Email Processing is turned on. MantisBT does not support HTML email natively.
- Added the following characters to work with the quotee's name in the named quote function (basically to support email-adresses here): . @ - @FSD-Christian-ISS
- Fixed display of quotes when quotee's name contains unicode characters, commas or single quotes @FSD-Christian-ISS
- Fixed issue with additional protocols in link insertion.
- Fixed rendering issue of code blocks when language parameter was left empty
- Fixed rendering issue of quote blocks when quotee parameter contained whitespaces
- Fixed display issue of loose links (thanks to @FSD-Christian-ISS )
- Removed leftover debug call that was breaking display.
- Corrected outstanding bug with resolved bug links.
- Corrected bug in handling of mention links.
- Corrected use of
$thisinside code replace callback (causes issues with older versions of PHP).
- Corrected issues with bug links and mentions.
- Dropped support for CVS links.
- Added better code block support for HTML syntax (
<br/>tags were getting dropped). - Removed duplication of MantisCoreFormatting features. They will be used only when the plugin is enabled.
- Cleaned up issues with undefined variable notices from old code.
- Added MarkItUp toolbar support for custom textarea fields.
- Fixed new parser incompatibility with PHP 5.5.9+.
- Updated README for all languages supported by code highlighter.
- Brand new BBCode/HTML parsers, from Genert/bbcode.
- Updated Prism code highlighter, now with Copy to Clipboard functionality.
- Addresses multiple outstanding issues.
- Added check for Mantis Formatting Markdown feature (warns if it is ON, as it will cause issues with BBCodePlus).
- Cleaned up lots of old code, which will make it easier to maintain.
- Updated MarkItUp javascript dependency.
[img][/img] - Images.
[url][/url] - Links.
[email][/email] - Email addresses.
[color=red][/color] - Colored text.
[highlight=yellow][/highlight] - Highlighted text.
[size][/size] - Font size.
[list][/list] - Unordered lists.
[list=1][/list] - Numbered lists (number is starting number).
[list=a][/list] - Alpha lists (letter is starting letter).
[*] - List items.
[b][/b] - Bold.
[u][/u] - underline
[i][/i] - Italic.
[s][/s] - Strikethrough.
[left][/left] - Left align.
[center][/center] - Center.
[right][/right] - Right align.
[justify][/justify] - Justify.
[hr] - Horizontal rule.
[sub][/sub] - Subscript.
[sup][/sup] - Superscript.
[table][/table] - Table.
[table=1][/table] - Table with border of specified width.
[thead][/thead] - Table head block.
[tbody][/tbody] - Table body block.
[tr][/tr] - Table row.
[th][/th] - Table header column.
[td][/td] - Table column.
[code][/code] - Code block.
[code=sql][/code] - Code block with language definition.
[code start=3][/code] - Code block with line numbers starting at number.
[code=sql start=3][/code] - Code block with language definition and line numbers starting at number.
[quote][/quote] - Quote by *someone* (no name).
[quote=name][/quote] - Quote by *name*.
The implementation of prism.js includes support for languages in 2 modes:
- default (supported on plugin install).
- Add support for extra languages (through the plugin's configuration page).
| Keyword | Description |
|---|---|
| aspnet | ASP.NET |
| bash | Bash + Shell |
| basic | BASIC |
| batch | Batch |
| clike | C-like |
| cpp | C++ |
| csharp | C# |
| csp | CoffeeScript |
| css | CSS |
| c | C |
| django | Django/Jinja2 |
| docker | Docker |
| hpkp | HTTP Public-Key-Pins |
| hsts | HTTP Strict-Transport-Security |
| http | HTTP |
| ini | Ini |
| javadoclike | JavaDoc-like |
| javascript | JavaScript |
| java | Java |
| js-extras | JS Extras |
| json5 | JSON5 |
| jsonp | JSONP |
| json | JSON |
| markup-templating | Markup templating |
| markup | Markup + HTML + XML + SVG + MathML |
| nginx | nginx |
| pascal | Pascal + Object Pascal |
| perl | Perl |
| php-extras | PHP Extras |
| phpdoc | PHPDoc |
| php | PHP |
| plsql | PL/SQL |
| powershell | PowerShell |
| python | Python |
| regex | Regex |
| ruby | Ruby |
| smarty | Smarty |
| sql | SQL |
| vbnet | VB.NET |
| vim | vim |
| visual-basic | Visual Basic |
| wiki | Wiki markup |
| xquery | XQuery |
| yaml | YAML |
| Keyword | Description |
|---|---|
| abap | ABAP |
| actionscript | ActionScript |
| apl | APL |
| applescript | AppleScript |
| autohotkey | AutoHotKey |
| bison | Bison |
| brainfuck | Brainfuck |
| coffeescript | CoffeeScript |
| css-extras | CSS Extras |
| dart | Dart |
| diff | Diff |
| d | D |
| eiffel | Eiffel |
| elixir | Elixir |
| erlang | Erlang |
| fortran | Fortran |
| fsharp | F# |
| gherkin | Gherkin |
| git | Git |
| glsl | GLSL |
| go | Go |
| groovy | Groovy |
| haskell | Haskell |
| inform7 | Inform 7 |
| jsx | React JSX |
| julia | Julia |
| j | J |
| keyman | Keyman |
| latex | LaTex |
| less | Less |
| lolcode | LOLCODE |
| makefile | Makefile |
| markdown | Markdown |
| matlab | MATLAB |
| mel | MEL |
| mizar | Mizar |
| monkey | Monkey |
| nasm | NASM |
| nim | Nim |
| nsis | NSIS |
| objectivec | Objective-C |
| ocaml | OCaml |
| processing | Processing |
| prolog | Prolog |
| pure | Pure |
| qore | Qore |
| q | Q |
| regex | Regex |
| rest | reST |
| rip | Rip |
| rust | Rust |
| r | R |
| sass | Sass (Sass) |
| sas | SAS |
| scala | Scala |
| scheme | Scheme |
| scss | Sass (Scss) |
| smalltalk | Smalltalk |
| swift | Swift |
| tcl | Tcl |
| twig | Twig |
| typescript | TypeScript |
| verilog | Verilog |
| vhdl | VHDL |


