Convert between positions (line and column-based) and offsets (range-based) locations in a virtual file.
npm:
npm install vfile-location
var vfile = require('vfile')
var vfileLocation = require('vfile-location')
var location = vfileLocation(vfile('foo\nbar\nbaz'))
var offset = location.toOffset({line: 3, column: 3}) // => 10
location.toPosition(offset) // => {line: 3, column: 3, offset: 10}
location = vfileLocation(doc)
Get transform functions for the given doc
(string
) or file
.
Returns an object with toOffset
and toPosition
.
location.toOffset(position)
Get the offset
(number
) for a line and column-based position
in the bound file.
Returns -1
when given invalid or out of bounds input.
location.toPosition(offset)
Get the line and column-based position
for offset
in the bound
file.
See contributing.md
in vfile/.github
for ways to
get started.
See support.md
for ways to get help.
This project has a code of conduct. By interacting with this repository, organization, or community you agree to abide by its terms.