LINUX.ORG.RU

Развлекательно-познавательная статья о Emacs


0

0

На своем сайте я разместил статью о Emacs. Надеюсь, что она будет интересна, так как я старался писать о том, что использую активно сам, а не то, что можно использовать вообще.

Адрес статьи http://kulchitsky.org/rus/linux/dotem...

>>> Подробности

★★★

Проверено: maxcom

Может кто знает, как заставить Emacs из ru.utf8 в koi8-r
перекодировать когда нету шрифта уникодного ?

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

to lg:

Спасибо за дельные советы. Конечно, можно не спрашивать. Выкладывайте любые части - сочту за честь. Но может лучше я выпущу новую версию, когда все "кривости" исправлю и грамматику (спасибо всем, кто предложил дельные исправления)? Думаю, на этой неделе будет версия улучшена.

А вообще, из вашего ответа я узнал кучу нового. Сейчас пойду на .emacs проверять.

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

Может кто знает, как заставить Emacs из ru.utf8 в koi8-r перекодировать когда нету шрифта уникодного ? ---------------------

У меня были эти проблемы и я перекодировал при помощи ООо

atoku ★★★
() автор топика

Не ввязываясь в религиозные войны "кто кого победит слон или кит", добавлю, что против Вим я ничего не имею. Я его тоже использую довольно часто, чтобы там Makefile поправить или комментарий в CVS написать.

Но

1. я привык к распальцовкам емакса

2. всегда забываю в каком я режиме и это на самом деле расстраивает

3. просто емакс нравится внешне больше

4. и главное: у нас большие машины, заразы, не воспринимают огромную часть клавиатуры, если работать удаленно. Зато основную часть они понимают. И тогда, когда PageDown не работает, остается привычное C-v

К счастью емакс есть у нас везде, так же как и ви.

atoku ★★★
() автор топика

не подскажите бедному мне, какие есть emacs-perl mod-ы ? Что б там проверка перлового синтаксиса, автокомплит и т.д.(может какой дебагер перловый существует ?). А то под перл надо писать, а ИДЕ сказали лучше макса не найти. Вот начинаю его учить (и перл и макс :( ). Не дайте помереть анонимусу :).

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

Евгений! Вот спасибо. Отличные документы. Изучаю :)

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

> Так буржуи из линукс джорнал называют Open Office org

Ааа, тю, я наверно неправильно спросил.. Мне для почты надо, те
для Gnus'а когда приходит в utf8 :)

С XEmacs'ом я кое-как справился ... Вот с Emacs'ом неполучается.

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

2lg:

Кривости:

* Когда у тебя команда это набор self-insert-command комманд то биндиг лучше оформять так

(global-set-key "?" ",") --------------

Ага! Не работает так. И я вспомнил, что так уже делал!

А не работает потому, что в русской моде "?" - это уже не знак вопроса!!! А надо заменять не символ ввода а саму клавишу. А если вы попробуете заменить именно то что вводится, то тогда будет совсем плохо! В общем, в статье правильно - по другому не работает :( Хотя было бы проще!

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

Ааа, тю, я наверно неправильно спросил.. Мне для почты надо, те для Gnus'а когда приходит в utf8 :)

С XEmacs'ом я кое-как справился ... Вот с Emacs'ом неполучается. -------------

Это одна из причин, почему для почты я предпочитаю Мозиллу - там даже разбираться не надо. Одно неудобство - на любимую команду C-k эта зараза вызывает спеллчекер. Ужасно огорчает ;)

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

lg: Ага, лямбду расквотировал и все прекрасно работает! Спасибо!

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

2lg:

* C-c префикс зарезервирован для юзерских комманд

Увы, во многих модах эти связки заняты. Например, в латехе по умолчанию C-c C-o вставляет блок бегин-енд, и так далее. А вот мета-мета - свободна везде. Кроме того, мне кажется это очень удобным. :) Но комментарий в статье вставлю, спасибо.

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

* `prog' нужен чтобы оформить блок

(if t (progn (fun1)) (progn (fun2)))

---------

Убрал прогн и все работает отлично. Я думал, что если фан1, скажем, раскроется как много операторов, то прогн их соберет в один. В этом был смысл, как мне казалось, прогна. Видать, ошибся, перебдел. Он не мешал, но без него читабельнее! :) Спасибо!

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

я не нашел команды скролл-ин-что-то.

atoku ★★★
() автор топика

Кто бы что ни говорил, полноценных текстовых редакторов всего два. К сожалению. Оба уроды. Но других-то нет. Какой из них ни выбери, считай свой выбор правильным. Статьи о достоинствах одного из, абсолютно не колышут тех кто выбрал второй из. Равно как и заметки о недостатках.

Написал бы кто такое о vim, восторгов и обкакиваний было бы ровно столько же.

Есть куча отличных редакторов, но только 2 универсальных. Такова селяви на сегодняшнй день. Приходится делать невесёлый выбор.

Я выбрал vim. Не в восторге, но и не разочарован.

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

Какая версия GNU Emacs? У меня 21.3.1 (i386-msvc-nt5.0.2195), собран из исходников. Иногда зависает при простом перемещении по тексту или переходе в другое окно, при этом занятость процессора под 100%.

В .emacs ничего нет, кроме установки цветовой схемы и руссификации.

Есть еще проблемы:
- При попытке печати подвисает: экран не перерисовывает, на клавифтуру не отвечает;
- В sql-mode (sql-oracle) при передаче запроса порядка 200 строк подвисает. Если отсрелить sqlplus, то оживает.

Несколько настораживает количество варнингов при сборке, в основном, о неверном приведении типов.

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

зато он умеет работать с языками, для которых не установлена поддержка в Х-х -- я могу спокойно в GNU Emacs набирать по русски и по немецки, не заботясь что у меня есть руссификация клавиатуры и т.п.

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

cperl (лучше взять не из самого емакса, а более свежую версию) + tiny-perl из tiny-tools.sf.net

эта связка работает и с ecb+cedet

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

я работал с emacs 21.2.1 взятым с gnu.org

я работал с cc-mode + jdee + ecb + cedet + auctex + gnus -- все работало как из пушки, конфиг был тот же что и на линуксе

печать не пробовал пользоваться

ott ★★★★★
()

А мне "понравились" высказывания про "Emacs Code Browser (ecb) и программирование", пробовал я этой штукой пользоваться, она конечно помогает по коду лазить, но до визуал студии не дотягивает, особено раздражает то что она показывает структуру только одного класа, того что открытый в буфере, а если хочется дерево класов увидеть? еще хреново работает с таким понятием как "проект", тулза из CEDET для этого глючная. Вообщем поставил я для програмирования себе 2 тулзы - SourceNavigator(чтобы в чужих сырцах копаться) и Anjuta, а на емак забил :))

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

Только что собрал под RH 7.1, под консолью работает, под иксами постоянно моргает (иксы на другой машине) и через некоторое время валится.

У них на сайте лежит emacs-21.2-21.3.xdelta. Как его применить к emacs-21.3.tar.gz, чтобы получить emacs-21.2.tar.gz?

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

>и главное: у нас большие машины, заразы, не воспринимают огромную часть клавиатуры, если работать удаленно.

Похоже ты в ssh из вынды лезешь :)). Из xterm'a ssh понимает и все клавиши, и мышу.

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

Нормальная среда программирования должна быть ЛЕГКО настраиваемой и универсальной.

Поэтому либо VIM либо NEDIT. А вообще, если задачи не ограничиваются сями, то приходится увы либо KDevelop глюченый либо XBuilder тяжёлый.

Кстати, в emacs есть автоподстановка названий членов класса (как в Kylix или Delphi и всех других рапидов)?

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

Из xterm'a ssh понимает и все клавиши, и мышу.
А от хрен там. Зайди на на старый солярис их xterm'a.

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

Должно работать так как это именно есть представление макроса .. просто в данном конкретном случае описание кнопки не портируемо .. лучше всего использовать `kbd'

если дефайн типа

(global-set-key (kbd "C-a") "test")

то неявно он будет выглядеть как

(global-set-key (kbd "C-a") [(?t) (?e) (?s) (?t)]

потомучто строка это вектор чарактеров ..,то ест при нажатии C-a будет проэмулировано нажатия 't', 'e', 's' и 't' .. так можно например воткнуться в невыходную рекурсию .. типа

(global-set-key (kbd "a") [?a ?b])

.. но это уже на совести юзера ..

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

>cperl (лучше взять не из самого емакса, а более свежую версию) + >tiny-perl из tiny-tools.sf.net

а что делает то tiny-perl ? я его поставил, но его эффекта не ощутил :(( и в доке к tiny-tools про него я ни чего не нашёл :((. Тыкни носом pls :)

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

<offtopic> Саныч, сколько можно говорить, слово цИтата пишется через "И". </offtopic>

Ссаныч пишется с двумя буквами "С"

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

про "поддержку языков"

2 ott:

> зато он умеет работать с языками, для которых не установлена поддержка в Х-х -- я могу спокойно в GNU Emacs набирать по русски и по немецки, не заботясь что у меня есть руссификация клавиатуры и т.п.

:help langmap

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

>Похоже ты в ssh из вынды лезешь :)). Из xterm'a ssh понимает и все клавиши, и мышу.

Если бы! У нас тут все закирберочено. Я из крлогин лезу. Впрочем, на некоторые машины все более-менее, а вот на айбиэмки получается плохо. Только основной состав клавиш и стрелки.

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

>А мне "понравились" высказывания про "Emacs Code Browser (ecb) и программирование", пробовал я этой штукой пользоваться, она конечно помогает по коду лазить, но до визуал студии не дотягивает, особено раздражает то что она показывает структуру только одного класа, того что открытый в буфере, а если хочется дерево класов увидеть? еще хреново работает с таким понятием как "проект", тулза из CEDET для этого глючная. Вообщем поставил я для програмирования себе 2 тулзы - SourceNavigator(чтобы в чужих сырцах копаться) и Anjuta, а на емак забил :))

Вообще говоря, действительно визуал С круче пока всего, что я видел. Особенно классно именно подстановка методов класса - то, чего нет в емаксах. Увы, для этого, очевидно, надо парсить весь состав проекта, а значит надо заводить файл проекта и всю эту лабуду. Потеря стройности, куча мусорных файлов и так далее :( Кроме того, надо будет заставлять пользователя указывать какие файлы в проекте, а какие - нет. В общем другая сторона медали тоже есть, и плата для многих аскетов юникса непомерно высока.

Вот бы кто создал такой парсер, чтобы и коленца выкидывал как визуальный С и директорию не захламлял и юзера не загружал. Будет это называться - искусственный интеллект ;)

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

Кстати, классная идея: совместить это с CVS. Чтобы парсер читал оттуда инфу для генерации проекта, а потом бы убивал мусор за собой.

atoku ★★★
() автор топика

вопрос к автору топика

слушай, у меня к тебе вопрос есть: я хочу в емаксе по c-h настройть удаление символов. просто имхо так гораздо удобнее чем по бекспейсу, хотя за последнее время уже привык и к бекспейсу. Так вот, не знаешь, как ето можно сделать. через global-set-key не проходит))

human0id ★★★
()
Ответ на: вопрос к автору топика от human0id

>слушай, у меня к тебе вопрос есть: я хочу в емаксе по c-h настройть удаление символов. просто имхо так гораздо удобнее чем по бекспейсу, хотя за последнее время уже привык и к бекспейсу. Так вот, не знаешь, как ето можно сделать. через global-set-key не проходит))

можно сделать так:

(global-set-key (kbd "\C-h") 'delete-backward-char)

Но я никак не мог понять, почему не проходит глобал-сет-кей?

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

Ну, ты понял, что это был автор ;) Просто залогиниться забыл.

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

про m$ VC

2 atoku:

> Вот бы кто создал такой парсер, чтобы и коленца выкидывал как визуальный С и директорию не захламлял и юзера не загружал. Будет это называться - искусственный интеллект ;)

Нет, это будет называться literate programming :)

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

>2. всегда забываю в каком я режиме и это на самом деле расстраивает

можно менять цвет курсора.

EM

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

>Вот бы кто создал такой парсер, чтобы и коленца выкидывал как >изуальный С и директорию не захламлял и юзера не загружал. Будет это >называться - искусственный интеллект ;)

такие файлы у ecb есть. semantic.cache называются. Вопрос в том как удобно представить информацию из них. ecb у меня не прижился. На пятнашке слишком мало рабочего пространства.

ЕМ

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

У меня он загружается так

(require 'tinyperl) (setq tinyperl-:pod-buffer-control 'many)

делает он вот что - умеет показать справку по нужной функции, Completion для названий модулей при вызове справок, улучшенное редактирование документации и еще по мелочи. ты посмотри описание в самом tinyperl.el

tiny-tools вообще прикольный пакет с добавлениями разными.

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

только это не ecb, это semantic (а еще точнее semanticdb). в скорем времени авторы семантика/cedet предполагают появление добавлений, которые будут добавлять имена членов классов и т.п., ибо сейчас уже вся нужная инфраструктура для этого есть

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