mirror of https://github.com/containers/podman.git
				
				
				
			
		
			
				
	
	
		
			35 lines
		
	
	
		
			769 B
		
	
	
	
		
			Go
		
	
	
	
			
		
		
	
	
			35 lines
		
	
	
		
			769 B
		
	
	
	
		
			Go
		
	
	
	
| package goterm
 | |
| 
 | |
| import (
 | |
| 	"bytes"
 | |
| 	"text/tabwriter"
 | |
| )
 | |
| 
 | |
| // Tabwriter with own buffer:
 | |
| //
 | |
| //     	totals := tm.NewTable(0, 10, 5, ' ', 0)
 | |
| // 		fmt.Fprintf(totals, "Time\tStarted\tActive\tFinished\n")
 | |
| //		fmt.Fprintf(totals, "%s\t%d\t%d\t%d\n", "All", started, started-finished, finished)
 | |
| //		tm.Println(totals)
 | |
| //
 | |
| //  Based on http://golang.org/pkg/text/tabwriter
 | |
| type Table struct {
 | |
| 	tabwriter.Writer
 | |
| 
 | |
| 	Buf *bytes.Buffer
 | |
| }
 | |
| 
 | |
| // Same as here http://golang.org/pkg/text/tabwriter/#Writer.Init
 | |
| func NewTable(minwidth, tabwidth, padding int, padchar byte, flags uint) *Table {
 | |
| 	tbl := new(Table)
 | |
| 	tbl.Buf = new(bytes.Buffer)
 | |
| 	tbl.Init(tbl.Buf, minwidth, tabwidth, padding, padchar, flags)
 | |
| 
 | |
| 	return tbl
 | |
| }
 | |
| 
 | |
| func (t *Table) String() string {
 | |
| 	t.Flush()
 | |
| 	return t.Buf.String()
 | |
| }
 |