![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
Как я уже писал автору ljupdate, после того, как я начал использовать ljupdate, единственное, чего мне не хватало, это возможности отвечать на ЖЖ комментарии в Емаксе.
Я посмотрел, как это сделано в Semagic, и обнаружил, что там это делается черезж... ужасный хак. В браузере на ссылке, ведущей на добавление комментария, из меню запускается Semagic. Дальше в Semagic пишется комментарий, и после нажатия на кнопку Post, этот комментарий автоматически копируется в поля формы в браузере, после чего опять нужно нажать на кнопку Post, только на этот раз уже в браузере.
Увидев это, я сразу вспомнил, что уже видел что-то подобное в Firefox. Соответствующее расширение называется mozex. Я его пару лет назад использовал в Mozilla, но оно перестало работать в Firefox. Теперь я нашел новую версию, настроил, и все прекрасно заработало.
Итак, что нужно сделать для того, чтобы писать ЖЖ комментарии в Емаксе:
Я посмотрел, как это сделано в Semagic, и обнаружил, что там это делается через
Увидев это, я сразу вспомнил, что уже видел что-то подобное в Firefox. Соответствующее расширение называется mozex. Я его пару лет назад использовал в Mozilla, но оно перестало работать в Firefox. Теперь я нашел новую версию, настроил, и все прекрасно заработало.
Итак, что нужно сделать для того, чтобы писать ЖЖ комментарии в Емаксе:
- Идем на сайт mozex.mozdev.org, оттуда идем дальше по ссылке на http://www.gatsby.ucl.ac.uk/~iam23/code/mozex, и на этой странице кликаем на ссылку с текстом "Install a UTF-8 forcing, Firefox 1.5 compatible version of Mozex." Эта ссылка ведёт на файл mozex_utf8-1.071.xpi, т.е. mozex с поддержкой Unicode.
- После установки mozex и перезагрузки браузера, открываем Tools->Extension и Preferences для mozex. В настройках в поле Textareas пишем `/full-path/emacsclient %t', где full-path - полный путь к emacsclient. Если используется Емакс из CVS, то и путь тоже должен быть к emacsclient из CVS, т.е. из подкаталога lib-src, т.к. emacsclient из CVS не совместим с более старыми версиями.
- В свой .emacs добавляем (и запускаем) такой код:
(server-start) (defun my-lj-reply-visit () (when (string-match "^mozex\\.textarea" (file-name-nondirectory (buffer-file-name))) (recode-region (point-min) (point-max) 'utf-8 'koi8) (set-buffer-file-coding-system 'utf-8))) (add-hook 'server-visit-hook 'my-lj-reply-visit) (defun my-lj-reply-switch () (when (string-match "^mozex\\.textarea" (file-name-nondirectory (buffer-file-name))) (html-mode))) (add-hook 'server-switch-hook 'my-lj-reply-switch)
При желании берём уakshaal код для добавления времени написания комментария и вешаем его на хуки server-visit-hook и server-done-hook.
- Теперь для использования всего этого хозяйства, в пустом поле для ответа в браузере из popup-меню выбираем mozex->Edit Textarea, и переключааемся в Емакс. Пишем ответ и нажимаем `C-x #'. Переключаемся обратно в Firefox, и кликаем левой кнопкой мышки в Textarea. Написанный в Емаксе текст появляется в браузере. Нажимаем кнопку Post, и вуаля!
no subject
Date: 2006-05-05 09:59 pm (UTC)no subject
Date: 2006-05-05 10:29 pm (UTC)Можно, конечно, попробовать посылать (POST) комментарии через HTTP, заполняя поля формы правильными значениями. Но мне еще не понятно, откуда брать значения для полей lj_form_auth, login_chal, chrp1 и т.д. В HTML-source страницы с формой для ответа видно, что эти поля с типом hidden имеют значения, уже полученные с сервера.
no subject
Date: 2006-05-06 05:05 am (UTC)Другой вопрос, что после того как коментарий отослан, то надо бы перегрузить html страницу в браузере. Как это сделать - идей пока нет.
no subject
Date: 2006-05-07 07:49 pm (UTC)Всё остальное можно делать также в Емаксе.