LINUX.ORG.RU

Релиз mtCellEdit 3.2 — свободный минималистичный редактор электронных таблиц (+ набор утилит)

 , , , ,


4

3

mtCellEdit (Ced, Mark Tyler's Spreadsheet Program) — свободный кроссплатформенный минималистичный редактор электронных таблиц, разрабатываемый Марком Тайлером, автором графического редактора mtPaint. Код программы написан на языках C и C++, а для построения графического интерфейса используется тулкит Qt4 (или Qt5, опционально).

Основные изменения:

  • /pkg/
    • Пропатчены скрипты сборки.
    • Подтверждена работа в новых дистрибутивах: Fedora 28, Ubuntu 18.04, CentOS 7.4, Manjaro 17.1.10.
  • /web/
    • Онлайн-документация теперь генерирурется автоматически.
  • libmtCelledit:
    • Добавлена функция факториала FACT(NUM).
  • libmtKit
    • Исправлен баг - mtkit_tree_duplicate().
  • libmtPixy
    • Проведён рефакторинг класса изображений.
  • Новые модули:
    • libmtDataWell
    • mtDWCLI

Стандартный формат документов для mtCellEdit — *.TSV.ZIP (набор текстовых файлов TSV, CSV и других внутри ZIP-архива; подобие ODF).

The default file format mtCellEdit uses is portable and transparent as it is a ZIP file containing TSV text files. I deliberately designed it this way so that data can be extracted and read by any modern spreadsheet program on any operating system without requiring mtCellEdit. Over the years I have been frustrated by binary and XML formats that make data only accessible via a single program (or by me wasting time manually converting each file, or by me writing a file format conversion program). This format ensures that my data never becomes stranded, and can be manipulated by whichever tool I choose for a particular job (i.e. spreadsheet programs, text editors, command line tools, etc).

Кроме mtCellEdit, в пакете исходного кода поставляется и набор разнообразных утилит:

  • mtCedCLI — интерактивный консольный редактор электронных таблиц. Набор функций, идентичный функциям mtCellEdit, но с CLI-интерфейсом (с использованием GNU readline).
  • mtCedUtils — набор консольных утилит для работы с текстовыми электронными таблицамми on text based spreadsheets (т.е. для работы с файлами TSV и CSV).
  • mtPixy — графический редактор растровой (пиксельной) графики и палитр. mtPixy можно использовать для создания PixelArt.
  • mtPixyCLI — интерактивный консольный редактор растровой (пиксельной) графики. Набор фукнций, идентичный функциям mtPixy, но с CLI-интерфейсом (с использованием GNU readline).
  • mtPixyUtils — набор консольных утилит для работы с файлами изображений.
  • mtRaft — графическая программа для анализа содержимого директорий.
  • mtDWCLI — интерактивная консольная программа для создания высококачественных рандомных данных, managing one time pads, шифрования/дешифрования файлов и использования стеганографии для хранения файлов внутри файлов PNG или FLAC (по принципу RARJpeg).
  • mtNetLog — очень простой консольный логгер сетевой активности.
  • mtRDC — консольная программа которая генерирует файлы со случайными данными (т.е. пароли, матрицы, and binary one time pads).
  • mtEleana — графическая программа для изучения результатов выборов в Соединённом Королевстве в период 1945-2015гг.

Также в пакете исходного кода в папке ../test/ поставляется и набор тестовых данных (примеры, скрипты и т.д.) для тестирования и демонстрации возможностей каждой из этих программ.

Отчёты об ошибках и свои пожелания пишите в багтрекер проекта на Github.

>>> Официальная веб-страница mtCellEdit (зеркало: 1, 2; блог; Twitter-аккаунт)

>>> Онлайн-руководство mtCellEdit

>>> Скриншоты

>>> Скачать исходный код и бинарные пакеты релиза (AppImage-пакет, Qt4-версия)

>>> Подробности

★★★★★

Проверено: Shaman007 ()

Любопытная программа.

Ещё более был бы актуален такой (даже ещё более минималистичный ) спредшит на андроиде — там всякие Excel/Calc будут смотреться очень громоздко, а табличные вычисления (пусть даже с сохранением в тупо csv-файл) бывают нужны.

hobbit ★★★★★ ()
Ответ на: комментарий от hobbit

Ещё более был бы актуален такой (даже ещё более минималистичный ) спредшит на андроиде — там всякие Excel/Calc будут смотреться очень громоздко

А ты посмотри как Excel или Google Spreadsheet смотрятся на Android (спойлер: хорошо), интерфейс адаптируется под размер экрана.

vyazovoi ★★ ()
Последнее исправление: vyazovoi (всего исправлений: 2)
Ответ на: комментарий от hobbit

mtCedCLI для Termux (Android)

Ещё более был бы актуален такой (даже ещё более минималистичный ) спредшит на андроиде

Ну, как бы, приложения на Qt4/Qt5 легко портируются под Android.

А наличие консольного варианта (mtCedCLI) намекает на то что можно попытатся собрать пакет для Termux ;-)
>>> https://github.com/termux/termux-packages/issues/2788

atsym ★★★★★ ()
Последнее исправление: atsym (всего исправлений: 1)

Годная программа. Конечно, qt и минималистичность слабо сочетаются.
Из ОП так и не понял: с файлами calc'a работать умеет?

anonymous ()

Есть ли какая-нибудь уберфича у этих электронных таблиц по сравнению с Calc? Ну например, неограниченная длина, да еще с быстрой обработкой.

praseodim ★★★ ()

«Минималистичность» видимо относится к количеству поддерживаемых функций, потому что Gnumeric умеет больше, а памяти ест меньше.

env ★★ ()

Набор фукнций идентичный функциям

простой консолный логгер

консолная программа

Проверено: Shaman007

Годы идут, ЛОР не меняется.

За новость спасибо. Давно ищу легкий редактор больших csv (Gnumeric окончательно испортили переходом на Gtk3, как по мне).

ShizuShidou ()
Ответ на: комментарий от ShizuShidou

Годы идут, ЛОР не меняется.

Пользователи всё так же продолжают постить в новостной тред сообщения об ошибках в тексте, вместо того чтобы сообщать об ошибках в спецтопик:
>>> www.linux.org.ru/forum/linux-org-ru/13815750

За указание на ошибки спасибо, уже исправил ;-)

Давно ищу легкий редактор больших csv (Gnumeric окончательно испортили переходом на Gtk3, как по мне).

Сам очень рад был обнаружить mtCellEdit в начале этого года, но тогда она ещё была неюзабельна. Порой надо обрабатывать CSV/TSV файлы, а возится с Gnumeric и LibreOffice Calc неохота, да и писать парсеры и визуализаторы на Python'е лень.

Теперь охотно изучаю возможности mtCellEdit (в идеале хочу освоить и консольный вариант — mtCedCLI).

Пару месяцев назад подсказал разработчику об AppImage — очень рад что он поддержал идею опакечивания mtCellEdit в AppImage.

atsym ★★★★★ ()
Последнее исправление: atsym (всего исправлений: 1)
Ответ на: комментарий от atsym

Gnumeric прибит гвоздями к GTK

Это проблема? Если да, то точно не для меня. У меня GTK софт как правило работает отзывчивее, чем Qt4/5.

Ну а консольная версия электронной таблицы (которая умеет меньше, чем Gnumeric) — это прям киллер-фича, ага.

env ★★ ()
Ответ на: комментарий от atsym

спецтопик

Там не то место, чтобы брюзжать по поводу Шомы. А вообще я просто поленился, каюсь.

рад был обнаружить mtCellEdit

Я его только что потыкал палочкой (AppImage-вариант). Табличка в 40Мб открывается раз в 10-15 быстрее, чем в LibreOffice. И оно довольно шустро по ней бегает и ищет. Единственное, что крайне не понравилось, это вот это:

mtCellEdit functions and formulas never return any text, so if cell r1c1 contains «text» and r1c2 contains «=r1c1» then «0» will be displayed in r1c2.

Ну твою мать, девочка, как же так?! Пока не полез в документацию, думал что это баг.

Впрочем, для сложной работы с текстом я всё равно Pyspread использую (как показала практика, намного проще написать функцию на python, чем ломать глаза о кучу вложенных условий в LO Calc).

ShizuShidou ()
Ответ на: комментарий от ShizuShidou

Пока не полез в документацию, думал что это баг.

Ткни и меня в документацию где описано это (я ещё не читал доки)

как показала практика, намного проще написать функцию на python, чем ломать глаза о кучу вложенных условий в LO Calc

С этим соглашусь, но порой бывает так неохота кодить а хочется простенького WYSIWG-like инструмента ;-)

В принципе, mtCellEdit можно использовать для всякой ежедневной рутины.

А вот для более серъёзной работы с CSV/TSV стоит расчехлить Python.

P.S.: LibreOffice в системе установленным уже не держу более года, а только храню AppImage-пакет для единичных случаев когда нужно оредактировать офисные документы.

atsym ★★★★★ ()
Последнее исправление: atsym (всего исправлений: 2)
Ответ на: комментарий от ShizuShidou

Ща глянем что у них там в репах.

Ты учти что я запускал AppImage сборку mtCellEdit.

AppImage-пакет может хранить свой стиль оформления Qt приложения, и системный стиль в таком случае игнорируется.

atsym ★★★★★ ()
Ответ на: комментарий от ShizuShidou

В AppImage сломан путь к докам.

TL;DR: Он не сломан, просто доки не включены в AppImage (свяжусь с разработчиком по этому поводу).

Если используешь AppImage пакет:

  1. Скачай исходники (документация уже там)
  2. Скопируй папку ./mtcelledit/handbook/en_GB/ куда либо на ПК, например в /home/myname/Documents/mtcelledit/handbook/en_GB/
  3. Запусти mtCellEdit и открой панель настроек программы «Menu -> Options -> Program Preferences...»
  4. В списке параметров найди строку с ключём Key = help_file и поменяй в этой строке значение Value = /usr/share/doc/mtcelledit-qt4/en_GB/chap_00.html — дважди кликнув по даной строке откроется окно файлового менеджера; найди расположение ранее скопированой документации и кликни на файле chap_00.html.
  5. Закрой окно параметров «Program Preferences» нажав кнопку «Close».
atsym ★★★★★ ()
Ответ на: комментарий от ShizuShidou

Запуск AppImage-пакета с указанием стиля Qt

У меня рисует стилем Windows.

Попробуй запустить из консоли так:

$ ./mtCellEdit*.AppImage -style fusion
P.S.: Немного о стилях Qt в AppImage-пакетах
>>> https://github.com/leozide/leocad/issues/131

atsym ★★★★★ ()
Ответ на: комментарий от ShizuShidou

https://github.com/matyler/mtCellEdit/tree/master/mtcelledit/handbook/en_GB > Chapter 4 > 4.1.3

Перечень всех функций в Appendix A.3.

Есть же онлайн-руководство

Ну твою мать, девочка, как же так?! Пока не полез в документацию, думал что это баг.

Но проблему и её решение я так и непонял пока. Можеш на пальцах объяснить что баг, а что не баг?

atsym ★★★★★ ()
Ответ на: Запуск AppImage-пакета с указанием стиля Qt от atsym

Так у меня ж нету четвертых культяпок откуда оно может подхватить системный стиль? Это не говоря о том, что в четвертом Qt стиля Fusion просто не было, емнип. Собственно, это вообще не проблема, если честно — мне просто тема на скриншоте понравилась.

А вот попросить разработчика вложить доки в контейнер, действительно стоит.

ShizuShidou ()
Ответ на: комментарий от ShizuShidou

Так у меня ж нету четвертых культяпок откуда оно может подхватить системный стиль?

Просто попробуй.

Это не говоря о том, что в четвертом Qt стиля Fusion просто не было, емнип.

Тогда вот так:

$ ./mtCellEdit*.AppImage -style cde
или
$ ./mtCellEdit*.AppImage -style motif

atsym ★★★★★ ()
Ответ на: комментарий от atsym

Никакой особой проблемы нет. Просто функции в mtCellEdit не умеют работать со строками и возвращать строковое значение. Возможно это будет реализовано позднее, возможно никогда. А удивило меня то, что все электронные таблицы которыми я пользовался (начиная с supercalc под dos) подобное умели.

ShizuShidou ()
Ответ на: комментарий от atsym

Это явно работает как-то по другому:

error_func: Argument ERROR! - num=1 arg=1/3 '-style'

попутно показывает попап:

+============ Error ===============+
| Unable to load project file: cde |
|             [Ok]                 |
+----------------------------------+

Тут есть какой-то ньюанс с передачей аргументов в AppImage.

Зато если поставить Qt4 и выбрать тему в старом-добром qtconfig, то всё работает как должно и системная тема подхватывается.

З.Ы. Теперь можно с чистой совестью вынести qt4 со всеми зависимостями, ибо нафиг не нужен.

ShizuShidou ()
Ответ на: комментарий от ShizuShidou

Тут есть какой-то ньюанс с передачей аргументов в AppImage.

Надо будет уточнить.

Но вот со AppImage-сборками LeoCAD всё работает! — $ ./LeoCAD*.AppImage -style motif (вместо motif можно и fusion, и cde указать и т.д.)
>>> https://github.com/leozide/leocad/blob/master/.travis.yml

atsym ★★★★★ ()
Ответ на: комментарий от atsym

На самом деле, в этом очень мало смысла, если не пытаться, конечно, на выходе получить электронные таблицы общего назначения. Сам посуди, придётся ведь реализовать ещё кучу функций для работы с текстом, а также поиска и логических. Иначе весь смысл теряется: максимум что ты сможешь, это переносить текст из одной ячейки в другую, ну может ещё объединять строки из разных ячеек.

А в итоге все равно получается такие же кошмарные формулы как в LO.

Нафиг. Пусть будет как есть, чисто для вычислений, маленькое и годное.

З.Ы. И посмотри все-таки, если не ранее этого не сделал на pyspread (он есть в репах дебиана). Возможность использовать в ячейке таблицы вообще любую функцию из python или дописать свою прямо в файле — дорогого стоит.

ShizuShidou ()
Ответ на: комментарий от thunar

Gnumeric развивается командой волонтёров больше десяти лет. За это время сменилась куча людей, а проект не просто жив, он продолжает обрастать фичами. А эта ваша наколенная поделка умрёт как только надоест автору. А про падения нужно репортить, сначала мейнтейнеру пакета, а потом в апстрим. А не сидеть на жопе ровно и надеяться, что само пройдёт. Это будет честнее, чем кидаться беспредметными претензиями на форуме.

env ★★ ()

Извини, я тут ссылок накину

http://visidata.org/

VisiData is an interactive multitool for tabular data. It combines the clarity of a spreadsheet, the efficiency of the terminal, and the power of Python, into a lightweight utility which can handle millions of rows with ease.

Остальное ncurses

https://github.com/andmarti1424/sc-im

https://github.com/blippy/neoleo

https://github.com/aksr/mange

greenman ★★★★★ ()
Ответ на: комментарий от env

У приложений на GTK3 (GTK2 уже закопали) по умолчанию неимоверно ущербный интерфейс, от отвратности которого сильно офигеваешь. Для исправления этой проблемы надо вообще выкинуть GTK (что проще), либо наколхозить кастомный GUI (мало кто захочет это делать). Так что отсутствие GTK - это уже киллер-фича.

Quasar ★★★★★ ()
Ответ на: комментарий от env

Gnumeric развивается командой волонтёров больше десяти лет. За это время сменилась куча людей, а проект не просто жив, он продолжает обрастать фичами.

При этом им мало кто пользуется по причине наличия LibreOffice с одной стороны и специализированных решений - с другой. Я не сомневаюсь, что gnumeric возможно использовать, вот только сейчас он неактуален. Сабж работает быстрее, а LO Calc функциональнее.

А эта ваша наколенная поделка умрёт как только надоест автору.

Опенсорс не даст умереть ей пока есть спрос. Да и эта «наколенная поделка» качественнее.

А про падения нужно репортить

Не надо репортить про падения программы, реального интереса к которой нет. А если софтина ещё и на GTK, то даже при небольшом интересе не надо репортить баги.

Это будет честнее, чем кидаться беспредметными претензиями на форуме.

Претензии очень даже предметные. И эти претензии - прямые обоснования, почему gnumeric не нужен.

Quasar ★★★★★ ()
Последнее исправление: Quasar (всего исправлений: 1)