Автор Гілка: docs.linux.org.ua & ikiwiki?  (Прочитано 22100 раз)

Відсутній Михайло Даниленко

  • Адміністратор ЩОДО
  • Літератор
  • *****
  • дописів: 1262
  • Карма: +0/-0
  • [Debian Stretch]
docs.linux.org.ua & ikiwiki?
« : 2012-10-31 00:03:43 »

Доброго вечора, панове.

Я довів конвертер до стану, коли подальше його вдосконалення буде складнішим,
ніж ручне виправлення сторінок. Сторінок порядно (1.5К), тому перш ніж братися
за це, я вирішив представити на розгляд спільноті результати роботи
конвертера, пояснити обсяг роботи і запитати, чи комусь це потрібно - лопатити
сторінки, які потім підуть у /dev/null у мене охоти нема.

Отож, конвертер перетворює xml-дамп історії сторінки mediawiki на git-репо зі
збереженням історії редагування, після чого конвертує форматування у
multimarkdown. Щоб зменшити кількість сторінок, я також викидаю сторінки
перенаправлення (результат перейменування) - це коло 0.5К (тобто чверть).

Проте multimarkdown дещо простіший за wikitext, а дещо є фічами самого
mediawiki, отож результат не ідеальний. Отож, що треба фіксити:

 * посилання на вилучені редиректи
 * темплейти й спеціальні змінні
 * деякі артефакти конверсії
 * таблиці, які не вмістилися по ширині, оформлені як простий html, тож
   markdown їх вміст не рендерить
 * div’и - те саме, вміст не рендериться
 * малюнки подекуди потребують зменшення
 * спам (його теж порядно)

Іківікі має свої плюси і свої мінуси.

 * Сторінки у репо як прості файли, причому з історією.
 * Для перегляду не потрібно викликати cgi-скрипти - сторінки лежать на
   сервері як статичний html.
 * Можливість пакетного злиття і залиття (якщо надати дозвіл на git push).
   Після злиття можна отримати копію сайту у html, натравивши ikiwiki на
   копію репо.
 * Я ніби бачив плагін для використання розмітки man-сторінок як вхідного
   формату.
 * Markdown направлений на те, щоб сирці сторінки були якмога читабельніші.
   (чи він цього досягає, чи ні - це інше питання ;)).
 * Деякі плагіни ikiwiki роблять речі простішими - наприклад, я бачив yurchor
   використовував на кожній сторінці темплейт prevnext, у ikiwiki є trail, де
   все що треба зробити - на сторінці змісту (яка посилається на інші)
   замінити [[pagename]] на [[!traillink pagename]]. Це автоматично додасть
   prev/up/next на сторінках.
 * Директиви inline та map дозволяють робити доволі цікаві речі зі сторінками.
 * Є плагін po, який можна використати для того, щоб мати одночасно оригінал і
   переклад, причому переклад робиться через gettext - тобто перекладач може
   використовувати свої улюблені утиліти і історію перекладів у процесі (але я
   його ще не використовував, і не знаю, чи воно дійсно зручно).
 * Я думаю, мені вдасться без особливих проблем прикрутити логін по базі даних
   форуму.
 * Плагіни дозволяють доволі цікаві речі щодо дозволів редагування.

Проте:

 * Wikitext порівняно більш поширений і знайомий редакторам.(?)
 * Відповідно, має більшу вірогідність можливості використання деінде.
 * Wikitext має кращу підтримку таблиць.
 * Потрібно фіксити форматування, це купа роботи.
 * Якогось біса у html вся кирилиця конвертується у &#0XXX;, що не дуже
   зручно. Можливо мені вдасться вирішити цю проблему пізніше.
 * Потрібно збирати пакунки під alt 4.0
 * Ikiwiki дещо мінімалістичний у сфері оформлення.
 * Якщо для mediawiki є такий-сякий парсер, що будує дерево (не без глюків),
   то для multimarkdown я такого не знайшов (поверхневим гуглем). Проте завжди
   залишається можливість відрендерити у html і потім конвертувати в потрібний
   формат.
 * ? (я не дуже знайомий з mediawiki, тому мабуть є й інші переваги)

Тестовий екземпляр вікі: http://dlou.isbear.org.ua/ (дозволене редагування)

Прошу подивитися і висловити вашу думку. Звісно, зараз воно виглядає не дуже, але
після переробки, я сподіваюся, буде більш-менш. Я сподіваюся, що за тиждень-два з
переформатуванням я впораюсь. Просто чи варто - якщо більша частина редакторів
відвалиться з-за несумісності з wikipedia/іншими вікі - то ну його.

« Змінено: 2012-10-31 00:15:20 від ISBear »

Відсутній yurchor

  • Видавець
  • *******
  • дописів: 3636
  • Карма: +3/-0
  • Grateful for our Iron Lung
    • Вікі користувачів KDE
Re: docs.linux.org.ua & ikiwiki?
« Відповідей #1 : 2012-10-31 07:08:50 »
Виглядає чудово. Дякую!

Лише одне питання: нас не заллють ботами спамом?
Try to reach you before winter comes
Always a place for you in my heart
You're not alone
All used up
I'd give anything to talk to you

Відсутній Михайло Даниленко

  • Адміністратор ЩОДО
  • Літератор
  • *****
  • дописів: 1262
  • Карма: +0/-0
  • [Debian Stretch]
Re: docs.linux.org.ua & ikiwiki?
« Відповідей #2 : 2012-10-31 12:44:54 »
ikiwiki має плагін blogspam, що використовує blogspam.net для перевірки, але треба буде подивитися, чи воно працюватиме і не заважатиме роботі.

Якщо прикрутиться логін через форумний акаунт, то можна буде вимкнути інші способи логіну. Наскільки я можу судити, боти форумну капчу поки ще не зламали, тож тоді проблем зі спамом взагалі не буде. Правда наразі на тестовому вікі я дозволив редагування сторінок обговорення анонімно, це може бути проблемою.

Також є сторонній плагін для використання recaptcha.

Відсутній Михайло Даниленко

  • Адміністратор ЩОДО
  • Літератор
  • *****
  • дописів: 1262
  • Карма: +0/-0
  • [Debian Stretch]
Re: docs.linux.org.ua & ikiwiki?
« Відповідей #3 : 2012-10-31 20:11:17 »
Ок, оскільки всі інші мовчать, я потихеньку візьмуся за переформатування.

Виправив багу у конвертері, з таблицями (чи можна пітон якимось чином примусити вимагати декларацію змінних?), перегенерував вікі.

Виявив, що reference ([ name ][ #ref ]) та footnote ([ ^fn ]) з multimarkdown не працюють у вікі, мені здається це пов’язано з тим, що вони використовують синтаксис, пов’язаний з посиланнями, і я підозрюю, що ikiwiki перехоплює їх раніше.

Edit:
Виявив, що я сферичний телепень, і multimarkdown не працював взагалі з тої простої причини, що на сервері не був встановлений відповідний модуль перла.
« Змінено: 2012-10-31 20:36:55 від ISBear »

Відсутній Володимир Лісівка

  • Адміністратор ЩОДО
  • Видавець
  • *****
  • дописів: 3820
  • Карма: +11/-0
  • Програміст
Re: docs.linux.org.ua & ikiwiki?
« Відповідей #4 : 2012-11-09 13:47:49 »
Можна закинути ikiwiki на постійне місце проживання (або зробити зміни в DNS)?
Краще мати частково робочу вікі чим ніякої не мати.
[Fedora Linux]

Відсутній Михайло Даниленко

  • Адміністратор ЩОДО
  • Літератор
  • *****
  • дописів: 1262
  • Карма: +0/-0
  • [Debian Stretch]
Re: docs.linux.org.ua & ikiwiki?
« Відповідей #5 : 2012-11-09 22:20:32 »
Я дещо переоцінив свої сили, і досі перелопатив лише мабуть половину (прогресбар дещо неточний). (У процесі виявив пару баг :))

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

На постійне місце проживання його можна закинути, але для цього треба збирати пакунки під альт4, що я можу зробити, але це займе деякий час. Альтернативно поки можу викласти його туди у ro (рсинкати статичний html).

Якщо робити повне вікі, спочатку я зроблю його дещо менш функціональним, ніж описав вище, і потім буду потроху додавати модулі (наприклад, завантаження файлів - я ним досі не користувався, тому потрібен час на експерименти).

Відсутній gvy

  • Письменник
  • *****
  • дописів: 576
  • Карма: +0/-0
Re: docs.linux.org.ua & ikiwiki?
« Відповідей #6 : 2012-11-09 22:26:49 »
На постійне місце проживання його можна закинути, але для цього треба збирати пакунки під альт4, що я можу зробити, але це займе деякий час.
Можна спробувати збекпортувати пакунок з t6/branch, а взагалі-то краще було б контейнер й поновити.  Втім, поки це все робиться -- можна й статику rsync'ом, дійсно.

Відсутній Володимир Лісівка

  • Адміністратор ЩОДО
  • Видавець
  • *****
  • дописів: 3820
  • Карма: +11/-0
  • Програміст
Re: docs.linux.org.ua & ikiwiki?
« Відповідей #7 : 2012-11-10 00:33:55 »
Можна спробувати збекпортувати пакунок з t6/branch, а взагалі-то краще було б контейнер й поновити.

Поновити контейнер було б дуже добре — мене перл зразка 2002-го року вже трохи дістав. :-)
[Fedora Linux]

Відсутній Михайло Даниленко

  • Адміністратор ЩОДО
  • Літератор
  • *****
  • дописів: 1262
  • Карма: +0/-0
  • [Debian Stretch]
Re: docs.linux.org.ua & ikiwiki?
« Відповідей #8 : 2012-11-11 15:33:02 »
Закинув статичний html, воно буде щоранку його синхронізувати.

Щодо оновлення контейнера — дуже вітається, бо я щось вліз у циклічні залежності. Для роботи форуму і вікі потрібні:

* nginx
* пошта
* якщо mod_perl допоможе форуму, можна поставити apache з ним, інакше повісити fcgiwrap
* git, gitweb, ikiwiki, перлові модулі — це я можу сам зробити

Тобто php / mysql нам потрібні не будуть.

Відсутній Михайло Даниленко

  • Адміністратор ЩОДО
  • Літератор
  • *****
  • дописів: 1262
  • Карма: +0/-0
  • [Debian Stretch]
Re: docs.linux.org.ua & ikiwiki?
« Відповідей #9 : 2012-11-11 15:56:28 »
P.S. Я по дорозі дещо змінював структуру вікі, тому половина вікілінків з головної і далі не працюватиме.

Наприклад, Debian_Contents стало просто Debian з усіма сторінками, що відносяться до Debian у Debian/.

P.P.S. Хтось займається перекладом манів? Що сталося з wiki2man? Що взагалі з ними робити - їх багато, тож перш ніж за них братися варто було б визначити якусь спільну стратегію.

Відсутній Володимир Лісівка

  • Адміністратор ЩОДО
  • Видавець
  • *****
  • дописів: 3820
  • Карма: +11/-0
  • Програміст
Re: docs.linux.org.ua & ikiwiki?
« Відповідей #10 : 2012-11-17 16:18:15 »
Коротше, ніхто не займається перекладом манів. Можна з ними не паритися — я сам їх не люблю, так як вони часто не точні і застарілі.

Краще зробити утиліту, яка відкриває в перекладачі вибраний текст, щоб можна було щось вибрати і відразу перекласти — це буде корисніше.
[Fedora Linux]

Відсутній Михайло Даниленко

  • Адміністратор ЩОДО
  • Літератор
  • *****
  • дописів: 1262
  • Карма: +0/-0
  • [Debian Stretch]
Re: docs.linux.org.ua & ikiwiki?
« Відповідей #11 : 2012-11-17 18:03:05 »
Краще зробити утиліту, яка відкриває в перекладачі вибраний текст, щоб можна було щось вибрати і відразу перекласти — це буде корисніше.

З цим складно, бо:

* що розуміється під "перекладачем" — локальна програма, google translate чи якийсь інтерфейс у wiki?
* наразі ikiwiki не вміє редагування по частинам, лише повну сторінку
* це потребує javascript, якого я не знаю (не те, щоб я не зміг вигуглити потрібних мені конструкцій, але відсутність досвіду порядно впливає на час та якість виконання)

Відсутній Михайло Даниленко

  • Адміністратор ЩОДО
  • Літератор
  • *****
  • дописів: 1262
  • Карма: +0/-0
  • [Debian Stretch]
Re: docs.linux.org.ua & ikiwiki?
« Відповідей #12 : 2012-11-26 19:48:34 »
Щоб не виглядало, ніби ідея загрузла і всіма забута — поточний стан речей:

Я передивився майже усе (окрім манів). Залишилося його систематизувати та
додати сторінки структури.

Зробив переклади описів правил markdown та multimarkdown.
Залишилося написати статтю, яка збере усе у одному місці (бо деякі правила
multimarkdown вимкнені у ikiwiki, деякі мають особливості, та й саме ikiwiki
надає директиви й посилання, опис яких б було зручно мати в тому ж місці, де й
загальний синтаксис).

Виглядає так, що для нормальної роботи з кирилицею нам доведеться таки оновити
сервер, отож ми з gvy домовилися якось підняти інший контейнер, туди все
поставити, і після цього мігрувати туди.

Відсутній Михайло Даниленко

  • Адміністратор ЩОДО
  • Літератор
  • *****
  • дописів: 1262
  • Карма: +0/-0
  • [Debian Stretch]
Re: docs.linux.org.ua & ikiwiki?
« Відповідей #13 : 2012-12-03 20:56:12 »
В найближчі дні буду дещо завантажений, але процес зрушив з місця.

Велике спасибі пану Шигоріну за оновлення контейнера та збільшення обсягу пам’яті.

Поки трохи змінив налаштування nginx, статика сайту тепер має вся обслуговуватися ним,
тож вантажитися має трохи швидше. До того ж без mysqld на сервері стало значно просторіше.

Підняв hgweb: http://linux.org.ua/hg .
« Змінено: 2012-12-03 23:41:07 від ISBear »

Відсутній Михайло Даниленко

  • Адміністратор ЩОДО
  • Літератор
  • *****
  • дописів: 1262
  • Карма: +0/-0
  • [Debian Stretch]
Re: docs.linux.org.ua & ikiwiki?
« Відповідей #14 : 2012-12-07 01:32:11 »
Нарешті впорався з входом у вікі через акаунт на форумі. Отож, вікі тепер відкрите для редагування. Зауважте, що логін у вікі чутливий до регістру, а на форумі — ні, тобто для форуму ISBear та isbear — одне й те ж, для вікі — ні. Може згодом прикручу й цю фічу, але це не приорітетно.

Анонімне редагування сторінок обговорення вимкнув, бо навіть за той короткий час, як воно у мене на сервері висіло, два боти таки добралися. Реєстрацію на вікі окремо теж вимкнув, лише через форум.

Подальші покращення будуть, але трохи згодом.
« Змінено: 2012-12-07 01:34:54 від ISBear »