Первая и вечно актуальная новость заключается
в том, что сайту, как всегда, нужна помощь. Если вы умеете
программировать, работать с текстом, хорошо
знаете какой-либо язык или просто хотите участвовать
в проекте, читайте здесь полный
список имеющихся задач.
13.11.24
Три дня назад возился с очередной книжкой с огромным количеством сносок. Хм, думаю, и что бы мне этим не озадачить ChatGPT?
Постановка задачи была такая: есть вордовский файл с большим количеством сносок, указатели на которые встречаются в тексте в формате [1], [13], [666] и т. д., а описания собраны в конце файла и представляют собой список вида:
[1] Текст первой сноски.
...
[13] Текст 13-й сноски.
...
[666] Текст 666-й сноски.
Надо написать VBA-скрипт, который преобразует всю эту бодягу (чатик такие слова тоже понимает, если что) в нормальные сноски, удалив их из конца файла.
И что вы думаете? Всего за 2 вечера (надо сказать, что с VBA, в отличие от того же питона, у чатика всегда проблемы), то есть в сумме за 3 часа, мы этот скрипт состряпали. Делюсь. Работает он неспешно, но файл с двумя сотнями сносок моё величество обычно обрабатывает те же 2 вечера, так что 2 минуты работы скрипта в сравнении с этим просто сказка. Как вспомню «Камо грядеши», так вздрогну.
Sub ConvertReferenceToFootnote()
Dim doc As Document
Dim refNum As Integer
Dim refText As String
Dim searchRange As Range, footnoteRange As Range
Dim fn As footnote
Set doc = ActiveDocument
Application.DisplayAlerts = wdAlertsNone ' Отключаем сообщения
' Проходим по всем возможным номерам ссылок от 1 до 500
For refNum = 1 To 500
refText = "[" & refNum & "]"
' Поиск ссылки в тексте и добавление пустой сноски
Set searchRange = doc.Content
searchRange.Find.ClearFormatting
searchRange.Find.Text = refText
If searchRange.Find.Execute Then
' Удаляем пробел перед ссылкой, если он есть
If searchRange.Start > 1 Then
searchRange.Start = searchRange.Start - 1
If searchRange.Text = " " & refText Then
searchRange.Text = refText
End If
End If
' Создаём пустую сноску
Set fn = doc.Footnotes.Add(Range:=searchRange, Text:="")
searchRange.Text = ""
Else
GoTo NextRefNum
End If
' Поиск текста сноски в конце документа
Set footnoteRange = doc.Content
footnoteRange.Find.ClearFormatting
footnoteRange.Find.Text = refText & " "
If footnoteRange.Find.Execute Then
footnoteRange.Collapse Direction:=wdCollapseEnd
' Перенос абзацев один за другим, пока не встретится следующий номер или конец документа
Do
' Проверка на следующий номер сноски в начале следующего абзаца
If Left(footnoteRange.Paragraphs(1).Range.Text, Len("[" & (refNum + 1) & "]")) = "[" & (refNum + 1) & "]" Then Exit Do
' Убираем лишний конец абзаца и номер сноски в текущем абзаце
Dim paraText As String
paraText = footnoteRange.Paragraphs(1).Range.Text
paraText = Replace(paraText, refText & " ", "") ' Удаляем номер
If Right(paraText, 1) = vbCr Then
paraText = Left(paraText, Len(paraText) - 1)
End If
' Добавляем текущий абзац в сноску и удаляем его из конца документа
fn.Range.InsertAfter paraText
footnoteRange.Paragraphs(1).Range.Delete
Loop Until footnoteRange.End >= doc.Content.End
' Удаление лишнего символа конца абзаца, если он остался
If Right(fn.Range.Text, 1) = vbCr Then
fn.Range.Text = Left(fn.Range.Text, Len(fn.Range.Text) - 1)
End If
End If
NextRefNum:
Next refNum
Application.DisplayAlerts = wdAlertsAll
End Sub
Всё-таки очень полезная штука этот ChatGPT. Особено платный.
29.10.24
Не были мы знакомы, но не могу промолчать: доброй памяти уважаемому Stiverу, благодаря которому мы с 2009 г. могли продолжать читать даже тогда, когда одни библиотеки закрылись, а другие «перешли на коммерческую основу». Недолгая яркая жизнь, чудовищный диагноз и спокойный осознанный выбор. Спасибо тебе за всё. Надеюсь, преемник окажется порядочным человеком.
12.10.24
Ладно, давайте считать сумерки сгустившимися, осень наступившей, а меня вернувшимся. Начнём с серии «Animalmagic» Холли Вебб, которую (серию, а не саму Холли) я как раз распознал и причесал.
3.09.24
Удивительное дело: как вы могли заметить, сейчас я собираю тексты Холли Вебб мы с дочкой находимся как раз в середине серии «Лотти и волшебный магазин», которую читаем на русском, и я, понятное дело, стал искать и оригиналы, но не тут-то было! Даже в irc серия «Animalmagic» почему-то отсутствует, хотя «Animal Stories» там нашлись почти все, а недостающие 5 книг я по дешёвке прикупил сразу в ePub в каком-то немецком магазинчике. И вот вечером того же дня пишет мне хороший человек Евгений из Денвера: «Андрей, вы же Холли Вебб выкладываете, нужна ли серия Animalmagic? Могу отсканировать!» и после моего подтверждения уже на следующий день присылает все 7 книг в прекрасном для распознавания качестве. Огромное спасибо, Евгений! Правда, распознавать буду уже после возвращения из Калгари 17-го сентября.
25.08.24
Сегодня вашему вниманию представляется книга Зёнке Найтцеля «Солдаты Вермахта. Подлинные свидетельства боев, страданий и смерти». Всем любителям «войнушек» читать в обязательном порядке.
Сделаю ещё несколько отложенных книг, пока моя работа не вернулась из Чикаго.
23.08.24
6 лет назад мы списались с хорошим человеком по имени Александр Губарев и вместе купили отсутствовавшие у меня шведские книжки книжки Туве Янссон: пришли они, понятно, к Александру, которому нужна была для своего проекта именно бумага, и он её отсканировал, прислав мне сканы. Теперь, когда библиотека укомплектована файлами .fb2, у меня дошли руки до распознавания и вычитки, на что ушла вся неожиданно освободившаяся неделя. Сразу говорю, прилично сделаны только вордовские файлы, а .fb2 представляют собой чистой воды калибрятину, так что я надеюсь на вас: умельцы, пожалуйста, поправьте книжки, если владеете соответствующим редактором, и пришлите мне (кстати, недавно обновилсяFictionBook Editor, который до этого находился в стазисе порядка 9 лет). Но с текстом всё в порядке, опечаток минимум, читать вполне можно.
Проблема помимо отсутствия обычной разметки в том, что в «Kometjakten», скажем, некоторые картинки собраны из двух, чтобы текст их мог обтекать, примерно как в оригинальной вёрстке, а в .fb2 всё это развалилось в линейную последовательность. Кроме того, в той же книжке есть буквицы, которые после конвертации перестали быть таковыми и теперь живут отдельно рядом с началом соответствующего абзаца. Я, видимо, помимо всего прочего закину вордовские файлы ещё куда-нибудь на Флибусту в надежде на то, что тамошние завсегдатаи смогут правильно отверстать .fb2.
На всякий случай предупреждаю, что мой «отпуск» пока не кончился, к сожалению, а работа над Янссон была кратким лирическим отступлением.
27.07.24
Будем считать, что последние полгода я хорошо поработал. Теперь у библиотекаря небольшой отпуск во-первых, появилась работа, которая сейчас занимает всё свободное время, а во-вторых впереди две поездки. Время от времени, конечно, буду что-то подбрасывать (авось удастся дособрать Каттнера). Скоро увидимся!
9.06.24
По поводу калибрятины. Во-первых, над библиотекой работаю я один, помощников нет. Во-вторых, калибру скармливается чистый выверенный мною (за редкими исключениями) текст, поэтому проблем быть не должно. Хотите перемен участвуйте в них, не критикуйте.
1.06.24
Сделал авторские биографии collapsible, оставив один абзац, остальное (если оно есть) откроется по щелчку на надписи «Читать дальше». Проверьте, пожалуйста, у всех ли нормально работает.
23.05.24
Обновил библиотеку. Заодно выяснилось, что тексты считались неправильно: в их число включались отсутствующие и просто упомянутые в библиографиях. Исправил.
Немного изменил формат выдачи списка обновлений, пока больше менять ничего не хочу, если есть пожелания пишите.
11.05.24
Теперь библиотека по умолчанию открывается списком обновлений за последние 3 месяца. Сделано примитивно, но работает и пока останется в таком виде. Советы по изменению/добавлению функциональности принимаются, хотя то, что я им последую, не гарантируется как технические возможности имеющихся механизмов сайта, так и мои программистские способности сильно ограничены.
Латынь (Соболевский) идёт очень медленно. Из 67 стр. распознанного раздела Verbum за 4 дня вычитал только 9 страниц (ну да, с поправкой на то, что навалились и другие дела, да ещё и посетители, увидев, что сайт снова зашевелился, начали радостно писать мне письма самого разного содержания). На всякий случай напоминаю, что вообще происходит: я распознаю скан, перегоняю его в Word, после чего вычитываю и верстаю текст, стараясь держаться по возможности ближе к оформлению оригинала. Фактически, с поправкой на качество исходника, это сводится к набору 50 % текста заново. Далее мои скрипты-макросы переведут это дело в HTML и потребуется, как я надеюсь, минимальная чистка с ремонтом таблиц и форматированием сносок плюс расстановка ссылок на параграфы и формирование оглавления. В общем, чем раньше будет сделана вордовская часть работы, тем раньше закончим.
Поэтому желающих помочь приглашаю присоединяться, этот долгострой давно пора завершить и перейти к чему-нибудь поинтереснее.
Кстати, есть вопрос. Нужен вебовский WYSIWYG-редактор, что посоветуете? Раньше я всегда пользовался Dreamweaver 4.01, он лёгкий и без избыточных функций плюс у меня на него с давних пор лицензия, но он плохо поддерживает масштабирование экрана Windows 10, в результате чего работа с ним превращается в издевательство над глазами. Я посмотрел, что представляет собой современная его инкарнация и ужаснулся. Решил проэкспериментировать с промежуточными версиями, прямо сейчас печатаю этот текст в восьмёрке, но и она, и её сестрички почему-то жутко тормозные. Попробовал BlueGriffon, он прекрасен, но! Мне на нынешнем сервере нужно работать с ASCII-файлами и весь Unicode загонять в entities, а этот замечательный редактор, наоборот, все существующие entities принудительно перегоняет в Unicode, и я не вижу, как этого избежать.
Не подскажете, что делать? Повторюсь: просто редактор кода мне не нужен, для этого есть VS Code и он меня полностью устраивает. Нужен именно VWYSIWYG, но такой, который не будет модифицировать мой код.
2.05.24
Попросили расписать, что же вошло в последнее обновление библиотеки, раз скрипта с автоматическим анонсом пока нет.
Зачем тут Эмма Герштейн? Ну, материала-то у неё интересного много, куда деваться. Я, скорее всего, и Ирину Одоевцеву с Ниной Берберовой выложу. Вокруг нескольких драгоценных личностей вилось много публики, и какие-то крупицы информации внесли практически все, хоть что-то написавшие, а уж их тараканов придётся отсеивать нам с вами. Я вообще планирую по биографиям этого периода хорошенько пройтись, присоединяйтесь. Между прочим, со Л. Н. Гумилёвым в последние годы его жизни меня познакомил А. А. Собчак, как-нибудь при случае раскажу, было невероятно интересно встречаться с этим человеком, пусть даже большинство его теорий на сегодняшний день кажутся не более чем забавными.
...кстати, латынь пошла неимоверно трудно. Я совершенно забыл, как набирать все эти бреве/макроны, а уж тот факт, что в книжке иногда их не отличить друг от друга, пока удручает очень сильно. Но ничего: как всегда, совместными усилиями справимся.
Раз я уж впервые за эту весну решился выгулять свой новый EOS R3 в парке (в котором не был, кстати говоря, сто лет), пока не осыпалась окончательно сакура, то ловите немного фотографий.
1.05.24
Ну вот, старые «долги» отдал. Теперь латынь! Не могу гарантировать, что прямо уж совсем не буду ничего добавлять в библиотеку, посмотрим. И ещё третьей левой задней ногой стану неспешно писать скрипт автоматического отчёта о новостях библиотеки. До связи!
30.04.24
Доделываю последнего автора из «отложенных» Лидию Корнеевну Чуковскую. Остался трёхтомник записок об Ахматовой.
Ребята читайте книги! Читайте с детства. Нет никакой гарантии, что вам повезёт, вы в любом случае увеличите шанс на то, что крохотная искорка здравого смысла, честности и чистоты успеет в вас вырасти и не поддаться, когда вас попытаются превратить вас в послушный проводник чей-то больной воли.
25.04.24
Прощаемся с Андреем Беляниным. Прямо почти жалко, как и в случае с Марией Семёновой, но эту мерзость надо безжалостно выкорчёвывать.
25.04.24
Что делаю: приканчиваю упоминавшуюся ранее папку, застрял на мемуарах Надежды Мандельштам, очень захотелось привести в тексте (вордовском, разумеется) в порядок сноски и всякие прочие знаки препинания. Это работа примерно на неделю. Впрочем, воспоминания Надежды Яковлевны того стоят. Желание убирать из библиотеки вордовский формат в очередной раз пропало напрочь.
Получил интересное письмо. Автор его очень молодой человек: по крайней мере, это видно по его риторике и по явно выраженной искренней надежде на то, что после получения и прочтения я немедленно примусь исправлять ситуацию. Что исправлять?.. тут надо писать отдельно по пунктам, сразу обо всём не получится.
Пункт первый воровство. Я, дескать, обокрал весь Рунет и утащил себе все книжки.
Дорогой Алексей! Я действительно уже давно (вот целых полтора месяца) не занимаюсь сканированием и распознаванием текстов, а попросту беру их где нахожу и иногда улучшаю в меру собственной испорченности. Но меня отчасти извиняет то, что среди безбожно украденных текстов я до сих пор нахожу ошибки работы ранних версий своих скриптов и макросов, которые существуют примерно столько лет, сколько Вы живёте на свете. То есть украденное мною часто ранее было украдено (?) у меня же, а это куда более сложный юридический кейс, чем Вы изволили заметить.
Если серьёзно, любая библиотека это подборка текстов, принцип формирования которой может варьировать. Я собираю то, что нравится мне. Надеюсь, что никого при этом не обидел и Флибуста не пришлёт рассерженное письмо от лица какого-нибудь активного участника. Ссылка на неё у меня стоит, если что-то надо упомянуть легко, просто укажите. Тема закрыта.
По поводу книжек Докинза. Да, я активный атеист и отношусь к верам и религиям безо всякого уважения. Уважение к конкретным людям у меня формируется помимо их религиозности, если, конечно, последняя не переходит в клиническую фазу. На этом всё. По поводу доказательной базы и прочего уж извините, но Докинз (как и я сам) для меня гораздо больший авторитет, чем Вы и Ваши гипотетические наставники.
И последнее о патриотизме. Вы, батенька, не жили при СССР, но совершаете опять же, наверняка благодаря каким-то своим наставникам, эту страну нежно любящим, ту же ошибку, что и многие до Вас: Вы ставите знак равенства между нашей с Вами родиной и нынешним её царьком, по недоразумению именуемым президентом, и его присными. Знаете, у той же Н. Я. Мандельштам очень хорошо написано о похожих людях и процессах, происходивших в России чуть меньше века назад. Почитайте, не пожалеете. Волосы дыбом встают от того, насколько нынешняя плесень склонна повторять ходы той, столетней давности. И это гораздо более достойной чтение, чем Библия, которую Вы мне настоятельно рекомендуете хотя бы полистать и которую я, опять же, читал ещё до Вашего рождения, что отчасти и явилось причиной того, что я eventually стал атеистом.
Заверяю Вас, что эти рекомендации могут помочь Вам через несколько лет (когда красные с белыми в очередной раз поменяются местами) ощущать стыд за свою нынешнюю позицию и это письмо с несколько меньшей остротой.
21.04.24
Папка почти закончилась. Сегодня выложены Ли Смолин, Мария Крюгер и Светлана Богданова. Смолин, к моему величайшему сожалению, не весь, помогайте искать тексты. «Голубая бусинка» давно была готова, но вчера я очень удачно углядел в одном польском магазинчике распродажу и купил сразу 3 оригинальных электронных текста буквально за пару долларов. О Богдановой не спрашивайте :) «Сказка об Асе...» была прочитана ещё в прошлом году, но тут знакомая попросила раздобыть некие «иронические детективы» того же автора, о существовании которых я не имел ни малейшего понятия, и раз уж они попали в руки, я решил что ж, судьба. Если это чистой воды мусор скажите, уберу.
Разбираем всё ту же отложенную папку: сегодня немного псевдонауки, альтернативной медицины и математики с криптографией. Приветствуем Леонида Подымова и Саймона Сингха!
18.04.24
В продолжение медицинской темы выкладываю замечательную книгу Джошуа Мезрика по трансплантологии «Когда смерть становится жизнью. Будни врача-трансплантолога» (в комплекте с приличного качества оригиналом) и некоторые интересные тексты Криса Фрита: к сожалению, ePub оригинала «Making up the Mind; How the Brain Creates Our Mental World» Фрита достался мне в формате «конвертиван из PDF вслепую», в результате чего получилось то, что получилось: для раздёргивания на цитаты тексты ещё как-то подходят, но для чтения увы. Если мимо кого-то будет пробегать оригинал человеческого качества, пожалуйста, пришлите.
17.04.24
До латыни опять дело не дошло: обнаружил папку с книгами, которые зарекался выложить в библиотеку сразу после того, как закончится только что завершившийся глобальный процесс. Слово, тем более данное самому себе, надо держать: ловите две (если не считать оригиналов, которые тоже в комплекте) прекрасные книги Сиддхартхи Мукерджи о медицине, биологии и генетике.
16.04.24
Хотелось перед «провалом» в латинскую грамматику сделать что-нибудь приятное для себя и почтеннейшей публики. «Приятность», так или иначе, изрядно затянулась: Ричард Докинз, полное собрание сочинений которого я хотел выложить, дался с некоторым трудом, не удалось найти один оригинал (точнее, он нашёлся, но в виде PDF с такой вёрсткой, что связываться я не стал) и один перевод, смотрите сами. В одиночку такие дела затевать не стоит. На днях постараюсь найти время и развить эту мысль :)
9.04.24
Так... работа неожиданно кончилась. Даже не знаю, что и сказать. Количество текстов в библиотеке тоже получилось занятное.
8.04.24
Закончил с буквой «х», добавлено ~130 текстов. Неужели до мая закончу? Аж не верится.
1.04.24
Закончил с буквой «ф», добавлено ~70 текстов. Потихоньку продвигаемся.
23.03.24
Закончил с буквой «у», текстов добавилось всего штук 5, так что говорить не о чем. Возможно, следующая буква будет интересней.
21.03.24
Закончил с буквой «т», добавлено ~80 книг. Толкина на упомянутых в прошлом обновлении языках не сделал (просто рассчитал, сколько это заняло бы времени, и от греха отложил в отдельную папочку на будущее) , зато сделал все 8 книг «Мэри Поппинс» Памелы Треверс на русском и английском. После окончания комплектации надо в первую очередь сверстать страницу, на которой будут автоматически показываться обновления по датам, а то как-то скучно всё это описывать вручную. Да, я знаю, что в любой сетевой библиотеке это реализовано уже примерно 20 лет назад. И таки-нет, я не тормоз :)
14.03.24
Закончил с буквой «с», добавлено ~240 книг на русском и иностранных языках. Нас покинула Мария Семёнова.
Вы спросите отчего столько времени ушло на одну букву, пусть и довольно «жирную»? Объясняю. В процессе возни со Стокером обнаружил там же перевод «Скорби Сатаны» Марии Корелли. Создал отдельного автора, перенёс текст. Стал искать оригинал опаньки, нет нигде, даже в irc! Пошёл на Google Books, начал рыться. Обнаружил, что единственный доступный для покупки электронный экземпляр состоит из отсканированных джипегов. Купил, разобрал на отдельные картинки, скормил FineReaderу. Вычитка заняла неожиданно много времени. Вот вам и ответ.
К сожалению, такое у меня происходит постоянно. Вроде бы текущая задача состоит исключительно в добавлении fb2 к имеющимся текстам, ан нет смотришь, что-нибудь вкусное обнаруживается. Вот и сейчас: нашёлся «Властелин колец» Толкина на немецком и чешском, но в формате PDF! А это значит, как правило, что тексты после конвертации будут в совершенно невменяемом виде, придётся вычитывать. А «отпустить» уже не могу :)
26.02.24
Закончил с буквой «р», добавлено ~90 книг на русском и иностранных языках. Следующая буква «большая», ждать комплектации придётся существенно дольше.
21.02.24
Закончил с буквой «п», добавлено 120 книг на английском, польском, болгарском и других языках.
18.02.24
Закончил с буквой «о», добавлено 60 книг на разных языках. На следующую букву уйдёт больше времени.
15.02.24
Закончил с буквой «н», в плюсе сотня книг на разных языках, в основном на английском и украинском.
13.02.24
Закончил с буквой «м», а заодно добавил 3 десятка книг на разных языках. Судя по скорости одиночной работы (помощники время от времени появляются, но так же регулярно сливаются), всё идёт к тому, что этой весной библиотека будет-таки переведена на 2 формата. А вот потом... что потом? Убирать .docx-и? Видимо, так и поступлю. Статистика говорит, что их практически не качают, так что смысла занимать дисковое пространство нет. Но та же статистика говорит, что почему-то стала пользоваться достаточно большой популярностью латинская грамматика Соболевского, точнее та её часть, что я успел завершить, так что до дальнейшего развития библиотеки надо бы закончить учебник. Но об этом говорить рановато.
5.02.24
Что ж, друзья... всё пока плохо, но жить как-то надо. В конце-концов, упырь когда-то кончится. А пока помогаем чем можем. Библиотека ждёт от вас тексты на украинском языке, языковой раздел соответствующие учебники. Слава Украине!
В работе по комплектации библиотеки файлами .fb2 только что закончил с буквой «л». Не обессудьте, отправил в пешее эротическое Лукьяненко, Дивова и пару менее известных нелюдей. Уж очень плохо пахли.