Этот сайт — моя персональная записная книжка. Интересна мне, по большей части, история, своя жизнь и немного программирование.

Шахматы в «Виоле»

Посмотрел несколько готовых демок для «Виолы». Больше всего меня смутили шахматы — я-то думал в моём варианте этого браузера что-то сломано, а на деле это очень простая программа, где можно двигать любые фигуры — контроль хода рудиментарный. При этом нет ни игры за компьютер, ни даже взятия фигуры.

Для браузера, который в девяностые был первопроходцем в вебе, это более чем круто, но я всё равно ожидал какой-то более полный вариант.

Потихоньку начинаю смотреть что же не работает в интерпретаторе встроенного языка. Что меня поражает до сих пор — это возможность на нём дописывать браузер.

Например, я недавно делал поддержку протокола «Веб-архива» — если сайта нет, то я ищу его в «Веб-архиве». Чтобы это смотрелось естественно, мне хотелось в урле браузера оставить только урл открываемого сайта. Это я сделал при помощи встроенного языка:

/* Show original URL when loading via Wayback Machine */
dispURL = docURL;
/* Rule: find "https://web.archive.org/web/", then drop until next '/' */
wbPrefix = "https://web.archive.org/web/";
wbAt = findPattern(dispURL, wbPrefix);

if (wbAt != -1) {
    wbAfter = wbAt + 1;
    wbRest = nthChar(dispURL, wbAfter, 999);
    wbSlash = findPattern(wbRest, "/");

    if (wbSlash != -1) {
        dispURL = nthChar(wbRest, wbSlash + 1, 999);
    }
}
mvw.doc.url("show", dispURL);

Изобретённый компанией «Мозилла» «зул» (XUL), который позволяет делать то же самое , появился только в 1999-м, а тут браузер начала девяностых! Если бы он в своё время собрал вокруг себя сообщество побольше, интерактивная революция в вебе могла случиться на десятилетие раньше.