mirror of
https://github.com/Jermolene/TiddlyWiki5
synced 2025-12-07 09:18:06 +00:00
Merge branch 'master' into new-bidi-improvements
This commit is contained in:
317
.eslintrc.json
317
.eslintrc.json
@@ -1,317 +0,0 @@
|
||||
{
|
||||
"env": {
|
||||
"browser": true,
|
||||
"commonjs": true,
|
||||
"node": true
|
||||
},
|
||||
"extends": [
|
||||
"eslint:recommended"
|
||||
],
|
||||
"globals": {
|
||||
"$tw": "writable"
|
||||
},
|
||||
"parserOptions": {
|
||||
"ecmaVersion": 5
|
||||
},
|
||||
"plugins": [],
|
||||
"rules": {
|
||||
"array-bracket-newline": "off",
|
||||
"array-bracket-spacing": "off",
|
||||
"array-callback-return": "off",
|
||||
"array-element-newline": "off",
|
||||
"arrow-body-style": "error",
|
||||
"arrow-parens": [
|
||||
"error",
|
||||
"as-needed"
|
||||
],
|
||||
"arrow-spacing": [
|
||||
"error",
|
||||
{
|
||||
"after": true,
|
||||
"before": true
|
||||
}
|
||||
],
|
||||
"block-scoped-var": "off",
|
||||
"block-spacing": "off",
|
||||
"brace-style": "off",
|
||||
"callback-return": "off",
|
||||
"camelcase": "off",
|
||||
"capitalized-comments": "off",
|
||||
"class-methods-use-this": "error",
|
||||
"comma-dangle": "off",
|
||||
"comma-spacing": "off",
|
||||
"comma-style": "off",
|
||||
"complexity": "off",
|
||||
"computed-property-spacing": "off",
|
||||
"consistent-return": "off",
|
||||
"consistent-this": "off",
|
||||
"curly": "off",
|
||||
"default-case": "off",
|
||||
"default-case-last": "error",
|
||||
"default-param-last": "error",
|
||||
"dot-location": "off",
|
||||
"dot-notation": "off",
|
||||
"eol-last": "off",
|
||||
"eqeqeq": "off",
|
||||
"func-call-spacing": "off",
|
||||
"func-name-matching": "off",
|
||||
"func-names": "off",
|
||||
"func-style": "off",
|
||||
"function-call-argument-newline": "off",
|
||||
"function-paren-newline": "off",
|
||||
"generator-star-spacing": "error",
|
||||
"global-require": "off",
|
||||
"grouped-accessor-pairs": "error",
|
||||
"guard-for-in": "off",
|
||||
"handle-callback-err": "off",
|
||||
"id-blacklist": "error",
|
||||
"id-denylist": "error",
|
||||
"id-length": "off",
|
||||
"id-match": "error",
|
||||
"implicit-arrow-linebreak": "error",
|
||||
"indent": "off",
|
||||
"indent-legacy": "off",
|
||||
"init-declarations": "off",
|
||||
"jsx-quotes": "error",
|
||||
"key-spacing": "off",
|
||||
"keyword-spacing": [
|
||||
"error",
|
||||
{
|
||||
"before": true,
|
||||
"after": false,
|
||||
"overrides": {
|
||||
"case": {
|
||||
"after": true
|
||||
},
|
||||
"do": {
|
||||
"after": true
|
||||
},
|
||||
"else": {
|
||||
"after": true
|
||||
},
|
||||
"return": {
|
||||
"after": true
|
||||
},
|
||||
"throw": {
|
||||
"after": true
|
||||
},
|
||||
"try": {
|
||||
"after": true
|
||||
},
|
||||
"catch": {
|
||||
"after": true
|
||||
}
|
||||
}
|
||||
}
|
||||
],
|
||||
"line-comment-position": "off",
|
||||
"linebreak-style": "off",
|
||||
"lines-around-comment": "off",
|
||||
"lines-around-directive": "off",
|
||||
"lines-between-class-members": "error",
|
||||
"max-classes-per-file": "error",
|
||||
"max-depth": "off",
|
||||
"max-len": "off",
|
||||
"max-lines": "off",
|
||||
"max-lines-per-function": "off",
|
||||
"max-nested-callbacks": "error",
|
||||
"max-params": "off",
|
||||
"max-statements": "off",
|
||||
"max-statements-per-line": "off",
|
||||
"multiline-comment-style": "off",
|
||||
"multiline-ternary": "off",
|
||||
"new-parens": "off",
|
||||
"newline-after-var": "off",
|
||||
"newline-before-return": "off",
|
||||
"newline-per-chained-call": "off",
|
||||
"no-alert": "off",
|
||||
"no-array-constructor": "off",
|
||||
"no-await-in-loop": "error",
|
||||
"no-bitwise": "off",
|
||||
"no-buffer-constructor": "off",
|
||||
"no-caller": "error",
|
||||
"no-catch-shadow": "off",
|
||||
"no-confusing-arrow": "error",
|
||||
"no-console": "off",
|
||||
"no-constant-condition": [
|
||||
"error",
|
||||
{
|
||||
"checkLoops": false
|
||||
}
|
||||
],
|
||||
"no-constructor-return": "error",
|
||||
"no-continue": "off",
|
||||
"no-div-regex": "off",
|
||||
"no-duplicate-imports": "error",
|
||||
"no-else-return": "off",
|
||||
"no-empty-function": "off",
|
||||
"no-eq-null": "off",
|
||||
"no-eval": "off",
|
||||
"no-extend-native": "off",
|
||||
"no-extra-bind": "off",
|
||||
"no-extra-label": "off",
|
||||
"no-extra-parens": "off",
|
||||
"no-floating-decimal": "off",
|
||||
"no-implicit-coercion": [
|
||||
"error",
|
||||
{
|
||||
"boolean": false,
|
||||
"number": false,
|
||||
"string": false
|
||||
}
|
||||
],
|
||||
"no-implicit-globals": "off",
|
||||
"no-implied-eval": "error",
|
||||
"no-inline-comments": "off",
|
||||
"no-invalid-this": "off",
|
||||
"no-iterator": "error",
|
||||
"no-label-var": "off",
|
||||
"no-labels": "off",
|
||||
"no-lone-blocks": "off",
|
||||
"no-lonely-if": "off",
|
||||
"no-loop-func": "off",
|
||||
"no-loss-of-precision": "error",
|
||||
"no-magic-numbers": "off",
|
||||
"no-mixed-operators": "off",
|
||||
"no-mixed-requires": "off",
|
||||
"no-multi-assign": "off",
|
||||
"no-multi-spaces": "off",
|
||||
"no-multi-str": "error",
|
||||
"no-multiple-empty-lines": ["warn", { "max": 4, "maxEOF": 0 }],
|
||||
"no-native-reassign": "off",
|
||||
"no-negated-condition": "off",
|
||||
"no-negated-in-lhs": "error",
|
||||
"no-nested-ternary": "off",
|
||||
"no-new": "off",
|
||||
"no-new-func": "off",
|
||||
"no-new-object": "off",
|
||||
"no-new-require": "error",
|
||||
"no-new-wrappers": "error",
|
||||
"no-octal-escape": "error",
|
||||
"no-param-reassign": "off",
|
||||
"no-path-concat": "error",
|
||||
"no-plusplus": "off",
|
||||
"no-process-env": "off",
|
||||
"no-process-exit": "off",
|
||||
"no-promise-executor-return": "error",
|
||||
"no-proto": "off",
|
||||
"no-restricted-exports": "error",
|
||||
"no-restricted-globals": "error",
|
||||
"no-restricted-imports": "error",
|
||||
"no-restricted-modules": "error",
|
||||
"no-restricted-properties": "error",
|
||||
"no-restricted-syntax": "error",
|
||||
"no-return-assign": "off",
|
||||
"no-return-await": "error",
|
||||
"no-script-url": "off",
|
||||
"no-self-compare": "off",
|
||||
"no-sequences": "off",
|
||||
"no-shadow": "off",
|
||||
"no-spaced-func": "off",
|
||||
"no-sync": "off",
|
||||
"no-tabs": "off",
|
||||
"no-template-curly-in-string": "error",
|
||||
"no-ternary": "off",
|
||||
"no-throw-literal": "off",
|
||||
"no-trailing-spaces": "error",
|
||||
"no-undef-init": "off",
|
||||
"no-undefined": "off",
|
||||
"no-underscore-dangle": "off",
|
||||
"no-unmodified-loop-condition": "off",
|
||||
"no-unneeded-ternary": "off",
|
||||
"no-unreachable-loop": "error",
|
||||
"no-unused-expressions": "off",
|
||||
"no-use-before-define": "off",
|
||||
"no-useless-backreference": "error",
|
||||
"no-useless-call": "off",
|
||||
"no-useless-computed-key": "error",
|
||||
"no-useless-concat": "off",
|
||||
"no-useless-constructor": "error",
|
||||
"no-useless-rename": "error",
|
||||
"no-useless-return": "off",
|
||||
"no-var": "off",
|
||||
"no-void": "off",
|
||||
"no-warning-comments": "off",
|
||||
"no-whitespace-before-property": "error",
|
||||
"nonblock-statement-body-position": [
|
||||
"error",
|
||||
"any"
|
||||
],
|
||||
"object-curly-newline": "off",
|
||||
"object-curly-spacing": "off",
|
||||
"object-property-newline": "off",
|
||||
"object-shorthand": "off",
|
||||
"one-var": "off",
|
||||
"one-var-declaration-per-line": "off",
|
||||
"operator-assignment": "off",
|
||||
"operator-linebreak": "off",
|
||||
"padded-blocks": "off",
|
||||
"padding-line-between-statements": "error",
|
||||
"prefer-arrow-callback": "off",
|
||||
"prefer-const": "off",
|
||||
"prefer-destructuring": "off",
|
||||
"prefer-exponentiation-operator": "off",
|
||||
"prefer-named-capture-group": "off",
|
||||
"prefer-numeric-literals": "error",
|
||||
"prefer-object-spread": "off",
|
||||
"prefer-promise-reject-errors": "error",
|
||||
"prefer-reflect": "off",
|
||||
"prefer-regex-literals": "off",
|
||||
"prefer-rest-params": "off",
|
||||
"prefer-spread": "off",
|
||||
"prefer-template": "off",
|
||||
"quote-props": "off",
|
||||
"quotes": "off",
|
||||
"radix": "off",
|
||||
"require-atomic-updates": "error",
|
||||
"require-await": "error",
|
||||
"require-jsdoc": "off",
|
||||
"require-unicode-regexp": "off",
|
||||
"rest-spread-spacing": "error",
|
||||
"semi": "off",
|
||||
"semi-spacing": "off",
|
||||
"semi-style": "off",
|
||||
"sort-imports": "error",
|
||||
"sort-keys": "off",
|
||||
"sort-vars": "off",
|
||||
"space-before-blocks": "off",
|
||||
"space-before-function-paren": "off",
|
||||
"space-in-parens": "off",
|
||||
"space-infix-ops": "off",
|
||||
"space-unary-ops": "off",
|
||||
"spaced-comment": "off",
|
||||
"strict": "off",
|
||||
"switch-colon-spacing": "off",
|
||||
"symbol-description": "error",
|
||||
"template-curly-spacing": "error",
|
||||
"template-tag-spacing": "error",
|
||||
"unicode-bom": [
|
||||
"error",
|
||||
"never"
|
||||
],
|
||||
"valid-jsdoc": "off",
|
||||
"valid-typeof": [
|
||||
"error",
|
||||
{
|
||||
"requireStringLiterals": false
|
||||
}
|
||||
],
|
||||
"vars-on-top": "off",
|
||||
"wrap-iife": "off",
|
||||
"wrap-regex": "off",
|
||||
"yield-star-spacing": "error",
|
||||
"yoda": "off",
|
||||
"no-useless-escape": "off",
|
||||
"no-unused-vars": "off",
|
||||
"no-empty": "off",
|
||||
"no-extra-semi": "off",
|
||||
"no-redeclare": "off",
|
||||
"no-control-regex": "off",
|
||||
"no-mixed-spaces-and-tabs": "off",
|
||||
"no-extra-boolean-cast": "off",
|
||||
"no-prototype-builtins": "off",
|
||||
"no-undef": "off",
|
||||
"no-unreachable": "off",
|
||||
"no-self-assign": "off"
|
||||
}
|
||||
}
|
||||
55
.github/workflows/pr-check-build-size.yml
vendored
Normal file
55
.github/workflows/pr-check-build-size.yml
vendored
Normal file
@@ -0,0 +1,55 @@
|
||||
name: Calculate PR build size
|
||||
on:
|
||||
pull_request_target:
|
||||
types: [opened, reopened, synchronize]
|
||||
paths:
|
||||
- 'boot/**'
|
||||
- 'core/**'
|
||||
- 'themes/tiddlywiki/snowwhite/**'
|
||||
- 'themes/tiddlywiki/vanilla/**'
|
||||
|
||||
jobs:
|
||||
calculate-build-size:
|
||||
runs-on: ubuntu-latest
|
||||
permissions:
|
||||
pull-requests: read
|
||||
contents: read
|
||||
outputs:
|
||||
pr_size: ${{ steps.get_sizes.outputs.pr_size }}
|
||||
base_size: ${{ steps.get_sizes.outputs.base_size }}
|
||||
steps:
|
||||
- name: build-size-check
|
||||
id: get_sizes
|
||||
uses: TiddlyWiki/cerebrus@v4
|
||||
with:
|
||||
pr_number: ${{ github.event.pull_request.number }}
|
||||
repo: ${{ github.repository }}
|
||||
base_ref: ${{ github.event.pull_request.base.ref }}
|
||||
github_token: ${{ secrets.GITHUB_TOKEN }}
|
||||
mode: size:calc
|
||||
|
||||
dispatch-followup:
|
||||
needs: calculate-build-size
|
||||
runs-on: ubuntu-latest
|
||||
permissions:
|
||||
actions: write # Required to dispatch another workflow
|
||||
pull-requests: write
|
||||
contents: read
|
||||
steps:
|
||||
- name: Trigger follow-up workflow
|
||||
uses: actions/github-script@v6
|
||||
with:
|
||||
github-token: ${{ secrets.GITHUB_TOKEN }}
|
||||
script: |
|
||||
await github.rest.actions.createWorkflowDispatch({
|
||||
owner: context.repo.owner,
|
||||
repo: context.repo.repo,
|
||||
workflow_id: 'pr-comment-build-size.yml',
|
||||
ref: 'master',
|
||||
inputs: {
|
||||
pr_number: '${{ github.event.pull_request.number }}',
|
||||
base_ref: '${{ github.event.pull_request.base.ref }}',
|
||||
pr_size: '${{ needs.calculate-build-size.outputs.pr_size }}',
|
||||
base_size: '${{ needs.calculate-build-size.outputs.base_size }}'
|
||||
}
|
||||
});
|
||||
36
.github/workflows/pr-comment-build-size.yml
vendored
Normal file
36
.github/workflows/pr-comment-build-size.yml
vendored
Normal file
@@ -0,0 +1,36 @@
|
||||
name: Comment on PR build size (Trusted workflow)
|
||||
|
||||
on:
|
||||
workflow_dispatch:
|
||||
inputs:
|
||||
pr_number:
|
||||
required: true
|
||||
type: string
|
||||
base_ref:
|
||||
required: true
|
||||
type: string
|
||||
pr_size:
|
||||
required: true
|
||||
type: string
|
||||
base_size:
|
||||
required: true
|
||||
type: string
|
||||
|
||||
jobs:
|
||||
comment-on-pr:
|
||||
runs-on: ubuntu-latest
|
||||
permissions:
|
||||
pull-requests: write
|
||||
contents: read
|
||||
|
||||
steps:
|
||||
- name: Build and check size
|
||||
uses: TiddlyWiki/cerebrus@v4
|
||||
with:
|
||||
pr_number: ${{ inputs.pr_number }}
|
||||
repo: ${{ github.repository }}
|
||||
base_ref: ${{ inputs.base_ref }}
|
||||
github_token: ${{ secrets.GITHUB_TOKEN }}
|
||||
mode: size:comment
|
||||
pr_size: ${{ inputs.pr_size }}
|
||||
base_size: ${{ inputs.base_size }}
|
||||
18
.github/workflows/pr-path-validation.yml
vendored
Normal file
18
.github/workflows/pr-path-validation.yml
vendored
Normal file
@@ -0,0 +1,18 @@
|
||||
name: Validate PR Paths
|
||||
|
||||
on:
|
||||
pull_request_target:
|
||||
types: [opened, reopened, synchronize]
|
||||
|
||||
jobs:
|
||||
validate-pr:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- name: Validate PR
|
||||
uses: TiddlyWiki/cerebrus@v4
|
||||
with:
|
||||
pr_number: ${{ github.event.pull_request.number }}
|
||||
repo: ${{ github.repository }}
|
||||
base_ref: ${{ github.base_ref }}
|
||||
github_token: ${{ secrets.GITHUB_TOKEN }}
|
||||
@@ -5,7 +5,7 @@
|
||||
# Default to the current version number for building the plugin library
|
||||
|
||||
if [ -z "$TW5_BUILD_VERSION" ]; then
|
||||
TW5_BUILD_VERSION=v5.3.7
|
||||
TW5_BUILD_VERSION=v5.3.8
|
||||
fi
|
||||
|
||||
echo "Using TW5_BUILD_VERSION as [$TW5_BUILD_VERSION]"
|
||||
@@ -105,6 +105,7 @@ node $TW5_BUILD_TIDDLYWIKI \
|
||||
fi
|
||||
|
||||
# /index.html Main site
|
||||
# /external-(version).html External core version of main site
|
||||
# /favicon.ico Favicon for main site
|
||||
# /static.html Static rendering of default tiddlers
|
||||
# /alltiddlers.html Static rendering of all tiddlers
|
||||
@@ -117,7 +118,7 @@ node $TW5_BUILD_TIDDLYWIKI \
|
||||
--version \
|
||||
--load $TW5_BUILD_OUTPUT/build.tid \
|
||||
--output $TW5_BUILD_OUTPUT \
|
||||
--build favicon static index \
|
||||
--build favicon static index external-js \
|
||||
|| exit 1
|
||||
|
||||
# /empty.html Empty
|
||||
@@ -155,7 +156,14 @@ node $TW5_BUILD_TIDDLYWIKI \
|
||||
node $TW5_BUILD_TIDDLYWIKI \
|
||||
./editions/tour \
|
||||
--output $TW5_BUILD_OUTPUT \
|
||||
--rendertiddler $:/core/save/all tour.html text/plain \
|
||||
--rendertiddler $:/core/save/all-external-js tour.html text/plain \
|
||||
|| exit 1
|
||||
|
||||
# /surveys.html surveys edition
|
||||
node $TW5_BUILD_TIDDLYWIKI \
|
||||
./editions/tiddlywiki-surveys \
|
||||
--output $TW5_BUILD_OUTPUT \
|
||||
--build index \
|
||||
|| exit 1
|
||||
|
||||
# /share.html Custom edition for sharing via the URL
|
||||
@@ -194,7 +202,7 @@ node $TW5_BUILD_TIDDLYWIKI \
|
||||
./editions/xlsx-utils \
|
||||
--load $TW5_BUILD_OUTPUT/build.tid \
|
||||
--output $TW5_BUILD_OUTPUT/editions/xlsx-utils/ \
|
||||
--build index \
|
||||
--build external \
|
||||
|| exit 1
|
||||
|
||||
# /editions/resumebuilder/index.html Resume builder edition
|
||||
@@ -210,7 +218,7 @@ node $TW5_BUILD_TIDDLYWIKI \
|
||||
./editions/text-slicer \
|
||||
--load $TW5_BUILD_OUTPUT/build.tid \
|
||||
--output $TW5_BUILD_OUTPUT/editions/text-slicer/ \
|
||||
--build index \
|
||||
--build external \
|
||||
|| exit 1
|
||||
|
||||
# /editions/translators/index.html Translators edition
|
||||
@@ -242,7 +250,7 @@ node $TW5_BUILD_TIDDLYWIKI \
|
||||
./editions/tw5.com-docs \
|
||||
--load $TW5_BUILD_OUTPUT/build.tid \
|
||||
--output $TW5_BUILD_OUTPUT/editions/tw5.com-docs/ \
|
||||
--build index \
|
||||
--build external \
|
||||
|| exit 1
|
||||
|
||||
# /editions/twitter-archivist/index.html Twitter Archivist edition
|
||||
@@ -265,7 +273,7 @@ node $TW5_BUILD_TIDDLYWIKI \
|
||||
./editions/innerwikidemo \
|
||||
--load $TW5_BUILD_OUTPUT/build.tid \
|
||||
--output $TW5_BUILD_OUTPUT \
|
||||
--rendertiddler $:/core/save/all plugins/tiddlywiki/innerwiki/index.html text/plain \
|
||||
--rendertiddler $:/core/save/all-external-js plugins/tiddlywiki/innerwiki/index.html text/plain \
|
||||
|| exit 1
|
||||
|
||||
# /plugins/tiddlywiki/dynaview/index.html Demo wiki with DynaView plugin
|
||||
@@ -275,7 +283,7 @@ node $TW5_BUILD_TIDDLYWIKI \
|
||||
./editions/dynaviewdemo \
|
||||
--load $TW5_BUILD_OUTPUT/build.tid \
|
||||
--output $TW5_BUILD_OUTPUT \
|
||||
--rendertiddler $:/core/save/all plugins/tiddlywiki/dynaview/index.html text/plain \
|
||||
--rendertiddler $:/core/save/all-external-js plugins/tiddlywiki/dynaview/index.html text/plain \
|
||||
--rendertiddler $:/core/save/empty plugins/tiddlywiki/dynaview/empty.html text/plain \
|
||||
|| exit 1
|
||||
|
||||
@@ -289,7 +297,7 @@ node $TW5_BUILD_TIDDLYWIKI \
|
||||
./editions/katexdemo \
|
||||
--load $TW5_BUILD_OUTPUT/build.tid \
|
||||
--output $TW5_BUILD_OUTPUT \
|
||||
--rendertiddler $:/core/save/all plugins/tiddlywiki/katex/index.html text/plain \
|
||||
--rendertiddler $:/core/save/all-external-js plugins/tiddlywiki/katex/index.html text/plain \
|
||||
--rendertiddler $:/core/save/empty plugins/tiddlywiki/katex/empty.html text/plain \
|
||||
|| exit 1
|
||||
|
||||
@@ -319,7 +327,7 @@ node $TW5_BUILD_TIDDLYWIKI \
|
||||
./editions/codemirrordemo \
|
||||
--load $TW5_BUILD_OUTPUT/build.tid \
|
||||
--output $TW5_BUILD_OUTPUT \
|
||||
--rendertiddler $:/core/save/all plugins/tiddlywiki/codemirror/index.html text/plain \
|
||||
--rendertiddler $:/core/save/all-external-js plugins/tiddlywiki/codemirror/index.html text/plain \
|
||||
--rendertiddler $:/core/save/empty plugins/tiddlywiki/codemirror/empty.html text/plain \
|
||||
|| exit 1
|
||||
|
||||
@@ -329,7 +337,7 @@ node $TW5_BUILD_TIDDLYWIKI \
|
||||
./editions/markdowndemo \
|
||||
--load $TW5_BUILD_OUTPUT/build.tid \
|
||||
--output $TW5_BUILD_OUTPUT \
|
||||
--rendertiddler $:/core/save/all plugins/tiddlywiki/markdown/index.html text/plain \
|
||||
--rendertiddler $:/core/save/all-external-js plugins/tiddlywiki/markdown/index.html text/plain \
|
||||
--rendertiddler $:/core/save/empty plugins/tiddlywiki/markdown/empty.html text/plain \
|
||||
|| exit 1
|
||||
|
||||
@@ -339,7 +347,7 @@ node $TW5_BUILD_TIDDLYWIKI \
|
||||
./editions/classicparserdemo \
|
||||
--load $TW5_BUILD_OUTPUT/build.tid \
|
||||
--output $TW5_BUILD_OUTPUT \
|
||||
--rendertiddler $:/core/save/all plugins/tiddlywiki/tw2parser/index.html text/plain \
|
||||
--rendertiddler $:/core/save/all-external-js plugins/tiddlywiki/tw2parser/index.html text/plain \
|
||||
--rendertiddler $:/core/save/empty plugins/tiddlywiki/tw2parser/empty.html text/plain \
|
||||
|| exit 1
|
||||
|
||||
@@ -349,7 +357,7 @@ node $TW5_BUILD_TIDDLYWIKI \
|
||||
./editions/highlightdemo \
|
||||
--load $TW5_BUILD_OUTPUT/build.tid \
|
||||
--output $TW5_BUILD_OUTPUT \
|
||||
--rendertiddler $:/core/save/all plugins/tiddlywiki/highlight/index.html text/plain \
|
||||
--rendertiddler $:/core/save/all-external-js plugins/tiddlywiki/highlight/index.html text/plain \
|
||||
--rendertiddler $:/core/save/empty plugins/tiddlywiki/highlight/empty.html text/plain \
|
||||
|| exit 1
|
||||
|
||||
@@ -359,7 +367,7 @@ node $TW5_BUILD_TIDDLYWIKI \
|
||||
./editions/geospatialdemo \
|
||||
--load $TW5_BUILD_OUTPUT/build.tid \
|
||||
--output $TW5_BUILD_OUTPUT \
|
||||
--rendertiddler $:/core/save/all plugins/tiddlywiki/geospatial/index.html text/plain \
|
||||
--rendertiddler $:/core/save/all-external-js plugins/tiddlywiki/geospatial/index.html text/plain \
|
||||
--rendertiddler $:/core/save/empty plugins/tiddlywiki/geospatial/empty.html text/plain \
|
||||
|| exit 1
|
||||
|
||||
|
||||
@@ -2000,7 +2000,7 @@ $tw.loadTiddlersFromSpecification = function(filepath,excludeRegExp) {
|
||||
var value = tiddler[name];
|
||||
switch(fieldInfo.source) {
|
||||
case "subdirectories":
|
||||
value = path.relative(rootPath, filename).split(path.sep).slice(0, -1);
|
||||
value = $tw.utils.stringifyList(path.relative(rootPath, filename).split(path.sep).slice(0, -1));
|
||||
break;
|
||||
case "filepath":
|
||||
value = path.relative(rootPath, filename).split(path.sep).join('/');
|
||||
@@ -2021,10 +2021,10 @@ $tw.loadTiddlersFromSpecification = function(filepath,excludeRegExp) {
|
||||
value = path.extname(filename);
|
||||
break;
|
||||
case "created":
|
||||
value = new Date(fs.statSync(pathname).birthtime);
|
||||
value = $tw.utils.stringifyDate(new Date(fs.statSync(pathname).birthtime));
|
||||
break;
|
||||
case "modified":
|
||||
value = new Date(fs.statSync(pathname).mtime);
|
||||
value = $tw.utils.stringifyDate(new Date(fs.statSync(pathname).mtime));
|
||||
break;
|
||||
}
|
||||
if(fieldInfo.prefix) {
|
||||
|
||||
@@ -131,15 +131,14 @@ Saving/GitService/Gitea/Caption: Gitea Saver
|
||||
Saving/GitService/Gitea/Password: Personal access token for API (via Gitea’s web interface: `Settings | Applications | Generate New Token`)
|
||||
Saving/TiddlySpot/Advanced/Heading: Advanced Settings
|
||||
Saving/TiddlySpot/BackupDir: Backup Directory
|
||||
Saving/TiddlySpot/ControlPanel: ~TiddlySpot Control Panel
|
||||
Saving/TiddlySpot/ControlPanel: ~TiddlyHost Control Panel
|
||||
Saving/TiddlySpot/Backups: Backups
|
||||
Saving/TiddlySpot/Caption: ~TiddlySpot Saver
|
||||
Saving/TiddlySpot/Description: These settings are only used when saving to [[TiddlySpot|http://tiddlyspot.com]], [[TiddlyHost|https://tiddlyhost.com]], or a compatible remote server. See [[here|https://github.com/simonbaird/tiddlyhost/wiki/TiddlySpot-Saver-configuration-for-Tiddlyhost-and-Tiddlyspot]] for information on ~TiddlySpot and ~TiddlyHost saving configuration.
|
||||
Saving/TiddlySpot/Caption: ~TiddlyHost Saver
|
||||
Saving/TiddlySpot/Description: These settings are only used when saving to [[TiddlyHost|https://tiddlyhost.com]] or a compatible remote server. See [[here|https://github.com/simonbaird/tiddlyhost/wiki/TiddlySpot-Saver-configuration-for-Tiddlyhost-and-Tiddlyspot]] for information on ~TiddlyHost saving configuration
|
||||
Saving/TiddlySpot/Filename: Upload Filename
|
||||
Saving/TiddlySpot/Heading: ~TiddlySpot
|
||||
Saving/TiddlySpot/Hint: //The server URL defaults to `http://<wikiname>.tiddlyspot.com/store.cgi` and can be changed to use a custom server address, e.g. `http://example.com/store.php`.//
|
||||
Saving/TiddlySpot/Heading: ~TiddlyHost
|
||||
Saving/TiddlySpot/Hint: //The server URL defaults to `http://<wikiname>.tiddlyspot.com/` and can be changed to use a custom server address, e.g. `http://example.com/store.php`.//
|
||||
Saving/TiddlySpot/Password: Password
|
||||
Saving/TiddlySpot/ReadOnly: Note that [[TiddlySpot|http://tiddlyspot.com]] no longer allows the creation of new sites. For new sites, you can use [[TiddlyHost|https://tiddlyhost.com]], a new hosting service that replaces ~TiddlySpot.
|
||||
Saving/TiddlySpot/ServerURL: Server URL
|
||||
Saving/TiddlySpot/UploadDir: Upload Directory
|
||||
Saving/TiddlySpot/UserName: Wiki Name
|
||||
@@ -190,6 +189,8 @@ Settings/DefaultSidebarTab/Caption: Default Sidebar Tab
|
||||
Settings/DefaultSidebarTab/Hint: Specify which sidebar tab is displayed by default
|
||||
Settings/DefaultMoreSidebarTab/Caption: Default More Sidebar Tab
|
||||
Settings/DefaultMoreSidebarTab/Hint: Specify which More sidebar tab is displayed by default
|
||||
Settings/DefaultTiddlerInfoTab/Caption: Default Tiddler Info Tab
|
||||
Settings/DefaultTiddlerInfoTab/Hint: Specify which tab is displayed by default when tiddler info panel is opened
|
||||
Settings/LinkToBehaviour/Caption: Tiddler Opening Behaviour
|
||||
Settings/LinkToBehaviour/InsideRiver/Hint: Navigation from //within// the story river
|
||||
Settings/LinkToBehaviour/OutsideRiver/Hint: Navigation from //outside// the story river
|
||||
@@ -251,3 +252,6 @@ ViewTemplateSubtitle/Caption: View Template Subtitle
|
||||
ViewTemplateSubtitle/Hint: This rule cascade is used by the default view template to dynamically choose the template for displaying the subtitle of a tiddler.
|
||||
ViewTemplateTags/Caption: View Template Tags
|
||||
ViewTemplateTags/Hint: This rule cascade is used by the default view template to dynamically choose the template for displaying the tags area of a tiddler.
|
||||
WikiInformation/Caption: Wiki Information
|
||||
WikiInformation/Hint: This page summarises high level information about the configuration of this ~TiddlyWiki. It is designed to enable users to quickly share relevant aspects of the configuration of their ~TiddlyWiki with others, for example when seeking help in one of the forums. No private or personal information is included, and nothing is shared without being explicitly copied and pasted elsewhere
|
||||
WikiInformation/Drag/Caption: Drag this link to copy this tool to another wiki
|
||||
@@ -4,12 +4,12 @@ _canonical_uri: The full URI of an external image tiddler
|
||||
author: Name of the author of a plugin
|
||||
bag: The name of the bag from which a tiddler came
|
||||
caption: The text to be displayed on a tab or button
|
||||
class: The CSS class applied to a tiddler when rendering it - see [[Custom styles by user-class]]. Also used for [[Modals]]
|
||||
class: The CSS class applied to a tiddler when rendering it. Also used for Modals
|
||||
code-body: The view template will display the tiddler as code if set to ''yes''
|
||||
color: The CSS color value associated with a tiddler
|
||||
component: The name of the component responsible for an [[alert tiddler|AlertMechanism]]
|
||||
component: The name of the component responsible for an alert tiddler
|
||||
core-version: For a plugin, indicates what version of TiddlyWiki with which it is compatible
|
||||
current-tiddler: Used to cache the top tiddler in a [[history list|HistoryMechanism]]
|
||||
current-tiddler: Used to cache the top tiddler in a history list
|
||||
created: The date a tiddler was created
|
||||
creator: The name of the person who created a tiddler
|
||||
dependents: For a plugin, lists the dependent plugin titles
|
||||
|
||||
@@ -248,8 +248,7 @@ exports.compileFilter = function(filterString) {
|
||||
// Create a function for the chain of operators in the operation
|
||||
var operationSubFunction = function(source,widget) {
|
||||
var accumulator = source,
|
||||
results = [],
|
||||
currTiddlerTitle = widget && widget.getVariable("currentTiddler");
|
||||
results = [];
|
||||
$tw.utils.each(operation.operators,function(operator) {
|
||||
var operands = [],
|
||||
operatorFunction;
|
||||
@@ -265,6 +264,7 @@ exports.compileFilter = function(filterString) {
|
||||
}
|
||||
$tw.utils.each(operator.operands,function(operand) {
|
||||
if(operand.indirect) {
|
||||
var currTiddlerTitle = widget && widget.getVariable("currentTiddler");
|
||||
operand.value = self.getTextReference(operand.text,"",currTiddlerTitle);
|
||||
} else if(operand.variable) {
|
||||
var varTree = $tw.utils.parseFilterVariable(operand.text);
|
||||
|
||||
@@ -6,7 +6,6 @@ module-type: filteroperator
|
||||
Filter operator for returning all the backtranscludes from a tiddler
|
||||
|
||||
\*/
|
||||
(function(){
|
||||
"use strict";
|
||||
|
||||
/*
|
||||
@@ -19,5 +18,3 @@ exports.backtranscludes = function(source,operator,options) {
|
||||
});
|
||||
return results.makeTiddlerIterator(options.wiki);
|
||||
};
|
||||
|
||||
})();
|
||||
|
||||
@@ -6,7 +6,6 @@ module-type: filteroperator
|
||||
Filter operator for returning all the transcludes from a tiddler
|
||||
|
||||
\*/
|
||||
(function(){
|
||||
"use strict";
|
||||
|
||||
/*
|
||||
@@ -19,5 +18,3 @@ exports.transcludes = function(source,operator,options) {
|
||||
});
|
||||
return results.makeTiddlerIterator(options.wiki);
|
||||
};
|
||||
|
||||
})();
|
||||
|
||||
@@ -10,7 +10,6 @@ This is a <%if [{something}] %>Elephant<%elseif [{else}] %>Pelican<%else%>Crocod
|
||||
```
|
||||
|
||||
\*/
|
||||
(function(){
|
||||
"use strict";
|
||||
|
||||
exports.name = "conditional";
|
||||
@@ -113,5 +112,3 @@ exports.parseIfClause = function(filterCondition) {
|
||||
// Return the parse tree node
|
||||
return [listWidget];
|
||||
};
|
||||
|
||||
})();
|
||||
|
||||
@@ -50,7 +50,7 @@ exports.parse = function() {
|
||||
var reEnd;
|
||||
if(this.match[5]) {
|
||||
// If so, it is a multiline definition and the end of the body is marked with \end
|
||||
reEnd = new RegExp("((:?^|\\r?\\n)[^\\S\\n\\r]*\\\\end[^\\S\\n\\r]*(?:" + $tw.utils.escapeRegExp(this.match[2]) + ")?(?:$|\\r?\\n))","mg");
|
||||
reEnd = new RegExp("((:?^|\\r?\\n)[^\\S\\n\\r]*\\\\end[^\\S\\n\\r]*(?:" + $tw.utils.escapeRegExp(this.match[2]) + ")?\\s*?(?:$|\\r?\\n))","mg");
|
||||
} else {
|
||||
// Otherwise, the end of the definition is marked by the end of the line
|
||||
reEnd = /($|\r?\n)/mg;
|
||||
|
||||
@@ -55,7 +55,7 @@ exports.parse = function() {
|
||||
var reEnd;
|
||||
if(this.match[3]) {
|
||||
// If so, it is a multiline definition and the end of the body is marked with \end
|
||||
reEnd = new RegExp("((?:^|\\r?\\n)[^\\S\\n\\r]*\\\\end[^\\S\\n\\r]*(?:" + $tw.utils.escapeRegExp(this.match[1]) + ")?(?:$|\\r?\\n))","mg");
|
||||
reEnd = new RegExp("((?:^|\\r?\\n)[^\\S\\n\\r]*\\\\end[^\\S\\n\\r]*(?:" + $tw.utils.escapeRegExp(this.match[1]) + ")?\\s*?(?:$|\\r?\\n))","mg");
|
||||
} else {
|
||||
// Otherwise, the end of the definition is marked by the end of the line
|
||||
reEnd = /($|\r?\n)/mg;
|
||||
|
||||
@@ -44,7 +44,7 @@ UploadSaver.prototype.save = function(text,method,callback) {
|
||||
}
|
||||
// Construct the url if not provided
|
||||
if(!url) {
|
||||
url = "http://" + username + ".tiddlyspot.com/store.cgi";
|
||||
url = "http://" + username + ".tiddlyhost.com/";
|
||||
}
|
||||
// Assemble the header
|
||||
var boundary = "---------------------------" + "AaB03x";
|
||||
|
||||
@@ -74,9 +74,8 @@ exports.startup = function() {
|
||||
$tw.rootWidget.addEventListener("tm-copy-to-clipboard",function(event) {
|
||||
$tw.utils.copyToClipboard(event.param,{
|
||||
successNotification: event.paramObject && event.paramObject.successNotification,
|
||||
failureNotification: event.paramObject && event.paramObject.failureNotification,
|
||||
plainText: event.paramObject && event.paramObject.plainText
|
||||
},event.paramObject && event.paramObject.type);
|
||||
failureNotification: event.paramObject && event.paramObject.failureNotification
|
||||
});
|
||||
});
|
||||
// Install the tm-focus-selector message
|
||||
$tw.rootWidget.addEventListener("tm-focus-selector",function(event) {
|
||||
|
||||
@@ -265,10 +265,9 @@ exports.copyStyles = function(srcDomNode,dstDomNode) {
|
||||
/*
|
||||
Copy plain text to the clipboard on browsers that support it
|
||||
*/
|
||||
exports.copyToClipboard = function(text,options,type) {
|
||||
var text = text || "";
|
||||
var options = options || {};
|
||||
var type = type || "text/plain";
|
||||
exports.copyToClipboard = function(text,options) {
|
||||
options = options || {};
|
||||
text = text || "";
|
||||
var textArea = document.createElement("textarea");
|
||||
textArea.style.position = "fixed";
|
||||
textArea.style.top = 0;
|
||||
@@ -281,16 +280,10 @@ exports.copyToClipboard = function(text,options,type) {
|
||||
textArea.style.outline = "none";
|
||||
textArea.style.boxShadow = "none";
|
||||
textArea.style.background = "transparent";
|
||||
textArea.value = text;
|
||||
document.body.appendChild(textArea);
|
||||
textArea.select();
|
||||
textArea.setSelectionRange(0,text.length);
|
||||
textArea.addEventListener("copy",function(event) {
|
||||
event.preventDefault();
|
||||
if (options.plainText) {
|
||||
event.clipboardData.setData("text/plain",options.plainText);
|
||||
}
|
||||
event.clipboardData.setData(type,text);
|
||||
});
|
||||
var succeeded = false;
|
||||
try {
|
||||
succeeded = document.execCommand("copy");
|
||||
|
||||
@@ -143,6 +143,7 @@ Modal.prototype.display = function(title,options) {
|
||||
link.setAttribute("href",tiddler.fields.help);
|
||||
link.setAttribute("target","_blank");
|
||||
link.setAttribute("rel","noopener noreferrer");
|
||||
link.setAttribute("class","tc-tiddlylink-external");
|
||||
link.appendChild(this.srcDocument.createTextNode("Help"));
|
||||
modalFooterHelp.appendChild(link);
|
||||
modalFooterHelp.style.float = "left";
|
||||
|
||||
@@ -6,8 +6,6 @@ module-type: utils
|
||||
Custom errors for TiddlyWiki.
|
||||
|
||||
\*/
|
||||
(function(){
|
||||
|
||||
function TranscludeRecursionError() {
|
||||
Error.apply(this,arguments);
|
||||
this.signatures = Object.create(null);
|
||||
@@ -19,5 +17,3 @@ TranscludeRecursionError.MAX_WIDGET_TREE_DEPTH = 1000;
|
||||
TranscludeRecursionError.prototype = Object.create(Error);
|
||||
|
||||
exports.TranscludeRecursionError = TranscludeRecursionError;
|
||||
|
||||
})();
|
||||
|
||||
@@ -6,7 +6,6 @@ module-type: utils
|
||||
Utilities for working with the TiddlyWiki repository file structure
|
||||
|
||||
\*/
|
||||
(function(){
|
||||
"use strict";
|
||||
|
||||
/*
|
||||
@@ -45,5 +44,3 @@ exports.getAllPlugins = function(options) {
|
||||
$tw.utils.each($tw.getLibraryItemSearchPaths($tw.config.languagesPath,options.ignoreEnvironmentVariables ? undefined : $tw.config.languagesEnvVar),collectPlugins);
|
||||
return tiddlers;
|
||||
};
|
||||
|
||||
})();
|
||||
|
||||
@@ -6,7 +6,6 @@ module-type: widget
|
||||
Widget to dynamically represent one or more tiddlers
|
||||
|
||||
\*/
|
||||
(function(){
|
||||
"use strict";
|
||||
|
||||
var Widget = require("$:/core/modules/widgets/widget.js").widget;
|
||||
@@ -187,5 +186,3 @@ function hasPayloadChanged(a,b) {
|
||||
}
|
||||
|
||||
exports.data = DataWidget;
|
||||
|
||||
})();
|
||||
|
||||
@@ -519,36 +519,3 @@ ListJoinWidget.prototype.render = function() {}
|
||||
ListJoinWidget.prototype.refresh = function() { return false; }
|
||||
|
||||
exports["list-join"] = ListJoinWidget;
|
||||
|
||||
/*
|
||||
Make <$list-template> and <$list-empty> widgets that do nothing
|
||||
*/
|
||||
var ListTemplateWidget = function(parseTreeNode,options) {
|
||||
// Main initialisation inherited from widget.js
|
||||
this.initialise(parseTreeNode,options);
|
||||
};
|
||||
ListTemplateWidget.prototype = new Widget();
|
||||
ListTemplateWidget.prototype.render = function() {}
|
||||
ListTemplateWidget.prototype.refresh = function() { return false; }
|
||||
|
||||
exports["list-template"] = ListTemplateWidget;
|
||||
|
||||
var ListEmptyWidget = function(parseTreeNode,options) {
|
||||
// Main initialisation inherited from widget.js
|
||||
this.initialise(parseTreeNode,options);
|
||||
};
|
||||
ListEmptyWidget.prototype = new Widget();
|
||||
ListEmptyWidget.prototype.render = function() {}
|
||||
ListEmptyWidget.prototype.refresh = function() { return false; }
|
||||
|
||||
exports["list-empty"] = ListEmptyWidget;
|
||||
|
||||
var ListJoinWidget = function(parseTreeNode,options) {
|
||||
// Main initialisation inherited from widget.js
|
||||
this.initialise(parseTreeNode,options);
|
||||
};
|
||||
ListJoinWidget.prototype = new Widget();
|
||||
ListJoinWidget.prototype.render = function() {}
|
||||
ListJoinWidget.prototype.refresh = function() { return false; }
|
||||
|
||||
exports["list-join"] = ListJoinWidget;
|
||||
|
||||
@@ -6,7 +6,6 @@ module-type: widget
|
||||
Widget to display a test case
|
||||
|
||||
\*/
|
||||
(function(){
|
||||
"use strict";
|
||||
|
||||
var Widget = require("$:/core/modules/widgets/widget.js").widget;
|
||||
@@ -160,5 +159,3 @@ TestCaseWidget.prototype.refresh = function(changedTiddlers) {
|
||||
};
|
||||
|
||||
exports["testcase"] = TestCaseWidget;
|
||||
|
||||
})();
|
||||
|
||||
@@ -1173,7 +1173,7 @@ exports.getSubstitutedText = function(text,widget,options) {
|
||||
output = $tw.utils.replaceString(output,new RegExp("\\$" + $tw.utils.escapeRegExp(substitute.name) + "\\$","mg"),substitute.value);
|
||||
});
|
||||
// Substitute any variable references with their values
|
||||
return output.replace(/\$\(([^\)\$]+)\)\$/g, function(match,varname) {
|
||||
return output.replace(/\$\((.+?)\)\$/g, function(match,varname) {
|
||||
return widget.getVariable(varname,{defaultValue: ""})
|
||||
});
|
||||
};
|
||||
|
||||
@@ -18,7 +18,7 @@ code-background: #f7f7f9
|
||||
code-border: #e1e1e8
|
||||
code-foreground: #dd1144
|
||||
dirty-indicator: #ff0000
|
||||
download-background: #66cccc
|
||||
download-background: #3aafaf
|
||||
download-foreground: <<colour background>>
|
||||
dragger-background: <<colour foreground>>
|
||||
dragger-foreground: <<colour background>>
|
||||
@@ -26,7 +26,7 @@ dropdown-background: <<colour background>>
|
||||
dropdown-border: <<colour muted-foreground>>
|
||||
dropdown-tab-background-selected: #fff
|
||||
dropdown-tab-background: #ececec
|
||||
dropzone-background: rgba(0,200,0,0.7)
|
||||
dropzone-background: #00d900
|
||||
external-link-background-hover: inherit
|
||||
external-link-background-visited: inherit
|
||||
external-link-background: inherit
|
||||
@@ -52,26 +52,30 @@ notification-border: #999999
|
||||
page-background: #ffffff
|
||||
pre-background: #f5f5f5
|
||||
pre-border: #cccccc
|
||||
primary: #7897f3
|
||||
primary: #6387f1
|
||||
select-tag-background:
|
||||
select-tag-foreground:
|
||||
sidebar-button-foreground: <<colour foreground>>
|
||||
sidebar-controls-foreground-hover: #000000
|
||||
sidebar-controls-foreground: #ccc
|
||||
sidebar-foreground-shadow: rgba(255,255,255, 0.8)
|
||||
sidebar-controls-foreground: #aaaaaa
|
||||
sidebar-foreground-shadow: #ffffff
|
||||
sidebar-foreground: #acacac
|
||||
sidebar-muted-foreground-hover: #444444
|
||||
sidebar-muted-foreground: #c0c0c0
|
||||
sidebar-muted-foreground: #aaaaaa
|
||||
sidebar-tab-background-selected: #ffffff
|
||||
sidebar-tab-background: <<colour tab-background>>
|
||||
sidebar-tab-border-selected: <<colour tab-border-selected>>
|
||||
sidebar-tab-border: <<colour tab-border>>
|
||||
sidebar-tab-divider: <<colour tab-divider>>
|
||||
sidebar-tab-foreground-selected:
|
||||
sidebar-tab-foreground-selected: <<colour tab-foreground>>
|
||||
sidebar-tab-foreground: <<colour tab-foreground>>
|
||||
sidebar-tiddler-link-foreground-hover: #444444
|
||||
sidebar-tiddler-link-foreground: #7897f3
|
||||
sidebar-tiddler-link-foreground: <<colour primary>>
|
||||
site-title-foreground: <<colour tiddler-title-foreground>>
|
||||
stability-stable: #008000
|
||||
stability-experimental: #c07c00
|
||||
stability-deprecated: #ff0000
|
||||
stability-legacy: #0000ff
|
||||
static-alert-foreground: #aaaaaa
|
||||
tab-background-selected: #ffffff
|
||||
tab-background: #eeeeee
|
||||
@@ -83,10 +87,10 @@ tab-foreground: #666666
|
||||
table-border: #dddddd
|
||||
table-footer-background: #a8a8a8
|
||||
table-header-background: #f0f0f0
|
||||
tag-background: #ffeedd
|
||||
tag-foreground: #000
|
||||
tag-background: #ffd5aa
|
||||
tag-foreground: #000000
|
||||
tiddler-background: <<colour background>>
|
||||
tiddler-border: #eee
|
||||
tiddler-border: #eeeeee
|
||||
tiddler-controls-foreground-hover: #888888
|
||||
tiddler-controls-foreground-selected: #444444
|
||||
tiddler-controls-foreground: #cccccc
|
||||
@@ -97,7 +101,7 @@ tiddler-editor-fields-even: #e0e8e0
|
||||
tiddler-editor-fields-odd: #f0f4f0
|
||||
tiddler-info-background: #f8f8f8
|
||||
tiddler-info-border: #dddddd
|
||||
tiddler-info-tab-background: #f8f8f8
|
||||
tiddler-info-tab-background: <<colour tiddler-info-background>>
|
||||
tiddler-link-background: <<colour background>>
|
||||
tiddler-link-foreground: <<colour primary>>
|
||||
tiddler-subtitle-foreground: #c0c0c0
|
||||
@@ -111,5 +115,6 @@ toolbar-close-button:
|
||||
toolbar-delete-button:
|
||||
toolbar-cancel-button:
|
||||
toolbar-done-button:
|
||||
untagged-background: #999999
|
||||
untagged-background: #cccccc
|
||||
very-muted-foreground: #888888
|
||||
network-activity-foreground: <<colour primary>>
|
||||
@@ -85,6 +85,7 @@ table-footer-background: #a8a8a8
|
||||
table-header-background: #f0f0f0
|
||||
tag-background: #d5ad34
|
||||
tag-foreground: #ffffff
|
||||
testcase-accent-level-1: #b1b3e3
|
||||
tiddler-background: <<colour background>>
|
||||
tiddler-border: <<colour background>>
|
||||
tiddler-controls-foreground-hover: #888888
|
||||
|
||||
@@ -5,11 +5,11 @@ description: High contrast and unambiguous (dark version)
|
||||
tags: $:/tags/Palette
|
||||
type: application/x-tiddler-dictionary
|
||||
|
||||
alert-background: #f00
|
||||
alert-background: #ff0000
|
||||
alert-border: <<colour background>>
|
||||
alert-highlight: <<colour foreground>>
|
||||
alert-muted-foreground: #800
|
||||
background: #000
|
||||
alert-muted-foreground: #880000
|
||||
background: #000000
|
||||
blockquote-bar: <<colour muted-foreground>>
|
||||
button-background: <<colour background>>
|
||||
button-foreground: <<colour foreground>>
|
||||
@@ -17,24 +17,24 @@ button-border: <<colour foreground>>
|
||||
code-background: <<colour background>>
|
||||
code-border: <<colour foreground>>
|
||||
code-foreground: <<colour foreground>>
|
||||
dirty-indicator: #f00
|
||||
download-background: #080
|
||||
dirty-indicator: #ff0000
|
||||
download-background: #48ff48
|
||||
download-foreground: <<colour background>>
|
||||
dragger-background: <<colour foreground>>
|
||||
dragger-foreground: <<colour background>>
|
||||
dropdown-background: <<colour background>>
|
||||
dropdown-border: <<colour muted-foreground>>
|
||||
dropdown-tab-background-selected: <<colour foreground>>
|
||||
dropdown-tab-background: <<colour foreground>>
|
||||
dropzone-background: rgba(0,200,0,0.7)
|
||||
dropdown-tab-background-selected: #868686
|
||||
dropdown-tab-background: #515151
|
||||
dropzone-background: #1aff1a
|
||||
external-link-background-hover: inherit
|
||||
external-link-background-visited: inherit
|
||||
external-link-background: inherit
|
||||
external-link-foreground-hover: inherit
|
||||
external-link-foreground-visited: #00a
|
||||
external-link-foreground: #00e
|
||||
external-link-foreground-visited: #5353ff
|
||||
external-link-foreground: #9595ff
|
||||
footnote-target-background: #4c4c4c
|
||||
foreground: #fff
|
||||
foreground: #ffffff
|
||||
highlight-background: #ffff00
|
||||
highlight-foreground: #000000
|
||||
message-background: <<colour foreground>>
|
||||
@@ -52,11 +52,11 @@ notification-border: <<colour foreground>>
|
||||
page-background: <<colour background>>
|
||||
pre-background: <<colour background>>
|
||||
pre-border: <<colour foreground>>
|
||||
primary: #00f
|
||||
primary: #8a8aff
|
||||
select-tag-background:
|
||||
select-tag-foreground:
|
||||
sidebar-button-foreground: <<colour foreground>>
|
||||
sidebar-controls-foreground-hover: <<colour background>>
|
||||
sidebar-controls-foreground-hover: #ffff00
|
||||
sidebar-controls-foreground: <<colour foreground>>
|
||||
sidebar-foreground-shadow: rgba(0,0,0, 0)
|
||||
sidebar-foreground: <<colour foreground>>
|
||||
@@ -72,6 +72,10 @@ sidebar-tab-foreground: <<colour tab-foreground>>
|
||||
sidebar-tiddler-link-foreground-hover: <<colour foreground>>
|
||||
sidebar-tiddler-link-foreground: <<colour primary>>
|
||||
site-title-foreground: <<colour tiddler-title-foreground>>
|
||||
stability-stable: #00f400
|
||||
stability-experimental: #ffaf1c
|
||||
stability-deprecated: #ff2b2b
|
||||
stability-legacy: #ceceff
|
||||
static-alert-foreground: #aaaaaa
|
||||
tab-background-selected: <<colour background>>
|
||||
tab-background: <<colour foreground>>
|
||||
@@ -81,14 +85,15 @@ tab-divider: <<colour foreground>>
|
||||
tab-foreground-selected: <<colour foreground>>
|
||||
tab-foreground: <<colour background>>
|
||||
table-border: #dddddd
|
||||
table-footer-background: #a8a8a8
|
||||
table-header-background: #f0f0f0
|
||||
tag-background: #fff
|
||||
tag-foreground: #000
|
||||
table-footer-background: #444444
|
||||
table-header-background: #444444
|
||||
tag-background: #ffffff
|
||||
tag-foreground: #000000
|
||||
testcase-accent-level-1: #144a8c
|
||||
tiddler-background: <<colour background>>
|
||||
tiddler-border: <<colour foreground>>
|
||||
tiddler-controls-foreground-hover: #ddd
|
||||
tiddler-controls-foreground-selected: #fdd
|
||||
tiddler-controls-foreground-selected: #ae0000
|
||||
tiddler-controls-foreground: <<colour foreground>>
|
||||
tiddler-editor-background: <<colour background>>
|
||||
tiddler-editor-border-image: <<colour foreground>>
|
||||
@@ -102,14 +107,15 @@ tiddler-link-background: <<colour background>>
|
||||
tiddler-link-foreground: <<colour primary>>
|
||||
tiddler-subtitle-foreground: <<colour foreground>>
|
||||
tiddler-title-foreground: <<colour foreground>>
|
||||
toolbar-new-button:
|
||||
toolbar-options-button:
|
||||
toolbar-save-button:
|
||||
toolbar-info-button:
|
||||
toolbar-edit-button:
|
||||
toolbar-close-button:
|
||||
toolbar-delete-button:
|
||||
toolbar-cancel-button:
|
||||
toolbar-done-button:
|
||||
toolbar-new-button:
|
||||
toolbar-options-button:
|
||||
toolbar-save-button:
|
||||
toolbar-info-button:
|
||||
toolbar-edit-button:
|
||||
toolbar-close-button:
|
||||
toolbar-delete-button:
|
||||
toolbar-cancel-button:
|
||||
toolbar-done-button:
|
||||
untagged-background: <<colour foreground>>
|
||||
very-muted-foreground: #888888
|
||||
network-activity-foreground: <<colour primary>>
|
||||
@@ -5,7 +5,7 @@ description: High contrast and unambiguous (light version)
|
||||
tags: $:/tags/Palette
|
||||
type: application/x-tiddler-dictionary
|
||||
|
||||
alert-background: #f00
|
||||
alert-background: #ff4a4a
|
||||
alert-border: <<colour background>>
|
||||
alert-highlight: <<colour foreground>>
|
||||
alert-muted-foreground: #800
|
||||
@@ -18,13 +18,13 @@ code-background: <<colour background>>
|
||||
code-border: <<colour foreground>>
|
||||
code-foreground: <<colour foreground>>
|
||||
dirty-indicator: #f00
|
||||
download-background: #080
|
||||
download-background: #008200
|
||||
download-foreground: <<colour background>>
|
||||
dragger-background: <<colour foreground>>
|
||||
dragger-foreground: <<colour background>>
|
||||
dropdown-background: <<colour background>>
|
||||
dropdown-border: <<colour muted-foreground>>
|
||||
dropdown-tab-background-selected: <<colour foreground>>
|
||||
dropdown-tab-background-selected: <<colour background>>
|
||||
dropdown-tab-background: <<colour foreground>>
|
||||
dropzone-background: rgba(0,200,0,0.7)
|
||||
external-link-background-hover: inherit
|
||||
@@ -52,13 +52,13 @@ notification-border: <<colour foreground>>
|
||||
page-background: <<colour background>>
|
||||
pre-background: <<colour background>>
|
||||
pre-border: <<colour foreground>>
|
||||
primary: #00f
|
||||
primary: #0000ff
|
||||
select-tag-background:
|
||||
select-tag-foreground:
|
||||
sidebar-button-foreground: <<colour foreground>>
|
||||
sidebar-controls-foreground-hover: <<colour background>>
|
||||
sidebar-controls-foreground-hover: #606060
|
||||
sidebar-controls-foreground: <<colour foreground>>
|
||||
sidebar-foreground-shadow: rgba(0,0,0, 0)
|
||||
sidebar-foreground-shadow: #000000
|
||||
sidebar-foreground: <<colour foreground>>
|
||||
sidebar-muted-foreground-hover: #444444
|
||||
sidebar-muted-foreground: <<colour foreground>>
|
||||
@@ -72,6 +72,10 @@ sidebar-tab-foreground: <<colour tab-foreground>>
|
||||
sidebar-tiddler-link-foreground-hover: <<colour foreground>>
|
||||
sidebar-tiddler-link-foreground: <<colour primary>>
|
||||
site-title-foreground: <<colour tiddler-title-foreground>>
|
||||
stability-deprecated: #ff0000
|
||||
stability-experimental: #b37400
|
||||
stability-legacy: #000075
|
||||
stability-stable: #008000
|
||||
static-alert-foreground: #aaaaaa
|
||||
tab-background-selected: <<colour background>>
|
||||
tab-background: <<colour foreground>>
|
||||
@@ -88,7 +92,7 @@ tag-foreground: #fff
|
||||
tiddler-background: <<colour background>>
|
||||
tiddler-border: <<colour foreground>>
|
||||
tiddler-controls-foreground-hover: #ddd
|
||||
tiddler-controls-foreground-selected: #fdd
|
||||
tiddler-controls-foreground-selected: #c5abf3
|
||||
tiddler-controls-foreground: <<colour foreground>>
|
||||
tiddler-editor-background: <<colour background>>
|
||||
tiddler-editor-border-image: <<colour foreground>>
|
||||
@@ -113,3 +117,4 @@ toolbar-cancel-button:
|
||||
toolbar-done-button:
|
||||
untagged-background: <<colour foreground>>
|
||||
very-muted-foreground: #888888
|
||||
network-activity-foreground: <<colour primary>>
|
||||
@@ -5,30 +5,30 @@ name: Cupertino Dark
|
||||
description: A macOS inspired dark palette
|
||||
type: application/x-tiddler-dictionary
|
||||
|
||||
alert-background: #FF453A
|
||||
alert-border: #FF453A
|
||||
alert-background: #ff4b42
|
||||
alert-border: #950700
|
||||
alert-highlight: #FFD60A
|
||||
alert-muted-foreground: <<colour muted-foreground>>
|
||||
alert-muted-foreground: #323234
|
||||
background: #282828
|
||||
blockquote-bar: <<colour page-background>>
|
||||
blockquote-bar: #8d8d8d
|
||||
button-foreground: <<colour foreground>>
|
||||
code-background: <<colour pre-background>>
|
||||
code-border: <<colour pre-border>>
|
||||
code-foreground: rgba(255, 255, 255, 0.54)
|
||||
code-foreground: #c7c7c7
|
||||
dirty-indicator: #FF453A
|
||||
download-background: <<colour primary>>
|
||||
download-foreground: <<colour foreground>>
|
||||
download-foreground: <<colour background>>
|
||||
dragger-background: <<colour foreground>>
|
||||
dragger-foreground: <<colour background>>
|
||||
dropdown-background: <<colour tiddler-info-background>>
|
||||
dropdown-border: <<colour dropdown-background>>
|
||||
dropdown-tab-background-selected: #3F638B
|
||||
dropdown-tab-background: #323232
|
||||
dropdown-tab-background: #707070
|
||||
dropzone-background: #30D158
|
||||
external-link-background-hover: transparent
|
||||
external-link-background-visited: transparent
|
||||
external-link-background: transparent
|
||||
external-link-foreground-hover:
|
||||
external-link-foreground-hover: #9511d5
|
||||
external-link-foreground-visited: #BF5AF2
|
||||
external-link-foreground: #32D74B
|
||||
footnote-target-background: #747474
|
||||
@@ -60,31 +60,36 @@ sidebar-controls-foreground-hover: #FF9F0A
|
||||
sidebar-controls-foreground: #8E8E93
|
||||
sidebar-foreground-shadow: transparent
|
||||
sidebar-foreground: rgba(255, 255, 255, 0.54)
|
||||
sidebar-muted-foreground-hover: rgba(255, 255, 255, 0.54)
|
||||
sidebar-muted-foreground: rgba(255, 255, 255, 0.38)
|
||||
sidebar-muted-foreground-hover: #acacac
|
||||
sidebar-muted-foreground: #787878
|
||||
sidebar-tab-background-selected: #3F638B
|
||||
sidebar-tab-background: <<colour background>>
|
||||
sidebar-tab-border-selected: <<colour background>>
|
||||
sidebar-tab-border: <<colour background>>
|
||||
sidebar-tab-divider: <<colour background>>
|
||||
sidebar-tab-foreground-selected: rgba(255, 255, 255, 0.87)
|
||||
sidebar-tab-foreground: rgba(255, 255, 255, 0.54)
|
||||
sidebar-tiddler-link-foreground-hover: rgba(255, 255, 255, 0.7)
|
||||
sidebar-tiddler-link-foreground: rgba(255, 255, 255, 0.54)
|
||||
sidebar-tab-border-selected: #313131
|
||||
sidebar-tab-border: #404040
|
||||
sidebar-tab-divider: #282828
|
||||
sidebar-tab-foreground-selected: #d2d2d2
|
||||
sidebar-tab-foreground: #d2d2d2
|
||||
sidebar-tiddler-link-foreground-hover: #535353
|
||||
sidebar-tiddler-link-foreground: #949494
|
||||
site-title-foreground: #ffffff
|
||||
stability-stable: #009f00
|
||||
stability-experimental: #c07c00
|
||||
stability-deprecated: #ff0000
|
||||
stability-legacy: #6c6cff
|
||||
static-alert-foreground: #B4B4B4
|
||||
tab-background-selected: #3F638B
|
||||
tab-background: <<colour page-background>>
|
||||
tab-border-selected: <<colour page-background>>
|
||||
tab-border: <<colour page-background>>
|
||||
tab-border: #4a4a4a
|
||||
tab-divider: <<colour page-background>>
|
||||
tab-foreground-selected: rgba(255, 255, 255, 0.87)
|
||||
tab-foreground: rgba(255, 255, 255, 0.54)
|
||||
tab-foreground-selected: #ffffff
|
||||
tab-foreground: #adadad
|
||||
table-border: #464646
|
||||
table-footer-background: <<colour tiddler-editor-fields-odd>>
|
||||
table-header-background: <<colour tiddler-editor-fields-even>>
|
||||
table-footer-background: #7f7f7f
|
||||
table-header-background: <<colour table-border>>
|
||||
tag-background: #48484A
|
||||
tag-foreground: #323232
|
||||
testcase-accent-level-1: #345173
|
||||
tiddler-background: <<colour background>>
|
||||
tiddler-border: transparent
|
||||
tiddler-controls-foreground-hover: <<colour sidebar-controls-foreground-hover>>
|
||||
@@ -92,9 +97,9 @@ tiddler-controls-foreground-selected: <<colour sidebar-controls-foreground-hover
|
||||
tiddler-controls-foreground: #48484A
|
||||
tiddler-editor-background: <<colour background>>
|
||||
tiddler-editor-border-image:
|
||||
tiddler-editor-border: rgba(255, 255, 255, 0.08)
|
||||
tiddler-editor-fields-even: rgba(255, 255, 255, 0.1)
|
||||
tiddler-editor-fields-odd: rgba(255, 255, 255, 0.04)
|
||||
tiddler-editor-border: #444444
|
||||
tiddler-editor-fields-even: #1f1f1f
|
||||
tiddler-editor-fields-odd: #464646
|
||||
tiddler-info-background: #1E1E1E
|
||||
tiddler-info-border: #1E1E1E
|
||||
tiddler-info-tab-background: #3F638B
|
||||
@@ -111,8 +116,8 @@ toolbar-close-button:
|
||||
toolbar-delete-button:
|
||||
toolbar-cancel-button:
|
||||
toolbar-done-button:
|
||||
untagged-background: <<colour very-muted-foreground>>
|
||||
very-muted-foreground: #464646
|
||||
untagged-background: #5f5f5f
|
||||
very-muted-foreground: #3f3f3f
|
||||
selection-background: #3F638B
|
||||
selection-foreground: #ffffff
|
||||
wikilist-background: <<colour page-background>>
|
||||
@@ -131,3 +136,4 @@ wikilist-title: <<colour foreground>>
|
||||
wikilist-title-svg: <<colour foreground>>
|
||||
wikilist-toolbar-foreground: <<colour foreground>>
|
||||
wikilist-url: <<colour muted-foreground>>
|
||||
network-activity-foreground: <<colour primary>>
|
||||
@@ -20,7 +20,7 @@ code-background: #f7f7f9
|
||||
code-border: #e1e1e8
|
||||
code-foreground: #dd1144
|
||||
dirty-indicator: #ff0000
|
||||
download-background: #34c734
|
||||
download-background: #30b830
|
||||
download-foreground: <<colour background>>
|
||||
dragger-background: <<colour foreground>>
|
||||
dragger-foreground: <<colour background>>
|
||||
@@ -58,22 +58,26 @@ primary: #5778d8
|
||||
select-tag-background:
|
||||
select-tag-foreground:
|
||||
sidebar-button-foreground: <<colour foreground>>
|
||||
sidebar-controls-foreground-hover: #ccf
|
||||
sidebar-controls-foreground: #fff
|
||||
sidebar-foreground-shadow: rgba(0,0,0, 0.5)
|
||||
sidebar-foreground: #fff
|
||||
sidebar-muted-foreground-hover: #444444
|
||||
sidebar-muted-foreground: #eee
|
||||
sidebar-tab-background-selected: rgba(255,255,255, 0.8)
|
||||
sidebar-tab-background: rgba(255,255,255, 0.4)
|
||||
sidebar-controls-foreground-hover: #a6a6ff
|
||||
sidebar-controls-foreground: #eeeeee
|
||||
sidebar-foreground-shadow: transparent
|
||||
sidebar-foreground: #eeeeee
|
||||
sidebar-muted-foreground-hover: #999999
|
||||
sidebar-muted-foreground: #eeeeee
|
||||
sidebar-tab-background-selected: <<colour page-background>>
|
||||
sidebar-tab-background: #e0e0e0
|
||||
sidebar-tab-border-selected: <<colour tab-border-selected>>
|
||||
sidebar-tab-border: <<colour tab-border>>
|
||||
sidebar-tab-divider: rgba(255,255,255, 0.2)
|
||||
sidebar-tab-foreground-selected:
|
||||
sidebar-tab-divider: #e4e4e4
|
||||
sidebar-tab-foreground-selected: #ddddff
|
||||
sidebar-tab-foreground: <<colour tab-foreground>>
|
||||
sidebar-tiddler-link-foreground-hover: #aaf
|
||||
sidebar-tiddler-link-foreground: #ddf
|
||||
site-title-foreground: #fff
|
||||
sidebar-tiddler-link-foreground-hover: #aaaaff
|
||||
sidebar-tiddler-link-foreground: #ddddff
|
||||
site-title-foreground: #ffffff
|
||||
stability-stable: #008000
|
||||
stability-experimental: #c07c00
|
||||
stability-deprecated: #ff0000
|
||||
stability-legacy: #0000ff
|
||||
static-alert-foreground: #aaaaaa
|
||||
tab-background-selected: #ffffff
|
||||
tab-background: #d8d8d8
|
||||
@@ -90,7 +94,7 @@ tag-foreground: #ffffff
|
||||
tiddler-background: <<colour background>>
|
||||
tiddler-border: <<colour background>>
|
||||
tiddler-controls-foreground-hover: #888888
|
||||
tiddler-controls-foreground-selected: #444444
|
||||
tiddler-controls-foreground-selected: #6a6aff
|
||||
tiddler-controls-foreground: #cccccc
|
||||
tiddler-editor-background: #f8f8f8
|
||||
tiddler-editor-border-image: #ffffff
|
||||
@@ -115,3 +119,4 @@ toolbar-cancel-button:
|
||||
toolbar-done-button:
|
||||
untagged-background: #999999
|
||||
very-muted-foreground: #888888
|
||||
network-activity-foreground: #11ff23
|
||||
@@ -22,9 +22,9 @@ diff-equal-foreground: <<colour foreground>>
|
||||
diff-insert-background: #91c093
|
||||
diff-insert-foreground: <<colour foreground>>
|
||||
diff-invisible-background:
|
||||
diff-invisible-foreground: <<colour muted-foreground>>
|
||||
diff-invisible-foreground: #d3d2cb
|
||||
dirty-indicator: #ad3434
|
||||
download-background: #6ca16c
|
||||
download-background: #5eae62
|
||||
download-foreground: <<colour background>>
|
||||
dragger-background: <<colour foreground>>
|
||||
dragger-foreground: <<colour background>>
|
||||
@@ -32,14 +32,13 @@ dropdown-background: <<colour background>>
|
||||
dropdown-border: <<colour muted-foreground>>
|
||||
dropdown-tab-background-selected: #E9E0C7
|
||||
dropdown-tab-background: #BAB29C
|
||||
dropzone-background: rgba(0,200,0,0.7)
|
||||
dropzone-background: #00c600
|
||||
external-link-background-hover: inherit
|
||||
external-link-background-visited: inherit
|
||||
external-link-background: inherit
|
||||
external-link-foreground-hover: inherit
|
||||
external-link-foreground-hover: #7474ba
|
||||
external-link-foreground-visited: #313163
|
||||
external-link-foreground: #555592
|
||||
footnote-target-background: #fff7d9
|
||||
foreground: #2D2A23
|
||||
highlight-background: #ffff00
|
||||
highlight-foreground: #000000
|
||||
@@ -71,7 +70,7 @@ sidebar-controls-foreground: #867F69
|
||||
sidebar-foreground-shadow: transparent
|
||||
sidebar-foreground: #867F69
|
||||
sidebar-muted-foreground-hover: #706A58
|
||||
sidebar-muted-foreground: #B3A98C
|
||||
sidebar-muted-foreground: #aba081
|
||||
sidebar-tab-background-selected: #e0d3af
|
||||
sidebar-tab-background: #A6A193
|
||||
sidebar-tab-border-selected: #C3BAA1
|
||||
@@ -82,6 +81,10 @@ sidebar-tab-foreground: #2D2A23
|
||||
sidebar-tiddler-link-foreground-hover: #433F35
|
||||
sidebar-tiddler-link-foreground: #706A58
|
||||
site-title-foreground: <<colour tiddler-title-foreground>>
|
||||
stability-deprecated: #dc322f
|
||||
stability-experimental: #b58900
|
||||
stability-legacy: #268bd2
|
||||
stability-stable: #859900
|
||||
static-alert-foreground: #A6A193
|
||||
tab-background-selected: #E9E0C7
|
||||
tab-background: #A6A193
|
||||
@@ -95,6 +98,7 @@ table-footer-background: #8A8885
|
||||
table-header-background: #B0AA98
|
||||
tag-background: #706A58
|
||||
tag-foreground: #E3D7B7
|
||||
testcase-accent-level-1: #b3adc9
|
||||
tiddler-background: <<colour background>>
|
||||
tiddler-border: <<colour background>>
|
||||
tiddler-controls-foreground-hover: #9D947B
|
||||
@@ -140,3 +144,4 @@ wikilist-toolbar-foreground: #2D2A23
|
||||
wikilist-droplink-dragover: rgba(255,192,192,0.5)
|
||||
wikilist-button-background: #A6A193
|
||||
wikilist-button-foreground: #161512
|
||||
network-activity-foreground: <<colour primary>>
|
||||
@@ -9,13 +9,13 @@ license: https://github.com/morhetz/gruvbox
|
||||
alert-background: #cc241d
|
||||
alert-border: #cc241d
|
||||
alert-highlight: #d79921
|
||||
alert-muted-foreground: #504945
|
||||
alert-muted-foreground: #272321
|
||||
background: #3c3836
|
||||
blockquote-bar: <<colour muted-foreground>>
|
||||
button-foreground: <<colour foreground>>
|
||||
code-background: #504945
|
||||
code-border: #504945
|
||||
code-foreground: #fb4934
|
||||
code-foreground: #fc5e4b
|
||||
diff-delete-background: #fb4934
|
||||
diff-delete-foreground: <<colour foreground>>
|
||||
diff-equal-background:
|
||||
@@ -25,7 +25,7 @@ diff-insert-foreground: <<colour background>>
|
||||
diff-invisible-background: #ffff97
|
||||
diff-invisible-foreground: #444347
|
||||
dirty-indicator: #fb4934
|
||||
download-background: #b8bb26
|
||||
download-background: #1daf24
|
||||
download-foreground: <<colour background>>
|
||||
dragger-background: <<colour foreground>>
|
||||
dragger-foreground: <<colour background>>
|
||||
@@ -46,52 +46,53 @@ highlight-background: #ffff79
|
||||
highlight-foreground: #000000
|
||||
menubar-background: #504945
|
||||
menubar-foreground: <<colour foreground>>
|
||||
message-background: #83a598
|
||||
message-background: #b4c9c1
|
||||
message-border: #83a598
|
||||
message-foreground: #3c3836
|
||||
modal-backdrop: <<colour foreground>>
|
||||
modal-backdrop: #625a57
|
||||
modal-background: <<colour background>>
|
||||
modal-border: #504945
|
||||
modal-footer-background: #3c3836
|
||||
modal-footer-border: #3c3836
|
||||
modal-header-border: #3c3836
|
||||
muted-foreground: #d5c4a1
|
||||
network-activity-foreground: <<colour primary>>
|
||||
notification-background: <<colour primary>>
|
||||
notification-border: <<colour primary>>
|
||||
page-background: #282828
|
||||
pre-background: #504945
|
||||
pre-border: #504945
|
||||
primary: #d79921
|
||||
primary: #da9921
|
||||
select-tag-background: #665c54
|
||||
select-tag-foreground: <<colour foreground>>
|
||||
selection-background: #458588
|
||||
selection-foreground: <<colour foreground>>
|
||||
sidebar-button-foreground: <<colour foreground>>
|
||||
sidebar-controls-foreground-hover: #7c6f64
|
||||
sidebar-controls-foreground: #504945
|
||||
sidebar-controls-foreground-hover: #e3e0dd
|
||||
sidebar-controls-foreground: #978b84
|
||||
sidebar-foreground-shadow: transparent
|
||||
sidebar-foreground: #fbf1c7
|
||||
sidebar-muted-foreground-hover: #7c6f64
|
||||
sidebar-muted-foreground: #504945
|
||||
sidebar-muted-foreground-hover: <<colour sidebar-controls-foreground-hover>>
|
||||
sidebar-muted-foreground: <<colour sidebar-controls-foreground>>
|
||||
sidebar-tab-background-selected: #bdae93
|
||||
sidebar-tab-background: #3c3836
|
||||
sidebar-tab-border-selected: <<colour tab-border-selected>>
|
||||
sidebar-tab-border: #bdae93
|
||||
sidebar-tab-divider: <<colour page-background>>
|
||||
sidebar-tab-foreground-selected: #282828
|
||||
sidebar-tab-foreground-selected: <<colour page-background>>
|
||||
sidebar-tab-foreground: <<colour tab-foreground>>
|
||||
sidebar-tiddler-link-foreground-hover: #458588
|
||||
sidebar-tiddler-link-foreground: #98971a
|
||||
site-title-foreground: <<colour tiddler-title-foreground>>
|
||||
stability-deprecated: #cc241d
|
||||
stability-experimental: #d79921
|
||||
stability-legacy: #458588
|
||||
stability-stable: #98971a
|
||||
stability-experimental: #b37d1c
|
||||
stability-legacy: #529ca0
|
||||
stability-stable: #649618
|
||||
static-alert-foreground: #B48EAD
|
||||
tab-background-selected: #ebdbb2
|
||||
tab-background: #665c54
|
||||
tab-border-selected: #665c54
|
||||
tab-border: #665c54
|
||||
tab-border-selected: <<colour tab-background-selected>>
|
||||
tab-border: #82746a
|
||||
tab-divider: #bdae93
|
||||
tab-foreground-selected: #282828
|
||||
tab-foreground: #ebdbb2
|
||||
@@ -100,6 +101,7 @@ table-footer-background: #665c54
|
||||
table-header-background: #504945
|
||||
tag-background: #d3869b
|
||||
tag-foreground: #282828
|
||||
testcase-accent-level-1: #456d88
|
||||
tiddler-background: <<colour background>>
|
||||
tiddler-border: <<colour background>>
|
||||
tiddler-controls-foreground-hover: #7c6f64
|
||||
@@ -126,7 +128,7 @@ toolbar-close-button:
|
||||
toolbar-delete-button:
|
||||
toolbar-cancel-button:
|
||||
toolbar-done-button:
|
||||
untagged-background: #504945
|
||||
untagged-background: #887b75
|
||||
very-muted-foreground: #bdae93
|
||||
wikilist-background: <<colour page-background>>
|
||||
wikilist-button-background: #acacac
|
||||
|
||||
@@ -7,15 +7,15 @@ type: application/x-tiddler-dictionary
|
||||
license: MIT, arcticicestudio, https://github.com/arcticicestudio/nord/blob/develop/LICENSE.md
|
||||
|
||||
alert-background: #D08770
|
||||
alert-border: #D08770
|
||||
alert-highlight: #B48EAD
|
||||
alert-muted-foreground: #4C566A
|
||||
alert-border: <<colour alert-background>>
|
||||
alert-highlight: #a3436f
|
||||
alert-muted-foreground: #495367
|
||||
background: #3b4252
|
||||
blockquote-bar: <<colour muted-foreground>>
|
||||
button-foreground: <<colour foreground>>
|
||||
code-background: #2E3440
|
||||
code-border: #2E3440
|
||||
code-foreground: #BF616A
|
||||
code-foreground: #c7747c
|
||||
diff-delete-background: #BF616A
|
||||
diff-delete-foreground: <<colour foreground>>
|
||||
diff-equal-background:
|
||||
@@ -48,31 +48,32 @@ menubar-background: #2E3440
|
||||
menubar-foreground: #d8dee9
|
||||
message-background: #2E3440
|
||||
message-border: #2E3440
|
||||
message-foreground: #547599
|
||||
modal-backdrop: <<colour foreground>>
|
||||
message-foreground: #6485aa
|
||||
modal-backdrop: #435678
|
||||
modal-background: <<colour background>>
|
||||
modal-border: #3b4252
|
||||
modal-footer-background: #3b4252
|
||||
modal-footer-border: #3b4252
|
||||
modal-header-border: #3b4252
|
||||
muted-foreground: #4C566A
|
||||
muted-foreground: #687693
|
||||
network-activity-foreground: <<colour primary>>
|
||||
notification-background: <<colour primary>>
|
||||
notification-border: #EBCB8B
|
||||
page-background: #2e3440
|
||||
pre-background: #2E3440
|
||||
pre-border: #2E3440
|
||||
primary: #5E81AC
|
||||
primary: #7b98bb
|
||||
select-tag-background: #3b4252
|
||||
select-tag-foreground: <<colour foreground>>
|
||||
selection-background: #5E81AC
|
||||
selection-background: #52749e
|
||||
selection-foreground: <<colour foreground>>
|
||||
sidebar-button-foreground: <<colour foreground>>
|
||||
sidebar-controls-foreground-hover: #D8DEE9
|
||||
sidebar-controls-foreground: #4C566A
|
||||
sidebar-controls-foreground: #5e6a84
|
||||
sidebar-foreground-shadow: transparent
|
||||
sidebar-foreground: #D8DEE9
|
||||
sidebar-muted-foreground-hover: #4C566A
|
||||
sidebar-muted-foreground: #4C566A
|
||||
sidebar-muted-foreground-hover: #9fa8bb
|
||||
sidebar-muted-foreground: #6c7b97
|
||||
sidebar-tab-background-selected: #ECEFF4
|
||||
sidebar-tab-background: #4C566A
|
||||
sidebar-tab-border-selected: <<colour tab-border-selected>>
|
||||
@@ -83,39 +84,40 @@ sidebar-tab-foreground: <<colour tab-foreground>>
|
||||
sidebar-tiddler-link-foreground-hover: #A3BE8C
|
||||
sidebar-tiddler-link-foreground: #81A1C1
|
||||
site-title-foreground: <<colour tiddler-title-foreground>>
|
||||
stability-deprecated: #bf616a
|
||||
stability-experimental: #d08770
|
||||
stability-legacy: #88c0d0
|
||||
stability-stable: #a3be8c
|
||||
stability-deprecated: #ff595e
|
||||
stability-experimental: #f29d00
|
||||
stability-legacy: #2ddbca
|
||||
stability-stable: #04ff04
|
||||
static-alert-foreground: #B48EAD
|
||||
tab-background-selected: #ECEFF4
|
||||
tab-background: #4C566A
|
||||
tab-border-selected: #4C566A
|
||||
tab-border: #4C566A
|
||||
tab-border: #5c6883
|
||||
tab-divider: #4C566A
|
||||
tab-foreground-selected: #4C566A
|
||||
tab-foreground-selected: #6c7a97
|
||||
tab-foreground: #D8DEE9
|
||||
table-border: #4C566A
|
||||
table-footer-background: #2e3440
|
||||
table-header-background: #2e3440
|
||||
tag-background: #A3BE8C
|
||||
tag-foreground: #4C566A
|
||||
testcase-accent-level-1: #455e7d
|
||||
tiddler-background: <<colour background>>
|
||||
tiddler-border: <<colour background>>
|
||||
tiddler-controls-foreground-hover:
|
||||
tiddler-controls-foreground-selected: #EBCB8B
|
||||
tiddler-controls-foreground: #4C566A
|
||||
tiddler-controls-foreground: #5e6a84
|
||||
tiddler-editor-background: #2e3440
|
||||
tiddler-editor-border-image: #2e3440
|
||||
tiddler-editor-border: #3b4252
|
||||
tiddler-editor-border: #232732
|
||||
tiddler-editor-fields-even: #2e3440
|
||||
tiddler-editor-fields-odd: #2e3440
|
||||
tiddler-editor-fields-odd: #424a5b
|
||||
tiddler-info-background: #2e3440
|
||||
tiddler-info-border: #2e3440
|
||||
tiddler-info-tab-background: #2e3440
|
||||
tiddler-link-background: <<colour background>>
|
||||
tiddler-link-foreground: <<colour primary>>
|
||||
tiddler-subtitle-foreground: #4C566A
|
||||
tiddler-subtitle-foreground: #5c6881
|
||||
tiddler-title-foreground: #81A1C1
|
||||
toolbar-new-button:
|
||||
toolbar-options-button:
|
||||
@@ -138,4 +140,4 @@ wikilist-button-open-hover: #A3BE8C
|
||||
wikilist-button-reveal: #81A1C1
|
||||
wikilist-button-reveal-hover: #81A1C1
|
||||
wikilist-button-remove: #B48EAD
|
||||
wikilist-button-remove-hover: #B48EAD
|
||||
wikilist-button-remove-hover: #B48EAD
|
||||
@@ -11,7 +11,7 @@ alert-highlight: #881122
|
||||
alert-muted-foreground: #b99e2f
|
||||
background: #ffffff
|
||||
blockquote-bar: <<colour muted-foreground>>
|
||||
button-background:
|
||||
button-background: #adadad
|
||||
button-foreground:
|
||||
button-border:
|
||||
code-background: #f7f7f9
|
||||
@@ -47,36 +47,41 @@ modal-footer-background: #f5f5f5
|
||||
modal-footer-border: #dddddd
|
||||
modal-header-border: #eeeeee
|
||||
muted-foreground: #999999
|
||||
network-activity-foreground: <<colour primary>>
|
||||
notification-background: #ffffdd
|
||||
notification-border: #999999
|
||||
page-background: #000
|
||||
pre-background: #f5f5f5
|
||||
pre-border: #cccccc
|
||||
primary: #cc0000
|
||||
select-tag-background:
|
||||
select-tag-foreground:
|
||||
select-tag-background: <<colour foreground>>
|
||||
select-tag-foreground: <<colour foreground>>
|
||||
sidebar-button-foreground: <<colour foreground>>
|
||||
sidebar-controls-foreground-hover: #000000
|
||||
sidebar-controls-foreground: #ffffff
|
||||
sidebar-controls-foreground-hover: #797979
|
||||
sidebar-controls-foreground: #cacaca
|
||||
sidebar-foreground-shadow: rgba(255,255,255, 0.0)
|
||||
sidebar-foreground: #acacac
|
||||
sidebar-muted-foreground-hover: #444444
|
||||
sidebar-muted-foreground: #c0c0c0
|
||||
sidebar-tab-background-selected: #000
|
||||
sidebar-tab-background-selected: #000000
|
||||
sidebar-tab-background: <<colour tab-background>>
|
||||
sidebar-tab-border-selected: <<colour tab-border-selected>>
|
||||
sidebar-tab-border-selected: #7c7c7c
|
||||
sidebar-tab-border: <<colour tab-border>>
|
||||
sidebar-tab-divider: <<colour tab-divider>>
|
||||
sidebar-tab-foreground-selected:
|
||||
sidebar-tab-foreground-selected: #ff0909
|
||||
sidebar-tab-foreground: <<colour tab-foreground>>
|
||||
sidebar-tiddler-link-foreground-hover: #ffbb99
|
||||
sidebar-tiddler-link-foreground: #cc0000
|
||||
site-title-foreground: <<colour tiddler-title-foreground>>
|
||||
stability-deprecated: #ff0000
|
||||
stability-experimental: #c07c00
|
||||
stability-legacy: #0000ff
|
||||
stability-stable: #008000
|
||||
static-alert-foreground: #aaaaaa
|
||||
tab-background-selected: #ffffff
|
||||
tab-background: #d8d8d8
|
||||
tab-border-selected: #d8d8d8
|
||||
tab-border: #cccccc
|
||||
tab-border: #bbbbbb
|
||||
tab-divider: #d8d8d8
|
||||
tab-foreground-selected: <<colour tab-foreground>>
|
||||
tab-foreground: #666666
|
||||
@@ -85,6 +90,7 @@ table-footer-background: #a8a8a8
|
||||
table-header-background: #f0f0f0
|
||||
tag-background: #ffbb99
|
||||
tag-foreground: #000
|
||||
testcase-accent-level-1: #9e9eff
|
||||
tiddler-background: <<colour background>>
|
||||
tiddler-border: <<colour background>>
|
||||
tiddler-controls-foreground-hover: #888888
|
||||
@@ -112,4 +118,4 @@ toolbar-delete-button:
|
||||
toolbar-cancel-button:
|
||||
toolbar-done-button:
|
||||
untagged-background: #999999
|
||||
very-muted-foreground: #888888
|
||||
very-muted-foreground: #888888
|
||||
@@ -5,24 +5,24 @@ description: Warm, relaxing earth colours
|
||||
tags: $:/tags/Palette
|
||||
type: application/x-tiddler-dictionary
|
||||
|
||||
: Background Tones
|
||||
# Background Tones
|
||||
|
||||
base03: #002b36
|
||||
base02: #073642
|
||||
|
||||
: Content Tones
|
||||
# Content Tones
|
||||
|
||||
base01: #586e75
|
||||
base00: #657b83
|
||||
base0: #839496
|
||||
base1: #93a1a1
|
||||
|
||||
: Background Tones
|
||||
# Background Tones
|
||||
|
||||
base2: #eee8d5
|
||||
base3: #fdf6e3
|
||||
|
||||
: Accent Colors
|
||||
# Accent Colors
|
||||
|
||||
yellow: #b58900
|
||||
orange: #cb4b16
|
||||
@@ -33,7 +33,7 @@ blue: #268bd2
|
||||
cyan: #2aa198
|
||||
green: #859900
|
||||
|
||||
: Additional Tones (RA)
|
||||
# Additional Tones (RA)
|
||||
|
||||
base10: #c0c4bb
|
||||
violet-muted: #7c81b0
|
||||
@@ -45,9 +45,9 @@ red-hot: #ff2222
|
||||
blue-hot: #2298ee
|
||||
green-hot: #98ee22
|
||||
|
||||
: Palette
|
||||
# Palette
|
||||
|
||||
: Do not use colour macro for background and foreground
|
||||
# Do not use colour macro for background and foreground
|
||||
background: #fdf6e3
|
||||
download-foreground: <<colour background>>
|
||||
dragger-foreground: <<colour background>>
|
||||
@@ -68,24 +68,28 @@ foreground: #657b83
|
||||
sidebar-button-foreground: <<colour foreground>>
|
||||
sidebar-controls-foreground: <<colour foreground>>
|
||||
sidebar-foreground: <<colour foreground>>
|
||||
: base03
|
||||
: base02
|
||||
: base01
|
||||
# base03
|
||||
# base02
|
||||
# base01
|
||||
alert-muted-foreground: <<colour base01>>
|
||||
: base00
|
||||
# base00
|
||||
code-foreground: <<colour base00>>
|
||||
message-foreground: <<colour base00>>
|
||||
tag-foreground: <<colour base00>>
|
||||
: base0
|
||||
# base0
|
||||
sidebar-tiddler-link-foreground: <<colour base0>>
|
||||
: base1
|
||||
# base1
|
||||
muted-foreground: <<colour base1>>
|
||||
blockquote-bar: <<colour muted-foreground>>
|
||||
dropdown-border: <<colour muted-foreground>>
|
||||
sidebar-muted-foreground: <<colour muted-foreground>>
|
||||
tiddler-title-foreground: <<colour muted-foreground>>
|
||||
site-title-foreground: <<colour tiddler-title-foreground>>
|
||||
: base2
|
||||
# base2
|
||||
stability-deprecated: <<colour red>>
|
||||
stability-experimental: <<colour yellow>>
|
||||
stability-legacy: <<colour blue-hot>>
|
||||
stability-stable: <<colour green>>
|
||||
modal-footer-background: <<colour base2>>
|
||||
page-background: <<colour base2>>
|
||||
modal-backdrop: <<colour page-background>>
|
||||
@@ -99,31 +103,31 @@ foreground: #657b83
|
||||
tag-background: <<colour base2>>
|
||||
tiddler-editor-background: <<colour base2>>
|
||||
tiddler-info-background: <<colour base2>>
|
||||
tiddler-info-tab-background: <<colour base2>>
|
||||
tiddler-info-tab-background: <<colour tiddler-info-border>>
|
||||
tab-background: <<colour base2>>
|
||||
dropdown-tab-background: <<colour tab-background>>
|
||||
: base3
|
||||
dropdown-tab-background: <<colour tab-background>>
|
||||
# base3
|
||||
alert-background: <<colour base3>>
|
||||
message-background: <<colour base3>>
|
||||
: yellow
|
||||
: orange
|
||||
: red
|
||||
: magenta
|
||||
# yellow
|
||||
# orange
|
||||
# red
|
||||
# magenta
|
||||
alert-highlight: <<colour magenta>>
|
||||
: violet
|
||||
# violet
|
||||
external-link-foreground: <<colour violet>>
|
||||
: blue
|
||||
: cyan
|
||||
: green
|
||||
: base10
|
||||
tiddler-controls-foreground: <<colour base10>>
|
||||
: violet-muted
|
||||
external-link-foreground-visited: <<colour violet-muted>>
|
||||
: blue-muted
|
||||
primary: <<colour blue-muted>>
|
||||
download-background: <<colour primary>>
|
||||
tiddler-link-foreground: <<colour primary>>
|
||||
|
||||
# blue
|
||||
# cyan
|
||||
# green
|
||||
# base10
|
||||
tiddler-controls-foreground: <<colour base10>>
|
||||
# violet-muted
|
||||
external-link-foreground-visited: <<colour violet-muted>>
|
||||
# blue-muted
|
||||
primary: <<colour blue-muted>>
|
||||
download-background: #5bb83d
|
||||
tiddler-link-foreground: <<colour primary>>
|
||||
alert-border: #b99e2f
|
||||
diff-delete-background: <<colour red>>
|
||||
diff-delete-foreground: <<colour background>>
|
||||
@@ -134,7 +138,7 @@ diff-insert-foreground: <<colour background>>
|
||||
diff-invisible-background: <<colour yellow>>
|
||||
diff-invisible-foreground: <<colour background>>
|
||||
dirty-indicator: #ff0000
|
||||
dropzone-background: rgba(0,200,0,0.7)
|
||||
dropzone-background: #008800
|
||||
external-link-background-hover: inherit
|
||||
external-link-background-visited: inherit
|
||||
external-link-background: inherit
|
||||
@@ -146,14 +150,10 @@ message-border: #cfd6e6
|
||||
modal-border: #999999
|
||||
select-tag-background:
|
||||
select-tag-foreground:
|
||||
sidebar-controls-foreground-hover:
|
||||
sidebar-controls-foreground-hover: #000000
|
||||
sidebar-muted-foreground-hover:
|
||||
sidebar-tab-background: #ded8c5
|
||||
sidebar-tiddler-link-foreground-hover:
|
||||
stability-deprecated: <<colour red>>
|
||||
stability-experimental: <<colour yellow>>
|
||||
stability-legacy: <<colour blue>>
|
||||
stability-stable: <<colour green>>
|
||||
static-alert-foreground: #aaaaaa
|
||||
tab-border: #cccccc
|
||||
modal-footer-border: <<colour tab-border>>
|
||||
@@ -166,6 +166,7 @@ tab-divider: #d8d8d8
|
||||
sidebar-tab-divider: <<colour tab-divider>>
|
||||
table-border: #dddddd
|
||||
table-footer-background: #a8a8a8
|
||||
testcase-accent-level-1: #bec8cc
|
||||
tiddler-controls-foreground-hover: #888888
|
||||
tiddler-controls-foreground-selected: #444444
|
||||
tiddler-editor-border-image: #ffffff
|
||||
@@ -185,3 +186,4 @@ toolbar-cancel-button:
|
||||
toolbar-done-button:
|
||||
untagged-background: #999999
|
||||
very-muted-foreground: #888888
|
||||
network-activity-foreground: <<colour primary>>
|
||||
@@ -40,7 +40,7 @@ external-link-background: inherit
|
||||
external-link-background-hover: inherit
|
||||
external-link-background-visited: inherit
|
||||
external-link-foreground: #268bd2
|
||||
external-link-foreground-hover:
|
||||
external-link-foreground-hover: #1d669c
|
||||
external-link-foreground-visited: #268bd2
|
||||
footnote-target-background: #073642
|
||||
foreground: #839496
|
||||
@@ -56,6 +56,7 @@ modal-footer-background: #073642
|
||||
modal-footer-border: #586e75
|
||||
modal-header-border: #586e75
|
||||
muted-foreground: #93a1a1
|
||||
network-activity-foreground: <<colour primary>>
|
||||
notification-background: #002b36
|
||||
notification-border: #586e75
|
||||
page-background: #073642
|
||||
@@ -81,10 +82,10 @@ sidebar-tab-foreground-selected: #93a1a1
|
||||
sidebar-tiddler-link-foreground: #2aa198
|
||||
sidebar-tiddler-link-foreground-hover: #eee8d5
|
||||
site-title-foreground: #d33682
|
||||
stability-deprecated: #dc322f
|
||||
stability-experimental: #b58900
|
||||
stability-legacy: #268bd2
|
||||
stability-stable: #859900
|
||||
stability-deprecated: #aa1a9f
|
||||
stability-experimental: #806000
|
||||
stability-legacy: #1d669c
|
||||
stability-stable: #00df11
|
||||
static-alert-foreground: #93a1a1
|
||||
tab-background: #073642
|
||||
tab-background-selected: #002b36
|
||||
@@ -98,6 +99,7 @@ table-footer-background: #073642
|
||||
table-header-background: #073642
|
||||
tag-background: #b58900
|
||||
tag-foreground: #002b36
|
||||
testcase-accent-level-1: #073642
|
||||
tiddler-background: #002b36
|
||||
tiddler-border: #586e75
|
||||
tiddler-controls-foreground: inherit
|
||||
@@ -125,4 +127,4 @@ toolbar-new-button: #839496
|
||||
toolbar-options-button: #839496
|
||||
toolbar-save-button: inherit
|
||||
untagged-background: #586e75
|
||||
very-muted-foreground: #586e75
|
||||
very-muted-foreground: #586e75
|
||||
@@ -27,7 +27,7 @@ diff-insert-foreground: #eee8d5
|
||||
diff-invisible-background: #b58900
|
||||
diff-invisible-foreground: #eee8d5
|
||||
dirty-indicator: #dc322f
|
||||
download-background: #859900
|
||||
download-background: #00910b
|
||||
download-foreground: #eee8d5
|
||||
dragger-background: #eee8d5
|
||||
dragger-foreground: #657b83
|
||||
@@ -56,6 +56,7 @@ modal-footer-background: #eee8d5
|
||||
modal-footer-border: #93a1a1
|
||||
modal-header-border: #93a1a1
|
||||
muted-foreground: #586e75
|
||||
network-activity-foreground: <<colour primary>>
|
||||
notification-background: #fdf6e3
|
||||
notification-border: #93a1a1
|
||||
page-background: #eee8d5
|
||||
@@ -81,10 +82,10 @@ sidebar-tab-foreground-selected: #586e75
|
||||
sidebar-tiddler-link-foreground: #2aa198
|
||||
sidebar-tiddler-link-foreground-hover: #002b36
|
||||
site-title-foreground: #d33682
|
||||
stability-deprecated: #dc322f
|
||||
stability-experimental: #b58900
|
||||
stability-legacy: #268bd2
|
||||
stability-stable: #859900
|
||||
stability-deprecated: #d21a1a
|
||||
stability-experimental: #771e00
|
||||
stability-legacy: #227abb
|
||||
stability-stable: #576400
|
||||
static-alert-foreground: #586e75
|
||||
tab-background: #eee8d5
|
||||
tab-background-selected: #fdf6e3
|
||||
@@ -98,6 +99,7 @@ table-footer-background: #eee8d5
|
||||
table-header-background: #eee8d5
|
||||
tag-background: #b58900
|
||||
tag-foreground: #fdf6e3
|
||||
testcase-accent-level-1: #afc2db
|
||||
tiddler-background: #fdf6e3
|
||||
tiddler-border: #93a1a1
|
||||
tiddler-controls-foreground: inherit
|
||||
|
||||
@@ -94,6 +94,7 @@ table-footer-background: rgba(0,0,0,.4)
|
||||
table-header-background: rgba(0,0,0,.1)
|
||||
tag-background: rgb(255, 201, 102)
|
||||
tag-foreground: rgb(25, 25, 25)
|
||||
testcase-accent-level-1: rgb(13, 52, 99)
|
||||
tiddler-background: rgb(38, 38, 38)
|
||||
tiddler-border: rgba(240, 196, 117, 0.7)
|
||||
tiddler-controls-foreground: rgb(128, 128, 128)
|
||||
|
||||
@@ -69,7 +69,7 @@ select-tag-foreground:
|
||||
sidebar-button-foreground: <<colour foreground>>
|
||||
sidebar-controls-foreground-hover: #000000
|
||||
sidebar-controls-foreground: #aaaaaa
|
||||
sidebar-foreground-shadow: rgba(255,255,255, 0.8)
|
||||
sidebar-foreground-shadow: #ffffff
|
||||
sidebar-foreground: #acacac
|
||||
sidebar-muted-foreground-hover: #444444
|
||||
sidebar-muted-foreground: #c0c0c0
|
||||
@@ -83,7 +83,7 @@ sidebar-tab-foreground: <<colour tab-foreground>>
|
||||
sidebar-tiddler-link-foreground-hover: #444444
|
||||
sidebar-tiddler-link-foreground: #999999
|
||||
site-title-foreground: <<colour tiddler-title-foreground>>
|
||||
stability-stable: #008000
|
||||
stability-stable: #00b700
|
||||
stability-experimental: #c07c00
|
||||
stability-deprecated: #ff0000
|
||||
stability-legacy: #0000ff
|
||||
@@ -138,13 +138,13 @@ wikilist-title: #666666
|
||||
wikilist-title-svg: <<colour wikilist-title>>
|
||||
wikilist-url: #aaaaaa
|
||||
wikilist-button-open: #4fb82b
|
||||
wikilist-button-open-hover: green
|
||||
wikilist-button-open-hover: #009300
|
||||
wikilist-button-reveal: #5778d8
|
||||
wikilist-button-reveal-hover: blue
|
||||
wikilist-button-reveal-hover: #0000ff
|
||||
wikilist-button-remove: #d85778
|
||||
wikilist-button-remove-hover: red
|
||||
wikilist-button-remove-hover: #ff0000
|
||||
wikilist-toolbar-background: #d3d3d3
|
||||
wikilist-toolbar-foreground: #888888
|
||||
wikilist-droplink-dragover: rgba(255,192,192,0.5)
|
||||
wikilist-droplink-dragover: #ffc0c0
|
||||
wikilist-button-background: #acacac
|
||||
wikilist-button-foreground: #000000
|
||||
wikilist-button-foreground: #000000
|
||||
@@ -37,7 +37,7 @@ caption: {{$:/language/Search/Standard/Caption}}
|
||||
inputCancelActions=<<cancel-search-actions>>
|
||||
inputAcceptActions=<<input-accept-actions>>
|
||||
inputAcceptVariantActions=<<input-accept-variant-actions>>
|
||||
configTiddlerFilter="[[$:/state/search/currentTab]!is[missing]get[text]] :else[{$:/config/SearchResults/Default}]"
|
||||
configTiddlerFilter="[[$:/state/advancedsearch/standard/currentTab]!is[missing]get[text]] :else[{$:/config/SearchResults/Default}]"
|
||||
filterMinLength={{$:/config/Search/MinLength}}/>
|
||||
</$keyboard>
|
||||
</$keyboard>
|
||||
|
||||
@@ -21,12 +21,6 @@ http://$(userName)$.tiddlyspot.com/$path$/
|
||||
</$reveal>
|
||||
\end
|
||||
|
||||
<div class="tc-message-box">
|
||||
|
||||
<<lingo ReadOnly>>
|
||||
|
||||
</div>
|
||||
|
||||
<<lingo Description>>
|
||||
|
||||
|<<lingo UserName>> |<$edit-text tiddler="$:/UploadName" default="" tag="input"/> |
|
||||
|
||||
@@ -3,7 +3,7 @@ tags: $:/tags/ControlPanel/Saving
|
||||
caption: {{$:/language/ControlPanel/Saving/GitService/Gitea/Caption}}
|
||||
|
||||
\define lingo-base() $:/language/ControlPanel/Saving/GitService/
|
||||
\define service-name() ~Gitea
|
||||
\define service-name() Gitea
|
||||
|
||||
<<lingo Description>>
|
||||
|
||||
|
||||
19
core/ui/ControlPanel/Settings/DefaultTiddlerInfoTab.tid
Normal file
19
core/ui/ControlPanel/Settings/DefaultTiddlerInfoTab.tid
Normal file
@@ -0,0 +1,19 @@
|
||||
caption: {{$:/language/ControlPanel/Settings/DefaultTiddlerInfoTab/Caption}}
|
||||
tags: $:/tags/ControlPanel/Settings
|
||||
title: $:/core/ui/ControlPanel/Settings/DefaultTiddlerInfoTab
|
||||
|
||||
\whitespace trim
|
||||
\define lingo-base() $:/language/ControlPanel/Settings/DefaultTiddlerInfoTab/
|
||||
|
||||
<$link to="$:/config/TiddlerInfo/Default" class="tc-control-panel-item">
|
||||
<<lingo Hint>>
|
||||
</$link>
|
||||
|
||||
<$select tiddler="$:/config/TiddlerInfo/Default" class="tc-select">
|
||||
<$list filter="[all[shadows+tiddlers]tag[$:/tags/TiddlerInfo]!is[draft]]">
|
||||
<option value=<<currentTiddler>>><$transclude field="caption">
|
||||
<$text text=<<currentTiddler>>/>
|
||||
</$transclude>
|
||||
</option>
|
||||
</$list>
|
||||
</$select>
|
||||
@@ -17,9 +17,7 @@ tags: $:/tags/EditTemplate
|
||||
<$let backgroundColor=<<colour>> >
|
||||
<span class="tc-tag-label tc-tag-list-item tc-small-gap-right"
|
||||
data-tag-title=<<currentTiddler>>
|
||||
style.color=<<foregroundColor>>
|
||||
style.fill=<<foregroundColor>>
|
||||
style.background-color=<<backgroundColor>>
|
||||
style=`color:$(foregroundColor)$; fill:$(foregroundColor)$; background-color:$(backgroundColor)$;`
|
||||
>
|
||||
<$transclude tiddler=<<icon>>/>
|
||||
<$view field="title" format="text"/>
|
||||
|
||||
@@ -12,7 +12,7 @@ Export the TiddlyWiki core JavaScript code for running with external JavaScript:
|
||||
tooltip="Export the TiddlyWiki core code for running with external JavaScript"
|
||||
aria-label="export TiddlyWiki core"
|
||||
class="tc-btn-big-green">
|
||||
<$action-sendmessage $message='tm-download-file' $param='$:/core/templates/tiddlywiki5.js' filename=<<jsFileName>>/>
|
||||
<$action-sendmessage $message='tm-download-file' $param='$:/core/templates/tiddlywiki5.js' filename=<<jsFileName>> type="application/javascript"/>
|
||||
{{$:/core/images/download-button}}
|
||||
<span class="tc-tiny-gap-left">
|
||||
Download TiddlyWiki core
|
||||
|
||||
@@ -51,6 +51,7 @@ title: $:/core/ui/ImportListing
|
||||
\end
|
||||
|
||||
\whitespace trim
|
||||
<div class="tc-table-wrapper">
|
||||
<table class="tc-import-table">
|
||||
<tbody>
|
||||
<tr>
|
||||
@@ -129,3 +130,4 @@ title: $:/core/ui/ImportListing
|
||||
</$list>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
@@ -12,7 +12,7 @@ element, and right-click its `src` URI. Save the link as ''$(jsFileName)$''</p>
|
||||
Export the ~TiddlyWiki core ~JavaScript code for running with external ~JavaScript:
|
||||
|
||||
<$button tooltip="Export the ~TiddlyWiki core code for running with external ~JavaScript" aria-label="export TiddlyWiki core" class="tc-btn-big-green">
|
||||
<$list filter="[[$:/boot/boot.js]is[missing]]" variable="ignore" emptyMessage="""<$action-sendmessage $message="tm-download-file" $param="$:/core/templates/tiddlywiki5.js" filename=<<jsFileName>>/>""" >
|
||||
<$list filter="[[$:/boot/boot.js]is[missing]]" variable="ignore" emptyMessage="""<$action-sendmessage $message="tm-download-file" $param="$:/core/templates/tiddlywiki5.js" filename=<<jsFileName>> type="application/javascript"/>""" >
|
||||
<$action-setfield $tiddler=<<qualify "$:/temp/alert">> text=<<noExportMsg>> subtitle="Export ~TiddllyWiki Core"/>
|
||||
<$action-sendmessage $message="tm-modal" $param=<<qualify "$:/temp/alert">>/>
|
||||
</$list>
|
||||
|
||||
@@ -2,31 +2,26 @@ title: $:/core/ui/SideBar/Tools
|
||||
tags: $:/tags/SideBar
|
||||
caption: {{$:/language/SideBar/Tools/Caption}}
|
||||
|
||||
\define lingo-base() $:/language/ControlPanel/
|
||||
\define config-title()
|
||||
$:/config/PageControlButtons/Visibility/$(listItem)$
|
||||
\end
|
||||
\whitespace trim
|
||||
|
||||
\procedure lingo-base() $:/language/ControlPanel/
|
||||
\function config-title() [[$:/config/PageControlButtons/Visibility/$(listItem)$]substitute[]]
|
||||
|
||||
<<lingo Basics/Version/Prompt>> <<version>>
|
||||
|
||||
<$set name="tv-config-toolbar-icons" value="yes">
|
||||
|
||||
<$set name="tv-config-toolbar-text" value="yes">
|
||||
|
||||
<$set name="tv-config-toolbar-class" value="">
|
||||
|
||||
<$list filter="[all[shadows+tiddlers]tag[$:/tags/PageControls]!has[draft.of]]" variable="listItem">
|
||||
|
||||
<div style="position:relative;" class={{{ [<listItem>encodeuricomponent[]addprefix[tc-btn-]] }}}>
|
||||
|
||||
<$checkbox tiddler=<<config-title>> field="text" checked="show" unchecked="hide" default="show"/> <$transclude tiddler=<<listItem>>/> <i class="tc-muted"><$transclude tiddler=<<listItem>> field="description"/></i>
|
||||
|
||||
</div>
|
||||
|
||||
</$list>
|
||||
|
||||
</$set>
|
||||
|
||||
</$set>
|
||||
|
||||
</$set>
|
||||
<$let tv-config-toolbar-icons="yes"
|
||||
tv-config-toolbar-text="yes"
|
||||
tv-config-toolbar-class=""
|
||||
>
|
||||
<$list filter="[all[shadows+tiddlers]tag[$:/tags/PageControls]!has[draft.of]]" variable="listItem">
|
||||
<div class={{{ [<listItem>encodeuricomponent[]addprefix[tc-btn-]] tc-sidebar-tools-item +[join[ ]] }}}
|
||||
data-title=<<listItem>>
|
||||
>
|
||||
<$checkbox tiddler=<<config-title>> field="text" checked="show" unchecked="hide" default="show" class="tc-tiny-gap-right"/>
|
||||
<$transclude $tiddler=<<listItem>>/>
|
||||
<i class="tc-tiny-gap-left tc-muted">
|
||||
<$transclude $tiddler=<<listItem>> $field="description"/>
|
||||
</i>
|
||||
</div>
|
||||
</$list>
|
||||
</$let>
|
||||
|
||||
122
core/ui/WikiInformation.tid
Normal file
122
core/ui/WikiInformation.tid
Normal file
@@ -0,0 +1,122 @@
|
||||
title: $:/core/ui/ControlPanel/WikiInformation
|
||||
tags: $:/tags/ControlPanel/Info
|
||||
caption: <%if [[$:/language/ControlPanel/WikiInformation/Caption]is[shadow]] %>{{$:/language/ControlPanel/WikiInformation/Caption}}<%else%>Wiki Information<%endif%>
|
||||
subtitle: <%if [[$:/language/ControlPanel/WikiInformation/Caption]is[shadow]] %>{{$:/language/ControlPanel/WikiInformation/Caption}}<%else%>Wiki Information<%endif%>
|
||||
|
||||
\procedure lingo-base() $:/language/ControlPanel/WikiInformation/
|
||||
|
||||
<!--
|
||||
A custom implementation of the lingo macro that works even if this tiddler has been copied to an earlier version of TiddlyWiki that doesn't include the necessary lingo tiddlers in the core.
|
||||
-->
|
||||
|
||||
\procedure intrinsic-lingo-Hint()
|
||||
This page summarises high level information about the configuration of this ~TiddlyWiki. It is designed to enable users to quickly share relevant aspects of the configuration of their ~TiddlyWiki with others, for example when seeking help in one of the forums. No private or personal information is included, and nothing is shared without being explicitly copied and pasted elsewhere
|
||||
\end intrinsic-lingo-Hint
|
||||
|
||||
\procedure intrinsic-lingo-Drag/Caption()
|
||||
Drag this link to copy this tool to another wiki
|
||||
\end intrinsic-lingo-Drag/Caption
|
||||
|
||||
\procedure lingo(title,mode:"inline")
|
||||
<%if [<title>addprefix<lingo-base>is[shadow]] %>
|
||||
<$transclude $tiddler={{{ [<title>addprefix<lingo-base>] }}} $mode=<<mode>>/>
|
||||
<%else%>
|
||||
<$transclude $variable={{{ [<title>addprefix[intrinsic-lingo-]] }}} $mode=<<mode>>/>
|
||||
<%endif%>
|
||||
\end lingo
|
||||
|
||||
\whitespace trim
|
||||
|
||||
\procedure capture-item(label,value)
|
||||
<$action-setfield $tiddler=<<tempWikiInfo>> text={{{ [<tempWikiInfo>get[text]addsuffix<label>addsuffix[: ]addsuffix<value>addsuffix<crlf>] }}}/>
|
||||
\end capture-item
|
||||
|
||||
\procedure capture-item-wikified(label,value)
|
||||
<$wikify name="text" text=<<value>> mode="inline">
|
||||
<$transclude
|
||||
$variable="capture-item"
|
||||
label=<<label>>
|
||||
value=<<text>>
|
||||
/>
|
||||
</$wikify>
|
||||
\end capture-item-wikified
|
||||
|
||||
\procedure capture-wiki-info(tempWikiInfo)
|
||||
<$transclude $variable="capture-item-wikified" label="TiddlyWiki Version" value="<<version>>"/>
|
||||
<$transclude $variable="capture-item" label="Current palette" value={{$:/palette}}/>
|
||||
<$transclude $variable="capture-item" label="Current theme" value={{$:/theme}}/>
|
||||
<$transclude $variable="capture-item" label="Current layout" value={{$:/layout}}/>
|
||||
<$transclude $variable="capture-item" label="Browser language setting" value={{$:/info/browser/language}}/>
|
||||
<$transclude $variable="capture-item" label="Default type for missing tiddlers" value={{$:/config/DefaultMissingType}}/>
|
||||
<$transclude $variable="capture-item" label="Auto save setting" value={{$:/config/AutoSave}}/>
|
||||
<$transclude $variable="capture-item" label="Code wrapping setting" value={{$:/themes/tiddlywiki/vanilla/options/codewrapping}}/>
|
||||
<$transclude $variable="capture-item" label="Sticky titles setting" value={{$:/themes/tiddlywiki/vanilla/options/stickytitles}}/>
|
||||
<$transclude $variable="capture-item" label="Sidebar layout setting" value={{$:/themes/tiddlywiki/vanilla/options/sidebarlayout}}/>
|
||||
<$transclude $variable="capture-item" label="Auto focus field setting for new tiddlers" value={{$:/config/AutoFocus}}/>
|
||||
<$transclude $variable="capture-item" label="Current storyview setting" value={{$:/view}}/>
|
||||
<$transclude $variable="capture-item" label="Toolbar text setting" value={{$:/config/Toolbar/Text}}/>
|
||||
<$transclude $variable="capture-item" label="Toolbar icon setting" value={{$:/config/Toolbar/Icons}}/>
|
||||
<$transclude $variable="capture-item" label="Button class setting" value={{$:/config/Toolbar/ButtonClass}}/>
|
||||
<$transclude $variable="capture-item" label="Navigation address bar setting" value={{$:/config/Navigation/UpdateAddressBar}}/>
|
||||
<$transclude $variable="capture-item" label="Tiddler opening behaviour setting for navigations from outside the story river" value={{$:/config/Navigation/openLinkFromOutsideRiver}}/>
|
||||
<$transclude $variable="capture-item" label="Tiddler opening behaviour setting for navigations from within the story river" value={{$:/config/Navigation/openLinkFromInsideRiver}}/>
|
||||
<$transclude $variable="capture-item" label="CamelCase linking setting" value={{$:/config/WikiParserRules/Inline/wikilink}}/>
|
||||
<$transclude $variable="capture-item" label="Keyboard shortcuts that have been customised" value={{{ [all[tiddlers]prefix[$:/config/shortcuts]] +[join[,]] }}}/>
|
||||
<$transclude $variable="capture-item" label="Disabled plugins" value={{{ [all[tiddlers]prefix[$:/config/Plugins/Disabled/]] :filter[{!!text}match[yes]] :map[<currentTiddler>removeprefix[$:/config/Plugins/Disabled/]] +[join[,]] }}}/>
|
||||
<$transclude $variable="capture-item" label="Plugins" value={{{ [has[plugin-type]sort[]] :filter[<currentTiddler>addprefix[$:/config/Plugins/Disabled/]get[text]else[no]!match[yes]] :map[{!!version}addprefix[ - ]addprefix<currentTiddler>] +[addprefix[ ]addprefix<crlf>join[]] }}}/>
|
||||
\end capture-wiki-info
|
||||
|
||||
\procedure template-header()
|
||||
<details><summary>Wiki Information</summary><pre><code>
|
||||
|
||||
\end template-header
|
||||
|
||||
\procedure template-footer()
|
||||
|
||||
</code></pre></details>
|
||||
\end template-footer
|
||||
|
||||
\procedure display-wiki-info-modal()
|
||||
<$let
|
||||
tempWikiInfo="$:/temp/wiki-info"
|
||||
crlf={{{ [charcode[13],[10]] }}}
|
||||
>
|
||||
<$action-sendmessage
|
||||
$message="tm-modal"
|
||||
$param="$:/core/ui/ControlPanel/WikiInformation"
|
||||
isModal="yes"
|
||||
tempWikiInfo=<<tempWikiInfo>>
|
||||
/>
|
||||
<$action-deletetiddler $tiddler=<<tempWikiInfo>>/>
|
||||
<$action-setfield $tiddler=<<tempWikiInfo>> text=<<template-header>>/>
|
||||
<$transclude
|
||||
$variable="capture-wiki-info"
|
||||
tempWikiInfo=<<tempWikiInfo>>
|
||||
/>
|
||||
<$action-setfield $tiddler=<<tempWikiInfo>> text={{{ [<tempWikiInfo>get[text]addsuffix<template-footer>] }}}/>
|
||||
</$let>
|
||||
\end display-wiki-info-modal
|
||||
|
||||
\procedure story-content()
|
||||
<<lingo title:"Hint" mode:"block">>
|
||||
|
||||
<$button>
|
||||
<<display-wiki-info-modal>>
|
||||
Click to generate wiki information report
|
||||
</$button>
|
||||
|
||||
<$link to="$:/core/ui/ControlPanel/WikiInformation">
|
||||
<<lingo title:"Drag/Caption" mode:"inline">>
|
||||
</$link>
|
||||
\end story-content
|
||||
|
||||
\procedure modal-content()
|
||||
<p>
|
||||
<$transclude $variable="copy-to-clipboard" src={{{ [<tempWikiInfo>get[text]] }}}/>
|
||||
</p>
|
||||
<p>
|
||||
<$edit-text tiddler=<<tempWikiInfo>> tag="textarea" disabled="yes" class="tc-max-width"/>
|
||||
</p>
|
||||
\end modal-content
|
||||
|
||||
<$transclude $variable={{{ [<isModal>match[yes]then[modal-content]else[story-content]] }}} $mode="block"/>
|
||||
@@ -1,6 +1,6 @@
|
||||
title: $:/config/OfficialPluginLibrary
|
||||
tags: $:/tags/PluginLibrary
|
||||
url: https://tiddlywiki.com/library/v5.3.7/index.html
|
||||
url: https://tiddlywiki.com/library/v5.3.8/index.html
|
||||
caption: {{$:/language/OfficialPluginLibrary}}
|
||||
|
||||
{{$:/language/OfficialPluginLibrary/Hint}}
|
||||
|
||||
@@ -3,11 +3,9 @@ tags: $:/tags/Macro
|
||||
|
||||
\whitespace trim
|
||||
|
||||
\procedure copy-to-clipboard(src,class:"tc-btn-invisible",style,type:"text/plain",plain)
|
||||
\procedure copy-to-clipboard-actions()
|
||||
<$action-sendmessage $message="tm-copy-to-clipboard" $param=<<src>> type=<<type>> plainText=<<plain>>/>
|
||||
\end copy-to-clipboard-actions
|
||||
<$button actions=<<copy-to-clipboard-actions>>
|
||||
\procedure copy-to-clipboard(src,class:"tc-btn-invisible",style)
|
||||
<$button message="tm-copy-to-clipboard"
|
||||
param=<<src>>
|
||||
class=<<class>>
|
||||
style=<<style>>
|
||||
tooltip={{$:/language/Buttons/CopyToClipboard/Hint}}
|
||||
@@ -17,12 +15,12 @@ tags: $:/tags/Macro
|
||||
<$text text={{$:/language/Buttons/CopyToClipboard/Caption}}/>
|
||||
</span>
|
||||
</$button>
|
||||
\end copy-to-clipboard
|
||||
\end
|
||||
|
||||
\procedure copy-to-clipboard-above-right(src,class:"tc-btn-invisible",style,type:"text/plain")
|
||||
<div style.position="relative">
|
||||
<div style.position="absolute" style.bottom="0" style.right="0">
|
||||
<$transclude $variable="copy-to-clipboard" src=<<src>> class=<<class>> style=<<style>> type=<<type>> plain=<<plain>>/>
|
||||
\procedure copy-to-clipboard-above-right(src,class:"tc-btn-invisible",style)
|
||||
<div style="position: relative;">
|
||||
<div style="position: absolute; bottom: 0; right: 0;">
|
||||
<$macrocall $name="copy-to-clipboard" src=<<src>> class=<<class>> style=<<style>>/>
|
||||
</div>
|
||||
</div>
|
||||
\end
|
||||
|
||||
@@ -102,11 +102,7 @@ tags: $:/tags/Macro
|
||||
<$genesis $type=<<elementTag>>>
|
||||
<$transclude tiddler=<<itemTemplate>>>
|
||||
<$link to={{!!title}}>
|
||||
<$let tv-wikilinks="no">
|
||||
<$transclude field="caption">
|
||||
<$view field="title"/>
|
||||
</$transclude>
|
||||
</$let>
|
||||
<$view field="title"/>
|
||||
</$link>
|
||||
</$transclude>
|
||||
</$genesis>
|
||||
|
||||
4
editions/classicparserdemo/tiddlers/$__coreURL.tid
Normal file
4
editions/classicparserdemo/tiddlers/$__coreURL.tid
Normal file
@@ -0,0 +1,4 @@
|
||||
title: $:/coreURL
|
||||
tags: $:/tags/Global
|
||||
|
||||
\function coreURL() [[../../../tiddlywikicore-$(version)$.js]substitute[]]
|
||||
@@ -11,6 +11,9 @@
|
||||
],
|
||||
"build": {
|
||||
"index": [
|
||||
"--rendertiddler","$:/core/save/all","classicparserdemo.html","text/plain"]
|
||||
"--rendertiddler","$:/core/save/all","classicparserdemo.html","text/plain"],
|
||||
"external": [
|
||||
"--render","$:/core/save/all-external-js","classicparserdemo.html","text/plain"
|
||||
]
|
||||
}
|
||||
}
|
||||
|
||||
4
editions/codemirrordemo/tiddlers/$__coreURL.tid
Normal file
4
editions/codemirrordemo/tiddlers/$__coreURL.tid
Normal file
@@ -0,0 +1,4 @@
|
||||
title: $:/coreURL
|
||||
tags: $:/tags/Global
|
||||
|
||||
\function coreURL() [[../../../tiddlywikicore-$(version)$.js]substitute[]]
|
||||
@@ -11,6 +11,7 @@ The ~CodeMirror plugin can be extended with ~AddOns for more functionality:
|
||||
* Keymaps in the style of Emacs, Sublime Text or Vim
|
||||
* Closing Brackets
|
||||
* Closing Tags
|
||||
* Display trailing whitespace
|
||||
|
||||
NOTE: This demo has the ''Sublime Text'' keymap installed.
|
||||
|
||||
|
||||
@@ -8,11 +8,16 @@
|
||||
"tiddlywiki/codemirror-search-replace",
|
||||
"tiddlywiki/codemirror-fullscreen-editing",
|
||||
"tiddlywiki/codemirror-mode-xml",
|
||||
"tiddlywiki/codemirror-mode-htmlembedded",
|
||||
"tiddlywiki/codemirror-mode-htmlmixed",
|
||||
"tiddlywiki/codemirror-mode-javascript",
|
||||
"tiddlywiki/codemirror-mode-css",
|
||||
"tiddlywiki/codemirror-mode-x-tiddlywiki",
|
||||
"tiddlywiki/codemirror-mode-markdown",
|
||||
"tiddlywiki/codemirror-keymap-sublime-text"
|
||||
"tiddlywiki/codemirror-trailingspace",
|
||||
"tiddlywiki/codemirror-keymap-emacs",
|
||||
"tiddlywiki/codemirror-keymap-sublime-text",
|
||||
"tiddlywiki/codemirror-keymap-vim"
|
||||
],
|
||||
"themes": [
|
||||
"tiddlywiki/vanilla",
|
||||
@@ -22,6 +27,9 @@
|
||||
],
|
||||
"build": {
|
||||
"index": [
|
||||
"--rendertiddler","$:/core/save/all","codemirrordemo.html","text/plain"]
|
||||
"--rendertiddler","$:/core/save/all","codemirrordemo.html","text/plain"],
|
||||
"external": [
|
||||
"--render","$:/core/save/all-external-js","codemirrordemo.html","text/plain"
|
||||
]
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
created: 20190809095728085
|
||||
modified: 20190809123445125
|
||||
modified: 20250707151538845
|
||||
title: Releasing a new version of TiddlyWiki
|
||||
type: text/vnd.tiddlywiki
|
||||
|
||||
@@ -15,32 +15,35 @@ type: text/vnd.tiddlywiki
|
||||
# Adjust the modified time of HelloThere
|
||||
# Make sure ''master'' is fully committed
|
||||
|
||||
!! Update Readmes
|
||||
!! Update Readmes and release note
|
||||
|
||||
# Edit `package.json` to the new version number
|
||||
# Run `./bin/readme-bld.sh` to build the readme files
|
||||
# Commit the new readme files to ''master''
|
||||
# Restore `package.json` to the previous version number
|
||||
# Adjust the link for "GitHub for detailed change history of this release" in the release note
|
||||
# Add the credits for the new release banner to the release note, including a link to the GitHub instance of the image from the commit history
|
||||
|
||||
!! Make New Release
|
||||
|
||||
# Run `./bin/verbump "5.1.3"` (substituting the correct version number) to update the version number, assign it a tag
|
||||
# Run `./bin/verbump "5.1.3"` (substituting the correct version number) to update the version number and assign it a tag
|
||||
# Run `./bin/npm-publish.sh` to publish the release to npm
|
||||
# Verify that the new release of TiddlyWiki is available at https://www.npmjs.org/package/tiddlywiki
|
||||
|
||||
!! Update tiddlywiki.com release
|
||||
|
||||
# Update ''tiddlywiki-com'' from ''master'' and push to ~GitHub
|
||||
# Wait until https://tiddlywiki.com is updated with the new release
|
||||
|
||||
!! Cleaning Up
|
||||
!! Announcements
|
||||
|
||||
# Tweet the release with the text "TiddlyWiki v5.x.x released to https://tiddlywiki.com #newtiddlywikirelease"
|
||||
# Announce the new release on [[TalkTW|https://talk.tiddlywiki.org]]
|
||||
|
||||
!! Preparation for the next release in ''master''
|
||||
|
||||
# Adjust version number in `package.json`
|
||||
# Adjust version number in `bin/build-site.sh`
|
||||
# Adjust version number in [[$:/config/OfficialPluginLibrary]] (both in `editions/tw5.com` and `editions/prerelease/tiddlers/system`) and [[$:/config/LocalPluginLibrary]]
|
||||
# Adjust new release banner
|
||||
# Create temporary new release banner
|
||||
# Create the release note for the new release
|
||||
# Commit changes to ''master'' and push to ~GitHub
|
||||
|
||||
@@ -28,5 +28,4 @@ Note that JavaScript macros work on both the client and the server, and so do no
|
||||
|
||||
!! Macro Behaviour
|
||||
|
||||
Macros are just used to return a chunk of wikitext for further processing. They should not make modifications to tiddlers in the wiki store. The reason is that you cannott control when the macro is called; it may be called repeatedly as part of refresh processing. So it is important that macros do not have any other side effects beyond generating their text.
|
||||
|
||||
Macros are just used to return a chunk of wikitext for further processing. They should not make modifications to tiddlers in the wiki store. The reason is that you cannot control when the macro is called; it may be called repeatedly as part of refresh processing. So it is important that macros do not have any other side effects beyond generating their text.
|
||||
|
||||
@@ -34,13 +34,11 @@ Suppose we want to make a filter operator that returns every other tiddler from
|
||||
We make a new tiddler, set its `type` and `module-type` appropriately, and begin writing the code:
|
||||
|
||||
```
|
||||
(function(){
|
||||
"use strict";
|
||||
|
||||
exports.everyother = function(source, operator, options) {
|
||||
// TODO
|
||||
}
|
||||
})();
|
||||
```
|
||||
|
||||
For the example filter syntax, our function will be called with
|
||||
@@ -54,7 +52,6 @@ As is usually the case, we don't care about `operator.operator` here (since that
|
||||
We could implement the operator by iterating over the input tiddlers and explicitly building a result array of titles:
|
||||
|
||||
```
|
||||
(function(){
|
||||
"use strict";
|
||||
|
||||
exports.everyother = function(source, operator, options) {
|
||||
@@ -66,7 +63,6 @@ exports.everyother = function(source, operator, options) {
|
||||
});
|
||||
return result;
|
||||
}
|
||||
})();
|
||||
```
|
||||
|
||||
That is, we supply a callback to `source` that negates `include` each time through (in order to grab every other result) and pushes the `title` of every other tiddler onto the result.
|
||||
@@ -74,7 +70,6 @@ That is, we supply a callback to `source` that negates `include` each time throu
|
||||
Alternatively, we can return our own iterator, by returning a function that accepts a similar callback and only calls it on every other tiddler:
|
||||
|
||||
```
|
||||
(function(){
|
||||
"use strict";
|
||||
|
||||
exports.everyother = function(source, operator, options) {
|
||||
@@ -86,7 +81,6 @@ exports.everyother = function(source, operator, options) {
|
||||
});
|
||||
};
|
||||
}
|
||||
})();
|
||||
```
|
||||
|
||||
Either way, we could interpret the `!` flag on the filter, if present, to mean that we want the //other// half of the tiddlers, by using it to set the initial value of `include`: `var include = operator.prefix !== "!";`
|
||||
|
||||
@@ -40,10 +40,7 @@ module-type: startup
|
||||
YOUR DISCRCRIPTION COMES HERE!
|
||||
|
||||
\*/
|
||||
(function(){
|
||||
|
||||
/*jslint node: true, browser: true */
|
||||
/*global $tw: false, exports: true */
|
||||
"use strict";
|
||||
|
||||
// Export name and synchronous status
|
||||
@@ -63,6 +60,4 @@ exports.startup = function() {
|
||||
});
|
||||
};
|
||||
|
||||
})();
|
||||
|
||||
```
|
||||
@@ -11,10 +11,7 @@ The wikitext parser subclassing mechanism makes it possible for custom parsers t
|
||||
Here is an example of a subclass of the checkbox widget that adds logging to the event handler:
|
||||
|
||||
```js
|
||||
(function(){
|
||||
|
||||
/*jslint node: true, browser: true */
|
||||
/*global $tw: false */
|
||||
"use strict";
|
||||
|
||||
var WikiParser = require("$:/core/modules/parsers/wikiparser/wikiparser.js")["text/vnd.tiddlywiki"],
|
||||
@@ -38,5 +35,4 @@ var MyCustomWikiParser = function(type,text,options) {
|
||||
|
||||
exports["text/vnd.my-custom-type"] = MyCustomWikiParser;
|
||||
|
||||
})();
|
||||
```
|
||||
|
||||
@@ -26,10 +26,7 @@ module-type: widget-subclass
|
||||
Widget base class
|
||||
|
||||
\*/
|
||||
(function(){
|
||||
|
||||
/*jslint node: true, browser: true */
|
||||
/*global $tw: false */
|
||||
"use strict";
|
||||
|
||||
exports.baseClass = "checkbox"; // Extend the <$checkbox> widget
|
||||
@@ -50,5 +47,4 @@ exports.prototype.handleChangeEvent = function(event) {
|
||||
console.log("Checkbox status:",this.inputDomNode.checked);
|
||||
};
|
||||
|
||||
})();
|
||||
```
|
||||
|
||||
4
editions/dynaviewdemo/tiddlers/$__coreURL.tid
Normal file
4
editions/dynaviewdemo/tiddlers/$__coreURL.tid
Normal file
@@ -0,0 +1,4 @@
|
||||
title: $:/coreURL
|
||||
tags: $:/tags/Global
|
||||
|
||||
\function coreURL() [[../../../tiddlywikicore-$(version)$.js]substitute[]]
|
||||
@@ -9,6 +9,9 @@
|
||||
],
|
||||
"build": {
|
||||
"index": [
|
||||
"--rendertiddler","$:/core/save/all","index.html","text/plain"]
|
||||
"--rendertiddler","$:/core/save/all","index.html","text/plain"],
|
||||
"external": [
|
||||
"--render","$:/core/save/all-external-js","index.html","text/plain"
|
||||
]
|
||||
}
|
||||
}
|
||||
4
editions/geospatialdemo/tiddlers/$__coreURL.tid
Normal file
4
editions/geospatialdemo/tiddlers/$__coreURL.tid
Normal file
@@ -0,0 +1,4 @@
|
||||
title: $:/coreURL
|
||||
tags: $:/tags/Global
|
||||
|
||||
\function coreURL() [[../../../tiddlywikicore-$(version)$.js]substitute[]]
|
||||
@@ -15,6 +15,9 @@
|
||||
"build": {
|
||||
"index": [
|
||||
"--render","$:/core/save/all","index.html","text/plain"],
|
||||
"external": [
|
||||
"--render","$:/core/save/all-external-js","index.html","text/plain"
|
||||
],
|
||||
"favicon": [],
|
||||
"static": [],
|
||||
"empty": [],
|
||||
|
||||
4
editions/highlightdemo/tiddlers/$__coreURL.tid
Normal file
4
editions/highlightdemo/tiddlers/$__coreURL.tid
Normal file
@@ -0,0 +1,4 @@
|
||||
title: $:/coreURL
|
||||
tags: $:/tags/Global
|
||||
|
||||
\function coreURL() [[../../../tiddlywikicore-$(version)$.js]substitute[]]
|
||||
@@ -16,6 +16,9 @@
|
||||
"--render","$:/core/templates/static.template.html","static.html","text/plain",
|
||||
"--render","$:/core/templates/alltiddlers.template.html","alltiddlers.html","text/plain",
|
||||
"--render","[!is[system]]","[encodeuricomponent[]addprefix[static/]addsuffix[.html]]","text/plain","$:/core/templates/static.tiddler.html",
|
||||
"--render","$:/core/templates/static.template.css","static/static.css","text/plain"]
|
||||
"--render","$:/core/templates/static.template.css","static/static.css","text/plain"],
|
||||
"external": [
|
||||
"--render","$:/core/save/all-external-js","highlightdemo.html","text/plain"
|
||||
]
|
||||
}
|
||||
}
|
||||
|
||||
4
editions/innerwikidemo/tiddlers/system/$__coreURL.tid
Normal file
4
editions/innerwikidemo/tiddlers/system/$__coreURL.tid
Normal file
@@ -0,0 +1,4 @@
|
||||
title: $:/coreURL
|
||||
tags: $:/tags/Global
|
||||
|
||||
\function coreURL() [[../../../tiddlywikicore-$(version)$.js]substitute[]]
|
||||
@@ -19,6 +19,9 @@
|
||||
"--screenshot",
|
||||
"[[$:/plugins/tiddlywiki/innerwiki/examples]]",
|
||||
"4"
|
||||
],
|
||||
"external": [
|
||||
"--render","$:/core/save/all-external-js","index.html","text/plain"
|
||||
]
|
||||
}
|
||||
}
|
||||
30
editions/ja-JP/tiddlers/concepts/Filters.tid
Normal file
30
editions/ja-JP/tiddlers/concepts/Filters.tid
Normal file
@@ -0,0 +1,30 @@
|
||||
created: 20130827080000000
|
||||
list: [[Introduction to filter notation]] [[Filter Syntax]]
|
||||
modified: 20250218103107943
|
||||
original-modified: 20230710074511095
|
||||
tags: Reference Concepts TableOfContents
|
||||
title: Filters
|
||||
ja-title: フィルタ
|
||||
type: text/vnd.tiddlywiki
|
||||
|
||||
\define openAdvancedSearch()
|
||||
<$action-setfield $tiddler="$:/state/tab--1498284803" text="$:/core/ui/AdvancedSearch/Filter"/>
|
||||
<$action-setfield $tiddler="$:/temp/advancedsearch/input" text="[tag[Filters]]"/>
|
||||
<$action-setfield $tiddler="$:/temp/advancedsearch" text="[tag[Filters]]"/>
|
||||
\end
|
||||
|
||||
TiddlyWikiは、レコードがTiddlerであるデータベースと考えることができます。データベースは通常、どのレコードが特定のパターンに一致するかを発見する方法を提供します。~TiddlyWikiでは、これはフィルタを使用して行われます
|
||||
|
||||
<<.def フィルタ>>は、その<<.def "アウトプット">>として特定の[[Tiddlerセット|Title Selection]]を選択するための簡潔な表記法です。~TiddlyWikiはフィルタに遭遇するたびにアウトプットを計算します。その後、それらのTiddlerを使って、[[数を数え|CountWidget]]たり、[[リストし|ListWidget]]たりするなど、さらなる処理を行うことができます
|
||||
|
||||
次の例では、フィルタを<<.mlink list-links>>マクロに渡します。<<.olink2 tag tag>> <<.word フィルタ>>であるTiddlerのリストを表示します:
|
||||
|
||||
<<wikitext-example-without-html """<<list-links "[tag[Filters]]">>""" >>
|
||||
|
||||
Wiki内でTiddlerが追加や削除されると、フィルタのアウトプットが変更される可能性があります。~TiddlyWikiは即再計算し、フィルタベースのカウントやリストも自動的に更新します
|
||||
|
||||
''さらに詳細:''
|
||||
|
||||
* <$linkcatcher message="tm-navigate" actions=<<openAdvancedSearch>> >[[高度な検索|$:/AdvancedSearch]]</$linkcatcher> -- フィルタを簡単に試すことができる<<.advancedsearch-tab Filter>>タブがあります
|
||||
|
||||
* [[WikiTextでのフィルタされたトランスクルージョン|Transclusion in WikiText]] -- テキスト内でフィルタ結果を使用したい場合
|
||||
19
editions/ja-JP/tiddlers/concepts/Selection Constructors.tid
Normal file
19
editions/ja-JP/tiddlers/concepts/Selection Constructors.tid
Normal file
@@ -0,0 +1,19 @@
|
||||
created: 20150117204109000
|
||||
modified: 20250222112113766
|
||||
original-modified: 20240708201746542
|
||||
tags: Filters
|
||||
title: Selection Constructors
|
||||
ja-title: セレクションコンストラクタ
|
||||
type: text/vnd.tiddlywiki
|
||||
|
||||
[[フィルタステップ|Filter Step]]のアウトプットはその[[オペレータ|Filter Operators]]によって異なります:
|
||||
|
||||
* ほとんどのオペレータは、インプットからアウトプットを派生します。たとえば、それらの多くはインプットのサブセットをアウトプットし、まさに<<.word フィルタ>>の名にふさわしく、含んでいる[[ラン|Filter Run]]の全体的なアウトプットを絞り込みます。これらのオペレータは<<.def "セレクションモディファイア">>と呼ばれます。
|
||||
|
||||
* いくつかのオペレータはインプットを無視し、代わりに独立したアウトプットを生成します。これらは<<.def "セレクションコンストラクタ">>と呼ばれ、完全に新しい[[セレクション|Title Selection]]を構築します。
|
||||
|
||||
コンストラクタの良い例は<<.olink title>>です。`[title[A]title[B]]`のアウトプットは<<.tid B>>です。しかし、<<.olink field>>オペレータはモディファイアなので、`[title[A]field:title[B]`は何もアウトプットしません。
|
||||
|
||||
次の[[フィルタオペレータ|filter Operator]]は<<tag>>でタグ付けされています:
|
||||
|
||||
<<list-links "[tag<currentTiddler>]" class:"multi-columns">>
|
||||
@@ -0,0 +1,20 @@
|
||||
created: 20230316150731234
|
||||
from-version: 5.1.23
|
||||
modified: 20250303102704427
|
||||
original-modified: 20230711084644541
|
||||
rp-input: 前回のフィルタランからのすべてのタイトル
|
||||
rp-output: アウトプットタイトルは、重複を排除せずに以前のフィルタランの出力に追加されます。
|
||||
rp-purpose: 重複を排除しない和集合
|
||||
tags: [[Named Filter Run Prefix]]
|
||||
title: All Filter Run Prefix
|
||||
ja-title: allフィルタランプレフィックス
|
||||
type: text/vnd.tiddlywiki
|
||||
|
||||
<$railroad text="""
|
||||
\start none
|
||||
\end none
|
||||
( ":all" | - )
|
||||
[["ラン"|"Filter Run"]]
|
||||
"""/>
|
||||
|
||||
このプレフィックスにはオプションの[[ショートカット構文|Shortcut Filter Run Prefix]]であるシンボル`=run`があります
|
||||
@@ -0,0 +1,20 @@
|
||||
created: 20230318142752854
|
||||
from-version: 5.1.23
|
||||
modified: 20250303103244036
|
||||
original-modified: 20230711084712170
|
||||
rp-purpose: フィルタステップの蓄積
|
||||
rp-input: これまでのすべてのランのフィルタアウトプット
|
||||
rp-output: アウトプットのタイトルは、以前のフィルターランのアウトプットを置換
|
||||
tags: [[Named Filter Run Prefix]]
|
||||
title: And Filter Run Prefix
|
||||
ja-title: andフィルタランプレフィックス
|
||||
type: text/vnd.tiddlywiki
|
||||
|
||||
<$railroad text="""
|
||||
\start none
|
||||
\end none
|
||||
( ":and" | - )
|
||||
[["ラン"|"Filter Run"]]
|
||||
"""/>
|
||||
|
||||
このプレフィックスにはオプションの[[ショートカット構文|Shortcut Filter Run Prefix]]であるシンボル+runがあります
|
||||
@@ -0,0 +1,48 @@
|
||||
created: 20211130114857532
|
||||
filter1: [prefix[ca]then[ca]]
|
||||
filter2: [suffix[at]then[at]]
|
||||
filter3: other
|
||||
modified: 20250310110107153
|
||||
original-modified: 20230305125250563
|
||||
tags: [[Cascade Filter Run Prefix]]
|
||||
title: Cascade Filter Run Prefix (Examples)
|
||||
ja-title: cascadeフィルタランプレフィックス (例)
|
||||
type: text/vnd.tiddlywiki
|
||||
|
||||
<<.op ":cascade">>フィルタランプレフィックスは、タグマクロによって生成されるタグピルで使用される各Tiddlerの配色を選択するために、~TiddlyWikiコアによって使用されます。
|
||||
|
||||
`:cascade[all[shadows+tiddlers]tag[$:/tags/TiddlerColourFilter]!is[draft]get[text]]`
|
||||
|
||||
上記の<<.op :cascade>>フィルタラン内のフィルタ式は、<<tag $:/tags/TiddlerColourFilter>>でタグ付けされたTiddlerのテキストフィールドからフィルタのリストを返します。以下を参照:
|
||||
|
||||
<ul>
|
||||
<$list filter="[all[shadows+tiddlers]tag[$:/tags/TiddlerColourFilter]!is[draft]get[text]]">
|
||||
<li><pre><$text text=<<currentTiddler>>/></pre></li>
|
||||
</$list>
|
||||
</ul>
|
||||
|
||||
インプットタイトルごとに、これらのフィルタが順番に適用され、空でないリストを返す最初のフィルタが見つかるまで続きます。この空でないリストの最初の結果がそのインプットタイトルに置き換えられ、そのTiddlerの色として使用されます。
|
||||
|
||||
<<.operator-example 1 """[all[shadows+tiddlers]] :cascade[all[shadows+tiddlers]tag[$:/tags/TiddlerColourFilter]!is[draft]get[text]] +[!is[blank]limit[10]]""">>
|
||||
|
||||
!! 拡張例
|
||||
|
||||
この例では、<<.op :cascade>>フィルタランがどのように機能するかを段階的に説明します。
|
||||
|
||||
アウトプットがフィルタのリストを返すフィルタ式が必要です。通常、このようなフィルタ式は、一連のTiddler内のいくつかのフィールドを照会して(おそらくタグ経由で)フィルタのリストを作成します。この例を自己完結型にするために、このTiddlerの//filter1//、//filter2//、//filter3//フィールドに、3つのフィルタが格納されます。[[テキスト参照|TextReference]]と[[appendオペレータ|append Operator]]のインスタンスを使用して、フィールドをフィルタのリストに結合します。
|
||||
|
||||
フィルター`[{!!filter1}append{!!filter2}append{!!filter3}]`は、次のフィルタリストを生成します:
|
||||
|
||||
<ul>
|
||||
<$list filter="[{!!filter1}append{!!filter2}append{!!filter3}]">
|
||||
<li><pre><$text text=<<currentTiddler>>/></pre></li>
|
||||
</$list>
|
||||
</ul>
|
||||
|
||||
この例では、`cat can bat bug`がインプットタイトルとして使用されます。各インプットタイトルは、上記の各フィルタに対して順番に<<.op :cascade>>で評価されます。<<.op :cascade>>の内部で何が起こっているかを理解しやすくするために、次の表では、[[mapフィルタランプレフィックス|Map Filter Run Prefix]]を使用して、各フィルタの結果を示しています。
|
||||
|
||||
|^<<.operator-example c1.1 "cat can bat bug :map[prefix[ca]then[ca]]">>|^<<.operator-example c1.2 "cat can bat bug :map[suffix[at]then[at]]">>|^<<.operator-example c1.3 "cat can bat bug :map[[other]]">>|
|
||||
|
||||
上記の3つの例で"Try it"をクリックします。<<.op :cascade>>を使用すると、各行の左から右に読み取られた最初の空白以外の値が返されます。最終結果を確認するには、下の"Try it"をクリックします。
|
||||
|
||||
<<.operator-example c1.4 "cat can bat bug :cascade[{!!filter1}append{!!filter2}append{!!filter3}]">>
|
||||
@@ -0,0 +1,27 @@
|
||||
created: 20211130114043280
|
||||
from-version: 5.2.1
|
||||
modified: 20250305112707026
|
||||
original-modified: 20230710073343947
|
||||
rp-input: これまでのすべてのランのフィルタアウトプット
|
||||
rp-output: このフィルタランによって返されるフィルタによって変更されたインプットタイトル
|
||||
rp-purpose: フィルターのリストを順に評価し、最初の結果を適用してインプットタイトルを変更
|
||||
tags: [[Named Filter Run Prefix]]
|
||||
title: Cascade Filter Run Prefix
|
||||
ja-title: cascadeフィルタランプレフィックス
|
||||
type: text/vnd.tiddlywiki
|
||||
|
||||
<$railroad text="""
|
||||
\start none
|
||||
\end none
|
||||
( ":cascade" | - )
|
||||
[["ラン"|"Filter Run"]]
|
||||
"""/>
|
||||
|
||||
この[[フィルタラン|Filter Run]]の[[フィルタ式|Filter Expression]]が評価され、フィルタのリストが返されます。次に、各インプットタイトルが各フィルタに対して順番に評価され、インプットタイトルは空でないリストを返す最初のフィルタの最初の結果に置き換えられます。どのフィルタもインプットタイトルの結果を返さない場合は、空の文字列に置き換えられます。
|
||||
|
||||
フィルタラン内では、次の変数を使用できます:
|
||||
|
||||
* <<.var currentTiddler>> - インプットタイトル
|
||||
* <<.var ..currentTiddler>> - フィルタラン外の変数<<.var currentTiddler>>の値。
|
||||
|
||||
[[cascadeフィルタランプレフィックス (例)|Cascade Filter Run Prefix (Examples)]]
|
||||
@@ -0,0 +1,22 @@
|
||||
created: 20230318142408662
|
||||
from-version: 5.1.23
|
||||
modified: 20250312102737003
|
||||
original-modified: 20230322140756821
|
||||
rp-input: 前のフィルタランからのすべてのタイトル
|
||||
rp-output: これまでのフィルタアウトプットが空のリストの場合、ランのアウトプットタイトルがフィルタアウトプットに[[追加|Dominant Append]]されます<br>これまでのフィルタアウトプットが空のリストでない場合、ランは無視されます
|
||||
rp-purpose: フィルタランは、これまでのすべてのランのフィルタアウトプットが空のリストである場合にのみ評価されます
|
||||
tags: [[Named Filter Run Prefix]]
|
||||
title: Else Filter Run Prefix
|
||||
ja-title: elseフィルタランプレフィックス
|
||||
type: text/vnd.tiddlywiki
|
||||
|
||||
<$railroad text="""
|
||||
\start none
|
||||
\end none
|
||||
( ":else" | - )
|
||||
[[run|"Filter Run"]]
|
||||
"""/>
|
||||
|
||||
このプレフィックスには[[ショートカットフィルタランプレフィックス|Shortcut Filter Run Prefix]] シンボル`~run`があります
|
||||
|
||||
参照: [[thenフィルタランプレフィックス|Then Filter Run Prefix]] | [[thenオペレータ|then Operator]] と [[elseオペレータ|else Operator]]
|
||||
@@ -0,0 +1,20 @@
|
||||
created: 20230318142056008
|
||||
from-version: 5.1.23
|
||||
modified: 20250312104032308
|
||||
original-modified: 20230322140643066
|
||||
rp-input: 前のフィルタランからのすべてのタイトル
|
||||
rp-output: アウトプットタイトルはフィルタのアウトプットから取り除かれます(そのようなTiddlerが存在する場合)
|
||||
rp-purpose: このフィルタランのアウトプットタイトルが前のフィルタランのアウトプットに含まれている場合は取り除かれ、含まれていない場合は無視されます
|
||||
tags: [[Named Filter Run Prefix]]
|
||||
title: Except Filter Run Prefix
|
||||
ja-title: exceptフィルタランプレフィックス
|
||||
type: text/vnd.tiddlywiki
|
||||
|
||||
<$railroad text="""
|
||||
\start none
|
||||
\end none
|
||||
( ":except" | - )
|
||||
[[run|"Filter Run"]]
|
||||
"""/>
|
||||
|
||||
このプレフィックスには[[ショートカットフィルタランプレフィックス|Shortcut Filter Run Prefix]]シンボル`-run`があります
|
||||
23
editions/ja-JP/tiddlers/filters/syntax/Filter Expression.tid
Normal file
23
editions/ja-JP/tiddlers/filters/syntax/Filter Expression.tid
Normal file
@@ -0,0 +1,23 @@
|
||||
created: 20150124182421000
|
||||
modified: 20250219114110986
|
||||
original-modified: 20230710074507466
|
||||
tags: [[Filter Syntax]]
|
||||
title: Filter Expression
|
||||
ja-title: フィルタ式
|
||||
type: text/vnd.tiddlywiki
|
||||
|
||||
<<.def "フィルタ式">>は、[[フィルタのシンタックス|Filter Syntax]]の最も外側のレベルです。これは、[[フィルタランプレフィックス|Filter Run Prefix]]を備えた [[フィルタラン|Filter Run]]で構成されます。複数のフィルタ実行は[[ホワイトスペース|Filter Whitespace]]で区切られます。
|
||||
|
||||
<$railroad text="""
|
||||
{ (
|
||||
- |
|
||||
: [[<"プレフィックス">|"Filter Run Prefix"]]
|
||||
)
|
||||
[["ラン"|"Filter Run"]]
|
||||
+ [["ホワイトスペース"|"Filter Whitespace"]]
|
||||
}
|
||||
"""/>
|
||||
|
||||
<<.tip """上に示したように、図に開始線と終了線が1つある場合は、リンクされた上位レベルにさらに情報があることを意味します。パンくずリストはナビゲーションに使用できます""">>
|
||||
|
||||
<<.tip """下位レベルで使用されているように、図に開始点と終了点がない場合は、読みやすさと単純さを高めるために、上位レベルのシンタックス要素が削除されていることを意味します。パンくずリストはナビゲーションに使用できます""">>
|
||||
@@ -0,0 +1,33 @@
|
||||
created: 20211129022707404
|
||||
modified: 20250314105437481
|
||||
original-modified: 20230305125338118
|
||||
tags: [[Filter Filter Run Prefix]]
|
||||
title: Filter Filter Run Prefix (Examples)
|
||||
ja-title: filterフィルタランプレフィックス(例)
|
||||
type: text/vnd.tiddlywiki
|
||||
|
||||
<<.operator-example 1 "[tag[HelloThere]] :filter[get[text]length[]compare:integer:gteq[1000]]">>
|
||||
<<.operator-example 2 "[tag[HelloThere]] :filter[get[text]length[]compare:integer:lteq[2000]]">>
|
||||
<<.operator-example 3 "[tag[HelloThere]] :filter[get[text]length[]compare:integer:gteq[1000]] :filter[get[text]length[]compare:integer:lteq[2000]]">>
|
||||
<<.operator-example 4 "[tag[Features]] :filter[links[]!is[shadow]is[missing]]">>
|
||||
|
||||
<<.operator-example 5 "A B C D E F :filter[<index>remainder[2]compare:integer:eq[0]]" "インプットリストの要素を1つおきに返す">>
|
||||
|
||||
|
||||
<<.operator-example 6 "[tag[shopping]] :filter[{!!quantity}compare:integer:gt[4]] :map[addprefix[ ]addprefix{!!quantity}]">>
|
||||
<<.operator-example 7 "[tag[shopping]] :filter[{!!quantity}compare:integer:lteq[4]] :map[addprefix[ ]addprefix{!!quantity}]">>
|
||||
|
||||
!! フィルタランプレフィックス`:filter`と`:and`/`+`の比較
|
||||
|
||||
<<.op :filter>>フィルタランプレフィックスの機能は、<<.op :and>>プレフィックス(エイリアス<<.op +>>)と一部重複しています。上記のフィルタ式にはすべて、次の2 つのプロパティがあることに注意してください:
|
||||
|
||||
# フィルタ式の先頭では、インプットタイトル(つまり、`get[text]length[]`、`links[]`、`<index>remainder[2]`、`{!!quantity}`)が変換されます。
|
||||
# フィルタ式の最後では、インプット項目が何らかの条件(つまり`compare`、`is`)を満たす場合にのみアウトプットに送信されます。
|
||||
|
||||
<<.op :filter>>プレフィックスの目的はプロパティ#1によってインプットタイトルが変換されるにもかかわらず、元のインプットタイトルを返すことです。こうすることで、"何らかの条件を満たす"チェックを元のインプット以外のものに対して実行できます。一部のフィルタ式でプロパティ#1が必要ない場合は、代わりに<<.op :and>>プレフィックスを使用できます。
|
||||
|
||||
| <<.op :filter>> | <<.op :and>> |
|
||||
|^<<.operator-example c1.1 "[tag[HelloThere]] :filter[get[text]length[]compare:integer:gteq[1000]]">>|^<<.operator-example c1.2 "[tag[HelloThere]] :and[get[text]length[]compare:integer:gteq[1000]]">>|
|
||||
|^<<.operator-example c2.1 "[tag[Features]] :filter[links[]!is[shadow]is[missing]]">>|^<<.operator-example c2.2 "[tag[Features]] :and[links[]!is[shadow]is[missing]]">>|
|
||||
|!結果は同じ|<|
|
||||
|^<<.operator-example c3.1 "cat can bat bug :filter[suffix[at]minlength[3]]">>|^<<.operator-example c3.2 "cat can bat bug :and[suffix[at]minlength[3]]">>|
|
||||
@@ -0,0 +1,34 @@
|
||||
created: 20211129022455873
|
||||
from-version: 5.1.23
|
||||
modified: 20250314105047035
|
||||
original-modified: 20230710073334078
|
||||
rp-input: これまでのすべてのランのフィルタアウトプット
|
||||
rp-output: フィルタランが空でないインプットタイトル
|
||||
rp-purpose: フィルタランアウトプットが空のリストであるすべてのインプットタイトルを除外
|
||||
tags: [[Named Filter Run Prefix]]
|
||||
title: Filter Filter Run Prefix
|
||||
ja-title: filterフィルタランプレフィックス
|
||||
type: text/vnd.tiddlywiki
|
||||
|
||||
<$railroad text="""
|
||||
\start none
|
||||
\end none
|
||||
( ":filter" | - )
|
||||
[["ラン"|"Filter Run"]]
|
||||
"""/>
|
||||
|
||||
これまでのフィルタアウトプットをインプットとして受け取ります。次のランはインプットの各タイトルに対して評価され、アウトプットが空のリストであるすべてのインプットタイトルが除かれます。
|
||||
|
||||
フィルタラン内では、<<.var currentTiddler>>変数は処理中のTiddlerのタイトルに設定されていることに注意してください。これにより、`:filter[{!!price}multiply{!!cost}compare:integer:gteq[5]]`のようなフィルタランを計算に使用できるようになります。ラン外のcurrentTiddlerの値は、<<.var ..currentTiddler>>変数で使用できます。
|
||||
|
||||
フィルターラン内では、次の変数を使用できます:
|
||||
|
||||
* <<.var currentTiddler>> - インプットタイトル
|
||||
* <<.var ..currentTiddler>> - フィルタラン外の変数`currentTiddler`の値。
|
||||
* <<.var index>> - <<.from-version "5.2.1">> 現在のリスト項目の数値インデックス(リストの最初の項目はゼロです)。
|
||||
* <<.var revIndex>> - <<.from-version "5.2.1">> 現在のリスト項目の逆数値インデックス(リストの最後の項目はゼロです)。
|
||||
* <<.var length>> - <<.from-version "5.2.1">> インプットリストの長さの合計。
|
||||
|
||||
<<.tip "名前付きフィルタランプレフィックス`:filter`を、この演算子は、すべてのインプットタイトルにサブフィルタを適用し、サブフィルタから空の結果を返すタイトルを除外する[[filterオペレータ|filter Operator]]と比べてください。">>
|
||||
|
||||
[[filterフィルタランプレフィックス(例)|Filter Filter Run Prefix (Examples)]]
|
||||
40
editions/ja-JP/tiddlers/filters/syntax/Filter Parameter.tid
Normal file
40
editions/ja-JP/tiddlers/filters/syntax/Filter Parameter.tid
Normal file
@@ -0,0 +1,40 @@
|
||||
created: 20150220152540000
|
||||
modified: 20250223102930110
|
||||
original-modified: 20240708202234843
|
||||
tags: [[Filter Step]]
|
||||
title: Filter Parameter
|
||||
ja-title: フィルタパラメータ
|
||||
type: text/vnd.tiddlywiki
|
||||
|
||||
<$railroad text="""
|
||||
\start none
|
||||
\end none
|
||||
( "[" [: <-"ハード"-> /"]以外"/] "]"
|
||||
|
|
||||
"{" [: <-"間接"-> /"}以外"/] "}"
|
||||
|
|
||||
"<" [: <-"変数"-> /">以外"/] ">"
|
||||
)
|
||||
"""/>
|
||||
|
||||
[[フィルタオペレータ|Filter Operators]]のパラメーターは次のようになります:
|
||||
|
||||
;<<.def ハード>>
|
||||
: `[パラメータ例]`
|
||||
: パラメータは、角括弧内のテキストそのものです。
|
||||
;<<.def ソフト>>
|
||||
: <<.def 間接>>
|
||||
:: `{パラメータ例}`
|
||||
:: パラメータは、中括弧内の名前の[[テキスト参照|TextReference]]によって示されるテキスト、つまり、指定されたTiddlerの[[フィールド|TiddlerFields]]、または指定された[[データTiddler|DataTiddlers]]のプロパティの値です。
|
||||
: <<.def 変数>>
|
||||
:: `<パラメータ例>`
|
||||
:: パラメータは、山括弧内の[[変数|Variables]]の現在値です。マクロパラメータは、v5.2.0まではサポートされて<<.em いません>>。
|
||||
::<<.from-version "5.2.0">> リテラルマクロパラメータがサポートされています。例: `[<now [UTC]YYYY0MM0DD0hh0mm0ssXXX>]`。
|
||||
|
||||
<<.note """すべての[[フィルタオペレータ|filter Operator]]の後にはパラメータ式が続く必要があります。[[パラメータの無いオペレータ|Operators without parameters]]の場合、その式は空になります(`[<currentTiddler>links[]]`のフィルタオペレータ<<.olink links>>と同様)。""">>
|
||||
|
||||
---
|
||||
|
||||
<<.from-version "5.1.23">> [[フィルタステップ|Filter Step]]では、`,`文字で区切られた複数のパラメータがサポートされます。
|
||||
|
||||
例えば: `[param1],[param2]`や`<param1>,{param2}`
|
||||
21
editions/ja-JP/tiddlers/filters/syntax/Filter Run Prefix.tid
Normal file
21
editions/ja-JP/tiddlers/filters/syntax/Filter Run Prefix.tid
Normal file
@@ -0,0 +1,21 @@
|
||||
created: 20230305130600148
|
||||
modified: 20250223105142349
|
||||
original-modified: 20230711090913687
|
||||
tags: [[Filter Expression]]
|
||||
title: Filter Run Prefix
|
||||
ja-title: フィルタランプレフィックス
|
||||
type: text/vnd.tiddlywiki
|
||||
|
||||
There are 2 types of filter run prefixes that are interchangeable; [[named prefixes|Named Filter Run Prefix]] and [[shortcut prefixes|Shortcut Filter Run Prefix]].
|
||||
交換可能なフィルタランプレフィックスには、[[名前付きプレフィックス|Named Filter Run Prefix]]と[[ショートカットプレフィックス|Shortcut Filter Run Prefix]]の2種類があります。
|
||||
|
||||
<$railroad text="""
|
||||
\start none
|
||||
\end none
|
||||
(
|
||||
- |
|
||||
: [[<":名前付きプレフィクス"> /"v5.1.23以降"/ |"Named Filter Run Prefix"]] |
|
||||
[[<"ショートカットプレフィックス"> /"v5.1.23以前"/ |"Shortcut Filter Run Prefix"]]
|
||||
)
|
||||
[[<"ラン">|"Filter Run"]]
|
||||
"""/>
|
||||
29
editions/ja-JP/tiddlers/filters/syntax/Filter Run.tid
Normal file
29
editions/ja-JP/tiddlers/filters/syntax/Filter Run.tid
Normal file
@@ -0,0 +1,29 @@
|
||||
created: 20150124182117000
|
||||
modified: 20250220111652831
|
||||
original-modified: 20230710074357002
|
||||
tags: [[Filter Expression]]
|
||||
title: Filter Run
|
||||
ja-title: フィルタラン
|
||||
type: text/vnd.tiddlywiki
|
||||
|
||||
<$railroad text="""
|
||||
\start none
|
||||
\end none
|
||||
( "[" { [[<"フィルタステップ">|"Filter Step"]] } "]"
|
||||
|
|
||||
[:{/"[ ]または空白以外の文字"/}]
|
||||
|
|
||||
'"' [:{/'"以外の文字'/}] '"'
|
||||
|
|
||||
"'" [:{/"'以外の文字"/}] "'"
|
||||
)
|
||||
"""/>
|
||||
|
||||
<<.def ラン>>は[[ステップ|Filter Step]]で構成され、より大きな[[フィルタ式|Filter Expression]]に貢献する[[選択|Title Selection]]を出力します。
|
||||
|
||||
ステップは左から右に処理されます。最初のステップへのインプットはランへのインプットと同じです。後続の各ステップのインプットは、前のステップのアウトプットです。
|
||||
|
||||
|
||||
図の下の3つのオプションは`HelloThere`、`"HelloThere"`、`'HelloThere'`と`"Filter Operators"`の構文と一致します。これらは`[title[...]]`の短縮形です。
|
||||
|
||||
引用符で囲まれたオプションは、`"An [[[[Unusual]]]] Tiddler"`のように角括弧を含むタイトルをサポートするために存在します。
|
||||
37
editions/ja-JP/tiddlers/filters/syntax/Filter Step.tid
Normal file
37
editions/ja-JP/tiddlers/filters/syntax/Filter Step.tid
Normal file
@@ -0,0 +1,37 @@
|
||||
created: 20150124182127000
|
||||
modified: 20250222110925130
|
||||
original-modified: 20230710074414361
|
||||
tags: [[Filter Run]]
|
||||
title: Filter Step
|
||||
ja-title: フィルタステップ
|
||||
type: text/vnd.tiddlywiki
|
||||
|
||||
<<.def "フィルタステップ">>は、<<.def "フィルタラン">>内の単一の操作を表します。
|
||||
|
||||
プログラミング用語では、ステップのインプットがパラメータとして渡される関数呼び出しに似ています。ステップのアウトプットは、[[フィルタラン|Filter Run]]、つまりそれを含む[[フィルタ式|Filter Expression]]全体に貢献する[[タイトルセレクション|Title Selection]]です。
|
||||
|
||||
<$railroad text="""
|
||||
\start none
|
||||
\end none
|
||||
[:"!"]
|
||||
( / "省略の場合のデフォルト: title" /|:
|
||||
( - | :[[<"オペレータ">|"Filter Operators"]] )
|
||||
{ [:":" [[<"サフィックス">|"Filter Operators"]] ] } )
|
||||
{ [[<"パラメータ">|"Filter Parameter"]] + "," }
|
||||
"""/>
|
||||
|
||||
ステップの<<.def オペレータ>>は、[[フィルタオペレータ|Filter Operators]]として知られている定義済みキーワードのリストです。
|
||||
|
||||
多くのステップでは、ステップの実行内容をさらに定義する明示的な<<.def パラメータ>>が必要です。
|
||||
|
||||
<<.def サフィックス>>は、特定のオペレータの意味を拡張する追加テキスト(多くの場合、[[フィールド|TiddlerFields]]名)です。
|
||||
|
||||
ステップの<<.def オペレータ>>と<<.def サフィックス>>がすべて省略されている場合は、デフォルトで[[title|title Operator]]オペレータが使用されます。
|
||||
|
||||
<<.from-version "5.1.23">> いくつかのステップでは、`,`文字で区切られた複数の<<.def パラメータ>>を受け入れます。
|
||||
|
||||
認識されないオペレータは、<<.olink field>>オペレータのサフィックスであるかのように扱われます。
|
||||
|
||||
フィルタオペレータはプラグインによって拡張できます。
|
||||
|
||||
{{Selection Constructors}}
|
||||
26
editions/ja-JP/tiddlers/filters/syntax/Filter Syntax.tid
Normal file
26
editions/ja-JP/tiddlers/filters/syntax/Filter Syntax.tid
Normal file
@@ -0,0 +1,26 @@
|
||||
created: 20140210141217955
|
||||
list: [[Filter Expression]] [[Filter Run]] [[Filter Step]] [[Filter Parameter]] [[Filter Whitespace]]
|
||||
modified: 20250219112710650
|
||||
original-modified: 20230710074340943
|
||||
tags: Filters
|
||||
title: Filter Syntax
|
||||
ja-title: フィルタのシンタックス
|
||||
type: text/vnd.tiddlywiki
|
||||
|
||||
<<.preamble """[[フィルタ|Filters]]は、正式な構文の説明が役立つと思われる人向けに、[[Railroadダイアグラム|Railroad Diagrams]]を使用して示されている文法に従います。ただし、このグループのTiddlerを理解していなくても、[[フィルタの書き方を学ぶ|Introduction to filter notation]]ことができます""">>
|
||||
|
||||
<<.def フィルタ>>は、<<.def インプット>>を<<.def アウトプット>>に変換するためのパイプラインです。インプットとアウトプットはどちらも、Tiddlerとフィールドの[[タイトルの順序付き集合|Title Selection]]です
|
||||
|
||||
フィルタは、''ラン''と呼ばれる小さな構成要素から構成される''式''であり、''ラン''は''ステップ''を使用して構築されます。それぞれがインプットをアウトプットに変換します
|
||||
|
||||
フィルタは空のアウトプットから始まります。その実行は左から右に処理され、アウトプットが徐々に修正されます。
|
||||
|
||||
"フィルタのシンタックス"の記述は次で始まります:
|
||||
|
||||
<$railroad text="""
|
||||
\start double
|
||||
\end double
|
||||
[[<"フィルタ式">|"Filter Expression"]]
|
||||
"""/>
|
||||
|
||||
<<.tip "上記のようなRailroadボックスを使用して移動できます。">>
|
||||
15
editions/ja-JP/tiddlers/filters/syntax/Filter Whitespace.tid
Normal file
15
editions/ja-JP/tiddlers/filters/syntax/Filter Whitespace.tid
Normal file
@@ -0,0 +1,15 @@
|
||||
created: 20150124182304000
|
||||
modified: 20250510104756224
|
||||
original-modified: 20230710074447240
|
||||
tags: [[Filter Expression]]
|
||||
title: Filter Whitespace
|
||||
ja-title: フィルタホワイトスペース
|
||||
type: text/vnd.tiddlywiki
|
||||
|
||||
<$railroad text="""
|
||||
\start none
|
||||
\end none
|
||||
{( "スペース" | "タブ" | "ラインフィード" | "リターン" | "垂直タブ" | "改ページ" )}
|
||||
"""/>
|
||||
|
||||
[[フィルタ式|Filter Expression]]の各ランの間にはホワイトスペース文字が出現します。
|
||||
@@ -0,0 +1,47 @@
|
||||
created: 20230316151518640
|
||||
modified: 20250225113139787
|
||||
original-modified: 20230327130626715
|
||||
tags: [[Filter Run Prefix]]
|
||||
title: Interchangeable Filter Run Prefixes
|
||||
ja-title: 交換可能なフィルターランプレフィックス
|
||||
type: text/vnd.tiddlywiki
|
||||
|
||||
!! 交換可能なフィルターランプレフィックス
|
||||
|
||||
技術的/論理的な用語で言えば:
|
||||
|
||||
|!ラン |!同等の名前付きプレフィックス |!解釈 |!アウトプット |
|
||||
|`[run]` |`:or[run]` |重複を排除した和集合 |... OR ラン |
|
||||
|`+[run]` |`:and[run]` |フィルタステップの蓄積 |... AND ラン |
|
||||
|`-[run]` |`:except[run]` |差集合 |... AND NOT ラン |
|
||||
|`~[run]` |`:else[run]` |それ以外 |... ELSE ラン |
|
||||
|`=[run]` |`:all[run]` |重複を排除しない和集合 |... OR ラン |
|
||||
|
||||
ランのインプットは通常、Wiki内の[[隠し|ShadowTiddlers]]Tiddler以外のすべてのTiddlerタイトルのリストです(順不同)。<br>ただし、`+`プレフィックスによってこれを変更できます:
|
||||
|
||||
|プレフィックス|インプット|h
|
||||
|`-`, `~`, `=`, `:intersection` あるいは、無し| 最初の[[フィルタオペレータ|Filter Operators]]によって特に指定されない限り、<$link to="all Operator">`[all[]]`</$link> Tiddlerのタイトル|
|
||||
|`+`, `:filter`, `:map`, `:reduce`,`:sort` |これまでのすべてのランのフィルタアウトプット|
|
||||
|
||||
インプットが変化するため、`-`と`+`の両方のプレフィックスが互いに逆の動作をしないことに注意してください。
|
||||
|
||||
たとえば、次の2つの例では、`$:/baz`は実際に存在する場合にのみ削除されます:
|
||||
|
||||
* <$link to="is Operator"> `foo bar $:/baz -[is[system]]`</$link>
|
||||
* <$link to="prefix Operator">`foo bar $:/baz -[prefix[$:/]]`</$link>
|
||||
|
||||
理由を理解するには、両方の最後のランのインプットとその`-`プレフィックスを考慮してください。
|
||||
|
||||
存在するかどうかに関係なく、`$:/baz`を削除するには、[[否定のフィルタオペレータ|Filter Operators]]とともに`+`プレフィックスを使用するだけです:
|
||||
|
||||
* <$link to="is Operator">`foo bar $:/baz +[!is[system]]`</$link>
|
||||
* <$link to="prefix Operator">`foo bar $:/baz +[!prefix[$:/]]`</$link>
|
||||
|
||||
!! +と和集合の違い
|
||||
|
||||
`+`と`:intersection`の違いについては[[和集合フィルタランプレフィックス(例)|Intersection Filter Run Prefix (Examples)]]を参照してください。
|
||||
|
||||
!! 開発者向け
|
||||
|
||||
新しいフィルタランプレフィックスを作成するには、`filterrunprefix`の[[モジュールタイプ|ModuleType]]で
|
||||
[[Javascriptモジュール|Modules]]を作成します。
|
||||
@@ -0,0 +1,38 @@
|
||||
created: 20211128212902292
|
||||
modified: 20250319104544220
|
||||
original-modified: 20230305125354209
|
||||
tags: [[Intersection Filter Run Prefix]]
|
||||
title: Intersection Filter Run Prefix (Examples)
|
||||
ja-title: intersectionフィルタランプレフィックス(例)
|
||||
type: text/vnd.tiddlywiki
|
||||
|
||||
<<.operator-example 1 "A B C D :intersection[enlist[C D E F]]">>
|
||||
|
||||
<<.operator-example 2 "A B C D :intersection[enlist[A B C D]]">>
|
||||
|
||||
<<.operator-example 3 "A B C D :intersection[enlist[E F G H]]">>
|
||||
|
||||
<<.operator-example 4 ":intersection[enlist[A B C D]]" "最初のフィルタランでintersectionを使用することはあまり役に立ちません。結果は常に空になります。">>
|
||||
|
||||
!! `+`と`:intersection`の違い
|
||||
|
||||
プレフィックス`+`は、形式論理における"AND"として考えてください。たとえば、"条件A ''かつ'' 条件Bを満たすすべてのタイトルを取得する"などです。ただし、すべてのケースに適しているわけではありません。条件Bがインプットを置き換えるフィルタオペレータを使用する場合、プレフィックス`+`の使用は難しくなります。たとえば、2つのTiddlerに共通するタグを見つけたい場合は、次のようなフィルタ式を記述します:
|
||||
|
||||
* <$link to="tags Operator">`[[field Operator]tags[]] +[[compare Operator]tags[]]`</$link>
|
||||
|
||||
しかし、これは機能しません。2回目のフィルタランでインプットが破棄され、単一のtitle`[[compare Operator]]`で構成されるインプットに置き換えられるからです。そのため、このフィルタ式から得られる結果は、`compare Operator`Tiddlerのタグだけになります。
|
||||
|
||||
このような場合、必要なのは`:intersection`プレフィックスです。これまでのフィルタアウトプットを取得して、//保留し//、すべてのTiddlerタイトルをインプットとして次のフィルタランを開始します。その後、最新のフィルタランが完了すると、最新のアウトプットを取得して保留していたアウトプットと比較し、保留していたアウトプットと最新のアウトプットの両方に表示されたタイトルのみを含む新しいアウトプットを生成します。したがって、`field Operator`と`compare Operator`に共通するタグのみを取得するには、次のようなフィルタ式を記述します。
|
||||
|
||||
* <$link to="tags Operator">`[[field Operator]tags[]] :intersection[[compare Operator]tags[]]`</$link>
|
||||
|
||||
次の例では、[[field Operator]]と[[compare Operator]]を使用して、Tiddlerとそれぞれのタグを比較します。
|
||||
|
||||
<<.operator-example 5 "[[field Operator]tags[]]">>
|
||||
<<.operator-example 6 "[[compare Operator]tags[]]">>
|
||||
|
||||
<<.operator-example 7 "[[field Operator]tags[]] +[[compare Operator]tags[]]" """"field Operator"Tiddlerのタグは失われるため、"compare Operator"Tiddlerのタグのみが返されます""">>
|
||||
|
||||
<<.operator-example 8 "[[field Operator]tags[]] :intersection[[compare Operator]tags[]]" """両方のTiddlerに共通するタグを返します""">>
|
||||
|
||||
|
||||
@@ -0,0 +1,22 @@
|
||||
created: 20211128212902292
|
||||
from-version: 5.1.23
|
||||
modified: 20250317105829721
|
||||
original-modified: 20230710073322863
|
||||
rp-input: 前のフィルタランからのすべてのタイトル
|
||||
rp-output: このフィルタランの結果と前のランのアウトプットの両方に存在するタイトル
|
||||
rp-purpose: 前のランからのタイトルとこのフィルタのタイトルの共通部分を見つける
|
||||
tags: [[Named Filter Run Prefix]]
|
||||
title: Intersection Filter Run Prefix
|
||||
ja-title: intersectionフィルタランプレフィックス
|
||||
type: text/vnd.tiddlywiki
|
||||
|
||||
<$railroad text="""
|
||||
\start none
|
||||
\end none
|
||||
( ":intersection" | - )
|
||||
[["ラン"|"Filter Run"]]
|
||||
"""/>
|
||||
|
||||
前のランからのフィルタアウトプットは保留されます。`:intersection`フィルタランは、すべてのTiddlerタイトルをインプットとして開始されます。この最後のフィルタランが完了すると、最後のアウトプットが保留アウトプットと比較されます。保留アウトプットと最新アウトプットの両方に表われるタイトルのみを含む新しいアウトプットが生成されます。
|
||||
|
||||
[[intersectionフィルタランプレフィックス(例)|Intersection Filter Run Prefix (Examples)]]
|
||||
@@ -0,0 +1,60 @@
|
||||
created: 20210618134753828
|
||||
modified: 20250416110748088
|
||||
original-modified: 20230305125405422
|
||||
tags: [[Map Filter Run Prefix]]
|
||||
title: Map Filter Run Prefix (Examples)
|
||||
ja-title: mapフィルタランプレフィックス(例)
|
||||
type: text/vnd.tiddlywiki
|
||||
|
||||
インプットタイトルが存在する場合はキャプションフィールドで置き換え、存在しない場合はインプットタイトルを保持します:
|
||||
|
||||
<<.operator-example 1 "[tag[Widgets]] :map[get[caption]else{!!title}]">>
|
||||
|
||||
<<.tip "上記の例は`[tag[Widgets]] :map[{!!caption}!is[blank]else{!!title}]`と同等です。フィールドを`{!!caption}`のようにテキスト参照として参照する場合、存在しない、または空のキャプションフィールドに対しては空文字列が返されることに注意してください。したがって、`else`オペレータの前に`is[blank]`のチェックが必要です。">>
|
||||
|
||||
買い物リストの各タイトルについて、各アイテムの購入にかかる合計コストを計算します:
|
||||
|
||||
<<.operator-example 2 "[tag[shopping]] :map[get[quantity]else[0]multiply{!!price}]">>
|
||||
|
||||
`Widget:`でタグ付けされたすべてのTiddlerのタグを取得します:
|
||||
|
||||
<<.operator-example 3 "[tag[Widgets]] :map:flat[tagging[]] :and[!is[blank]unique[]]">>
|
||||
<<.tip "`flat`サフィックスがない場合、`:map`フィルタランは各インプットタイトルの最初の結果のみを返します">>
|
||||
|
||||
!! `:map`の`flat`サフィックスの有無の比較
|
||||
|
||||
`:map`フィルタランは、少なくともインプットと同じ数のアウトプットを返します。デフォルトでは、1つのインプット項目に対して1つのアウトプット項目が生成されます。フィルタランによってインプット項目が空の結果に変換された場合、その項目のアウトプットは空の文字列になります。フィルタランによってインプット項目が複数の項目に変換された場合、アウトプットには最初の項目のみが表われます。この動作は、`flat`サフィックスを指定することで上書きできます。`flat`サフィックスを指定すると、すべての項目がアウトプットに表れます。
|
||||
|
||||
| `:map` | `:map:flat` |
|
||||
|^<<.operator-example m0.1 "[range[4]] :map[match[this matches nothing]]">>|^<<.operator-example m0.2 "[range[4]] :map:flat[match[this matches nothing]]">>|
|
||||
|^<<.operator-example m1.1 "[range[4]] :map[range<currentTiddler>]">>|^<<.operator-example m1.2 "[range[4]] :map:flat[range<currentTiddler>]">>|
|
||||
|^<<.operator-example m2.1 "[range[4]] :map[range<currentTiddler>]">>|^<<.operator-example m2.2 "[range[4]] :map:flat[range<currentTiddler>first[]]">>|
|
||||
|^<<.operator-example m3.1 "[range[4]] :map[range<currentTiddler>sum[]]">>|^<<.operator-example m3.2 "[range[4]] :map:flat[range<currentTiddler>sum[]]">>|
|
||||
|^<<.operator-example m4.1 "[[1,2,3]] [[4,5]] :map[split[,]]">>|^<<.operator-example m4.2 "[[1,2,3]] [[4,5]] :map:flat[split[,]]">>|
|
||||
|^<<.operator-example m5.1 "[[1,2,3]] [[4,5]] :map[split[,]]">>|^<<.operator-example m5.2 "[[1,2,3]] [[4,5]] :map:flat[split[,]first[]]">>|
|
||||
|
||||
|
||||
!! `:map`と`:and`/`+`フィルタランプレフィックスの比較
|
||||
|
||||
`:map`フィルタランプレフィックスの機能は、`:and` プレフィックス(別名`+`)と一部重複しています。これらは同じ結果を返す場合もありますが、少なくとも以下の場合には結果が異なります:
|
||||
|
||||
# `:and`フィルタランによってアイテム数が変更される(増加や減少)場合があります。`:map`フィルタランによってアイテム数が変更されることはありません。
|
||||
# `:and`フィルタランのアイテム数は、[[重複排除|Dominant Append]]により減少します。`:map`ランは[[重複排除|Dominant Append]]は行われません。
|
||||
# "currentTiddler"変数への明示的な参照は異なる動作をします
|
||||
# TextReferenceを使用した"currentTiddler"への暗黙的な参照は異なる動作をします。
|
||||
|
||||
| `:map` | `:and` |
|
||||
|!結果は同じ|<|
|
||||
|^<<.operator-example 1.1 "[range[5]] :map[add[1]]">>|^<<.operator-example 1.2 "[range[5]] :and[add[1]]">>|
|
||||
|^<<.operator-example 2.1 "[range[5]] :map[addsuffix[ hello]]">>|^<<.operator-example 2.2 "[range[5]] :and[addsuffix[ hello]]">>|
|
||||
|^<<.operator-example 3.1 "[tag[shopping]] :map[get[quantity]]">>|^<<.operator-example 3.2 "[tag[shopping]] :and[get[quantity]]">>|
|
||||
|!項目数が減少|<|
|
||||
|^<<.operator-example 4.1 "[range[5]] :map[sum[]]">>|^<<.operator-example 4.2 "[range[5]] :and[sum[]]">>|
|
||||
|^<<.operator-example 5.1 "[range[5]] :map[join[,]]">>|^<<.operator-example 5.2 "[range[5]] :and[join[,]]">>|
|
||||
|!項目数が増加|<|
|
||||
|^<<.operator-example 6.1 "[[1,2,3]] [[4,5]] :map[split[,]]">>|^<<.operator-example 6.2 "[[1,2,3]] [[4,5]] :and[split[,]]">>|
|
||||
|!重複排除|<|
|
||||
|^<<.operator-example 7.1 "[range[5]] :map[[hello]]">>|^<<.operator-example 7.2 "[range[5]] :and[[hello]]">>|
|
||||
|!currentTiddler|<|
|
||||
|^<<.operator-example 8.1 "[tag[shopping]] :map[<currentTiddler>]">>|^<<.operator-example 8.2 "[tag[shopping]] :and[<currentTiddler>]">>|
|
||||
|^<<.operator-example 9.1 "[tag[shopping]] :map[{!!quantity}]">>|^<<.operator-example 9.2 "[tag[shopping]] :and[{!!quantity}]">>|
|
||||
@@ -0,0 +1,35 @@
|
||||
created: 20210618133745003
|
||||
from-version: 5.2.0
|
||||
modified: 20250319105451115
|
||||
original-modified: 20240312202834547
|
||||
rp-input: 前回までのすべてのランのフィルタアウトプット
|
||||
rp-output: このフィルタランの結果によって変更されたインプットタイトル
|
||||
rp-purpose: 各項目に対してこのフィルタを実行した結果に基づいてインプットタイトルを変更
|
||||
rp-suffix: <<.from-version "5.2.3">> フィルタランからすべての結果を返す場合は<<.value flat>>、最初の結果のみを返す場合は省略(デフォルト)
|
||||
tags: [[Named Filter Run Prefix]]
|
||||
title: Map Filter Run Prefix
|
||||
ja-title: mapフィルタランプレフィックス
|
||||
type: text/vnd.tiddlywiki
|
||||
|
||||
<$railroad text="""
|
||||
\start none
|
||||
\end none
|
||||
( ":map" (: ":flat" | - ) | - )
|
||||
[["ラン"|"Filter Run"]]
|
||||
"""/>
|
||||
|
||||
以前のランからの各インプットタイトルは、順番にこのランに渡されます。フィルタランはインプットタイトルを変換し、このランのアウトプットはインプットタイトルを置き換えます。たとえば、フィルタラン`[get[caption]else{!!title}]`は、タイトルが保持されるフィールドが存在しない場合以外、各インプットタイトルをそのキャプションフィールドに置き換えます。
|
||||
|
||||
フィルタラン内では、<<.var currentTiddler>>変数は処理中のTiddlerのタイトルに設定されていることに注意してください。これにより、`:map[{!!price}multiply{!!cost}]`のようなフィルタランが計算に使用できるようになります。
|
||||
|
||||
フィルタラン内では、次の変数を使用できます:
|
||||
|
||||
* <<.var currentTiddler>> - インプットタイトル
|
||||
* <<.var ..currentTiddler>> - フィルタランの外での変数`currentTiddler`の値。
|
||||
* <<.var index>> - <<.from-version "5.2.1">> 現在のリスト項目の数値インデックス(リストの最初の項目はゼロ)。
|
||||
* <<.var revIndex>> - <<.from-version "5.2.1">> 現在のリスト項目の逆数値インデックス(リストの最後の項目はゼロ)。
|
||||
* <<.var length>> - <<.from-version "5.2.1">> インプットリストの合計の長さ。
|
||||
|
||||
`:map`プレフィックス付きで使用されるフィルタランは、渡された項目と少なくとも同じ数の項目を返す必要があります。フィルタランがアウトプットを返さないインプットタイトルは、空の文字列に置き換えられます。特に、[[getオペレータ|get Operator]]を使用してフィールドの値を取得する場合は、[[elseオペレータ|else Operator]] を使用してフィールド値が欠落しないようにすると役立ちます。たとえば、`[get[myfield]else[default-value]...`のようにします。
|
||||
|
||||
[[mapフィルタランプレフィックス(例)|Map Filter Run Prefix (Examples)]]
|
||||
@@ -0,0 +1,38 @@
|
||||
created: 20201214044413473
|
||||
modified: 20250227102948619
|
||||
original-modified: 20230711090833212
|
||||
tags: [[Filter Run Prefix]]
|
||||
title: Named Filter Run Prefix
|
||||
ja-title: 名前付きフィルタランプレフィックス
|
||||
type: text/vnd.tiddlywiki
|
||||
|
||||
<<.from-version "5.1.23">>で、名前付きフィルタランプレフィックスが実装されました。図に示すように、`:cascade`、`:map`、`:sort`が後から追加されました。
|
||||
|
||||
名前付きフィルタランプレフィックスは、[[ショートカットランプレフィックス|Shortcut Filter Run Prefix]]の代わりに、[[フィルタ式|Filter Expression]]の[[ラン|Filter Run]]の前に置くことができます。
|
||||
|
||||
<$railroad text="""
|
||||
\start none
|
||||
\end none
|
||||
(
|
||||
[[<":all"> |"All Filter Run Prefix"]] |
|
||||
[[<":and"> |"And Filter Run Prefix"]] |
|
||||
[[<":cascade"> /"v5.2.1"/ |"Cascade Filter Run Prefix"]] |
|
||||
[[<":else"> |"Else Filter Run Prefix"]] |
|
||||
[[<":except"> |"Except Filter Run Prefix"]] |
|
||||
[[<":filter"> |"Filter Filter Run Prefix"]] |
|
||||
[[<":intersection"> |"Intersection Filter Run Prefix"]] |
|
||||
[[<":map"> /"v5.2.0"/ |"Map Filter Run Prefix"]] |
|
||||
[[<":or"> |"Or Filter Run Prefix"]] |
|
||||
[[<":reduce"> |"Reduce Filter Run Prefix"]] |
|
||||
[[<":sort"> /"v5.2.0"/ |"Sort Filter Run Prefix"]] |
|
||||
[[<":then"> /"v5.3.0"/ |"Then Filter Run Prefix"]]) [[run|"Filter Run"]]
|
||||
"""/>
|
||||
|
||||
|
||||
<<.tip "名前付きフィルタランプレフィックス`:filter`を、すべてのインプットタイトルにサブフィルタを適用し、サブフィルタから空の結果を返すタイトルを除外する[[filterオペレータ|filter Operator]]と比較します">>
|
||||
|
||||
<<.tip "名前付きフィルタランプレフィックス`:reduce`を、サブフィルタを繰り返し適用してアイテムのリストを単一のアイテムに平坦化するために使用される[[reduceオペレータ|reduce Operator]]と比較します">>
|
||||
|
||||
<<.tip """フィルタランプレフィックス`:reduce`、`:sort`、`:map`、`:filter`内では、変数<<.var currentTiddler>>は処理中のTiddlerのタイトルに設定されます。<br>サブフィルタ外のcurrentTiddlerの値は、変数<<.var "..currentTiddler">>で使用できます <<.from-version "5.2.0">>""" >>
|
||||
|
||||
参照: [[交換可能なフィルターランプレフィックス|Interchangeable Filter Run Prefixes]]
|
||||
@@ -0,0 +1,20 @@
|
||||
created: 20230318135743766
|
||||
from-version: 5.1.23
|
||||
modified: 20250417105150020
|
||||
original-modified: 20230322140708372
|
||||
rp-input: 前回のフィルタランからのすべてのタイトル
|
||||
rp-output: アウトプットタイトルは主に、前回のフィルタランのアウトプットに[[重複排除して追加|Dominant Append]]されます。
|
||||
rp-purpose: Tiddlerセットの重複排除した結合
|
||||
tags: [[Named Filter Run Prefix]]
|
||||
title: Or Filter Run Prefix
|
||||
ja-title: orフィルタランプレフィックス
|
||||
type: text/vnd.tiddlywiki
|
||||
|
||||
<$railroad text="""
|
||||
\start none
|
||||
\end none
|
||||
( ":or" | - )
|
||||
[["ラン"|"Filter Run Prefix"]]
|
||||
"""/>
|
||||
|
||||
:or プレフィックスはプレフィックスを全く使用しないのと同じです。[[フィルタランプレフィックスのショートカット|Shortcut Filter Run Prefix]]で`run`を参照してください
|
||||
@@ -0,0 +1,29 @@
|
||||
created: 20211124151912931
|
||||
modified: 20250419111355942
|
||||
original-modified: 20230305125430544
|
||||
tags: [[Reduce Filter Run Prefix]]
|
||||
title: Reduce Filter Run Prefix (Examples)
|
||||
ja-title: reduceフィルタランプレフィックス(例)
|
||||
type: text/vnd.tiddlywiki
|
||||
|
||||
\define multiply-input() [multiply<accumulator>]
|
||||
|
||||
次の例では、これらのデータTiddlerを使用します:
|
||||
|
||||
<ul>
|
||||
<$list filter="[tag[shopping]!has[draft.of]]">
|
||||
<li>
|
||||
''<$link><$text text=<<currentTiddler>>/></$link>'' quantity: <$text text={{!!quantity}}/>, price: <$text text={{!!price}}/>
|
||||
</li>
|
||||
</$list>
|
||||
</ul>
|
||||
|
||||
<<.operator-example 1 "[tag[shopping]] :reduce[get[quantity]add<accumulator>]">>
|
||||
<<.operator-example 2 "[tag[shopping]] :reduce[get[price]multiply{!!quantity}add<accumulator>]">>
|
||||
<<.operator-example 3 "[tag[shopping]] :reduce[<index>compare:number:gt[0]then<accumulator>addsuffix[, ]addsuffix<currentTiddler>else<currentTiddler>]" "最初の項目に対して他の項目とは異なる動作をさせるために`<index>`を使用します。これはあくまでもデモンストレーションです。このタスクを実行するには、[[joinオペレータ|join Operator]]を使うのがよいです">>
|
||||
<<.operator-example 4 "[tag[non-existent]] :reduce[get[price]multiply{!!quantity}add<accumulator>]" "空のインプットは空のアウトプットを生成します">>
|
||||
<<.operator-example 5 "[tag[non-existent]] :reduce[get[price]multiply{!!quantity}add<accumulator>] :else[[0]]" "インプットが空の場合に確実にアウトプットするために`:else`使用します">>
|
||||
|
||||
<$macrocall $name=".tip" _="""[[reduceオペレータ|reduce Operator]]とは異なり、`:reduce`プレフィックスはaccumulatorの初期値を指定できないため、初期値は常に空(数学オペレータでは0として扱われます)になります。したがって`=1 =2 =3 :reduce[multiply<accumulator>]`は、6ではなく0が生成されます。accumulatorの初期値を指定する必要がある場合は、[[reduceオペレータ|reduce Operator]]を使用します。"""/>
|
||||
<<.operator-example 6 "=1 =2 =3 :reduce[multiply<accumulator>]" "空の初期値は数学オペレータによって0として扱われます">>
|
||||
<<.operator-example 7 "=1 =2 =3 +[reduce<multiply-input>,[1]]" "正しい結果を得るためには初期値の設定が必要な場合があります">>
|
||||
@@ -0,0 +1,49 @@
|
||||
created: 20211124151912931
|
||||
from-version: 5.1.23
|
||||
modified: 20250417105804821
|
||||
original-modified: 20230710073305239
|
||||
rp-input: 前回のフィルタランからのすべてのフィルタアウトプット
|
||||
rp-output: 累積された単一アイテム
|
||||
rp-purpose: 各インプットタイトルにフィルタランを繰り返し適用して、前回までのすべてのフィルタアウトプットを単一の項目に置き換え
|
||||
tags: [[Named Filter Run Prefix]]
|
||||
title: Reduce Filter Run Prefix
|
||||
ja-title: reduceフィルタランプレフィックス
|
||||
type: text/vnd.tiddlywiki
|
||||
|
||||
|
||||
<$railroad text="""
|
||||
\start none
|
||||
\end none
|
||||
( ":reduce" | - )
|
||||
[["ラン"|"Filter Run"]]
|
||||
"""/>
|
||||
|
||||
|
||||
前回のランからの各インプットタイトルは、順番にこのランに渡されます。このランへの以前の呼び出しの結果は、変数<<.var accumulator>>を介して次の呼び出しで使用できます。このランへの最後の呼び出しの結果がアウトプットとして返されます。典型的な使用法は、各インプットタイトルの特定のフィールドの値を合計することです。
|
||||
|
||||
上記のように、数式を各インプットタイトルに繰り返し適用して、これまでのすべてのフィルタアウトプットを1つの項目に置き換えます。
|
||||
|
||||
フィルタラン内では、次の変数を使用できます:
|
||||
|
||||
* <<.var accumulator>> - 前回のフィルタランの結果
|
||||
* <<.var currentTiddler>> - インプットタイトル
|
||||
* <<.var ..currentTiddler>> - フィルタラン外での変数`currentTiddler`の値。 <<.from-version "5.2.0">>
|
||||
* <<.var index>> - 現在のリスト項目の数値インデックス(リストの最初の項目は0)
|
||||
* <<.var revIndex>> - 現在のリスト項目の逆の数値インデックス(リストの最後の項目は0)
|
||||
* <<.var length>> - インプットリストの長さの合計
|
||||
|
||||
<<.tip "名前付きフィルタランプレフィックス`:reduce`を、サブフィルタを繰り返し適用して項目リストを1つの項目に平坦化するために使用される[[reduceオペレータ|reduce Operator]]`:reduce`と比べてください。">>
|
||||
|
||||
```
|
||||
[tag[shopping]] :reduce[get[quantity]add<accumulator>]
|
||||
```
|
||||
|
||||
は以下と同等です:
|
||||
|
||||
```
|
||||
\define num-items() [get[quantity]add<accumulator>]
|
||||
|
||||
[tag[shopping]reduce<num-items>]
|
||||
```
|
||||
|
||||
[[reduceフィルタランプレフィックス(例)|Reduce Filter Run Prefix (Examples)]]
|
||||
@@ -0,0 +1,30 @@
|
||||
created: 20230305131705188
|
||||
modified: 20250510102220175
|
||||
original-modified: 20230710074438655
|
||||
tags: [[Filter Run Prefix]]
|
||||
title: Shortcut Filter Run Prefix
|
||||
ja-title: ショートカットフィルタランプレフィックス
|
||||
type: text/vnd.tiddlywiki
|
||||
|
||||
ショートカットのプレフィックスはタイピングが速いため、上級ユーザーによく使用されますが、経験の浅いユーザーには読みにくいという欠点があります。そのため、より詳細な情報を持つ[[名前付きプレフィックス|Named Filter Run Prefix]]が作成されました。ショートカットと名前付きフィルタランプレフィックスは、以下の表に示すように互換性があります。
|
||||
|
||||
<$railroad text="""
|
||||
\start none
|
||||
\end none
|
||||
(-|:"+"|"-"|"~"|"=")
|
||||
[["ラン"|"Filter Run"]]
|
||||
"""/>
|
||||
|
||||
ランに次の内容が含まれている場合:
|
||||
|
||||
* プレフィックスが無い場合、アウトプットタイトルはフィルタのアウトプットに[[優先的に追加|Dominant Append]]されます
|
||||
|
||||
* プレフィックス`+`は、前回までのフィルタアウトプットをインプットとして受け取り、そのアウトプットはこれまでのすべてのフィルタアウトプットを<<.em "置き換え">>、次のランのインプットを形成します
|
||||
|
||||
* プレフィックス`-`は、アウトプットタイトルがフィルタのアウトプットから<<.em 取り除か>>れます(そのようなTiddlerが存在する場合)
|
||||
|
||||
* プレフィックス`~`は、フィルタアウトプットが空リストの場合、ランの結果のタイトルがフィルタアウトプットに[[優先的に追加|Dominant Append]]されます。フィルタアウトプットが空リストでない場合、ランは無視されます。<<.from-version "5.1.18">>
|
||||
|
||||
* プレフィックス`=`は、アウトプットタイトルが重複排除されずにフィルタのアウトプットに追加されます。<<.from-version "5.1.20">>
|
||||
|
||||
{{Interchangeable Filter Run Prefixes}}
|
||||
@@ -0,0 +1,35 @@
|
||||
created: 20210428074912172
|
||||
modified: 20250420104606860
|
||||
original-modified: 20230315165343329
|
||||
tags: [[Sort Filter Run Prefix]]
|
||||
title: Sort Filter Run Prefix (Examples)
|
||||
ja-title: sortフィルタランプレフィックス(例)
|
||||
type: text/vnd.tiddlywiki
|
||||
|
||||
タイトルの長さで並べ替え:
|
||||
|
||||
<<.operator-example 1 "[all[tiddlers]] :sort:number[length[]] +[limit[10]]">>
|
||||
|
||||
タイトルの長さを逆順に並べ替え:
|
||||
|
||||
<<.operator-example 2 "[all[tiddlers]] :sort:number:reverse[length[]] +[limit[10]]">>
|
||||
|
||||
テキストの長さで並べ替え:
|
||||
|
||||
<<.operator-example 3 "[all[tiddlers]] :sort:number[get[text]length[]] +[limit[10]]">>
|
||||
|
||||
修正日の新しい順に並べ替え:
|
||||
|
||||
<<.operator-example 4 "[tag[Field Operators]] :sort:date[get[modified]else[19700101]] +[limit[10]]">>
|
||||
|
||||
タイトルで並べ替え:
|
||||
<<.operator-example 5 "[tag[Field Operators]] :sort:string:casesensitive[get[caption]] +[limit[10]]">>
|
||||
|
||||
タイトルの逆順に並べ替え:
|
||||
<<.operator-example 6 "[tag[Field Operators]] :sort:string:casesensitive,reverse[get[caption]] +[limit[10]]">>
|
||||
|
||||
大文字と小文字を区別してテキストとして並べ替え:
|
||||
<<.operator-example 7 "Apple Banana Orange Grapefruit guava DragonFruit Kiwi apple orange :sort:string:casesensitive[{!!title}]">>
|
||||
|
||||
大文字と小文字を区別せずにテキストとして並べ替え:
|
||||
<<.operator-example 8 "Apple Banana Orange Grapefruit guava DragonFruit Kiwi apple orange :sort:string:caseinsensitive[{!!title}]">>
|
||||
@@ -0,0 +1,61 @@
|
||||
created: 20210428083929749
|
||||
from-version: 5.2.0
|
||||
modified: 20250419111702297
|
||||
original-modified: 20240717120111427
|
||||
rp-input: 前回までのすべてのランのフィルタアウトプット
|
||||
rp-output: アウトプットタイトルは、以前のフィルタランのアウトプットを置き換え
|
||||
rp-purpose: 各項目に対して実行されたこのフィルタの評価結果によってインプットタイトルを並べ替え
|
||||
rp-suffix: :sortフィルタランプレフィックスはリッチサフィックスを使用します。詳細については以下を参照
|
||||
rp-suffix-name: S
|
||||
tags: [[Named Filter Run Prefix]]
|
||||
title: Sort Filter Run Prefix
|
||||
ja-title: sortフィルタランプレフィックス
|
||||
type: text/vnd.tiddlywiki
|
||||
|
||||
<$railroad text="""
|
||||
\start none
|
||||
\end none
|
||||
( ":sort" )
|
||||
( ":" )
|
||||
( : "string" | "alphanumeric" | "number" | "integer" | "version" | "date" )
|
||||
( ":" )
|
||||
{
|
||||
(
|
||||
(
|
||||
( : "caseinsensitive" /"stringとalphanumericには必須"/ | "casesensitive" /"stringとalphanumericには必須"/)
|
||||
| "reverse" /"オプション"/
|
||||
)
|
||||
)
|
||||
+","
|
||||
}
|
||||
[["ラン"|"Filter Run"]]
|
||||
"""/>
|
||||
|
||||
前回のランからインプットされた各タイトルは、今回のランに順番に渡されます。フィルタランは、インプットタイトルをソートに必要な形式に変換します。例えば、フィルタラン`[length[]]`は各インプットタイトルをその長さを表す数値に変換し、インプットタイトルを長さに基づいてソートします。
|
||||
|
||||
フィルタラン内では、<<.var currentTiddler>>変数が処理中のTiddlerのタイトルに設定されていることに注意してください。これにより、`:sort:number[{!!value}divide{!!cost}]`のようなフィルタランを計算に使用できます。ラン外の<<.var currentTiddler>>の値は、<<.var "..currentTiddler">>変数で使用できます。
|
||||
|
||||
`:sort` <<.place S>>フィルタランプレフィックスでは、複数のサフィックスを許可する拡張構文が使用されます。その一部は必須です:
|
||||
|
||||
```
|
||||
:sort:<type>:<flaglist>[...filter run...]
|
||||
|
||||
```
|
||||
|
||||
* ''type'': 必須。項目の比較方法を決定し、''string''、''alphanumeric''、''number''、''integer''、''version''、''date''のいずれかになります。
|
||||
|
||||
* ''flaglist'': 次のフラグのコンマ区切りリスト:
|
||||
|
||||
** ''casesensitive'' または ''caseinsensitive'' (typeが`string`や`alphanumeric`のとき必須)。
|
||||
*** フラグがない場合、デフォルトは: //caseinsensitive// です。
|
||||
*** 明確にするために、このパラメータは常に定義する必要があります。
|
||||
|
||||
** フィルター実行の順序を反転するには、''reverse''を使用します(オプション)。
|
||||
|
||||
<<.tip """`:sort`プレフィックス付きのフィルタランは、''渡された項目と同じ数の項目が返される''ことに注意してください。特に、[[getオペレータ|get Operator]]を使用してフィールドの値を取得する場合は、[[elseオペレータ|else Operator]]を使用してフィールド値が欠落するのを防ぐと便利です。例えば`...[get[myfield]else[default-value]]`。<br><br>
|
||||
|
||||
''missing''エントリは''ゼロ''または''空文字列''として扱われます。
|
||||
|
||||
参照: <<.olink sortsub>>オペレータ
|
||||
|
||||
[[例|Sort Filter Run Prefix (Examples)]]
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user