Badges
Activity
I can take this opportunity to replace manual markdown with a proper text editor. Then there’s no need for autopaired brackets.
The editor will need to support:
- Automatic links to ideas like #123
- Links to @mentions like @dennis-hackethal
- Safe link formatting
- Disabling of turbo links
- Namespaced footnotes
- Custom blockquote format
- Protection against XSS
I can take this opportunity to replace manual markdown with a proper text editor. Then there’s no need for autopaired brackets.
The editor will need to support:
- Automatic links to ideas like #123
- Links to @mentions like @dennis-hackethal
- Safe link formatting
- Disabling of turbo links
- Namespaced footnotes
- Custom blockquote format
- Protection against XSS
- Retention of formatting when pasting
#3171·Benjamin Davies, 16 days agoObsidian autopairs markdown syntax and brackets. I like it a lot and would like Veritula to have something similar!
I can take this opportunity to replace manual markdown with a proper text editor. Then there’s no need for autopaired brackets.
The editor will need to support:
- Automatic links to ideas like #123
- Links to @mentions like @dennis-hackethal
- Safe link formatting
- Disabling of turbo links
- Namespaced footnotes
- Custom blockquote format
- Protection against XSS
#3386·Dennis HackethalOP, 1 day agoTrial by jury has been central to English Common Law legal systems “since the memory of man runneth not to the contrary.” So you could say it is simply a matter of tradition.
… it is simply a matter of tradition.
Another answer suggests that “We are following a tradition that came from British law of having trials decided by volunteers…” (emphasis mine).
So while having a jury may be tradition, the force part might not be tradition but relatively new.
#3303·Dennis HackethalOP, 11 days ago“If we make it a profession, we'll still have elites judging commoners and commoners unable to get justice.” (Source)
Making something voluntary doesn’t necessarily make it a profession. I buy sandwiches voluntarily, that doesn’t mean I work in that field.
#3391·Dennis HackethalOP, 1 day ago[Force is] cheaper than paying jurors their market rate for their time.
Well, at least this response is an honest confession of one of the (potentially) true motivations behind jury duty…
#3391·Dennis HackethalOP, 1 day ago[Force is] cheaper than paying jurors their market rate for their time.
It’s not clear to me that force is cheaper. On the contrary, force causes friction. Dealing with people who don’t want to be there results in additional overhead that may be hidden/not reflected in numbers.
[Force is] cheaper than paying jurors their market rate for their time.
#3388·Dennis HackethalOP, 1 day agoI think the best justification is legitimacy: people accept a court decision better if it was made by their peers, instead of a government employee. That is important in places where the government is not trusted, or trustworthy.
Force reduces legitimacy because there’s a greater risk of abuse and bias in jury selection.
#3388·Dennis HackethalOP, 1 day agoI think the best justification is legitimacy: people accept a court decision better if it was made by their peers, instead of a government employee. That is important in places where the government is not trusted, or trustworthy.
Voluntary choice makes the process more legitimate, not less.
The same issue comes up with conscription, say: there’s honor in defending your country voluntarily, if you decide it deserves defending. But if you’re forced to defend it regardless, your efforts aren’t a reflection of merit or legitimacy anymore.
Take the POV of a third party from another country. Let’s say you’re European and you observe, from afar, the US being attacked by a foreign adversary. You also observe millions of Americans signing up the next day to defend America. That would mean something. Europeans could note this development as proof that America has values that are worth defending. But if Americans were instead conscripted, this signal would be lost.
I think the best justification is legitimacy: people accept a court decision better if it was made by their peers, instead of a government employee. That is important in places where the government is not trusted, or trustworthy.
#3386·Dennis HackethalOP, 1 day agoTrial by jury has been central to English Common Law legal systems “since the memory of man runneth not to the contrary.” So you could say it is simply a matter of tradition.
Making juries voluntary doesn’t mean getting rid of them.
Trial by jury has been central to English Common Law legal systems “since the memory of man runneth not to the contrary.” So you could say it is simply a matter of tradition.
#3384·Dennis HackethalOP, 1 day agoIf the legislature approves, doesn’t that mean the force is not arbitrary? Since whatever they decide goes through an objective approval process.
It’s still arbitrary if it doesn’t address your objections. That’s a violation of consent and thus irrational.
#3383·Dennis HackethalOP, 1 day agoBy that logic, the government could arbitrarily force you to do anything the legislature approves of.
If the legislature approves, doesn’t that mean the force is not arbitrary? Since whatever they decide goes through an objective approval process.
By that logic, the government could arbitrarily force you to do anything the legislature approves of.
The difficulty of finding volunteers alone means that jury duty must be mandatory.
Not necessarily. It might just mean that courts suck at persuading people to be jurors.
The difficulty of finding volunteers alone means that jury duty must be mandatory.
Not necessarily. It might just mean that courts are bad at persuading people to be jurors.
… if it were voluntary, it wouldn’t be fair for those who did serve.
By that ‘logic’, we never could have abolished slavery. What a stupid argument.
… if it were voluntary, it wouldn’t be fair for those who did serve.
By that ‘logic’, America never could have abolished slavery because freeing the next generation would have been ‘unfair’ to slaves. What a stupid argument.
Why does John Doe deserve your best effort? He’s a random stranger to you. Why should you care what happens to him? What has he done to deserve your effort and consideration?
This sounds like sacrifice/altruism.
https://aynrandlexicon.com/lexicon/sacrifice.html
https://aynrandlexicon.com/lexicon/altruism.html
Why does John Doe deserve your best effort? He’s a random stranger to you. Why should you care what happens to him? What has he done to deserve your effort and consideration?
This stance sounds like sacrifice/altruism.
https://aynrandlexicon.com/lexicon/sacrifice.html
https://aynrandlexicon.com/lexicon/altruism.html
#3329·Dennis HackethalOP, 11 days agoWhy does John Doe deserve your best effort? He’s a random stranger to you. Why should you care what happens to him? What has he done to deserve your effort and consideration?
This sounds like sacrifice/altruism.
https://aynrandlexicon.com/lexicon/sacrifice.html
https://aynrandlexicon.com/lexicon/altruism.html
This sounds like sacrifice/altruism.
Shouldn’t use ‘this’ in isolation. Use a noun with it.
You want people who don’t care. You need neutrality.
You actually want people who don’t care. You need neutrality.
Escape special characters
I’ve asked Gemini to explain it:
1. Auto-Closure (Insertion State)
When the user inputs an opening delimiter, the system immediately injects the corresponding closing delimiter and places the caret (cursor) between them.
Input: (
Buffer State: (|)
Logic: insert(openingchar) + insert(closingchar) + move_caret(-1)
2. Type-Through (Escape State)
If the caret is positioned immediately before a closing delimiter that was autopaired, and the user types that specific closing delimiter, the system suppresses the character insertion and instead advances the caret.
Context: [text|]
Input: ]
Buffer State: [text]| (Not [text]])
Logic: if (nextchar == inputchar) { movecaret(+1); preventdefault(); }
3. Atomic Deletion (Regression State)
If the caret is between an empty pair of delimiters, a backspace event deletes both the opening and closing characters simultaneously, returning the buffer to the pre-insertion state.
Context: (|)
Input: Backspace
Buffer State: |
Logic: if (prevchar == open && nextchar == close) { delete_range(caret-1, caret+1); }
4. Selection Wrapping (Transformation State)
If a text range is selected (highlighted) and an opening delimiter is typed, the system wraps the selection rather than replacing it.
Context: |selected_text|
Input: [[
Buffer State: [[selected_text]]
Logic: surroundselection(inputpair)
5. Markdown-Specific Heuristics
Obsidian applies context-aware logic for Markdown syntax (e.g., * or _). It often checks word boundaries to determine if the user intends to bold/italicize or use a bullet point.
Context (Start of line): | + * + Space -> Bullet list (autopair disabled/consumed by formatting).
Context (Middle of line): word | + * -> word | (autopair enabled for italics).
I’ve asked Gemini to explain it:
1. Auto-Closure (Insertion State)
When the user inputs an opening delimiter, the system immediately injects the corresponding closing delimiter and places the caret (cursor) between them.
Input: (
Buffer State: (|)
Logic: insert(opening_char) + insert(closing_char) + move_caret(-1)
2. Type-Through (Escape State)
If the caret is positioned immediately before a closing delimiter that was autopaired, and the user types that specific closing delimiter, the system suppresses the character insertion and instead advances the caret.
Context: [text|]
Input: ]
Buffer State: [text]| (Not [text]])
Logic: if (next_char == input_char) { move_caret(+1); prevent_default(); }
3. Atomic Deletion (Regression State)
If the caret is between an empty pair of delimiters, a backspace event deletes both the opening and closing characters simultaneously, returning the buffer to the pre-insertion state.
Context: (|)
Input: Backspace
Buffer State: |
Logic: if (prev_char == open && next_char == close) { delete_range(caret-1, caret+1); }
4. Selection Wrapping (Transformation State)
If a text range is selected (highlighted) and an opening delimiter is typed, the system wraps the selection rather than replacing it.
Context: |selected_text|
Input: [[
Buffer State: [[selected_text]]
Logic: surround_selection(input_pair)
5. Markdown-Specific Heuristics
Obsidian applies context-aware logic for Markdown syntax (e.g., * or _). It often checks word boundaries to determine if the user intends to bold/italicize or use a bullet point.
Context (Start of line): | + * + Space -> Bullet list (autopair disabled/consumed by formatting).
Context (Middle of line): word | + * -> word *|* (autopair enabled for italics).
As of c08f508, the footer automatically hides and shows based on scrolling behavior.
Try it out and let me know if this doesn’t help.
As of 9087189, the footer automatically hides and shows based on scrolling behavior.
Try it out and let me know if this doesn’t help.