mirror of
https://github.com/go-vikunja/vikunja.git
synced 2026-05-05 19:18:16 -05:00
Render markdown in title #387
Open
opened 2025-11-01 20:55:35 -05:00 by GiteaMirror
·
0 comments
No Branch/Tag Specified
main
renovate/dev-dependencies
feat-v2-foundation
dependabot/npm_and_yarn/frontend/axios-1.15.2
spike-huma-openapi3
claude/investigate-swagger3-support-nyyUa
feat-list-view-buckets
ci-mysql-8-test
codex/analyze-codebase-for-email-task-feature
feat-project-templates
csv-import-feature
claude/email-reply-comments-wpdcQ
fix-oidc-pkce-support
fix/overview-subtasks-expand
feat/bucket-select-task-detail
feat-soft-delete-projects
claude/review-bot-design-plan-cf5C3
claude/project-scoped-api-tokens-KTqR3
claude/explore-openclaw-integration-KQEzg
claude/project-scoped-api-tokens-yv5KS
fix-duplicate-close-button
feat-list-view-sorting
feat/official-vite-sentry-plugin
feat/highlight-overdue-tasks
feat/add-enter-key-form-submission-handling
feat/TipTap-nits
feat/update-caldavtimetotimestamp-parsing
feat-phosphor-icons
wip-plans
claude/investigate-issue-2173-llKme
fix-description-text-drag
feat-custom-keyboard-shortcuts
pr-1845-ci
codex/fix-drag-and-drop-behavior-inconsistency
copilot/add-clickable-labels-for-filtering
copilot/fix-issue-1786
playwright-migration
fix-kanban-repeating-wip
copilot/fix-1498
feature/replace-axios
codex/upgrade-to-tailwind-4.1.8-using-pnpm
codex/add-cypress-test-for-avatar-types
feature/biome
feature/oxc
codex/update-flexsearch-to-0.8.205
4r6ni9-codex/fix-deprecated-sass-@import-usage
codex/fix-deprecated-sass-@import-usage
codex/add-cypress-test-for-task-list-refresh-fix
codex/fix-quick-add-magic-not-adding-tasks
codex/fix-all-type-errors
codex/fix-mimetype-for-docs.json
feature/caldav-from-scratch
feature/gh-actions-hetzner
fix-ci
feat/new-logger
jyte-better-dev-config
feat/add-team-member-with-enter
fix/button-and-icon-types
fix/notifications-component-name-collision
feature/null-time
renovate/tailwindcss-4.x
feature/unplugin-vue-router
fix/deprecated-import
feature/zod-schema
renovate/golangci-golangci-lint-1.x
fix/tiptap-editor-reactive-destructuring
release/0.24
feat/improve-add-task
fix/saved-filter-search
feat/webp-and-avif-attachment-previews
feature/migrate-back-to-bulma
fix/sass-add-missing-list-import
feature/sticky-demo-bar
fix/gantt-view-switch
feature/typesense-position-join
feature/focus-visible
dependencies/golangci-lint
feature/better-filter-syntax
fix/tiptap-task-list
renovate/github.com-golang-jwt-jwt-v4-5.x
feature/hide-forbidden-related-tasks
renovate/golang-1.x
release/0.20
release/0.17
release/0.16
release/0.15
release/0.14
v2.3.0
v2.2.2
v2.2.1
v2.2.0
v2.1.0
v2.0.0
v1.1.0
v1.0.0
v1.0.0-rc4
v1.0.0-rc3
v1.0.0-rc2
v1.0.0-rc1
v1.0.0-rc0
v0.24.6
v0.24.5
v0.24.4
v0.24.3
v0.24.2
v0.24.1
v0.24.0
v0.23.0
v0.22.1
v0.22.0
0.21.0
v0.21.0
v0.20.4
v0.20.5
v0.20.3
v0.20.2
v0.20.1
v0.20.0
v0.19.2
v0.19.1
v0.19.0
vue3
v0.18.1
v0.18.0
v0.17.1
v0.17.0
v0.16.1
v0.16.0
v0.15.1
v0.15.0
v0.14.1
v0.14.0
v0.13.1
v0.13
v0.12
v0.11
v0.10
v0.9
v0.8
v0.7
v0.6
v0.5
v0.4
v0.3
v0.2
v0.1
Labels
Clear labels
area/api
area/attachments
area/auth
area/avatars
area/backup-restore
area/caldav
area/calendar-view
area/comments
area/config
area/database
area/desktop
area/docker
area/email
area/favorites
area/filters
area/frontend
area/gantt
area/i18n
area/import-export
area/internal-code
area/kanban
area/labels
area/list-view
area/mobile
area/notifications
area/permissions
area/projects
area/pwa
area/recurring-tasks
area/reminders
area/search
area/shortcuts
area/subtasks
area/sync
area/table-view
area/task-editor
area/task-metadata
area/task-relations
area/teams
area/theming
area/time-tracking
area/typesense
area/views
area/webhooks
bug
changes requested
concern/accessibility
concern/performance
concern/regression
concern/ux
confirmed
db/mysql
dependencies
enhancement
good first issue
help wanted
integration/inbound
integration/outbound
kind/bug
kind/feature
needs reproduction
pull-request
question
security
support
upstream issue
waiting for reply
wontfix
Mirrored from GitHub Pull Request
No Label
Milestone
No items
No Milestone
Projects
Clear projects
No project
No Assignees
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: github-starred/vikunja#387
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @vikunja-bot on GitHub (Apr 1, 2025).
Original issue by bolgrov on 2021-07-08T10:00:55.000Z
Vikunja has markdown support for comments, however it does not currently support it for Tasks titles.
It would be beneficial to support this not only for aesthetic purposes but more importantly for better usability.
I tend to use a lot of links in the Tasks titles:
[site](link)and in Todoist this renders a clickablesitebut in Vikunja it just shows the unrendered markdown.Thank you !
Original issue on Gitea
@kolaente commented on 2021-07-09T15:56:50.000Z:
I can see how this would be useful, but would this really be faster than putting the link in a comment or the task description?
jln commented on 2021-10-13T07:14:33.000Z:
Hi,
I totally agree with bolgrov, I think it's really faster to click on a link in title, than to look for this link in comments.
Moreover, markdown support in comments would allow to use bold and italic, thus to improve readibility of some important information.
dpschen commented on 2021-10-13T09:19:17.000Z:
I would love to have the option to use markdown links in a task title.
Isn't markdown already supported in comments?
I would argue that using markdown to format bold and italic might leed to some problems because it decreases options our options to show other meta information next to the task in a list. What I mean by that is e.g. if you allow italic inside the task title then it's harder to see the due date, since it's currently italic as well (see attachment). Also default markdown syntax supports normal HTML which we probably don't want in titles.
Because of that I think it makes sense to create an allowlist of what syntax is supported. Currently I think that would only include markdown links. We don't want to have animated graphics in task titles
Maybe this could also be implemented in stages:
cherry on top:
Related with all of that is the discussion reagarding the implementation of a new editor
jln commented on 2021-10-13T09:45:08.000Z:
There are but from my point of view, it's a huge gain in fluidity to avoid opening and reading the comments again and again, and be able to read important information in task title itself.
I understand. For me, it is the user's responsibility to use formatting wisely. If the user is bothered by the fact that his italicized text is confused with the due date, it is up to him not to use italics at the end of the title. But this should not prevent the use of italics elsewhere in the title.
(This is the choice made by other tools like Quire.io for example. The latter allows you to use links, italic, bold, and even css to modify the text color, the text size, the background color… in task title)
dpschen commented on 2021-10-13T09:55:36.000Z:
I think the magnitude of that issue might be reduced if we find a way to show tasks non blocking (not as a popup) in a good way.
What also comes to my mind is something recently introduces in todoist: they show the first line of the description cut of after some characters. See the two attached images:
What I think is noteworthy is that they decided to remove line breaks in the preview. Not sure if I like that 🤷♂️
@jln What do you think? :)
@kolaente commented on 2021-10-13T11:01:59.000Z:
I think we could do this with an allowlist to allow only the usual formatting and links, no images or anything else. Then it would be up to the user if they want to do all kinds of confusing formatting with it.
Implementation-wise we'll also have to sanitze the input before rendering, not sure about the effect this has on the total bundle size.
jln commented on 2021-10-16T15:11:58.000Z:
I don't know todoist very well. I am more familiar with Quire.io which provides, in my opinion, the best UX I have ever used.
Here is a very short capture that shows the fluidity of the tool. A due date or a tag can be applied in 2 clicks, without opening any popup or new window. Access to a more feature-rich panel is done via a click, or a simple press on the space bar. This panel can be pinned if needed.
Finally, to come back to Markdown which is the subject of this issue (sorry for the off-topic!), it can be applied when creating the task or when editing it (editing takes only one click!)
dpschen commented on 2021-10-16T15:19:11.000Z:
Thanks for the video :) really interesting to see.
I like the pinnable sidepanel a lot :)
What I don't get from the video:
How do you open the sidepanel vs edit the text?
Do you have to click on the text vs somewhere else in the line?
jln commented on 2021-10-16T16:13:28.000Z:
The first time, I opened the sidepanel by pressing the space key, then I opened it by clicking the icon.
To edit task title, I double-clicked it.
jln commented on 2021-10-16T17:47:01.000Z:
In fact, you can also open the panel by clicking on a blank space of the task (on the right of the title itself).
I've recorded a more complete screenshot showing how it's possible to create and edit task without leaving the main tasks list.
DanielPantle commented on 2024-10-02T10:17:12.000Z:
Links in the title are one of the features I miss the most coming from Todoist. I would really love seeing this implemented!
I think the discussion in this issue drifted away a bit from the actual topic, I guess those other user interface improvements (side panel, quick editing, etc.) can be discussed elsewhere :)
I would be willing to contribute to this, but I am not very familiar with the vikunja development yet. I have a few questions:
@kolaente commented on 2024-10-02T16:18:18.000Z:
I don't think there's anything against merging this. It is not as easy to get right though as there are a few considerations regarding a11y (what do you focus when navigating the task list with the keyboard?) and editing the title (should we keep the inline edit? If we do that, how do we make sure clicking on the title works?) but those are not unsolvable problems.
How does Todoist solve these potential problems?
We should definitely do this, but haven't done it yet.
IIRC the editor uses DomPurify to handle this.
As I see it, this affects only the frontend. The question is though if we should use markdown or html, given that the description and comments use html and using it everywhere would be consistent. But editing markdown is way faster for things like links and simple formatting. Pinging @dpschen do you have opinions here?