mirror of
https://github.com/hugo-fixit/FixIt.git
synced 2026-08-24 15:28:57 +00:00
feat(i18n): add RTL support for Arabic, Persian and Urdu (#831)
* feat(i18n): add RTL support and Arabic/Persian translations - Add `dir` attribute to `<html>` via `.Site.Language.Direction` - Convert physical CSS properties to logical properties across ~30 SCSS files - Add `[dir="rtl"]` overrides for elements that need physical direction (code blocks, translate, icons) - Add `logical-direction.html` template function for config value normalization - Add RTL-aware deprecation warnings for old "left"/"right" config values - Rename github corner, TOC position, reading progress config values from "left"/"right" to "start"/"end" - Add Arabic (ar.toml) and Persian (fa.toml) i18n translation files - Update multilingual documentation with RTL language configuration guide * feat(shortcodes): add RTL support for tabs and refactor border-radius mixin - Rename tabs placement values from "left"/"right" to "start"/"end" with deprecation warnings - Convert all physical directional properties in tabs SCSS to logical properties - Add RTL overrides for translate and box-shadow in tabs - Add "start"/"end" support to border-radius mixin using CSS logical properties - Refactor fixit-decryptor to use border-radius(start/end) mixin * feat(assets): add RTL support for toc-dialog slide animation The mobile toc-dialog always slid in from the right (100vw). In RTL mode it should slide from the left (-100vw), matching the border-inline-start/margin-inline-end anchoring. * feat(assets): add RTL support for post-tag comma separator * refactor(assets): extract RTL styles into dedicated _rtl.scss * feat(assets): add RTL support for theme-switch and directional icons * feat(i18n): add RTL support and improve i18n - Add RTL typography corrections for Arabic-script languages (:lang(ar/fa/ur)) - Remove fa-list-ol from RTL flip list (numbers get mirrored) - Add Urdu translation file (i18n/ur.toml) - Rename noMoretTranslations to noTranslations and simplify all translations - Update json-viewer-element from 1.0.4 to 1.0.6 - Add RTL test posts (index.en.md, index.ar.md) - Fix layout partials for RTL support See https://fixit.lruihao.cn/docs/content-management/introduction/#rtl-language-support
This commit is contained in:
@@ -4,7 +4,7 @@
|
||||
|
||||
@param {Int} [defaultTab=0] - The index of the tab to be active by default (0-based)
|
||||
@param {String} [type="underline"] - The style type of the tabs ("underline", "pill", "card", "segment", etc.)
|
||||
@param {String} [placement="top"] - The placement of the tabs ("top", "bottom", "left", "right")
|
||||
@param {String} [placement="top"] - The placement of the tabs ("top", "bottom", "start", "end")
|
||||
|
||||
Usage:
|
||||
{{< tabs defaultTab="1" type="card" placement="top" >}}
|
||||
@@ -28,8 +28,14 @@
|
||||
{{- $lenTabs := len $tabs -}}
|
||||
{{- $defaultTab := .Get "defaultTab" | default 0 -}}
|
||||
{{- $type := .Get "type" | default "underline" -}}
|
||||
{{- $placement := .Get "placement" | default "top" -}}
|
||||
{{- $placementMap := slice "top" "bottom" "left" "right" -}}
|
||||
{{- $placementRaw := .Get "placement" | default "top" -}}
|
||||
{{- $placement := $placementRaw -}}
|
||||
{{- if or (eq $placementRaw "left") (eq $placementRaw "right") -}}
|
||||
{{- $newVal := cond (eq $placementRaw "left") "start" "end" -}}
|
||||
{{- warnf "The placement value %q is deprecated, use %q instead. See %s %s" $placementRaw $newVal .Name .Position -}}
|
||||
{{- $placement = $newVal -}}
|
||||
{{- end -}}
|
||||
{{- $placementMap := slice "top" "bottom" "start" "end" -}}
|
||||
{{- if ge $defaultTab $lenTabs -}}
|
||||
{{- warnf "The defaultTab value %v is out of range [0, %v]. See %s %s" $defaultTab (sub $lenTabs 1) .Name .Position -}}
|
||||
{{- $defaultTab = 0 -}}
|
||||
|
||||
Reference in New Issue
Block a user