Socket
Socket
Sign inDemoInstall

column-layout

Package Overview
Dependencies
Maintainers
1
Versions
21
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

column-layout

Pretty-print JSON data in columns.


Version published
Weekly downloads
2.1K
decreased by-15.19%
Maintainers
1
Weekly downloads
 
Created
Source

view on npm npm module downloads Build Status Dependency Status js-standard-style

column-layout

Pretty-print JSON data in columns.

Synopsis

Say you have some data:

[
    {
      "column 1": "The Kingdom of Scotland was a state in north-west Europe traditionally said to have been founded in 843, which joined with the Kingdom of England to form a unified Kingdom of Great Britain in 1707. Its territories expanded and shrank, but it came to occupy the northern third of the island of Great Britain, sharing a land border to the south with the Kingdom of England. ",
      "column 2": "Operation Barbarossa (German: Unternehmen Barbarossa) was the code name for Nazi Germany's invasion of the Soviet Union during World War II, which began on 22 June 1941. Over the course of the operation, about four million soldiers of the Axis powers invaded Soviet Russia along a 2,900 kilometer front, the largest invasion force in the history of warfare. In addition to troops, the Germans employed some 600,000 motor vehicles and between 600–700,000 horses."
    }
]

pipe it through column-layout:

$ cat example/two-columns.json | column-layout

to get this:

The Kingdom of Scotland was a state in     Operation Barbarossa (German: Unternehmen
north-west Europe traditionally said to    Barbarossa) was the code name for Nazi
have been founded in 843, which joined     Germany's invasion of the Soviet Union
with the Kingdom of England to form a      during World War II, which began on 22
unified Kingdom of Great Britain in 1707.  June 1941. Over the course of the
Its territories expanded and shrank, but   operation, about four million soldiers of
it came to occupy the northern third of    the Axis powers invaded Soviet Russia
the island of Great Britain, sharing a     along a 2,900 kilometer front, the
land border to the south with the Kingdom  largest invasion force in the history of
of England.                                warfare. In addition to troops, the
                                           Germans employed some 600,000 motor
                                           vehicles and between 600–700,000 horses.

Columns containing wrappable data are auto-sized by default to fit the available space. You can set specific widths using --width

$ cat example/two-columns.json | column-layout --width "column 2: 55"
The Kingdom of Scotland was a  Operation Barbarossa (German: Unternehmen Barbarossa)
state in north-west Europe     was the code name for Nazi Germany's invasion of the
traditionally said to have     Soviet Union during World War II, which began on 22
been founded in 843, which     June 1941. Over the course of the operation, about
joined with the Kingdom of     four million soldiers of the Axis powers invaded
England to form a unified      Soviet Russia along a 2,900 kilometer front, the
Kingdom of Great Britain in    largest invasion force in the history of warfare. In
1707. Its territories          addition to troops, the Germans employed some 600,000
expanded and shrank, but it    motor vehicles and between 600–700,000 horses.
came to occupy the northern
third of the island of Great
Britain, sharing a land
border to the south with the
Kingdom of England.

More Examples

Read the latest npm issues:

$ curl -s https://api.github.com/repos/npm/npm/issues \
| array-tools pick number title updated_at user.login comments \
| column-layout
 8738  install: Run the "install"         2015-06-27T22:19:33Z  iarna
       lifecycle in the toplevel module
 8737  npm install (-g) (everything)      2015-06-27T22:15:52Z  DerekFoulk    2
       completely broken after upgrade
       to 2.12.0 [Windows]
 8736  node-gyp not executed on npm@3     2015-06-27T22:19:19Z  piranna       2
 8735  Graceful fs 4                      2015-06-27T21:12:57Z  isaacs
 8734  npm start failed dont get why its  2015-06-27T21:12:36Z  kashikhan1
       happened error windows_nt
       6.3.9600 error on npm start
 8733  npm install error "elliptic curve  2015-06-27T21:07:15Z  MF-Bra
       routines"
 8732  No clue what do                    2015-06-27T20:05:26Z  worldlynx
 8731  npm does not work on IPv6          2015-06-27T17:33:10Z  hobarrera
 8730  Pass module version on preversion  2015-06-27T17:11:57Z  zanona
       and postversion scripts.
 8729  problem installing cordova on      2015-06-27T14:28:35Z  axtens
       Windows
 8728  npm error                          2015-06-27T14:20:42Z  hyguyz
 8727  npm install error                  2015-06-27T13:40:56Z  wfgenius
 8726  Why can't I install the npm?       2015-06-27T17:37:51Z  PleasantPro   2
 etc.
 etc.

Install

As a library:

$ npm install column-layout --save

As a command-line tool:

$ npm install -g column-layout

API Reference

columnLayout(data, [options]) ⇒ string

Returns JSON data formatted in columns.

Kind: Exported function

ParamTypeDescription
dataarrayinput data
[options]objectoptional settings
[options.viewWidth]numbermaximum width of layout
[options.columns]columnOptionarray of column options
[options.padding]objectPadding values to set on each column. Per-column overrides can be set in the options.columns array.
[options.padding.left]string
[options.padding.right]string

Example

> columnFormat = require("column-format")
> jsonData = [{
    col1: "Some text you wish to read in column layout",
    col2: "And some more text in column two. "
}]
> columnFormat(jsonData, { viewWidth: 30 })
' Some text you  And some more \n wish to read   text in       \n in column      column two.   \n layout                       \n'

columnLayout.lines() ⇒ Array

Identical to column-layout with the exception of the rendered result being returned as an array of lines, rather that a single string.

Kind: static method of columnLayout
Example

> columnFormat = require("column-format")
> jsonData = [{
     col1: "Some text you wish to read in column layout",
     col2: "And some more text in column two. "
}]
> columnFormat.lines(jsonData, { viewWidth: 30 })
[ ' Some text you  And some more ',
' wish to read   text in       ',
' in column      column two.   ',
' layout                       ' ]

columnLayout~columnOption

Kind: inner typedef of columnLayout
Properties

NameTypeDescription
widthnumbercolumn width
maxWidthnumbercolumn max width
nowrapbooleandisable wrapping for this column
paddingobjectpadding options
padding.leftstringa string to pad the left of each cell (default: " ")
padding.rightstringa string to pad the right of each cell (default: " ")

© 2015 Lloyd Brookes <75pound@gmail.com>. Documented by jsdoc-to-markdown.

Keywords

FAQs

Package last updated on 19 Oct 2015

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc