Compare commits
No commits in common. "7c461279382b57c84aeddda7857dd9de3c1b653f" and "ecf68132a17cd87a80e0851eaabb554acd67c8bb" have entirely different histories.
7c46127938
...
ecf68132a1
4 changed files with 4 additions and 43 deletions
2
main.go
2
main.go
|
|
@ -23,7 +23,7 @@ import (
|
||||||
"text/template"
|
"text/template"
|
||||||
)
|
)
|
||||||
|
|
||||||
const VERSION = "v27"
|
const VERSION = "v26"
|
||||||
const CONTEXT_USER = 1
|
const CONTEXT_USER = 1
|
||||||
const SYNC_PAGINATION = 200
|
const SYNC_PAGINATION = 200
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -102,11 +102,6 @@
|
||||||
border: 1px solid #ccc;
|
border: 1px solid #ccc;
|
||||||
padding: 2px 4px;
|
padding: 2px 4px;
|
||||||
border-radius: 4px;
|
border-radius: 4px;
|
||||||
|
|
||||||
&.copy {
|
|
||||||
border: var(--markdown-copy-border);
|
|
||||||
background-color: var(--markdown-copy-background);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
pre {
|
pre {
|
||||||
|
|
@ -116,14 +111,6 @@
|
||||||
border-radius: 4px;
|
border-radius: 4px;
|
||||||
white-space: pre-wrap;
|
white-space: pre-wrap;
|
||||||
|
|
||||||
&.copy {
|
|
||||||
border: var(--markdown-copy-border);
|
|
||||||
background-color: var(--markdown-copy-background);
|
|
||||||
code {
|
|
||||||
background-color: inherit !important;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
code {
|
code {
|
||||||
border: unset;
|
border: unset;
|
||||||
padding: unset;
|
padding: unset;
|
||||||
|
|
|
||||||
|
|
@ -15,9 +15,6 @@
|
||||||
--menu-item-hover-color: #f4f4f4;
|
--menu-item-hover-color: #f4f4f4;
|
||||||
|
|
||||||
--font-monospace: "Liberation Mono", monospace;
|
--font-monospace: "Liberation Mono", monospace;
|
||||||
|
|
||||||
--markdown-copy-border: 1px solid #0a0;
|
|
||||||
--markdown-copy-background: #e3f4d7;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
html {
|
html {
|
||||||
|
|
|
||||||
|
|
@ -94,7 +94,6 @@ export class MarkedPosition {
|
||||||
constructor() {// {{{
|
constructor() {// {{{
|
||||||
window.marked_setpos = (event) => this.setpos(event)
|
window.marked_setpos = (event) => this.setpos(event)
|
||||||
window.marked_changecheckbox = (event) => this.changecheckbox(event)
|
window.marked_changecheckbox = (event) => this.changecheckbox(event)
|
||||||
window.marked_copy_to_clipboard = (event) => this.copy_to_clipboard(event)
|
|
||||||
this.render()
|
this.render()
|
||||||
}// }}}
|
}// }}}
|
||||||
setpos(event) {// {{{
|
setpos(event) {// {{{
|
||||||
|
|
@ -120,28 +119,6 @@ export class MarkedPosition {
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
}// }}}
|
}// }}}
|
||||||
async copy_to_clipboard(event) {// {{{
|
|
||||||
if (!event.shiftKey)
|
|
||||||
return
|
|
||||||
|
|
||||||
try {
|
|
||||||
// Stop text selections on the page to the mouse pointer.
|
|
||||||
// Old selections are remove as well to give a cleaner view
|
|
||||||
// of the copied text/highlighting.
|
|
||||||
event.preventDefault()
|
|
||||||
event.stopPropagation()
|
|
||||||
window.getSelection().removeAllRanges()
|
|
||||||
|
|
||||||
const text = event.target.innerText
|
|
||||||
await navigator.clipboard.writeText(text)
|
|
||||||
event.target.classList.add('copy')
|
|
||||||
setTimeout(()=>event.target.classList.remove('copy'), 250)
|
|
||||||
} catch (err) {
|
|
||||||
console.error('Failed to copy: ', err)
|
|
||||||
alert('Failed to copy: ', err)
|
|
||||||
}
|
|
||||||
}// }}}
|
|
||||||
|
|
||||||
render() {// {{{
|
render() {// {{{
|
||||||
const markedObject = this
|
const markedObject = this
|
||||||
this.marked = new Marked()
|
this.marked = new Marked()
|
||||||
|
|
@ -188,12 +165,12 @@ export class MarkedPosition {
|
||||||
const code = token.text.replace(other.endingNewline, '') + '\n'
|
const code = token.text.replace(other.endingNewline, '') + '\n'
|
||||||
|
|
||||||
if (!langString) {
|
if (!langString) {
|
||||||
return `<pre ondblclick="marked_setpos(event)" onmousedown="marked_copy_to_clipboard(event)" data-offset-start="${token.position.start.offset}" data-offset-end="${token.position.end.offset}"><code>`
|
return `<pre ondblclick="marked_setpos(event)" data-offset-start="${token.position.start.offset}" data-offset-end="${token.position.end.offset}"><code>`
|
||||||
+ (token.escaped ? code : escapeHtmlEntities(code, true))
|
+ (token.escaped ? code : escapeHtmlEntities(code, true))
|
||||||
+ '</code></pre>\n'
|
+ '</code></pre>\n'
|
||||||
}
|
}
|
||||||
|
|
||||||
return `<pre ondblclick="marked_setpos(event)" onmousedown="marked_copy_to_clipboard(event)" data-offset-start="${token.position.start.offset}" data-offset-end="${token.position.end.offset}"><code class="language-`
|
return `<pre ondblclick="marked_setpos(event)" data-offset-start="${token.position.start.offset}" data-offset-end="${token.position.end.offset}"><code class="language-`
|
||||||
+ escapeHtmlEntities(langString)
|
+ escapeHtmlEntities(langString)
|
||||||
+ '">'
|
+ '">'
|
||||||
+ (token.escaped ? code : escapeHtmlEntities(code, true))
|
+ (token.escaped ? code : escapeHtmlEntities(code, true))
|
||||||
|
|
@ -283,7 +260,7 @@ export class MarkedPosition {
|
||||||
},
|
},
|
||||||
|
|
||||||
codespan(token) {
|
codespan(token) {
|
||||||
return `<code ondblclick="marked_setpos(event)" onmousedown="marked_copy_to_clipboard(event)" data-offset-start="${token.position.start.offset}" data-offset-end="${token.position.end.offset}">${escapeHtmlEntities(token.text, true)}</code>`
|
return `<code ondblclick="marked_setpos(event)" data-offset-start="${token.position.start.offset}" data-offset-end="${token.position.end.offset}">${escapeHtmlEntities(token.text, true)}</code>`
|
||||||
},
|
},
|
||||||
|
|
||||||
br(token) {
|
br(token) {
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue