Сообщения в Emacs, org-mode, вставки кода

Emacs, org-mode, вставки кода

Привет, сектанты!

Я знаю, тут многие пользуются org-mode в emacs. Возникли вопросы по вставкам кода. Пользуетесь ли? Если пользуетесь, то как дружите org-mode с форматированием кода?

Например, я хочу записать небольшой пример на python:
#+BEGIN_SRC python
def hello_function():
    print('Hello, World!')
#+END_SRC
Но приходится приходится вручную забивать пробелы. Можно нажать C-c ' и отредактировать код в отдельном буфере, сохранить и выйти. Отредактирвоанный код автоматически вставится в редактируемый org-файл, но при повторном редактировании с отступами начинает творится какая-то вакханалия. Отступы выставляются табами (что не PEP-8 и вообще кю для пайтона), редачить приходится вновь забивая пробелы руками. И вообще не очень понимаю пока что происходит.

Что посоветуете? С учётом того, что начал вести цеттелькастен и для быстрого поиска вещей, которые плохо укладываются в голове, начал делать много заметок с кодом, проблема аж анноит и хочется красивого решения. Беглое гугление и поиск по stackoverflow ситуацию не только не прояснили, но и запутали ещё больше.

Заранее спасибо.
Andrew Lobanov to All (2020-08-03 06:41:01) [ссылка]

Re: Emacs, org-mode, вставки кода

Ответ на сообщение
Вопрос снимается. Недочистил хук на пайтон после экспериментов с you complete me демоном. После удаления кривого хука и выставления
(setq org-src-preserve-indentation nil)
(setq org-edit-src-content-indentation 0)
в ~/.emacs проблема разрешилась и поведение стало ровно таким, как я хочу.

Всем спасибо :)
Andrew Lobanov to Andrew Lobanov (2020-08-03 06:52:11) [ссылка]

Re: Emacs, org-mode, вставки кода

Ответ на сообщение
> Возникли вопросы по вставкам кода. Пользуетесь ли?
Когда только осваивал org-mode, игрался со вставками кода. Но потом освоил Jupyter Notebook/Lab, влюбился в него и держу мелкие (и не только мелкие) куски кода только там. Можно их и с markdown миксовать вполне

Кстати, в Emacs есть режим для удалённого подключения к серверу Jupyter, народ пользуется как-то.
+++ Отправлено через IDEC Mobile
+++ GNU/Linux, Android, physics, MLP:FIM
vit01 to Andrew Lobanov (2020-08-03 08:06:52) [ссылка]

Re: Emacs, org-mode, вставки кода

Ответ на сообщение
>> Возникли вопросы по вставкам кода. Пользуетесь ли?
vit01> Когда только осваивал org-mode, игрался со вставками кода. Но потом освоил Jupyter Notebook/Lab, влюбился в него и держу мелкие (и не только мелкие) куски кода только там. Можно их и с markdown миксовать вполне
org-mode я люблю шибче markdown. Jupyter Notebook я пробовал, но не понял его. Есть какое-нибудь введение для самых маленьких?
vit01> Кстати, в Emacs есть режим для удалённого подключения к серверу Jupyter, народ пользуется как-то.
Ну это я пока даже не знаю зачем мне :)
Andrew Lobanov to vit01 (2020-08-03 09:50:26) [ссылка]

Re: Emacs, org-mode, вставки кода

Ответ на сообщение
vit01> Когда только осваивал org-mode, игрался со вставками кода. Но потом освоил Jupyter Notebook/Lab, влюбился в него и держу мелкие (и не только мелкие) куски кода только там. Можно их и с markdown миксовать вполне
Вообще, zettelkasten намекает, что и org-mode это немного пребор, но это действительно удобный инструмент для структурирования информации. Для вставок кода и ссылок хватило бы и markdown, но org-mode мне просто больше нравится. Плюс это всё таки простая плоская структура текстовых файлов, которую при необходимости можно обрабатывать чем угодно, а какой-нибудь pandoc позволит весьма безболезненно переехать на любой другой подходящий формат.
Andrew Lobanov to vit01 (2020-08-03 10:18:02) [ссылка]

Re: Emacs, org-mode, вставки кода

Ответ на сообщение
AL> org-mode я люблю шибче markdown. Jupyter Notebook я пробовал, но не понял его. Есть какое-нибудь введение для самых маленьких?
Здесь: https://medium.com/codingthesmartway-com-blog/getting-started-with-jupyter-notebook-for-python-4e7082bd5d46

Фишка в том, что ты пишешь код поэтапно, можешь на ходу выводить значения переменных, строить графики, таблицы и.т.п. Это то же самое, что скрестить REPL с самим текстовым редактором, только код пишется в виде блоков. И сразу же закинуть документацию

Вообще, вместо классического Jupyter Notebook я бы посоветовал поставить JupyterLab (из-за действительно удобного интерфейса).

А насчёт маркдауна - это да, он не настолько крутой и всеобъемлющий, как org-mode, но ничто не мешает использовать и то, и другое в зависимости от контекста. Я тоже люблю org-mode гораздо больше, и это вызвано наличием фич для планирования и расписаний + фишками Емакса вроде сворачивания заметок по табу и в целом сочетаниями клавиш
+++ IDEC Mobile в виртуальной машине
+++ GNU/Linux, Android, physics, MLP:FIM
vit01 to Andrew Lobanov (2020-08-21 14:15:06) [ссылка]

Re: Emacs, org-mode, вставки кода

Ответ на сообщение
Подскажи, пожалуйста,
1. каким образом ты ставишь ссылки на файлы?
2. и затем переходишь по ним?

Я нашёл org-store-link или как-то так, но вот сомневаюсь, оно ли, та ли это эффективность.
И C-c C-o для открытия перехода по ссылке в файле.

Вопрос в контексте zettelkasten.

И второй вопрос, про org-mode:
Для вызова Agenda есть ли комбинация клавиши по-умолчанию или надо настраивать, т.к. C-c C-a у меня не работает так, как нашёл в одной из инструкций...

Спасибо)
constantin to Andrew Lobanov (2020-10-29 20:09:02) [ссылка]

Re: Emacs, org-mode, вставки кода

Ответ на сообщение
constantin> 1. каким образом ты ставишь ссылки на файлы?
Примеры из мануала https://orgmode.org/manual/External-Links.html

####
‘file:/home/dominik/images/jupiter.jpg’
‘/home/dominik/images/jupiter.jpg’ (same as above)
‘file:papers/last.pdf’
‘./papers/last.pdf’ (same as above)
‘file:/ssh:me@some.where:papers/last.pdf’ (remote)
‘/ssh:me@some.where:papers/last.pdf’ (same as above)
‘file:sometextfile::NNN’ (jump to line number)
‘file:projects.org’
‘file:projects.org::some words’ (text search)27
‘file:projects.org::*task title’ (headline search)
‘file:projects.org::#custom-id’ (headline search)
####
constantin> Для вызова Agenda есть ли комбинация клавиши по-умолчанию или надо настраивать, т.к. C-c C-a у меня не работает так, как нашёл в одной из инструкций...
В инит файл емакса добавь типа такого:
(global-set-key (kbd "C-c a") 'org-agenda)
btimofeev to constantin (2020-10-30 07:13:24) [ссылка]

Re: Emacs, org-mode, вставки кода

Ответ на сообщение
constantin> Подскажи, пожалуйста,
constantin> 1. каким образом ты ставишь ссылки на файлы?
C-c C-l file RET RET
constantin> 2. и затем переходишь по ним?
C-c C-o
constantin> И второй вопрос, про org-mode:
constantin> Для вызова Agenda есть ли комбинация клавиши по-умолчанию или надо настраивать, т.к. C-c C-a у меня не работает так, как нашёл в одной из инструкций...
Вы таки будете смеяться, но я не пользуюсь агендой :)
constantin> Спасибо)
Не за что. Обращайся :)
Andrew Lobanov to constantin (2020-10-30 09:44:14) [ссылка]

Re: Emacs, org-mode, вставки кода

Ответ на сообщение
constantin>> 1. каким образом ты ставишь ссылки на файлы?
btimofeev> Примеры из мануала https://orgmode.org/manual/External-Links.html
Спасибо.
Что-то мне кажется, что так замахаешься писать ссылки. Особенно при активной Цеттелькасенации..)))
btimofeev> В инит файл емакса добавь типа такого:
btimofeev> (global-set-key (kbd "C-c a") 'org-agenda)
Спасибо. Буду пробовать.
constantin to btimofeev (2020-10-30 20:15:11) [ссылка]

Re: Emacs, org-mode, вставки кода

Ответ на сообщение
AL> C-c C-l file RET RET
Это наверное то, что надо. Спасибо. Буду позже пробовать.
constantin>> 2. и затем переходишь по ним?
AL> C-c C-o
AL> Вы таки будете смеяться, но я не пользуюсь агендой :)
А я вот хочу попробовать свои огромные разрозненные списки дел упорядочить. Пользовался todo.txt и софтом разным, удобно, но дело заглохло, т.к. всё равно некоторая "сложность" оформления присутвует, на бумаге проще, а потом это оказывается разбросано по разным блокнотам и тетрадям...
constantin to Andrew Lobanov (2020-10-30 20:17:51) [ссылка]