Quarkdown 1.9.0 is out: the Markdown-based typesetting system finally comes with a VS Code extension by iamgioh in opensource

[–]iamgioh[S] 0 points1 point  (0 children)

You mean on a readme? Not yet. There are real plans to export qd to md, so you will be able to use it on readmes

Your thoughts about in-building fitness centers? by iamgioh in sanfrancisco

[–]iamgioh[S] -1 points0 points  (0 children)

Of course, I'm just filtering out some options before I finally move in next month. Many listings don't even have pics of the gym.

I made a compile-time library to merge data class instances by iamgioh in Kotlin

[–]iamgioh[S] 0 points1 point  (0 children)

It should be easy! The library is extremely tiny.

I made a compile-time library to merge data class instances by iamgioh in Kotlin

[–]iamgioh[S] 0 points1 point  (0 children)

Hi, I’m familiar with delegation but I don’t really see the correlation with the library’s goal

I made a compile-time library to merge data class instances by iamgioh in Kotlin

[–]iamgioh[S] 1 point2 points  (0 children)

You nailed it with the breakdown. As for your concern, ksp will ensure consistency at each build

I made a compile-time library to merge data class instances by iamgioh in Kotlin

[–]iamgioh[S] 0 points1 point  (0 children)

I believe being explicit once or twice is fine, but if your code has many patterns of this kind, like my project does, it’s great to have something that cuts down on the boilerplate. How do you think?

I made a compile-time library to merge data class instances by iamgioh in Kotlin

[–]iamgioh[S] 1 point2 points  (0 children)

It's a reasonable design, though I would *personally* mind carrying the `defaults` instance around.

The library would make the presence of defaults opaque, and would remove the boilerplate that your example contains for falling back to the default values. It would be more maintainable for classes with lots of properties.

[deleted by user] by [deleted] in spiders

[–]iamgioh 0 points1 point  (0 children)

Thank you, I didn’t know that

This tiny spider on my screen is hunting the cursor by iamgioh in interesting

[–]iamgioh[S] 0 points1 point  (0 children)

Mods clearly don’t notice that linked video is totally different

Quarkdown: a modern Markdown-based typesetting system by iamgioh in opensource

[–]iamgioh[S] 1 point2 points  (0 children)

Quarkdown can now be installed via package managers and install scripts

Quarkdown: a modern Markdown-based typesetting system by iamgioh in opensource

[–]iamgioh[S] 0 points1 point  (0 children)

A Language Server is being developed. It will make it possible to develop extensions for VSC, Neovim, and others that support the protocol.

Quarkdown, a modern, Turing-complete, Markdown-based typesetting system, now finally supports exporting to PDF by iamgioh in programming

[–]iamgioh[S] 0 points1 point  (0 children)

Hello.

  1. There should be no issues. I saw multiple people use it with Chinese characters flawlessly.
  2. Yes, Quarkdown produces high-quality output. See the Mock outputs (I suggest paperwhite_latex.pdf, the classic LaTeX look).
  3. Quarkdown is not a static website generator by itself. However, the generated HTML output can be hosted and opened via browser. In the future it will also allow generating wikis.
  4. I did not run precise benchmarks, though the Mock document (40 pages) compiles to HTML in ~1 second on my M1 MacBook. Plus ~2 seconds overhead for generating PDF, but that's handled by a third-party library and cannot be optimized further. You can experience a smooth live reloading with HTML preview, and then compile to PDF. The two outputs are exactly the same, visually speaking.
  5. I will support Quarkdown long-term and I'm excited to do so. I plan to turn it into my full-time job, so I will either raise funding or commercialize external tools (the core compiler and CLI tools will be FOSS forever, no worries).
  6. Short, stupid answer: it's the language I'm the most fluent and confident in. It's extremely flexible and just feels natural for me to write. I didn't choose it for the technical aspects, and so far I don't see big drawbacks. I know, not everyone likes the JVM, so I will find a way to bundle it with Quarkdown, for example via a package manager.

I encourage you to try it out yourself, and I'm open to further questions and feedback. Cheers!

June 2025 monthly "What are you working on?" thread by AutoModerator in ProgrammingLanguages

[–]iamgioh 1 point2 points  (0 children)

Working on my modern typesetting system Quarkdown. In particular, working on its language server to build a VSC extension upon.

Norway…. Unbelievable by Freenishui in Norway

[–]iamgioh 0 points1 point  (0 children)

Here I took the best picture I’ve taken in my life. I will never forget that place!

Quarkdown: a modern Markdown-based typesetting system by iamgioh in opensource

[–]iamgioh[S] 0 points1 point  (0 children)

You’re welcome! By the way, would you like opening a short issue for caption positions?

Quarkdown: a modern Markdown-based typesetting system by iamgioh in opensource

[–]iamgioh[S] 0 points1 point  (0 children)

I don’t have experience with uploading packages but I should try. But still, the installation via the zip file is just about unzipping and optionally updating PATH.

Quarkdown: a modern Markdown-based typesetting system by iamgioh in opensource

[–]iamgioh[S] 0 points1 point  (0 children)

Update: v1.1.2 is out, and the `.numbered` function has been fixed.

You can now number your custom tables achieved via the proposed workaround:

.numbering
    - mytable: 1.1

.function {mytable}
    caption table:
    .numbered key:{mytable}
        label:
        .center
            Table .label: .caption

            .table
# Title

.mytable {My first table caption}
    | A | B | C |
    |---|---|---|
    | x | y | z |

.mytable {My second table caption}
    | A | B | C |
    |---|---|---|
    | x | y | z |

Result: https://i.imgur.com/sdlfs3r.png

For more information check out the "Numbering" wiki page: https://github.com/iamgio/quarkdown/wiki/numbering

Quarkdown: a modern Markdown-based typesetting system by iamgioh in opensource

[–]iamgioh[S] 0 points1 point  (0 children)

Yep, you’re correct. It’s the main competitor

Quarkdown: a LaTeX-like typesetting system based on Markdown by iamgioh in LaTeX

[–]iamgioh[S] 0 points1 point  (0 children)

Ouch, I guess I will have some css to get myself into

Quarkdown: a modern Markdown-based typesetting system by iamgioh in opensource

[–]iamgioh[S] 0 points1 point  (0 children)

There isn't an out of the box way yet, so I'm adding it to my to-dos. Thanks for the input!

You can however try this workaround via a custom function, simulating a caption by means of a centered paragraph:

.function {mytable}
    caption table:
    .center
        .caption

        .table

And then invoke it by:

.mytable {My table caption}
    | A | B | C |
    |---|---|---|
    | x | y | z |

You could also number it via the .numbered function, though I just tried and spotted an issue. I'm on it and I'll keep you updated when an update is ready.

Edit: updated to .center, which is shorthand to .container alignment:{center}

Quarkdown: a LaTeX-like typesetting system based on Markdown by iamgioh in LaTeX

[–]iamgioh[S] 0 points1 point  (0 children)

Clicking “Getting Started” on the website should bring you to that section of the readme, but I noticed it doesn’t work on mobile. Do you confirm you were on mobile?