Автор (ы) оригинала | Карстен Доминик |
---|---|
Разработчики) | Карстен Доминик , Бастьен Герри и др. |
Стабильный выпуск | 9.4 / 14 сентября 2020 г . [1] |
Репозиторий | |
Написано в | Emacs lisp |
Тип | Персональный органайзер , Notetaking , Излагая , грамотное программирование , Воспроизводимость |
Лицензия | GPL |
Веб-сайт | orgmode |
Org-режим (также: режим Org ; [2] / ɔːr ɡ м oʊ d / ) является редактирование документа, форматирование и режим, предназначенный для организации заметок , планирования и авторинга в свободное программное обеспечение , текстовый редактор Emacs . Имя используется для включения простых текстовых файлов ("файлов организации"), которые включают простые метки для обозначения уровней иерархии (например, план эссе, список тем с подтемами, вложенный компьютерный код и т. Д.), А также редактор с функциями, которые могут читать разметку и управлять элементами иерархии (раскрывать / скрывать элементы, перемещать блоки элементов, отмечать элементы списка дел и т. д.).
Org-mode был создан Карстеном Домиником в 2003 году, первоначально для организации своей жизни и работы [3], и с момента первого выпуска множество других пользователей и разработчиков внесли свой вклад в этот бесплатный программный пакет. [4] Emacs включил Org-mode [5] в качестве основного режима по умолчанию с 2006 года. Бастьен Герри является текущим сопровождающим в сотрудничестве с активным сообществом разработчиков . [6] После успеха в Emacs некоторые другие системы теперь предоставляют функции для работы с файлами org. [7] [8]
Практически ортогонально Org-mode имеет функции, направленные на выполнение кода на различных внешних языках; эти функции образуют org-babel. [9] [10]
Система [ править ]
Домашняя страница Org-mode объясняет, что «по своей сути Org-mode - это простая структура для создания заметок и управления списками» [11] Автор системы Org Карстен Доминик объясняет, что «Org-mode делает наброски , делает заметки , гиперссылки , электронные таблицы , списки TODO , планирование проекта , разработка GTD , HTML и LaTeX - и все это с простыми текстовыми файлами в Emacs ». [12]
Система Org основана на текстовых файлах с простой разметкой, что делает файлы очень портативными. Информационный проект Linux объясняет, что «Обычный текст поддерживается почти каждой прикладной программой во всех операционных системах». [13]
Система включает в себя облегченный язык разметки для текстовых файлов (аналогичный по функциям Markdown , reStructuredText , Textile и т. Д., С другой реализацией), позволяющий иерархически разделять строки или разделы простого текста, маркировать, связывать и т. Д. .
Функциональность [ править ]
В этом разделе приведены некоторые примеры использования иерархического отображения и редактирования простого текста.
- Списки дел часто имеют подзадачи и поэтому поддаются иерархической системе. Орг-режим облегчает это, позволяя детали быть подразделены на простые шаги (вложенные-DOS и / или контрольные списки ), и с учетом тегов и свойств , таких как приоритеты и сроки. Повестку для пунктов , чтобы сделать эту неделю или день , то может быть автоматически генерируется из даты тегов. [14]
- Обычные текстовые контуры . [15]
- Файлы Org как взаимосвязанные страницы личной вики с использованием разметки для ссылок.
- Отслеживание ошибок в проекте путем хранения файлов .org в распределенной системе контроля версий, такой как Git .
- Обширные возможности создания ссылок на веб-страницы в одном файле, на другие файлы, на электронные письма, а также позволяют определять пользовательские ссылки.
Документ в организационном режиме также может быть экспортирован в различные форматы (включая HTML , LaTeX , OpenDocument или простой текст), эти форматы используются для отрисовки структурного контура соответствующим образом (включая перекрестные ссылки, если это необходимо). Он также может использовать разметку форматирования (включая LaTeX для математики) со средствами, аналогичными тем, которые присутствуют в Markdown или LaTeX, тем самым предлагая альтернативу этим инструментам.
Org-babel [ править ]
Org-mode предлагает возможность вставки исходного кода в редактируемый документ, который автоматически экспортируется и / или выполняется при экспорте документа; результаты, полученные с помощью этого кода, могут быть автоматически извлечены обратно в результирующий вывод.
Этот исходный код может быть структурирован как фрагменты многократного использования, вставленные в исходный документ в месте, необходимом для логического представления, что позволяет этому описанию быть независимым от структуры, необходимой компилятору / интерпретатору.
Вместе со средствами разметки org-mode эти две функции позволяют
- Грамотное программирование , отделив описание функций программы от ее структуры кода, и
- Воспроизводимое исследование путем создания согласованного документа, объединяющего изложение, исходные данные, анализ, обсуждение и выводы таким образом, чтобы любой читатель мог воспроизвести его, используя те же программные инструменты.
По состоянию на ноябрь 2018 года org-babel напрямую поддерживает более 50 языков программирования или программируемых средств, при этом более 20 других инструментов можно использовать через предоставленные пакеты или драйверы. [16]
Интеграция [ править ]
Org-mode имеет некоторые функции для экспорта в другие форматы, а в других системах есть некоторые функции для обработки форматов org-mode. Кроме того, полнофункциональный текстовый редактор может иметь функции для работы с вики, личными контактами, электронной почтой, календарями и т. Д .; поскольку org-mode - это просто обычный текст, эти функции также могут быть интегрированы в документы org-mode.
Из режима org дополнительные пакеты экспортируются в другой формат разметки, такой как MediaWiki (org-export-generic, org-export), в системы обучения флэш- картам, реализующие алгоритмы SuperMemo (org-Drill, org-learn). [17]
Вне орг-режиме редакторов, орг разметки поддерживается GitLab и GitHub кодов хранилищ, [18] JIRA отслеживания проблем, [19] Pandoc и др.
Примеры экспорта [ править ]
Org поддерживает экспорт в различные форматы. Ниже вы можете найти примеры фрагментов организации, экспортированных в различные форматы. Другие форматы поддерживаются специальными пакетами.
Формат | Состав | Текстовые атрибуты | Списки | Изображения и блоки |
---|---|---|---|---|
Org | * Заголовок** ПодзаголовокАбзацы разделеныпустой строкой.-----Пять черточек - горизонтальная линейка. | Простая разметка дает * полужирный *и / курсив / текст. Есть также~ code ~ и другие разметки.Вот ссылка наorg [[https://orgmode.org/ provided[homepage]]. | Неупорядоченный список:+ яблоки+ апельсины+ грушиУпорядоченный список:1. вспенить 2. промыть 3. повторить | [[файл: org-mode-unicorn.png]]# + begin_quoteОрганизационные блоки начинаются с # + begin_BLOCKи заканчиваются # + end_BLOCK.Это цитатный блок.# + end_quoteУ вас также может быть разметка для определенного формата для некоторых форматов@@ html: like < abbr title = "Язык гипертекстовой разметки" > HTML </ abbr > @@@@ latex: как \ LaTeX @@. |
HTML | < div id = "outline-container-org75efe15" class = "outline-2" > < h2 id = "org75efe15" > < span class = "section-number-2" > 1 </ span > заголовок </ h2 > < div class = "outline-text-2" id = "text-1" > </ div > < div id = "outline-container-org548173a" class = "схема-3"> < h3 id = "org548173a" > < span class = "section-number-3" > 1.1 </ span > Подзаголовок </ h3 > < div class = "outline-text-3" id = "text-1- 1 " > < p >Абзацы разделеныпустой строкой.</ p >< час />< р >Пять черточек - горизонтальная линейка.</ p > </ div > </ div > | < p >
Простая разметка выделяет текст < b > жирным шрифтом </ b >
и < i > курсивом </ i > . Также есть < code > code </ code > и другие разметки.</ p >< р >Вот ссылка наорг < HREF = "https://orgmode.org/" > Главная </ > .</ p > | < р >Неупорядоченный список:</ p > < ul class = "org-ul" > < li > яблоки </ li > < li > апельсины </ li > < li > груши </ li > </ ul >< р >Упорядоченный список:</p><ol class="org-ol"><li>lather</li><li>rinse</li><li>repeat</li></ol> | <div id="org0d245af" class="figure"><p><img src="org-mode-unicorn.png" alt="org-mode-unicorn.png" /></p></div><blockquote><p>Org blocks start with #+begin<sub>BLOCK</sub>and end with #+end<sub>BLOCK</sub>.This is a quote block.</p></blockquote><p>You can also have format-specific markup, for some formatslike <abbr title="Hypertext Markup Language">HTML</abbr>.</ p > |
HTML (обработанный) | Абзацы разделяются пустой строкой. Пять черточек - горизонтальная линейка. | При простой разметке текст выделяется полужирным шрифтом
и курсивом . Там же Вот ссылка на домашнюю страницу организации . | Неупорядоченный список:
Упорядоченный список:
|
У вас также может быть разметка для определенного формата для некоторых форматов, таких как HTML . |
Латекс | \ раздела { товарной } \ метка { сек: orgb1c599c } \ п { Sub заголовок } \ метка { сек: orgf23aeb1 }Абзацы разделеныпустой строкой.\ noindent \ rule { \ textwidth } { 0,5pt }Пять черточек - горизонтальная линейка. | Простая разметка создает текст в формате \ textbf { bold }
и \ emph { italic } . Также есть \ texttt { code } и другие разметки.Вот ссылка наorg \ href { https://orgmode.org/ } { домашняя страница } . | Неупорядоченный список: \ begin { itemize } \ item apples \ item апельсины \ item pears \ end { itemize }.Упорядоченный список:\ begin { enumerate } \ item lather \ item rinse \ item repeat \ end { enumerate } | \ begin { center } \ includegraphics [width = .9 \ linewidth] { org-mode-unicorn.png } \ end { center }\ begin { quote }
Организационные блоки начинаются с \ # + begin \textubscript { BLOCK }
и заканчиваются \ # + end \textubscript { BLOCK } .Это цитатный блок.\ end { quote }У вас также может быть разметка для определенного формата для некоторых форматовкак \ LaTeX . |
ODT | <text: h text: style-name = "Heading_20_1" text: outline-level = "1" text: is-list-header = "false" > <text: bookmark-start text: name = "OrgXref.org3c83460" / > <text: bookmark text: name = "org3c83460" /> Заголовок <text: bookmark-end text: name = "OrgXref.org3c83460" /> </ text: h> <text: h text: style-name = "Heading_20_2 " text: outline-level = " 2 " text: is-list-header = " false " > <text: bookmark-start text:name = "OrgXref.orgeb4e8ed" /> <text: bookmark текст: имя = "orgeb4e8ed" /> Sub заголовок <текст: закладка-конец текста: имя = "OrgXref.orgeb4e8ed" /> </ текст: H> <текст: р текст: стиль-имя = "Text_20_body" > Абзацы отделенныйпустой строкой.</ text: p><text: p text: style-name = "Horizontal_20_Line" > </ text: p><text: p text: style-name = "Text_20_body" > Пять тире - горизонтальная линейка .</ text: p> | <text: p text: style-name = "Text_20_body" > При простой разметке выделяются <text: span text: style-name = "Bold" > жирный шрифт </ text: span>
и <text: span text: style-name = " Выделение " > курсивом </ text: span> текст. Также есть код <text: span text: style-name = "OrgCode" > </ text: span> и другие разметки.</ text: p><text: p text: style-name = "Text_20_body" > Вот ссылка наorg <text: a xlink: type = "simple" xlink: href = "https://orgmode.org/" > домашняя страница </ text: a> .</ text: p> | <text: list text: style-name = "OrgBulletedList" text: continue-numbering = "false" ><text:list-item><text:p text:style-name="Text_20_body">apples</text:p></text:list-item><text:list-item><text:p text:style-name="Text_20_body">oranges</text:p></text:list-item><text:list-item><text:p text:style-name="Text_20_body">pears</text:p></text:list-item></text:list><text:p text:style-name="Text_20_body">An ordered list:</text:p><text:list text:style-name="OrgNumberedList" text:continue-numbering="false"><text:list-item><text:p text:style-name="Text_20_body">lather</text:p></text:list-item><text:list-item><text:p text:style-name="Text_20_body">rinse</text:p></text:list-item><text:list-item><text:p text:style-name="Text_20_body">repeat</text:p></text:list-item></text:list> | <text:p text:style-name="Text_20_body"><draw:frame draw:style-name="OrgDisplayImage" svg:width="6.24cm" svg:height="6.88cm" text:anchor-type="paragraph" draw:name="Frame1"><draw:image xlink:href="Images/0001.png" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad"/></draw:frame></text:p><text: p text: style-name = "Quotations" > Блоки организации начинаются с # + begin <text: span text: style-name = "OrgSubscript" > BLOCK </ text: span>
и заканчиваются # + end <text : span text: style-name = "OrgSubscript" > БЛОК </ text: span> .Это цитатный блок.</ text: p><text: p text: style-name = "Text_20_body" > Вы также можете использовать разметку для определенного формата для некоторых форматов.</ text: p> |
ASCII | 1 заголовок=========1.1 Подзаголовок~~~~~~~~~~~~~~~ Абзацы разделяются пустой строкой. ----------------------------------------- Пять черточек - горизонтальная линейка. | Простая разметка выделяет * полужирный * и / курсив / текст. Также есть `code ',и другие наценки.Вот ссылка на [домашнюю страницу] организации.[домашняя страница] <https://orgmode.org/> | Неупорядоченный список:+ яблоки+ апельсины+ грушиУпорядоченный список:1. пена2. полоскание3. повторить | <файл: org-mode-unicorn.png> Организационные блоки начинаются с # + begin_BLOCK и заканчиваются # + end_BLOCK. Это цитатный блок.Вы также можете использовать разметку для некоторых форматов. |
Уценка | <a id="orgfcf266c"> </a> # заголовок<a id="org6c11f38"> </a>## ПодзаголовокАбзацы разделеныпустой строкой.---Пять черточек - горизонтальная линейка. | При простой разметке текст выделяется ** полужирным **
и * курсивным * . Также есть `code` и другие разметки.Вот ссылка наorg [ домашняя страница ] ( https://orgmode.org/ ). | Неупорядоченный список:- яблоки - апельсины - грушиУпорядоченный список:1. вспенить 2. промыть 3. повторить | ! [ img ] ( org-mode-unicorn.png )> Организационные блоки начинаются с # + begin <sub> BLOCK </sub >> и заканчиваются # + end <sub> BLOCK </sub>. > Это цитатный блок.У вас также может быть разметка для определенного формата для некоторых форматовнапример, <abbr title = "Язык гипертекстовой разметки"> HTML </abbr> |
Texinfo | @node Заголовок@chapter Заголовок@меню* Подзаголовок ::@end меню@node Подзаголовок@section ПодзаголовокАбзацы разделеныпустой строкой.Пять черточек - горизонтальная линейка. | Простая разметка дает @strong {полужирный}и текст @emph {курсивом}. Есть также@code {code} и другие разметки.Вот ссылка наorg @uref {https://orgmode.org/, домашняя страница}. | Неупорядоченный список:@itemize@пунктяблоки@пунктапельсины@пунктгруши@end itemizeУпорядоченный список:@enumerate@пунктпена@пунктсмывать@пунктповторить@end перечислить | @image {org-mode-unicorn ,,,, png}@цитатаОрганизационные блоки начинаются с # + begin_BLOCKи заканчиваются # + end_BLOCK.Это цитатный блок.@end цитатаВы также можете использовать разметку для некоторых форматов. |
См. Также [ править ]
- Легкий язык разметки
- Сравнение программного обеспечения для ведения заметок
- Сравнение языков разметки документов
- Список менеджеров личной информации
- Outliner
Ссылки [ править ]
- ^ "Режим организации для Emacs - Ваша жизнь в виде простого текста" . orgmode.org . Команда OrgMode . Проверено 15 сентября 2020 .
- ^ Gmane : Org, Orgmode, Orgmode, Org Режим архивации 2017-09-10 в Wayback Machine - Карстен Dominik: Org, системы; Org-mode, основной режим
- ^ Доминик, Карстен (2011-12-15), Emacs Org-mode: организация жизни и работы ученого (аннотация и видео) , Институт неврологических исследований Макса Планка
- ^ Руководство по режиму организации: История и благодарности , Фонд свободного программного обеспечения
- ^ Корбет, Джонатан (2006), «Предварительное тестирование Emacs 22» , LWN.net
- ^ Режим организации для Emacs - Сообщество
- ^ "Pandoc - Особенности и отличия режима Org" . pandoc.org . Источник 2021-01-29 .
- ^ "Форматы содержания \ p Hugos" . gohugo.io . Источник 2021-01-29 .
- ^ "Babel: активный код в Org-режиме" . orgmode.org . Проверено 9 января 2020 .
- ^ Шульте, Эрик; Дэвисон, Дэн; Краска, Томас; Доминик, Карстен (25 января 2012 г.). «Многоязычная вычислительная среда для грамотного программирования и воспроизводимых исследований» . Журнал статистического программного обеспечения . 46 (1): 1–24. DOI : 10,18637 / jss.v046.i03 . ISSN 1548-7660 .
- ↑ O'Toole, David, Org tutorial
- ^ Доминик, Карстен, Техническое описание в 24 словах
- ^ Информационный проект Linux: Что такое простой текст?
- ^ Чаван, Абхиджит (2007), «Организуйтесь с помощью Emacs Org-mode» , Linux Journal
- ↑ Чуа, Саша, Изложение ваших заметок с помощью Org
- ^ «Вавилон: языки» . Проверено 25 ноября 2018 года .
- ^ Внесенные пакеты в режиме организации и многие другие иерархические или ориентированные на списки форматы.
- ^ Разметка GitHub , 11 января 2020 г.
- ^ Бао, Haojun (2019-12-02), орг-JIRA
Дальнейшее чтение [ править ]
Книги [ править ]
- Доминик, Карстен (2010). Справочное руководство Org Mode 7: Организуйте свою жизнь с помощью GNU Emacs . При участии Дэвида О'Тула, Бастьена Герри, Филипа Рука, Дэна Дэвисона, Эрика Шульте и Томаса Дая. Великобритания: Теория сети. п. 282. ISBN. 978-1-906966-08-9. Архивировано из оригинала на 2012-11-02 . Проверено 23 ноября 2012 .
Статьи журнала [ править ]
- Шульте, Эрик; Дэвисон, Дэн; Краска, Томас; Доминик, Карстен (январь 2012 г.). «Многоязычная вычислительная среда для грамотного программирования и воспроизводимых исследований» . Журнал статистического программного обеспечения . Американская статистическая ассоциация . 46 (3): 1–24. ISSN 1548-7660 .
- Schulte, E .; Дэвисон, Д. (май – июнь 2011 г.). «Активные документы с Org-Mode». Вычислительная техника в науке и технике . Американский институт физики и компьютерное общество IEEE . 13 (3): 66–73. Bibcode : 2011CSE .... 13c..66S . CiteSeerX 10.1.1.226.2202 . DOI : 10,1109 / MCSE.2011.41 . ISSN 1521-9615 .
Внешние ссылки [ править ]
- Официальный веб-сайт