LINUX.ORG.RU
ФорумTalks

У OpenBSD теперь свой vi

 , ,


0

1

Привет, ЛОР!

Тащемта сабж: https://www.opennet.ru/opennews/art.shtml?num=56735

Отдельно порадовало, что там нет поддержки юникода от слова совсем.

No support for Unicode / UTF-8 / wide character display

    Multi-byte characters are shown as individual bytes, rather than glyphs

@saahriktu будет доволен!

★★★★★

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

Это правильно. Вообще во всех редакторах позиционирующих себя как редакторы для программиста/админа юникода быть не должно.

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

Там ещё подсветки синтаксиса нет. И проверки ошибок. И LSP с прочими порождениями ужоса и ада. Отличный редактор, одним словом!

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

Это правильно. Вообще во всех редакторах позиционирующих себя как редакторы для программиста/админа юникода быть не должно.

А вот хер тебе. Юникодный синтаксис рулит! Я прямо переменные и функции греческими буквами иногда называю, чтобы вообще зашибись выглядело.

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

Вылезай из-под камня. Это стоковый vi (nvi) в OpenBSD с старо-глинянных времён. Просто кто-то вытащил его на GitHub.

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

Отличный редактор, одним словом!

Между прочим, да.

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

Может мне кто-нибудь внятно объяснить на пальцах эту войну кодировок? Ну это ж сраная таблица «имен» символов, ничем принципиально не отличающаяся от любой другой условной таблицы. Что за хейт? Почему? Откуда? Чо за бред-то?

Oberstserj ★★
()

Кто знает, есть ли в OpenBSD способ зафиксировать состояние файловой системы на текущий момент? Приближенный аналог команды:

zfs snapshot zpool/test@test
nasecom
()
Последнее исправление: nasecom (всего исправлений: 1)

выкинуть бы ещё оттуда всё вимовское говно которое приходится отключать

let g:loaded_matchparen=1
set directory=/tmp
set backupdir=/tmp
set undodir=/tmp
set mouse=

мне просто интересно, на заре создания UNIX, когда зарождался vim, какой гений придумал хранить все мусорные файлы? и ладно бы, хранилось бы себе где-то там в $HOME, дак нет же, они додумались хранить эти файлы вместе с файлом, который редактируется! в итоге вся система оказывается засрана вимовскими файлами.

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

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

Да вот не просто таблица, utf-8 - это кодировка с переменным числом байт на символ, как и utf-16 кстати, если правильно реализовывать.

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

Да вот не просто таблица, utf-8 - это кодировка с переменным числом байт на символ, как и utf-16 кстати, если правильно реализовывать.

Да, но проблема не в этом. Парсинг utf-8 – это как раз фигня. А вот рендеринг – это жопа, ад и сотона. Недавно были эти дикие истории, когда код, который отображался в редакторе, совершенно не соответствовал коду, который был скомпилирован. И всё это благодаря магии юникода.

https://www.bleepingcomputer.com/news/security/invisible-characters-could-be-hiding-backdoors-in-your-javascript-code/

@Oberstserj

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

А, даже так. Забавно. Не сталкивался в железячных вопросах с таким.

Спасибо, покурю тему.

Oberstserj ★★
()

ну теперь заживем!

mrdeath ★★★★★
()

@saahriktu будет доволен!

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

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

рендеринг javascript

че?! Oberstserj, не верь ему! это проблемы вебдевелоперов! )) а вообще да, я тоже слегка подофигел, когда узнал про их легаси с переменной длинной байтов...

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

спуффинг, на заре создания UNIX все, что тебе было доступно - это только home=)

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

это проблемы вебдевелоперов! ))

Причём тут Javascript? От языка это не зависит. Только от редактора.

hateyoufeel ★★★★★
() автор топика

Юникод только в браузере нужен.

x-signal ★★
()

Сходил по ссылке, почитал каменты. А я думал это на ЛОРе в каментах сплошное петросянство!

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

не верь ему! это проблемы вебдевелоперов! ))

Ну мне хотя бы понятно стало откуда хейт этот. Я ж не вебмакака, я толком не сталкивался с этим.

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

или вайфай сеть какашкой назвать?

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

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

Oberstserj ★★
()

новости от saahriktu

👍

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

как говорил Витус Вагнер «Пользователь обажает терпеть мелкие неудобства» :)

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

Ну и что тут сложного? Читаешь первый байт, в нем заложена инфа о следующих байтах. Если для символа нужны еще байты, читаешь следующие и складываешь из них символ.

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

hibou ★★★★★
()

В системных конфигах аскии достаточно.

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

Эдик и saahriktu не смогут считать количество глифов по длине последовательности ненулевых байт без дополнительных проверок. Боль, унижение, спидорак, белое рабство.

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

Что удивительно, потому что количество глифов посчитать вообще несложно.

int count = 0;
while(*s != '\0')
  if(*s++ & 0xc0 != 0x80) count++;
hateyoufeel ★★★★★
() автор топика
Ответ на: комментарий от hateyoufeel

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

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

OpenVi примечателен очень компактной реализацией, уложившейся примерно в 16 тысяч строк кода (для сравнения vim насчитывает более 300 тысяч строк кода)

Неплохо, но всё ещё жирновато.

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

прямо переменные и функции греческими буквами иногда называю

Вот из-за вас в прекрасной России будущего придется хрюникод запретить законодательно.

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

Это количество кодпоинтов, а не глифов.

char const s[] = "🧟‍♀️";
выдаст 4, а должно быть 1.

thunar ★★★★★
()

Отдельно порадовало, что там нет поддержки юникода от слова совсем.

Все что я знаю про OpenBSD - это временно. Они обычно руками и ногами чтобы всех пересадить на UTF-8

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

Так мы про глифы или символы говорим?

Про знакоместа. Вот, допустим, у меня есть эмулятор терминала с моноширинным шрифтом, который открыт в режиме W знакомест в ширину.

Как написать программу для командной строки, чтобы юзер скармливал ей свой текстовый файл в UTF-8 (который может быть любым валидным в пределах UTF-8), а она вывела бы его в этот эмулятор терминала не вылезая за этот предел в W знакомест в ширину?

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

Ясен хер. Но это вопрос рендеринга, который таки ад и сотона. Причём, вот прикинь, ты нашёл самый широкий символ. А дальше за ним следом идёт RTL mark и твой самый широкий символ по идее должен быть затёрт, а значит рендерить его не нужно.

Ад, короче.

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

Но с однобайтными кодировками в этом смысле проблем гораздо меньше.

А если всё же нужно писать юникодный софт на Си в GNU/Linux'е, то самый простой путь через wchar_t. Да, что-то юникодное может резаться, но сторонники юникода уже согласились с тем, что лучше хотя бы частичная поддержка юникода чем отсутствие поддержки юникода.

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

Но с однобайтными кодировками в этом смысле проблем гораздо меньше.

С какими? KOI8? Возможно. Win-1255? Нифига, там та же проблема с затиранием из-за RTL и LTR.

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

а как же эмоджи пихать в комментарии? :)

За такое надо статью в УК добавить. Расстрельную :)

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

одна только сложность, все уже давно перешли, а они еще кипятят:)

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

Все что я знаю про OpenBSD - это временно. Они обычно руками и ногами чтобы всех пересадить на UTF-8

Ты очень мало про OpenBSD знаешь, похоже. Они поддержку UTF-8 в системе до последнего оттягивали. В libc её только в 2010 добавили, кажись.

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

столман выглядит, как неудавшийся охотник на мамонтов. ему вечно не везло на охоте и он придумал такую хитрую штуку: все будут собирать бананы, кто сколько может, и складывать их в фонд GNU... а он оттуда доставать их будет... это называлось Open Source. с тех пор и повелось... но BSD они не такие. шкурку от банана возвращать не обязательно.

p.s.

блин, что я пишу... я слишком мало сплю и слишком много сижу на лоре... постепенно я превращаюсь в торн77, по-моему...

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

Идеология опен-сорса - я слишком стар для этого.

Я уже линуксоид так давно что уже не помню что до этого было.

Каждая попытка с FreeBSD была провалом, баги, падения, паники ядра, не работаю зеркала, апдейты не работают, пакеты не собираются. И так раз 5 пробовал.

Поставил OpenBSD - как часы. Все в доску понятно, все работает с полпинка. Я прямо подозрительно отнесся. Ну как я могу настраивать те вещи, которые я настраиваю без единой проблемы за 5 минут? Ну пускает такое есть в Линуксе, но Линукс уже главная ОС победившая все остальные ОС почти всех смыслах, может в узких нишах там еще что-то дергается винда с МакОС. А тут маргинальщина работает так круто. Очень приятное впечатление

vertexua ★★★★★
()
Последнее исправление: vertexua (всего исправлений: 2)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.