LINUX.ORG.RU

Избранные сообщения be_nt_all

GnuCash 4.0

Новости — Open Source
Группа Open Source

Вышла версия 4.0, широко известной программы для финансового учёта (доходы, расходы, банковские счета, акции) GnuCash. Она имеет иерархическую систему счетов, может разбивать одну транзакцию на несколько частей, напрямую импортировать данные счетов из интернета. Базируется на профессиональных принципах бухгалтерского учёта. Поставляется с набором стандартных отчётов и позволяет создавать свои собственные отчёты, как новые, так и видоизменённые из поставленных.

Существенные изменения включают в себя инструмент командной строки для выполнения ряда функций вне графического интерфейса, поддержку кредиторской и дебиторской задолженности, улучшения перевода и многое другое.

( читать дальше... )

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

 ,

cocucka
()

NetSurf 3.10

Новости — Интернет
NetSurf 3.10
Группа Интернет

24 мая вышла новая версия NetSurf — быстрого и легковесного веб-браузера, ориентированного на слабые устройства и работающего, помимо собственно GNU/Linux и других *nix, на RISC OS, Haiku, Atari, AmigaOS, Windows, а также имеющего неофициальный порт на KolibriOS. Браузер использует собственный движок и поддерживает HTML4 и CSS2 (HTML5 и CSS3 на ранней стадии разработки), а также JavaScript (ES2015+; DOM API реализован частично).

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

  • Переработан интерфейс GTK.

  • Улучшена обработка таймаутов, аутентификации и сертификатов.

  • JS-движок Duktape обновлён до версии 2.4.0; также добавлено много новых JS-биндингов.

  • Добавлена базовая поддержка HTML5-элемента canvas (пока доступна только работа с ImageData).

  • Улучшена обработка юникода, в частности исправлено отображение многобайтовых (в т.ч. русских) символов в Windows.

  • Множество других мелких изменений.

Полный список изменений

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

 ,

andreymal
()

Падает Gimp

Форум — General

Ситуёвина такая. Понадобился Gimp 2.10. Слака 14.2, но за несколько лет половину либ обновлял с каррента. Гимп работал точно, правда, где-то месяцев 7 не запускал. И тут при запуске стал падать. Говорит что:

GEGL-Message: Ошибка загрузки модуля '/usr/lib64/gegl-0.4/ff-load.so': /usr/lib64/libswscale.so.4: version `LIBSWSCALE_4' not found (required by /usr/lib64/gegl-0.4/ff-load.so)
GEGL-Message: Ошибка загрузки модуля '/usr/lib64/gegl-0.4/ff-save.so': /usr/lib64/libswscale.so.4: version `LIBSWSCALE_4' not found (required by /usr/lib64/gegl-0.4/ff-save.so)
gimp: fatal error: Ошибка сегментирования
Что за LIBSWSCALE_4, можно ли оживить?

 , ,

gnu_linux
()

Cor - алтернативная ООП система для Perl

Новости — Разработка
Группа Разработка

По ссылке сравнение Cor и Moose. Пример кода:

class Point {
    has ( $x, $y ) :reader :writer :new :isa(Int);

    method clear () {
        ( $x, $y ) = ( 0, 0 );
    }
}

class Point3D isa Point {
    has $z :reader :writer :new :isa(Int);

    method clear () {
        $self->next::method;
        $z = 0;
    }
}

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

 ,

perl5_guy
()

Как убрать httpd из автозапуска slackware?

Форум — General

Надоело постоянно выключать apache, чтобы потом включить nginx.

 , ,

Nikidze
()

Почему возникает ошибка при компиляции php? - решено

Форум — General

Добрый день! Я пытаюсь установить php-7.4.6 на Slackware 14.2 При компиляции получаю ошибку:

/tmp/php-7.4.6/ext/imap/php_imap.c:5084:22: ошибка: несовместимые типы для «mm_login»
PHP_IMAP_EXPORT void mm_login(NETMBX *mb, char *user, char **pwd, long trial)
                      ^
In file included from /usr/local/lib64/c-client/include/c-client.h:41:0,
                 from /tmp/php-7.4.6/ext/imap/php_imap.h:52,
                 from /tmp/php-7.4.6/ext/imap/php_imap.c:48:

 , ,

Nikidze
()

Tcl/Tk. Альтернативный диалог выбора файлов для платформ Linux и Android

Новости — Разработка
Группа Разработка

Сегодня скриптовый язык Tcl/Tk используется не только на компьютерах, но и с успехом портирован на платформу Android. Но именно на этой платформе стали особенно видны все недостатки диалога выбора файлов tcl/tk (tk_getSaveFile, tk_getOpenFile или tk_chooseDirectory).

Что не устраивает в этом диалоге? Отсутствие в нем элементарных операций с папками/файлами: создать, уничтожить, переименовать. Нет, не подумайте, в самом tcl все эти механизмы, естественно, реализованы, их просто нет в GUI диалога. В Linux это не так заметно, а вот на платформе Android этот диалог вызывает массу неудобств.

В итоге была создана балалайка (так еще называют пакеты/package для tcl) tkfe (tk file explorer).

При разработке пакета tkfe учитывались не только необходимость хотя бы элементарных операций с файлами/каталогами, но и желание иметь проводник как в отдельном окне, так и в отдельном фрейме, который пользователь может разместить как ему удобно в своем GUI.

В проекте имеется комплексный пример по использованию пакета. Естественно, этот диалог можно также использовать и на других платформах. Не составляет также труда перенести его на Python/TkInter.

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

 , , tcltk, ,

TclTk
()

VisOpSys 0.9

Новости — Open Source
VisOpSys 0.9
Группа Open Source

Тихо и незаметно увидела свет версия 0.9 любительской системы Visopsys (Visual Operating System) которая пишется одним человеком (Andy McLaughlin).

Из нововведений:

  • Обновленный внешний вид
  • Расширенные сетевые возможности и связанные с ними программы
  • Инфраструктуру упаковки / загрузки / установки / удаления программного обеспечения с онлайн репозиторием
  • Поддержка HTTP, Библиотеки XML и HTML, поддержка некоторых потоков C ++ и POSIX (pthreads), pipes для межпроцессного взаимодействия и дополнительные алгоритмы хеширования.
  • Добавлена ​​сеть TCP
  • Добавлен DNS-клиент
  • Сеть теперь включена по умолчанию во время загрузки
  • Добавлена ​​программа Packet Sniffer («netsniff») для проверки входящих и исходящих сетевых пакетов
  • Добавлена ​​программа «Сетевые подключения» («netstat») для отображения текущих сетевых подключений и состояния TCP, если применимо
  • Добавлена ​​базовая клиентская программа Telnet и библиотека протокола; в основном для тестирования и валидации TCP, хотя протокол имеет и другое применение
  • Добавлена ​​поддержка широких и многобайтовых символов (UTF-8) во всей ОС
  • Добавлена ​​программа «Программное обеспечение» для подключения к репозиторию программного обеспечения по адресу visopsys.org, который может отображать списки доступных и установленных пакетов, а также устанавливать и удалять их.
  • Существующая оконная оболочка преобразована в программу пользовательского пространства, при этом сохранена оболочка в ядре. В будущем планируется создать совершенно новую оконную оболочку и предоставить пользователю выбор между оболочкой в юзерспейсе и оболочкой встроенной в ядро.
  • Добавлена ​​интеграция с мышью VMware, так что гость Visopsys координирует свою работу с хостом, чтобы автоматически захватывать или убирать курсор мыши, когда он входит или выходит из окна. Требует, чтобы опция была включена в VMware.
  • Добавлена начальная поддержка POSIX Threads (pthreads) (libpthread) для переносимости программного обеспечения.
  • В ядро ​​добавлена ​​реализация хеширования SHA1 и программы командной строки sha1pass (хэширует строковые параметры) и sha1sum (хэширует файлы), которые его используют.
  • В ядро ​​добавлена ​​реализация хеширования SHA256 и обновлено хеширование паролей пользователей с MD5 до SHA256. Также добавлены программы командной строки sha256pass (хэширует строковые параметры) и sha256sum (хэширует файлы), которые его используют.

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

 ,

liss21
()

Вышел Crystal 0.34.0

Новости — Разработка
Группа Разработка

Вышла новая версия Crystal, компилируемого языка программирования с синтаксисом Ruby, главные особенности которого — рантайм с «вмонтированным» event loop’ом, в котором все операции ввода-вывода асинхронны, поддержка многопоточности (пока включается флагом при компиляции) и исключительно простая и удобная работа с библиотеками на Си.

Начиная с версии 0.34.0, язык официально начинает твёрдой поступью двигаться в сторону первого настоящего релиза (т.е. версии 1.0).

В новой версии Crystal можно отметить следующие изменения и улучшения в порядке их важности:

  • В API добавлена новая библиотека журналирования Log, которая, в отличие от старой, умеет направлять сообщения в разные бекенды и по-разному эти сообщения фильтровать в зависимости от «источника».

  • Рудименты из мира разработки на Си, Errno и WinError, использовавшиеся для примитивов ввода-вывода, уходят в прошлое благодаря иерархии исключений IO::Error (впрочем, использовать Errno никто пока не запрещает).

  • Убрана автоматическая подстановка else nil из оператора case/when/else. Это сделано для того, чтобы исключить случайный пропуск разработчиком одной из веток when при матчинге по детерминированным случаям наподобие enum’ов и прохода по типам из Union’а. Т.е., проще говоря, вот такой код больше работать не будет без указания ещё одного when (when Char) или задания else-ветки:

a = 1 || 'x' || "foo"
case a
when Int32
  # ...
when String
  # ...
end
  • Опция компилятора disable_overflow больше недоступна. Для операций с переполнением используйте методы &+, &-, &*.

  • Array#fill теперь летает быстрее пули, благодаря замене туповатого цикла на один простой memset;

  • Менеджер шардов (пакетов), называющихся, как это ни парадоксально, shards, теперь использует более быстрый и эффективный алгоритм удовлетворения зависимостей Molinillo, подсмотренный в CocoaPods (Swift) и Builder (Ruby).

  • Добавлена поддержка LLVM 10, что по идее даст нам некий рост производительности, стабильности, etc.

… и множество других, на мой субъективный взгляд, менее существенных улучшений.

Хотелось бы отметить, что Crystal — это построенный на LLVM язык, позволяющий писать приложения порой быстрее, проще и лаконичнее, чем на его интерпретируемых «собратьях», и при этом получать на выходе довольно шустрый бинарник. На фоне Golang выделяется абсолютно полноценным ООП, поддержкой дженериков и очень простым и понятным синтаксисом. По своему назначению во многом аналогичен Nim, но при этом явным образом ориентирован на практическое применение «здесь и сейчас», благодаря чему имеет в своём API-арсенале множество нормально документированных удобных и качественных инструментов, поддерживаемых разработчиками языка и потому весьма стабильных.

>>> Анонс в блоге Crystal

 , ,

DRVTiny
()

Перегрузка методов с наследованием C++

Форум — Development

Допустим есть класс:

struct Base{
    void operator +=( int i ){}
};

И мы от него наследуемся с перегрузкой оператора:

struct Dirived : public Base{
    void operator +=( float f ){}
};

При создании объектов типа Dirived, опреатор из класса Base будет не доступен. Если его не перегружать, то все хорошо. Напомните плиз как сделать оба их видимыми. Вроде как-то через using можно было вытащить оператор из Base.

Такой код не работает:

struct Dirived : public Base{
    using void Base::operator +=( int i );
    void operator +=( float f ){}
};

 ,

SR_team
()

Вышел четвёртый том книги А.В.Столярова «Программирование: введение в профессию»

Новости — Документация
Группа Документация

На сайте А.В.Столярова объявлено о выходе четвёртого тома книги «Программирование: введение в профессию». Электронная версия книги размещена в открытом доступе.

Четырёхтомник «Введение в профессию» охватывает основные этапы обучения программированию от азов школьной информатики (в первом томе) до тонкостей устройства операционных систем (в третьем томе), объектно-ориентированного программирования и других парадигм (в четвёртом томе). Весь курс обучения рассчитан на применение свободного программного обеспечения, в том числе систем семейства Unix (включая Linux).

Четвёртый, заключительный том серии вышел под общим заголовком «Парадигмы». Он посвящён возможным стилям программистского мышления, отличным от императивного. Рассматриваются такие языки, как Си++ (для иллюстрации объектно-ориентированного программирования, абстрактных типов данных и обобщённого программирования), Лисп и Scheme, Пролог, Хоуп (Hope). В качестве примера командно-скриптового языка приведён Tcl. В части, посвящённые Си++ и Tcl, включены главы о графических интерфейсах пользователя (с помощью соответственно FLTK и Tcl/Tk). Книга заканчивается обсуждением интерпретации и компиляции как самостоятельных парадигм, отмечаются ограничения на применение интерпретируемого исполнения, а равно и ситуации, в которых оно уместно и желательно.

Деньги на написание и издание книги были собраны в режиме краудфандинга; сам проект продолжался более пяти лет.

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

 , ,

anonymous
()

TDE/Trinity 14.0.7/14.0.8/14.0.9 for Slackware

Форум — Desktop

TDE/Trinity 14.0.7/14.0.8/14.0.9 for Slackware 14.2/14.2+ / сборка от русских физиков

Ноги, крылья… Главное — хвост!

- TDE 14.0.9 for Slackware      14.2/14.2+
- TDE 14.0.8 for Slackware 14.1/14.2/14.2+
- TDE 14.0.7 for Slackware      14.2/14+

описание сборки, установка, настройка в текстовом файле

tag: slackware tde trintiy desktop

TDE

Slackware pkg

 , , ,

sunjob
()

XDG_RUNTIME_DIR прибили гвоздями? ваши мысли?!

Форум — Admin

добрый день

до Slackware 14.2+ не было никаких проблем :о)

переопределял для себя «кастомные» каталоги XDG_xxx - на RAM-DISK типа:

export XDG_RUNTIME_DIR=$RAM_DISK/.var/run
export  XDG_CACHE_HOME=$RAM_DISK/.var/cache

в Slackware 14.2+ выяснилось то, что значение переменной XDG_RUNTIME_DIR игнорируется и системой под эти цели принудительно используется каталог:

/var/run/user/$ID

причем, если оставить «старое кастомное переопределение», то

KDE4/5 - будет игнорировать эту настройку и просто принципиально юзать «новый стандарт каталога»

/var/run/user/$ID

а вот TDE-14.0.7 будет честно пытаться использовать «кастомную настройку»

XDG_RUNTIME_DIR=$RAM_DISK/.var/run
а т.к. «вся система» использует «другой каталог» то рабочий стол TDE начинает тупить, глючить и выеживаться, причем, сообщения ошибок «неочевидны» и говорят, типа "... DCOP <blah-blash-blah> ..."

причем, по умолчанию каталог

/var/run
находится на HDD, а не на «подобной» /dev/shm, что ВООБЩЕ не есть гуд

...

понятное дело, бодаться в лоб я не стал, использую «так как есть», и то, что «я чё-та да не знаю, Ё!»

но, хотелось бы услышать ваши мнения, идеи, все что думаете по этому поводу и, особенно, по поводу «а нахрена так делать?!» :о)

короче, просто поболагурим на «тему»

спасибо

p.s. уточняю, мне непонятно (больше всего волнует) не то, что TDE глючит, а почему весь мир/все остальные принудительно, как по договоренности игнорируют XDG_RUNTIME_DIR :o)

 

sunjob
()

ttf-parser 0.5 — новая библиотека для работы с TrueType шрифтами

Новости — Open Source
Группа Open Source

ttf-parser — это библиотека для разбора TrueType/OpenType шрифтов. В новой версии появилась полноценная поддержка переменных шрифтов (variable fonts) и C API, вследствие чего я решил прорекламировать её на лоре.

До недавнего времени, если была необходимость работы с TrueType шрифтами, было ровно два варианта: FreeType и stb_truetype. Первый является огромным комбайном, второй поддерживает довольно небольшое количество функций.

ttf-parser находится где-то посредине. Он поддерживает все те же TrueType таблицы (формат TrueType состоит из множества отдельных бинарных таблиц) что и FreeType, но не занимается отрисовкой самих глифов.

При этом, ttf-parser содержит множество других значительных отличий:

  1. ttf-parser написан на Rust без использования unsafe. FreeType и stb_truetype написаны на C.
  2. ttf-parser является единственной безопасной (memory-safe) реализацией. Чтение произвольной памяти невозможно. Во FreeType постоянно исправляют уязвимости, а stb_truetype в принципе не предназначен для чтения произвольных шрифтов.
  3. ttf-parser является единственной thread-safe реализацией. Все методы парсинга константны. Единственным исключением является задание координат для переменных шрифтов, но эта функция reentrant. FreeType в принципе однопоточный. stb_truetype - reentrant (можно использовать отдельные копии в разных потоках, но не одну из множества).
  4. ttf-parser является единственной реализацией не использующей аллокации в «куче». Это позволяет ускорить разбор и избежать проблем при OOM.
  5. Также, почти все арифметические операции и приведение числовых типов проверяются (в том числе статически).
  6. В самом худшем случае библиотека может бросить исключение. При этом в C API исключения будут перехвачены и функция вернёт ошибку, но не упадёт.

И несмотря на все гарантии безопасности, ttf-parser также является и самой быстрой реализацией. Например разбор CFF2 в 3.5 раза быстрее чем в FreeType. Разбор glyf тем временем на 10% медленнее чем в stb_truetype, но это из-за того, что он не поддерживает переменные шрифты, для реализации которых требуется хранить доп. информацию. Больше подробностей в README.

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

 ,

RazrFalcon
()

Lazygit — псевдографический консольный клиент для Git

Новости — Open Source
Lazygit — псевдографический консольный клиент для Git
Группа Open Source

Если у вас есть проблемы с восприятием основных моментов в работе с Git-репозиторием из консоли, то вы всегда можете воспользоваться графическим клиентом. Один из них - Lazygit, псевдографический клиент, написанный на языке Go с использованием библиотеки gocui.

В официальном описании программы автор описывает, как трудно бывает понять, что и как нужно сделать в гите, если там больше одной ветви или коммита, и как хорошо при этом помогает разобраться его клиент. Думаю, что описывать все возможности программы нет смысла, так как что еще можно сказать про гит, кроме как «позволяет коммитить, мержить и так далее»?

Просто посмотрите на картинку с примером работы и все вопросы отпадут сами собой.

>>> Библиотека gocui (BSD 3-Clause «New» or «Revised» License)

>>> Обучающее видео

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

 , lazygit

Zhbert
()

Common Lisp VS Racket

Форум — Development

Комрады. Очень давно тыкал в Cl/SBCL, не так давно написал пару сервисов для этого вашего web’a на Racket.

Вопрос - Common Lisp VS Racket, что более живо для написания web’a, что имеет больше батареек, какая IDE лучше (кроме Emacs), etc.

 , , ,

silver-bullet-bfg
()

Навелосипедил квадратные скобки в лиспе

Форум — Development

Тащемто, для полного счастья в bike, кроме прочего, не хватало ридер-макросов, которые бы уменьшали количество круглых скобок, квотирования и прочего текста при вызове дотнета.

Тащемто теперь есть. Вот так можно вызывать методы:

(use-namespace 'System)

[:Console WriteLine "Hello, World!"]

Вот так можно получить текущее время в стринге: (ни одной круглой скобки! может это tcl/tk?)

[[:DateTime %Now] ToString]

А вот так получить значение максимального int32, из специального статического поля соответствующего класса:

[:int $MaxValue]

Более того, можно стучаться в индексеры дикшнрей и прочих объектов, даже круче чем в Clojure:

(let ((dict (new '(Dictionary :string :string))))
  (setf #[dict "Hello"] "World!")
  dict)

И создавать Enum-ы не обременяя себя расставлением запятых:

(use-namespace 'System.Reflection)

#e(BindingFlags Public Static)

На закуску, для любителей ковыряться в байтах, добавил и такую возможность, прямо как в C# только лучше:

(use-namespace 'System.Text)

(let ((dotnet-array [[:Encoding %UTF8] GetBytes "Hello, World!"]))
  (with-fixed (raw-pointer dotnet-array)
   (cffi:mem-ref raw-pointer :uint8)))
;; ==> 72

Не хватает батареек? Тогда мы идем к вам!

 , , ,

lovesan
()

OmegaT – система автоматизированного перевода

Галерея — Скриншоты

Когда-то я переводил прямо в текстовом редакторе/процессоре, предложение за предложением замещая оригинал переводом. Некоторые так делают до сих пор. Или открывают в одном окне документ заказчика с замысловатым форматированием, а в соседнем – печатают перевод. Недостатков у такого подхода множество:

  • повторы, частичные и полные, (допустим, в пачке должностных инструкций) утомляют или поиском и копипастой, или перепечаткой одного и того же (причем формулировки то и дело плывут там, где крайне желательно постоянство);
  • постоянная копипаста в словари и системы машинного перевода утомляет и отвлекает;
  • сложно следить за постоянством терминологии;
  • сложно сохранять форматирование;
  • то и дело возникают ошибки (в том числе, самые непростительные – пропуски), которые сложно уловить и исправить;
  • в целом сложнее за всем уследить, и правило 7±2 в итоге бьет по скорости или по качеству;
  • если переводчик работает, словно в век пишмашинок, агентству или заказчику приходится потом самостоятельно форматировать перевод.

Использование автоматизированного перевода только кажется сложным. На самом деле, я просто установил OmegaT, настроил внешний вид и стал работать, понемногу настраивая все остальное. В репах обычно устаревшие версии, поэтому лучше ставить сборку с официального сайта в /opt/, стабильную или бету. На Open JRE поддерживается меньше функций, и Oracle JRE предпочтительна. Я не хочу ставить Oracle JRE в систему, поэтому скачиваю сборку с ней.

Интерфейс

На скриншоте вы видите роман Д. Г. Лоуренса «Сыновья и любовники» в процессе перевода, который я делаю в свободное время, – еще без литературной правки. Итак, пройдусь подробнее по вкладкам/окнам/областям (всё это перетаскивается и преобразуется одно в другое).

Editor – я люблю видеть оригинал и перевод одновременно. Еще люблю, когда неуникальные сегменты менее контрастны. Автоматическую подстановку частичных совпадений отключаю: ее можно проглядеть и оставить сегмент без редактуры. Вставляю вручную, по хоткеям. Также люблю автодополнение: оно здесь куда более интеллектуальное, чем в LibreOffice.

Dictionary – я кладу мягкие ссылки на словари в каталог ./dictionaries/ проекта. OmegaT парсит сегмент и подгружает словарные статьи в эту область. Словари лучше не добавлять все сразу, а выбирать под проект, особенно если в компьютере крутится HDD. Словари – моя самая частая причина желать SDD.

Когда локальных словарей недостаточно, помогает внешний поиск, который я тоже настроил под себя. Threesome – так мой внутренний гусар прозвал Multitran, ReversoContext и Linguee, открываемые в трех разных вкладках браузера. Эта троица идеальна, когда нужно разыскать словосочетание или увидеть переводы в контексте. Oxbridge – это связка из Oxford Dictionary и Cambridge Dictionary: иногда единственный способ перевести адекватно – это подобрать слово под определение.

Glossary – сюда можно добавлять термины или, в случае художественной или исторической литературы, имена героев и названия локаций, историзмы. Иногда глоссарии предоставляет заказчик. Бывает, что пригождаются глоссарии из предыдущих проектов.

Fuzzy Matches почти бесполезны для художественной прозы, но здорово экономят время при переводе документов. Здесь появляются повторы не только из текущего проекта, но и из добавленных файлов памяти перевода. Их можно взять из собственных проектов или сгенерировать встроенным Aligner’ом из оригинала и перевода.

Machine Translation – я использую Яндекс, IBM Watson, Google, MyMemory. Качество работы всех четырех зависит от темы и стиля оригинала, но в большинстве случаев выбрать лучший машинный перевод, отредактировать его – проще и быстрее, чем набирать с нуля. Например, Watson неплохо натаскан на IT и новости, MyMemory и Google – на договоры. Если знать и понимать переводческие трансформации, документы в итоге переводятся даже качественнее, чем вручную. Но в случае художественного перевода сюда лучше заглядывать лишь изредка: машинный перевод имеет свойство тихо и незаметно отравлять стиль. Отдельно стоит упомянуть MyMemory (human) – это временами полезный поиск похожих переводов по базе соответствующей компании.

Notes, Multiple Translations использую крайне редко. Comments, Segment Properties отключил бы вообще, но такой возможности нет.

Польза автоматизации

В среднем в OmegaT работается раза в три быстрее, чем без специализированного софта. Программа генерирует итоговые файлы, в которых достаточно лишь перепроверить верстку и правописание. А заказчики ценят эквивалентность и адекватность.

Чего не хватает? Например, вменяемого токенизатора (анализатора морфологии). Словари и глоссарии либо воспринимают слово только в начальной форме, либо находят все однокоренные. Не помешал бы и встроенный или облачный транслитератор/транскриптор с разными вариантами преобразования. Желательно, умеющего работать с вырожденными случаями, так чтобы для ‘Mao Zedong’ предлагался в том числе ‘Мао Цзедун’. В принципе, это повод самому научиться писать скрипты и плагины.

 , , omegat, ,

Bagrov
()

Состоялся релиз Pygments 2.6.1

Новости — Open Source
Состоялся релиз Pygments 2.6.1
Группа Open Source

Состоялся релиз Pygments 2.6.1. Pygments — это библиотека для Python'а и утилита командной строки для подсветки исходного кода. Pygments используют, например, Wikipedia, BitBucket и Progopedia. На выходе получаются следующие форматы: HTML, LaTeX, RTF, подсветка через ANSI-последовательности (в консоли).

( читать дальше... )

>>> Скачать

 pygments, ,

saahriktu
()

ВИDный «десктоп» без Systemd

Галерея — Скриншоты

Я вас категорически приветствую!

Дело было вечером, делать было нечего. Как говорится, когда коту нечего делать... Вот и я от безделья решил, преисполненный чьими-то «горячими» чувствами к Systemd (нечего было на ночь ЛОР читать!), что-то с этим сделать. Сделал. Накатил Artix (тот же Arch, только система инициализации на выбор и os-prober не «завёлся»), поставил нужное мне ПО:

  • ядро Zen, ибо привычка под «арчем» ставить — в этом ядре встроен нужный «стиму» фикс;
  • runit, ибо OpenRC не такой экзотический (отсюда и тег «хочется странного»), плюс, команды для sv мне понравились больше;
  • KDE, ибо «искаропки» нормально отображает что GTK-, что Qt-приложения, плюс это окружение мне нравится своей настраиваемостью;
  • браузеры Firefox и Chromium, офисный пакет Libreoffice, проигрыватель VLC — понятно, зачем, Tor Browser — для просмотра порно ссылок в VK, ибо в Житомире его блокируют, а в модификации для «Сталкера» сыграть хочется;
  • PHP, Apache для игр с «бэкендом» (скоро сервер на работе поднимать будут, готовлюсь), Java для Minecraft-а и написания прикладных программ.
  • GIMP для редактирования скриншотов, Krita для рисования анимешных девочек в стиле Джоджо (правда, мышкой как-то паршиво рисуется, буду копить деньги на планшет со стилусом). «Пруфов» рисунков не будет, я стесняюсь;
  • Т.к. Network Manager-а нету по-умолчанию, использую connman. Брат жив, зависимости пока не наблюдаю. Зато есть Pulseaudio, и работает звук точно так же, как и в «арче» (не хорошо и не плохо, встроенная «звуковуха» с «пульсой» работает и всё тут).

И знаете что? А всё то же самое! Работает так же, потребляет памяти так же, если не больше (пруф — 540-580МБ в «простое», с Systemd то же самое). Код точно так же пишется, ЛОР точно так же открывается, прон всё так же смотрится... Единственное различие — это уже вышеупомянутый connman, да символические ссылки вместо systemctl enable servicename. Я даже и не заметил толком разницы с Arch-ем, да и, думаю, любой другой любитель «свежачка» тоже преспокойно может пересесть с одного дистрибутива на другой (при условии прочитывания соответствующей «вики»). Шутка ли — за исключением других репозиториев, пакеты все одни и те же (кроме Systemd-зависимых, ваш КО), менеджер пакетов тот же, даже AUR работает (пруф в роли Tor Browser оттуда)!

Даже не знаю, почему оно так. Может, дело в «потанцевале» связки «R52600+RX570», которая безупречно работает даже с GNOME 3? Может, runit не такой уж и хороший выбор в качестве системы инициализации? Или же наоборот, Systemd достиг той точки, когда обычный пользователь может преспокойно пользоваться любым дистрибутивом с ним и не париться?

В общем, месяцок-другой посижу, если какие интересные нюансы или баги обнаружу — уведомлю общественность.

 , , , ,

Korchevatel
()