Van CSV naar tekstkolommen

Soms wilt u gegevens in leesbare kolommen weergeven zonder Markdown, HTML of een spreadsheet te gebruiken: een codeblok in de README, een rapport dat geschikt is voor de terminal, of een platte-tekst-e-mail aan een operationsteam. Deze converter leest CSV-invoer (of gescheiden door tab, puntkomma of pipe) en genereert kolommen die met spaties zijn opgevuld, waarbij elke cel wordt aangevuld tot de breedte van de breedste cel in die kolom. Het resultaat lijnt perfect uit in een monospace-lettertype.

Hoe de kolommen worden uitgelijnd

  1. 1

    Plak de gegevens

    Elk veelgebruikt scheidingsteken voor platte bestanden werkt: komma, tab, puntkomma of pipe.

  2. 2

    Kies de scheider

    Het hulpmiddel verwerkt tussen aanhalingstekens geplaatste cellen met de code `str_getcsv`, waardoor ingebouwde scheidingstekens binnen deze aanhalingstekens worden gerespecteerd.

  3. 3

    Kolombreedtes worden gemeten

    Voor elke kolom bepaalt de converter de breedste cel over alle rijen en slaat die op als doelbreedte.

  4. 4

    Cellen opgevuld met spaties

    Elke cel wordt rechts opgevuld tot de kolombreedte; de kolommen worden met twee spaties van elkaar gescheiden.

Waarom een monospace belangrijk is voor deze uitvoering

De uitlijning met ruimte tussen tekens werkt alleen wanneer alle tekens dezelfde breedte hebben. In proportionele lettertypen (Helvetica, Arial, de tekst in je blog) neemt een i minder horizontale ruimte in dan een M; hierdoor lijken de kolommen niet uitgelijnd, zelfs al heeft elke cel hetzelfde aantal ruimtetekens.

Waar het correct wordt weergegeven

  • Markdown-codeblokken ( ``` )
  • HTML-elementen <pre> en <code>
  • Terminaluitvoer, logbestanden
  • Rich-textvelden ingesteld op monospace (de meeste IDE’s, onderwerpen van Gitea)

Waar het kapot uit zal zien

  • Reguliere paragrafen in blogposten
  • Gmail en de meeste e-mailprogramma’s (ze gebruiken standaard verhoudingsfonten)
  • Slack-berichten buiten backticks
  • Platte tekstblokken in Notion

Alternatieven voor door mensen leesbare tekst

Gewenste uitvoer Te gebruiken tool
Webpagina CSV naar HTML-tabel
GitHub README CSV naar Markdown-converter
Spreadsheet CSV naar Excel
API-payload CSV naar JSON

Tips

  • Korte cellen winnen. Zeer lange waarden maken een kolom extreem breed. Kort lange tekst eerst in of laat deze afbreken door de uitvoer regel voor regel na te bewerken.
  • Uitlijnen met tabs is iets anders. Als u uitvoer met \t als scheidingsteken wilt om in een spreadsheet te plakken, sla dan dit hulpmiddel over en gebruik een gewone TSV-export; in de spreadsheet loopt de uitlijning toch mis.
  • Brede Unicode-tekens tellen anders. De converter meet met mb_strlen, dat codepunten telt. Dubbelbrede CJK-tekens zijn technisch breder dan hun aantal doet vermoeden en kunnen in sommige terminals visueel verschuiven.

Veelgestelde vragen

Het hulpmiddel vult cellen met ruimtetekens. In verhoudingsfonten neemt een i minder horizontale ruimte in dan een M; hoewel het aantal ruimtes correct is, stemmen de pixels niet overeen. Weergeef dit binnen een codeblok of stel de lettertypeinstelling op monospace.

Niet rechtstreeks: dit hulpmiddel gebruikt dubbele ruimtes als scheiders. Voor een uitgelijnde weergave gescheiden door pijpen, verwerk de gegevens daarna door de dubbele ruimte te vervangen door |; alternatief kunt u de CSV-to-Mar Markdown-converter gebruiken voor een tabel in GFM-stijl.

Missende cellen worden aangevuld met ruimtes tot de kolombreedte, zodat het resultaat rechthoekig blijft en netjes uitlijnt.

Ja, de tekst die u plakt, wordt naar onze server gestuurd zodat het hulpmiddel de kolommen kan uitlijnen. Hij wordt niet opgeslagen en niet aan de paginalink toegevoegd.

Gerelateerde tools