UTF8 BOM - это зло

Здесь обсуждаются проблемы мироустройства.
romkyns
Posts: 61
Joined: Thu 30 Jul, 2009 12:20

UTF8 BOM - это зло

Post by romkyns » Mon 12 May, 2014 14:05

И включать его по умолчанию — неправильно.

Почему зло? Да потому что не нужен он ровно вообще никому: при угадывании кодировки файла, сохраненного в "UTF-8 без BOM", угадывалка все равно обязана работать правильно. Если там есть не-ASCII то это вообще несложно, а если только ASCII, то любой современный редактор должен по-любому выбирать UTF-8. В результате: что нам дает наличие BOM? Да ничего. Только ломает .bat файлы и другие криворукие программы. На многих языках легко написать читалку файла в UTF-8 которая неправильно читает BOM (считает его обычным codepoint'ом).

Так что зачем он добавляется по-умолчанию мне непонятно. Ради какой-то теоретической правильности? Ну слава богу хоть отключается этот дефолт, за что большое спасибо.

User avatar
Wave
Posts: 1707
Joined: Thu 04 Aug, 2005 18:47
Location: Харьков, Украина
Has thanked: 2 times
Been thanked: 9 times
Contact:

Re: UTF8 BOM - это зло

Post by Wave » Mon 12 May, 2014 14:26

Отключается — и нормально. Как кому надо, тот так себе и настроит.
Пользуюсь ФАРом больше 15 лет © собирательный.

Yegor
Posts: 844
Joined: Mon 04 Apr, 2005 13:41
Location: Kharkov, Ukraine
Has thanked: 2 times
Been thanked: 7 times

Re: UTF8 BOM - это зло

Post by Yegor » Mon 12 May, 2014 14:39

Пусть авторы криворуких программ и исправляют.
Мы не можем ждать милостей от Фара, взять их у него — наша задача! (C) Мичурин

User avatar
John Doe
Бюрократ
Posts: 11095
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 12 times
Been thanked: 66 times

Re: UTF8 BOM - это зло

Post by John Doe » Mon 12 May, 2014 14:48

romkyns wrote:Если там [...] только ASCII, то любой современный редактор должен по-любому выбирать UTF-8.
Интересное мнение. Но нет, я не соглашусь.
romkyns wrote:На многих языках легко написать читалку файла в UTF-8 которая неправильно читает BOM (считает его обычным codepoint'ом).
Это что-то доказывает?

romkyns
Posts: 61
Joined: Thu 30 Jul, 2009 12:20

Re: UTF8 BOM - это зло

Post by romkyns » Mon 12 May, 2014 16:55

John Doe wrote:
romkyns wrote:Если там [...] только ASCII, то любой современный редактор должен по-любому выбирать UTF-8.
Интересное мнение. Но нет, я не соглашусь.
Ну что ж, хорошо что наш инструмент настраивается и под вас, и под меня. Ради интереса, какая у вас выбирается кодировка, если в файле только ASCII, и почему?
John Doe wrote:
romkyns wrote:На многих языках легко написать читалку файла в UTF-8 которая неправильно читает BOM (считает его обычным codepoint'ом).
Это что-то доказывает?
Если бы вы согласились с первым пунктом, то это бы дало один повод выключить BOM. Если же вы хотите UTF-8 только в файлах, специально помеченных как таковые, то конечно это ничего не доказывает (но все-таки любопытно, зачем). И третий вариант, возможно вы хотите использовать BOM именно ради корректировки порядка байтов?

User avatar
DrKnS
Posts: 4562
Joined: Thu 04 Aug, 2005 06:44
Location: Kyiv
Has thanked: 2 times
Been thanked: 113 times
Contact:

Re: UTF8 BOM - это зло

Post by DrKnS » Mon 12 May, 2014 17:36

romkyns wrote:UTF8 BOM - это зло
UTF8 - это зло
Fixed.

User avatar
tvel
Posts: 29
Joined: Wed 17 Mar, 2010 23:48
Location: Lenobl

UTF8 BOM - это зло

Post by tvel » Wed 14 Jan, 2015 17:00

>copy con имя_файла[ENTER]содержание_файла[F6 или CTRL+Z][ENTER]

Если содержание_файла=ничего, то размер_файла=0.

Зачем вообще файл средствами FAR(?) - никогда не понимал.

Smitis
Posts: 1452
Joined: Fri 18 Mar, 2005 12:51
Location: Питер
Has thanked: 12 times
Been thanked: 23 times
Contact:

UTF8 BOM - это зло

Post by Smitis » Wed 14 Jan, 2015 19:11

tvel wrote:Зачем вообще файл средствами FAR(?) - никогда не понимал.
Я один не понял, что сея фраза означает? :shock:
Разум когда-нибудь победит.

LAT
Posts: 159
Joined: Thu 21 Jan, 2010 20:00
Has thanked: 5 times
Been thanked: 3 times

UTF8 BOM - это зло

Post by LAT » Thu 15 Jan, 2015 17:08

Smitis wrote: Я один не понял, что сея фраза означает? :shock:
Ну почему же один? tvel же сразу признался, что не просто не понял, а вообще никогда не понимал.

User avatar
techie
Posts: 753
Joined: Mon 03 Oct, 2005 22:42
Has thanked: 26 times
Been thanked: 2 times

Не использовать BOM для UTF-8

Post by techie » Sun 21 Jun, 2015 22:08

Шпедивикии:
The Unicode Standard permits the BOM in UTF-8,[2] but does not require or recommend its use.[3]
(с) https://en.wikipedia.org/wiki/Byte_order_mark#UTF-8

Т.е. говоря русским языком, не рекомендуется вставлять BOM в UTF-8 (65001) контент.

User avatar
zg
zero-gravity
Posts: 5240
Joined: Tue 15 Mar, 2005 17:36
Location: riga
Been thanked: 42 times
Contact:

Не использовать BOM для UTF-8

Post by zg » Sun 21 Jun, 2015 23:13

techie wrote:Т.е. говоря русским языком, не рекомендуется вставлять BOM в UTF-8 (65001) контент.
вы передёргиваете. отсутствие рекомендации и не рекомендуется — это разные вещи.

User avatar
techie
Posts: 753
Joined: Mon 03 Oct, 2005 22:42
Has thanked: 26 times
Been thanked: 2 times

UTF8 BOM - это зло

Post by techie » Mon 22 Jun, 2015 01:22

zg wrote:
techie wrote:Т.е. говоря русским языком, не рекомендуется вставлять BOM в UTF-8 (65001) контент.
вы передёргиваете. отсутствие рекомендации и не рекомендуется — это разные вещи.
Если рекомендация отсутствует в стандарте, который вообще-то создаётся для вывода людей из тупика неоднозначности, значит на то есть причины. По-моему, весьма понятно и если и есть передёргивание, то вполне себе в рамках.

User avatar
zg
zero-gravity
Posts: 5240
Joined: Tue 15 Mar, 2005 17:36
Location: riga
Been thanked: 42 times
Contact:

UTF8 BOM - это зло

Post by zg » Mon 22 Jun, 2015 01:32

techie wrote:весьма понятно
демагогия.

User avatar
techie
Posts: 753
Joined: Mon 03 Oct, 2005 22:42
Has thanked: 26 times
Been thanked: 2 times

UTF8 BOM - это зло

Post by techie » Mon 22 Jun, 2015 05:44

zg wrote:
techie wrote:весьма понятно
демагогия.
Кароч, если не написано "по возможности сувать везде", значит не надо так делать. А Far делает, и изменить это не позволяет, если ты не харкорный пользователь.

Karagy
Posts: 56
Joined: Tue 02 May, 2006 08:43
Location: Питер
Been thanked: 3 times

UTF8 BOM - это зло

Post by Karagy » Mon 22 Jun, 2015 13:13

Т.е. если ты догадался сделать Save As (Shift F2) - значит прощай imbicellus club и welcome to hardcore club?

БОМ используется приложениями не от хотелок авторов, но из-за третъесторонних (чаще всего третъесторонних) библиотек обработки текста. На википедии, конечно, могут писать что угодно, но многие распрастранённые библиотеки любят БОМ уже много-много лет.

Пример: в subtitles к Media Player Classic - вы можете хоть до посинения указывать формат UTF-8. Но оно с вами согласится только когда там появится BOM. И, я уверен, это была не прихоть авторов mpc.

User avatar
techie
Posts: 753
Joined: Mon 03 Oct, 2005 22:42
Has thanked: 26 times
Been thanked: 2 times

UTF8 BOM - это зло

Post by techie » Mon 22 Jun, 2015 13:29

> Т.е. если ты догадался сделать Save As (Shift F2) - значит прощай imbicellus club и welcome to hardcore club?

Нет, из imbicellus club выписывают при овладевании техникой far:config, бо речь идёт о поведении по умолчанию.

> Пример: в subtitles к Media Player Classic - вы можете хоть до посинения указывать формат UTF-8. Но оно с вами согласится только когда там появится BOM. И, я уверен, это была не прихоть авторов mpc.

Уже три года как пофикшено - https://github.com/mpc-hc/mpc-hc/commit ... a7411c514a

Post Reply

Return to “О тщете всего сущего”