Ru-Board.club
← Вернуться в раздел «Программы»

» Notepad++ (часть 2)

Автор: TheBarmaley TMP
Дата сообщения: 11.03.2016 12:56
Collapse Troll
Цитата:
Win Server 2012
про патч такой не слышал
ясно, снят вопрос.. =)

Цитата:
надо его в шапке ужирнить как-то
сделано.. укрупнил, но ужирнять не стал - народ (в основном) в курсе.. )
// текущий бэкап #
Автор: AZJIO2
Дата сообщения: 11.03.2016 13:54
Автор потеряет много пользователей, из-за этой галочки. Я сам столкнулся с этим, установив N++ в очередной раз на чужом компе, где начал в свой файл делать пометки по ходу, и получилась что часть текста о одной кодировке, другая в другой, хорошо если добавления были в конце, тогда можно перекодировать по частям и не потерять час работы, плохо когда ты в носишь изменения в разных частях файла, потом замечаешь какой то глюк который начинаешь исправлять и думать как это произошло, потом вспомнив, думаешь как исправить за наименьшее время.
В общем прихожу к выводу, что автору надо в процессе установки, когда инсталятор определил, что язык системы русский, извлечь конфиг, в котором галочка установлена изначально.
Автор: ItsJustMe
Дата сообщения: 11.03.2016 14:31
Не потеряет. Кодировки, которые детектятся неверно, составляют малую часть от их общего числа, судя по всему. UTF16, UTF8, Windows-1252 детектятся надежно.
Автор: Collapse Troll
Дата сообщения: 11.03.2016 15:13

Цитата:
Не потеряет. Кодировки, которые детектятся неверно, составляют малую часть от их общего числа, судя по всему. UTF16, UTF8, Windows-1252 детектятся надежно.

это смешно пока вы сами не нарвались я тоже вроде, резюме копипастил не из DOS-файла


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

её надо сделать 'unchecked' по дефолту..
а система кстати не русская - система английская и без ленг-паков, но региональные стандарты Россия, и "Language for non-unicode programs: Russian"
Автор: jFobos
Дата сообщения: 11.03.2016 17:07
unchecked по дефолту, правку cp1252/cp1251 и тому подобные решения - костыли.
ИМХО единственно правильным решением будет изменение алгоритма определения кодировки. Можно даже решение стащить с редакторов с открытыми сорцами. Тот же vim без проблем определяет кодировку, с него и скопипастить решение.
Автор: ItsJustMe
Дата сообщения: 11.03.2016 17:34
Collapse Troll

Цитата:
это смешно пока вы сами не нарвались

Я смеялся не над проблемой как таковой, а над предположением, что она должна вызывать бессонницу у автора. У него бессонницу не вызывают даже откровеннейшие ляпы в коде Notepad++. И он с ними жил долгие годы, пока полгода-год назад, кто-то из его друзей не утерпел и их не исправил.

Цитата:
а система кстати не русская - система английская и без ленг-паков, но региональные стандарты Россия, и "Language for non-unicode programs: Russian"

Это не имеет значения для сабжа. Детектор кодировки файла работает независимо от настроек системы.

jFobos

Цитата:
ИМХО единственно правильным решением будет изменение алгоритма определения кодировки.

Можно применить и неправильное решение - грязный хак. Оно, хоть и неправильное, но работает.
Автор: thejustsoul
Дата сообщения: 11.03.2016 17:41
Да в NPP определение кодировки сделано через Ж. Открывая файл с кодировкой 866, приходится менять вручную (если отключено автоопределение). В AkelPad такой фигни нет.

З.ы. автор вообще в курсе проблемы? Писал кто-то багрепорт? Вроде писал кто-то когда-то, был ли ответ?
Автор: ANDE2003
Дата сообщения: 11.03.2016 18:30
thejustsoul

Просто akelpad пишут русские, а notepad++ нет. В Sublime такая же проблема, 866 никому кроме нас не нужна.
Автор: Skif_off
Дата сообщения: 11.03.2016 21:06
thejustsoul

Цитата:
В AkelPad такой фигни нет.

Не хочу вас расстраивать, тем более как-либо оченять мой любимый редактор, но отсюда и ниже. Бывает, всё бывает.

ANDE2003

Цитата:
Просто akelpad пишут русские, а notepad++ нет. В Sublime такая же проблема, 866 никому кроме нас не нужна.

А если Sublime лажанёт с OEM932, то что вы скажете?

На самом деле не имеет значение, носителем какого языка является разработчик, имеет значение только то, как часто лажает автодетект кодировки. Ни один редактор не будет _всегда_ безупречным, ну а вот автор Notepad++ просто забил на автодетект.
Автор: ANDE2003
Дата сообщения: 11.03.2016 23:14

Цитата:
А если Sublime лажанёт с OEM932, то что вы скажете?

это японский же? видимо среди разработчиков Sublime нет носителей этого языка


Цитата:
ну а вот автор Notepad++ просто забил на автодетект.

уверен что файлы с которыми работают разработчики всегда открываются в нужной кодировке
Автор: DmitryFedorov
Дата сообщения: 12.03.2016 04:13
ANDE2003
Ну да! - в китайской.
Из твитера Don ho: I have French nationality, but I don't consider myself as French - French people don't treat me as French, they just call me Chinese.
Автор: AZJIO2
Дата сообщения: 12.03.2016 07:50
ANDE2003

Цитата:
уверен что файлы с которыми работают разработчики всегда открываются в нужной кодировке
поэтому пока сами о себе не позаботимся, ничего не поменяется. Надо обьяснить человеку, что тупо портятся файлы по умолчанию у каждого россиянина.

Collapse Troll

Цитата:
её надо сделать 'unchecked' по дефолту..
да, я ошибся, не поставить галочку а наоборот снять. Это хранится в конфиге, он просто при установке копируется с config.model.xml, это как бы копия, все файлы с приставкой .model копия на случай восстановления и для нового пользователя. Он просто копирует его и запускается с уже оттуда взятыми настройками. Я хотел сделать свой конфиг, вернее он есть для старых версий и для меня, но он не подходит для тех кому я устанавливаю. Может когда бы я его сделал я тоже бы меньше напрягался, ведь сейчас каждый раз я его настраиваю вручную.

ItsJustMe

Цитата:
судя по всему. UTF16, UTF8, Windows-1252 детектятся надежно
Я бы сказал, что первые два детектились изначально, проблема только если вариант ANSI, то следующий этап его распознавания. Для английских букв распознавание особо не нужно, их диапазон 0-127 работает в любой кодировке. К тому же если определение кодировки ANSI неудачно, то по умолчанию включится английская.

jFobos

Цитата:
Тот же vim без проблем определяет кодировку, с него и скопипастить решение.
Так они (авторы N++) тоже наверно скопипастили, не писали же они сами алгоритм. Их уже полно для каждого языка. Тот же vim натом же языке написан что и N++?

Ладно, единственный выход зайти на форум и очередной раз обстоятельно описать проблему, и главное не забыть указать решение "в конфиге снять галочку". Просто последние мои проблемы я писал в общем потоке новичков, что-то не увидел я там баг-трекера. А проблемы новичков автор может и не читает. Там как обычно сами виноваты, каждого не унянчишь.
Автор: DmitryFedorov
Дата сообщения: 13.03.2016 00:54
AZJIO2
Раз собрался писать, то главное чтобы ты куда надо написал, четко выразился и..

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

Что происходит в 99 процентах неправильного обнаружения?
Npp считает кодировку кирилицы равной Макинтош.

Почему?
Да потому что Npp работает как на Винде так и на Макинтоше.

Значит единственное что нам надо - это чтобы автор ввел уточнение:
На Винде, в которой для не Юникод-файлов стоит поддержка кирилицы, автообнаружение Макинтош считать равным 1251 и всё.
Встретить в Винде реальные файлы с кодировкой Макинтош нереально. Их просто нет.
Такая команда очень проста, над ней не надо думать. Значит будет принято и сделано.





Добавлено:
Кстати если хочешь узнать в чем тут причина спроси мнение русского программиста здесь: Ссылка
Он уже с пол-года рисует новую прогу CudaText, которая кросс-платформенна.
До этого был SynWrite.

С удовольствием перешел бы на его проги, потому как круче они, но автор уперся и они у него очень прожорливы. Его мнение - не нравится иди...в др. место. А жаль.
Автор: Daniyar91
Дата сообщения: 13.03.2016 03:53
Нет, автор CudaText и SynWrite вменяемый тип.
И да, Син и Куда много лучше, да еще имеют Python API, а второй еще и на Mac, Win, Linux
Автор: ItsJustMe
Дата сообщения: 13.03.2016 06:19
DmitryFedorov
...или можно забить на npp
Автор: AZJIO2
Дата сообщения: 13.03.2016 07:20
DmitryFedorov
Может тогда ты напишешь, а то я не раз попадал пиша под диктовку, а потом когда мне выносили мозг, я не мог аппелировать, мысли то не мои а навязанные. Получал за других.

ItsJustMe

Цитата:
...или можно забить на npp
Я пользуюсь Geany, самый крутой в Linux, но если бы там был N++, то пользовался бы им.
Автор: Collapse Troll
Дата сообщения: 13.03.2016 10:28

Цитата:
Раз собрался писать, то главное чтобы ты куда надо написал, четко выразился и..

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

Что происходит в 99 процентах неправильного обнаружения?
Npp считает кодировку кирилицы равной Макинтош.

Почему?
Да потому что Npp работает как на Винде так и на Макинтоше.

Значит единственное что нам надо - это чтобы автор ввел уточнение:
На Винде, в которой для не Юникод-файлов стоит поддержка кирилицы, автообнаружение Макинтош считать равным 1251 и всё.
Встретить в Винде реальные файлы с кодировкой Макинтош нереально. Их просто нет.
Такая команда очень проста, над ней не надо думать. Значит будет принято и сделано.

DmitryFedorov, ого! круто разжевал Определяем тебя глашатаем! :-D
Автор: ItsJustMe
Дата сообщения: 13.03.2016 11:18
AZJIO2

Цитата:
Я пользуюсь Geany, самый крутой в Linux

О, так нашелся человек, который не страдает от проблемы неправильного определения кодировки Windows-1251 в N++! А ведь тут страдальцы уже пару страниц нафлудили. И нафлудят еще!

Цитата:
На Винде, в которой для не Юникод-файлов стоит поддержка кирилицы, автообнаружение Макинтош считать равным 1251 и всё.

Вот я и говорю: грязный хак, он хоть и грязный, но работает!
Автор: DmitryFedorov
Дата сообщения: 13.03.2016 13:01
Daniyar91

Цитата:
Нет, автор CudaText и SynWrite вменяемый тип.
И да, Син и Куда много лучше, да еще имеют Python API, а второй еще и на Mac, Win, Linux

Обе проги не подходят на замену Npp. CudaText жрет памяти непомерно.
Если Npp берет два номинала (открыв файл, сжирает памяти на два размера файла), то CudaText хавает 9 номиналов. Естественно что с большими файлами он и работает медленней. Это становится ощутимо при открытии файлов от 20 MB. Файлы 50 МБ и больше он мурыжит уже так что думаешь что вирус завелся. Файл открывается дольше 20 секунд и каждое действие тормозит.
Даже если работать с малыми файлами он типа будет быстро работать, но сожрет всю память и все равно застопорит при случае работу всех и вся.

Автор невменяем. Ему сказали об этом хрен знает когда.
Вместо того чтобы постараться сделать как в УльтраЭдит (пол номинала размера файла) автор плевал на это.
В итоге сидит один и форум состоит лишь из его записей. Т.е. он видит реакцию и даже это на него не действует.
SynWrite - тоже самое. Отполирован, но только для винды.
Ну и несмотря на многие плюсы нет и не будет очень важных вещей типа авто-резервирования.
-------------
Итог Daniyar91 ты тоже невменяем раз поешь дифирамбы автору, вместо того чтобы направить его куда надо.

Добавлено:
ItsJustMe

Цитата:
Вот я и говорю: грязный хак, он хоть и грязный, но работает!

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

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


Добавлено:
AZJIO2

Цитата:
DmitryFedorov
Может тогда ты напишешь, а то я не раз попадал пиша под диктовку, а потом когда мне выносили мозг, я не мог аппелировать, мысли то не мои а навязанные. Получал за других.

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

Прошлый жуткий баг (связанный с порчей файлов при авто-резервировании) я добил. Нашел недовольного, подхватил его тему и в итоге за дело взялся соавтор. Он написал код. Автор проверил и внес и теперь всё тип-топ. Длилось правда долго. Но там было сложно. Тут - нет.

Твоя очередь!
Автор: ItsJustMe
Дата сообщения: 13.03.2016 14:07
DmitryFedorov

Цитата:
Автор невменяем.

Он вас на три буквы послал? Так это 90% местных форумчан делают. Общаешься с человеком, а он уже много раз показывал, что он "невменяем". И что? Не будешь же список вести. Всех не упомнишь, кто что когда сказал


Цитата:
Ему сказали об этом хрен знает когда.

Ну, не может человек с этим что-то сделать. Нет у него таких возможностей. Что ему, землю из горшка жрать что ли?


Цитата:
Вместо того чтобы постараться сделать как в УльтраЭдит (пол номинала размера файла) автор плевал на это.

Почему вы так уверены, что он не старался? Со свечкой стояли? Он, может, очень даже старался, но у него ничего не вышло.


Цитата:
Итог Daniyar91 ты тоже невменяем

Так и я не вменяем. Я вообще самый невменяемый на этом форуме. И ничего, не переживаю. И вам не советую. Нервные клетки, они, говорят, не восстанавливаются.


Цитата:
Почему Хак?

Ну, назвал я так этот способ. Властью своей невменяемости
Потому, что вмешивается в сакральный алгоритм автообнаружения. Причем вмешивается самым невменяемым способом - непогрешимый алгоритм нашел одно, а мы плюем на его непогрешимость и меняем одно на другое. Но меня вполне устраивает. Я вообще просто выкинул mac-cyrillic из списка автообнаружения.
Автор: DmitryFedorov
Дата сообщения: 13.03.2016 14:32
ItsJustMe
Неа, меня не послали на три буквы, а лишили надежды (с автором не ругался).

Автор CudaText бросил отполированную прогу и перешел на другой движок.
Это несколько лет работы. Значит намерения серьезные.
Движок дает кросс платформенность, но все-таки позволяет расходовать память экономно (есть другие проги на этом движке).
Автор принципиально (так и ответил мне) не хочет ничего делать в этом направлении.
Но и коню понятно, что 9 раз засунуть файл в память это пример нежелания лезть в сокральные вещи. Нежелание разбираться.

В итоге он лишился поддержки форума. На форуме тебе скажут все ошибки - 90 % работы, подскажут чего не хватает, да еще и решение найдут. С миру по нитке.
И как можно назвать такого человека, который сознательно лишил себя опоры?
Т.е. я в ответ на фразу поклонника "Нет, автор CudaText и SynWrite вменяемый тип." вынужден был констатировать: неа - наоборот.

Добавлено:

Цитата:
Я вообще просто выкинул mac-cyrillic из списка автообнаружения

Тут поподробней!! Где блин этот список. Ткни. Я тоже выкину. Это очень логично.
А еще говоришь что не вменяемый.
Хе. Идти на мен - не феномен! Это нужное качество гомно сапиенса.
Автор: ItsJustMe
Дата сообщения: 13.03.2016 14:40
DmitryFedorov

Цитата:
Движок дает кросс платформенность, но все-таки позволяет расходовать память экономно (есть другие проги на этом движке).

А у него там движок еще какой-то есть? Насколько я понял, он все свои творения (SynWrite и CudaText) ваяет на Delphi (fpc, не суть важно). Весь код его авторства, ничего стороннего, вроде бы, не использует. Как француз использует Scintilla, например.
Автор: DmitryFedorov
Дата сообщения: 13.03.2016 14:55
ItsJustMe
Использует движок, только не Scintilla. Сам так пишет. Потому и кросс-платформенность.
Наш француз - он китаец.
А на вопрос - лучше бы ответил. Хотя я конечно и сам найду если такой список есть.
Автор: ItsJustMe
Дата сообщения: 13.03.2016 15:40
DmitryFedorov

Цитата:
А на вопрос - лучше бы ответил.

А если не отвечу, то что будет? Санкции? Поправка Джексона-Вэника? Наземная операция?

А что за вопрос хоть? Если

Цитата:
Где блин этот список. Ткни.

то этого вопроса не было, когда я писал предыдущее сообщение. Вопрос появился позже.

Код: PowerEditor\src\uchardet\nsSBCSGroupProber.cpp, line 52
Автор: Bannan
Дата сообщения: 13.03.2016 16:41
Я вот читаю ваши сообщения и вообще не пойму, о каком неправильном определении кодировки идет речь. Использую Notepad++ лет пять (ОС Win7 RU). Открываю текстовики - кодировка Windows-1251 - все чин-чинарем. Автоопределение в настройках включено. Редактирую, сохраняю, короче обычная обработка документов. Может у вас в системе грабли применены по замене 1252 на 1251 или документы какие-то левые. Аж интересно стало...
Автор: Daniyar91
Дата сообщения: 13.03.2016 16:43

Цитата:
Вместо того чтобы постараться сделать как в УльтраЭдит ...
Тормозит этот УльтраЭдит нехуже других, и если ты хочеш работать с такими большими файлами, то выкень эту пародию на редактор для больших файлов, и юзай EmEditor.


Цитата:
В итоге он лишился поддержки форума
Я открою тебе секрет -- DmitryFedorov != форум.
Автор: DmitryFedorov
Дата сообщения: 13.03.2016 17:21
ItsJustMe
Странный ответ.
В Npp я не нашел списка автообнаружения из которого я бы мог выкинуть mac-cyrillic.

Добавлено:
Daniyar91
Цитата:
Я открою тебе секрет -- DmitryFedorov != форум.

Ну у автора есть свой форум. Там не густо. Все что там есть - это касается SynWrite.
А ветка на ру-борд просто показательна: Ссылка
Автор имеет ник Alextpp.
Чего тогда ерничать то?
----------
Что касается УльтраЭдит - это пример. Она действительно кушает мало. Половину размера файла. Она никак не может тормозить, потому что может открыть скажем файл размером с гигабайт. SynWrite вряд ли откроет файл размером 100МБ. В любом случае для этого ей потребуется памяти ровно один Гигабайт. Представляешь сколько ждать придется если таки откроет?
А УльтраЭдит это монстр, в последней версии применили ленту Ribbon и этим окончательно подорвали к ней интерес.
Автор: thejustsoul
Дата сообщения: 13.03.2016 17:54
Bannan

Цитата:
Может у вас в системе грабли

Ну да, грабли под названием "автоопределение кодировки",

Добавлено:

Цитата:
Бывает, всё бывает.

Хм, а ведь и правда.. глянул тестовый файл - криво открылось, странно это)
Автор: Daniyar91
Дата сообщения: 13.03.2016 18:55

Цитата:
Ну у автора есть свой форум. Там не густо. Все что там есть - это касается SynWrite.
Видимо стоит уточнить - DmitryFedorov != ру-борд.


Цитата:
Что касается УльтраЭдит ... Она никак не может тормозить
Повторюсь, УльтраЭдит - ничем не лучше для больших файлов того-же NPP, т.е. подходит для таких файлов, чуть более чем никак. Если ты в этом сомневаешься, то иди и перечитай тему про CudaText, а потом проверяй. И если тебе нужно редактировать (а не просто открывать), то EmEditor тебе поможет.


Цитата:
А УльтраЭдит это монстр, в последней версии применили ленту Ribbon и этим окончательно подорвали к ней интерес.
Судя по этому, и другим твоим комментариям, ты мниш себя ... даже не знаю кем, и судьба ЭльтраУдит, и всего того что не так как ты думаешь -- сгнить на свалке истории. Но кажется ты ошибаешься.


Все, это уже начинает походить на личную переписку, так-что если тебе еще есть что сказать по этому поводу, то не пиши здесь, и вличку тоже не надо, т.к. мне не интересно.
Автор: DmitryFedorov
Дата сообщения: 13.03.2016 20:14
Daniyar91

Цитата:
..то не пиши здесь, и вличку тоже не надо, т.к. мне не интересно.
Если тебе не интересно не х..р здесь страницы марать.
Тебе ответили, что CudaText мог бы быть отличным редактором, но не судьба ему.
Npp может открыть большие файлы, CudaText - нет, UltraEdit на раз.
----
А если ты не только подпевать умеешь, напиши автору этой проги или исправь код сам или добей проблему.

Добавлено:
Вообще что такое кириллица MAC?
Это очередной изврат, наподобие ISO-8859-5, OEM 855, OEM 866, KOI8-R, KOI8-U

Почему я так говорю? - наплодив кодировок пришли к Юникоду. Потом трансформировали его в UTF (Unicode Transformation Format), где порядок символов совпадает с 1251. Поэтому в NPP этот формат до сих пор поясняется словами: ANSII как UTF-8

Как размещен наш алфавит по номерам символов:

1251: 192..255 с буквы А как в UTF-8 по порядку

ISO-8859-5: 176..239 по порядку буквы ЁЪ отдельно.
KOI8-R и KOI8-U: 192..255 с буквы ю вразброс
OEM 855: 128..252 вперемежку, пытаясь выдать буквы парами по регистру
OEM 866: 128..175 224..239 прерываемый порядок с буквы А
MAC: 128..159 221..254 прерываемый порядок с буквы А

Фирма Мелкософт оказалась единственной, кто сделал что-то логически.
Жмем Ctrl+N, меняем кодировки и смотрим таблицу символов.
---------
Примечательно что каждый новый создатель кодировки обязательно располагал латиницу неизменно в начале таблицы.
Но другие символы кидал куда угодно.
Хотя у всех народов есть алфавит. Так расположи его до конца таблицы.
В середине напихай еще символов, которые собственно и будут отличать твою кодировку от других.
Нет. Во всех кодировках номера символов у букв разные. Хотя буквы те же самые - Алфавит.
Надо быть полным идиотом чтобы так сделать.

Страницы: 1234567891011121314

Предыдущая тема: Автоматизация скачивания и обработки сырых потоков с Youtube


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.