memory heap
369 subscribers
2.53K photos
514 videos
52 files
3.11K links
science ∩ art = wonder

all memory blocks here are allocated by @a_v_p

GitHub: https://github.com/artyom-poptsov
Mastodon: https://fosstodon.org/@avp

https://memory-heap.org/~avp/
Download Telegram
#guile #scheme #lisp #dsv #csv

Добавил в утилиту dsv, которая идёт в составе Guile-DSV, поддержку указания формата для точек соединения "рамок" таблицы при печати.

Пример исходных данных:
$ cat data.csv 
root,x,0,0,root,/root,/bin/bash
daemon,x,1,1,daemon,/usr/sbin,/usr/sbin/nologin
bin,x,2,2,bin,/bin,/usr/sbin/nologin
sys,x,3,3,sys,/dev,/usr/sbin/nologin


Пример вывода от утилиты dsv в формате таблицы:
$ dsv -b "v=|,h=-,j=+" data.csv
root | x | 0 | 0 | root | /root | /bin/bash |
-------------+--------+--------+--------+-------------+----------------+------------------------+
daemon | x | 1 | 1 | daemon | /usr/sbin | /usr/sbin/nologin |
-------------+--------+--------+--------+-------------+----------------+------------------------+
bin | x | 2 | 2 | bin | /bin | /usr/sbin/nologin |
-------------+--------+--------+--------+-------------+----------------+------------------------+
sys | x | 3 | 3 | sys | /dev | /usr/sbin/nologin |
-------------+--------+--------+--------+-------------+----------------+------------------------+
Теперь Guile-DSV умеет форматировать таблицы так, чтобы они умещались в указанную ширину; содержимое ячеек делится на строки при необходимости. Ширина таблицы задаётся опцией --width (-w.)

Новая функция будет в следующем релизе, пока на свой страх и риск можете пробовать собрать Guile-DSV с ветви master.

В GNU Guix после клонирования репозитория можно установить Git-версию из guix.scm, находящегося в корне репозитория:
$ guix package -f guix.scm


#dev #projects #guile #dsv #csv #lisp
2