diff --git a/docs/_data/sidebars/pmd_sidebar.yml b/docs/_data/sidebars/pmd_sidebar.yml index 6f3a7abe63..aaab0f02f1 100644 --- a/docs/_data/sidebars/pmd_sidebar.yml +++ b/docs/_data/sidebars/pmd_sidebar.yml @@ -409,6 +409,32 @@ entries: - title: Apex url: /pmd_languages_apex.html output: web, pdf + - title: C/C++ + url: /pmd_languages_cpp.html + output: web, pdf + - title: C# + url: /pmd_languages_cs.html + output: web, pdf + - title: Coco + url: /pmd_languages_coco.html + output: web, pdf + - title: Dart + url: /pmd_languages_dart.html + output: web, pdf + - title: Fortran + url: /pmd_languages_fortran.html + output: web, pdf + - title: Gherkin + url: /pmd_languages_gherkin.html + output: web, pdf + - title: Go + url: /pmd_languages_go.html + output: web, pdf + - title: Groovy + url: /pmd_languages_groovy.html + - title: HTML + url: /pmd_languages_html.html + output: web, pdf - title: Java url: /pmd_languages_java.html output: web, pdf @@ -418,30 +444,57 @@ entries: - title: JSP url: /pmd_languages_jsp.html output: web, pdf + - title: Julia + url: /pmd_languages_julia.html + output: web, pdf - title: Kotlin url: /pmd_languages_kotlin.html output: web, pdf + - title: Lua + url: /pmd_languages_lua.html + output: web, pdf + - title: Matlab + url: /pmd_languages_matlab.html + output: web, pdf + - title: Modelica + url: /pmd_languages_modelica.html + output: web, pdf + - title: Objective-C + url: /pmd_languages_objectivec.html + output: web, pdf + - title: Perl + url: /pmd_languages_perl.html + output: web, pdf + - title: PHP + url: /pmd_languages_php.html + output: web, pdf - title: PLSQL url: /pmd_languages_plsql.html output: web, pdf + - title: Python + url: /pmd_languages_python.html + output: web, pdf + - title: Ruby + url: /pmd_languages_ruby.html + output: web, pdf + - title: Scala + url: /pmd_languages_scala.html + output: web, pdf + - title: Swift + url: /pmd_languages_swift.html + output: web, pdf + - title: TSql + url: /pmd_languages_tsql.html + output: web, pdf - title: Visualforce url: /pmd_languages_visualforce.html output: web, pdf + - title: Velocity Template Language (VTL) + url: /pmd_languages_vm.html + output: web, pdf - title: XML and XML dialects url: /pmd_languages_xml.html output: web, pdf - - title: HTML - url: /pmd_languages_html.html - output: web, pdf - - title: Gherkin - url: /pmd_languages_gherkin.html - output: web, pdf - - title: Julia - url: /pmd_languages_julia.html - output: web, pdf - - title: Coco - url: /pmd_languages_coco.html - output: web, pdf - title: Developer Documentation output: web, pdf folderitems: diff --git a/docs/_includes/language_info.html b/docs/_includes/language_info.html index b36db72904..ac7fa20ff2 100644 --- a/docs/_includes/language_info.html +++ b/docs/_includes/language_info.html @@ -1,9 +1,9 @@ -
- Name: {{include.name}} +
+ Language Info for {{include.name}}
  • Implementation: {% jdoc include.implementation %}
  • -
  • id: {{include.id}}
  • +
  • Id: {{include.id}}
  • PMD: {% if include.supports_pmd %}✔️{% else %}❌{% endif %}
  • CPD: {% if include.supports_cpd %}✔️{% else %}❌{% endif %}
diff --git a/docs/_plugins/jdoc_namespace_tag.rb b/docs/_plugins/jdoc_namespace_tag.rb index 660de18783..88a85e7bbb 100644 --- a/docs/_plugins/jdoc_namespace_tag.rb +++ b/docs/_plugins/jdoc_namespace_tag.rb @@ -99,10 +99,11 @@ class JDocNamespaceDeclaration < Liquid::Tag private JDOC_NAMESPACE_MAP = "jdoc_nspaces" - RESERVED_NSPACES = ['ant', 'apex', 'cli', 'core', 'cpp', 'cs', 'dart', 'dist', 'doc', 'fortran', 'go', 'groovy', 'java', - 'javascript', 'jsp', + RESERVED_NSPACES = ['ant', 'apex', 'cli', 'coco', 'core', 'cpp', 'cs', 'dart', 'dist', 'doc', + 'fortran', 'gherkin', 'go', 'groovy', 'html', 'java', + 'javascript', 'jsp', 'julia', 'kotlin', 'lang-test', 'lua', 'matlab', 'objectivec', 'perl', 'php', 'plsql', 'python', 'ruby', 'scala', 'swift', - 'test', 'test-schema', 'ui', + 'test', 'test-schema', 'tsql', 'ui', 'modelica', 'visualforce', 'vm', 'xml'].flat_map {|m| [m, "pmd-" + m]} def self.make_base_namespaces diff --git a/docs/css/customstyles.css b/docs/css/customstyles.css index 3324e4720f..98b6bee046 100644 --- a/docs/css/customstyles.css +++ b/docs/css/customstyles.css @@ -1008,8 +1008,11 @@ span.soft { } @media (min-height: 600px) and (min-width: 990px) { + /* sticky sidebar for big screens */ #mysidebar { position: fixed !important; + overflow: scroll; + height: 80%; } } @@ -1268,3 +1271,7 @@ h4.panel-title { a.edit-header { font-size: 15px; } + +.language-info { + margin: 2em; +} diff --git a/docs/pages/pmd/languages/apex.md b/docs/pages/pmd/languages/apex.md index cf93b81a65..dc2478d59c 100644 --- a/docs/pages/pmd/languages/apex.md +++ b/docs/pages/pmd/languages/apex.md @@ -1,13 +1,13 @@ --- title: Apex support permalink: pmd_languages_apex.html -author: Clément Fournier last_updated: September 2023 (7.0.0) +author: Clément Fournier tags: [languages] summary: "Apex-specific features and guidance" --- -{% include language_info.html name='Apex' id='apex' implementation='apex::lang.apex.ApexLanguageModule' supports_pmd='✔️' supports_cpd='✔️' %} +{% include language_info.html name='Apex' id='apex' implementation='apex::lang.apex.ApexLanguageModule' supports_pmd=true supports_cpd=true %} ## Metrics framework diff --git a/docs/pages/pmd/languages/coco.md b/docs/pages/pmd/languages/coco.md index 44a6b31939..c3d24166ca 100644 --- a/docs/pages/pmd/languages/coco.md +++ b/docs/pages/pmd/languages/coco.md @@ -1,8 +1,12 @@ --- title: Coco permalink: pmd_languages_coco.html +last_updated: September 2023 (7.0.0) +tags: [languages] --- +{% include language_info.html name='Coco' id='coco' implementation='coco::lang.coco.CocoLanguageModule' supports_cpd=true %} + Coco is a modern programming language designed specifically for building event-driven software. It is part of the Coco Platform from . diff --git a/docs/pages/pmd/languages/cpp.md b/docs/pages/pmd/languages/cpp.md new file mode 100644 index 0000000000..ebd2f43fe1 --- /dev/null +++ b/docs/pages/pmd/languages/cpp.md @@ -0,0 +1,8 @@ +--- +title: C/C++ +permalink: pmd_languages_cpp.html +last_updated: September 2023 (7.0.0) +tags: [languages] +--- + +{% include language_info.html name='C++' id='cpp' implementation='cpp::lang.cpp.CppLanguageModule' supports_cpd=true %} diff --git a/docs/pages/pmd/languages/cs.md b/docs/pages/pmd/languages/cs.md new file mode 100644 index 0000000000..8d9d6cd7ba --- /dev/null +++ b/docs/pages/pmd/languages/cs.md @@ -0,0 +1,8 @@ +--- +title: C# +permalink: pmd_languages_cs.html +last_updated: September 2023 (7.0.0) +tags: [languages] +--- + +{% include language_info.html name='C#' id='cs' implementation='cs::lang.cs.CsLanguageModule' supports_cpd=true %} diff --git a/docs/pages/pmd/languages/dart.md b/docs/pages/pmd/languages/dart.md new file mode 100644 index 0000000000..14d2b80142 --- /dev/null +++ b/docs/pages/pmd/languages/dart.md @@ -0,0 +1,8 @@ +--- +title: Dart +permalink: pmd_languages_dart.html +last_updated: September 2023 (7.0.0) +tags: [languages] +--- + +{% include language_info.html name='Dart' id='dart' implementation='dart::lang.dart.DartLanguageModule' supports_cpd=true %} diff --git a/docs/pages/pmd/languages/fortran.md b/docs/pages/pmd/languages/fortran.md new file mode 100644 index 0000000000..b964cd9aba --- /dev/null +++ b/docs/pages/pmd/languages/fortran.md @@ -0,0 +1,8 @@ +--- +title: Fortran +permalink: pmd_languages_fortran.html +last_updated: September 2023 (7.0.0) +tags: [languages] +--- + +{% include language_info.html name='Fortran' id='fortran' implementation='fortran::lang.fortran.FortranLanguageModule' supports_cpd=true %} diff --git a/docs/pages/pmd/languages/gherkin.md b/docs/pages/pmd/languages/gherkin.md index 123bae7d49..f7cf900635 100644 --- a/docs/pages/pmd/languages/gherkin.md +++ b/docs/pages/pmd/languages/gherkin.md @@ -1,8 +1,12 @@ --- title: Gherkin permalink: pmd_languages_gherkin.html +last_updated: September 2023 (7.0.0) +tags: [languages] --- +{% include language_info.html name='Gherkin' id='gherkin' implementation='gherkin::lang.gherkin.GherkinLanguageModule' supports_cpd=true %} + The [Gherkin](https://cucumber.io/docs/gherkin/) language is used to define test cases for the [Cucumber](https://cucumber.io/) testing tool for behavior-driven development. The Gherkin syntax is designed to be non-technical, making it human-readable for a wide audience. diff --git a/docs/pages/pmd/languages/go.md b/docs/pages/pmd/languages/go.md new file mode 100644 index 0000000000..0a7a9ded08 --- /dev/null +++ b/docs/pages/pmd/languages/go.md @@ -0,0 +1,8 @@ +--- +title: Go +permalink: pmd_languages_go.html +last_updated: September 2023 (7.0.0) +tags: [languages] +--- + +{% include language_info.html name='Go' id='go' implementation='go::lang.go.GoLanguageModule' supports_cpd=true %} diff --git a/docs/pages/pmd/languages/groovy.md b/docs/pages/pmd/languages/groovy.md new file mode 100644 index 0000000000..30afba2426 --- /dev/null +++ b/docs/pages/pmd/languages/groovy.md @@ -0,0 +1,8 @@ +--- +title: Groovy +permalink: pmd_languages_groovy.html +last_updated: September 2023 (7.0.0) +tags: [languages] +--- + +{% include language_info.html name='Groovy' id='groovy' implementation='groovy::lang.groovy.GroovyLanguageModule' supports_cpd=true %} diff --git a/docs/pages/pmd/languages/html.md b/docs/pages/pmd/languages/html.md index 9c905571e1..6766276af8 100644 --- a/docs/pages/pmd/languages/html.md +++ b/docs/pages/pmd/languages/html.md @@ -1,9 +1,12 @@ --- title: Processing HTML files permalink: pmd_languages_html.html -last_updated: April 2022 (6.45.0) +last_updated: September 2023 (7.0.0) +tags: [languages] --- +{% include language_info.html name='HTML' id='html' implementation='html::lang.html.HtmlLanguageModule' supports_pmd=true supports_cpd=true %} + ## The HTML language module **Since:** 6.45.0 @@ -14,11 +17,9 @@ last_updated: April 2022 (6.45.0) The HTML language module uses [jsoup](https://jsoup.org/) for parsing. -XPath 2.0 rules are supported, but the DOM is not always a typical XML/XPath DOM. +XPath rules are supported, but the DOM is not always a typical XML/XPath DOM. In the Designer, text nodes appear as nodes with name "#text", but they can be selected as usual using `text()`. -XML Namespaces are not supported. The local name of attributes include the prefix, +XML Namespaces are not supported. The local name of attributes includes the prefix, so that you have to select attributes by e.g. `//*[@*[local-name() = 'if:true']]`. - -Only XPath 1.0 rules are not supported. diff --git a/docs/pages/pmd/languages/java.md b/docs/pages/pmd/languages/java.md index e9aaaea0a0..137e930a75 100644 --- a/docs/pages/pmd/languages/java.md +++ b/docs/pages/pmd/languages/java.md @@ -2,12 +2,12 @@ title: Java support permalink: pmd_languages_java.html author: Clément Fournier -last_updated: March 2021 (7.0.0) +last_updated: September 2023 (7.0.0) tags: [languages] summary: "Java-specific features and guidance" --- -{% include language_info.html name='Java' id='java' implementation='java::lang.java.JavaLanguageModule' supports_pmd='✔️' supports_cpd='✔️' %} +{% include language_info.html name='Java' id='java' implementation='java::lang.java.JavaLanguageModule' supports_pmd=true supports_cpd=true %} {% include warning.html content="WIP, todo for pmd 7" %} diff --git a/docs/pages/pmd/languages/js_ts.md b/docs/pages/pmd/languages/js_ts.md index 7633105a2d..daefd54b76 100644 --- a/docs/pages/pmd/languages/js_ts.md +++ b/docs/pages/pmd/languages/js_ts.md @@ -1,10 +1,15 @@ --- title: JavaScript and TypeScript permalink: pmd_languages_js_ts.html +last_updated: September 2023 (7.0.0) tags: [languages] summary: "JavaScript and TypeScript infos" --- +{% include language_info.html name='JavaScript' id='ecmascript' implementation='javascript::lang.ecmascript.EcmascriptLanguageModule' supports_pmd=true supports_cpd=true %} +{% include language_info.html name='TypeScript' id='ts' implementation='javascript::lang.typescript.TsLanguageModule' supports_cpd=true %} + + **JavaScript** support is using [Rhino](https://github.com/mozilla/rhino) for parsing and supports CPD as well as PMD with rules. diff --git a/docs/pages/pmd/languages/jsp.md b/docs/pages/pmd/languages/jsp.md index 31b4995e54..3f6809438e 100644 --- a/docs/pages/pmd/languages/jsp.md +++ b/docs/pages/pmd/languages/jsp.md @@ -1,11 +1,14 @@ --- title: JSP Support permalink: pmd_languages_jsp.html -author: Pieter Vanraemdonck +last_updated: September 2023 (7.0.0) tags: [languages] +author: Pieter Vanraemdonck summary: "JSP-specific features and guidance" --- +{% include language_info.html name='Java Server Pages' id='jsp' implementation='jsp::lang.jsp.JspLanguageModule' supports_pmd=true supports_cpd=true %} + ## What is currently supported and what is not In short, JSP files that are XHTML-compliant, are supported. @@ -38,16 +41,3 @@ The XHTML support means that: further broken down. If you want to create rules that check the code inside EL expressions or JSP scriptlets (a.o.), you currently would have to do "manual" string manipulation (e.g. using regular expressions). - -## How to use it - -Using the command-line interface, two new options can be used in the arguments string: - -* "-jsp" : this triggers checking JSP files (they are not checked by default) -* "-nojava" : this tells PMD not to check java source files (they are checked by default) - -Using the Ant task, you decide if PMD must check JSP files by choosing -what files are given to the PMD task. If you use a fileset that -contains only ".java" files, JSP files obviously will not be checked. - -If you want to call the PMD API for checking JSP files, you should investigate the javadoc of PMD. diff --git a/docs/pages/pmd/languages/julia.md b/docs/pages/pmd/languages/julia.md index de36f3e9ea..a064ed1eb8 100644 --- a/docs/pages/pmd/languages/julia.md +++ b/docs/pages/pmd/languages/julia.md @@ -1,9 +1,13 @@ --- title: Julia permalink: pmd_languages_julia.html +last_updated: September 2023 (7.0.0) +tags: [languages] --- -The [Julia](https://julialang.org/) is dynamically typed, like a scripting language, +{% include language_info.html name='Julia' id='julia' implementation='julia::lang.julia.JuliaLanguageModule' supports_cpd=true %} + +The [Julia](https://julialang.org/) language is dynamically typed, like a scripting language, and has good support for interactive use. Julia was designed from the beginning for high performance. Julia programs compile to efficient native code for multiple platforms via LLVM. diff --git a/docs/pages/pmd/languages/kotlin.md b/docs/pages/pmd/languages/kotlin.md index ad9297a248..6e2735fb07 100644 --- a/docs/pages/pmd/languages/kotlin.md +++ b/docs/pages/pmd/languages/kotlin.md @@ -1,10 +1,13 @@ --- title: Kotlin Support permalink: pmd_languages_kotlin.html +last_updated: September 2023 (7.0.0) tags: [languages] summary: "Kotlin-specific features and guidance" --- +{% include language_info.html name='Kotlin' id='kotlin' implementation='kotlin::lang.kotlin.JspLanguageModule' supports_pmd=true supports_cpd=true %} + Kotlin support in PMD is based on the official grammar from . Java-based rules and XPath-based rules are supported. diff --git a/docs/pages/pmd/languages/language_properties.md b/docs/pages/pmd/languages/language_properties.md index d8adf105a9..91f396489f 100644 --- a/docs/pages/pmd/languages/language_properties.md +++ b/docs/pages/pmd/languages/language_properties.md @@ -108,7 +108,7 @@ The Java language can be configured with the following properties: Environment variable: `PMD_APEX_ROOT_DIRECTORY` -## VisualForce language properties +## Visualforce language properties - `apexDirectories`: Comma separated list of directories for Apex classes. Absolute or relative to the Visualforce directory. Default is `../classes`. Specifying an diff --git a/docs/pages/pmd/languages/lua.md b/docs/pages/pmd/languages/lua.md new file mode 100644 index 0000000000..b35a57b4da --- /dev/null +++ b/docs/pages/pmd/languages/lua.md @@ -0,0 +1,8 @@ +--- +title: Lua +permalink: pmd_languages_lua.html +last_updated: September 2023 (7.0.0) +tags: [languages] +--- + +{% include language_info.html name='Lua' id='lua' implementation='lua::lang.lua.LuaLanguageModule' supports_cpd=true %} diff --git a/docs/pages/pmd/languages/matlab.md b/docs/pages/pmd/languages/matlab.md new file mode 100644 index 0000000000..5356fb3941 --- /dev/null +++ b/docs/pages/pmd/languages/matlab.md @@ -0,0 +1,8 @@ +--- +title: Matlab +permalink: pmd_languages_matlab.html +last_updated: September 2023 (7.0.0) +tags: [languages] +--- + +{% include language_info.html name='Matlab' id='matlab' implementation='matlab::lang.matlab.MatlabLanguageModule' supports_cpd=true %} diff --git a/docs/pages/pmd/languages/modelica.md b/docs/pages/pmd/languages/modelica.md new file mode 100644 index 0000000000..30572d233e --- /dev/null +++ b/docs/pages/pmd/languages/modelica.md @@ -0,0 +1,8 @@ +--- +title: Modelica +permalink: pmd_languages_modelica.html +last_updated: September 2023 (7.0.0) +tags: [languages] +--- + +{% include language_info.html name='Modelica' id='modelica' implementation='modelica::lang.modelica.ModelicaLanguageModule' supports_pmd=true supports_cpd=true %} diff --git a/docs/pages/pmd/languages/objectivec.md b/docs/pages/pmd/languages/objectivec.md new file mode 100644 index 0000000000..b8624dcb64 --- /dev/null +++ b/docs/pages/pmd/languages/objectivec.md @@ -0,0 +1,8 @@ +--- +title: Objective-C +permalink: pmd_languages_objectivec.html +last_updated: September 2023 (7.0.0) +tags: [languages] +--- + +{% include language_info.html name='objectivec' id='objectivec' implementation='objectivec::lang.objectivec.ObjectiveCLanguageModule' supports_cpd=true %} diff --git a/docs/pages/pmd/languages/perl.md b/docs/pages/pmd/languages/perl.md new file mode 100644 index 0000000000..41993b40d9 --- /dev/null +++ b/docs/pages/pmd/languages/perl.md @@ -0,0 +1,8 @@ +--- +title: Perl +permalink: pmd_languages_perl.html +last_updated: September 2023 (7.0.0) +tags: [languages] +--- + +{% include language_info.html name='Perl' id='perl' implementation='perl::lang.perl.PerlLanguageModule' supports_cpd=true %} diff --git a/docs/pages/pmd/languages/php.md b/docs/pages/pmd/languages/php.md new file mode 100644 index 0000000000..f226e58960 --- /dev/null +++ b/docs/pages/pmd/languages/php.md @@ -0,0 +1,8 @@ +--- +title: PHP +permalink: pmd_languages_php.html +last_updated: September 2023 (7.0.0) +tags: [languages] +--- + +{% include language_info.html name='PHP' id='php' implementation='php::lang.php.PhpLanguageModule' supports_cpd=true %} diff --git a/docs/pages/pmd/languages/plsql.md b/docs/pages/pmd/languages/plsql.md index 38f22bab03..34c195426f 100644 --- a/docs/pages/pmd/languages/plsql.md +++ b/docs/pages/pmd/languages/plsql.md @@ -1,11 +1,13 @@ --- title: PLSQL Support permalink: pmd_languages_plsql.html -last_updated: March 2021 (6.33.0) +last_updated: September 2023 (7.0.0) tags: [languages] summary: "PLSQL-specific features and guidance" --- +{% include language_info.html name='PLSQL' id='plsql' implementation='plsql::lang.plsql.PLSQLLanguageModule' supports_pmd=true supports_cpd=true %} + ## Parsing Exclusions The grammar for PLSQL used in PMD has several bugs and might not parse all DDL scripts @@ -17,9 +19,9 @@ which cause PMD to treat the source in between these comments more or less like a multi-line comment, or in other words, just not try to parse them. It is good practice to include a reason for excluding inside the -`-- PMD-EXCUDE-BEGIN` comment separated by a colon. +`-- PMD-EXCLUDE-BEGIN` comment separated by a colon. -The `PMD-EXCLUDE-BEGIN` and `PMD-EXLUDE-END` comment lines must not contain +The `PMD-EXCLUDE-BEGIN` and `PMD-EXCLUDE-END` comment lines must not contain other statements, e.g. `do_xy(); -- PMD-EXCLUDE-BEGIN` is invalid. Example: diff --git a/docs/pages/pmd/languages/python.md b/docs/pages/pmd/languages/python.md new file mode 100644 index 0000000000..97a2e609c0 --- /dev/null +++ b/docs/pages/pmd/languages/python.md @@ -0,0 +1,8 @@ +--- +title: Python +permalink: pmd_languages_python.html +last_updated: September 2023 (7.0.0) +tags: [languages] +--- + +{% include language_info.html name='Python' id='python' implementation='python::lang.python.PythonLanguageModule' supports_cpd=true %} diff --git a/docs/pages/pmd/languages/ruby.md b/docs/pages/pmd/languages/ruby.md new file mode 100644 index 0000000000..e896bff43d --- /dev/null +++ b/docs/pages/pmd/languages/ruby.md @@ -0,0 +1,8 @@ +--- +title: Ruby +permalink: pmd_languages_ruby.html +last_updated: September 2023 (7.0.0) +tags: [languages] +--- + +{% include language_info.html name='Ruby' id='ruby' implementation='ruby::lang.ruby.RubyLanguageModule' supports_cpd=true %} diff --git a/docs/pages/pmd/languages/scala.md b/docs/pages/pmd/languages/scala.md new file mode 100644 index 0000000000..d5c6b13d82 --- /dev/null +++ b/docs/pages/pmd/languages/scala.md @@ -0,0 +1,8 @@ +--- +title: Scala +permalink: pmd_languages_scala.html +last_updated: September 2023 (7.0.0) +tags: [languages] +--- + +{% include language_info.html name='Scala' id='scala' implementation='scala::lang.scala.ScalaLanguageModule' supports_pmd=true supports_cpd=true %} diff --git a/docs/pages/pmd/languages/swift.md b/docs/pages/pmd/languages/swift.md new file mode 100644 index 0000000000..548f8e75f8 --- /dev/null +++ b/docs/pages/pmd/languages/swift.md @@ -0,0 +1,8 @@ +--- +title: Swift +permalink: pmd_languages_swift.html +last_updated: September 2023 (7.0.0) +tags: [languages] +--- + +{% include language_info.html name='Swift' id='swift' implementation='swift::lang.swift.SwiftLanguageModule' supports_pmd=true supports_cpd=true %} diff --git a/docs/pages/pmd/languages/tsql.md b/docs/pages/pmd/languages/tsql.md new file mode 100644 index 0000000000..03e7afed4f --- /dev/null +++ b/docs/pages/pmd/languages/tsql.md @@ -0,0 +1,8 @@ +--- +title: TSql +permalink: pmd_languages_tsql.html +last_updated: September 2023 (7.0.0) +tags: [languages] +--- + +{% include language_info.html name='TSql' id='tsql' implementation='tsql::lang.tsql.TSqlLanguageModule' supports_cpd=true %} diff --git a/docs/pages/pmd/languages/visualforce.md b/docs/pages/pmd/languages/visualforce.md index 84c070d10f..025956d0a5 100644 --- a/docs/pages/pmd/languages/visualforce.md +++ b/docs/pages/pmd/languages/visualforce.md @@ -1,19 +1,16 @@ --- title: Visualforce Support permalink: pmd_languages_visualforce.html -author: Andreas Dangel last_updated: September 2023 +tags: [languages] +author: Andreas Dangel --- -Implementation: {% jdoc visualforce::lang.vf.VfLanguageModule %} -Name: Salesforce VisualForce -id: vf -PMD: yes -CPD: yes +{% include language_info.html name='Salesforce Visualforce' id='vf' implementation='visualforce::lang.vf.VfLanguageModule' supports_pmd=true supports_cpd=true %} ## Language Properties -See [VisualForce language properties](pmd_languages_configuration.html#visualforce-language-properties) +See [Visualforce language properties](pmd_languages_configuration.html#visualforce-language-properties) ## Type resolution diff --git a/docs/pages/pmd/languages/vm.md b/docs/pages/pmd/languages/vm.md new file mode 100644 index 0000000000..3c878791e2 --- /dev/null +++ b/docs/pages/pmd/languages/vm.md @@ -0,0 +1,8 @@ +--- +title: Velocity Template Language (VTL) +permalink: pmd_languages_vm.html +last_updated: September 2023 (7.0.0) +tags: [languages] +--- + +{% include language_info.html name='Velocity Template Language (VTL)' id='vm' implementation='vm::lang.vm.VmLanguageModule' supports_pmd=true supports_cpd=true %} diff --git a/docs/pages/pmd/languages/xml.md b/docs/pages/pmd/languages/xml.md index 409194aa63..9eeac963f9 100644 --- a/docs/pages/pmd/languages/xml.md +++ b/docs/pages/pmd/languages/xml.md @@ -1,9 +1,15 @@ --- title: Processing XML files permalink: pmd_languages_xml.html -last_updated: March 2022 (6.44.0) +last_updated: September 2023 (7.0.0) +tags: [languages] --- +{% include language_info.html name='Maven POM' id='pom' implementation='xml::lang.pom.PomLanguageModule' supports_pmd=true supports_cpd=true %} +{% include language_info.html name='WSDL' id='wsdl' implementation='xml::lang.wsdl.WsdlLanguageModule' supports_pmd=true supports_cpd=true %} +{% include language_info.html name='XML' id='xml' implementation='xml::lang.xml.XmlLanguageModule' supports_pmd=true supports_cpd=true %} +{% include language_info.html name='XSL' id='xsl' implementation='xml::lang.xsl.XslLanguageModule' supports_pmd=true supports_cpd=true %} + ## The XML language module PMD has an XML language module which exposes the [DOM](https://de.wikipedia.org/wiki/Document_Object_Model) diff --git a/pmd-visualforce/src/main/java/net/sourceforge/pmd/lang/vf/VfLanguageModule.java b/pmd-visualforce/src/main/java/net/sourceforge/pmd/lang/vf/VfLanguageModule.java index b6d6bd25d6..f596902c2b 100644 --- a/pmd-visualforce/src/main/java/net/sourceforge/pmd/lang/vf/VfLanguageModule.java +++ b/pmd-visualforce/src/main/java/net/sourceforge/pmd/lang/vf/VfLanguageModule.java @@ -17,7 +17,7 @@ import net.sourceforge.pmd.lang.vf.cpd.VfTokenizer; */ public class VfLanguageModule extends SimpleLanguageModuleBase implements CpdCapableLanguage { static final String ID = "vf"; - static final String NAME = "Salesforce VisualForce"; + static final String NAME = "Salesforce Visualforce"; public VfLanguageModule() { super(LanguageMetadata.withId(ID).name(NAME) diff --git a/pmd-vm/src/main/java/net/sourceforge/pmd/lang/vm/VmLanguageModule.java b/pmd-vm/src/main/java/net/sourceforge/pmd/lang/vm/VmLanguageModule.java index ce35a109ec..b441d472ae 100644 --- a/pmd-vm/src/main/java/net/sourceforge/pmd/lang/vm/VmLanguageModule.java +++ b/pmd-vm/src/main/java/net/sourceforge/pmd/lang/vm/VmLanguageModule.java @@ -15,7 +15,7 @@ import net.sourceforge.pmd.lang.vm.cpd.VmTokenizer; */ public class VmLanguageModule extends SimpleLanguageModuleBase { static final String ID = "vm"; - static final String NAME = "VM"; + static final String NAME = "Velocity Template Language (VTL)"; public VmLanguageModule() { super(LanguageMetadata.withId(ID).name(NAME)