Обтекание текста переменной ширины в Emacs Lisp - PullRequest
2 голосов
/ 31 октября 2008

Я взламываю приложение для тегов для emacs. У меня есть облако тегов / взвешенный список, успешно отображаемый в буфере, но я сталкиваюсь с ошибкой. Мне нужно уметь правильно переносить буфер в слова, но я не знаю, с чего начать.

Шрифт, который я использую, является шрифтом переменной ширины. Кроме того, каждый тег будет иметь разный размер, в зависимости от того, сколько раз он появляется в буфере. Наконец, окно, в котором отображается tagcloud, может быть окном шириной 200 пикселей или полной шириной экрана.

Я действительно понятия не имею, с чего начать. Я пробовал режим ярусов в буфере tagcloud, но это не сработало.

Исходный код: http://emacswiki.org/cgi-bin/emacs/free-tagging.el

Ответы [ 2 ]

3 голосов
/ 01 ноября 2008

Вы, вероятно, хотите отслеживать posn-at-point и posn-at-x-y, когда вы помещаете теги в буфер.

0 голосов
/ 01 ноября 2008

Можете ли вы использовать (fill-paragraph) или (fill-region) или подобное? Они переносятся по столбцу, поэтому не имеют шрифтов с переменной шириной, но если заполнить столбец низко, они могут работать почти без усилий. По крайней мере до тех пор, пока вы не получите решение с идеальным разрешением пикселей :-) (может быть YAGNI ...)

...