Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
207 changes: 118 additions & 89 deletions .github/styles/UmbracoDocs/Acronyms.yml
Original file line number Diff line number Diff line change
@@ -1,93 +1,122 @@
---
extends: conditional
message: "'%s' has no definition"
level: error
message: "'%s' has no definition."
description: >
Ensures that all acronyms used in the documentation are clearly defined.
link: https://docs.umbraco.com/contributing/documentation/style-guide#acronyms
scope: text
level: error
ignorecase: false
# Ensures that the existence of 'first' implies the existence of 'second'.
# Require leading whitespace to avoid matching on URL substrings eg https://www.youtube.com/embed/OUD-PbWESAs?rel=0
first: '\b([A-Z]{3,5})\b'
second: '([A-Z]{3,5}): (?:\b[A-Z][a-z]+ )+|(?:\b[A-Z][a-z]+ )+\(([A-Z]{3,5})\)'
# ... with the exception of these:
# If an uppercase acronym of 3-5 letters is found (first),
# require a definition (second) somewhere nearby.
first: '\b([A-Z]{3,5})\b'
# Acronym followed by colon and a phrase of capitalized words (words can include hyphens) or
# Capitalized phrase followed by acronym in parentheses
second: >-
(
\b([A-Z]{3,5}):\s+((?:\b[A-Z][a-z\-]+(?:\s|$))+)
)
|
(
((?:\b[A-Z][a-z\-]+(?:\s|$))+) \(([A-Z]{3,5})\)
)
# ... with the exception of these. Sorted alphabetically for easier maintenance.
exceptions:
- ABC
- ADD
- ALT
- HTML
- JSON
- CSS
- API
- URL
- UDI
- URI
- NET
- MVC
- GET
- ASP
- ADO
- REST
- HTTP
- HTTPS
- CURL
- BASE
- UDA
- CLI
- KUDU
- XML
- PATH
- SQL
- SHIFT
- POST
- GUID
- UWP
- HAL
- LINK
- DLL
- CMS
- ONLY
- IIS
- DNS
- DOM
- XSLT
- AJAX
- YAML
- PNG
- ISO
- PDF
- DXP
- FAQ
- DIBS
- VAT
- SKU
- UTC
- HEX
- RGBA
- IDE
- CPU
- RAM
- CNAME
- AAAA
- TXT
- PUT
- DELETE
- ZIP
- CTRL
- SPACE
- ENTER
- VIP
- DEBUG
- INFO
- TEMP
- GIF
- GDPR
- NPM
- SVG
- DHL
- UUI
- MDN
- JPG
- JPEG
- BCC
- SSD
- ASCII
- CMD
- NGINX
- AAAA # IPv6 address record (DNS)
- ADD #
- ADO # ActiveX Data Objects
- AJAX # Asynchronous JavaScript and XML
- ALT # Alternative text (images)
- API # Application Programming Interface
- ASCII # American Standard Code for Information Interchange
- ASP # Active Server Pages
- BCC # Blind Carbon Copy (email)
- CD # Continuous Delivery
- CDN # Content Delivery Network
- CI # Continuous Integration
- CLI # Command Line Interface
- CMD # Command (Windows shell)
- CMS # Content Management System
- CPU # Central Processing Unit
- CSS # Cascading Style Sheets
- CURL # Client URL
- DELETE # HTTP DELETE method
- DHL # International Shipping brand
- DIBS # DIBS by Nets
- DNS # Domain Name System
- DOM # Document Object Model
- DXP # Digital Experience Platform
- FAQ # Frequently Asked Questions
- FTP # File Transfer Protocol
- GDPR # General Data Protection Regulation
- GET # HTTP GET method
- GIF # Graphics Interchange Format
- GUID # Globally Unique Identifier
- HAL # Hypertext Application Language
- HASH # Cryptographic hash
- HEX # Hexadecimal
- HTML # HyperText Markup Language
- HTTP # HyperText Transfer Protocol
- HTTPS # HyperText Transfer Protocol Secure
- IaaS # Infrastructure as a Service
- IDE # Integrated Development Environment
- IIS # Internet Information Services
- INFO # Information
- ISO # International Organization for Standardization
- JPG # Joint Photographic Experts Group
- JPEG # Joint Photographic Experts Group
- JSON # JavaScript Object Notation
- JSONP # JSON with Padding
- JS # JavaScript
- JWT # JSON Web Token
- KUDU # Azure deployment engine
- LDAP # Lightweight Directory Access Protocol
- LINK #
- MDN # Mozilla Developer Network
- MVC # Model-View-Controller
- NET # .NET Framework
- NGINX # Engine X (web server)
- NPM # Node Package Manager
- OAuth # Open Authorization
- ONLY #
- ORM # Object-Relational Mapping
- PaaS # Platform as a Service
- PATH # file system path
- PDF # Portable Document Format
- PNG # Portable Network Graphics
- POST # HTTP POST method
- PUT # HTTP PUT method
- RAM # Random Access Memory
- REST # Representational State Transfer
- RGBA # Red Green Blue Alpha (color model)
- RPG # Role-Playing Game
- RTX # Ray Tracing Texel eXtreme (NVIDIA tech)
- SaaS # Software as a Service
- SDK # Software Development Kit
- SEO # Search Engine Optimization
- SHIFT # keyboard key
- SKU # Stock Keeping Unit
- SQL # Structured Query Language
- SSD # Solid State Drive
- SVG # Scalable Vector Graphics
- TCP # Transmission Control Protocol
- TEMP # Temporary
- TS # TypeScript
- TXT # Text (file format)
- UDA # Files for Umbraco project's metadata
- UDI # Unique Device Identifier
- UI # User Interface
- URI # Uniform Resource Identifier
- URL # Uniform Resource Locator
- UTC # Coordinated Universal Time
- UUID # Universally Unique Identifier
- UWP # Universal Windows Platform
- UX # User Experience
- VAL #
- VAT # Value-Added Tax
- VIP # Very Important Person
- WYSIWYG # What You See Is What You Get
- XML # Extensible Markup Language
- XSLT # Extensible Stylesheet Language Transformations
- YAML # YAML Ain’t Markup Language
- ZIP # ZIP file format / Zone Improvement Plan
48 changes: 39 additions & 9 deletions .github/styles/UmbracoDocs/Brands.yml
Original file line number Diff line number Diff line change
@@ -1,13 +1,43 @@
---
extends: substitution
message: "We prefer %s over '%s.'"
message: "Use '%s' instead of '%s' for brand consistency."
description: >
Ensures consistent capitalization of brand and product names.
This rule ignores matches inside markdown links and inline code to prevent false positives.
link: https://docs.umbraco.com/contributing/documentation/style-guide#brands
level: warning
ignorecase: true
# Sorted alphabetically for easier maintenance.
swap:
'(?<![\.\/])youtube': "'YouTube'"
microsoft: "'Microsoft'"
slack: "'Slack'"
azure: "'Azure'"
gitbook: "'GitBook'"
Gitbook: "'GitBook'"
github: "'GitHub'"
Github: "'GitHub'"
# Use negative lookbehind to ignore matches inside markdown links `[text](link)` or inline code `code`
'(?<![\(\[`])azure\b': "Azure"
'(?<![\(\[`])azure devops\b': "Azure DevOps"
'(?<![\(\[`])chrome\b': "Chrome"
'(?<![\(\[`])cloudflare\b': "Cloudflare"
'(?<![\(\[`])edge\b': "Edge"
'(?<![\(\[`])firefox\b': "Firefox"
'(?<![\(\[`])gitbook\b': "GitBook"
'(?<![\(\[`])github\b': "GitHub"
'(?<![\(\[`])gmail\b': "Gmail"
'(?<![\(\[`])google\b': "Google"
'(?<![\(\[`])itunes\b': "iTunes"
'(?<![\(\[`])macos\b': "macOS"
'(?<![\(\[`])microsoft\b': "Microsoft"
'(?<![\(\[`])netlify\b': "Netlify"
'(?<![\(\[`])nginx\b': "NGINX"
'(?<![\(\[`])npm\b': "npm"
'(?<![\(\[`])safari\b': "Safari"
'(?<![\(\[`])slack\b': "Slack"
'(?<![\(\[`])twitter\b': "Twitter"
'(?<![\(\[`])umbraco\b': "Umbraco"
'(?<![\(\[`])umbraco cloud\b': "Umbraco Cloud"
'(?<![\(\[`])umbraco commerce\b': "Umbraco Commerce"
'(?<![\(\[`])umbraco deploy\b': "Umbraco Deploy"
'(?<![\(\[`])umbraco forms\b': "Umbraco Forms"
'(?<![\(\[`])umbraco heartcore\b': "Umbraco Heartcore"
'(?<![\(\[`])umbraco id\b': "Umbraco ID"
'(?<![\(\[`])umbraco support\b': "Umbraco Support"
'(?<![\(\[`])umbraco workflow\b': "Umbraco Workflow"
'(?<![\(\[`])visual studio code\b': "Visual Studio Code"
'(?<![\(\[`])vs code\b': "Visual Studio Code"
'(?<![\(\[`])youtube\b': "YouTube"
107 changes: 57 additions & 50 deletions .github/styles/UmbracoDocs/Editorializing.yml
Original file line number Diff line number Diff line change
@@ -1,52 +1,59 @@
---
---
extends: existence
message: "Consider removing '%s'"
ignorecase: true
message: "Consider removing or rephrasing '%s' to keep the tone clear and neutral."
description: >
Flags words and phrases that express opinion, exaggeration, or assumptions. These can make documentation feel biased, subjective, or unclear.
link: https://docs.umbraco.com/contributing/documentation/style-guide#avoid-punctuation-in-headings
scope: text
level: warning
tokens:
- actually
- aptly
- are a number
- basically
- clearly
- completely
- easy
- easily
- essentially
- everybody knows
- everyone knows
- exceedingly
- excellent
- extremely
- fairly
- fortunately
- huge
- interestingly
- is a number
- it is important to realize
- it should be noted that
- just
- largely
- mostly
- notably
- note that
- obviously
- of course
- quite
- relatively
- remarkably
- several
- significantly
- simple
- simply
- substantially
- surprisingly
- tiny
- totally
- tragically
- unfortunately
- untimely
- various
- vast
- very
- without a doubt
ignorecase: true
# Sorted alphabetically for easier maintenance.
# Uses regex patterns with \b for whole word matching.
# The pattern for 'simple' excludes common technical terms to reduce false positives.
raw:
- '\bactually\b'
- '\baptly\b'
- '\bare a number\b'
- '\bbasically\b'
- '\bclearly\b'
- '\bcompletely\b'
- '\beasy\b'
- '\beasily\b'
- '\bessentially\b'
- '\beverybody knows\b'
- '\beveryone knows\b'
- '\bexceedingly\b'
- '\bexcellent\b'
- '\bextremely\b'
- '\bfairly\b'
- '\bfortunately\b'
- '\bhuge\b'
- '\binterestingly\b'
- '\bis a number\b'
- '\bit is important to realize\b'
- '\bit should be noted that\b'
- '\bjust\b'
- '\blargely\b'
- '\bmostly\b'
- '\bnotably\b'
- '\bnote that\b'
- '\bobviously\b'
- '\bof course\b'
- '\bquite\b'
- '\brelatively\b'
- '\bremarkably\b'
- '\bseveral\b'
- '\bsignificantly\b'
- '\bsimple\b(?! (Mail|Message|Object|Protocol|Transfer|Markup))'
- '\bsimply\b'
- '\bsubstantially\b'
- '\bsurprisingly\b'
- '\btiny\b'
- '\btotally\b'
- '\btragically\b'
- '\bunfortunately\b'
- '\buntimely\b'
- '\bvarious\b'
- '\bvast\b'
- '\bvery\b'
- '\bwithout a doubt\b'
8 changes: 5 additions & 3 deletions .github/styles/UmbracoDocs/HeadingsPunctuation.yml
Original file line number Diff line number Diff line change
@@ -1,8 +1,10 @@
---
extends: existence
message: Do not use '%s' at the end of headings
link: https://github.com/cockroachdb/docs/blob/master/STYLE.md#capitalization-and-punctuation
message: "Avoid using punctuation '%s' at the end of heading."
description: >
Checks headings to ensure they do not end with punctuation.
link: https://docs.umbraco.com/contributing/documentation/style-guide#avoid-punctuation-in-headings
scope: heading
level: warning
raw:
- '(?:\:|\.)$'
- '(?:[.:?;!])$'
Loading
Loading