Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up

Produces a string that represents slice data in a text table, inspired by gajus/table.

License

NotificationsYou must be signed in to change notification settings

modood/table

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

23 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Build StatusCoverage StatusGoDoc

Produces a string that represents slice of structs data in a text table, inspired by gajus/table.

Features:

  • No dependency.
  • Cell content aligned.
  • Column width self-adaptation
  • Support type of struct field: int, float, string, bool, slice, struct, map, time.Time and everything.
  • Support custom table header by declaring optional tag:table.(Thanks @skyfireitdiy)

Installation

$ go get github.com/modood/table

Quick start

package mainimport ("github.com/modood/table")typeHousestruct {Namestring`table:"Name"`SigilstringMottostring}funcmain() {hs:= []House{{"Stark","direwolf","Winter is coming"},{"Targaryen","dragon","Fire and Blood"},{"Lannister","lion","Hear Me Roar"},}// Output to stdouttable.Output(hs)// Or just return table string and then do somethings:=table.Table(hs)_=s}

output:

┌───────────┬──────────┬──────────────────┐│ Name      │ Sigil    │ Motto            │├───────────┼──────────┼──────────────────┤│ Stark     │ direwolf │ Winter is coming ││ Targaryen │ dragon   │ Fire and Blood   ││ Lannister │ lion     │ Hear Me Roar     │└───────────┴──────────┴──────────────────┘

Document

  • func Output(slice interface{})

    formats slice of structs data and writes to standard output.(Using box drawing characters)

  • func OutputA(slice interface{})

    formats slice of structs data and writes to standard output.(Using standard ascii characters)

  • func Table(slice interface{}) string

    formats slice of structs data and returns the resulting string.(Using box drawing characters)

  • func AsciiTable(slice interface{}) string

    formats slice of structs data and returns the resulting string.(Using standard ascii characters)

  • comparebox drawing characters withstandard ascii characters

    box drawing:

    ┌───────────┬──────────┬──────────────────┐│ Name      │ Sigil    │ Motto            │├───────────┼──────────┼──────────────────┤│ Stark     │ direwolf │ Winter is coming ││ Targaryen │ dragon   │ Fire and Blood   ││ Lannister │ lion     │ Hear Me Roar     │└───────────┴──────────┴──────────────────┘

    standard ascii:

    +-----------+----------+------------------+| Name      | Sigil    | Motto            |+-----------+----------+------------------+| Stark     | direwolf | Winter is coming || Targaryen | dragon   | Fire and Blood   || Lannister | lion     | Hear Me Roar     |+-----------+----------+------------------+

Contributing

  1. Fork it
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create new Pull Request

License

this repo is released under theMIT License.

About

Produces a string that represents slice data in a text table, inspired by gajus/table.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

[8]ページ先頭

©2009-2025 Movatter.jp