Skip to content

feat: view common non-Markdown file types #830

Description

@lukewilson2002

Problem

I’m using mdts to browse project documentation. Some Markdown documents link to related source files or other non-Markdown files.

Currently, opening those links can result in a blank page. I expected the file to either be previewed in the app or opened in my preferred editor.

Proposed Solution

When a user opens a non-Markdown file, mdts should render it on a best-effort basis instead of showing a blank page.

HTML files should be shown as source text, not rendered or executed.

File Tree Visibility

Add a setting or toggle to show non-Markdown files in the file tree.

When enabled, non-Markdown files should appear in the file tree and be openable in the viewer.

Rendering Behavior

Text-Based Files

Text-based files should render as read-only text.

Source files should:

  • Use syntax highlighting where available
  • Include line numbers
  • Preserve formatting and whitespace
  • Avoid executing or interpreting file contents

Images and Multimedia

Images should render inline, centered, and scaled to the available width while preserving aspect ratio.

Other multimedia files can be rendered on a best-effort basis.

Unsupported Files

Unsupported files should show a clear fallback message instead of a blank page.

Optionally, the fallback could include an action to open the file in the user’s preferred editor.

Acceptance Criteria

  • Non-Markdown files no longer open as blank pages.
  • Text-based files render as read-only text.
  • Source files include line numbers.
  • HTML files render as source text, not as web pages.
  • Images render inline in the viewer.
  • Unsupported files show a useful fallback message.
  • Users can optionally make non-Markdown files visible in the file tree.

Related

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions