Git Product home page Git Product logo

Comments (4)

JakeWharton avatar JakeWharton commented on June 26, 2024 1

I'm going to keep this separate because it's about non-displaying characters which is significantly easier to handle.

from picnic.

JakeWharton avatar JakeWharton commented on June 26, 2024 1

I pushed a branch which has some tests that are Hard™.

Going to take a break for a week or so to just think on this in my idle time. This really destroys the current mechanism by which we create the table which is a 2x2 grid of characters that is treated somewhat like pixels in a bitmap. In this new world, a cell may need 18 characters of width to visually display only 5 characters. This has implications for how alignment works (especially when a single cell spans multiple lines).

I've found that 0x200C (zero-width non-joiner) can be used as a fill character that renders to nothing if we need to pad our text bitmap, but it basically solves no real problems. It's a solution for the second problem, and I haven't solved the first. How the hell we adapt rendering to accommodate what essentially blows up our square table. It would be great to not need this character though, but that then requires measuring every line individually.

from picnic.

fardavide avatar fardavide commented on June 26, 2024

Closing. Updated #19 in order to include this scenario, since they can be linked to the same root of the problem

from picnic.

JakeWharton avatar JakeWharton commented on June 26, 2024

I took a quick stab at this today. Fixing the measurement is easy. Unfortunately, as an effect, that means the column size changes which means the text area into which the string is written becomes smaller than the actual string.

This will require larger changes to how rendering works.

from picnic.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.