4527 / 3521 / 358
Регистрация: 12.03.2013
Сообщений: 6,038
1

Clojure Гельтер осваивает Emacs

04.04.2014, 05:18. Показов 4557. Ответов 46
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Конечно, лучший редактор для работы с текстом - это vim. Emacs - это, наверно, лучший редактор в других номинациях - например, лучший редактор, заменяющий ОС. Не знаю. И ещё у меня не растут пальцы в таких местах, чтобы можно было нажимать альт.

Что касается лиспа, vim + slimv - это счастье.

Но люди говорят: "Ах, Емакс..." Тем более в контексте лиспа.

Любопытно. Попробуем.

Собственно, не первая попытка. Встроенный туториал я пару раз читал, что-то тыкал... Запомнилось только C-n и C-p и то обстоятельство, что с русской раскладкой не дружит.

Попробуем без мануалов.

Зачем эта тема: 1) надеюсь, что пользующиеся Emacs-ом будут давать ценные советы; 2) есть шансы, что тема кому-то пригодится.

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

Итак. У кого как, у меня всё из репозитория. Дебиановского.

Запустили Emacs.

Гм. M-x slime - о, загрузился SLIME, здорово. Из стоящих у меня SBCL и CLISP он сам выбрал первый.
Lisp
1
CL-USER> (ql:qu[TAB]
Так. Скобка одна открылась (а в slimv они парно возникают), автодополнение какое-то в новом буфере. Ура, C-n C-p работают в этом буфере, туториал читан не напрасно! Чего-то не то вставил, C-w, естественно не работает, убиваем бекспейсом. Убили. Загружаем inferior-shell, пробуем пару функций. REPL вроде работает. Автодополнение не понравилось, в slimv варианты табом прокручиваются и сразу вставляются, а здесь я пробел нажимаю. Ну ладно. А ещё REPL чёрно-белый.

Так, на первый раз хватит.
4
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
04.04.2014, 05:18
Ответы с готовыми решениями:

Clojure Emacs
Еще не успел попользоваться Емаксом, но... почему он выглядит как целая ОС? Lispbox:

Clojure Объясните как в emacs установить slime?
Или ссылку киньте хорошую посмотреть. А то изучил emacs. Но у меня clojure-box. Такой emacs у...

Clojure Как полностью удалить пакеты Clojure и Leiningen в убунту
Всем доброе время суток! Подскажите, пожалуйста. как полностью удалить из убунту пакеты clojure и...

Clojure Ошибка при запуске локального сервера на Clojure в IntellijIDEA
Выводится ошибка по строке, которой даже нет. По отдельности все функции компилируются без...

46
505 / 511 / 42
Регистрация: 12.12.2013
Сообщений: 484
04.04.2014, 05:55 2
Я сам не так давно, начал пользоваться emacs для clojure (хотя в принципе cursive clojure для Idea хватает), а т.к. времени на вникание не было, я пошел таким путем:
1) Поставил emacs 24.3
2) Поставил плагин prelude, ссылка: https://github.com/bbatsov/prelude
3) Настроил плагин чуть под себя
4) Profit

Ну и так же, очень сильно помогли вот эти уроки:
https://www.youtube.com/user/dbushenko/videos
3
Эксперт функциональных языков программированияЭксперт Java
4485 / 2720 / 485
Регистрация: 28.04.2012
Сообщений: 8,587
04.04.2014, 06:24 3
Цитата Сообщение от helter Посмотреть сообщение
Конечно, лучший редактор для работы с текстом - это acme.
fixed.

Цитата Сообщение от helter Посмотреть сообщение
А ещё REPL чёрно-белый.
А и не нужно в REPL'е писать код. Код пишется в буфере (текстовом файле).
1
4699 / 4394 / 380
Регистрация: 12.05.2012
Сообщений: 3,096
04.04.2014, 08:20 4
Emacs SLIME: Commands and keyboard shortcuts
http://aceagenda.com/forum/viewtopic.php?id=8
1
defun
603 / 617 / 44
Регистрация: 30.04.2011
Сообщений: 702
04.04.2014, 11:23 5
Цитата Сообщение от helter Посмотреть сообщение
C-w, естественно не работает
работает
Цитата Сообщение от helter Посмотреть сообщение
а здесь я пробел нажимаю
таб работает
Цитата Сообщение от helter Посмотреть сообщение
А ещё REPL чёрно-белый.
раскрась, если есть необходимость
Цитата Сообщение от korvin_ Посмотреть сообщение
А и не нужно в REPL'е писать код
на вкус и цвет

Добавлено через 4 минуты
Цитата Сообщение от _sg Посмотреть сообщение
Emacs SLIME
C-h k
C-h b
0
Эксперт функциональных языков программированияЭксперт Java
4485 / 2720 / 485
Регистрация: 28.04.2012
Сообщений: 8,587
04.04.2014, 11:38 6
Цитата Сообщение от transformator.t Посмотреть сообщение
на вкус и цвет
Тут дело не во вкусе и цвете, а том, чтобы исходник соответствовал запущенному образу, если его придется перезапускать, все изменения, сделанные в REPL'е просто потеряются.
0
Модератор
Эксперт функциональных языков программированияЭксперт Python
36590 / 20320 / 4218
Регистрация: 12.02.2012
Сообщений: 33,621
Записей в блоге: 13
04.04.2014, 12:22 7
Цитата Сообщение от transformator.t Посмотреть сообщение
C-h k
C-h b
- долго стеснялся, но все-таки спрошу: а это что?
0
Эксперт функциональных языков программированияЭксперт Java
4485 / 2720 / 485
Регистрация: 28.04.2012
Сообщений: 8,587
04.04.2014, 12:37 8
Цитата Сообщение от Catstail Посмотреть сообщение
- долго стеснялся, но все-таки спрошу: а это что?
Сокращенная запись комбинации "горячих" клавиш, которые нужно нажать.
"C-*" означает нажать клавишу * с удерживаемым Control. И по аналоги "M-" -- Meta (Alt), "S-" -- если не ошибаюсь -- Super (Win в Windows | Cmd в OSX).
1
defun
603 / 617 / 44
Регистрация: 30.04.2011
Сообщений: 702
04.04.2014, 13:08 9
korvin_, я пишу по такому принципу: написал ф-цию в репл, проверил, перенёс в файл.
Не люблю я делать из буфера C-c C-c
0
defun
603 / 617 / 44
Регистрация: 30.04.2011
Сообщений: 702
04.04.2014, 13:13 10
Catstail, вот результат C-h b
Миниатюры
Clojure Гельтер осваивает Emacs  
1
defun
603 / 617 / 44
Регистрация: 30.04.2011
Сообщений: 702
04.04.2014, 13:14 11
korvin_, и если что вдруг, все определения доступны по M-p =)
0
Эксперт функциональных языков программированияЭксперт Java
4485 / 2720 / 485
Регистрация: 28.04.2012
Сообщений: 8,587
04.04.2014, 13:22 12
Цитата Сообщение от transformator.t Посмотреть сообщение
и если что вдруг, все определения доступны по M-p =)
А не устанешь пару десятков изменений аппрувить?
0
defun
603 / 617 / 44
Регистрация: 30.04.2011
Сообщений: 702
04.04.2014, 13:27 13
Цитата Сообщение от helter Посмотреть сообщение
с русской раскладкой не дружит
дружит, переключать нужно по C-\

Добавлено через 4 минуты
korvin_, ну я ведь сказал, написал-проверил-перенёс, а на тот случай если что-то случилось, то есть история, просто у меня выработалась привычка, я лисп начал изучать с репла)
ну а если прям очень захочется то намучу хук, который будет на автомате кидать определения в файл текущей сессии =)
0
korvin_
04.04.2014, 13:34
  #14

Не по теме:

Цитата Сообщение от transformator.t Посмотреть сообщение
ну а если прям очень захочется то намучу хук, который будет на автомате кидать определения в файл текущей сессии =)
Мсье знает толк... =)

0
defun
603 / 617 / 44
Регистрация: 30.04.2011
Сообщений: 702
04.04.2014, 13:40 15
Цитата Сообщение от helter Посмотреть сообщение
а в slimv они парно возникают
paredit-mode
на самом деле не всегда удобно, для меня удобней использование подсветки парных скобок, show-paren-mode

Добавлено через 1 минуту

Не по теме:

Цитата Сообщение от korvin_ Посмотреть сообщение
Мсье знает толк..
от этого просто в глазах рябит уже, что нибудь новое придумай

1
2304 / 1063 / 77
Регистрация: 12.03.2013
Сообщений: 4,987
04.04.2014, 13:42 16
helter, прокачай ещё paredit-mode -- http://www.emacswiki.org/emacs/ParEdit, http://www.emacswiki.org/emacs/PareditCheatsheet. Эта штука просто must have.
0
defun
603 / 617 / 44
Регистрация: 30.04.2011
Сообщений: 702
04.04.2014, 13:42 17
korvin_, и да, ещё я через емакс хожу на джаббер, ирку, забираю почту, читаю пдф, управляю мпд, через трапм редактирую конфы и тд. ок? =)
0
2304 / 1063 / 77
Регистрация: 12.03.2013
Сообщений: 4,987
04.04.2014, 13:50 18
Цитата Сообщение от helter Посмотреть сообщение
1) надеюсь, что пользующиеся Emacs-ом будут давать ценные советы; 2) есть шансы, что тема кому-то пригодится.
+1. Спрашивай, всё что хочешь.

Добавлено через 1 минуту
Цитата Сообщение от helter Посмотреть сообщение
Итак. У кого как, у меня всё из репозитория. Дебиановского.
Лучше собрать из сорцов самую новую стабильную версию (сейчас это 24.3).

Добавлено через 1 минуту
Цитата Сообщение от helter Посмотреть сообщение
C-w, естественно не работает, убиваем бекспейсом.
M-DEL (DEL в терминах Emacs - backspace).

Добавлено через 1 минуту
Цитата Сообщение от transformator.t Посмотреть сообщение
paredit-mode
на самом деле не всегда удобно, для меня удобней использование подсветки парных скобок, show-paren-mode
Когда это, например, не удобно?
0
defun
603 / 617 / 44
Регистрация: 30.04.2011
Сообщений: 702
04.04.2014, 14:03 19
nullxdth, насильственное поддержание баланса меня напрягает, если я не закрыл скобку, значит ещё думаю и мысль не закончил. И именно по этой причине я использую show-paren-mode, который мне просто показывает.

Добавлено через 6 минут
Цитата Сообщение от nullxdth Посмотреть сообщение
Лучше собрать из сорцов
а может emerge emacs ?
0
2304 / 1063 / 77
Регистрация: 12.03.2013
Сообщений: 4,987
04.04.2014, 14:10 20
Цитата Сообщение от transformator.t Посмотреть сообщение
насильственное поддержание баланса меня напрягает, если я не закрыл скобку, значит ещё думаю и мысль не закончил.
Где-то я это уже слышал. Также и архимаг говорит, про мысли и октрывающиеся скобки Это глупости всё. Как автоматически закрытая скобка может помешать мысли? Да никак! Архимаг вообще очень странный лиспер, я бы даже сказал, что он не лиспер.

Добавлено через 2 минуты
Цитата Сообщение от transformator.t Посмотреть сообщение
И именно по этой причине я использую show-paren-mode, который мне просто показывает.
show-paren-mode ортогональна paredit-у. Эти моды дополняют друг друга и никак не противоречат. Ещё я использую http://www.emacswiki.org/emacs... arentheses для наглядности. Очень удобно.
0
04.04.2014, 14:10
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
04.04.2014, 14:10
Помогаю со студенческими работами здесь

Clojure Почему невозможно настроить intellij idea для работы с clojure? windows
Получается только emacs. Плюсы emacs - интерактивный встроенный туториал. Даже если и с emacs...

Clojure Присвоение ввода с клавиатуры переменной в Clojure
Мне нужен код делающий следующее : 1. Присвоить ввод с клавы переменной. 2. "Сложить" её со...

Clojure Clojure. Последовательность создается задом-наперед
Делаю из SICP задание "треугольник Пифагора". Вот процедура, которая принимает на вход...

Clojure Clojure, lein-droid, Android ламерство
Пытаюсь разбираться с программированием под Андройд на Lisp'е. Сразу скажу -- имею очень...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru