LINUX.ORG.RU

Пара вопросов по emacs'у


0

0

1. Как выбирать тип кодировки, редактируемого файла? 2. Возможно ли из самого сабжа изменять геометрию его окна? Под окном имеется ввиду окно, выделяемое WM'ом сабжу. Emacs-21.2.2

Ну е-мое. В info emacs все подробно описано. Про кодировки файла - 'Specifying a Coding System', выделяемое WM'ом окно в емаксовой терминологии - frame.

necrophile
()
Ответ на: комментарий от necrophile

> Про кодировки файла - 'Specifying a Coding System' Ммм, я изначально неверно высказался. Я хочу менять кодировку на лету для уже открытого буфера. Ну, скажем по примеру mc: C-t - выбор кодовой страницы, которая на лету меняет кодировку файла. Как вот это сделать?

> выделяемое WM'ом окно в емаксовой терминологии - frame. Да, нашел описание несколько функций, таких как например set-frame-width, set-frame-height. Написано, что они являются встроенными функциями. Но, при попытке их, так сказать, запустить на выполнение (M-x set-frame-width) грит - нет такой функции. Сделал (load "frame) - все равно нет.

Dmitry_Panoff
() автор топика
Ответ на: комментарий от Dmitry_Panoff

>Я хочу менять кодировку на лету для уже открытого буфера. Ну, скажем по примеру mc: C-t - выбор кодовой страницы, которая на лету меняет кодировку файла. Как вот это сделать?

Вот тут(последний пример):
http://www.emacswiki.org/cgi-bin/wiki/GnuEmacsRussification

>Да, нашел описание несколько функций, таких как например set-frame-width, set-frame-height. Написано, что они являются встроенными функциями. Но, при попытке их, так сказать, запустить на выполнение (M-x set-frame-width) грит - нет такой функции. Сделал (load "frame) - все равно нет.

Собственно C-h a frame выдает все функции и переменные со словом frame и про изменение размера я тоже ничего не вижу ;(

necrophile
()
Ответ на: комментарий от Dmitry_Panoff

> Но, при попытке их, так сказать, запустить на выполнение (M-x set-frame-width)

Функция -- это не то же самое, что команда. Интерактивно пускать можно только команды. Если тебе нужно интерактивно установить размер окна, сделай M-: и набери '(set-frame-width (selected-frame) 80)'.

uj2 ★★★
()
Ответ на: комментарий от uj2

> Вот тут(последний пример): http://www.emacswiki.org/cgi-bin/wiki/GnuEmacsRussification

То, что доктор прописал, спасибо.

> Функция -- это не то же самое, что команда. Интерактивно пускать можно только команды. Если тебе нужно интерактивно установить размер окна, сделай M-: и набери '(set-frame-width (selected-frame) 80)'.

Вот. А я думал, что все функции можно использовать как команды... Сделал следующее для уменьшения высоты и ширины фрейма соответственно:

(global-set-key [f5] (lambda () (interactive) (let ((height (frame-height (selected-frame)))) (decf height 10) (set-frame-height (selected-frame) height))))

(global-set-key [f6] (lambda () (interactive) (let ((width (frame-width (selected-frame)))) (decf width 10) (set-frame-width (selected-frame) width))))

Всем спасибо, вопросов больше не имею. :)

Dmitry_Panoff
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.