V 0.7.0 - 2020-10-23
_symbol.class.clsss:param:param some text__
.class
and :param
work the same way as "block" definitions\\ pragma comments
<!-- comments -->
, since it can be used outside macro \define x()
blocksI am not sure why you say new inline functions then you say no inline customise functions.Do you mean inline works with underscore, you just can not customise it?
This is some Text __.test Inline text ___ with more
;This is some Text __.test Inline text _/ with more
\customize tick="d" _element="details" _classes=".notop.cbox.cbox-primary.hard-linebreaks" _endString="/d" _mode=block
\customize tick="s" _element="summary" _classes=".margin-init" _endString="/s"
´d ´s Details - Summary
/s
line 1
line 2
/d
´d´s Details - Summary/sline 1line 2/d
´d ´s
wow ﹙symbol.class:param some text﹚ nice
⁽this is some text⁾
₍this is more text₎
<svg height="26px" width="24px">
<text x="0" y="24">⁽ ⁾</text>
</svg>
<svg height="26px" width="24px">
<text x="0" y="22">₍ ₎</text>
</svg>
°trans:p1 tiddlertotransclude °/ Futher wiki text
/° the / is ignored here but does allow a glyph to proceed it to be used as it it was the first character on the line °/
But given this then
/´ may imply ´/ may be used to prematurely close tick. (suggested as \n by default as a line based glyph)
U+FEFF | ZERO WIDTH NO-BREAK SPACE |
I am not sure why you say new inline functions then you say no inline customise functions.Do you mean inline works with underscore, you just can not customise it?It is able to detect start / end and nested inline definitions. But at the moment it only sets class-names. ... No possibility to call widgets. ... Will follow soon.
At the moment the plans are:_element should be configurable. ... I think it will be limited to widgets and html inline elements, or may be even a subset of them.
_endString will be _not_ configurable.
_mode has to be fixed to inline
I tend to remove __ and ___ ... since it will overwrite the existing __underline__ wikitext definition, which isn't usable atm.
.. The rest will be the same as the existing params
A few observations.Again please don't be overwhelmed just consider these ideas please. Nor do these ideas imply it demands your work, although in some cases that is most likely.The key issue I am grappling with is the systemisation of glyphs, symbols and the scope of customises wiki text. To make this easy to use and remember. Presently I always need to lookup the reference material and slowly construct wikitext, if its slow and hard for me (involved in this project from the start) it may appear impossible to future new users. There are differences in the way Mario, TT and myself envision this, until this is cleared up even testing will be clumsy apart from helping future users.Observed - In a tiddlywiki without custom mark-up
This is some Text __.test Inline text ___ with morefails gracefullyFails ungracefully. Disrupts future wiki text.
;This is some Text __.test Inline text _/ with more
_endString will be _not_ configurable.
´something ⁽ rest of line using inline
or
⁽ just reusing the inline to the end of line (from the beginning)
This is a sentence ⁽.mark.yellow this text singled out⁾ but this text just sentence. Note no space proceeding close.
´something ⁽.mark.yellow rest of line using inline
or
⁽.mark.yellow just reusing the inline custom for a whole line.
*⁽.mark.yellow Item 1 highlighted
*⁽.mark.green Item 2 differently highlighted.
A random Idea
- I used to use a character combination to annotate lines on personal hand written notes, I have found unicode versions, they always live at the end of a line
- ? a question (A question) Special forms of these also exist.
- ! an answer (asserted / definitive answer)
- ⁇ Question this, it is unlikely to be true
- ⁈ You must question this, question - asserted
- ⁉ Believe it to be true - asserted but could question
- So I wonder like your prior work on <space><spaces>\n if we could introduce a end of line type of custom pragma. ie it has no beginning of line, or inline or block characteristics (by default)
- In a sense inline but only end of line (\n). Used inside ⁉ means nothing.
- This also means it would typically not have any input (other than symbol, class or :p) unless it detected \n vs \n\n
Mario,_endString will be _not_ configurable.I agree with this but ask if if it makes sense to be auto-terminated with \n or \n\nam I wrong to think Typically inline does end at a line or paragraph break?
I tend to remove __ and ___ ... since it will overwrite the existing __underline__ wikitext definition, which isn't usable atm.
reEnd = /___|_\//g
We built a ___.h house ___.o on a hill_ _ with a long fence.
We built a ___.h house ___.o __on__ a hill_ _ with a long fence.
As you can see in the code below there are 4 possibilities atm. I intend to reduce them to 2 if possible!
d)- start: ﹙- end: ﹚
...
d) is only nestable if one of the others is used. I'm not sure, if I like this behaviour. ...
As you can see in the code below there are 4 possibilities atm. I intend to reduce them to 2 if possible!
c)- start: ⠒- end: ⠶d)- start: ﹙- end: ﹚
This /°.n6 looks nice enough°/ for reading
This /°.n6 looks nice enough°/ for reading till you make a /°small/° error.
He stood upon the ground (terra firma) v. he stood upon the ground﹙terra firma﹚.
d)- start: ﹙- end: ﹚
_endString will be _not_ configurable._mode has to be fixed to inline
As I do read the requests, I think we shouldn't make a difference between \customize and \customize inline .... But this could cause a lot more consistency problems, like:´d ´s some text <-- only works that way because I liked it.With strict rules it would need to look like this:´d´s some textsome text---- <-- _endString
Question - customised Glyphs, a glyph too far?
- As you can see the wide range of glyphs available that have meaning or structure makes me wish to ask if we could allow the user to nominate glyphs either single (line/para/blocks) or pairs for inline or block. ie customise the customise glyphs.
¶ Start of a paragraph,
more of the same pargraph endedon the next line.
⁋ <--- End String
Regarding User Possibility To Set Markup Glyphs?TonyM wrote:Question - customised Glyphs, a glyph too far?
- As you can see the wide range of glyphs available that have meaning or structure makes me wish to ask if we could allow the user to nominate glyphs either single (line/para/blocks) or pairs for inline or block. ie customise the customise glyphs.
Ciao TonyM & PMarioIF this were possible I WOULD use it.
Why? Because the kinds of Markup I do would benefit from me being able to choose glyphs VISUALLY SUITED to the purpose.For instance, for simple paragraphs ...
¶ Start of a paragraph,
more of the same pargraph endedon the next line.
⁋ <--- End String
I understand if its not possible.
⁋ <--- End String is redundant and for me personally it is confusing, since Libre Office and Word use:
¶ as a paragraph marker. ... It may be wrong, but it is shown at the end of a paragraph. ... So the reverse pilcrow feels completely wrong at that position.
¶ some text \n\n
Since it would be the right thing to do. see: Wikipedia Pilcrow. It would be easy to explain, with the link to Wikipedia. It will create a HTML P tag by default.
If you want you can define an _endString. ... Default would be \n\n
End of line only mark up, with selectable glyphs, Would allow someone like me to define a glyph "¶" as "<br>br>" so insertion of ¶<space> would render as a new paragraph "break". This provide the complement to beginning of line and inline mark-up.
\customise _glyph="〖" _glyphName="openenc" _endString="〗" _symbol=highlight _classes=".highlight" _mode=inline
\customise openenc _classes=".highlight-green"
Just a thought, if the customise definition was to accept both glyph and symbol as parameters this may be an easier approach.
\customise _glyph="〖" _glyphName="openenc" _endString="〗" _symbol=highlight _classes=".highlight" _mode=inlineeven an new \customise-def that accepts _glyphs and _glyphNames and \customise does not.
Then all the existing definitions would be transferred into this form, but could be altered.
Accepting a _glyphName="openenc" (open enclosed brackets) for subsequent use such asIn effect a redefinition, like the current customise.
\customise openenc _classes=".highlight-green"
In the worst case there will need to be a start-up process that puts glyph definitions in a specific tiddler into a table, ie reload to add new glyphs.
Forgive me for interfering in this aspect of coding, which I am as yet unable to contribute to myself. I wish you had another "coder" (or more) sharing your effort.
I would just add to the general discussion, whilst global customise is a valuable tool, I can see customise being added to the specific tiddlers that wish to use extended mark-up, so in many cases the scope will only be the current tiddler. If a text contains a glyph the editor can just choose another for their special mark-up, a small popup panel could list the glyphs found in a tiddler.
Another approach is using a custom type field, and the type which is equivalent to a mime type also permits providing the character set.
Gentlemen,The attached local view template demonstrates the use of additional code in a specific tiddler.
- In this case of you add the field local-viewtemplate to any tiddler in the edit view and a new editable field appears. This will be applied through the view template.
- Please try it, it is immensely useful for research and experimentation on view Template code.
V 0.8.0 - 2020-10-29
__ underscore__
, ﹙ little﹚
, ⠒ braille⠶
, /° slash°/
pilcrow: ¶
, about: ≈
, angle: »
, degree: °
, tick: ´
, single: ›
∴ This is the conclusion or therefore statement in my text
;This is another conclusion
:This will be helpful ∴ review and extend these ideas.
The attached local view template demonstrates the use of additional code in a specific tiddler.
- In this case of you add the field local-viewtemplate to any tiddler in the edit view and a new editable field appears. This will be applied through the view template.
- Please try it, it is immensely useful for research and experimentation on view Template code.
Hi Tony,I got it working, but I think I'm the wrong person here. The problem I have with that approach is: I don't understand it.I can't see the usecase, because my philosophy is completely different in this regard.
\importcustom [[pragma-details]]
Only one issue you may have overlooked, or I missed your answer. Rather than use pilcrow at the beginning of a line I would only use it at the end, if you don't see an "end of line only pragma" being possible as discussed in this reply then I would suggest the reverse pilcrow, as it indicates beginning of paragraph.
The pilcrow is used in desktop publishing software such as desktop word processors and page layout programs to mark the presence of a carriage return control character at the end of a paragraph. It is also used as the icon on a toolbar button that shows or hides the pilcrow and similar hidden characters, including tabs, whitespace, and page breaks. In typing programs, it marks a return that one must type.
\customize tick=table _element=table _endString="/endTable" _mode=block
\customize tick=caption _element=caption
\customize tick=! _element=th
\customize tick=cell _element=td _classes=".hl"
\customize tick _use=cell
\customize angle="===row" _element=tr _mode=block _endString="---"
\customize angle=cmulti _element=td _classes=".hl" _mode=block
\customize angle=| _use=cmulti
´table ´caption Some caption text
»===row
´! header 1
´! header 2
´! header 3
---
»===row
»| 1 text
»| 12 text « and »
»|
* cell 13 text
* line 2
* line 3
---
»===row
»| 2 text
»| 22 text
»| 23 text
---
/endTable
»===row
ends with
---
\customize tick=table _element=table _endString="/table" _mode=block
\customize tick=caption _element=caption
\customize tick=th _element=th
\customize tick=td _element=td _classes=".hl" _mode=block
\customize tick="tr" _element=tr _mode=block _endString="/tr"
´table ´caption Some caption text
´tr
´th header 1
´th header 2
´th header 3
/tr
´tr
´td 1 text
´td 12 text « and »
´td
* cell 13 text
* line 2
* line 3
/tr
´tr
´td 2 text
´td 22 text
´td 23 text
/tr
/table
\customise glyph="*" parameters
*This would then take on the new definition here?
\customise glyph="-" _element="li"
- to accept bullets pasted from GitHub
Just for clarification the double underscore (not underscore) is used, does this not clash with its existing use?, or is this intentional?
It is available on most keyboards.
This would allow redefinition of mark-up already in a text perhaps even making it behave like another mark-up language.and additions like
\customise glyph="-" _element="li"
- to accept bullets pasted from GitHub
Inline nesting seems to have a problem.
*A line with〖 This inline 〗and more
It would be possible to use pilcrows as "start" and "end" of a paragraph, but I don't understand why.
TW Pargraphs end with \n\n by default
So the "reversed pilcrow"⁋ <--- End String is redundant and for me personally it is confusing, since Libre Office and Word use:
¶ as a paragraph marker. ... It may be wrong, but it is shown at the end of a paragraph. ... So the reverse pilcrow feels completely wrong at that position.
Can you please clarify what you mean here!Do you mean that are TWO different Unicode glyphs for Underscore being used?
The use case I am thinking of is allow me to simplyfy & share with others an approach to correct manuscripts.I work often using specialist software to proof edit articles & books for publishers.This uses a specific method and its own system of glyphs (based on "printers' corrections").The software involved is very complex and expensive.I believe there is a way I could do this work in TW using your Custom Markup if I had a few special glyphs.I could explain it in detail if you wanted---but I don't want to overload you more than we have already :-)
P.S.: By the way the Pilcrow was originally used inline (often coloured red) in Medieval manuscripts to indicate a ceasura / hiatus / pause in the flow of a text.Vellum / parchment was very expensive so text is as condensed as possible. Paragraphs separated by lines evolved much later and was more to do with the development of printing and cheaper paper.
Scribes would often leave space before paragraphs to allow rubricators to draw the pilcrow. With the introduction of the printing press, space before paragraphs was still left for rubricators to draw by hand; however, rubricators could not draw fast enough for printers and often would leave the beginnings of the paragraphs as blank. This is how the indent before paragraphs was created.[11] Nevertheless, the pilcrow remains in use in modern time in the following ways:
PMario wrote:Inline nesting seems to have a problem.Right. I noticed that. Hope its solvable!
@TiddlyTweeter wrote:The use case I am thinking of is allow me to simplyfy & share with others an approach to correct manuscripts.I work often using specialist software to proof edit articles & books for publishers.This uses a specific method and its own system of glyphs (based on "printers' corrections").The software involved is very complex and expensive.I believe there is a way I could do this work in TW using your Custom Markup if I had a few special glyphs.I could explain it in detail if you wanted---but I don't want to overload you more than we have already :-)
It would be interesting to know. .. Otherwise may implement changes, that work against your usecase, because I don't know it. .. Which probably has happend already as using the pilcrow as a "paragraph" marker. ... Which makes it impossible to be used as an inline marker. ...
None of the usual fonts European Language speakers would explicitly set in TW settings have any of them (the doubled brackets) except Cambria Maths.
¶I would not bother with the use of pilcrow unless it was part of an end of line form of glyph only.
Remember
+++
content
+++
content2
===
===
<tr></tr>
'tr
°td contents of table detail
/tr
°li contents of list item
°li.bold bold contents of list item
determining one freely available that can ensure the lions share of Unicode is available, this is what we must do.
I had not tested Android, although a big user.
-- Default Keyboards is likely IMPOSSIBLE-- Direct insertion via Keyboard ShortsCuts, and The Stamp Tool, is NOT TOO DIFFICULT-- Unicode FONT SUPPORT requires research into CROSS-PLATFORM conditions.
So perhaps we now need to ask
- How do we go about a degree of rationalisation
- code pages English + Extended Symbols and utilities eg mathematical alphanumeric's
- font recommendations
- Multi-Platform support
TT What do you perceive should be included?.
My main point is, that I don't what to deal with the unicode support problems. The advanced usecase of the plugin is difficult enough to explain.
A quick look for "safe Unicode characters" gave me this https://qntm.org/safeI don't pretend to understand it fully but perhaps TT does.
What I did discover is the following includes the letter symbols 🄐 - 🄩 and other sets. Some of which will show a color icon with the right fontsMy thought is what if the glyphs available are from a set that an (optional) web font presents in an enhanced color form. Something one could toggle on/off? between plain and coloured.In edit these would be bright and easy to see, but after wikification and when acting as customise symbols they are invisible.
It would be interesting to look at a selective font, as a last resort, that we could embed in tiddlywiki with only the symbols we need. I have seen font builders around but it remains a bit of a dark art to me. Most users such as myself have most of the Unicode covered (as I use Windows 10) so a local font is likely to satisfy the requirements. I would be surprised if any would have to revert to the last resort font if we choose the fonts correctly (or check the existing ones)
The thing I find frustrating is fonts seem not to document the "code pages" they include. There must be Unicode rich ones available for linux and apple and other devices as there is for Windows.
This article lists glyphs supported by an intersection of a set of fonts. Perhaps we could take this list and present it in a tiddler, in a large font size and put it out to the user forum for people to test and report if all the glyphs are visible. Perhaps also in an empty.html at a URL people can just open an review on their various devices?
Joshua - your guidance and background on unicode codepoints and the potential disconnect with font support is second to none. Excellent diligence!
Scoping rulesWhat is the scope of \somepragma? Is it possible to globally define them easily? I feel like I'm missing something obvious here. Wondering if $:/tags/Macro might do the job - it shouldn't but I'd understand if it did.
Pragma definitions(@PMario) Like me, you were probably thankful when JavaScript started to support arrow functions - the brevity alone lent itself to a boost in productivity. Therefore I'm wondering why \customize can't be reduced:
Wow - I mean just WOW! I just spent I-don't-know-how-long reading all this stuff - yes, ALL four threads
BUG? v.0.8.1 -- Block Nesting Broken?
CodaCodeNice to see someone else buying into the vision.
Scoping rulesWhat is the scope of \somepragma? Is it possible to globally define them easily? I feel like I'm missing something obvious here. Wondering if $:/tags/Macro might do the job - it shouldn't but I'd understand if it did.Both local and global definition now exists, with local via either in wikitext or by import pragma
Pragma definitions(@PMario) Like me, you were probably thankful when JavaScript started to support arrow functions - the brevity alone lent itself to a boost in productivity. Therefore I'm wondering why \customize can't be reduced:It could be perhaps, Mario will consider your suggestions; however the definitions or customise pragma support such a broad and powerful range of uses that brevity in the definition may be unwise. The whole function of the new glyps and symbols it to create brevity by definitions. So perhaps brevity in the definition, is a abstraction too far.
I think the key place to play is https://wikilabs.github.io/editions/custom-markup/, look for any tiddler to see examples, this is not a curated site, just a practical one. Search and play.
Scoping rulesWhat is the scope of \somepragma? Is it possible to globally define them easily? I feel like I'm missing something obvious here. Wondering if $:/tags/Macro might do the job - it shouldn't but I'd understand if it did.