From 6e3f4c8772f774933534500ddbdd0ddab5b8c104 Mon Sep 17 00:00:00 2001 From: "jeremy@jermolene.com" Date: Tue, 19 Apr 2022 20:01:56 +0100 Subject: [PATCH 01/28] Sites menu: Fix standalone styling --- editions/tw5.com/tiddlers/_tw_shared/styles.tid | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/editions/tw5.com/tiddlers/_tw_shared/styles.tid b/editions/tw5.com/tiddlers/_tw_shared/styles.tid index 9cfaa2fd9..3a3cd3333 100644 --- a/editions/tw5.com/tiddlers/_tw_shared/styles.tid +++ b/editions/tw5.com/tiddlers/_tw_shared/styles.tid @@ -20,8 +20,12 @@ code-body: yes } .tc-sites-menu ol li a { - padding-top: 0.25em; - padding-bottom: 0.25em; + display: block; + padding: 0.25em 14px 0.25em 14px; + width: 100%; + text-align: left; + color: #333333; + line-height: 1.4; } .tc-sites-menu ol li .tc-sites-menu-disabled { From ed4ccc42900f76dd8839f69b0606c6ac9ec0963e Mon Sep 17 00:00:00 2001 From: "jeremy@jermolene.com" Date: Wed, 20 Apr 2022 09:43:03 +0100 Subject: [PATCH 02/28] Sites menu: remove link underlining --- editions/tw5.com/tiddlers/_tw_shared/styles.tid | 1 + 1 file changed, 1 insertion(+) diff --git a/editions/tw5.com/tiddlers/_tw_shared/styles.tid b/editions/tw5.com/tiddlers/_tw_shared/styles.tid index 3a3cd3333..fc2d89eb5 100644 --- a/editions/tw5.com/tiddlers/_tw_shared/styles.tid +++ b/editions/tw5.com/tiddlers/_tw_shared/styles.tid @@ -26,6 +26,7 @@ code-body: yes text-align: left; color: #333333; line-height: 1.4; + text-decoration: none; } .tc-sites-menu ol li .tc-sites-menu-disabled { From 9bad66f02e6837f74c46c1cd17f186e43ccce97a Mon Sep 17 00:00:00 2001 From: tw-FRed <95534072+tw-FRed@users.noreply.github.com> Date: Sun, 24 Apr 2022 22:45:06 +0200 Subject: [PATCH 03/28] [fr-FR] New batch of Documentation translations (#6657) This batch includes: - Minor corrections of metadata from my previous translations - Translation updates for tiddlers tagged WikiText - New translations for Parser Modes documentation - Update of outdated core tiddlers translations (ie Open sidebar tab) --- .../tiddlers/$__core_ui_SideBar_Open.tid | 15 --- .../tiddlers/Horizontal Rules in WikiText.tid | 17 --- .../tiddlers/Macro_Calls_in_WikiText.tid | 22 ---- editions/fr-FR/tiddlers/Pragma.tid | 17 --- .../fr-FR/tiddlers/Tables_in_WikiText.tid | 102 ------------------ editions/fr-FR/tiddlers/TranscludeWidget.tid | 73 ------------- .../fr-FR/tiddlers/Widgets_in_WikiText.tid | 30 ------ editions/fr-FR/tiddlers/concepts/Pragma.tid | 23 ++++ .../tiddlers/{ => concepts}/WikiText.tid | 10 +- .../A Gentle Guide to TiddlyWiki.tid} | 10 +- .../tiddlers/nodejs/TiddlyWiki on Node.js.tid | 4 +- .../saving/Saving on a PHP Server.tid | 3 +- .../Saving with TiddlyFox on Android.tid | 4 +- .../tiddlers/saving/Saving with TiddlyFox.tid | 4 +- .../system/$__core_ui_SideBar_Open.tid | 40 +++++++ .../$__editions_fr-FR_util-macros.tid | 8 +- .../$__editions_tw5.com_wikitext-macros.tid | 27 ++++- .../tiddlers/widgets/TranscludeWidget.tid | 72 +++++++++++++ .../Block Quotes in WikiText.tid} | 5 +- .../Code Blocks in WikiText.tid | 6 +- .../{ => wikitext}/Dashes in WikiText.tid | 6 +- .../Definitions in WikiText.tid} | 4 +- .../{ => wikitext}/Formatting in WikiText.tid | 11 +- .../Hard Linebreaks in WikiText.tid | 11 +- .../{ => wikitext}/Headings in WikiText.tid | 8 +- .../wikitext/Horizontal Rules in WikiText.tid | 17 +++ .../Lists in WikiText.tid} | 38 +++---- .../wikitext/Macro Calls in WikiText.tid | 27 +++++ .../{ => wikitext}/Paragraphs in WikiText.tid | 15 +-- .../tiddlers/wikitext/Tables in WikiText.tid | 69 ++++++++++++ .../Transclusion and Substitution.tid | 61 +++++++++++ .../Transclusion in WikiText.tid} | 27 ++--- .../Transclusion with Templates.tid} | 3 +- .../Typed Blocks in WikiText.tid} | 27 +++-- .../Variables in WikiText.tid} | 15 ++- .../tiddlers/wikitext/Widgets in WikiText.tid | 30 ++++++ .../parser/Block Mode WikiText (Examples).tid | 52 +++++++++ .../wikitext/parser/Block Mode WikiText.tid | 37 +++++++ .../wikitext/parser/Inline Mode WikiText.tid | 28 +++++ ...aces where the parser ignores WikiText.tid | 14 +++ .../wikitext/parser/WikiText Parser Modes.tid | 17 +++ .../WikiText parser mode HTML examples.tid | 73 +++++++++++++ .../WikiText parser mode transitions.tid | 59 ++++++++++ .../WikiText parser mode_ macro examples.tid | 56 ++++++++++ ...ext parser mode_ transclusion examples.tid | 56 ++++++++++ .../wikitext/parser/table-example.tid | 8 ++ 46 files changed, 879 insertions(+), 382 deletions(-) delete mode 100644 editions/fr-FR/tiddlers/$__core_ui_SideBar_Open.tid delete mode 100644 editions/fr-FR/tiddlers/Horizontal Rules in WikiText.tid delete mode 100644 editions/fr-FR/tiddlers/Macro_Calls_in_WikiText.tid delete mode 100644 editions/fr-FR/tiddlers/Pragma.tid delete mode 100644 editions/fr-FR/tiddlers/Tables_in_WikiText.tid delete mode 100644 editions/fr-FR/tiddlers/TranscludeWidget.tid delete mode 100644 editions/fr-FR/tiddlers/Widgets_in_WikiText.tid create mode 100644 editions/fr-FR/tiddlers/concepts/Pragma.tid rename editions/fr-FR/tiddlers/{ => concepts}/WikiText.tid (60%) rename editions/fr-FR/tiddlers/{A_Gentle_Guide_to_TiddlyWiki.tid => hellothere/A Gentle Guide to TiddlyWiki.tid} (57%) create mode 100644 editions/fr-FR/tiddlers/system/$__core_ui_SideBar_Open.tid rename editions/fr-FR/tiddlers/{ => system}/$__editions_fr-FR_util-macros.tid (85%) rename editions/fr-FR/tiddlers/{ => system}/$__editions_tw5.com_wikitext-macros.tid (51%) create mode 100644 editions/fr-FR/tiddlers/widgets/TranscludeWidget.tid rename editions/fr-FR/tiddlers/{Block_Quotes_in_WikiText.tid => wikitext/Block Quotes in WikiText.tid} (95%) rename editions/fr-FR/tiddlers/{ => wikitext}/Code Blocks in WikiText.tid (72%) rename editions/fr-FR/tiddlers/{ => wikitext}/Dashes in WikiText.tid (69%) rename editions/fr-FR/tiddlers/{Definitions_in_WikiText.tid => wikitext/Definitions in WikiText.tid} (83%) rename editions/fr-FR/tiddlers/{ => wikitext}/Formatting in WikiText.tid (66%) rename editions/fr-FR/tiddlers/{ => wikitext}/Hard Linebreaks in WikiText.tid (79%) rename editions/fr-FR/tiddlers/{ => wikitext}/Headings in WikiText.tid (77%) create mode 100644 editions/fr-FR/tiddlers/wikitext/Horizontal Rules in WikiText.tid rename editions/fr-FR/tiddlers/{Lists_in_WikiText.tid => wikitext/Lists in WikiText.tid} (52%) create mode 100644 editions/fr-FR/tiddlers/wikitext/Macro Calls in WikiText.tid rename editions/fr-FR/tiddlers/{ => wikitext}/Paragraphs in WikiText.tid (54%) create mode 100644 editions/fr-FR/tiddlers/wikitext/Tables in WikiText.tid create mode 100644 editions/fr-FR/tiddlers/wikitext/Transclusion and Substitution.tid rename editions/fr-FR/tiddlers/{Transclusion_in_WikiText.tid => wikitext/Transclusion in WikiText.tid} (57%) rename editions/fr-FR/tiddlers/{Transclusion_with_Templates.tid => wikitext/Transclusion with Templates.tid} (98%) rename editions/fr-FR/tiddlers/{Typed_Blocks_in_WikiText.tid => wikitext/Typed Blocks in WikiText.tid} (65%) rename editions/fr-FR/tiddlers/{Variables_in_WikiText.tid => wikitext/Variables in WikiText.tid} (61%) create mode 100644 editions/fr-FR/tiddlers/wikitext/Widgets in WikiText.tid create mode 100644 editions/fr-FR/tiddlers/wikitext/parser/Block Mode WikiText (Examples).tid create mode 100644 editions/fr-FR/tiddlers/wikitext/parser/Block Mode WikiText.tid create mode 100644 editions/fr-FR/tiddlers/wikitext/parser/Inline Mode WikiText.tid create mode 100644 editions/fr-FR/tiddlers/wikitext/parser/Places where the parser ignores WikiText.tid create mode 100644 editions/fr-FR/tiddlers/wikitext/parser/WikiText Parser Modes.tid create mode 100644 editions/fr-FR/tiddlers/wikitext/parser/WikiText parser mode HTML examples.tid create mode 100644 editions/fr-FR/tiddlers/wikitext/parser/WikiText parser mode transitions.tid create mode 100644 editions/fr-FR/tiddlers/wikitext/parser/WikiText parser mode_ macro examples.tid create mode 100644 editions/fr-FR/tiddlers/wikitext/parser/WikiText parser mode_ transclusion examples.tid create mode 100644 editions/fr-FR/tiddlers/wikitext/parser/table-example.tid diff --git a/editions/fr-FR/tiddlers/$__core_ui_SideBar_Open.tid b/editions/fr-FR/tiddlers/$__core_ui_SideBar_Open.tid deleted file mode 100644 index 8bfa40c0a..000000000 --- a/editions/fr-FR/tiddlers/$__core_ui_SideBar_Open.tid +++ /dev/null @@ -1,15 +0,0 @@ -caption: {{$:/language/SideBar/Open/Caption}} -created: 20141119223515194 -modified: 20141127160706002 -tags: $:/tags/SideBar -title: $:/core/ui/SideBar/Open -type: text/vnd.tiddlywiki - -\define lingo-base() $:/language/CloseAll/ -<$list filter="[list[$:/StoryList]]" history="$:/HistoryList" storyview="pop"> - -<$button message="tm-close-tiddler" tooltip={{$:/language/Buttons/Close/Hint}} aria-label={{$:/language/Buttons/Close/Caption}} class="tc-btn-invisible tc-btn-mini">× <$link to={{!!title}}><$transclude field="fr-title"><$view field="title"/> - - - -<$button message="tm-close-all-tiddlers" class="tc-btn-invisible tc-btn-mini"><> diff --git a/editions/fr-FR/tiddlers/Horizontal Rules in WikiText.tid b/editions/fr-FR/tiddlers/Horizontal Rules in WikiText.tid deleted file mode 100644 index 94183d061..000000000 --- a/editions/fr-FR/tiddlers/Horizontal Rules in WikiText.tid +++ /dev/null @@ -1,17 +0,0 @@ -caption: Ligne horizontale -created: 20141017091105859 -modified: 20141116092622611 -tags: WikiText -title: Horizontal Rules in WikiText -fr-title: Lignes horizontales en WikiText -type: text/vnd.tiddlywiki - -Une ligne horizontale se crée avec trois caractères "moins" ou plus `---`, seuls sur une ligne : - -<> - -; Remarque -* La ligne vide avant la ligne horizontale est nécessaire pour que cette dernière soit interprétée correctement, et non comme un [[tiret|Dashes in WikiText]]. diff --git a/editions/fr-FR/tiddlers/Macro_Calls_in_WikiText.tid b/editions/fr-FR/tiddlers/Macro_Calls_in_WikiText.tid deleted file mode 100644 index 6ef5ead2e..000000000 --- a/editions/fr-FR/tiddlers/Macro_Calls_in_WikiText.tid +++ /dev/null @@ -1,22 +0,0 @@ -caption: Appel de Macro -created: 20150220182252000 -fr-title: L'appel des macros dans WikiTexte -modified: 20150621151328844 -title: Macro Calls in WikiText -type: text/vnd.tiddlywiki - -Pour appeler une [[macro|Macros]], placez des `<<`parenthèses en double équerres`>>` autour de son nom et des valeurs de ses paramètres. ex<<:>> `<>` - -Par défaut, les paramètres sont passés dans l'ordre fixé lors de la définition de la macro. Un paramètre peut être identifié par son nom, pour plus de clarté ou pour pouvoir en modifier l'ordre. - -Si aucune valeur n'est passée en paramètre, la valeur fixée lors de la définition de la macro est assignée. (Si aucune valeur n'est définie par défaut, le paramètre est tout simplement vide.) - -Chaque valeur de paramètre peut être passée par des `'cotes unique'`, des `"double cotes"`, des `"""double cotes triplés"""` ou des `[[doubles crochets]]`. Les double cotes triplés permettent de passer à peu près toutes les valeurs. Si une valeur ne contient ni espace, ni simple ou double cotes, les délimiteurs sont inutiles. - -Une description [[description|Macro Call Syntax]] plus formelle de cette syntaxe est aussi disponible. - -La syntaxe courante est une forme abrégée du widget <<.wlink MacroCallWidget>>. Ce widget permet, par lui-même, une plus grande flexibilité, incluant la capacité de [[transclure|Transclusion]] des valeurs en paramètres ou de les générer via des macros additionnelles . - -Comme les macros sont de simples [[variables|Variables]] paramétrées, des valeurs de variables peuvent être intègrées en faisant appel aux mêmes techniques. - -[[Exemples|Macro Calls in WikiText (Examples)]] diff --git a/editions/fr-FR/tiddlers/Pragma.tid b/editions/fr-FR/tiddlers/Pragma.tid deleted file mode 100644 index fd937cc97..000000000 --- a/editions/fr-FR/tiddlers/Pragma.tid +++ /dev/null @@ -1,17 +0,0 @@ -caption: Pragma -created: 20150219175930000 -modified: 20150622113059920 -tags: Concepts -title: Pragma -type: text/vnd.tiddlywiki - -Un <<.def pragma>> est un composant spécial de WikiText qui permet de contrôler la façon dont la suite du texte est analysée. - -Les Pragmas occupent les lignes débutants par `\`. Ils peuvent juste prendre place au début d'un texte, mais des lignes vides sont permises entre eux. Si un pragma apparait dans le corps principal d'un texte, il est considéré comme du texte ordinaire. - -Les pragmas suivants sont disponibles<<:>> - -;`\define` -: définit une [[macro|Macros]] -;`\rules` -: permet d'ajuster l'ensemble des règles d'analyse d'un texte diff --git a/editions/fr-FR/tiddlers/Tables_in_WikiText.tid b/editions/fr-FR/tiddlers/Tables_in_WikiText.tid deleted file mode 100644 index a34703f47..000000000 --- a/editions/fr-FR/tiddlers/Tables_in_WikiText.tid +++ /dev/null @@ -1,102 +0,0 @@ -caption: Tableaux -created: 20130914132100000 -fr-title: Tableaux avec WikiText -modified: 20150601094401171 -tags: WikiText -title: Tables in WikiText -type: text/vnd.tiddlywiki - -! Concepts de base - -TiddlyWiki5 forme les tableaux au moyen du signe barre verticale `|`, de cette façon : - -``` -|!Cell1 |!Cell2 | -|Cell3 |Cell4 | -``` - -Le point d'exclamation marque l'entête des cellules: - -|!Cell1 |!Cell2 | -|Cell3 |Cell4 | - -! L'alignement horizontal - -L’alignement horizontal des cellules du tableau est contrôlé par l'insertion d'un espace avant/après le contenu de la cellule. Par exemple: - -``` -|Contenu aligné à gauche | -| Contenu aligné à droite| -| Contenu centré | -|+++ Une très grande cellule pour vous montrer l'alignement dans la colonne +++| -``` - -Cet exemple donne ceci : - -|Contenu aligné à gauche | -| Contenu aligné à droite| -| Contenu centré | -|+++ Une très grande cellule pour vous montrer l'alignement dans la colonne +++| - -! L'alignement vertical - -L’alignement vertical des cellules du tableau est contrôlé par l'insertion, comme premier caractère de la cellule, soit d'un `^` pour un alignement en haut ou un `,` pour un alignement en bas. La combinaison avec l'alignement horizontal reste valable. - -Exemple : - -``` -|^haut gauche |^ haut centré |^ haut droit| -|milieu gauche | milieu centré | milieu droit| -|,bas gauche |, bas centré |, bas droit| -``` - -Ce qui affiche : - -| ::
:: |^haut gauche |^ haut centre |^ haut droit| -| ::
::
:: |milieu gauche | milieu centre | milieu droit| -| ::
::|,bas gauche |, bas centré |, bas droit| - -Si vous voulez afficher un `^`or a `,` comme premier caractère d'une cellule alignée à gauche, vous ferez appel au html-escaping/ échappement-html. Voir, à ce sujet [[la Mise en forme avec WikiText|Formatting in WikiText]]. - -| `^` | &#94; | -| `,` | &#44; | - -! La fusion des cellules - -Pour fusionner le contenu de la cellule située au dessus utiliser `~`. Pour fusionner avec celle de gauche `<` et `>` pour celle de droite. Par exemple: - -``` -|Cell1 |Cell2 |Cell3 |Cell4 | -|Cell5 |Cell6 |Cell7 |<| -|Cell5 |~|Cell7 |Cell8 | -|>|Cell9 |Cell10 |Cell11 | -``` - -affiche: - -|Cell1 |Cell2 |Cell3 |Cell4 | -|Cell5 |Cell6 |Cell7 |<| -|Cell5 |~|Cell7 |Cell8 | -|>|Cell9 |Cell10 |Cell11 | - -! Classes de tableau, légendes, en-têtes et pieds de tableau - -Des classes CSS, des légendes, des en-têtes et pieds de tableau peuvent être spécifiés comme pseudo-lignes spéciales : - -``` -|maclasse autreClass|k -|Ceci est une légende |c -|Cell1 |Cell2 | -|Cell3 |Cell4 | -|Entête|Entête|h -|Pied|Pied|f -``` - -affiche : - -|maclasse autreClass|k -|Ceci est une légende |c -|Cell1 |Cell2 | -|Cell3 |Cell4 | -|Entête|Entête|h -|Pied|Pied|f diff --git a/editions/fr-FR/tiddlers/TranscludeWidget.tid b/editions/fr-FR/tiddlers/TranscludeWidget.tid deleted file mode 100644 index 3935dea51..000000000 --- a/editions/fr-FR/tiddlers/TranscludeWidget.tid +++ /dev/null @@ -1,73 +0,0 @@ -caption: transclude -created: 20130824142500000 -modified: 20150622210004977 -tags: Widgets -title: TranscludeWidget -type: text/vnd.tiddlywiki - -! Introduction - -Le TranscludeWidget importe dynamiquement le contenu d'un autre tiddler. - -! Attributs - -|!Attribut |!Description | -|tiddler |Le titre du tiddler à transclure (par défaut le tiddler courant) | -|field |Le nom du champ du tiddler courant (par défaut "text"<<;>> si présent, a priorité sur l'attribut index) | -|index |L'index d'une propriété d'un [[Data Tiddler|DataTiddlers]] | -|subtiddler |Titre optionnel d'un SubTiddler quand le tiddler cible est un [[plugin|Plugins]] (voir infra) | -|mode |change le mode d'analyse par défaut du texte transclu à "block" ou à "inline" | - -Le TranscludeWidget traite tout contenu avec les solutions par défaut si la cible de transclusion n'est pas complètement définie (ex<<:>> un tiddler ou un champ manquant) - -! Modes d'analyse - -TiddlyWiki analyse le texte par deux modes<<:>> - -* le mode ''inline'' reconnaît les formats de caractères comme l'emphase, les liens -* le mode ''bloc'' reconnaît tous les formats ''inline'', et le complète des formats bloc comme les tableaux, les listes et les rubriques - -Habituellement, le mode, bloc ou en ligne, est déterminé automatiquement par le widget transclude lui-même au moment de l'analyse. Ceci peut être ajusté par l'attribut `mode`. - -Par exemple, considérons un tiddler "A" avec ce contenu<<:>> - -``` - -# Article un -#<$transclude tiddler="B"/> -# Article deux -``` - -Et un tiddler "B" avec ce contenu<<:>> - -``` - -# Article un - a -# Article un - b -``` - -Le résultat donnera quelque chose comme<<:>> - -# Article un -# # Article un - a # Article un - b -# Article deux - -Cela peut être corrigé en modifiant le tiddler "A"<<:>> - -``` - -# Article un -#<$transclude tiddler="B" mode="block"/> -# Article deux -``` - -! Accès au SubTiddler - -Le transclude widget permet l'accès aux tiddlers individuels mémorisés dans un [[plugin|Plugins]]. - -L'exemple suivant transclura la version initiale d'un tiddler noyau [[$:/DefaultTiddlers]] même si il a été modifié<<:>> - -< - -'>> diff --git a/editions/fr-FR/tiddlers/Widgets_in_WikiText.tid b/editions/fr-FR/tiddlers/Widgets_in_WikiText.tid deleted file mode 100644 index 24d5d5509..000000000 --- a/editions/fr-FR/tiddlers/Widgets_in_WikiText.tid +++ /dev/null @@ -1,30 +0,0 @@ -caption: Widgets -created: 20131205160840915 -fr-title: Widgets de WikiText -modified: 20150622081957197 -tags: WikiText -title: Widgets in WikiText -type: text/vnd.tiddlywiki - -Les widgets enrichissent les fonctionnalités du WikiText. Ils ont la même syntaxe que les [[éléments HTML|HTML in WikiText]], mais leur nom de balise commence toujours par `$`. Par exemple<> - -``` -<$button message="tm-close-tiddler">Fermez Moi ! -``` - -Notez que les widgets héritent de toutes les caractéristiques du [[HTML dans WikiText|HTML in WikiText]]: - -* Les attributs des Widgets peuvent être spécifiés via<<:>> -** Des chaines non-cotées (sans aucun espace) -** Des chaines cotées par simple ou double cotes -** Des chaines cotées par des doubles cotés triplées -** Des invocations de Macro (eg `attr=<>`) -** Des transclusions (eg, `attr={{MonTiddler!!champ}}`) -* Le contenu d'un widget est analysé en mode en ligne jusqu'à ce que l'ouverture d'une balise soit suivie par deux sautsdeligne, ce qui force le mode bloc -** Le 'mode Enligne' indique que les règles d'analyse en 'mode bloc' de rubriques, tables, listes, ... ne sont pas reconnues - -Voir [[HTML dans WikiText|HTML in WikiText]] pour plus de détails. - -Les widgets disponibles inclus<<:>> - -<> diff --git a/editions/fr-FR/tiddlers/concepts/Pragma.tid b/editions/fr-FR/tiddlers/concepts/Pragma.tid new file mode 100644 index 000000000..0c15209c7 --- /dev/null +++ b/editions/fr-FR/tiddlers/concepts/Pragma.tid @@ -0,0 +1,23 @@ +caption: Pragma +created: 20150219175930000 +modified: 20220421233711464 +tags: Concepts [[WikiText Parser Modes]] +title: Pragma +type: text/vnd.tiddlywiki + +Un <<.def pragma>> est un composant spécial du <> qui permet de contrôler la façon dont la suite du texte est analysée. + +Les ''pragmas'' occupent des lignes débutant par un `\`. Ils ne peuvent être placés qu'au début d'un texte, mais des lignes vides sont autorisées entre eux. Si une ligne de pragma apparaît plus loin dans le corps du texte, il n'est pas pris en compte et apparaît comme du texte ordinaire. + +''NDT''<<:>> <<.from-version "5.2.0">> Les commentaires HTML `` sont aussi autorisés avant et entre les ''pragmas'', ce qui facilite la documentation du code <>. + +Les ''pragmas'' suivants sont disponibles<<:>> + +;`\define` +: introduit une définition de [[macro|Macros]] +;`\rules` +: permet d'ajuster l'ensemble des règles d'analyse du texte +;`\whitespace trim` ou `\whitespace notrim` +: <<.from-version "5.1.15">> contrôle si les caractères d'espacement sont retirés du début et de la fin de morceaux de texte (la valeur par défaut ''notrim'' n'entraîne aucun retrait). Ce paramètre est utile lorsque l'indentation ou les caractères d'espacement générés par les retours à la ligne perturbent la mise en forme du résultat. +;`\import ` +: <<.from-version "5.1.18">> permet d'importer des définitions de macros à partir des tiddlers sélectionnés par une expression de filtre. diff --git a/editions/fr-FR/tiddlers/WikiText.tid b/editions/fr-FR/tiddlers/concepts/WikiText.tid similarity index 60% rename from editions/fr-FR/tiddlers/WikiText.tid rename to editions/fr-FR/tiddlers/concepts/WikiText.tid index c28187212..d137514f3 100644 --- a/editions/fr-FR/tiddlers/WikiText.tid +++ b/editions/fr-FR/tiddlers/concepts/WikiText.tid @@ -1,15 +1,17 @@ caption: WikiText created: 20141016134519861 fr-title: WikiTexte -modified: 20150622111631346 +modified: 20220422222111475 tags: Concepts Reference title: WikiText type: text/vnd.tiddlywiki -Le ~WikiText est le langage de balisage de TiddlyWiki, qui permet d'écrire de manière concise et expressive une grande variété de formatages de texte, de liens hypertextes et de fonctionnalités interactives. Il permet de se concentrer sur l'écriture, sans l'interférence d'une interface complexe. Il est conçu pour être familier aux utilisateurs de [[Markdown]], tout en étant plus focalisé sur les liens et les fonctionnalités interactives. +Le WikiTexte est le langage de balisage de TiddlyWiki, qui permet d'écrire de manière concise et expressive une grande variété de formatages de texte, de liens hypertextes et de fonctionnalités interactives. Il permet de se concentrer sur l'écriture, sans l'interférence d'une interface complexe. Il est conçu pour être familier aux utilisateurs de [[Markdown]], tout en étant plus focalisé sur les liens et les fonctionnalités interactives. -Voir [[Formater du texte dans TiddlyWiki|Formatting text in TiddlyWiki]] pour une introduction au ~WikiText. +La <> permet d'insérer des balises de ~WikiTexte dans le texte du tiddler en cours d'édition. -Les syntaxes suivantes sont intégrées nativement dans ~TiddlyWiki : +Voir <> pour une introduction au ~WikiTexte. + +Les syntaxes suivantes sont intégrées nativement dans <><<:>> <> diff --git a/editions/fr-FR/tiddlers/A_Gentle_Guide_to_TiddlyWiki.tid b/editions/fr-FR/tiddlers/hellothere/A Gentle Guide to TiddlyWiki.tid similarity index 57% rename from editions/fr-FR/tiddlers/A_Gentle_Guide_to_TiddlyWiki.tid rename to editions/fr-FR/tiddlers/hellothere/A Gentle Guide to TiddlyWiki.tid index 6ab9d4a29..69a692c5d 100644 --- a/editions/fr-FR/tiddlers/A_Gentle_Guide_to_TiddlyWiki.tid +++ b/editions/fr-FR/tiddlers/hellothere/A Gentle Guide to TiddlyWiki.tid @@ -1,23 +1,25 @@ caption: Un mini-guide de TiddlyWiki created: 20150325170720682 fr-title: Un mini-guide de TiddlyWiki -modified: 20150531183440068 +modified: 20220417204641215 tags: HelloThere title: A Gentle Guide to TiddlyWiki type: text/vnd.tiddlywiki -<> est un outil incroyablement souple et polyvalent, conçu et mis au point d'une façon très différente que la plupart des logiciels. Cela peut paraître très difficile à comprendre jusqu'au moment où les premiers click le font devenir un extension directe de votre cerveau. +<> est un outil incroyablement souple et polyvalent, conçu et mis au point d'une façon très différente de la plupart des logiciels. Cela peut paraître très difficile à comprendre, jusqu'à ce qu'en un claquement de doigts, il devienne une extension directe de votre cerveau. Pour commencer par les bases, <> est une application web dédiée à la prise de notes, que vous pouvez obtenir gratuitement, stocker n'importe où, et personnaliser selon vos souhaits. Elle vous servira à conserver, organiser, et partager vos notes de manière inédite en comparaison des traitements de texte et autres outils habituels de prise de notes. -<> privilégie la non-linéarité : le contenu se structure à l'aide de déroulés, de tags, d'hyperliens, et d'autres fonctionnalités spécifiques. Vous pouvez organiser vos notes et y accéder selon votre manière de penser, sans vous sentir contraint par une structure d'organisation prédéfinie. +<> privilégie la non-linéarité<<:>> le contenu se structure à l'aide de déroulés, de tags, d'hyperliens, et d'autres fonctionnalités spécifiques. Vous pouvez organiser vos notes et y accéder selon votre manière de penser, sans vous sentir contraint par une structure d'organisation prédéfinie. Vous pouvez utiliser <> sous forme de fichier autonome, affichable et éditable depuis n'importe quel navigateur web, que vous soyez connecté ou déconnecté. Vous pouvez aussi vous en servir comme une [[application Node.js|TiddlyWiki on Node.js]], à même de synchroniser chacune de vos notes dans un fichier séparé. -Comment faire fonctionner <> chez vous ? Notre conseil est de commencer par lire les textes de présentation ci-dessous, puis de naviguer dans la [[table des matières|TableOfContents]] présente dans l'onglet //{{TableOfContents!!caption}}// de la barre latérale. Ou si vous préférez, contentez-vous de suivre [[nos instructions de démarrage|GettingStarted]] et jetez-vous à l'eau ! +Comment faire fonctionner <> chez vous ? Notre conseil est de commencer par lire les textes de présentation ci-dessous, puis de naviguer dans la <> présente dans l'onglet //{{TableOfContents!!caption}}// de la barre latérale. Ou si vous préférez, vous pouvez suivre [[nos instructions de démarrage|GettingStarted]] et vous jeter à l'eau ! <> Voir aussi<<:>> +* <> +* <> * [ext[Developer Documentation|https://tiddlywiki.com/dev/index.html]] (en anglais) diff --git a/editions/fr-FR/tiddlers/nodejs/TiddlyWiki on Node.js.tid b/editions/fr-FR/tiddlers/nodejs/TiddlyWiki on Node.js.tid index ac8e39967..99bccacf2 100644 --- a/editions/fr-FR/tiddlers/nodejs/TiddlyWiki on Node.js.tid +++ b/editions/fr-FR/tiddlers/nodejs/TiddlyWiki on Node.js.tid @@ -1,7 +1,7 @@ created: 20131129094353704 fr-title: TiddlyWiki sur Node.js -modified: 20220402105820520 -tags: Editions Configurations +modified: 20220417143845088 +tags: Platforms title: TiddlyWiki on Node.js type: text/vnd.tiddlywiki diff --git a/editions/fr-FR/tiddlers/saving/Saving on a PHP Server.tid b/editions/fr-FR/tiddlers/saving/Saving on a PHP Server.tid index 2f33879ab..549897ffc 100644 --- a/editions/fr-FR/tiddlers/saving/Saving on a PHP Server.tid +++ b/editions/fr-FR/tiddlers/saving/Saving on a PHP Server.tid @@ -1,6 +1,7 @@ +caption: Serveur PHP created: 20140111091844267 fr-title: Enregistrer sur serveur PHP -modified: 20220402105820520 +modified: 20220417143800691 tags: Saving PHP title: Saving on a PHP Server type: text/vnd.tiddlywiki diff --git a/editions/fr-FR/tiddlers/saving/Saving with TiddlyFox on Android.tid b/editions/fr-FR/tiddlers/saving/Saving with TiddlyFox on Android.tid index 40bb01fd5..bdef7362b 100644 --- a/editions/fr-FR/tiddlers/saving/Saving with TiddlyFox on Android.tid +++ b/editions/fr-FR/tiddlers/saving/Saving with TiddlyFox on Android.tid @@ -1,6 +1,6 @@ created: 20140103134551508 -fr-title: Sauvegarder avec TiddlyFox sur Android -modified: 20220402105820520 +fr-title: Enregistrer avec TiddlyFox sur Android +modified: 20220417143919185 tags: [[Saving with TiddlyFox]] title: Saving with TiddlyFox on Android type: text/vnd.tiddlywiki diff --git a/editions/fr-FR/tiddlers/saving/Saving with TiddlyFox.tid b/editions/fr-FR/tiddlers/saving/Saving with TiddlyFox.tid index d3a09d0e0..24a3e8c42 100644 --- a/editions/fr-FR/tiddlers/saving/Saving with TiddlyFox.tid +++ b/editions/fr-FR/tiddlers/saving/Saving with TiddlyFox.tid @@ -4,9 +4,9 @@ community-author: Jeremy Ruston created: 20131221085742684 delivery: Browser Extension description: Extension pour les anciennes versions de Firefox -fr-title: Sauvegarder avec TiddlyFox +fr-title: Enregistrer avec TiddlyFox method: save -modified: 20220402105820520 +modified: 20220417143943429 tags: Saving Firefox title: Saving with TiddlyFox type: text/vnd.tiddlywiki diff --git a/editions/fr-FR/tiddlers/system/$__core_ui_SideBar_Open.tid b/editions/fr-FR/tiddlers/system/$__core_ui_SideBar_Open.tid new file mode 100644 index 000000000..738b3449f --- /dev/null +++ b/editions/fr-FR/tiddlers/system/$__core_ui_SideBar_Open.tid @@ -0,0 +1,40 @@ +caption: {{$:/language/SideBar/Open/Caption}} +created: 20141119223515194 +modified: 20220417143300015 +tags: $:/tags/SideBar +title: $:/core/ui/SideBar/Open +type: text/vnd.tiddlywiki + +\whitespace trim +\define lingo-base() $:/language/CloseAll/ + +\define drop-actions() +<$action-listops $tiddler=<> $subfilter="+[insertbefore,]"/> +\end + +\define placeholder() +
+\end + +\define droppable-item(button) +\whitespace trim +<$droppable actions=<> enable=<> tag="div"> +<> +
+$button$ +
+ +\end + +
+<$list filter="[list]" history=<> storyview="pop"> +
+<$macrocall $name="droppable-item" button="""<$button message="tm-close-tiddler" tooltip={{$:/language/Buttons/Close/Hint}} aria-label={{$:/language/Buttons/Close/Caption}} class="tc-btn-invisible tc-btn-mini tc-small-gap-right">{{$:/core/images/close-button}}<$link to={{!!title}}><$transclude field="fr-title"><$view field="title"/>"""/> +
+ +<$tiddler tiddler=""> +
+<$macrocall $name="droppable-item" button="""<$button message="tm-close-all-tiddlers" class="tc-btn-invisible tc-btn-mini"><>"""/> +
+ +
diff --git a/editions/fr-FR/tiddlers/$__editions_fr-FR_util-macros.tid b/editions/fr-FR/tiddlers/system/$__editions_fr-FR_util-macros.tid similarity index 85% rename from editions/fr-FR/tiddlers/$__editions_fr-FR_util-macros.tid rename to editions/fr-FR/tiddlers/system/$__editions_fr-FR_util-macros.tid index 18c30b151..3a3f54d44 100644 --- a/editions/fr-FR/tiddlers/$__editions_fr-FR_util-macros.tid +++ b/editions/fr-FR/tiddlers/system/$__editions_fr-FR_util-macros.tid @@ -1,7 +1,5 @@ created: 20141108184809586 -creator: 127.0.0.1 -modified: 20141212092801073 -modifier: 127.0.0.1 +modified: 20220419215154259 tags: $:/tags/Macro title: $:/editions/fr-FR/util-macros type: text/vnd.tiddlywiki @@ -36,4 +34,6 @@ type: text/vnd.tiddlywiki « $text$ » \end -\define fr(cible) <$link to="$cible$"><$view tiddler="$cible$" field="fr-title">{{$cible$!!title}} +\define fr(cible) <$link to="""$cible$"""><$view tiddler="""$cible$""" field="fr-title">{{$cible$!!title}} + +
<$view field="text"/>
diff --git a/editions/fr-FR/tiddlers/$__editions_tw5.com_wikitext-macros.tid b/editions/fr-FR/tiddlers/system/$__editions_tw5.com_wikitext-macros.tid similarity index 51% rename from editions/fr-FR/tiddlers/$__editions_tw5.com_wikitext-macros.tid rename to editions/fr-FR/tiddlers/system/$__editions_tw5.com_wikitext-macros.tid index c1ae06340..31f21bef5 100644 --- a/editions/fr-FR/tiddlers/$__editions_tw5.com_wikitext-macros.tid +++ b/editions/fr-FR/tiddlers/system/$__editions_tw5.com_wikitext-macros.tid @@ -1,5 +1,5 @@ created: 20150531155638729 -modified: 20220304175111424 +modified: 20220417224935943 tags: $:/tags/Macro title: $:/editions/tw5.com/wikitext-macros type: text/vnd.tiddlywiki @@ -7,13 +7,17 @@ type: text/vnd.tiddlywiki \define wikitext-example(src)
+<$macrocall $name="copy-to-clipboard-above-right" src=<<__src__>>/> + ``` $src$ ``` Affichera ceci : +$$$text/vnd.tiddlywiki $src$ +$$$ Code HTML correspondant : @@ -26,22 +30,39 @@ $$$ \define wikitext-example-without-html(src)
+<$macrocall $name="copy-to-clipboard-above-right" src=<<__src__>>/> + ``` $src$ ``` Affichera ceci : +$$$text/vnd.tiddlywiki $src$ +$$$
\end +\define wikitext-example-table-header() ce [[WikiTexte|WikiText]]affichera ceci + +\define wikitext-example-table-row(id, code) + +<<__id__>><$codeblock code=<<__code__>>/> + +<<__code__>> + + +\end + \define tw-code(tiddler) <$codeblock language={{$tiddler$!!type}} code={{$tiddler$}}/> \end \define tw-code-link(tiddler) -[[$tiddler$]]: +[[$tiddler$]] : <> -\end \ No newline at end of file +\end + +
<$view field="text"/>
\ No newline at end of file diff --git a/editions/fr-FR/tiddlers/widgets/TranscludeWidget.tid b/editions/fr-FR/tiddlers/widgets/TranscludeWidget.tid new file mode 100644 index 000000000..4474d572d --- /dev/null +++ b/editions/fr-FR/tiddlers/widgets/TranscludeWidget.tid @@ -0,0 +1,72 @@ +caption: transclude +created: 20130824142500000 +fr-title: Widget Transclude +modified: 20220418115006451 +tags: Widgets +title: TranscludeWidget +type: text/vnd.tiddlywiki + +! Introduction + +Le Widget Transclude importe dynamiquement le contenu d'un autre tiddler. + +! Attributs + +|!Attribut |!Description | +|tiddler |Le titre du tiddler à transclure (par défaut le tiddler courant) | +|field |Le nom du champ du tiddler (par défaut "text"<<;>> si présent, a priorité sur l'attribut index) | +|index |L'index d'une propriété d'un [[Tiddler Data|DataTiddlers]] | +|subtiddler |Titre optionnel d'un sous-tiddler quand le tiddler cible est un [[plugin|Plugins]] (voir infra) | +|mode |Force le mode d'analyse du texte transclus à "block" ou à "inline" (voir infra) | + +Le Widget Transclude traite son propre contenu comme cible par défaut si la cible de transclusion n'est pas complètement définie (ex<<:>> un tiddler ou un champ manquant) + +! Modes d'analyse + +<> analyse le <> dans [[deux modes|WikiText Parser Modes]]<<:>> + +* le [[mode « en ligne »|Inline Mode WikiText]] (//inline//) reconnaît les formats de ''caractères'', tels que l'emphase, les liens +* le [[mode « bloc »|Block Mode WikiText]] (//block//) reconnaît tous les formats ''en ligne'', et ajoute les formats de ''blocs'' comme les tableaux, les listes et les titres + +Habituellement, le mode bloc ou en ligne est déduit automatiquement du mode dans lequel le Widget Transclude lui-même a été analysé. Il peut toutefois être ajusté avec l'attribut `mode`. + +Par exemple, considérons un tiddler <> avec ce contenu<<:>> + +``` +# Article un +#<$transclude tiddler="B"/> +# Article deux +``` + +Et un tiddler <> avec ce contenu<<:>> + +``` +# Article un - a +# Article un - b +``` + +Le résultat donnera quelque chose comme<<:>> + +# Article un +# # Article un - a # Article un - b +# Article deux + +Cela peut être corrigé en modifiant le tiddler <><<:>> + +``` +# Article un +#<$transclude tiddler="B" mode="block"/> +# Article deux +``` +Voir aussi ces [[autres exemples|WikiText parser mode: transclusion examples]]. + +! Accès aux sous-tiddlers + +Le Widget Transclude permet l'accès aux tiddlers individuels inclus dans un [[plugin|Plugins]]. + +L'exemple suivant transclura la version initiale du tiddler noyau [[$:/DefaultTiddlers]] même s'il a été modifié<<:>> + +< + +'>> diff --git a/editions/fr-FR/tiddlers/Block_Quotes_in_WikiText.tid b/editions/fr-FR/tiddlers/wikitext/Block Quotes in WikiText.tid similarity index 95% rename from editions/fr-FR/tiddlers/Block_Quotes_in_WikiText.tid rename to editions/fr-FR/tiddlers/wikitext/Block Quotes in WikiText.tid index 5727fb51a..d46759294 100644 --- a/editions/fr-FR/tiddlers/Block_Quotes_in_WikiText.tid +++ b/editions/fr-FR/tiddlers/wikitext/Block Quotes in WikiText.tid @@ -1,6 +1,7 @@ +caption: Citations en bloc created: 20131206154636572 -fr-title: Citations en bloc dans WikiText -modified: 20220226225218713 +fr-title: Citations en bloc en WikiTexte +modified: 20220417214816463 tags: WikiText title: Block Quotes in WikiText type: text/vnd.tiddlywiki diff --git a/editions/fr-FR/tiddlers/Code Blocks in WikiText.tid b/editions/fr-FR/tiddlers/wikitext/Code Blocks in WikiText.tid similarity index 72% rename from editions/fr-FR/tiddlers/Code Blocks in WikiText.tid rename to editions/fr-FR/tiddlers/wikitext/Code Blocks in WikiText.tid index a1c1032a7..6d9725971 100644 --- a/editions/fr-FR/tiddlers/Code Blocks in WikiText.tid +++ b/editions/fr-FR/tiddlers/wikitext/Code Blocks in WikiText.tid @@ -1,7 +1,7 @@ caption: Blocs de code created: 20141016143834720 -fr-title: Blocs de code en WikiText -modified: 20220226232420710 +fr-title: Blocs de code en WikiTexte +modified: 20220420233001221 tags: WikiText title: Code Blocks in WikiText type: text/vnd.tiddlywiki @@ -41,4 +41,4 @@ Ce texte aura une chasse fixe et ne sera pas `formaté`. ``` -Certains claviers traitent le backtick comme une [[touche morte|http://fr.wikipedia.org/wiki/Touche_morte]], le rendant difficile à taper. L'astuce est de taper 3 ` suivis d'un espace. Une autre méthode consiste à taper 6 ` d'affilée, puis de bouger le curseur en arrière trois fois pour taper ou coller le contenu du bloc. +Certains claviers traitent l'accent grave comme une [[touche morte|http://fr.wikipedia.org/wiki/Touche_morte]], le rendant difficile à saisir tout seul. L'astuce consiste à saisir 3 ` suivis d'un espace. Une autre méthode consiste à saisir 6 ` d'affilée, puis de bouger le curseur en arrière trois fois pour saisir ou coller le contenu du bloc. diff --git a/editions/fr-FR/tiddlers/Dashes in WikiText.tid b/editions/fr-FR/tiddlers/wikitext/Dashes in WikiText.tid similarity index 69% rename from editions/fr-FR/tiddlers/Dashes in WikiText.tid rename to editions/fr-FR/tiddlers/wikitext/Dashes in WikiText.tid index b7446e646..08a9e8a3e 100644 --- a/editions/fr-FR/tiddlers/Dashes in WikiText.tid +++ b/editions/fr-FR/tiddlers/wikitext/Dashes in WikiText.tid @@ -1,12 +1,12 @@ caption: Tirets created: 20141016153634338 -modified: 20141116092606603 +fr-title: Tirets en WikiTexte +modified: 20220422135611636 tags: WikiText title: Dashes in WikiText -fr-title: Tirets en WikiText type: text/vnd.tiddlywiki -Les [[tirets|Tirets]] se font avec : +En <>, les [[tirets|Tirets]] se font avec : * deux caractères "moins" `--` pour le tiret moyen ou semi-cadratin : -- * trois caractères "moins" `---` pour le tiret long ou cadratin : --- diff --git a/editions/fr-FR/tiddlers/Definitions_in_WikiText.tid b/editions/fr-FR/tiddlers/wikitext/Definitions in WikiText.tid similarity index 83% rename from editions/fr-FR/tiddlers/Definitions_in_WikiText.tid rename to editions/fr-FR/tiddlers/wikitext/Definitions in WikiText.tid index adb9208bf..cd77dc5c2 100644 --- a/editions/fr-FR/tiddlers/Definitions_in_WikiText.tid +++ b/editions/fr-FR/tiddlers/wikitext/Definitions in WikiText.tid @@ -1,7 +1,7 @@ caption: Définitions created: 20131205160424246 -fr-title: Définitions dans WikiText -modified: 20150601094201146 +fr-title: Définitions en WikiTexte +modified: 20220422000443083 tags: WikiText title: Definitions in WikiText type: text/vnd.tiddlywiki diff --git a/editions/fr-FR/tiddlers/Formatting in WikiText.tid b/editions/fr-FR/tiddlers/wikitext/Formatting in WikiText.tid similarity index 66% rename from editions/fr-FR/tiddlers/Formatting in WikiText.tid rename to editions/fr-FR/tiddlers/wikitext/Formatting in WikiText.tid index 8066ab8e8..93809dd8d 100644 --- a/editions/fr-FR/tiddlers/Formatting in WikiText.tid +++ b/editions/fr-FR/tiddlers/wikitext/Formatting in WikiText.tid @@ -1,12 +1,12 @@ caption: Formatage created: 20141016142259705 -fr-title: Mise en forme avec WikiText -modified: 20220226233811803 +fr-title: Mise en forme en WikiTexte +modified: 20220420234926288 tags: WikiText title: Formatting in WikiText type: text/vnd.tiddlywiki -Voici les formatages de caractères disponibles en [[WikiTexte|WikiText]]<<:>> +Voici les formats de caractères disponibles en <><<:>> |Format |Résultat |Icône |h |`code`
``code contenant du `code` `` |`code`
``code contenant du `code` `` |<<.icon $:/core/images/mono-line>> | @@ -17,7 +17,6 @@ Voici les formatages de caractères disponibles en [[WikiTexte|WikiText]]<<:>> |`^^exposant^^` |texte en ^^exposant^^ |<<.icon $:/core/images/superscript>> | |`,,indice,,` |texte en ,,indice,, |<<.icon $:/core/images/subscript>> | -Voir aussi<<:>> [[WikiTexte : blocs de code|Code Blocks in WikiText]] +Voir aussi<<:>> <> -; Remarque -: Si le code inclus est à la fin du code contenant, l'espace entre le ` et les `` est nécessaire. +<<.tip """Dans l'exemple de ``code contenant du `code` ``, notez qu'à la fin, l'espace entre le ` et les `` est obligatoire.""">> diff --git a/editions/fr-FR/tiddlers/Hard Linebreaks in WikiText.tid b/editions/fr-FR/tiddlers/wikitext/Hard Linebreaks in WikiText.tid similarity index 79% rename from editions/fr-FR/tiddlers/Hard Linebreaks in WikiText.tid rename to editions/fr-FR/tiddlers/wikitext/Hard Linebreaks in WikiText.tid index ed70f172e..ed9a24f16 100644 --- a/editions/fr-FR/tiddlers/Hard Linebreaks in WikiText.tid +++ b/editions/fr-FR/tiddlers/wikitext/Hard Linebreaks in WikiText.tid @@ -1,6 +1,7 @@ +caption: Fins de lignes forcées created: 20141017123553069 -fr-title: Fins de Ligne -modified: 20150623065025718 +fr-title: Fins de lignes forcées en WikiTexte +modified: 20220422010528643 tags: WikiText title: Hard Linebreaks in WikiText type: text/vnd.tiddlywiki @@ -13,7 +14,7 @@ Ce comportement n'est pas pratique pour du texte qui intègre des retours à la Un bloc de contenu délimité par trois caractères "guillemets doubles" `"""` permet d'indiquer que les fins de ligne doivent y être forcées : -<` peut être utilisée pour revenir à la ligne sans créer de nouveau paragraphe : +Cependant, dans des cas exceptionnels, la balise [[HTML|HTML in WikiText]] `
` peut être utilisée pour revenir à la ligne sans créer de nouveau paragraphe : -< +< Ceci est une deuxième ligne.
Et cela est une troisième ligne.">> ; Remarque diff --git a/editions/fr-FR/tiddlers/Headings in WikiText.tid b/editions/fr-FR/tiddlers/wikitext/Headings in WikiText.tid similarity index 77% rename from editions/fr-FR/tiddlers/Headings in WikiText.tid rename to editions/fr-FR/tiddlers/wikitext/Headings in WikiText.tid index 8395dd240..685ed66e9 100644 --- a/editions/fr-FR/tiddlers/Headings in WikiText.tid +++ b/editions/fr-FR/tiddlers/wikitext/Headings in WikiText.tid @@ -1,14 +1,14 @@ caption: Titres de rubriques created: 20141017093039992 -fr-title: Titres de rubriques dans WikiText -modified: 20220226234057628 +fr-title: Titres de rubriques en WikiTexte +modified: 20220422010744063 tags: WikiText title: Headings in WikiText type: text/vnd.tiddlywiki Un titre de rubrique est codé par un à 6 caractères <> `!` au début d'une ligne<<:>> -<> diff --git a/editions/fr-FR/tiddlers/wikitext/Horizontal Rules in WikiText.tid b/editions/fr-FR/tiddlers/wikitext/Horizontal Rules in WikiText.tid new file mode 100644 index 000000000..f420c6b56 --- /dev/null +++ b/editions/fr-FR/tiddlers/wikitext/Horizontal Rules in WikiText.tid @@ -0,0 +1,17 @@ +caption: Ligne horizontale +created: 20141017091105859 +fr-title: Lignes horizontales en WikiTexte +modified: 20220421000313978 +tags: WikiText +title: Horizontal Rules in WikiText +type: text/vnd.tiddlywiki + +Vous pouvez insérer une ligne horizontale à l'aide d'une série d'au moins trois tirets tout seuls sur une ligne<<:>> + +<> + +; Remarque +* La ligne vide avant les `---` est nécessaire pour que la ligne horizontale soit interprétée correctement, et pas comme un [[tiret|Dashes in WikiText]]. diff --git a/editions/fr-FR/tiddlers/Lists_in_WikiText.tid b/editions/fr-FR/tiddlers/wikitext/Lists in WikiText.tid similarity index 52% rename from editions/fr-FR/tiddlers/Lists_in_WikiText.tid rename to editions/fr-FR/tiddlers/wikitext/Lists in WikiText.tid index 8d56642d8..e4ac65670 100644 --- a/editions/fr-FR/tiddlers/Lists_in_WikiText.tid +++ b/editions/fr-FR/tiddlers/wikitext/Lists in WikiText.tid @@ -1,14 +1,14 @@ caption: Listes created: 20131205160257619 -fr-title: Les listes de WikiText -modified: 20150601074427119 -tags: WikiText +fr-title: Listes en WikiTexte +modified: 20220417215924211 +tags: Lists WikiText title: Lists in WikiText type: text/vnd.tiddlywiki -! Listes non-ordonnées +! Listes à puces -Vous pouvez créer des listes non ordonnées en préfixant du caractère `*`<<:>> +Vous pouvez créer des listes à puces à l'aide du caractère `*` (<<.icon $:/core/images/list-bullet>>)<<:>> < ! Listes ordonnées -Les listes ordonnées utilisent `#` au lieu de `*`: +Les listes ordonnées utilisent `#` au lieu de `*` (<<.icon $:/core/images/list-number>>)<<:>> <> -Vous pouvez combiner des listes non-ordonnées et des listes ordonnées : +Vous pouvez combiner des listes à puces et des listes ordonnées : <> -L'exemple inverse, avec les nombres en premier niveau : +L'exemple inverse, avec les nombres en premier niveau<<:>> <> <> -! Combiner listes et blocs +! Combiner listes et citations en blocs -Noter que [[les blocs avec WikiText]] peuvent être mixés aux listes. Par exemple<<:>> +Noter que les <> peuvent être combinées aux listes. Par exemple<<:>> <> ``` * Première entrée @@ -77,18 +77,18 @@ En un, vous pouvez transclure dans le paragraphe le contenu d'un autre tiddler. * Troisième ``` -En deux, vous pouvez utiliser le tag HTML "div" pour inclure un contenu multiligne. Par exemple : +En deux, vous pouvez utiliser la balise HTML "div" pour inclure un contenu multiligne. Par exemple<<:>> ``` # Étape 1 # Étape 2 # Étape 3
-Ici, le premier parmi plusieurs paragraphes. Noter que le double saut de ligne précédant ce paragraphe est pris en compte. +Ici, le premier parmi plusieurs paragraphes. Notez que le double saut de ligne précédant ce paragraphe est pris en compte. Et ici, le deuxième parmi plusieurs paragraphes.
# Étape 4 # Étape 5 # Étape 6 -``` \ No newline at end of file +``` diff --git a/editions/fr-FR/tiddlers/wikitext/Macro Calls in WikiText.tid b/editions/fr-FR/tiddlers/wikitext/Macro Calls in WikiText.tid new file mode 100644 index 000000000..de365d25c --- /dev/null +++ b/editions/fr-FR/tiddlers/wikitext/Macro Calls in WikiText.tid @@ -0,0 +1,27 @@ +caption: Appel de Macro +created: 20150220182252000 +fr-title: Appel de macro en WikiTexte +modified: 20220422225844802 +tags: WikiText +title: Macro Calls in WikiText +type: text/vnd.tiddlywiki + +Pour appeler une [[macro|Macros]], placez des `<<`doubles parenthèses en équerre`>>` autour de son nom et des valeurs de ses paramètres. ex<<:>> `<>` + +Par défaut, les paramètres sont passés dans l'ordre fixé lors de la définition de la macro. Un paramètre peut être identifié par son nom, pour plus de clarté ou pour pouvoir les utiliser dans le désordre. + +Si aucune valeur n'est fournie pour un paramètre, la valeur par défaut fixée lors de la définition de la macro est utilisée (si aucune valeur par défaut n'est définie, le paramètre est tout simplement vide). + +Chaque valeur de paramètre peut être délimitée par des `'`simples cotes`'`, des `"`doubles cotes`"`, des `"""`doubles cotes triplées`"""` ou des `[[`doubles crochets`]]`. Les doubles cotes triplées permettent de passer à peu près toutes les valeurs. Si une valeur ne contient ni espace, ni simple ou double cotes, les délimiteurs sont inutiles. + +Une [[description|Macro Call Syntax]] plus formelle de cette syntaxe est aussi disponible. + +Cette syntaxe est une forme abrégée du widget <<.wlink MacroCallWidget>>. Le widget en lui-même permet une plus grande flexibilité, incluant la capacité de [[transclure|Transclusion]] des valeurs de paramètres ou de les générer via des macros additionnelles. + +Comme les macros sont de simples [[variables|Variables]] paramétrées, des valeurs de variables peuvent être insérées en faisant appel aux mêmes techniques. + +[[Des exemples|Macro Calls in WikiText (Examples)]] et [[d'autres exemples|WikiText parser mode: macro examples]] sont à votre disposition. + +!! Paramètres nommés ou anonymes + +En <>, nommer les paramètres lors de l'appel aux macros est toujours le choix le plus sûr par rapport à l'utilisation de valeurs anonymes. Ne pas utiliser le nom des paramètres peut avoir des effets indésirables perturbants. Imaginez par exemple que le premier paramètre d'une macro serve à spécifier le nom d'un [[tiddler d'état|StateMechanism]], et que le second soit destiné à préciser un [[tiddler gabarit|Transclusion with Templates]]. Si vous deviez par mégarde oublier de définir la valeur du premier paramètre ou vous tromper dans l'ordre des paramètres, au prochain appel de la macro (qui pourrait même avoir lieu en prévisualisant votre tiddler) votre gabarit pourrait être malencontreusement écrasé avec le contenu destiné au tiddler d'état. diff --git a/editions/fr-FR/tiddlers/Paragraphs in WikiText.tid b/editions/fr-FR/tiddlers/wikitext/Paragraphs in WikiText.tid similarity index 54% rename from editions/fr-FR/tiddlers/Paragraphs in WikiText.tid rename to editions/fr-FR/tiddlers/wikitext/Paragraphs in WikiText.tid index 0c86cf584..dc16f4704 100644 --- a/editions/fr-FR/tiddlers/Paragraphs in WikiText.tid +++ b/editions/fr-FR/tiddlers/wikitext/Paragraphs in WikiText.tid @@ -1,24 +1,25 @@ +caption: Paragraphes created: 20141017122121853 -modified: 20141116092111983 +fr-title: Paragraphes en WikiTexte +modified: 20220422011108016 tags: WikiText title: Paragraphs in WikiText -fr-title: Paragraphes type: text/vnd.tiddlywiki -Pour marquer la fin d'un paragraphe, il faut appuyer deux fois sur la touche `Entrée` pour créer deux retours à la ligne : +Pour marquer la fin d'un paragraphe, il faut appuyer deux fois sur la touche `Entrée` pour créer deux retours à la ligne<<:>> -<> ; Remarque * Peu importe le nombre de retours à la lignes supplémentaires, l'espacement entre les paragraphes reste le même. -Au sein d'un paragraphe, un retour à la ligne seul est ignoré : +Au sein d'un paragraphe, un retour à la ligne seul est ignoré<<:>> -<> -Pour les situations où ce comportement n'est pas pratique, voir aussi : [[WikiTexte : Fin de ligne|Hard Linebreaks in WikiText]]. +Pour les situations où ce comportement n'est pas pratique, voir aussi<<:>> <>. diff --git a/editions/fr-FR/tiddlers/wikitext/Tables in WikiText.tid b/editions/fr-FR/tiddlers/wikitext/Tables in WikiText.tid new file mode 100644 index 000000000..5a25cc54d --- /dev/null +++ b/editions/fr-FR/tiddlers/wikitext/Tables in WikiText.tid @@ -0,0 +1,69 @@ +caption: Tableaux +created: 20130914132100000 +fr-title: Tableaux en WikiTexte +modified: 20220422134839855 +tags: WikiText +title: Tables in WikiText +type: text/vnd.tiddlywiki + +! Concepts de base + +TiddlyWiki5 forme les tableaux au moyen du signe barre verticale `|`, de cette façon<<:>> + +``` +|!Cell1 |!Cell2 | +|Cell3 |Cell4 | +``` + +Le point d'exclamation marque les cellules d'entête<<:>> + +|!Cell1 |!Cell2 | +|Cell3 |Cell4 | + +! L'alignement horizontal + +L’alignement horizontal des cellules du tableau est contrôlé par l'insertion d'un espace avant/après le contenu de la cellule. Par exemple: + +<> + +! L'alignement vertical + +L’alignement vertical des cellules du tableau est contrôlé par l'insertion, comme premier caractère de la cellule, soit d'un `^` pour un alignement en haut ou un `,` pour un alignement en bas. La combinaison avec l'alignement horizontal reste valable. + +Exemple<<:>> + +<:: |^haut gauche |^ haut centré |^ haut droit| +| ::
::
:: |milieu gauche | milieu centré | milieu droit| +| ::
::|,bas gauche |, bas centré |, bas droit|""">> + +Si vous voulez afficher un `^`ou un `,` comme premier caractère d'une cellule alignée à gauche, vous devez utiliser la technique de l'<>. Voir, à ce sujet<<:>> <>. + +| `^` | &#94; | +| `,` | &#44; | + +! La fusion des cellules + +Pour fusionner le contenu de la cellule située au dessus utiliser `~`. Pour fusionner avec celle de gauche `<` et `>` pour celle de droite. Par exemple<<:>> + +<|Cell9 |Cell10 |Cell11 |""">> + +! Classes de tableau, légendes, en-têtes et pieds de tableau + +Des classes CSS, des légendes, des en-têtes et pieds de tableau peuvent être spécifiés comme pseudo-lignes spéciales<<:>> + +<> diff --git a/editions/fr-FR/tiddlers/wikitext/Transclusion and Substitution.tid b/editions/fr-FR/tiddlers/wikitext/Transclusion and Substitution.tid new file mode 100644 index 000000000..35b244260 --- /dev/null +++ b/editions/fr-FR/tiddlers/wikitext/Transclusion and Substitution.tid @@ -0,0 +1,61 @@ +created: 20141018090608643 +fr-title: Transclusion et substitution +modified: 20220419002739469 +tags: WikiText +title: Transclusion and Substitution +type: text/vnd.tiddlywiki + +La puissance du <> vient de sa capacité à utiliser le contenu d'un tiddler dans un autre. Cette capacité prend plusieurs formes qu'on peut facilement confondre. + +La principale différence réside entre la transclusion et la substitution de texte<<:>> + +* Une transclusion est remplacée dynamiquement avec l'une ou l'autre de ces valeurs<<:>> +** un champ de tiddler +** une variable +* Une substitution de texte est réalisée dans le texte de la définition de la macro avant son utilisation. + +! Transclusion de champ de tiddler + +<> décrit les bases de la transclusion. Par exemple<<:>> + +``` +{{MonTiddler}} +``` + +Comme décrit dans <>, vous pouvez aussi transclure des valeurs de champs de tiddlers dans des attributs de balises HTML et de widgets. Par exemple<<:>> + +``` +<$text text={{MonTiddler}}/> +``` + +Comme décrit dans <>, vous pouvez aussi transclure des valeurs de champs de tiddlers dans des opérandes de filtres. Par exemple<<:>> + +``` +{{{ [tag{TiddlerContenantMonTag}] }}} +``` + +! Transclusion de variable/macro + +Les définitions de variables qui comportent des paramètres ou des substitutions sont nommées des <>. Vous pouvez transclure la valeur d'une variable/macro grâce à la syntaxe<<:>> + +``` +<> +``` + +Comme décrit dans <>, vous pouvez aussi transclure des valeurs de variables dans des attributs de balises HTML et de widgets. Par exemple<<:>> + +``` +<$text text=<>/> +``` + +Comme décrit dans <>, vous pouvez aussi transclure des valeurs de variables dans des opérandes de filtres. Par exemple<<:>> + +``` +{{{ [tag] }}} +``` + +! Substitution de texte + +La substitution de texte a lieu quand la valeur d'une macro/variable est utilisée. Ce mécanisme est décrit dans <>. + +La différence principale entre la substitution et la transclusion est que la substitution a lieu ''avant'' l'analyse du <>, ce qui signifie que vous pouvez utiliser la substitution pour construire des assemblages de <>. Au contraire, les transclusions sont traitées indépendamment et ne peuvent pas être combinées avec du texte adjacent pour construire des assemblages de <>. diff --git a/editions/fr-FR/tiddlers/Transclusion_in_WikiText.tid b/editions/fr-FR/tiddlers/wikitext/Transclusion in WikiText.tid similarity index 57% rename from editions/fr-FR/tiddlers/Transclusion_in_WikiText.tid rename to editions/fr-FR/tiddlers/wikitext/Transclusion in WikiText.tid index 967b9b1cd..6306f5ebe 100644 --- a/editions/fr-FR/tiddlers/Transclusion_in_WikiText.tid +++ b/editions/fr-FR/tiddlers/wikitext/Transclusion in WikiText.tid @@ -1,31 +1,31 @@ caption: Transclusion created: 20131205160146648 -fr-title: Transclusion grâce à WikiText -modified: 20150622084011069 +fr-title: Transclusion en WikiTexte +modified: 20220417223717492 tags: WikiText title: Transclusion in WikiText type: text/vnd.tiddlywiki ! Introduction -Vous pouvez insérer le contenu d'un tiddler dans un autre en utilisant les marques de transclusion : +Vous pouvez insérer le contenu d'un tiddler dans un autre en utilisant les marques de <><<:>> * `{{MonTiddler}}` transclut un seul tiddler * `{{MonTiddler||TitreDuGabarit}}` affiche un tiddler via un format spécifié par un [[Gabarit de Tiddler|TemplateTiddlers]] -* `{{||TitreDuGabarit}}` affiche le [[Tiddler en cours|currentTiddler Variable]] par le gabarit spécifié sans l'altérer +* `{{||TitreDuGabarit}}` affiche le gabarit spécifié sans altérer le [[Tiddler en cours|currentTiddler Variable]] !! Transclure les Références de Texte -Vous pouvez aussi utiliser une [[Référence de Texte|TextReference]] à la place du titre d'un tiddler : +Vous pouvez aussi utiliser une [[Référence de Texte|TextReference]] à la place du titre d'un tiddler<<:>> * `{{MonTiddler!!champ}}` transclut un champ spécifique d'un tiddler quelconque * `{{!!champ}}` transclut le champ spécifique du tiddler courant * `{{MonTiddler##index}}` transclut une propriété indexée spécifique d'un [[Tiddler Data|DataTiddlers]] * `{{##index}}` transclut une propriété indéxée spécifique du [[Tiddler Data|DataTiddlers]] courant -!! Transclusion Filtrées +!! Transclusion Filtrée -Une syntaxe similaire peut être mise en œuvre pour transclure une liste de tiddler selon des critères particuliers définis par un [[Filtre|Filters]]  : +Une syntaxe similaire peut être mise en œuvre pour transclure une liste de tiddlers définie par un [[filtre|Filters]]<<:>> ``` {{{ [tag[mécanisme]] }}} @@ -34,7 +34,7 @@ Une syntaxe similaire peut être mise en œuvre pour transclure une liste de tid ! Widgets Générés -La syntaxe de transclusion de [[WikiTexte|WikiText]] génère un TiddlerWidget enveloppé dans un TranscludeWidget. Par exemple, `{{MonTiddler||MonGabarit!!monChamp}}` génère cette paire de widgets: +La syntaxe de transclusion en <> génère un <> enveloppé dans un <>. Par exemple, `{{MonTiddler||MonGabarit!!monChamp}}` génère cette paire de widgets<<:>> {{MonTiddler||MonGabarit!!monChamp}} @@ -46,8 +46,9 @@ La syntaxe de transclusion de [[WikiTexte|WikiText]] génère un TiddlerWidget e Voir Aussi : -* [[Transclusion, Utilisation basique|Transclusion Basic Usage]] -* [[Transclusion par Gabarits|Transclusion with Templates]] -* [[Tiddlers Gabarits|TemplateTiddlers]] -* [[Widget Transclude|TranscludeWidget]] -* [[Transclusion and Substitution]] +* <> +* <> +* <> +* <> +* <> +* <> \ No newline at end of file diff --git a/editions/fr-FR/tiddlers/Transclusion_with_Templates.tid b/editions/fr-FR/tiddlers/wikitext/Transclusion with Templates.tid similarity index 98% rename from editions/fr-FR/tiddlers/Transclusion_with_Templates.tid rename to editions/fr-FR/tiddlers/wikitext/Transclusion with Templates.tid index 4905111ab..90d9ea017 100644 --- a/editions/fr-FR/tiddlers/Transclusion_with_Templates.tid +++ b/editions/fr-FR/tiddlers/wikitext/Transclusion with Templates.tid @@ -1,6 +1,7 @@ +caption: Par Gabarits created: 20141129210304238 fr-title: Transclusion par gabarits -modified: 20150624091314988 +modified: 20220417224336239 tags: [[Transclusion in WikiText]] title: Transclusion with Templates type: text/vnd.tiddlywiki diff --git a/editions/fr-FR/tiddlers/Typed_Blocks_in_WikiText.tid b/editions/fr-FR/tiddlers/wikitext/Typed Blocks in WikiText.tid similarity index 65% rename from editions/fr-FR/tiddlers/Typed_Blocks_in_WikiText.tid rename to editions/fr-FR/tiddlers/wikitext/Typed Blocks in WikiText.tid index 021897924..97ebcc07e 100644 --- a/editions/fr-FR/tiddlers/Typed_Blocks_in_WikiText.tid +++ b/editions/fr-FR/tiddlers/wikitext/Typed Blocks in WikiText.tid @@ -1,12 +1,12 @@ caption: Blocs typés created: 20131205161051792 -fr-title: Les blocs typés avec WikiText -modified: 20150601071506502 +fr-title: Blocs typés en WikiTexte +modified: 20220422133134883 tags: WikiText title: Typed Blocks in WikiText type: text/vnd.tiddlywiki -WikiText peut inclure des blocs de textes qui seront renvoyés avec un contenu lié à leur  ContentType, comme cela : +Le <> peut inclure des blocs de texte qui seront interprétés selon le type de leur contenu, aussi appelé <>. Ces blocs sont déclarés ainsi<<:>> ``` $$$image/svg+xml @@ -15,8 +15,7 @@ $$$image/svg+xml $$$ ``` - -Ce qui affichera :: +affichera ceci<<:>> $$$image/svg+xml @@ -24,7 +23,8 @@ $$$image/svg+xml $$$ -Il est aussi possible d'abréger la déclaration du ContentType par son extension. Exemple : + +Il est aussi possible de remplacer la déclaration du type de contenu par l'extension de fichier correspondante. Exemple<<:>> ``` $$$.svg @@ -34,7 +34,7 @@ $$$.svg $$$ ``` -Ce qui affichera : +affichera ceci<<:>> $$$.svg @@ -42,7 +42,7 @@ $$$.svg $$$ -Les types inconnus s'afficheront comme du texte brut : +Les types inconnus s'afficheront comme du texte brut<<:>> ``` $$$text/unknown @@ -50,30 +50,35 @@ Du texte brut, qui ne sera pas //mis en forme//. $$$ ``` -Ce qui affichera : +affichera ceci<<:>> $$$text/unknown Du texte brut, qui ne sera pas //mis en forme//. $$$ -Un rendu spécifique peut-être indiqué, déterminant l'affichage d'un rendu de texte particulier. Par exemple : +Un format de rendu peut être indiqué en complément, qui sélectionnera un format différent pour le résultat. Par exemple<<:>> ``` $$$text/vnd.tiddlywiki>text/html Ceci est un ''peu'' de wikitext $$$ +``` +et +``` $$$text/vnd.tiddlywiki>text/plain Ceci est un ''peu'' de wikitext $$$ ``` -Afficheront respectivement : +afficheront respectivement<<:>> $$$text/vnd.tiddlywiki>text/html Ceci est un ''peu'' de wikitext $$$ +et<<:>> + $$$text/vnd.tiddlywiki>text/plain Ceci est un ''peu'' de wikitext $$$ \ No newline at end of file diff --git a/editions/fr-FR/tiddlers/Variables_in_WikiText.tid b/editions/fr-FR/tiddlers/wikitext/Variables in WikiText.tid similarity index 61% rename from editions/fr-FR/tiddlers/Variables_in_WikiText.tid rename to editions/fr-FR/tiddlers/wikitext/Variables in WikiText.tid index d2747d61d..fe950e486 100644 --- a/editions/fr-FR/tiddlers/Variables_in_WikiText.tid +++ b/editions/fr-FR/tiddlers/wikitext/Variables in WikiText.tid @@ -1,7 +1,7 @@ caption: Variables created: 20141002141231992 -fr-title: Les variables dans WikiTexte -modified: 20150619174321458 +fr-title: Les variables en WikiTexte +modified: 20220422140804855 tags: WikiText title: Variables in WikiText type: text/vnd.tiddlywiki @@ -10,10 +10,9 @@ Voir aussi une [[introduction au concept de variables|Variables]]. Pour transclure la valeur d'une variable, utilisez la [[syntaxe d'appel de macro|Macro Calls in WikiText]] sans paramètres. Vous pouvez aussi utiliser un widget <<.wlink MacroCallWidget>>. -Le code d'une [[macro|Macros]] snippet peut contenir une [[zoneréservée|Macro Definitions in WikiText]] `$(name)$` où la valeur d'une variable sera substituée à son nom. +Le ''code de définition'' d'une [[macro|Macros]] peut contenir une [[ZoneRéservée|Macro Definitions in WikiText]] `$(nom)$` où la valeur d'une variable remplacera son nom. -La valeur d'une variable peut être utilisée comme [[paramètre de filtre|Filter Parameter]], ou comme [[attribut de widget|Widgets in WikiText]]. -Ce dernier prenant en charge les paramètres de macro. +La valeur d'une variable peut être utilisée comme [[paramètre de filtre|Filter Parameter]], ou comme [[attribut de widget|Widgets in WikiText]]. Ce dernier cas prend en charge les paramètres de macro. !! Exemple<<:>> définition d'une variable @@ -22,9 +21,9 @@ eg="""<$set name=animal value=zèbre> <> """/> -!! Exemple: définition d'une macro +!! Exemple<<:>> définition d'une macro -Le pragma `\define` çi-après [[définit une macro|Macros in WikiText]] nommée <<.var tags>>. La macro renvoie la valeur du champ <<.field tags>> du tiddler, et peut être appelé partout dans le tiddler (ou dans tout tiddler qui l'[[importe|ImportVariablesWidget]]). +Le pragma `\define` ci-dessous [[définit une macro|Macros in WikiText]] nommée <<.var tags-of-current-tiddler>>. La macro renvoie la valeur du champ <<.field tags>> du tiddler, et peut être appelé partout dans le tiddler (ou dans tout tiddler qui l'[[importe|ImportVariablesWidget]]). <$importvariables filter="$:/editions/tw5.com/macro-examples/tags-of-current-tiddler"> <$codeblock code={{$:/editions/tw5.com/macro-examples/tags-of-current-tiddler}}/> @@ -33,6 +32,6 @@ Le pragma `\define` çi-après [[définit une macro|Macros in WikiText]] nommée !! Exemple<<:>> utilisation de variables comme paramètres de filtre -Cet exemple utilise l'[[opérateur|Filter Operators]] <<.olink backlinks>> pour lister tous les tiddlers liés à celui-çi. +Cet exemple utilise l'[[opérateur|Filter Operators]] <<.olink backlinks>> pour lister tous les tiddlers contenant des liens vers celui-ci. <$macrocall $name=".example" n="3" eg="""<backlinks[]]">>"""/> diff --git a/editions/fr-FR/tiddlers/wikitext/Widgets in WikiText.tid b/editions/fr-FR/tiddlers/wikitext/Widgets in WikiText.tid new file mode 100644 index 000000000..759a02a0c --- /dev/null +++ b/editions/fr-FR/tiddlers/wikitext/Widgets in WikiText.tid @@ -0,0 +1,30 @@ +caption: Widgets +created: 20131205160840915 +fr-title: Widgets en WikiTexte +modified: 20220422141848039 +tags: WikiText +title: Widgets in WikiText +type: text/vnd.tiddlywiki + +Les widgets enrichissent les fonctionnalités du <>. Ils ont la même syntaxe que les [[éléments HTML|HTML in WikiText]], mais leur nom de balise commence toujours par `$`. Par exemple<<:>> + +``` +<$button message="tm-close-tiddler">Fermez Moi ! +``` + +Notez que les widgets héritent de toutes les caractéristiques du <><<:>> + +* Les attributs des widgets peuvent être spécifiés via<<:>> +** Des chaînes non-cotées (si elles ne contiennent pas d'espace) +** Des chaînes cotées par simple `'` ou double `"` cotes +** Des chaînes cotées par des doubles cotés triplées `"""` +** Des appels de Macro (c-à-d `attr=<>`) +** Des transclusions (eg, `attr={{MonTiddler!!champ}}`) +* Le contenu d'un widget est [[analysé|WikiText Parser Modes]] en [[mode en ligne|Inline Mode WikiText]] sauf si la balise d'ouverture est suivie par deux sauts de ligne, ce qui force le [[mode bloc|Block Mode WikiText]]. +** Le [[mode en ligne|Inline Mode WikiText]] signifie que les règles d'analyse en [[mode bloc|Block Mode WikiText]] comme les rubriques, les tables, les listes, ... ne sont pas reconnues. + +Voir <> pour plus de détails. + +Les widgets disponibles incluent<<:>> + +<> diff --git a/editions/fr-FR/tiddlers/wikitext/parser/Block Mode WikiText (Examples).tid b/editions/fr-FR/tiddlers/wikitext/parser/Block Mode WikiText (Examples).tid new file mode 100644 index 000000000..5f1bc8ba1 --- /dev/null +++ b/editions/fr-FR/tiddlers/wikitext/parser/Block Mode WikiText (Examples).tid @@ -0,0 +1,52 @@ +created: 20220115152811251 +fr-title: WikiTexte en mode bloc (exemples) +modified: 20220422215120630 +tags: [[Block Mode WikiText]] +title: Block Mode WikiText (Examples) +type: text/vnd.tiddlywiki + +Les [[paragraphes|Paragraphs in WikiText]] sont la forme la plus courante de <>. Il est important de comprendre qu'ils ne se terminent pas avant d'avoir rencontré une ligne vide. Dès qu'un paragraphe commence, l'interpréteur passe en ''mode en ligne''. Jusqu'à ce que cette ligne vide soit rencontrée, les syntaxes de <> en ''mode bloc'' sont ignorées<<:>> + +<<< +<ignorée entre le début +et la fin du paragraphe (c-à-d la prochaine ligne vide). +Par exemple : +* Les listes sont ignorées +* Tout comme cette ligne horizontale<<:>> +--- +|les tableaux|sont|ignorés| +! les titres sont ignorés +<<< +les citations multi-lignes sont ignorées +<<< +'>> +<<< + +Pour que le <> en mode bloc soit reconnu, il faut insérer une ligne vide après la ligne <>. La ligne vide constituera une fin de paragraphe, et l'interpréteur commencera à reconnaître la syntaxe du mode bloc à nouveau. Comme ceci<<:>> + +<<< +<ignorée entre le début +et la fin du paragraphe (c-à-d la prochaine ligne vide). +Par exemple, voici une ligne vide : + +* grâce à la ligne vide ci-dessus, +* les listes fonctionnent +* Tout comme cette ligne horizontale<<:>> +--- +|!les tableaux|!fonctionnent| +|cellule 1| cellule 2| +! les titres fonctionnent +<<< +les citations multi-lignes fonctionnent +<<< +; Terme +: Définition de ce terme +Un autre paragraphe peut commencer ici, mais il ne finira pas avant une ligne vide. +'>> +<<< + +À part le paragraphe, tous les exemples de <> en mode bloc ci-dessus sont écrits une ligne après l'autre sans ligne vide intermédiaire. Ces types de <> n'ont pas besoin de ligne vide pour en marquer la fin. \ No newline at end of file diff --git a/editions/fr-FR/tiddlers/wikitext/parser/Block Mode WikiText.tid b/editions/fr-FR/tiddlers/wikitext/parser/Block Mode WikiText.tid new file mode 100644 index 000000000..005874a68 --- /dev/null +++ b/editions/fr-FR/tiddlers/wikitext/parser/Block Mode WikiText.tid @@ -0,0 +1,37 @@ +caption: analyse en mode bloc +created: 20220110234234616 +fr-title: WikiTexte en mode bloc +modified: 20220422210106782 +tags: [[WikiText Parser Modes]] +title: Block Mode WikiText +type: text/vnd.tiddlywiki + +Une partie du <> n'est reconnue que quand l'interpréteur est en mode <>. + +Caractéristiques communes de ce <> en mode bloc<<:>> + +* Il occupe au moins une ligne entière. +* Le marqueur de fermeture doit être situé en fin de ligne (dans certains cas la fin de ligne <<.em est>> le marqueur de fermeture) + +|!~WikiTexte|!Marqueurs| +|<> |Les citations multi-lignes sont encadrées par le texte `<<<` tout seul sur sa ligne<<;>> les citations mono-ligne sont aussi possibles.| +|<>|Les blocs de code sont encadrés par le texte ``` tout seul sur sa ligne.| +|<>|Chaque terme est sur sa propre ligne, et chaque définition est sur sa propre ligne.| +|<>|Encadrées par le texte `"""` tout seul sur sa ligne.| +|<>|Lignes complètes commençant par `!`.| +|<>|Une ligne ne contenant que le texte `---`.| +|<>|Chaque élément de liste est sur sa propre ligne.| +|<>|Tout autre texte que le marqueur de début d'une des autres expressions <> en mode bloc constitue le début d'un paragraphe. Même un marqueur de début d'expression <> en mode en ligne constitue le début d'un paragraphe. L’interpréteur inclut toutes les lignes suivantes dans le paragraphe jusqu'à rencontrer une ligne vide.| +|<>|Encadrés par des lignes commençant par `@@`.| +|<>|Chaque ligne du tableau est une ligne de texte qui commence et se termine par `|`.| +|<>|Encadrés par des lignes commençant par `$$`.| + +Les expressions <> ci-dessus ne sont reconnues qu'en ''mode bloc''. Par contre, le texte <<.em contenu>> à l'intérieur sera interprété en ''mode en ligne'' (les <> et les <> sont les deux expressions pour lesquelles l'interpréteur poursuit l'analyse en ''mode bloc''). L'analyse en ''mode en ligne'' peut amener l'interpréteur à rencontrer un contenu qui le fait [[basculer en mode bloc|WikiText parser mode transitions]]. + +À la fin de la dernière ligne du bloc, l'interpréteur retourne en ''mode bloc''. + +<<.tip 'Note: Les [[fins de ligne forcées|Hard Linebreaks in WikiText]] nécessitent une ligne vide supplémentaire après le `"""` final pour que l'interpréteur retourne en mode bloc.'>> + +Si le marqueur de début d'une des expressions de bloc ci-dessus est rencontré alors que l'interpréteur est en ''mode en ligne'', il sera //ignoré// et apparaîtra tel quel dans le résultat. + +[[Exemples|Block Mode WikiText (Examples)]] \ No newline at end of file diff --git a/editions/fr-FR/tiddlers/wikitext/parser/Inline Mode WikiText.tid b/editions/fr-FR/tiddlers/wikitext/parser/Inline Mode WikiText.tid new file mode 100644 index 000000000..d73a3991d --- /dev/null +++ b/editions/fr-FR/tiddlers/wikitext/parser/Inline Mode WikiText.tid @@ -0,0 +1,28 @@ +caption: mode d'analyse en ligne +created: 20220111000108618 +fr-title: WikiTexte en mode « en ligne » +modified: 20220421231003677 +tags: [[WikiText Parser Modes]] +title: Inline Mode WikiText +type: text/vnd.tiddlywiki + +Une partie du <> n'est reconnue que quand l'interpréteur est en mode <>. + +Ces expressions en <> n'ont pas besoin d'occuper toute une ligne de texte. Elles n'ont pas besoin non plus de tenir en entier sur une seule ligne, mais <<.em peuvent>> couvrir une ligne complète. De ce fait, plusieurs de ces expressions peuvent apparaître au sein de la même ligne. En d'autres termes, les fins de lignes ne sont pas prises en compte quand l'interpréteur cherche à trouver le début et la fin de ces expressions <>. Quand l'interpréteur est en mode <>, il reconnaît les syntaxes des expressions <> suivantes<<:>> + +* <> +* <> +* <> +* <> +* <> +* <> +* <> (version mono-ligne seulement) +* <> +* <> +* <> + +<<.tip """Un [[appel de macro|Macro Calls in WikiText]] ou une [[transclusion en WikiTexte|Transclusion in WikiText]] sont reconnus en ''mode bloc'' si l'appel de macro ou la transclusion occupent une ligne complète.""">> + +<<.tip """Techniquement, les autres expressions <> en ''mode en ligne'' ne sont reconnues <<.em que>> quand l'interpréteur est en ''mode en ligne''. Toutefois, leurs balises d'ouverture vont déclencher le début d'un [[paragraphe|Paragraphs in WikiText]], ce qui va automatiquement faire basculer l'interpréteur en ''mode en ligne''. De ce fait, en pratique il est aussi simple de considérer que ces expressions sont reconnues par l'interpréteur aussi bien en ''mode bloc'' qu'en ''mode en ligne''.""">> + +Pendant le traitement du texte //inclus// dans certaines de ces expressions <>, l'interpréteur [[ignorera les syntaxes WikiTexte|Places where the parser ignores WikiText]]. Mais pour le reste de ces expressions <>, l'interpréteur continuera l'analyse en ''mode en ligne'' du texte //inclus//, ce qui peut l'amener à rencontrer un contenu qui le fait [[basculer en mode bloc|WikiText parser mode transitions]]. diff --git a/editions/fr-FR/tiddlers/wikitext/parser/Places where the parser ignores WikiText.tid b/editions/fr-FR/tiddlers/wikitext/parser/Places where the parser ignores WikiText.tid new file mode 100644 index 000000000..aafe67452 --- /dev/null +++ b/editions/fr-FR/tiddlers/wikitext/parser/Places where the parser ignores WikiText.tid @@ -0,0 +1,14 @@ +caption: mode d'analyse ignoré +created: 20220111000929700 +fr-title: Endroits où le WikiTexte est ignoré +modified: 20220421200127071 +tags: [[WikiText Parser Modes]] +title: Places where the parser ignores WikiText +type: text/vnd.tiddlywiki + +Le texte contenu dans les constructions suivantes est survolé par l'interpréteur sans analyse du <><<:>> + +|<>|L'une des fonctions principales des blocs de code est de supprimer l'analyse du <>. Dès que le bloc de code commence l'interpréteur arrête l'analyse du <> jusqu'à la fin du bloc.| +|<>|`[[img|texte littéral de lien image]]` - le texte inclus entre crochets est ignoré, ce qui signifie par exemple que ni les [[transclusions|Transclusion in WikiText]] ni les [[appels de macros|Macro Calls in WikiText]] ne peuvent être utilisés pour construire le lien dynamiquement.| +|<>|`[[cible littérale du lien|intitulé littéral du lien]]` - le texte inclus entre crochets est ignoré, ce qui signifie par exemple que ni les [[transclusions|Transclusion in WikiText]] ni les [[appels de macros|Macro Calls in WikiText]] ne peuvent être utilisés pour construire la cible ou l'intitulé du lien dynamiquement.| +|<>|`<>" {{transclusion-ignorée}}>>` - pour traiter le texte inclus dans un appel de macro, l'interpréteur suit des règles particulières de détection des arguments de macros. Ces règles ne permettent pas d'analyser le <>, mais après la substitution des arguments dans la définition de la macro, le résultat est analysé à l'aide des [[règles normales|WikiText Parser Modes]]. Le <> sera donc interprété ultérieurement dans le résultat.| diff --git a/editions/fr-FR/tiddlers/wikitext/parser/WikiText Parser Modes.tid b/editions/fr-FR/tiddlers/wikitext/parser/WikiText Parser Modes.tid new file mode 100644 index 000000000..b4302e9d1 --- /dev/null +++ b/editions/fr-FR/tiddlers/wikitext/parser/WikiText Parser Modes.tid @@ -0,0 +1,17 @@ +created: 20220110233944530 +fr-title: Modes d'analyse du WikiTexte +modified: 20220419233657896 +tags: WikiText +title: WikiText Parser Modes +type: text/vnd.tiddlywiki + +Pour afficher les tiddlers (généralement le champ <<.field text>>), l'interpréteur de <> lit et analyse le contenu, et applique les règles de conversion du <>. L'interpréteur a trois modes d'analyse<<:>> + +* Le ''mode pragma'' - l'analyseur ne reconnaît que la syntaxe [[WikiTexte du mode pragma|Pragma]] +* Le ''mode bloc'' - l'analyseur ne reconnaît que la syntaxe [[WikiTexte du mode bloc|Block Mode WikiText]] +* Le ''mode en ligne'' - l'analyseur ne reconnaît que la syntaxe [[WikiTexte du mode en ligne|Inline Mode WikiText]] + +L'interpréteur [[bascule entre ces modes d'analyse|WikiText parser mode transitions]] selon le texte qu'il rencontre. De plus, il existe des [[emplacements où le WikiTexte est ignoré|Places where the parser ignores WikiText]]. + +<<.tip """Le concept de modes <> et <> existe aussi pour les éléments HTML standards. En HTML, ces [[deux modes de mise en page|https://www.w3schools.com/html/html_blocks.asp]] ,,(en anglais),, déterminent si le résultat est disposé sur une même ligne ou pas. +

La majorité du <> correspond aux [[éléments de bloc HTML|https://developer.mozilla.org/fr-FR/docs/Web/HTML/Block-level_elements]], et la majorité du <> correspond aux [[éléments en ligne HTML|https://developer.mozilla.org/fr-FR/docs/Web/HTML/Inline_elements]]. Néanmoins, en ~WikiTexte les deux modes sont aussi importants pour déterminer la syntaxe utilisable que pour déterminer la présentation du résultat.

""">> \ No newline at end of file diff --git a/editions/fr-FR/tiddlers/wikitext/parser/WikiText parser mode HTML examples.tid b/editions/fr-FR/tiddlers/wikitext/parser/WikiText parser mode HTML examples.tid new file mode 100644 index 000000000..b02c4b747 --- /dev/null +++ b/editions/fr-FR/tiddlers/wikitext/parser/WikiText parser mode HTML examples.tid @@ -0,0 +1,73 @@ +created: 20220122153235162 +fr-title: Modes d'analyse du WikiTexte : exemples de HTML +modified: 20220422205843467 +tags: [[WikiText parser mode transitions]] +title: WikiText parser mode: HTML examples +type: text/vnd.tiddlywiki + +< + +* La ligne vide après la balise ouvrante permet +* aux marqueurs de mode bloc (comme cette liste) +* d'être reconnus +
+">> + +--- + +L'astuce de la ligne vide fonctionne aussi au sein des syntaxes reconnues seulement en mode en ligne (comme <>)<<:>> + +< + +* premier élément de la liste +* deuxième élément de la liste +
''">> + +--- + +< +* Une balise ouvrante non suivie d'une ligne vide +* signifie que la syntaxe en mode bloc (cette liste) +* ne sera PAS reconnue. + +Les paragraphes ne sont reconnus qu'en mode bloc. Même avec des lignes vides, aucun nouveau paragraphe n'est reconnu. + +Ceci n'est pas un nouveau paragraphe non plus. +">> + +--- + +Les <> sont des éléments pour lesquels l'astuce de la ligne vide ne fonctionne pas. Pour que l'interpréteur reconnaisse une ligne de tableau, elle doit remplir exactement une ligne de texte. + +Ajouter une ligne blanche après une balise ouvrante au sein d'une cellule de tableau répartit la ligne de tableau sur plusieurs lignes de texte, et l'interpréteur ne peut plus reconnaître ce texte en tant que ligne de tableau. + +<> + +< + +* la liste est reconnue +* mais pas le tableau autour +|">> + +--- + +Le seul moyen de faire reconnaître la syntaxe de [[mode bloc|Block Mode WikiText]] dans des [[tableaux en WikiTexte|Tables in WikiText]] est d'utiliser un widget <<.wlink TranscludeWidget>> avec l'attribut <<.attr mode>>=<<.value block>>. + +<>|<$transclude tiddler="table-example" mode=block/>|'>> + +Notez que le widget <<.wlink MacroCallWidget>> ne dispose pas d'un attribut <<.attr mode>> similaire, et le contenu des définitions de macros ne peut être analysé qu'en [[mode en ligne|Inline Mode WikiText]]. + +--- + +Bien que moins pratiques, les balises html ``, ``, ` +
` peuvent être utilisées comme un moyen sûr de faire reconnaître les syntaxes en [[mode bloc|Block Mode WikiText]] à l'intérieur d'un tableau. + +< +
+ +* premier élément de la liste +* deuxième élément de la liste + + +|tableau|imbriqué| +
">> \ No newline at end of file diff --git a/editions/fr-FR/tiddlers/wikitext/parser/WikiText parser mode transitions.tid b/editions/fr-FR/tiddlers/wikitext/parser/WikiText parser mode transitions.tid new file mode 100644 index 000000000..0a1e6d817 --- /dev/null +++ b/editions/fr-FR/tiddlers/wikitext/parser/WikiText parser mode transitions.tid @@ -0,0 +1,59 @@ +created: 20220110235808139 +fr-title: Changements de mode d'analyse du WikiTexte +modified: 20220421003504381 +tags: [[WikiText Parser Modes]] +title: WikiText parser mode transitions +type: text/vnd.tiddlywiki + +Voici un diagramme <<.em approximatif>> dont les lignes correspondent globalement aux transitions entre modes d'analyse de l'interpréteur décrites ci-dessous<<:>> +<$railroad text=""" +{<"mode pragma" > +{( + {<"mode en ligne"> +} | + ({<"mode bloc"> + +("<<<" | "@@" | "$$") + } + "autre syntaxe de début de bloc") + {<"mode en ligne"> +} + ) + +( + "syntaxe de fin de bloc" | + ("ligne vide" "balise ouvrante html") + )} + +("widget transclude" | "appel de macro") +} +"""/> + +!! Mode de démarrage + +Par défaut, l'interpréteur démarre en [[mode bloc|Block Mode WikiText]]. Néanmoins, un tiddler peut être transclus en [[mode en ligne|Inline Mode WikiText]] auquel cas le [[WikiTexte du mode bloc|Block Mode WikiText]] ne sera pas reconnu. + +Au début du texte seulement, l'interpréteur reconnaît aussi le [[WikiTexte du mode pragma|Pragma]]. + +!! Transitions depuis le mode pragma + +Au début du texte, l'interpréteur cherche des [[pragmas|Pragma]]. S'il n'en trouve aucun il bascule en [[mode en ligne|Inline Mode WikiText]] ou en [[mode bloc|Block Mode WikiText]], en fonction du mode de transclusion. S'il a trouvé un [[pragma|Pragma]], il continue à en chercher d'autres jusqu'à ce qu'il rencontre une ligne vide non suivie par le début d'un nouveau pragma. + +!! Transitions depuis le mode bloc + +Quand l'interpréteur rencontre la plupart des syntaxes de début de [[mode bloc|Block Mode WikiText]], il bascule en [[mode en ligne|Inline Mode WikiText]], ce qui signifie que le texte compris entre des balises de début et de fin de [[bloc|Block Mode WikiText]] sera interprété en [[mode en ligne|Inline Mode WikiText]]. + +<<.tip """La <> de début de paragraphe est <>. Même au sein des paragraphes l'interpréteur bascule en [[mode en ligne|Inline Mode WikiText]].""">> + +Il y a toutefois quelques balises de blocs dont le contenu est interprété en [[mode bloc|Block Mode WikiText]]<<:>> + +* Les [[citations multi-lignes|Block Quotes in WikiText]] +* Les [[styles multi-lignes|Styles and Classes in WikiText]] +* Les [[blocs typés|Typed Blocks in WikiText]] + +Pour ces cas particuliers, lorsque la syntaxe de début de bloc est rencontrée, l'interpréteur continue à analyser le texte en [[mode bloc|Block Mode WikiText]]. + +Les [[lignes horizontales|Horizontal Rules in WikiText]] sont un autre cas particulier<<:>> elles n'incluent pas de texte, donc l'interpréteur n'a pas l'opportunité de basculer en [[mode en ligne|Inline Mode WikiText]]. + +Les balises d'ouverture de [[widgets|Widgets in WikiText]] ou de [[HTML|HTML in WikiText]] peuvent conduire l'interpréteur à changer de mode. Quand une de ces balises <<.em "n'est pas">> suivie d'une ligne vide, le texte compris entre les balises sera interprété en [[mode en ligne|Inline Mode WikiText]]. Voir les [[exemples HTML|WikiText parser mode: HTML examples]]. + +!! Transitions depuis le mode en ligne + +* L'interpréteur retourne en [[mode bloc|Block Mode WikiText]] après la fin d'une ligne qui termine du [[WikiTexte de mode bloc|Block Mode WikiText]]. En d'autres termes, quand la balise de fin de bloc est rencontrée. +* Quand une balise d'ouverture de [[widget|Widgets in WikiText]] ou de [[HTML|HTML in WikiText]] est suivie d'une ligne vide, le contenu est analysé en [[mode bloc|Block Mode WikiText]]. Voir les [[exemples HTML|WikiText parser mode: HTML examples]]. +* Le texte transclus et le texte substitué via un appel de macro peuvent faire quitter le [[mode en ligne|Inline Mode WikiText]] à l'interpréteur. Voir les [[exemples de transclusions|WikiText parser mode: transclusion examples]] et les [[exemples de macros|WikiText parser mode: macro examples]] pour plus de détails. diff --git a/editions/fr-FR/tiddlers/wikitext/parser/WikiText parser mode_ macro examples.tid b/editions/fr-FR/tiddlers/wikitext/parser/WikiText parser mode_ macro examples.tid new file mode 100644 index 000000000..2ede84b46 --- /dev/null +++ b/editions/fr-FR/tiddlers/wikitext/parser/WikiText parser mode_ macro examples.tid @@ -0,0 +1,56 @@ +created: 20220122144742419 +fr-title: Modes d'analyse du WikiTexte : exemples de macros +modified: 20220419224009995 +tags: [[WikiText parser mode transitions]] +title: WikiText parser mode: macro examples +type: text/vnd.tiddlywiki + +\define tablebanale() +|cellule une|cellule deux| +|cellule trois|cellule quatre| +\end +En utilisant la macro `tablebanale` définie ainsi<<:>> +<$codeblock code=<>/> +dans une transclusion, alors<<:>> +<> +<>">> +< + +<> + +""">> +<">> +<">> +< + +""">> +
+ +Dans le code ci-dessus, la syntaxe de liste à puce est reconnue en [[mode bloc|Block Mode WikiText]], puis son contenu est interprété en [[mode en ligne|Inline Mode WikiText]]. Quand l'interpréteur rencontre un [[appel de macro en WikiTexte|Macro Calls in WikiText]] il utilise le mode courant pour analyser le contenu de la macro. La macro d'exemple contient une définition de table qui n'est reconnue qu'en [[mode bloc|Block Mode WikiText]]. + +De ce fait, dans la ligne n°1 ci-dessus, la syntaxe de table n'est pas reconnue. Dans la ligne n°2, la ligne vide après la balise `
` bascule l'interpréteur en [[mode bloc|Block Mode WikiText]] et le contenu de la macro en hérite, donc la table est reconnue. + +En utilisant le <>, le mode d'analyse reste le mode en ligne (exemples des lignes n°3 et 4 ci-dessus) jusqu'à ce que la balise ouvrante soit suivie d'une ligne vide (exemple n°5 ci-dessus). + +<<.tip """Voir aussi <> pour d'autres exemples similaires.""">> + +--- + +Dans les exemples suivants, les appels de macros sont directs, au lieu d'être inclus dans des listes à puces<<:>> +<> +<>">> +< + +<> + +""">> +<">> +<">> +< + +""">> +
+ +Parmi ces exemples, seuls les deux widgets <<.wlink MacroCallWidget>> dont la balise d'ouverture n'est pas suivie d'une ligne vide (lignes n°3 et 4) sont analysés en [[mode en ligne|Inline Mode WikiText]]. + +<<.tip """Voir aussi <> pour d'autres exemples similaires.""">> \ No newline at end of file diff --git a/editions/fr-FR/tiddlers/wikitext/parser/WikiText parser mode_ transclusion examples.tid b/editions/fr-FR/tiddlers/wikitext/parser/WikiText parser mode_ transclusion examples.tid new file mode 100644 index 000000000..dd6f9bc62 --- /dev/null +++ b/editions/fr-FR/tiddlers/wikitext/parser/WikiText parser mode_ transclusion examples.tid @@ -0,0 +1,56 @@ +created: 20220122145022547 +fr-title: Modes d'analyse du WikiTexte : exemples de transclusions +modified: 20220419224014907 +tags: [[WikiText parser mode transitions]] +title: WikiText parser mode: transclusion examples +type: text/vnd.tiddlywiki + + +En utilisant le tiddler [[table-example]] qui contient<<:>> +<$codeblock code={{table-example}}/> +dans une transclusion, alors<<:>> +<> +<> +< + +{{table-example}} + +""">> +<">> +<">> +< + +""">> +<">> +
+ +Dans le code ci-dessus, la syntaxe de liste à puce est reconnue en [[mode bloc|Block Mode WikiText]], puis son contenu est interprété en [[mode en ligne|Inline Mode WikiText]]. Quand l'interpréteur rencontre une <> il utilise le mode courant pour analyser le contenu du tiddler transclus. Le tiddler d'exemple contient une définition de table qui n'est reconnue qu'en [[mode bloc|Block Mode WikiText]]. + +De ce fait, dans la ligne n°1 ci-dessus, la syntaxe de table n'est pas reconnue. Dans la ligne n°2, la ligne vide après la balise `
` bascule l'interpréteur en [[mode bloc|Block Mode WikiText]] et le contenu transclus en hérite, donc la table est reconnue. + +En utilisant le <>, le mode d'analyse reste le mode en ligne (exemples des lignes n°3 et 4 ci-dessus) jusqu'à ce que la balise ouvrante soit suivie d'une ligne vide (exemple n°5 ci-dessus). + +<<.tip """Pour voir d'autres exemples similaires, consultez <>. La seule différence est qu'ici l'exemple de la ligne n°6 utilise l'attribut <<.attr mode>> du widget <<.wlink TranscludeWidget>> pour forcer explicitement le mode d'analyse plutôt que de de laisser le contenu de la balise le déterminer.""">> + +--- + +Dans les exemples suivants, les transclusions sont directes, au lieu d'être incluses dans des listes à puces<<:>> + +<> +<> +< + +{{table-example}} + +""">> +<">> +<">> +< + +""">> +<">> +
+ +Parmi ces exemples, seuls les deux widgets <<.wlink TranscludeWidget>> dont la balise d'ouverture n'est pas suivie d'une ligne vide ainsi que l'appel qui comporte l'attribut <<.attr mode>>=<<.value inline>> (lignes n°3, 4 et 6) sont analysés en [[mode en ligne|Inline Mode WikiText]]. + +<<.tip """Voir aussi <> pour d'autres exemples similaires.""">> \ No newline at end of file diff --git a/editions/fr-FR/tiddlers/wikitext/parser/table-example.tid b/editions/fr-FR/tiddlers/wikitext/parser/table-example.tid new file mode 100644 index 000000000..1ad46cea7 --- /dev/null +++ b/editions/fr-FR/tiddlers/wikitext/parser/table-example.tid @@ -0,0 +1,8 @@ +created: 20220118023452157 +modified: 20220419184729921 +tags: [[WikiText parser mode transitions (Examples)]] +title: table-example +type: text/vnd.tiddlywiki + +|cellule une|cellule deux| +|cellule trois|cellule quatre| \ No newline at end of file From 03910fce662e5e8404680f0e37415593c965a91b Mon Sep 17 00:00:00 2001 From: Marxsal Date: Wed, 27 Apr 2022 09:24:06 -0700 Subject: [PATCH 04/28] Add tiddler 'How to update ...' (#6667) Adding tiddler 'How to update TiddlyWiki to the latest version' which transcludes the existing tiddler 'Upgrading'. Some people search for term 'update' instead of 'upgrade' . --- .../How to update TiddlyWiki to the latest version.tid | 7 +++++++ 1 file changed, 7 insertions(+) create mode 100644 editions/tw5.com/tiddlers/howtos/How to update TiddlyWiki to the latest version.tid diff --git a/editions/tw5.com/tiddlers/howtos/How to update TiddlyWiki to the latest version.tid b/editions/tw5.com/tiddlers/howtos/How to update TiddlyWiki to the latest version.tid new file mode 100644 index 000000000..7d4e0a800 --- /dev/null +++ b/editions/tw5.com/tiddlers/howtos/How to update TiddlyWiki to the latest version.tid @@ -0,0 +1,7 @@ +created: 20220426221124514 +modified: 20220426221240671 +tags: [[Working with TiddlyWiki]] +title: How to update TiddlyWiki to the latest version +type: text/vnd.tiddlywiki + +{{Upgrading}} \ No newline at end of file From 873ce4823fd60c9ff64f24370898e25855128872 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?T=C3=A9lumire?= <31185220+Telumire@users.noreply.github.com> Date: Wed, 27 Apr 2022 23:21:59 +0200 Subject: [PATCH 05/28] Added a reference to encrypted wiki in "Creating a splash screen" (#6664) A user was wondering how to add a background image to the password screen of an encrypted wiki (https://talk.tiddlywiki.org/t/background-image-on-login-page/3145). It was not obvious that an encrypted wiki is considered as "loading", so I updated this tiddler to hint at this. I also added a hint to the other system tags $:/tags/RawMarkup.. since they can also be used for the same purpose. --- editions/tw5.com/tiddlers/howtos/Creating a splash screen.tid | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/editions/tw5.com/tiddlers/howtos/Creating a splash screen.tid b/editions/tw5.com/tiddlers/howtos/Creating a splash screen.tid index bb1934818..334559e60 100644 --- a/editions/tw5.com/tiddlers/howtos/Creating a splash screen.tid +++ b/editions/tw5.com/tiddlers/howtos/Creating a splash screen.tid @@ -8,7 +8,7 @@ By default, TiddlyWiki displays a blank screen while it is loading. You can add Larger TiddlyWiki files and those loaded over a slow network connection may take a little time to load. Once fully loaded, performance improves, because everything is now running entirely within the browser. Using a splash screen ensures people know the loading process is taking place, reducing the chance they will leave the page. -In order for the splash screen to be displayed before TiddlyWiki is initialised it is embedded as static HTML/CSS within the TiddlyWiki HTML file. This is done with the [[SystemTag: $:/tags/RawMarkupWikified/TopBody]]. +In order for the splash screen to be displayed before TiddlyWiki is initialised or [[decrypted|Encryption]], it is embedded as static HTML/CSS within the TiddlyWiki HTML file. This is done with the [[SystemTag: $:/tags/RawMarkupWikified/TopBody]], or any of the other system tags beginning with $:/tags/RawMarkup. In order to remove the splash screen when the wiki has finished loading, the HTML should be wrapped in a container with the special class `tc-remove-when-wiki-loaded`. Any DOM elements with this class are automatically deleted by the core once the wiki has loaded. From 5d55850c73c3810686db052b542903038886ec7c Mon Sep 17 00:00:00 2001 From: Simon Huber Date: Wed, 27 Apr 2022 23:22:54 +0200 Subject: [PATCH 06/28] Update some palettes in the light of colorscheme: dark (#6661) * Update CupertinoDark.tid * Update GruvBoxDark.tid * Update Nord.tid --- core/palettes/CupertinoDark.tid | 4 ++-- core/palettes/GruvBoxDark.tid | 4 ++-- core/palettes/Nord.tid | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/core/palettes/CupertinoDark.tid b/core/palettes/CupertinoDark.tid index 7df078296..c956561ed 100644 --- a/core/palettes/CupertinoDark.tid +++ b/core/palettes/CupertinoDark.tid @@ -11,7 +11,7 @@ alert-highlight: #FFD60A alert-muted-foreground: <> background: #282828 blockquote-bar: <> -button-foreground: <> +button-foreground: <> code-background: <> code-border: <> code-foreground: rgba(255, 255, 255, 0.54) @@ -52,7 +52,7 @@ pre-border: transparent primary: #0A84FF select-tag-background: <> select-tag-foreground: <> -sidebar-button-foreground: <> +sidebar-button-foreground: <> sidebar-controls-foreground-hover: #FF9F0A sidebar-controls-foreground: #8E8E93 sidebar-foreground-shadow: transparent diff --git a/core/palettes/GruvBoxDark.tid b/core/palettes/GruvBoxDark.tid index 1fa5633c9..840d8683e 100644 --- a/core/palettes/GruvBoxDark.tid +++ b/core/palettes/GruvBoxDark.tid @@ -12,7 +12,7 @@ alert-highlight: #d79921 alert-muted-foreground: #504945 background: #3c3836 blockquote-bar: <> -button-foreground: <> +button-foreground: <> code-background: #504945 code-border: #504945 code-foreground: #fb4934 @@ -63,7 +63,7 @@ select-tag-background: #665c54 select-tag-foreground: <> selection-background: #458588 selection-foreground: <> -sidebar-button-foreground: <> +sidebar-button-foreground: <> sidebar-controls-foreground-hover: #7c6f64 sidebar-controls-foreground: #504945 sidebar-foreground-shadow: transparent diff --git a/core/palettes/Nord.tid b/core/palettes/Nord.tid index e330b3d0a..f825f45f2 100644 --- a/core/palettes/Nord.tid +++ b/core/palettes/Nord.tid @@ -12,7 +12,7 @@ alert-highlight: #B48EAD alert-muted-foreground: #4C566A background: #3b4252 blockquote-bar: <> -button-foreground: <> +button-foreground: <> code-background: #2E3440 code-border: #2E3440 code-foreground: #BF616A @@ -63,7 +63,7 @@ select-tag-background: #3b4252 select-tag-foreground: <> selection-background: #5E81AC selection-foreground: <> -sidebar-button-foreground: <> +sidebar-button-foreground: <> sidebar-controls-foreground-hover: #D8DEE9 sidebar-controls-foreground: #4C566A sidebar-foreground-shadow: transparent From f3bf5b6e850691b6bff430b0575387a09f6aaf97 Mon Sep 17 00:00:00 2001 From: "jeremy@jermolene.com" Date: Thu, 5 May 2022 08:30:05 +0100 Subject: [PATCH 07/28] Add support for $:/tags/Macro/View/Body macros --- core/ui/EditTemplate/Preview/output.tid | 2 +- core/ui/ViewTemplate/body.tid | 2 ++ editions/tw5.com/tiddlers/concepts/Macros.tid | 8 ++++++-- editions/tw5.com/tiddlers/concepts/SystemTags.tid | 2 +- .../systemtags/SystemTag_ $__tags_Macro_View_Body.tid | 9 +++++++++ 5 files changed, 19 insertions(+), 4 deletions(-) create mode 100644 editions/tw5.com/tiddlers/systemtags/SystemTag_ $__tags_Macro_View_Body.tid diff --git a/core/ui/EditTemplate/Preview/output.tid b/core/ui/EditTemplate/Preview/output.tid index 985fae64d..9a7ded886 100644 --- a/core/ui/EditTemplate/Preview/output.tid +++ b/core/ui/EditTemplate/Preview/output.tid @@ -2,7 +2,7 @@ title: $:/core/ui/EditTemplate/body/preview/output tags: $:/tags/EditPreview caption: {{$:/language/EditTemplate/Body/Preview/Type/Output}} -\import [all[shadows+tiddlers]tag[$:/tags/Macro/View]!has[draft.of]] +\import [all[shadows+tiddlers]tag[$:/tags/Macro/View]!has[draft.of]] [all[shadows+tiddlers]tag[$:/tags/Macro/View/Body]!has[draft.of]] <$set name="tv-tiddler-preview" value="yes"> <$transclude /> diff --git a/core/ui/ViewTemplate/body.tid b/core/ui/ViewTemplate/body.tid index 7aabf9f6f..86d83bf30 100644 --- a/core/ui/ViewTemplate/body.tid +++ b/core/ui/ViewTemplate/body.tid @@ -1,6 +1,8 @@ title: $:/core/ui/ViewTemplate/body tags: $:/tags/ViewTemplate +\import [all[shadows+tiddlers]tag[$:/tags/Macro/View/Body]!has[draft.of]] + <$reveal tag="div" class="tc-tiddler-body" type="nomatch" stateTitle=<> text="hide" retain="yes" animate="yes"> <$transclude tiddler={{{ [] :cascade[all[shadows+tiddlers]tag[$:/tags/ViewTemplateBodyFilter]!is[draft]get[text]] :and[!is[blank]else[$:/core/ui/ViewTemplate/body/default]] }}} /> diff --git a/editions/tw5.com/tiddlers/concepts/Macros.tid b/editions/tw5.com/tiddlers/concepts/Macros.tid index afd388090..1d06f9755 100644 --- a/editions/tw5.com/tiddlers/concepts/Macros.tid +++ b/editions/tw5.com/tiddlers/concepts/Macros.tid @@ -1,5 +1,5 @@ created: 20140211171341271 -modified: 20220128112317724 +modified: 20220505082754270 tags: Concepts Reference title: Macros type: text/vnd.tiddlywiki @@ -18,7 +18,11 @@ Within a snippet itself, the only markup detected is `$name$` (a placeholder for The <<.mlink dumpvariables>> macro lists all variables (including macros) that are available at that position in the widget tree. -An <<.wlink ImportVariablesWidget>> widget can be used to copy macro definitions to another branch of the [[widget tree|Widgets]]. ~TiddlyWiki uses this technique internally to implement global macros -- namely any macros defined in tiddlers with the <<.tag $:/tags/Macro>> tag. (The tag <<.tag $:/tags/Macro/View>> is used to define macros that should only be available within the main view template and the preview panel). +An <<.wlink ImportVariablesWidget>> widget can be used to copy macro definitions to another branch of the [[widget tree|Widgets]]. ~TiddlyWiki uses this technique internally to implement global macros -- namely any macros defined in tiddlers with the <<.tag $:/tags/Macro>> tag. + +The tag <<.tag $:/tags/Macro/View>> is used to define macros that should only be available within the main view template and the preview panel. + +The tag <<.tag $:/tags/Macro/View/Body>> is used to define macros that should only be available within the main view template body and the preview panel. For maximum flexibility, macros can also be <<.js-macro-link "written as JavaScript modules">>. diff --git a/editions/tw5.com/tiddlers/concepts/SystemTags.tid b/editions/tw5.com/tiddlers/concepts/SystemTags.tid index 30dc35aa5..0cbda72d8 100644 --- a/editions/tw5.com/tiddlers/concepts/SystemTags.tid +++ b/editions/tw5.com/tiddlers/concepts/SystemTags.tid @@ -1,5 +1,5 @@ created: 20130822080600000 -list: [[SystemTag: $:/tags/AboveStory]] [[SystemTag: $:/tags/AdvancedSearch]] [[SystemTag: $:/tags/AdvancedSearch/FilterButton]] [[SystemTag: $:/tags/Alert]] [[SystemTag: $:/tags/BelowStory]] [[SystemTag: $:/tags/ControlPanel]] [[SystemTag: $:/tags/ControlPanel/Advanced]] [[SystemTag: $:/tags/ControlPanel/Appearance]] [[SystemTag: $:/tags/ControlPanel/Info]] [[SystemTag: $:/tags/ControlPanel/Saving]] [[SystemTag: $:/tags/ControlPanel/Settings]] [[SystemTag: $:/tags/ControlPanel/Toolbars]] [[SystemTag: $:/tags/EditorTools]] [[SystemTag: $:/tags/EditorToolbar]] [[SystemTag: $:/tags/EditPreview]] [[SystemTag: $:/tags/EditTemplate]] [[SystemTag: $:/tags/EditToolbar]] [[SystemTag: $:/tags/Exporter]] [[SystemTag: $:/tags/Filter]] [[SystemTag: $:/tags/Image]] [[SystemTag: $:/tags/ImportPreview]] [[SystemTag: $:/tags/KeyboardShortcut]] [[SystemTag: $:/tags/Layout]] [[SystemTag: $:/tags/Macro]] [[SystemTag: $:/tags/Macro/View]] [[SystemTag: $:/tags/Manager/ItemMain]] [[SystemTag: $:/tags/Manager/ItemSidebar]] [[SystemTag: $:/tags/MoreSideBar]] [[SystemTag: $:/tags/MoreSideBar/Plugins]] [[SystemTag: $:/tags/PageControls]] [[SystemTag: $:/tags/PageTemplate]] [[SystemTag: $:/tags/Palette]] [[SystemTag: $:/tags/PluginLibrary]] [[SystemTag: $:/tags/RawMarkup]] [[SystemTag: $:/tags/RawMarkupWikified]] [[SystemTag: $:/tags/RawMarkupWikified/BottomBody]] [[SystemTag: $:/tags/RawMarkupWikified/TopBody]] [[SystemTag: $:/tags/RawMarkupWikified/TopHead]] [[SystemTag: $:/tags/RawStaticContent]] [[SystemTag: $:/tags/RemoteAssetInfo]] [[SystemTag: $:/tags/SearchResults]] [[SystemTag: $:/tags/ServerConnection]] [[SystemTag: $:/tags/SideBar]] [[SystemTag: $:/tags/SideBarSegment]] [[SystemTag: $:/tags/StartupAction]] [[SystemTag: $:/tags/StartupAction/Browser]] [[SystemTag: $:/tags/StartupAction/Node]] [[SystemTag: $:/tags/Stylesheet]] [[SystemTag: $:/tags/TagDropdown]] [[SystemTag: $:/tags/TextEditor/Snippet]] [[SystemTag: $:/tags/TiddlerInfo]] [[SystemTag: $:/tags/TiddlerInfo/Advanced]] [[SystemTag: $:/tags/TiddlerInfoSegment]] [[SystemTag: $:/tags/ToolbarButtonStyle]] [[SystemTag: $:/tags/TopLeftBar]] [[SystemTag: $:/tags/TopRightBar]] [[SystemTag: $:/tags/ViewTemplate]] [[SystemTag: $:/tags/ViewToolbar]] +list: [[SystemTag: $:/tags/AboveStory]] [[SystemTag: $:/tags/AdvancedSearch]] [[SystemTag: $:/tags/AdvancedSearch/FilterButton]] [[SystemTag: $:/tags/Alert]] [[SystemTag: $:/tags/BelowStory]] [[SystemTag: $:/tags/ControlPanel]] [[SystemTag: $:/tags/ControlPanel/Advanced]] [[SystemTag: $:/tags/ControlPanel/Appearance]] [[SystemTag: $:/tags/ControlPanel/Info]] [[SystemTag: $:/tags/ControlPanel/Saving]] [[SystemTag: $:/tags/ControlPanel/Settings]] [[SystemTag: $:/tags/ControlPanel/Toolbars]] [[SystemTag: $:/tags/EditorTools]] [[SystemTag: $:/tags/EditorToolbar]] [[SystemTag: $:/tags/EditPreview]] [[SystemTag: $:/tags/EditTemplate]] [[SystemTag: $:/tags/EditToolbar]] [[SystemTag: $:/tags/Exporter]] [[SystemTag: $:/tags/Filter]] [[SystemTag: $:/tags/Image]] [[SystemTag: $:/tags/ImportPreview]] [[SystemTag: $:/tags/KeyboardShortcut]] [[SystemTag: $:/tags/Layout]] [[SystemTag: $:/tags/Macro]] [[SystemTag: $:/tags/Macro/View]] [[SystemTag: $:/tags/Macro/View/Body]] [[SystemTag: $:/tags/Manager/ItemMain]] [[SystemTag: $:/tags/Manager/ItemSidebar]] [[SystemTag: $:/tags/MoreSideBar]] [[SystemTag: $:/tags/MoreSideBar/Plugins]] [[SystemTag: $:/tags/PageControls]] [[SystemTag: $:/tags/PageTemplate]] [[SystemTag: $:/tags/Palette]] [[SystemTag: $:/tags/PluginLibrary]] [[SystemTag: $:/tags/RawMarkup]] [[SystemTag: $:/tags/RawMarkupWikified]] [[SystemTag: $:/tags/RawMarkupWikified/BottomBody]] [[SystemTag: $:/tags/RawMarkupWikified/TopBody]] [[SystemTag: $:/tags/RawMarkupWikified/TopHead]] [[SystemTag: $:/tags/RawStaticContent]] [[SystemTag: $:/tags/RemoteAssetInfo]] [[SystemTag: $:/tags/SearchResults]] [[SystemTag: $:/tags/ServerConnection]] [[SystemTag: $:/tags/SideBar]] [[SystemTag: $:/tags/SideBarSegment]] [[SystemTag: $:/tags/StartupAction]] [[SystemTag: $:/tags/StartupAction/Browser]] [[SystemTag: $:/tags/StartupAction/Node]] [[SystemTag: $:/tags/Stylesheet]] [[SystemTag: $:/tags/TagDropdown]] [[SystemTag: $:/tags/TextEditor/Snippet]] [[SystemTag: $:/tags/TiddlerInfo]] [[SystemTag: $:/tags/TiddlerInfo/Advanced]] [[SystemTag: $:/tags/TiddlerInfoSegment]] [[SystemTag: $:/tags/ToolbarButtonStyle]] [[SystemTag: $:/tags/TopLeftBar]] [[SystemTag: $:/tags/TopRightBar]] [[SystemTag: $:/tags/ViewTemplate]] [[SystemTag: $:/tags/ViewToolbar]] modified: 20210519160636964 tags: Reference Concepts title: SystemTags diff --git a/editions/tw5.com/tiddlers/systemtags/SystemTag_ $__tags_Macro_View_Body.tid b/editions/tw5.com/tiddlers/systemtags/SystemTag_ $__tags_Macro_View_Body.tid new file mode 100644 index 000000000..88a00fb2a --- /dev/null +++ b/editions/tw5.com/tiddlers/systemtags/SystemTag_ $__tags_Macro_View_Body.tid @@ -0,0 +1,9 @@ +caption: $:/tags/Macro/View/Body +created: 20200103092530990 +description: marks global macros only active in View template body +modified: 20220505082912548 +tags: SystemTags +title: SystemTag: $:/tags/Macro/View/Body +type: text/vnd.tiddlywiki + +The [[system tag|SystemTags]] `$:/tags/Macro/View/Body` marks macros that are only made available within the main view template bodies and the preview panel. From 9b9e443c73de7e0f4f032e87d3687e32f77255b8 Mon Sep 17 00:00:00 2001 From: lin onetwo Date: Sat, 7 May 2022 00:09:33 +0800 Subject: [PATCH 08/28] Fix lazy all template with user defined macro cause error (#6644) * Fix lazy all template with user defined macro cause error Fixes https://github.com/Jermolene/TiddlyWiki5/issues/6637 * fix: exclude the SJCL library when saving @Jermolene said: The construction -[type[application/javascript]library[yes]] is used in the core as a rather clumsy way to exclude the SJCL library when saving. The same construction is in the usual $:/core/save/all filter too. It's possible that we should review unintended side effects of that behaviour, but here we should leave it alone. --- core/templates/save-lazy-all.tid | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/core/templates/save-lazy-all.tid b/core/templates/save-lazy-all.tid index bf7f9f606..a4b5cd6e9 100644 --- a/core/templates/save-lazy-all.tid +++ b/core/templates/save-lazy-all.tid @@ -1,9 +1,9 @@ title: $:/core/save/lazy-all \define saveTiddlerFilter() -[is[system]] -[prefix[$:/state/popup/]] -[[$:/HistoryList]] -[[$:/boot/boot.css]] -[type[application/javascript]library[yes]] -[[$:/boot/boot.js]] -[[$:/boot/bootprefix.js]] +[sort[title]] +[is[system]] -[prefix[$:/state/popup/]] -[[$:/HistoryList]] -[[$:/boot/boot.css]] -[type[application/javascript]library[yes]] -[[$:/boot/boot.js]] -[[$:/boot/bootprefix.js]] [is[tiddler]type[application/javascript]] +[sort[title]] \end \define skinnySaveTiddlerFilter() -[!is[system]] +[!is[system]] -[type[application/javascript]] \end {{$:/core/templates/tiddlywiki5.html}} From 4b8594c4a8828fac4dc03e1c121a1e955016ba23 Mon Sep 17 00:00:00 2001 From: Simon Huber Date: Fri, 6 May 2022 18:11:13 +0200 Subject: [PATCH 09/28] Fix: eventcatcher widget - variables can be undefined (#6668) * Fix: eventcatcher widget - variables can be undefined * Fix: selectedNode can be an svg where offsetLeft ... are undefined * Make check for offsetLeft short * remove second collectDOMNodeVariables --- core/modules/utils/dom/dom.js | 17 ++++++++++------- core/modules/widgets/eventcatcher.js | 2 +- 2 files changed, 11 insertions(+), 8 deletions(-) diff --git a/core/modules/utils/dom/dom.js b/core/modules/utils/dom/dom.js index fef4cb9f3..eefbc2be6 100644 --- a/core/modules/utils/dom/dom.js +++ b/core/modules/utils/dom/dom.js @@ -292,14 +292,17 @@ exports.collectDOMVariables = function(selectedNode,domNode,event) { $tw.utils.each(selectedNode.attributes,function(attribute) { variables["dom-" + attribute.name] = attribute.value.toString(); }); - // Add a variable with a popup coordinate string for the selected node - variables["tv-popup-coords"] = "(" + selectedNode.offsetLeft + "," + selectedNode.offsetTop +"," + selectedNode.offsetWidth + "," + selectedNode.offsetHeight + ")"; + + if(selectedNode.offsetLeft) { + // Add a variable with a popup coordinate string for the selected node + variables["tv-popup-coords"] = "(" + selectedNode.offsetLeft + "," + selectedNode.offsetTop +"," + selectedNode.offsetWidth + "," + selectedNode.offsetHeight + ")"; - // Add variables for offset of selected node - variables["tv-selectednode-posx"] = selectedNode.offsetLeft.toString(); - variables["tv-selectednode-posy"] = selectedNode.offsetTop.toString(); - variables["tv-selectednode-width"] = selectedNode.offsetWidth.toString(); - variables["tv-selectednode-height"] = selectedNode.offsetHeight.toString(); + // Add variables for offset of selected node + variables["tv-selectednode-posx"] = selectedNode.offsetLeft.toString(); + variables["tv-selectednode-posy"] = selectedNode.offsetTop.toString(); + variables["tv-selectednode-width"] = selectedNode.offsetWidth.toString(); + variables["tv-selectednode-height"] = selectedNode.offsetHeight.toString(); + } } if(event && event.clientX && event.clientY) { diff --git a/core/modules/widgets/eventcatcher.js b/core/modules/widgets/eventcatcher.js index 8dd4e261d..dad9503c6 100644 --- a/core/modules/widgets/eventcatcher.js +++ b/core/modules/widgets/eventcatcher.js @@ -52,7 +52,7 @@ EventWidget.prototype.render = function(parent,nextSibling) { selectedNode = event.target, selectedNodeRect, catcherNodeRect, - variables; + variables = {}; // Firefox can fire dragover and dragenter events on text nodes instead of their parents if(selectedNode.nodeType === 3) { selectedNode = selectedNode.parentNode; From b4deb7cc4534f1015e75488952bc84527618277a Mon Sep 17 00:00:00 2001 From: Simon Huber Date: Mon, 9 May 2022 11:42:23 +0200 Subject: [PATCH 10/28] Add tv-widgetnode-width and tv-widgetnode-height (#6681) * Add tv-widgetnode-width and tv-widgetnode-height to collectDOMVariables * Add docs * update docs * Update modified field --- core/modules/utils/dom/dom.js | 5 +++++ editions/tw5.com/tiddlers/widgets/EventCatcherWidget.tid | 4 +++- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/core/modules/utils/dom/dom.js b/core/modules/utils/dom/dom.js index eefbc2be6..330d184cc 100644 --- a/core/modules/utils/dom/dom.js +++ b/core/modules/utils/dom/dom.js @@ -304,6 +304,11 @@ exports.collectDOMVariables = function(selectedNode,domNode,event) { variables["tv-selectednode-height"] = selectedNode.offsetHeight.toString(); } } + + if(domNode && domNode.offsetWidth) { + variables["tv-widgetnode-width"] = domNode.offsetWidth.toString(); + variables["tv-widgetnode-height"] = domNode.offsetHeight.toString(); + } if(event && event.clientX && event.clientY) { if(selectedNode) { diff --git a/editions/tw5.com/tiddlers/widgets/EventCatcherWidget.tid b/editions/tw5.com/tiddlers/widgets/EventCatcherWidget.tid index 48738bc02..f0c8c257c 100644 --- a/editions/tw5.com/tiddlers/widgets/EventCatcherWidget.tid +++ b/editions/tw5.com/tiddlers/widgets/EventCatcherWidget.tid @@ -1,5 +1,5 @@ created: 20201123113532200 -modified: 20220311154749139 +modified: 20220507184043398 tags: Widgets TriggeringWidgets title: EventCatcherWidget type: text/vnd.tiddlywiki @@ -48,6 +48,8 @@ The following variables are made available to the actions: |`event-type` |The type property of the JavaScript event | |`event-detail-*` |Any properties in the detail attribute of the event are made available with the prefix `event-detail-` | |`tv-popup-coords` |A co-ordinate string that can be used with the ActionPopupWidget to trigger a popup at the DOM node matching the selector where the event originated | +|`tv-widgetnode-width` |<<.from-version "5.2.3">> `offsetWidth` of the DOM node created by the eventcatcher widget | +|`tv-widgetnode-height` |<<.from-version "5.2.3">> `offsetHeight` of the DOM node created by the eventcatcher widget | |`tv-selectednode-posx` |`x` offset position of the selected DOM node | |`tv-selectednode-posy` |`y` offset position of the selected DOM node | |`tv-selectednode-width` |`offsetWidth` of the selected DOM node | From bc8c011eb311d136e7bb2d462db046002bc7bcae Mon Sep 17 00:00:00 2001 From: Mario Pietsch Date: Mon, 9 May 2022 16:49:42 +0200 Subject: [PATCH 11/28] Fix title indentation problem (#6679) * fix-6678-title-indent * optimize code as suggested by Saq --- core/ui/ViewTemplate/title.tid | 2 ++ 1 file changed, 2 insertions(+) diff --git a/core/ui/ViewTemplate/title.tid b/core/ui/ViewTemplate/title.tid index ae6e363a7..98695f6bf 100644 --- a/core/ui/ViewTemplate/title.tid +++ b/core/ui/ViewTemplate/title.tid @@ -12,11 +12,13 @@ fill:$(foregroundColor)$; <$set name="tv-wikilinks" value={{$:/config/Tiddlers/TitleLinks}}> <$link> +<$list filter="[] :cascade[all[shadows+tiddlers]tag[$:/tags/TiddlerIconFilter]!is[draft]get[text]] +[!is[blank]]" variable="ignore"> <$let foregroundColor={{{ [] :cascade[all[shadows+tiddlers]tag[$:/tags/TiddlerColourFilter]!is[draft]get[text]] }}}> >> {{||$:/core/ui/TiddlerIcon}} + <$transclude tiddler={{{ [] :cascade[all[shadows+tiddlers]tag[$:/tags/ViewTemplateTitleFilter]!is[draft]get[text]] :and[!is[blank]else[$:/core/ui/ViewTemplate/title/default]] }}} /> From 7a7d3571cc850b0e7d9e30f0e37f39673c09675f Mon Sep 17 00:00:00 2001 From: lin onetwo Date: Tue, 10 May 2022 15:09:38 +0800 Subject: [PATCH 12/28] Create issue template config.yml (#6685) * Create config.yml * chore: make bug report form * Update bug_report.yml * Update bug_report.yml * Update bug_report.yml * Update bug_report.yml * Update bug_report.yml --- .github/ISSUE_TEMPLATE/bug_report.md | 43 ----------------- .github/ISSUE_TEMPLATE/bug_report.yml | 67 +++++++++++++++++++++++++++ .github/ISSUE_TEMPLATE/config.yml | 8 ++++ 3 files changed, 75 insertions(+), 43 deletions(-) delete mode 100644 .github/ISSUE_TEMPLATE/bug_report.md create mode 100644 .github/ISSUE_TEMPLATE/bug_report.yml create mode 100644 .github/ISSUE_TEMPLATE/config.yml diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md deleted file mode 100644 index 77d3f5f03..000000000 --- a/.github/ISSUE_TEMPLATE/bug_report.md +++ /dev/null @@ -1,43 +0,0 @@ ---- -name: Bug report -about: Create a report to help us improve TiddlyWiki 5 -title: "[BUG]" -labels: '' -assignees: '' - ---- - -**Describe the bug** -A clear and concise description of what the bug is. - -**To Reproduce** -Steps to reproduce the behavior: -1. Go to '...' -2. Click on '....' -3. Scroll down to '....' -4. See error - -**Expected behavior** -A clear and concise description of what you expected to happen. - -**Screenshots** -If applicable, add screenshots to help explain your problem. - -**TiddlyWiki Configuration (please complete the following information):** - - Version [e.g. v5.1.24] - - Saving mechanism [e.g. Node.js, TiddlyDesktop, TiddlyHost etc] - - Plugins installed [e.g. Freelinks, TiddlyMap] - -**Desktop (please complete the following information):** - - OS: [e.g. iOS] - - Browser [e.g. chrome, safari] - - Version [e.g. 22] - -**Smartphone (please complete the following information):** - - Device: [e.g. iPhone6] - - OS: [e.g. iOS8.1] - - Browser [e.g. stock browser, safari] - - Version [e.g. 22] - -**Additional context** -Add any other context about the problem here. diff --git a/.github/ISSUE_TEMPLATE/bug_report.yml b/.github/ISSUE_TEMPLATE/bug_report.yml new file mode 100644 index 000000000..1e644e161 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/bug_report.yml @@ -0,0 +1,67 @@ +name: Bug report +description: Create a report to help us improve TiddlyWiki 5 +title: "[BUG] " +body: + - type: textarea + id: Describe + attributes: + label: Describe the bug + description: A clear and concise description of what the bug is. + validations: + required: true + - type: textarea + id: Expected + attributes: + label: Expected behavior + description: A clear and concise description of what you expected to happen. + validations: + required: false + - type: textarea + id: Reproduce + attributes: + label: To Reproduce + description: "Steps to reproduce the behavior:" + value: | + 1. Go to '...' + 2. Click on '....' + 3. Scroll down to '....' + 4. See error + validations: + required: false + - type: textarea + id: Screenshots + attributes: + label: Screenshots + description: If applicable, add screenshots to help explain your problem. + placeholder: Drag image here to upload screenshot! + validations: + required: false + - type: textarea + id: Configuration + attributes: + label: TiddlyWiki Configuration + description: please complete the following information + value: | + - Version [e.g. v5.1.24] + - Saving mechanism [e.g. Node.js, TiddlyDesktop, TiddlyHost etc] + - Plugins installed [e.g. Freelinks, TiddlyMap] + + ### Desktop (please complete the following information): + + - OS: [e.g. iOS] + - Browser [e.g. chrome, safari] + - Version [e.g. 22] + + ### Smartphone (please complete the following information): + + - Device: [e.g. iPhone6] + - OS: [e.g. iOS8.1] + - Browser [e.g. stock browser, safari] + - Version [e.g. 22] + validations: + required: true + - type: textarea + id: Context + attributes: + label: Additional context + description: Add any other context about the problem here. diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml new file mode 100644 index 000000000..556b93919 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/config.yml @@ -0,0 +1,8 @@ +blank_issues_enabled: false +contact_links: + - name: Discuss feature request + url: https://github.com/Jermolene/TiddlyWiki5/discussions + about: Open new discussion about new feature + - name: Talk.Tiddlywiki Forum + url: https://talk.tiddlywiki.org + about: Join the Forum \ No newline at end of file From e37f36f387d7ad4710515352d22f3c7f66a2e09e Mon Sep 17 00:00:00 2001 From: Max Schillinger Date: Thu, 12 May 2022 10:42:38 +0200 Subject: [PATCH 13/28] Signing the CLA (#6688) --- licenses/cla-individual.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/licenses/cla-individual.md b/licenses/cla-individual.md index adcdf5b8e..75cf9ecff 100644 --- a/licenses/cla-individual.md +++ b/licenses/cla-individual.md @@ -487,3 +487,5 @@ Joseph Cosentino, @jc-ose, 2021-12-14 Guang Li, @oflg, 2022/03/12 Dam S., @damscal, 2022/03/24 + +Max Schillinger, @MaxGyver83, 2022/05/11 From 34f9cd952ce226342029b885b93538e5b7339dfa Mon Sep 17 00:00:00 2001 From: Max Schillinger Date: Thu, 12 May 2022 10:44:02 +0200 Subject: [PATCH 14/28] Markdown: Add code block button + enable shortcut (#6689) * Markdown: Add code block button and enable shortcut (ctrl-shift-M) * Support alternative type "text/markdown" --- .../markdown/EditorToolbar/mono-block.tid | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) create mode 100755 plugins/tiddlywiki/markdown/EditorToolbar/mono-block.tid diff --git a/plugins/tiddlywiki/markdown/EditorToolbar/mono-block.tid b/plugins/tiddlywiki/markdown/EditorToolbar/mono-block.tid new file mode 100755 index 000000000..e73cc50ad --- /dev/null +++ b/plugins/tiddlywiki/markdown/EditorToolbar/mono-block.tid @@ -0,0 +1,17 @@ +title: $:/plugins/tiddlywiki/markdown/EditorToolbar/mono-block +list-after: $:/core/ui/EditorToolbar/mono-block +tags: $:/tags/EditorToolbar +icon: $:/core/images/mono-block +caption: {{$:/language/Buttons/MonoBlock/Caption}} (Markdown) +description: {{$:/language/Buttons/MonoBlock/Hint}} +condition: [type[text/x-markdown]] [type[text/markdown]] +button-classes: tc-text-editor-toolbar-item-start-group +shortcuts: ((mono-block)) + +<$action-sendmessage + $message="tm-edit-text-operation" + $param="wrap-lines" + prefix=" +```" + suffix="```" +/> From 775c7f00746a5c4d83babdec81e59f4aea3c2e04 Mon Sep 17 00:00:00 2001 From: Max Schillinger Date: Thu, 12 May 2022 23:19:26 +0200 Subject: [PATCH 15/28] Markdown: Add link(ify) button and enable shortcut (ctrl-L) (#6691) --- .../tiddlywiki/markdown/EditorToolbar/link.tid | 15 +++++++++++++++ 1 file changed, 15 insertions(+) create mode 100755 plugins/tiddlywiki/markdown/EditorToolbar/link.tid diff --git a/plugins/tiddlywiki/markdown/EditorToolbar/link.tid b/plugins/tiddlywiki/markdown/EditorToolbar/link.tid new file mode 100755 index 000000000..f1a41317f --- /dev/null +++ b/plugins/tiddlywiki/markdown/EditorToolbar/link.tid @@ -0,0 +1,15 @@ +caption: {{$:/language/Buttons/Link/Caption}} (Markdown) +condition: [type[text/x-markdown]] [type[text/markdown]] +description: {{$:/language/Buttons/Link/Hint}} +icon: $:/core/images/link +list-after: $:/core/ui/EditorToolbar/link +shortcuts: ((link)) +title: $:/plugins/tiddlywiki/markdown/EditorToolbar/link +tags: $:/tags/EditorToolbar + +<$action-sendmessage + $message="tm-edit-text-operation" + $param="wrap-selection" + prefix="[" + suffix="]()" +/> From e9405ac8109987caf0515828e5bae2417deae264 Mon Sep 17 00:00:00 2001 From: FlashSystems Date: Sat, 14 May 2022 14:30:04 +0200 Subject: [PATCH 16/28] Fix for Bug #6618 (#6628) * Fix for Bug #6618 This Commit fixes Bug #6618. It is a little bit more complicated than using one tiddler to store the new value for a field. Because the following can happen: * The user types "not-a-date" into the field value of a simple text field. * The user now selects a field name that uses a HTML5 date editor. The Editor will show no date because the value cannot be parsed. * The user saves the tiddler by clicking the checkmark. Now the date-field contains the value "not-a-date" but the user was not aware that this will be added. The edit control showed no date (because the value was invalid) and the user assumed the field was empty and won't be added to the tiddler. To prevent this, every kind of field editor gets its own storage tiddler. Its name is derived from the SHA256-hash of the name of the tiddler that is returned by the Field Editor Cascade. That way every editor in the cascade is only seeing its input. As long as the default setup (with one default editor) is used, everything works like in 5.2.1. This commit also fixes the bug that the after adding a field the field-type input box was not focused again. * Update Documentation for Field Editor Cascade The fix for bug #6618 makes the handling of the tiddler backing the edit operation much more complicated. See previous commit "Fix for Bug #6618" for more details. --- core/ui/EditTemplate.tid | 11 +++++--- core/ui/EditTemplate/fieldEditor-default.tid | 2 +- core/ui/EditTemplate/fields.tid | 14 ++++------ ...stomizing EditTemplate Field Rendering.tid | 28 +++++++++++++++---- 4 files changed, 36 insertions(+), 19 deletions(-) diff --git a/core/ui/EditTemplate.tid b/core/ui/EditTemplate.tid index 58852067a..1c356998c 100644 --- a/core/ui/EditTemplate.tid +++ b/core/ui/EditTemplate.tid @@ -1,18 +1,21 @@ title: $:/core/ui/EditTemplate -\define delete-edittemplate-state-tiddlers() <$action-deletetiddler $filter="[] [] [] [] [] [] [] [] []"/> +\define delete-edittemplate-state-tiddlers() <$action-deletetiddler $filter="[] [prefix] [] [] [] [] [] [] []"/> + +\define get-field-value-tiddler-filter() [subfiltersha256[16]addprefix[/]addprefix] +\define get-field-editor-filter() [get[text]else[]] :cascade[all[shadows+tiddlers]tag[$:/tags/FieldEditorFilter]!is[draft]get[text]] :and[!is[blank]else{$:/core/ui/EditTemplate/fieldEditor/default}] \define save-tiddler-actions() \whitespace trim <$action-sendmessage $message="tm-add-tag" $param={{{ [get[text]] }}}/> -<$action-sendmessage $message="tm-add-field" $name={{{ [get[text]] }}} $value={{{ [get[text]] :map[get] }}}/> +<$action-sendmessage $message="tm-add-field" $name={{{ [get[text]] }}} $value={{{ [get[text]] :map[subfilterget[text]] }}}/> <> <$action-sendmessage $message="tm-save-tiddler"/> \end \define cancel-delete-tiddler-actions(message) \whitespace trim -<> +<> <$action-sendmessage $message="tm-$message$-tiddler"/> \end @@ -26,7 +29,7 @@ title: $:/core/ui/EditTemplate storyTiddler=<> newTagNameTiddler=<> newFieldNameTiddler=<> - newFieldValueTiddler=<> + newFieldValueTiddlerPrefix=<> newFieldNameInputTiddler=<> newFieldNameSelectionTiddler=<> newTagNameInputTiddler=<> diff --git a/core/ui/EditTemplate/fieldEditor-default.tid b/core/ui/EditTemplate/fieldEditor-default.tid index f3242657d..b7c3954b1 100644 --- a/core/ui/EditTemplate/fieldEditor-default.tid +++ b/core/ui/EditTemplate/fieldEditor-default.tid @@ -1,3 +1,3 @@ title: $:/core/ui/EditTemplate/fieldEditor/default -<$edit-text tiddler=<> field=<> default="" class="tc-edit-texteditor tc-edit-fieldeditor" placeholder={{$:/language/EditTemplate/Fields/Add/Value/Placeholder}} tabindex={{$:/config/EditTabIndex}} cancelPopups="yes"/> \ No newline at end of file +<$edit-text tiddler=<> field=<> tag="input" default="" class="tc-edit-texteditor tc-edit-fieldeditor" placeholder={{$:/language/EditTemplate/Fields/Add/Value/Placeholder}} tabindex={{$:/config/EditTabIndex}} cancelPopups="yes"/> \ No newline at end of file diff --git a/core/ui/EditTemplate/fields.tid b/core/ui/EditTemplate/fields.tid index c57bfb679..6173d9b76 100644 --- a/core/ui/EditTemplate/fields.tid +++ b/core/ui/EditTemplate/fields.tid @@ -16,8 +16,8 @@ $:/config/EditTemplateFields/Visibility/$(currentField)$ \define new-field-actions() \whitespace trim -<$action-sendmessage $message="tm-add-field" $name={{{ [get[text]] }}} $value={{{ [get[text]] :map[get] }}}/> -<$action-deletetiddler $filter="[] [] [] []"/> +<$action-sendmessage $message="tm-add-field" $name={{{ [get[text]] }}} $value={{{ [get[text]] :map[subfilterget[text]] }}}/> +<$action-deletetiddler $filter="[] [prefix] [] []"/> <$action-sendmessage $message="tm-focus-selector" $param=<>/> \end @@ -51,8 +51,8 @@ $:/config/EditTemplateFields/Visibility/$(currentField)$ <$button tooltip=<>> <$action-sendmessage $message="tm-add-field" $name=<> -$value={{{ [get] }}}/> -<$action-deletetiddler $filter="[] [] [] []"/> +$value={{{ [subfilterget[text]] }}}/> +<$action-deletetiddler $filter="[] [prefix] [] []"/> <> @@ -135,13 +135,11 @@ $value={{{ [get] }}}/>
-<$let currentTiddler=<> currentField={{{ [get[text]] }}}> +<$let currentTiddlerCSSescaped={{{ [escapecss[]] }}} currentTiddler={{{ [subfilter] }}} currentField="text" currentFieldName={{{ [get[text]] }}}> -<$set name="currentTiddlerCSSescaped" value={{{ [escapecss[]] }}}> <$keyboard key="((add-field))" actions=<>> -<$transclude tiddler={{{ [] :cascade[all[shadows+tiddlers]tag[$:/tags/FieldEditorFilter]!is[draft]get[text]] :and[!is[blank]else{$:/core/ui/EditTemplate/fieldEditor/default}] }}} /> +<$transclude tiddler={{{ [subfilter] }}} /> - <$macrocall $name="new-field"/> diff --git a/editions/tw5.com/tiddlers/concepts/Customizing EditTemplate Field Rendering.tid b/editions/tw5.com/tiddlers/concepts/Customizing EditTemplate Field Rendering.tid index bbdb4c771..0f6c8ec11 100644 --- a/editions/tw5.com/tiddlers/concepts/Customizing EditTemplate Field Rendering.tid +++ b/editions/tw5.com/tiddlers/concepts/Customizing EditTemplate Field Rendering.tid @@ -1,24 +1,30 @@ created: 20220305183700000 -modified: 20220305183700000 +modified: 20220413165500000 tags: Concepts title: Customizing EditTemplate field rendering type: text/vnd.tiddlywiki When editing a tiddler the [[EditTemplate|$:/core/ui/EditTemplate/fields]] normally renders fields as simple input boxes. To modify this behaviour, the [[cascade mechanism|Cascades]] can be used. Via the [[Field Editor Cascade|Field Editor Cascade]] the name of the tiddler used for rendering the field editor can be specified. The content of this tiddler is transcluded to represent the content of the field. -To modify the appearance of all fields whose name ends with `-date` create a new tiddler and add the `$:/tags/FieldEditorFilter` tag to it. Add a `list-before` field and assign the value `$:/config/FieldEditorFilters/default`. Now you have to put the filter for the cascade into the tiddler's text field: `[regexp[-date$]then[$:/config/EditTemplateFields/Templates/dates]]`. This will transclude the tiddler named `$:/config/EditTemplateFields/Templates/dates` to render the input elements for all fields with names matching the regular expression. +To modify the appearance of all fields whose name ends with `-date` create a new tiddler and add the `$:/tags/FieldEditorFilter` tag to it. Add a `list-before` field and assign the value `$:/config/FieldEditorFilters/default`. Now you have to put the filter for the cascade into the tiddler's text field: `[suffix[-date]then[$:/config/EditTemplateFields/Templates/dates]]`. This will transclude the tiddler named `$:/config/EditTemplateFields/Templates/dates` to render the input elements for all fields with names matching the regular expression. -The variables `currentTiddler` and `currentField` are set to pass information about the tiddler and field that are edited to the transcluded tiddler. +The variables `currentTiddler`, `currentField` and `currentFieldName` are set to pass information about the tiddler and field that are edited to the transcluded tiddler. + +|`currentTiddler`|The tiddler that must be used to store the field value.| +|`currentField`|The field within the `currentTiddler` that must be used to store the field name. This is an opaque value hat may contain any field name (even `text`), use `currentFieldName` to make decisions based on the actual name of the currently edited field.| +|`currentFieldName`|The name of the currently edited field.| For example, a tiddler containing the following WikiText would render the field as an HTML input element of the type `date`. This will show a date picker for the fields on all modern browsers: ``` -<$edit-text tiddler=<> field=<> type="date" class="tc-edit-texteditor tc-edit-fieldeditor" placeholder="Set your date" tabindex={{$:/config/EditTabIndex}} cancelPopups="yes"/> +<$edit-text tiddler=<> field=<> tag="input" type="date" class="tc-edit-texteditor tc-edit-fieldeditor" placeholder="Set your date" tabindex={{$:/config/EditTabIndex}} cancelPopups="yes"/> ``` +<<.warning "The `currentField` variable will be set to `text` for new fields. Make sure that your editor will handle this correctly. For example, by setting the `tag` attribute on the EditTextWidget. If you want to know the name of the currently edited/added field, use the `currentFieldName` variable.">> + The `tabindex` and `cancelPopups` attributes make sure the HTML input element behaves exactly the default elements provided by TiddlyWiki. -Not only the `EditTextWidget` can be used. A tiddler containing the following WikiText will render the field as a drop-down-list that allows the user to select the name of a tiddler. The name of the selected tiddler will be stored in the field. +Not only the EditTextWidget can be used. A tiddler containing the following WikiText will render the field as a drop-down-list that allows the user to select the name of a tiddler. The name of the selected tiddler will be stored in the field. ``` <$select tiddler=<> field=<> class="tc-edit-texteditor tc-edit-fieldeditor" cancelPopups="yes"> @@ -28,4 +34,14 @@ Not only the `EditTextWidget` can be used. A tiddler containing the following Wi ``` -The classes `tc-edit-texteditor` and `tc-edit-fieldeditor` should be used to style the `input` and `select` elements to match the theme of the TiddlyWiki installation. \ No newline at end of file +The classes `tc-edit-texteditor` and `tc-edit-fieldeditor` should be used to style the `input` and `select` elements to match the theme of the TiddlyWiki installation. + +! Persistence of values when creating fields + +When using multiple field editors for creating fields within the [[EditTemplate|$:/core/ui/EditTemplate/fields]], every field editor tiddler returned by the [[Field Editor Cascade|Field Editor Cascade]] gets its own storage tiddler. This is done to prevent problems with incompatible values when the user is switching between fields governed by different field editors. + +!! Example + +There is a cascade that returns a special field editor for all fields starting with the string "my-". All other fields use the default field editor. +If you type a new value into the "field value" input box and select any field not starting with "my-", the value will be kept. +If you switch to a field, that starts with "my-", the "field value" input field will be empty again because a new type of field editor is used. If you now type a value and switch to another field starting with "my-" the value will be kept. If you switch to a field that does not start with "my-" the previously typed value (that was stored for the default editor) will reappear. \ No newline at end of file From 084a5cb0f00533d756b8b7de64fa9efdb3676f83 Mon Sep 17 00:00:00 2001 From: Mario Pietsch Date: Sat, 14 May 2022 14:31:36 +0200 Subject: [PATCH 17/28] Fix headings in wikitext example code (#6692) --- .../tiddlers/widgets/TranscludeWidget.tid | 7 +-- .../wikitext/Code Blocks in WikiText.tid | 11 ++-- .../tiddlers/wikitext/Dashes in WikiText.tid | 10 ++-- .../wikitext/Formatting in WikiText.tid | 14 +++--- .../wikitext/Headings in WikiText.tid | 6 +-- .../wikitext/Horizontal Rules in WikiText.tid | 8 ++- .../tiddlers/wikitext/Tables in WikiText.tid | 50 +++++-------------- .../tiddlers/wikitext/Widgets in WikiText.tid | 8 +-- .../wikitext/parser/WikiText Parser Modes.tid | 2 +- 9 files changed, 44 insertions(+), 72 deletions(-) diff --git a/editions/tw5.com/tiddlers/widgets/TranscludeWidget.tid b/editions/tw5.com/tiddlers/widgets/TranscludeWidget.tid index ae57fc2f2..6bc507cae 100644 --- a/editions/tw5.com/tiddlers/widgets/TranscludeWidget.tid +++ b/editions/tw5.com/tiddlers/widgets/TranscludeWidget.tid @@ -1,6 +1,6 @@ caption: transclude created: 20130824142500000 -modified: 20220122190609396 +modified: 20220513114759336 tags: Widgets title: TranscludeWidget type: text/vnd.tiddlywiki @@ -65,7 +65,4 @@ The transclude widget allows access to the individual tiddlers stored within a [ The following example will transclude the core version of the tiddler [[$:/DefaultTiddlers]] even if it has been overridden: -< - -'>> +<""">> diff --git a/editions/tw5.com/tiddlers/wikitext/Code Blocks in WikiText.tid b/editions/tw5.com/tiddlers/wikitext/Code Blocks in WikiText.tid index 03deca440..e9ac15cc3 100644 --- a/editions/tw5.com/tiddlers/wikitext/Code Blocks in WikiText.tid +++ b/editions/tw5.com/tiddlers/wikitext/Code Blocks in WikiText.tid @@ -1,14 +1,13 @@ caption: Code Blocks created: 20131205160047557 -modified: 20160606140326254 +modified: 20220513120302826 tags: WikiText title: Code Blocks in WikiText type: text/vnd.tiddlywiki You can use triple backticks ``` to mark code blocks (<<.icon $:/core/images/mono-block>>): -
-```
+
```
 This will be monospaced
 ```
 
@@ -23,8 +22,7 @@ To be interpreted correctly, the three backticks need to be at the start of the Be aware that any preceding paragraph content should be properly terminated with a double line break, too. So, this example is wrong: -
-This is an ordinary paragraph
+
This is an ordinary paragraph
 ```
 This will be monospaced
 ```
@@ -32,8 +30,7 @@ This will be monospaced
 
 The correct version is:
 
-
-This is an ordinary paragraph
+
This is an ordinary paragraph
 
 ```
 This will be monospaced
diff --git a/editions/tw5.com/tiddlers/wikitext/Dashes in WikiText.tid b/editions/tw5.com/tiddlers/wikitext/Dashes in WikiText.tid
index 92a044773..f73284a02 100644
--- a/editions/tw5.com/tiddlers/wikitext/Dashes in WikiText.tid	
+++ b/editions/tw5.com/tiddlers/wikitext/Dashes in WikiText.tid	
@@ -1,8 +1,12 @@
+caption: Dashes
 created: 20131205160641986
-modified: 20131205160653909
+modified: 20220513111920644
+revision: 0
 tags: WikiText
 title: Dashes in WikiText
 type: text/vnd.tiddlywiki
-caption: Dashes
 
-You can create an n-dash with a double hyphen `--` and an m-dash with a triple hyphen `---`. For example -- this is an example --- and so is this
+You can create an n-dash with a double hyphen -- and an m-dash with a triple hyphen `---`.
+
+<>
diff --git a/editions/tw5.com/tiddlers/wikitext/Formatting in WikiText.tid b/editions/tw5.com/tiddlers/wikitext/Formatting in WikiText.tid
index 293e55e95..7166c28c8 100644
--- a/editions/tw5.com/tiddlers/wikitext/Formatting in WikiText.tid	
+++ b/editions/tw5.com/tiddlers/wikitext/Formatting in WikiText.tid	
@@ -1,6 +1,6 @@
 caption: Formatting
 created: 20131205155959399
-modified: 20160606135946509
+modified: 20220513120211686
 tags: WikiText
 title: Formatting in WikiText
 type: text/vnd.tiddlywiki
@@ -8,12 +8,12 @@ type: text/vnd.tiddlywiki
 Available character formatting includes:
 
 * `backticks` for `code` (<<.icon $:/core/images/mono-line>>)
-** Alternatively, ``double backticks allows `embedded` backticks``
-* `''bold''` for ''bold text'' (<<.icon $:/core/images/bold>>)
-* `//italic//` for //italic text// (<<.icon $:/core/images/italic>>)
-* `__underscore__` for __underscored text__ (<<.icon $:/core/images/underline>>)
-* `^^superscript^^` for ^^superscripted^^ text (<<.icon $:/core/images/superscript>>)
-* `,,subscript,,` for ,,subscripted,, text (<<.icon $:/core/images/subscript>>)
+** Alternatively, ``double backticks allows `embedded` backticks``

+* `''bold''` for ''bold text'' (<<.icon $:/core/images/bold>>)

+* `//italic//` for //italic text// (<<.icon $:/core/images/italic>>)

+* `__underscore__` for __underscored text__ (<<.icon $:/core/images/underline>>)

+* `^^superscript^^` for ^^superscripted^^ text (<<.icon $:/core/images/superscript>>)

+* `,,subscript,,` for ,,subscripted,, text (<<.icon $:/core/images/subscript>>)

* `~~strikethrough~~` for ~~strikethrough~~ text (<<.icon $:/core/images/strikethrough>>) See also: [[Code Blocks in WikiText]] diff --git a/editions/tw5.com/tiddlers/wikitext/Headings in WikiText.tid b/editions/tw5.com/tiddlers/wikitext/Headings in WikiText.tid index e23278db4..84ce45991 100644 --- a/editions/tw5.com/tiddlers/wikitext/Headings in WikiText.tid +++ b/editions/tw5.com/tiddlers/wikitext/Headings in WikiText.tid @@ -1,9 +1,9 @@ +caption: Headings created: 20131205161234909 -modified: 20190412000000000 +modified: 20220513110830487 tags: WikiText title: Headings in WikiText type: text/vnd.tiddlywiki -caption: Headings Headings are specified with one up to six leading `!` characters: @@ -17,4 +17,4 @@ Headings are specified with one up to six leading `!` characters: CSS classes can be assigned to individual headings like this: -<> +<> diff --git a/editions/tw5.com/tiddlers/wikitext/Horizontal Rules in WikiText.tid b/editions/tw5.com/tiddlers/wikitext/Horizontal Rules in WikiText.tid index ddefc8c8b..41a95552e 100644 --- a/editions/tw5.com/tiddlers/wikitext/Horizontal Rules in WikiText.tid +++ b/editions/tw5.com/tiddlers/wikitext/Horizontal Rules in WikiText.tid @@ -1,12 +1,10 @@ +caption: Horizontal Rules created: 20131205160706975 -modified: 20131205160719633 +modified: 20220513111257531 tags: WikiText title: Horizontal Rules in WikiText type: text/vnd.tiddlywiki -caption: Horizontal Rules You can include a horizontal rule with three or more dashes on their own on a line: -<> +<> diff --git a/editions/tw5.com/tiddlers/wikitext/Tables in WikiText.tid b/editions/tw5.com/tiddlers/wikitext/Tables in WikiText.tid index 7bde12942..9c1d83ed4 100644 --- a/editions/tw5.com/tiddlers/wikitext/Tables in WikiText.tid +++ b/editions/tw5.com/tiddlers/wikitext/Tables in WikiText.tid @@ -1,41 +1,31 @@ +caption: Tables created: 20130914132100000 -modified: 20140125144616046 +modified: 20220513115945053 tags: WikiText title: Tables in WikiText type: text/vnd.tiddlywiki -caption: Tables ! Basics -TiddlyWiki5 formats tables using vertical bar characters like so: +TiddlyWiki5 formats tables using vertical bar `|` characters. Exclamation marks `!` are used to indicate header cells. -``` -|!Cell1 |!Cell2 | +<> -Exclamation marks are used to indicate header cells. The example renders as: -|!Cell1 |!Cell2 | -|Cell3 |Cell3 | ! Cell Alignment Table cell alignment is controlled by inserting space characters before and/or after the cell content. For example: -``` -|Left aligned content | +<> -The example renders as: -|Left aligned content | -| Right aligned content| -| Centred content | -|+++ a very wide column so we can see the alignment +++| ! Cell vertical Alignment @@ -60,23 +50,19 @@ If you need to have a `^`or a `,` as the first character of a left aligned cell, | `^` | &#94; | | `,` | &#44; | + + ! Cell Merging To merge a table cell with the one above, use the special cell text `~`. To merge a cell with the one to its left use the text `<`. To merge one to its right use `>`. For example: -``` -|Cell1 |Cell2 |Cell3 |Cell4 | +<|Cell9 |Cell10 |Cell11 | -``` +""">> -Renders as: -|Cell1 |Cell2 |Cell3 |Cell4 | -|Cell5 |Cell6 |Cell7 |<| -|Cell5 |~|Cell7 |Cell8 | -|>|Cell9 |Cell10 |Cell11 | ! Table Classes, Captions, Headers and Footers @@ -87,20 +73,10 @@ Table CSS classes, captions, headers and footers can be specified as special pse * adds a header row of cells with the text "Header" * adds a footer row of cells with the text "Footer" -``` -|myclass anotherClass|k -|This is a caption |c -|Cell1 |Cell2 | -|Cell3 |Cell3 | -|Header|Header|h -|Footer|Footer|f -``` - -Renders as: - -|myclass anotherClass|k +<> diff --git a/editions/tw5.com/tiddlers/wikitext/Widgets in WikiText.tid b/editions/tw5.com/tiddlers/wikitext/Widgets in WikiText.tid index ee0841af6..c23c3475f 100644 --- a/editions/tw5.com/tiddlers/wikitext/Widgets in WikiText.tid +++ b/editions/tw5.com/tiddlers/wikitext/Widgets in WikiText.tid @@ -1,15 +1,15 @@ caption: Widgets created: 20131205160840915 -modified: 20220122193129241 +modified: 20220513113347606 tags: WikiText title: Widgets in WikiText type: text/vnd.tiddlywiki Widgets provide rich functionality within WikiText. They have the same syntax as [[HTML elements|HTML in WikiText]], but the tag name always starts with `$`. For example: -``` -<$button message="tm-close-tiddler">Close Me! -``` +<$macrocall $name=".example" n="1" +eg="""<$button message="tm-navigate" to="HelloThere">Open ~HelloThere +"""/> Note that widgets inherit all the features of [[HTML in WikiText]]: diff --git a/editions/tw5.com/tiddlers/wikitext/parser/WikiText Parser Modes.tid b/editions/tw5.com/tiddlers/wikitext/parser/WikiText Parser Modes.tid index 6c3d7dc89..4a9c431b2 100644 --- a/editions/tw5.com/tiddlers/wikitext/parser/WikiText Parser Modes.tid +++ b/editions/tw5.com/tiddlers/wikitext/parser/WikiText Parser Modes.tid @@ -1,5 +1,5 @@ created: 20220110233944530 -modified: 20220202022415581 +modified: 20220513112653029 tags: WikiText title: WikiText Parser Modes type: text/vnd.tiddlywiki From 95e0fac6556a9bfe4e8b4e7d44d6487f7e67b12b Mon Sep 17 00:00:00 2001 From: lin onetwo Date: Sat, 14 May 2022 21:02:52 +0800 Subject: [PATCH 18/28] Expose isMobile to browser info (#6675) * feat: expose isMobile to info * feat: allow access browser info from $tw.browser * fix: adapt typo * refactor: only export selected properties Jermolene 5 hours ago The trouble is that the properties of bowser.browser are not under our direct control, and so subsequent updates to Bowser might overwrite important properties of our own. I'd rather explicitly import the properties that we choose to support. * refactor: put things into `is` --- plugins/tiddlywiki/browser-sniff/browser.js | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/plugins/tiddlywiki/browser-sniff/browser.js b/plugins/tiddlywiki/browser-sniff/browser.js index 2ca0b4840..26989623a 100644 --- a/plugins/tiddlywiki/browser-sniff/browser.js +++ b/plugins/tiddlywiki/browser-sniff/browser.js @@ -42,8 +42,12 @@ exports.getInfoTiddlerFields = function() { ["is/sailfish","sailfish"], ["is/android","android"], ["is/windowsphone","windowsphone"], - ["is/firefoxos","firefoxos"] + ["is/firefoxos","firefoxos"], + ["is/mobile","mobile"] ]; + $tw.browser = $tw.utils.extend($tw.browser, { + is: bowser.browser, + }); $tw.utils.each(mappings,function(mapping) { var value = bowser.browser[mapping[1]]; if(value === undefined) { From 71ee271eac97c1141d877a3c177fb4a23b173074 Mon Sep 17 00:00:00 2001 From: lin onetwo Date: Sat, 14 May 2022 21:04:36 +0800 Subject: [PATCH 19/28] docs: mark out-of-box standalone apps (#6677) docs: delete tiddlyie and ie tiddler docs: delete [[Internet Explorer]] tag Revert "docs: delete [[Internet Explorer]] tag" This reverts commit a796fc1fff3748f73a1919c5f2fff6d50990ae38. Revert "docs: delete tiddlyie and ie tiddler" This reverts commit 38067c7369c92f1b22ffd98090bdabdd96fa1fb3. --- editions/tw5.com/tiddlers/saving/Saving on Android.tid | 2 +- editions/tw5.com/tiddlers/saving/Saving on TidGi.tid | 2 +- editions/tw5.com/tiddlers/saving/Saving on TiddlyDesktop.tid | 2 +- editions/tw5.com/tiddlers/saving/Saving on iPad_iPhone.tid | 2 +- editions/tw5.com/tiddlers/saving/Saving.tid | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/editions/tw5.com/tiddlers/saving/Saving on Android.tid b/editions/tw5.com/tiddlers/saving/Saving on Android.tid index d86db5ab3..bd61f98cc 100644 --- a/editions/tw5.com/tiddlers/saving/Saving on Android.tid +++ b/editions/tw5.com/tiddlers/saving/Saving on Android.tid @@ -6,7 +6,7 @@ delivery: App description: Android app for saving changes locally to device storage method: save modified: 20200507103926292 -tags: Saving Android +tags: Saving Android [[Standalone App]] title: Saving on Android type: text/vnd.tiddlywiki url: https://github.com/donmor/Tiddloid diff --git a/editions/tw5.com/tiddlers/saving/Saving on TidGi.tid b/editions/tw5.com/tiddlers/saving/Saving on TidGi.tid index 13e020df9..8290254c6 100644 --- a/editions/tw5.com/tiddlers/saving/Saving on TidGi.tid +++ b/editions/tw5.com/tiddlers/saving/Saving on TidGi.tid @@ -5,7 +5,7 @@ created: 20220221080637764 delivery: App description: Desktop application for serving and syncing TiddlyWiki method: save -tags: Saving Mac Windows Linux +tags: Saving Mac Windows Linux [[Standalone App]] title: Saving on TidGi Desktop type: text/vnd.tiddlywiki url: https://github.com/tiddly-gittly/TidGi-Desktop/releases/latest diff --git a/editions/tw5.com/tiddlers/saving/Saving on TiddlyDesktop.tid b/editions/tw5.com/tiddlers/saving/Saving on TiddlyDesktop.tid index 15c1ad253..daf27c83f 100644 --- a/editions/tw5.com/tiddlers/saving/Saving on TiddlyDesktop.tid +++ b/editions/tw5.com/tiddlers/saving/Saving on TiddlyDesktop.tid @@ -6,7 +6,7 @@ delivery: App description: Custom desktop application for working with TiddlyWiki method: save modified: 20200507104332791 -tags: Saving Mac Windows Linux +tags: Saving Mac Windows Linux [[Standalone App]] title: Saving on TiddlyDesktop type: text/vnd.tiddlywiki url: https://github.com/TiddlyWiki/TiddlyDesktop/releases diff --git a/editions/tw5.com/tiddlers/saving/Saving on iPad_iPhone.tid b/editions/tw5.com/tiddlers/saving/Saving on iPad_iPhone.tid index 4985f4dc7..7201b6b7c 100644 --- a/editions/tw5.com/tiddlers/saving/Saving on iPad_iPhone.tid +++ b/editions/tw5.com/tiddlers/saving/Saving on iPad_iPhone.tid @@ -6,7 +6,7 @@ delivery: App description: iPad/iPhone app for working with TiddlyWiki method: save modified: 20201007205336209 -tags: Saving iOS +tags: Saving iOS [[Standalone App]] title: Saving on iPad/iPhone type: text/vnd.tiddlywiki diff --git a/editions/tw5.com/tiddlers/saving/Saving.tid b/editions/tw5.com/tiddlers/saving/Saving.tid index d9072d8d7..fda400295 100644 --- a/editions/tw5.com/tiddlers/saving/Saving.tid +++ b/editions/tw5.com/tiddlers/saving/Saving.tid @@ -1,6 +1,6 @@ created: 20140912140651119 modified: 20220401151525812 -saving-browser: Firefox Chrome Edge [[Internet Explorer]] Safari Opera +saving-browser: Firefox Chrome Edge [[Internet Explorer]] Safari Opera [[Standalone App]] saving-os: Windows Mac Linux Android iOS tags: [[Working with TiddlyWiki]] title: Saving From 91cfb217d835b1abad3e22dd556f6e46399a96e0 Mon Sep 17 00:00:00 2001 From: Max Schillinger Date: Sun, 15 May 2022 18:46:32 +0200 Subject: [PATCH 20/28] Markdown: Add shortcut for new Markdown tiddler (#6696) ctrl-M on mac, alt-M on other platforms --- .../markdown/KeyboardShortcuts/new-markdown-tiddler.tid | 8 ++++++++ plugins/tiddlywiki/markdown/config.multids | 5 +++++ 2 files changed, 13 insertions(+) create mode 100644 plugins/tiddlywiki/markdown/KeyboardShortcuts/new-markdown-tiddler.tid create mode 100644 plugins/tiddlywiki/markdown/config.multids diff --git a/plugins/tiddlywiki/markdown/KeyboardShortcuts/new-markdown-tiddler.tid b/plugins/tiddlywiki/markdown/KeyboardShortcuts/new-markdown-tiddler.tid new file mode 100644 index 000000000..a629f6227 --- /dev/null +++ b/plugins/tiddlywiki/markdown/KeyboardShortcuts/new-markdown-tiddler.tid @@ -0,0 +1,8 @@ +title: $:/plugins/tiddlywiki/markdown/KeyboardShortcuts/new-markdown-tiddler +tags: $:/tags/KeyboardShortcut +key: ((new-markdown-tiddler)) + +\whitespace trim +<$navigator story="$:/StoryList" history="$:/HistoryList" openLinkFromInsideRiver={{$:/config/Navigation/openLinkFromInsideRiver}} openLinkFromOutsideRiver={{$:/config/Navigation/openLinkFromOutsideRiver}} relinkOnRename={{$:/config/RelinkOnRename}}> +<$action-sendmessage $message="tm-new-tiddler" type="text/x-markdown"/> + diff --git a/plugins/tiddlywiki/markdown/config.multids b/plugins/tiddlywiki/markdown/config.multids new file mode 100644 index 000000000..1f142c8b4 --- /dev/null +++ b/plugins/tiddlywiki/markdown/config.multids @@ -0,0 +1,5 @@ +title: $:/config/ + +ShortcutInfo/new-markdown-tiddler: {{$:/language/Buttons/NewMarkdown/Hint}} +shortcuts-mac/new-markdown-tiddler: ctrl-M +shortcuts-not-mac/new-markdown-tiddler: alt-M From 855b6719d63db531e501474170c04579be409b7c Mon Sep 17 00:00:00 2001 From: Max Schillinger Date: Sun, 15 May 2022 18:47:21 +0200 Subject: [PATCH 21/28] Markdown: Add separate link and linkify buttons (#6693) * Markdown: Add separate link and linkify buttons * Add Markdown linkify icon (created by Jeremy); cleanup --- .../markdown/EditorToolbar/link-dropdown.tid | 73 +++++++++++++++++++ .../markdown/EditorToolbar/link.tid | 20 ++--- .../markdown/EditorToolbar/linkify.tid | 15 ++++ .../editor-operations/make-markdown-link.js | 37 ++++++++++ .../markdown/images/markdown-linkify.tid | 6 ++ 5 files changed, 139 insertions(+), 12 deletions(-) create mode 100644 plugins/tiddlywiki/markdown/EditorToolbar/link-dropdown.tid create mode 100755 plugins/tiddlywiki/markdown/EditorToolbar/linkify.tid create mode 100644 plugins/tiddlywiki/markdown/editor-operations/make-markdown-link.js create mode 100644 plugins/tiddlywiki/markdown/images/markdown-linkify.tid diff --git a/plugins/tiddlywiki/markdown/EditorToolbar/link-dropdown.tid b/plugins/tiddlywiki/markdown/EditorToolbar/link-dropdown.tid new file mode 100644 index 000000000..848da32f6 --- /dev/null +++ b/plugins/tiddlywiki/markdown/EditorToolbar/link-dropdown.tid @@ -0,0 +1,73 @@ +title: $:/plugins/tiddlywiki/markdown/EditorToolbar/link-dropdown + +\define lingo-base() $:/language/Buttons/Link/ + +\define add-link-actions() +\whitespace trim +<$action-sendmessage $message="tm-edit-text-operation" $param="make-markdown-link" text={{$(linkTiddler)$}} /> +<$action-deletetiddler $filter="[] [] [] [] []"/> +\end + +\define get-focus-selector() [data-tiddler-title="$(cssEscapedTitle)$"] .tc-create-wikitext-link input + +\define cancel-search-actions-inner() +<$set name="userInput" value={{{ [get[text]] }}}><$list filter="[get[text]!match]" emptyMessage="<$action-deletetiddler $filter='[] [] [] []'/>"><$action-setfield $tiddler=<> text=<>/><$action-setfield $tiddler=<> text="yes"/> +\end + +\define cancel-search-actions() <$list filter="[!has[text]] +[!has[text]]" emptyMessage="<>"><$action-sendmessage $message="tm-edit-text-operation" $param="focus-editor"/> + +\define external-link() +\whitespace trim +<$button class="tc-btn-invisible" style="width: auto; display: inline-block; background-colour: inherit;" actions=<>> +{{$:/core/images/chevron-right}} + +\end + +\define set-next-input-tab(beforeafter:"after") <$macrocall $name="change-input-tab" stateTitle="$:/state/tab/search-results/sidebar" tag="$:/tags/SearchResults" beforeafter="$beforeafter$" defaultState={{$:/config/SearchResults/Default}} actions="<$action-setfield $tiddler='$:/state/search/currentTab' text=<>/>"/> + +\define body(config-title) +\whitespace trim +''<>'' + +<$vars searchTiddler="""$config-title$/search""" linkTiddler="""$config-title$/link""" linktext="" searchListState=<> refreshTitle=<> storeTitle=<>> + +<$vars linkTiddler=<>> +<$keyboard key="((input-tab-right))" actions=<>> +<$keyboard key="((input-tab-left))" actions=<> class="tc-create-wikitext-link"> +<$macrocall $name="keyboard-driven-input" tiddler=<> storeTitle=<> + selectionStateTitle=<> refreshTitle=<> type="search" filterMinLength="1" + tag="input" focus="true" class="tc-popup-handle" inputCancelActions=<> + inputAcceptActions=<> placeholder={{$:/language/Search/Search}} default="" + configTiddlerFilter="[[$:/state/search/currentTab]!is[missing]get[text]] ~[{$:/config/SearchResults/Default}]" /> + + + +<$reveal tag="span" state=<> type="nomatch" text=""> +<> + +<$button class="tc-btn-invisible" style="width: auto; display: inline-block; background-colour: inherit;"> +<><$set name="cssEscapedTitle" value={{{ [escapecss[]] }}}><$action-sendmessage $message="tm-focus-selector" $param=<>/> +{{$:/core/images/close-button}} + + + + +<$reveal tag="div" state=<> type="nomatch" text=""> + +<$linkcatcher actions=<> to=<>> + +<$vars userInput={{{ [get[text]] }}} configTiddler={{{ [[$:/state/search/currentTab]!is[missing]get[text]] ~[{$:/config/SearchResults/Default}] }}}> + +{{$:/core/ui/SearchResults}} + + + + + + + + + +\end + +<$macrocall $name="body" config-title=<>/> diff --git a/plugins/tiddlywiki/markdown/EditorToolbar/link.tid b/plugins/tiddlywiki/markdown/EditorToolbar/link.tid index f1a41317f..009b93802 100755 --- a/plugins/tiddlywiki/markdown/EditorToolbar/link.tid +++ b/plugins/tiddlywiki/markdown/EditorToolbar/link.tid @@ -1,15 +1,11 @@ -caption: {{$:/language/Buttons/Link/Caption}} (Markdown) -condition: [type[text/x-markdown]] [type[text/markdown]] -description: {{$:/language/Buttons/Link/Hint}} -icon: $:/core/images/link -list-after: $:/core/ui/EditorToolbar/link -shortcuts: ((link)) title: $:/plugins/tiddlywiki/markdown/EditorToolbar/link +list-after: $:/core/ui/EditorToolbar/link tags: $:/tags/EditorToolbar +icon: $:/core/images/link +caption: {{$:/language/Buttons/Link/Caption}} +description: {{$:/language/Buttons/Link/Hint}} +condition: [type[text/x-markdown]] [type[text/markdown]] +button-classes: tc-text-editor-toolbar-item-start-group +shortcuts: ((link)) +dropdown: $:/plugins/tiddlywiki/markdown/EditorToolbar/link-dropdown -<$action-sendmessage - $message="tm-edit-text-operation" - $param="wrap-selection" - prefix="[" - suffix="]()" -/> diff --git a/plugins/tiddlywiki/markdown/EditorToolbar/linkify.tid b/plugins/tiddlywiki/markdown/EditorToolbar/linkify.tid new file mode 100755 index 000000000..be842544a --- /dev/null +++ b/plugins/tiddlywiki/markdown/EditorToolbar/linkify.tid @@ -0,0 +1,15 @@ +caption: {{$:/language/Buttons/Linkify/Caption}} (Markdown) +condition: [type[text/x-markdown]] [type[text/markdown]] +description: {{$:/language/Buttons/Linkify/Hint}} +icon: $:/plugins/tiddlywiki/markdown/images/markdown-linkify +list-after: $:/core/ui/EditorToolbar/linkify +shortcuts: ((linkify)) +title: $:/plugins/tiddlywiki/markdown/EditorToolbar/linkify +tags: $:/tags/EditorToolbar + +<$action-sendmessage + $message="tm-edit-text-operation" + $param="wrap-selection" + prefix="[" + suffix="]()" +/> diff --git a/plugins/tiddlywiki/markdown/editor-operations/make-markdown-link.js b/plugins/tiddlywiki/markdown/editor-operations/make-markdown-link.js new file mode 100644 index 000000000..6ab90f883 --- /dev/null +++ b/plugins/tiddlywiki/markdown/editor-operations/make-markdown-link.js @@ -0,0 +1,37 @@ +/*\ +title: $:/plugins/tiddlywiki/markdown/editor-operations/make-markdown-link.js +type: application/javascript +module-type: texteditoroperation + +Text editor operation to make a markdown link + +\*/ +(function(){ + +/*jslint node: true, browser: true */ +/*global $tw: false */ +"use strict"; + +exports["make-markdown-link"] = function(event,operation) { + if(operation.selection) { + if(event.paramObject.text.includes("://")) { + operation.replacement = "[" + operation.selection + "](" + event.paramObject.text + ")"; + } else { + operation.replacement = "[" + operation.selection + "](#" + event.paramObject.text.replaceAll(" ", "%20") + ")"; + } + operation.cutStart = operation.selStart; + operation.cutEnd = operation.selEnd; + } else { + if(event.paramObject.text.includes("://")) { + operation.replacement = "<" + event.paramObject.text + ">"; + } else { + operation.replacement = "[](#" + event.paramObject.text.replaceAll(" ", "%20") + ")"; + } + operation.cutStart = operation.selStart; + operation.cutEnd = operation.selEnd; + } + operation.newSelStart = operation.selStart + operation.replacement.length; + operation.newSelEnd = operation.newSelStart; +}; + +})(); diff --git a/plugins/tiddlywiki/markdown/images/markdown-linkify.tid b/plugins/tiddlywiki/markdown/images/markdown-linkify.tid new file mode 100644 index 000000000..395faf8d9 --- /dev/null +++ b/plugins/tiddlywiki/markdown/images/markdown-linkify.tid @@ -0,0 +1,6 @@ +title: $:/plugins/tiddlywiki/markdown/images/markdown-linkify +tags: $:/tags/Image + + + + From 5ea315fb98182fecee04787146fe2750dfddd674 Mon Sep 17 00:00:00 2001 From: Max Schillinger Date: Tue, 17 May 2022 22:16:54 +0200 Subject: [PATCH 22/28] Allow toggling wrap-lines text operations (like mono block) (#6698) --- .../editor/operations/text/wrap-lines.js | 37 ++++++++++++++----- core/modules/utils/utils.js | 14 +++++++ 2 files changed, 41 insertions(+), 10 deletions(-) diff --git a/core/modules/editor/operations/text/wrap-lines.js b/core/modules/editor/operations/text/wrap-lines.js index e034292c3..2e4f22943 100644 --- a/core/modules/editor/operations/text/wrap-lines.js +++ b/core/modules/editor/operations/text/wrap-lines.js @@ -15,16 +15,33 @@ Text editor operation to wrap the selected lines with a prefix and suffix exports["wrap-lines"] = function(event,operation) { var prefix = event.paramObject.prefix || "", suffix = event.paramObject.suffix || ""; - // Cut just past the preceding line break, or the start of the text - operation.cutStart = $tw.utils.findPrecedingLineBreak(operation.text,operation.selStart); - // Cut to just past the following line break, or to the end of the text - operation.cutEnd = $tw.utils.findFollowingLineBreak(operation.text,operation.selEnd); - // Add the prefix and suffix - operation.replacement = prefix + "\n" + - operation.text.substring(operation.cutStart,operation.cutEnd) + "\n" + - suffix + "\n"; - operation.newSelStart = operation.cutStart + prefix.length + 1; - operation.newSelEnd = operation.newSelStart + (operation.cutEnd - operation.cutStart); + if($tw.utils.endsWith(operation.text.substring(0,operation.selStart), prefix + "\n") && + $tw.utils.startsWith(operation.text.substring(operation.selEnd), "\n" + suffix)) { + // Selected text is already surrounded by prefix and suffix: Remove them + // Cut selected text plus prefix and suffix + operation.cutStart = operation.selStart - (prefix.length + 1); + operation.cutEnd = operation.selEnd + suffix.length + 1; + // Also cut the following newline (if there is any) + if (operation.text[operation.cutEnd] === "\n") { + operation.cutEnd++; + } + // Replace with selection + operation.replacement = operation.text.substring(operation.selStart,operation.selEnd); + // Select text that was in between prefix and suffix + operation.newSelStart = operation.cutStart; + operation.newSelEnd = operation.selEnd - (prefix.length + 1); + } else { + // Cut just past the preceding line break, or the start of the text + operation.cutStart = $tw.utils.findPrecedingLineBreak(operation.text,operation.selStart); + // Cut to just past the following line break, or to the end of the text + operation.cutEnd = $tw.utils.findFollowingLineBreak(operation.text,operation.selEnd); + // Add the prefix and suffix + operation.replacement = prefix + "\n" + + operation.text.substring(operation.cutStart,operation.cutEnd) + "\n" + + suffix + "\n"; + operation.newSelStart = operation.cutStart + prefix.length + 1; + operation.newSelEnd = operation.newSelStart + (operation.cutEnd - operation.cutStart); + } }; })(); diff --git a/core/modules/utils/utils.js b/core/modules/utils/utils.js index 441eb638f..bc4774fe1 100644 --- a/core/modules/utils/utils.js +++ b/core/modules/utils/utils.js @@ -95,6 +95,20 @@ exports.repeat = function(str,count) { return result; }; +/* +Check if a string starts with another string +*/ +exports.startsWith = function(str,search) { + return str.substring(0, search.length) === search; +}; + +/* +Check if a string ends with another string +*/ +exports.endsWith = function(str,search) { + return str.substring(str.length - search.length) === search; +}; + /* Trim whitespace from the start and end of a string Thanks to Steven Levithan, http://blog.stevenlevithan.com/archives/faster-trim-javascript From 7cbe1e1d8385ce00520a54877c4d7c8b80563d22 Mon Sep 17 00:00:00 2001 From: Max Schillinger Date: Tue, 17 May 2022 22:31:50 +0200 Subject: [PATCH 23/28] Fix toggling of the numbered list prefix in Markdown tiddlers (#6697) * Fix toggling of the numbered list prefix in Markdown tiddlers * Define startsWith in utils.js because it's not available in ECMAScript5.1 --- core/modules/editor/operations/text/prefix-lines.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/core/modules/editor/operations/text/prefix-lines.js b/core/modules/editor/operations/text/prefix-lines.js index fd483a983..0a005c96f 100644 --- a/core/modules/editor/operations/text/prefix-lines.js +++ b/core/modules/editor/operations/text/prefix-lines.js @@ -25,8 +25,8 @@ exports["prefix-lines"] = function(event,operation) { $tw.utils.each(lines,function(line,index) { // Remove and count any existing prefix characters var count = 0; - while(line.charAt(0) === event.paramObject.character) { - line = line.substring(1); + while($tw.utils.startsWith(line,event.paramObject.character)) { + line = line.substring(event.paramObject.character.length); count++; } // Remove any whitespace From 6eb4fbeeadce5a3083a990967d67e1bcca221551 Mon Sep 17 00:00:00 2001 From: "jeremy@jermolene.com" Date: Fri, 20 May 2022 17:13:12 +0100 Subject: [PATCH 24/28] Fix double palette entries Fixes #6700 Thanks to Eric Shulman --- core/ui/PaletteManager.tid | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/core/ui/PaletteManager.tid b/core/ui/PaletteManager.tid index c39bbee45..ae91d9ccc 100644 --- a/core/ui/PaletteManager.tid +++ b/core/ui/PaletteManager.tid @@ -65,14 +65,10 @@ title: $:/PaletteManager \whitespace trim -<$list filter="[all[shadows+tiddlers]tag[$:/tags/Palette]indexes[]]" variable="colourName"> -<$list - filter="[indexes[]removeprefixsuffix[]]" - variable="ignore" - emptyMessage="<$list filter='[{$:/state/palettemanager/showexternal}removeprefix[yes]suffix[]]' variable='ignore'><>"> -<> - - +<$set name="colorList" filter="[{$:/state/palettemanager/showexternal}match[yes]]" + value="[all[shadows+tiddlers]tag[$:/tags/Palette]indexes[]]" emptyValue="[indexes[]]"> +<$list filter=<> variable="colourName"> <> +
\end From 96cb66a27ee604e551a1c7417e6c5b9e3f5884d2 Mon Sep 17 00:00:00 2001 From: "jeremy@jermolene.com" Date: Sat, 21 May 2022 14:38:05 +0100 Subject: [PATCH 25/28] New example for tm-new-tiddler Fixes #6690 --- .../messages/WidgetMessage_ tm-new-tiddler.tid | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/editions/tw5.com/tiddlers/messages/WidgetMessage_ tm-new-tiddler.tid b/editions/tw5.com/tiddlers/messages/WidgetMessage_ tm-new-tiddler.tid index d060552d8..49b255afd 100644 --- a/editions/tw5.com/tiddlers/messages/WidgetMessage_ tm-new-tiddler.tid +++ b/editions/tw5.com/tiddlers/messages/WidgetMessage_ tm-new-tiddler.tid @@ -1,6 +1,6 @@ caption: tm-new-tiddler created: 20140226194405353 -modified: 20141107132122081 +modified: 20220521143507491 tags: Messages navigator-message title: WidgetMessage: tm-new-tiddler type: text/vnd.tiddlywiki @@ -28,7 +28,7 @@ To make a button that creates new tiddlers tagged "task", create a tiddler calle <$button message="tm-new-tiddler" param="TaskTemplate">New Task ``` -To create a new tiddler with given attributes rather than from a template: +To create a new tiddler with explicit parameters rather than by cloning a template tiddler: ``` <$button> @@ -36,3 +36,12 @@ To create a new tiddler with given attributes rather than from a template: New Tiddler ``` + + To create a new tiddler from a template with additional parameters: + +``` + <$button> + <$action-sendmessage $message="tm-new-tiddler" $param=<> fieldname="field value"/> + New Tiddler + + ``` From 8fabcabebbd910c5ec08e1fc07d1851b0605aee6 Mon Sep 17 00:00:00 2001 From: "jeremy@jermolene.com" Date: Sat, 21 May 2022 15:36:23 +0100 Subject: [PATCH 26/28] Browserstorage plugin: don't crash if local storage not available Fix #6701 --- plugins/tiddlywiki/browser-storage/startup.js | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/plugins/tiddlywiki/browser-storage/startup.js b/plugins/tiddlywiki/browser-storage/startup.js index 0f93de13b..33989e8a7 100644 --- a/plugins/tiddlywiki/browser-storage/startup.js +++ b/plugins/tiddlywiki/browser-storage/startup.js @@ -115,13 +115,15 @@ function saveTiddlerToLocalStorage(title,options) { function clearLocalStorage() { var url = window.location.pathname, log = []; - // Step through each browsder storage item - for(var index=window.localStorage.length - 1; index>=0; index--) { - var key = window.localStorage.key(index), - parts = key.split("#"); - // Delete it if it's ours - if(parts[0] === "tw5" && parts[1] === url) { - window.localStorage.removeItem(key); + // Step through each browser storage item + if(window.localStorage) { + for(var index=window.localStorage.length - 1; index>=0; index--) { + var key = window.localStorage.key(index), + parts = key.split("#"); + // Delete it if it is ours + if(parts[0] === "tw5" && parts[1] === url) { + window.localStorage.removeItem(key); + } } } } From 9e3c2336860672cd8c6364ecdec7321ef265b956 Mon Sep 17 00:00:00 2001 From: "jeremy@jermolene.com" Date: Mon, 23 May 2022 08:56:10 +0100 Subject: [PATCH 27/28] Add some warnings about the dangers of title lists --- editions/tw5.com/tiddlers/concepts/Title List.tid | 5 ++++- editions/tw5.com/tiddlers/filters/format.tid | 4 +++- editions/tw5.com/tiddlers/widgets/SetWidget.tid | 4 +++- 3 files changed, 10 insertions(+), 3 deletions(-) diff --git a/editions/tw5.com/tiddlers/concepts/Title List.tid b/editions/tw5.com/tiddlers/concepts/Title List.tid index d9bbe8412..a49a665ad 100644 --- a/editions/tw5.com/tiddlers/concepts/Title List.tid +++ b/editions/tw5.com/tiddlers/concepts/Title List.tid @@ -1,7 +1,8 @@ created: 20150117152418000 -modified: 20150124205659000 +modified: 20220523075540462 tags: Concepts title: Title List +type: text/vnd.tiddlywiki A <<.def "title list">> is a line of text that presents one or more tiddler titles, strung together with a space between each one and the next. @@ -12,3 +13,5 @@ If a title <<.em contains>> a space, it needs double square brackets around it: Title lists are used in various places, including PermaLinks and the ListField. They are in fact the simplest case of a [[filter|Filters]], and are thus a way of expressing a [[selection of titles|Title Selection]]. + +<<.warning """The [[Title List]] format cannot reliably represent items that contain certain specific character sequences such as `]] `. Thus it should not be used where there is a possibility of such sequences occurring.""">> diff --git a/editions/tw5.com/tiddlers/filters/format.tid b/editions/tw5.com/tiddlers/filters/format.tid index 138eb018f..9cc846139 100644 --- a/editions/tw5.com/tiddlers/filters/format.tid +++ b/editions/tw5.com/tiddlers/filters/format.tid @@ -1,6 +1,6 @@ caption: format created: 20201020100834443 -modified: 20210524090002126 +modified: 20220523075550449 op-input: a [[selection of titles|Title Selection]] op-output: input strings formatted according to the specified suffix <<.place B>> op-parameter: optional format string for the formats @@ -21,4 +21,6 @@ The suffix <<.place B>> is one of the following supported string formats: |^`relativedate` |The input string is interpreted as a UTC date and displayed as the interval from the present instant. Any operator parameters are ignored. | |^`titlelist` |<<.from-version "5.2.0">>The input string wrapped in double square brackets if it contains a space. Appropriate for use in a [[title list|Title List]]. | +<<.warning """The [[Title List]] format cannot reliably represent items that contain certain specific character sequences such as `]] `. Thus it should not be used where there is a possibility of such sequences occurring.""">> + <<.operator-examples "format">> diff --git a/editions/tw5.com/tiddlers/widgets/SetWidget.tid b/editions/tw5.com/tiddlers/widgets/SetWidget.tid index 12ed35176..fe05e8faa 100644 --- a/editions/tw5.com/tiddlers/widgets/SetWidget.tid +++ b/editions/tw5.com/tiddlers/widgets/SetWidget.tid @@ -1,6 +1,6 @@ caption: set created: 20131115182700000 -modified: 20210505095640228 +modified: 20220523075522407 tags: Widgets title: SetWidget type: text/vnd.tiddlywiki @@ -71,6 +71,8 @@ src="""<$set name="myVariable" filter="[all[current]field:title[myMagicTitle]]" This form of the set variable widget evaluates the filter and assigns the result to the variable as a space-separated list (using double square brackets for titles containing spaces). +<<.warning """The [[Title List]] format cannot reliably represent items that contain certain specific character sequences such as `]] `. Thus it should not be used where there is a possibility of such sequences occurring.""">> + <<< <$macrocall $name='wikitext-example-without-html' From a9b0c5d7ffe9ccbb30875ae8e81ff09fdd615d0e Mon Sep 17 00:00:00 2001 From: "jeremy@jermolene.com" Date: Mon, 23 May 2022 09:14:02 +0100 Subject: [PATCH 28/28] Cherry-pick JSON docs improvements from #6522 --- .../tiddlers/concepts/DataTiddlers.tid | 25 ++----- .../tiddlers/concepts/DictionaryTiddlers.tid | 5 +- .../tiddlers/concepts/JSONTiddlers.tid | 7 +- .../JavaScript Object Notation.tid | 8 +-- .../tiddlers/features/JSON in TiddlyWiki.tid | 69 +++++++++++++++++++ .../howtos/Constructing JSON tiddlers.tid | 16 +++++ .../howtos/Modifying JSON tiddlers.tid | 18 +++++ .../Reading data from JSON tiddlers.tid | 25 +++++++ .../tiddlers/macros/JsonTiddlersMacro.tid | 6 +- .../tiddlers/macros/jsontiddler Macro.tid | 4 +- .../tiddlers/widgets/JSONTiddlerWidget.tid | 11 +-- 11 files changed, 152 insertions(+), 42 deletions(-) create mode 100644 editions/tw5.com/tiddlers/features/JSON in TiddlyWiki.tid create mode 100644 editions/tw5.com/tiddlers/howtos/Constructing JSON tiddlers.tid create mode 100644 editions/tw5.com/tiddlers/howtos/Modifying JSON tiddlers.tid create mode 100644 editions/tw5.com/tiddlers/howtos/Reading data from JSON tiddlers.tid diff --git a/editions/tw5.com/tiddlers/concepts/DataTiddlers.tid b/editions/tw5.com/tiddlers/concepts/DataTiddlers.tid index af1cda446..dc100a37e 100644 --- a/editions/tw5.com/tiddlers/concepts/DataTiddlers.tid +++ b/editions/tw5.com/tiddlers/concepts/DataTiddlers.tid @@ -1,7 +1,8 @@ -created: 201308291647 -modified: 201308291647 +created: 20130829164700000 +modified: 20220427171321793 tags: Concepts title: DataTiddlers +type: text/vnd.tiddlywiki A data tiddler is a miniature database contained within a tiddler. @@ -12,22 +13,4 @@ There are two standard formats: Other formats of tiddler can also be parsed to yield blocks of data that behave like data tiddlers. -Use a TextReference to look up the value of a named property. For example, if a [[DictionaryTiddler|DictionaryTiddlers]] called `MonthDays` contains: - -``` -oct:31 -nov:30 -dec:31 -``` - -... then `{{MonthDays##nov}}` will resolve to the value `30`. - -The same is true if `MonthDays` is a [[JSONTiddler|JSONTiddlers]] with the following content: - -``` -{"oct":31,"nov":30,"dec":31} -``` - -Note: //It is currently only possible to retrieve data from the immediate properties of the root object of a JSONTiddler.// - -The widgets ActionSetFieldWidget and ActionListopsWidget can manipulate named properties of data tiddlers by indicating the name of the property in the $index attribute. To create or modify a named property with ActionSetFieldWidget, provide a $value attribute. To delete a named property with ActionSetFieldWidget, omit the $value attribute. ActionListopsWidget assigns the named property the list constructed through its $filter and $subfilter attributes. +See [[JSON in TiddlyWiki]] for an overview. diff --git a/editions/tw5.com/tiddlers/concepts/DictionaryTiddlers.tid b/editions/tw5.com/tiddlers/concepts/DictionaryTiddlers.tid index 33a0a65cd..a1f1d6668 100644 --- a/editions/tw5.com/tiddlers/concepts/DictionaryTiddlers.tid +++ b/editions/tw5.com/tiddlers/concepts/DictionaryTiddlers.tid @@ -1,9 +1,10 @@ created: 20141228094500000 -modified: 20180305111822713 +modified: 20220427171020974 tags: Concepts title: DictionaryTiddlers +type: text/vnd.tiddlywiki -A dictionary tiddler is a [[data tiddler|DataTiddlers]] containing a simple list of `name: value` pairs. +A dictionary tiddler is a kind of [[data tiddler|DataTiddlers]] that contains a simple list of `name: value` pairs. Its [[ContentType]] is `application/x-tiddler-dictionary`. diff --git a/editions/tw5.com/tiddlers/concepts/JSONTiddlers.tid b/editions/tw5.com/tiddlers/concepts/JSONTiddlers.tid index 259b4a49f..caffd063c 100644 --- a/editions/tw5.com/tiddlers/concepts/JSONTiddlers.tid +++ b/editions/tw5.com/tiddlers/concepts/JSONTiddlers.tid @@ -1,10 +1,11 @@ created: 20141228094500000 -modified: 20150221152956000 +modified: 20220427171219408 tags: Concepts title: JSONTiddlers +type: text/vnd.tiddlywiki -A JSON tiddler is a [[data tiddler|DataTiddlers]] containing a [[JSON|JavaScript Object Notation]] structure in its `text` field. +A JSON tiddler is a [[data tiddler|DataTiddlers]] containing a [[JSON|JavaScript Object Notation]] structure in its `text` field. See [[JSON in TiddlyWiki]] for an overview. Its [[ContentType]] is `application/json`. -The [[history list|$:/HistoryList]] is a good example of a JSON tiddler. +The [[history list|$:/HistoryList]] is an of a JSON tiddler. diff --git a/editions/tw5.com/tiddlers/definitions/JavaScript Object Notation.tid b/editions/tw5.com/tiddlers/definitions/JavaScript Object Notation.tid index 91e2ff5ac..c0a9a6ea9 100644 --- a/editions/tw5.com/tiddlers/definitions/JavaScript Object Notation.tid +++ b/editions/tw5.com/tiddlers/definitions/JavaScript Object Notation.tid @@ -1,11 +1,7 @@ created: 20150221152904000 -modified: 20150221181720000 +modified: 20220427170920772 tags: Definitions title: JavaScript Object Notation type: text/vnd.tiddlywiki -<<.dlink-ex JSON "https://en.wikipedia.org/wiki/JSON">> is a standard plain-text format used for modelling hierarchical structures of objects that contain named fields. - -DataTiddlers can have JSON content. - -The <<.mlink jsontiddlers>> macro returns tiddler content in JSON format. +<<.dlink-ex JSON "https://en.wikipedia.org/wiki/JSON">> is a standard plain-text format used for modelling hierarchical structures of objects that contain named fields. See [[JSON in TiddlyWiki]] for an overview. diff --git a/editions/tw5.com/tiddlers/features/JSON in TiddlyWiki.tid b/editions/tw5.com/tiddlers/features/JSON in TiddlyWiki.tid new file mode 100644 index 000000000..2f2edd09f --- /dev/null +++ b/editions/tw5.com/tiddlers/features/JSON in TiddlyWiki.tid @@ -0,0 +1,69 @@ +title: JSON in TiddlyWiki +tags: Features +type: text/vnd.tiddlywiki +created: 20220427174702859 +modified: 20220427174702859 + +!! Introduction + +JSON (~JavaScript Object Notation) is a standardised text representation for data structures that is widely used for the storage and transfer of data. + +JSON is used in several different contexts in TiddlyWiki. For example: + +* Tiddlers are represented as JSON data within TiddlyWiki HTML files +* Groups of tiddlers can be [[exported|How to export tiddlers]] and [[imported|Importing Tiddlers]] as JSON files +* Plugin tiddlers store their constituent shadow tiddlers as JSON data +* The client-server configuration uses [[JSON messages|TiddlyWeb JSON tiddler format]] to communicate between the client and the server +* Arbitrary JSON data within DataTiddlers can be processed and manipulated using a set of filter operators and action widgets + +!! About JSON + +The technical description of JSON at the official website https://json.org/ is terse. Here we summarise the main features. + +JSON supports two basic data structures: + +''Arrays'' are lists of items. The items are identified by their numeric index (starting at zero) + +An example of an array is: + +```json +["one","two","three\"four"] +``` + +Note the following features of arrays: + +* The array is signified by square brackets surrounding the list of items +* Each item is a string in double quotes. Double quotes can be included within the strings by preceding them with a backslash (`\`) +* The items are separated by commas + +''Objects'' are collections of name/value pairs. Each item is a value that is identified by a unique name + +An example of an object is: + +```json +{ + "first": "This is the first value", + "second": "This is the second value", + "third": "This is the third value" +} +``` + +Note the following features of objects: + +* The object is signified by curly braces surrounding the list of name/value pairs +* Each name/value pair consists of the name in double quotes, a colon, and then the value +* The name/value pairs are separated by commas + +The examples above all show string values. JSON actually supports several different types of value. Any of these types can be used as a value: + +* String values, as shown above +* Numeric values, represented as signed decimals such as `1`, `3.14`. Exponential notation can also be used e.g. `-1E10` +* Boolean values, represented by the keywords `true` and `false` +* The special value `null`, which is often used to represent data that is missing or incomplete +* Objects and arrays are also values, allowing complex nested structures to be represented + +!! Working with Data Tiddlers + +* [[Reading data from JSON tiddlers]] +* [[Constructing JSON tiddlers]] +* [[Modifying JSON tiddlers]] diff --git a/editions/tw5.com/tiddlers/howtos/Constructing JSON tiddlers.tid b/editions/tw5.com/tiddlers/howtos/Constructing JSON tiddlers.tid new file mode 100644 index 000000000..58b36244c --- /dev/null +++ b/editions/tw5.com/tiddlers/howtos/Constructing JSON tiddlers.tid @@ -0,0 +1,16 @@ +title: Constructing JSON tiddlers +tags: [[JSON in TiddlyWiki]] [[Learning]] +created: 20220427174702859 +modified: 20220427174702859 + +See [[JSON in TiddlyWiki]] for an overview of using JSON in TiddlyWiki. + +JSON data is just plain text, and so there are an wide variety of techniques to generate it in wikitext. + +At a high level, we have several ways to generate JSON data in TiddlyWiki's own tiddler format: + +* JSONTiddlerWidget +* [[jsontiddler Macro]] +* [[jsontiddlers Macro]] + +When constructing JSON data manually, the [[jsonstringify Operator]] is needed to ensure that any special characters are properly escaped. diff --git a/editions/tw5.com/tiddlers/howtos/Modifying JSON tiddlers.tid b/editions/tw5.com/tiddlers/howtos/Modifying JSON tiddlers.tid new file mode 100644 index 000000000..947d3cdf5 --- /dev/null +++ b/editions/tw5.com/tiddlers/howtos/Modifying JSON tiddlers.tid @@ -0,0 +1,18 @@ +created: 20220427174702859 +modified: 20220427171707459 +tags: [[JSON in TiddlyWiki]] Learning +title: Modifying JSON tiddlers +type: text/vnd.tiddlywiki + +See [[JSON in TiddlyWiki]] for an overview of using JSON in TiddlyWiki. + +Note that + +!! Using ActionSetFieldWidget and ActionListopsWidget + +The widgets ActionSetFieldWidget and ActionListopsWidget can manipulate named properties of data tiddlers by indicating the name of the property in the $index attribute. + +* To create or modify a named property with ActionSetFieldWidget, provide a $value attribute +* To delete a named property with ActionSetFieldWidget, omit the $value attribute. + +ActionListopsWidget assigns the named property the list constructed through its $filter and $subfilter attributes. diff --git a/editions/tw5.com/tiddlers/howtos/Reading data from JSON tiddlers.tid b/editions/tw5.com/tiddlers/howtos/Reading data from JSON tiddlers.tid new file mode 100644 index 000000000..acf482789 --- /dev/null +++ b/editions/tw5.com/tiddlers/howtos/Reading data from JSON tiddlers.tid @@ -0,0 +1,25 @@ +created: 20220427174702859 +modified: 20220427171449102 +tags: [[JSON in TiddlyWiki]] Learning +title: Reading data from JSON tiddlers +type: text/vnd.tiddlywiki + +See [[JSON in TiddlyWiki]] for an overview of using JSON in TiddlyWiki. + +!! Text References for Accessing JSON Data + +[[Text references|TextReference]] are a simple shortcut syntax to look up the value of a named property. For example, if a [[DictionaryTiddler|DictionaryTiddlers]] called `MonthDays` contains: + +``` +oct:31 +nov:30 +dec:31 +``` + +... then `{{MonthDays##nov}}` will resolve to the value `30`. + +The same is true if `MonthDays` is a [[JSONTiddler|JSONTiddlers]] with the following content: + +``` +{"oct":31,"nov":30,"dec":31} +``` diff --git a/editions/tw5.com/tiddlers/macros/JsonTiddlersMacro.tid b/editions/tw5.com/tiddlers/macros/JsonTiddlersMacro.tid index 5005e9e9c..d25df4d25 100644 --- a/editions/tw5.com/tiddlers/macros/JsonTiddlersMacro.tid +++ b/editions/tw5.com/tiddlers/macros/JsonTiddlersMacro.tid @@ -1,11 +1,11 @@ +caption: jsontiddlers created: 20150221152226000 -modified: 20200204135513721 +modified: 20220427171155184 tags: Macros [[Core Macros]] title: jsontiddlers Macro type: text/vnd.tiddlywiki -caption: jsontiddlers -The <<.def jsontiddlers>> [[macro|Macros]] returns the fields of a [[selection of tiddlers|Title Selection]] in [[JSON|JavaScript Object Notation]] form. +The <<.def jsontiddlers>> [[macro|Macros]] returns the fields of a [[selection of tiddlers|Title Selection]] in [[JSON|JavaScript Object Notation]] form. See [[JSON in TiddlyWiki]] for an overview. An example can be seen in the [[template tiddler for JSON exports|$:/core/templates/exporters/JsonFile]]. diff --git a/editions/tw5.com/tiddlers/macros/jsontiddler Macro.tid b/editions/tw5.com/tiddlers/macros/jsontiddler Macro.tid index f3a0f67c2..9f9666581 100644 --- a/editions/tw5.com/tiddlers/macros/jsontiddler Macro.tid +++ b/editions/tw5.com/tiddlers/macros/jsontiddler Macro.tid @@ -1,11 +1,11 @@ caption: jsontiddler created: 20170317140130417 -modified: 20170317140226040 +modified: 20220427171228844 tags: Macros [[Core Macros]] title: jsontiddler Macro type: text/vnd.tiddlywiki -The <<.def jsontiddler>> [[macro|Macros]] returns the fields of a single tiddler in [[JSON|JavaScript Object Notation]] form. +The <<.def jsontiddler>> [[macro|Macros]] returns the fields of a single tiddler in [[JSON|JavaScript Object Notation]] form. See [[JSON in TiddlyWiki]] for an overview. !! Parameters diff --git a/editions/tw5.com/tiddlers/widgets/JSONTiddlerWidget.tid b/editions/tw5.com/tiddlers/widgets/JSONTiddlerWidget.tid index b09596ff9..3f922bfa2 100644 --- a/editions/tw5.com/tiddlers/widgets/JSONTiddlerWidget.tid +++ b/editions/tw5.com/tiddlers/widgets/JSONTiddlerWidget.tid @@ -1,14 +1,15 @@ -title: JSONTiddlerWidget -created: 20210630100923398 -modified: 20210630100923398 -tags: Widgets caption: jsontiddler +created: 20210630100923398 +modified: 20220427171128693 +tags: Widgets +title: JSONTiddlerWidget +type: text/vnd.tiddlywiki ! Introduction The jsontiddler widget renders the fields of a tiddler to display as a JSON object. The fields of the tiddler can be customised or excluded. -The jsontiddler widget is used in system templates to generate JSON representations of tiddlers for saving. +The jsontiddler widget is used in system templates to generate JSON representations of tiddlers for saving. See [[JSON in TiddlyWiki]] for an overview. ! Content and Attributes