LTSV for Emacs
Emacs Lisp
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
images
tests
Makefile
README.md
ltsv.el
test-ltsv.el

README.md

ltsv.el

http://ltsv.org/

Introduction

ltsv.el provides LTSV parser and utility functions.

Interfaces

ltsv:parse-line parses string and return alist. You can pass want and ignore keyword parameters.

(ltsv:parse-line "hoge:foo\tbar:baz\ttime:20:30:58\n")
;; => (("hoge" . "foo") ("bar" . "baz") ("time" . "20:30:58"))

(ltsv:parse-line "hoge:foo\tbar:baz\ttime:20:30:58\n" :want '("time"))
;; => (("time" . "20:30:58"))

(ltsv:parse-line "hoge:foo\tbar:baz\ttime:20:30:58\n" :ignore '("bar"))
;; => (("hoge" . "foo") ("time" . "20:30:58"))

ltsv:parse-file parses specified file and return list of alist. You can pass keyword parameters same as ltsv:parse-line

If you pass following file to ltsv:parse-file((ltsv:parse-file "test.ltsv"))

hoge:foo    bar:baz
perl:5.17.8 ruby:2.0    python:2.6
sushi:寿司    tennpura:天ぷら  ramen:ラーメン  gyoza:餃子

then returns as below

((("hoge" . "foo") ("bar" . "baz"))
 (("perl" . "5.17.8") ("ruby" . "2.0") ("python" . "2.6"))
 (("sushi" . "寿司") ("tennpura" . "天ぷら") ("ramen" . "ラーメン") ("gyoza" . "餃子")))

Utility

ltsv:view-file pretty-prints specified LTSV file. And ltsv:view-buffer pretty-prints current-buffer like following screenshot.

screenshot