LINUX.ORG.RU

Сообщения den73

 

Как и где собрать денег на доработку ОС на русском языке?

Форум — Talks

Потихоньку пилю ОС на русском языке на базе A2. Общая идея состоит в том, чтобы перевести исходные тексты. Пока что существенно улучшены инструменты (IDE, отладчик, логгер), некоторые вещи оживлены с помощью разработчиков A2 (веб-браузер, запуск в вирт. машине), расширил область возможного применения кириллицы (шрифты, раскраска исходного текста, ввод-вывод, богатый текст). Занимаюсь внедрением UTF32 в тех нужных местах, где сейчас внутри системы используется ASCII или UTF8. Как только с этим будет закончено, буду учить компилятор поддержке кириллицы в ключевых словах и идентификаторах, а потом буду делать средства поддержки машинного перевода, чтобы можно было с минимальными трудозатратами сделать русскоязычную версию.

На этой неделе впервые в истории проекта потратил деньги на наёмный труд - примерно 1500 рублей. Раньше я если куда-то ходил просить, то просил не менее миллиона рублей, чтобы уйти с работы и заняться разработкой плотно хотя бы в течение года. Теперь открывается возможность помогать делу с помощью малых денежных сумм. Соответственно, вопрос - реально ли набрать где-то эти копейки? Тратить свои как-то не особа охота - я и так уже вкладываю свой труд, думается, порядка 500-1000 коммитов за год, хотя я не считал. Соответственно, это должна быть некая площадка, имеющая отношение к ИТ и к патриотизму. Или хотя бы просто к патриотизму, или хотя бы просто к ИТ. Сумма, начиная с которой имеет смысл заморачиваться - это порядка 5 тыр в месяц. Есть ли вообще прецеденты краудфандинга странных вещей в области ИТ+патриотизм? Сколько денег удаётся на такое набрать?

 , ,

den73
()

Спутник и мобильная сеть - можно ли заставить работать вместе?

Форум — Admin

Самоизолируюсь на даче. Есть мобильный интернет от МТС, работает, но иногда пропадает. И спутниковый симметричный интернет - работает всегда, но дорого стоит. Можно ли что-то сделать, чтобы пользоваться мобильным, а при его падении автоматически переключаться на спутниковый? Желательно, чтобы это происходило без отказов, в т.ч. для каких-нибудь мессенджеров со звонками. По моим оценкам затыки с мобильным интернетом происходят много раз в час. На материке могу развернуть какую-нибудь вирт.машину.

 ,

den73
()

Си: прилично ли передавать в функцию указатели, заполненные мусором после malloc?

Форум — Development

Прилично ли делать так, что указатель выделяется с помощью malloc в одной функции, передаётся без заполнения выделенной памяти осмысленными значениями, а заполняется полезными данными - в другой функции? Принято ли так делать, или это противоречит каким-нибудь там правилам хорошего тона?

 ,

den73
()

Кириллатиница

Форум — Talks

Продолжаем мозговой штурм по переводу кода на русский язык и восстановлению позиций кириллицы в ИТ. С Кои-7 идея, ясное дело, плоха отсутствием латиницы. Но её можно развивать в разных направлениях, чтобы латиница появилась.

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

    a b c d e f g h i j k l m n o p q r s t u v w x y z
    а б ц д е ф г ш и й к л м н о п ь р с т у в ю х ы з

Но не весь, а часть букв выкинем (по ходу дела разберёмся, какие). Тут сразу есть проблема с b и p, которые при одинаковом написании имеет разные смыслы. Но на первый взгляд алфавит для представления латиницы получается такой:

a б ц д э ф г h i j к л м н о п q r s т u в w х y з

Итого мы добавили h i j q r s u w - всего 8 букв. Вся кириллица остаётся на месте, итого получается:

а б в w г д е ё ж з и i й j к л м н о п q р r с s т у u ф х ц ч ш h щ ъ ы ь э ю я

Протестируем:

Возьмём, например, произвольный текст из «Авторевю»

    Ездит на автомобилях Mitsubishi Lancer Evolution IX и ГАЗ-21Р

Текст набран одним шрифтом. На кириллатинице он будет выглядеть так:

    Ездит на автомобилях Мiтsuбishi Ланцеr Эволuтioн IХ и ГАЗ-21Р. 

Уффф. Хрень какая-то. Но на то и мозговой штурм, чтобы обсуждать хрень.

Плюсами является:

  • если впихнуть кириллатиницу в одну раскладку, будет гораздо удобнее печатать. Перевод с английского на русский такой масштабной вещи, как ОС, может быть только поэтапным, поэтому длительное время останется необходимость постоянно переключаться. Эта необходимость очень неприятна.
  • некоторые мнемоники (MOV какой-нибудь или ls) вообще вряд ли имеет смысл переводить. Поэтому, если не сделать единую раскладку, неудобство сохранится навсегда. Если же применить кириллатиницу и единую раскладку, то будет лучше.
  • если совпадающие буквы поместить в ASЦII, возникнет неявная кириллизация исходных текстов. Хотя предикат isАлпha станет сложнее. Но эта сложность коснётся только новых идентификаторов, содержащих непересекающиеся с латиницей буквы

Минусы:

  • для случаев, когда нам нужна именно латиница, придётся отвести отдельные коды букв и изменённые начертания. В Uнiцодэ вряд ли найдётся для них место, хотя я ХЗ. Но это не только минус, но и плюс. Т.к. проблема совпадения начертаний некоторых кириллических и латинских букв достаточно актуальна и всё равно то, что в шрифтах они пишутся одинаков - это баг современных шрифтов
  • не совсем ясно, как осуществлять поиск. По идее, поиск по кириллатинице может происходить так:
    • если по слову «жук» ясно, что это кириллица, ищем в кириллице
    • если по слову «worд» ясно, что латиница, ищем в латинице
    • слово «мама» ищем два раза (мама и mama)
    • слово «wой» ищем как слово в кириллатинице - не русское и не английское ,

Перемещено leave из development

 

den73
()

русификация через КОИ-7

Форум — Development

Всерьёз задумался о русификации A2 через КОИ-7

Плюсы:

  • в массиве англоязычного кода можно сразу писать по-русски, не переключая раскладки.

  • достаточно поменять шрифты и разные функции типа isAlpha и проч

  • всякие там ЛС и ЦАТ сразу доступны - усилия по их локализации равны нулю!

  • доступ ко всем латиноязычным API и даже сразу мнемоники ассемблера:

ФОРК СПАВН ьмлхТТПрЕЯУЕСТ #ИНЦЛУДЕ СТДИО.Х
асх мож леа
  • оберон самоулучшается
процедуре модуле
  • шестнадатиричные числа: 0ь33абцдеф

Минусы

  • потом замучаешься делать нормально. Но что конкретно это обозначает, я пока не понял. Поэтому и существует эта тема.

 ,

den73
()

Оставьте так!

Форум — Linux-org-ru

Я заранее готовился, Бог свидетель. Теперь я ДЕН73. Оставьте так! У нас же в стране любят 1-го апреля принимать непопулярные меры.

 ,

den73
()

переключение между приложениями с помощью цифр в Gnome

Форум — Desktop

Идея в том, что Super-1 переключает в терминал, Super-2 в Double Commander, Super-3 - в vscodium и т.п. В офтопике такое давно есть. Для LXDE я сделал (нужно руками править конфиги).

LXDE, lubuntu-desktop - открывать приложение или переключаться в него по горячей клавише

Как сделать в Gnome для Debian 10?

 , ,

den73
()

можно ли вынуть флешку с grub после загрузки?

Форум — Linux-install

Умудрился поставить дебиан 10 второй системой на свой ноут с UEFI (кому интересно, как мне это удалось, см. сюда, этот рецепт не так тривиален, как он кажется при прочтении, я реально целый день впахивал, чтобы добиться этого результата). Он загружается с флешки, которая монтируется как /boot. Могу ли я вынуть эту флешку после включения и загрузки, если не собираюсь ничего менять в грубе в данном сеансе работы?

 

den73
()

поддержка своего форка, мало отличающегося от оригинала

Форум — Development

Подразумевается внесение небольших по объёму изменений в большой и активно развивающийся чужой проект и последующее поддержание этих изменений.

Решение, которое первым приходит на ум - использовать возможности гита. Однако, если изменения не совсем тривиальны, при слиянии веток что-то может пойти не так. Помимо конфликтов, иногда бывает и так, что какие-то изменения из форка переписываются новым кодом из базового проекта, в результате чего изменение пропадает.

Видимо, нужен какой-то альтернативный ассиметричный 3-сторонний сливатель (3-way merge tool). Он, во-первых, должен понимать смысл каждой из сторон - вот это апстрим, вот это наши изменения. Не знаю, почему и не уверен, что не вру, но интуитивно есть такое ощущение.

Вероятно, он должен также вести учёт того, какое решение было принято при разрешении конфликта. Так мы сможем отследить, где мы могли потерять часть своих изменений.

Есть ли что-то такое в природе?

 , , слияние веток,

den73
()

ocaml, IDE, 2020

Форум — Development

В какой IDE работать с ocaml в 2020 году? VS Code рекомендует какой-то Ocaml and Reason IDE, 131 тыс. скачиваний. Я скачал, но reason ещё не скачал.

Есть typerex для EMACS, который рекомендовали в 2013 году, а теперь он живёт по адресу www.typerex.org/old.html, что внушает определённое подозрение. Теперь по адресу typerex.org какая-то ещё IDE, но я не понял, что значит «it is currently under development».

 ocaml ide

den73
()

ищется репозиторий на github с китайскими идентификаторами

Форум — Development

Чем полезнее код и чем больше в нём китайских идентификаторов - тем лучше.

 , китайский язык

den73
()

есть ли российские аналоги gitlab?

Форум — Talks

https://gitlab.com/gitlab-com/www-gitlab-com/issues/5555

они планируют не брать на работу с доступом к данным пользователей людей из России и Китая.

В связи с этим вопрос - есть ли российские аналоги gitlab?

Перемещено mono из development

 

den73
()

сделать изображение на мониторе вдвое больше, в том числе для wine

Форум — Development

ПРЕЖДЕ ВСЕГО, В ВЕРСИИ 1.5.1 ЕСТЬ ПАРАМЕТР:

--filter nearest

Для версии 1.5.0 - пусть тут будет, раз уж я в этом разобрался.

Смысл - есть старая программа, в которой шрифты прорисованы «пиксел в пиксел», но мелкие. На современном экране смотреть на это без слёз невозможно. Если уменьшить разрешение или масштабировать экран с помощью xrandr, то всё выглядит размазанным. Задача - как сделать неразмазанным?

Решение для Ubuntu 16.04 - по мотивам вот этого:

https://forums.linuxmint.com/viewtopic.php?t=159064

$xranrd --version 
1.5.0

$cd ~
$git clone git://anongit.freedesktop.org/xorg/app/xrandr
$cd xrandr
$git tag -l 
$git checkout tags/xrandr-1.5.0

В файле ~/xrandr/xrandr.c комментируем в двух местах вот такой фрагмент.

	    if (sx != 1 || sy != 1)
		output->transform.filter = "bilinear";
	    else

Получается так:

	    //if (sx != 1 || sy != 1)
		//output->transform.filter = "bilinear";
	    //else

Теперь фильтр всегда будет «nearest» и тем самым xrandr откажется от светлой идеи размазывать наши удвоенные пиксели.

sudo apt-get install build-essential autoconf xutils-dev libxrandr-dev
./autogen.sh
./configure
make

Дальнейшее - это мой пример скрипа настройки, для вас он не подойдёт - делайте его с помощью arandr, который создаст шелл-скрипт для установки разрешения примено следующего содержания:

#/bin/sh
~/xrandr/xrandr --output HDMI-3 --mode 1920x1080 --primary --scale 0.5x0.5 
Главное тут - поставить масштаб 0.5x0.5. Как результат - каждый пиксел изображения будет занимать 2х2 пиксела на экране, без всякого размазывания.

Для достижения лучшего результата может понадобиться отключить сглаживание или обострение на мониторе (обычно это делается кнопками на самом мониторе) и в оконном менеджере. Может быть, что и слишком умные видеокарты тоже потребуют каких-то действий.

 , , ,

den73
()

Что вы думаете сегодня про Kotlin Native

Форум — Development

Насколько эта технология имеет смысл?

Есть ли шансы мигрировать существующие Java-проекты со Spring на неё?

Можете смеяться надо мной, но всё же после голанга Java выглядит как-то посерьёзнее. Поскольку в голанг-разработчика я так и не развился по ряду причин, а легаси проект для разгона на Java есть и за это платят, я опять в раздумьях.

Рынок труда по java на порядок шире, чем по голанг, и гораздо больше выбор предметных областей. Заниматься хайлоадами и бекендами, честно говоря, скучно.

Но jvm и всё вот это нагоняет грусть. Kotlin Native выглядит на вид неплохо, но хочется понять, это реальная технология или просто маркетологическая замануха.

 ,

den73
()

Переход к определению в A2 (BlueBottle)

Форум — Development

Нашёл следующее:

Есть ли работающее решение?

 bluebottle, , , ,

den73
()

яролит - реализация на javascript

Форум — Development

Думаю, кто-то помнит тему Новая версия Яролита (форк ГОСТ 16876-71, табл 2)

На страничке http://программирование-по-русски.рф/яролит.яргт/ можно попробовать ещё более новую версию реализации яролита. Наконец-то я сделал обратное, а не только прямое преобразование.

Кодировка на данный момент такова:

Русский алфавит:

a b v g d e jo zh z i jj k l m n o p r s t u f kh c ch sh shh jq y q eh ju ja

(Соответствует ГОСТ 16876-71, таблица 2, кроме Ь = Q и Ъ = JQ - в госте эти значки превращаются в небуквенные литеры)

Английские буквы:

xe - переключение в английский режим. В частности, «xeRussia» раскодируется как «Russia», а не как «Руссиа».

В английском режиме «x» кодируется как «xx», а «w» - как «ww»

xr - переключение обратно на русский

Суммарно, JAxeRxrJA == ЯRЯ

Не ASCII, не кириллица = xuNNNNNNx, где NNNNNN - 16-ричный код символа.

Исходники функций прямого и обратного преобразования - https://bitbucket.org/budden/ppr/src/master/static/jarolit/

Буду благодарен за код ревью. Пока речь не идёт об упаковке в тот или иной «пакет». Наиболее интересно на данный момент, как сделать код более быстрым. Например, имеет ли смысл делать case по коду символа, а не по строковым значениями? С точки зрения правильности код выглядит правильным, но если увидите баги - пишите.

 , транслитерация,

den73
()

просмотровщик кода для C/C++

Форум — Development

Ищется open source просмотровщик кода, который встраивается в процесс сборки (так, как это делает статический анализатор) и по её результатам способен показать код собранной программы на Си/Си++ с учётом макросов и расположений директорий. В нём должен работать переход к определению. Редактирование не нужно. Есть такой в природе?

Самое важное здесь - это именно встраивание в процесс сборки. Каждый файл должен показываться именно с теми определениями макросов, с которыми он был собран. Без этого точный переход к определению невозможен.

 , code browser,

den73
()

подобие юнит-тестов для postgresql

Форум — Development

У меня есть скрипт, к-рый накатывает с помощью psql тестовую базу. Как добавить в него тесты? Пока что я делаю вот так:

-- tests
create or replace function test_privilege() returns text
language plpgsql strict as $$
begin
 if exists (select result from if_user_has_privilege(1,1) where result = true) THEN
   return 'failure';
 end if;
end;
$$;

select test_privilege()

Как сделать это более культурно, в стиле какого-нибудь тест-фреймворка? Моя задача - уменьшить количество писанины. Может быть, есть какая-то особая утилита, не psql?

 , ,

den73
()

jquery ajax combobox посоветуйте

Форум — Web-development

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

https://habr.com/ru/post/342184/

Но хотелось бы за один день взять и приделать какой-то относительно годный. Я хочу, чтобы по мере вбивания появлялись подсказки, и чтобы эти подсказки делались с помощью ajax-запроса.

Чтобы он был достаточно современным (работал и на планшетах).

И jquery.

===================================

Пока выбрал вот этот ответ:

jquery ajax combobox посоветуйте (комментарий)

 , ,

den73
()

возможна ли надёжная передача сообщений?

Форум — Development

Начал осмысливать микросервисы и быстро стало ясно, что есть шаблон, который повторяется.

Есть два субъекта. Допустим, я и мой банк. Мне надо перевести деньги. Как сделать это надёжно, при условии, что у банка может упасть база, что моя программа клиент-банк может упасть, и что связь тоже может упасть.

Я нагуглил теорему CAP (латиницей), которая говорит, что вообще говоря, это можно сделать только ценой отсутствия гарантии обслуживания. Но это и не теорема, а так, наблюдение, да и мало ли что пишут в Википедии? Я уже не раз сталкивался с тем, что там пишут всякий бред.

Может кто-нибудь описать шаблон взаимодействия меня и банка и устройства базы, которая ценой отсутствия гарантии обслуживания гарантирует точность передачи? И как это может выглядеть?

В конечном итоге я хочу, чтобы было три знания.

  • Известно, сколько денег у меня есть.
  • Я знаю, что эти сведения у меня и у банка совпадают
  • Банк знает, что эти сведения у меня и у банка совпадают

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

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

Ясно, что я где-то туплю, но не понимаю, где.

 ,

den73
()

RSS подписка на новые темы