ORG-NEWS 109 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139314031413142314331443145314631473148314931503151315231533154315531563157315831593160316131623163316431653166316731683169317031713172317331743175317631773178317931803181318231833184318531863187318831893190319131923193319431953196319731983199320032013202320332043205320632073208320932103211321232133214321532163217321832193220322132223223322432253226322732283229323032313232
  1. ORG NEWS -*- org -*-
  2. * Version 7.8
  3. ** Summary
  4. - Jambunathan's ODT exporter is now part of Org's core.
  5. - Nicolas' new export engine is now part of =contrib/=
  6. - Standard code block keywords
  7. - 10 new committers
  8. - Many bugfixes
  9. See below for details.
  10. ** New committers who signed the FSF copyright assigment
  11. Here is the list of new contributors who signed the FSF papers
  12. since Org 7.7 - welcome, and thanks for your contributions!
  13. - Andreas Leha
  14. - Christian Moe
  15. - Julian Gehring
  16. - Max Mikhanosha
  17. - Michael Brand
  18. - Niels Giessen
  19. - Pieter Praet
  20. - Sergey Litvinov
  21. - Thomas Holst
  22. - Thorsten Jolitz
  23. ** The ODT exporter is now part of Org's core
  24. - Full refresh of the OpenDocument Text section in the
  25. manual. All new features listed below are fully-documented.
  26. - Associate custom styles on per-file basis using
  27. =#+ODT_STYLES_FILE:= directive.
  28. - Fontify code listings using an enhanced version of
  29. =htmlfontify.el= and generate line numbers natively.
  30. - Embed MathML and OpenDocument formula files.
  31. - Use LaTeX to MathML converter -- say MathToWeb
  32. (http://www.mathtoweb.com/) -- for handling LaTeX Math
  33. fragments.
  34. - In tables, use column width cookies to control relative width
  35. of columns.
  36. - Also for tables, you can specify custom styles using
  37. =#+ATTR_ODT:= lines.
  38. - Lots of bug fixes.
  39. *Experimental*
  40. The following features are /experimental/. These features are
  41. specific to the ODT export engine and their implementation and
  42. usage could change considerably in future versions.
  43. - Support for list tables -- see this [[http://lists.gnu.org/archive/html/emacs-orgmode/2011-09/msg00017.html][message on the list]].
  44. - Support for annotation blocks -- see this [[http://lists.gnu.org/archive/html/emacs-orgmode/2011-10/msg01251.html][message on the list]].
  45. Special thanks to Jambunathan for his work and his patience
  46. through the process of integrating this vital contribution into
  47. Org's core.
  48. ** New export engine by Nicolas
  49. See the comment sections in org-element.el and in org-export.el
  50. (in =contrib/lisp/=). Also check the experimental LaTeX exporter
  51. using in =EXPERIMENTAL/org-e-latex.el=.
  52. Check Nicolas' announcement [[http://comments.gmane.org/gmane.emacs.orgmode/49416][on the list]] and hack around!
  53. Thanks a lot to Nicolas for this great and promising achievement.
  54. ** Incompatible changes
  55. *** Standardized code block keywords
  56. Following a round of on-list discussion, many code block synonyms
  57. have been removed. You can safely move forward the following
  58. syntax:
  59. - call lines are specified with #+call:
  60. - code blocks are named with #+name:
  61. - results are named with #+name:, however results generated by a
  62. code block may still be labeled with #+results:, and tables
  63. named with #+tblname: will be considered to be named results
  64. The following function may be used to update an existing Org-mode
  65. buffer to the new syntax:
  66. #+begin_src emacs-lisp
  67. (defun update-org-buffer ()
  68. "Update an Org-mode buffer to the new data, code block and call line syntax."
  69. (interactive)
  70. (save-excursion
  71. (flet ((to-re (lst) (concat "^[ \t]*#\\+" (regexp-opt lst t)
  72. "\\(\\[\\([[:alnum:]]+\\)\\]\\)?\\:[ \t]*"))
  73. (update (re new)
  74. (goto-char (point-min))
  75. (while (re-search-forward re nil t)
  76. (replace-match new nil nil nil 1))))
  77. (let ((old-re (to-re '("RESULTS" "DATA" "SRCNAME" "SOURCE")))
  78. (lob-re (to-re '("LOB")))
  79. (case-fold-search t))
  80. (update old-re "name")
  81. (update lob-re "call")))))
  82. #+end_src
  83. *Note*: If an old version of Org-mode (e.g., the one shipped with
  84. Emacs) is installed on your system, many of the important
  85. variables will be pre-defined with a =defvar= and *will not* have
  86. their values automatically updated -- these include the
  87. following:
  88. - =org-babel-data-names=
  89. - =org-babel-result-regexp=
  90. - =org-babel-src-block-regexp=
  91. - =org-babel-src-name-regexp=
  92. - =org-babel-src-name-w-name-regexp=
  93. It may be necessary to either remove the source code of older
  94. versions of Org-mode or to explicitly evaluate the ob.el file.
  95. *** Removed the =#+BABEL:= keyword
  96. Code block header arguments may now be specified using the
  97. standard =#+Property:= keyword. See [[#accumulating-property-keywords][Property names ending in =+=
  98. accumulate]] for more information on the extended property syntax.
  99. *** Deleted =org-mode-p=
  100. This function has been deleted: please update your hacks if you
  101. relied on it.
  102. ** New features and user-visible improvements
  103. *** Day names are optional when you type timestamps manually
  104. You can type "<2011-12-12>" or [2011-12-12] and modify this timestamps with
  105. S-<right> like other timestamps. Thanks to Carsten for implementing this.
  106. *** Improved filtering through =org-agenda-to-appt=
  107. The new function allows the user to refine the scope of entries
  108. to pass to =org-agenda-get-day-entries= and allows to filter out
  109. entries using a function.
  110. Thanks to Peter Münster for raising a related issue and to
  111. Tassilo Horn for this idea. Also thanks to Peter Münster for
  112. [[git:68ffb7a7][fixing a small bug]] in the final implementation.
  113. *** =org-agenda-date-later= jumps to today when modifying past date
  114. The command =org-agenda-date-later= (<S-right> in the Agenda
  115. Mode) directly jumps to today. Thanks to Carsten for
  116. implementing this.
  117. *** Use prefix arg 0 to inhibit note taking for TODO change
  118. See Carsten's comment: "Sometimes I want to quickly make a few TODOs done
  119. in the agenda and I want to bypass the note taking I have normally set
  120. up. With this change, I can press `0 t d' in the agenda to do this."
  121. Thanks to Carsten for implementing this.
  122. *** Various improvements to =org-indent.el=
  123. Nicolas Goaziou worked on refactoring and improving
  124. =org-indent.el=, which should now be faster. It also better
  125. combines with =visual-line-mode=.
  126. *** Property names ending in =+= accumulate
  127. This results in the following behavior.
  128. #+begin_src org
  129. ,#+property: var foo=1
  130. ,#+property: var+ bar=2
  131. ,#+begin_src emacs-lisp
  132. , (+ foo bar)
  133. ,#+end_src
  134. ,#+results:
  135. ,: 3
  136. ,#+begin_src emacs-lisp
  137. , (org-entry-get (point) "var" t)
  138. ,#+end_src
  139. ,#+results:
  140. ,: foo=1 bar=2
  141. ,* overwriting a file-wide property
  142. , :PROPERTIES:
  143. , :var: foo=7
  144. , :END:
  145. ,#+begin_src emacs-lisp
  146. , foo
  147. ,#+end_src
  148. ,#+results:
  149. ,: 7
  150. ,#+begin_src emacs-lisp
  151. , (org-entry-get (point) "var" t)
  152. ,#+end_src
  153. ,#+results:
  154. ,: foo=7
  155. ,* appending to a file-wide property
  156. , :PROPERTIES:
  157. , :var+: baz=3
  158. , :END:
  159. ,#+begin_src emacs-lisp
  160. , (+ foo bar baz)
  161. ,#+end_src
  162. ,#+results:
  163. ,: 6
  164. ,#+begin_src emacs-lisp
  165. , (org-entry-get (point) "var" t)
  166. ,#+end_src
  167. ,#+results:
  168. ,: foo=1 bar=2 baz=3
  169. #+end_src
  170. *** =org-agenda-custom-commands= has a default value
  171. This option used to be `nil' by default. This now has a default
  172. value, displaying an agenda and all TODOs. See the docstring for
  173. details. Thanks to Carsten for this.
  174. *** =outline-demote/promote= points to =org-demote/promote-subtree=
  175. Users who use this outline commands in =outline-mode= will want
  176. them to behave the Org way in Org. Thanks to Michael Brand for
  177. the suggestion.
  178. *** New escape characters for =org-log-note-headings=
  179. The option =org-log-note-headings= now supports %d and %D for
  180. inactive and active timestamps. This affect the behavior of the
  181. command =org-store-log-note=. Thanks to John J Foerch for a
  182. patch for this.
  183. *** New command =org-table-transpose-table-at-point=
  184. See the docstring. This hack from Juan Pechiar is now part of
  185. Org's core. Thanks to Juan!
  186. *** Allow recursive edit of minibuffer
  187. You can now use the command =C-c != (=org-time-stamp-inactive=)
  188. when prompted e.g. for a link name. This is because the central
  189. function =org-completing-read= now support recursive edit. Only
  190. =C-c != is available at the moment, but if you can think of a
  191. useful command to use, please let me know.
  192. Thanks to Skip Collins for the idea and to Nick Dokos for the
  193. implementation.
  194. *** Allow dynamic construction of the publishing destination
  195. Thanks to Kai Tetzlaff for adding this.
  196. *** Set the capture default time to the prompt time
  197. In the file+datetree+promt target type, the user is being asked
  198. for a date, where to file an entry. In the template, he can use
  199. the escape placeholders for active and inactive time stamps. So
  200. far, these were filled with todays date. This behavior changed
  201. so that, also at %t and %u, the date to use is the one entered at
  202. the prompt.
  203. Reported by Erik Hetzner and fixed by Carsten.
  204. *** =org-agenda-skip-additional-timestamps-same-entry= defaults to `nil'
  205. *** org-sudoku.el -- small sudoku solver
  206. Carsten wrote org-sudoku.el, a little sudoku solver, which lives
  207. in the contrib/ directory.
  208. From [[http://permalink.gmane.org/gmane.emacs.orgmode/45474][his message]]: "my daughter got stuck with a couple of SUDOKU
  209. puzzles during the vacation (where wh had no internet
  210. connection), so I hacked a small SUDOKU solver that reads a 9x9
  211. Org table and solves it as a sudoku puzzle. A little silly, but
  212. maybe fun for someone - I have pushed it into the contrib/lisp
  213. directory."
  214. ** Code Block related features and improvements
  215. *** Added [[http://cran.r-project.org/web/packages/tikzDevice/index.html][tikzDevice]] support to ob-R.el
  216. *** Support for Pico Lisp code blocks
  217. Thanks to Thorsten Jolitz Pico Lisp code blocks are now
  218. supported. See =ob-picolisp.el= for more information.
  219. *** Extension to the =eval= code block header argument
  220. The =eval= code block header argument now accepts four (six)
  221. possible values the meaning of which is shown in the table below.
  222. | never or no | The code block will not be evaluated under any |
  223. | | circumstances. |
  224. | query | Evaluation of the code block will require a query. |
  225. | never-export or no-export | The code block will not be evaluated during export |
  226. | | but may still be called |
  227. | query-export | Evaluation of the code block during export will |
  228. | | require a query. |
  229. *** Update of intermediate results during code block evaluation
  230. When set to t, the new =org-babel-update-intermediate= variable
  231. will update in-buffer results for code blocks which are evaluated
  232. in the resolution of a variable reference. This can be used to
  233. ensure that the latest returned results are always shown in
  234. buffer.
  235. *** Support for Fortran code block is now in the core
  236. Thanks to Sergey Litvinov for contributing this support.
  237. *** The =sbe= function allows header argument specification
  238. If first variable is a string and not a cons cell, then interpret
  239. it as a string of header arguments to be passed to the code
  240. block.
  241. *** Support for Shen code blocks
  242. See http://www.shenlanguage.org/ for information on Shen.
  243. A major mode for shen code blocks is available through the GNU
  244. ELPA.
  245. ** New options and faces
  246. *** New option =org-export-html-headline-anchor-format=
  247. Format for anchors in HTML headlines.
  248. It requires to %s: both will be replaced by the anchor referring
  249. to the headline (e.g. "sec-2"). When set to `nil', don't insert
  250. HTML anchors in headlines.
  251. This was requested by Alan L Tyree.
  252. *** New option =org-table-formula-field-format=
  253. Format for fields which contain the result of a formula.
  254. For example, using \"~%s~\" will display the result within tilde
  255. characters. Beware that modifying the display can prevent the
  256. field from being used in another formula.
  257. Thanks to Dov Grobgeld for this idea.
  258. *** New option =org-loop-over-headlines-in-active-region=
  259. When set to `t', some commands will loop over the active
  260. region. Currently, =org-schedule= and =org-deadline= uses this
  261. option: pressing =C-c C-s= or =C-c C-d= when the region is active
  262. will let you schedule/deadline all the visible headlines in the
  263. region.
  264. Thanks a lot to David Maus for implementing this.
  265. *** New option =org-catch-invisible-edits=
  266. This option makes it possible to check what is the right thing to do before
  267. editing invisible regions. Here are the possible values of this option:
  268. : +nil Do not check, so just do invisible edits.
  269. : +error Throw an error and do nothing.
  270. : +show Make point visible, and do the requested edit.
  271. : +show-and-error Make point visible, then throw an error and abort the edit.
  272. : +smart Make point visible, and do insertion/deletion if it is
  273. : adjacent to visible text and the change feels predictable.
  274. See the docstring for more details.
  275. Thanks to Carsten for implementing this.
  276. *** New option =org-export-latex-table-caption-above=
  277. Let the user place a caption above its table in LaTeX.
  278. Thanks to Thomas Dye for a patch to this effect.
  279. *** New option =org-agenda-follow-indirect=
  280. By setting `org-agenda-follow-indirect' to a non-nil value,
  281. `org-agenda-follow-mode' will use an indirect buffer to display
  282. only the current item, rather than the whole agenda file in which
  283. it lives.
  284. Thanks to Dave Abrahams for implementing this.
  285. *** New option =org-refile-active-region-within-subtree=
  286. Non-nil means also refile active region within a subtree.
  287. By default =org-refile= doesn't allow refiling regions if they
  288. don't contain a set of subtrees, but it might be convenient to do
  289. so sometimes: in that case, the first line of the region is
  290. converted to a headline before refiling.
  291. Thanks to Jeff Horn for raising the issue of refiling a list
  292. item, and to Nicolas Goaziou, Nick Dokos and Suvayu Ali for
  293. discussing them patiently.
  294. *** New option =org-latex-to-mathml-convert-command=
  295. This option lets you specify a way to convert LaTeX fragments to
  296. MathML. See also =org-latex-to-mathml-jar-file= and the
  297. docstring of =org-create-math-formula=.
  298. Thanks to Jambunathan K for implementing this.
  299. *** New option =org-properties-postprocess-alist=
  300. See its docstring:
  301. : Alist of properties and functions to adjust inserted values.
  302. : Elements of this alist must be of the form
  303. :
  304. : ([string] [function])
  305. :
  306. : where [string] must be a property name and [function] must be a
  307. : lambda expression: this lambda expression must take one argument,
  308. : the value to adjust, and return the new value as a string.
  309. :
  310. : For example, this element will allow the property "Remaining"
  311. : to be updated wrt the relation between the "Effort" property
  312. : and the clock summary:
  313. :
  314. : (("Remaining"
  315. : (lambda(value)
  316. : (let ((clocksum (org-clock-sum-current-item))
  317. : (effort (org-duration-string-to-minutes
  318. : (org-entry-get (point) "Effort"))))
  319. : (org-minutes-to-hh:mm-string (- effort clocksum))))))
  320. This is inspired by a request from Pascal Mattia.
  321. *** New options =org-habit-today-glyph= and =org-habit-completed-glyph=
  322. This gives you control over the character used for displaying
  323. today (default is `!') and days on which a task has been
  324. completed (default is `*'). Thanks to John Wiegley for this.
  325. *** New option =org-bibtex-type-property-name=
  326. Configurable property name for bibtex entry types. Thanks to
  327. Eric Schulte for this.
  328. *** New face =org-agenda-filter-tags=
  329. This face is used for highlighting the tag(s) filter in the
  330. modeline. Thanks to Sébastien Vauban for this idea and its
  331. implementation.
  332. *** New faces =org-agenda-calendar-event= and =org-agenda-calendar-sexp=
  333. =org-agenda-calendar-event= is the face used to show events and
  334. appointments in the agenda, and =org-agenda-calendar-sexp= the
  335. one used to show events computed from a S-expression.
  336. Thanks to Sébastien Vauban for this addition.
  337. ** Important bugfixes
  338. *** Respect =org-export-with-tags= when exporting a subtree
  339. Thanks to Suvayu Ali for spotting this problem and fixing it.
  340. *** Fix XEmacs compatibility issue when creating an indirect buffer
  341. Thanks to Michael Sperber for this fix.
  342. ** Testing
  343. *** New test function =org-test-with-temp-text-in-file=
  344. * Version 7.7
  345. ** COMMENT Incompatible changes
  346. ** New features and user-visible improvements
  347. *** New command =org-copy-visible= (=C-c C-x v=)
  348. This command will copy the visible text in the region into the
  349. kill ring.
  350. Thanks to Florian Beck for this function and to Carsten for
  351. adding it to org.el and documenting it!
  352. *** New hook =org-ctrl-c-ctrl-c-final-hook=
  353. This hook will be called when nothing special can be performed by
  354. the busy =C-c C-c= key. Thanks to Paul Sexton for this idea!
  355. *** Allow relative time when scheduling/adding a deadline
  356. You can now use relative duration strings like "-2d" or "++3w"
  357. when calling =org-schedule= or =org-deadline=: it will schedule
  358. (or set the deadline for) the item respectively two days before
  359. today and three weeks after the current timestamp, if any.
  360. You can use this programmatically: =(org-schedule nil "+2d")=
  361. will work on the current entry.
  362. You can also use this while (bulk-)rescheduling and
  363. (bulk-)resetting the deadline of (several) items from the agenda.
  364. Thanks to Memnon Anon for a heads up about this!
  365. *** New functions: =org-todo-yesterday= and =org-agenda-todo-yesterday=
  366. This is useful when you need to mark things done yesterday.
  367. Thanks to Max Mikhanosha for this patch.
  368. *** =org-set-property= defaults to the last interactively modified property
  369. When setting a property with =C-c C-x p=, it will offered the
  370. last interactively modified property as a default choice. If
  371. this command is called on a property line, the property in this
  372. line will take precedence over the last set property.
  373. *** Clock: Allow synchronous update of timestamps in CLOCK log
  374. Using =S-M-<up/down>= on CLOCK log timestamps will
  375. increase/decrease the two timestamps on this line so that
  376. duration will keep the same. Note that duration can still be
  377. slightly modified in case a timestamp needs some rounding.
  378. Thanks to Rainer Stengele for this idea.
  379. *** Clock: New function =org-clock-remove-empty-clock-drawer=
  380. This function removes empty =CLOCK= drawers and has been added to
  381. =org-clock-out-hook=: when clocking out, if no CLOCK log has been
  382. inserted and the drawer is empty, the drawer will be removed.
  383. *** Capture: new escape sequence =%F= for templates
  384. Using =%F= in capture templates will insert the full path of the
  385. file or the directory the capture mechanism was called from
  386. (whereas =%f= only insert the filename.)
  387. Thanks to Nicolas Goaziou for this change.
  388. *** Agenda: new variable =org-agenda-bulk-custom-functions= for custom bulk functions
  389. When using =org-agenda-bulk-action= in agenda view, the user
  390. could already call custom functions by pressing =f= and entering
  391. the function's name.
  392. This variable lets the user add custom choices and reach them
  393. more quickly. Set the variable to an alist of keys (chars) and
  394. functions, and these keys will be accessible through the
  395. =org-agenda-bulk-action= interface.
  396. If there is a conflict between custom keys and hardcoded choices,
  397. the latter ones take precedence.
  398. Thanks to Julien Cubizolles for triggering this idea.
  399. *** Refile: exclude irrelevant headings
  400. When refiling from an org-mode buffer, the current heading and
  401. its subheadings will be excluded from the list of possible
  402. targets.
  403. This only works when =org-refile-use-cache= is =nil= and in
  404. org-mode buffers, not in agenda buffers.
  405. Thanks to Jason Dunsmore for this idea!
  406. *** Lists: new variable =org-list-use-circular-motion=
  407. This variable allows some commands to consider lists as cyclic
  408. structures. For example, when non-nil, moving past the last item
  409. of a list with S-down will bring you back to the first one.
  410. *** Lists: New variable =org-list-indent-offset=
  411. This variable helps improving readability of sub-items by
  412. increasing their indentation. E.g., if =org-list-indent-offset=
  413. is set to 2, you may see the following list:
  414. #+begin_example
  415. - First item
  416. - Sub-item 1
  417. - Sub-item 2
  418. - Second item
  419. #+end_example
  420. *** Table: New flag ";t" to tailor the display of computed durations
  421. See the new variable =org-table-duration-custom-format= and the
  422. updated example from the manual:
  423. | Task 1 | Task 2 | Total |
  424. |---------+----------+-------|
  425. | 3:02:20 | -2:07:00 | 0.92 |
  426. #+TBLFM: @2$3=$1+$2;t
  427. In this example, =0.92= is a fraction of hour, the default for
  428. =org-table-duration-custom-format=.
  429. Thanks to Daniel E. Doherty for discussions about this.
  430. *** Table: display field's coordinates when editing it with =C-c `=
  431. When editing a field with =C-c `=, the field's coordinate will
  432. the displayed in the buffer.
  433. Thanks to Michael Brand for a patch to this effect.
  434. *** Babel: support for =java= code blocks
  435. Evaluation of blocks of Java code is now possible. Currently
  436. only external evaluation of Java code is supported (i.e., no
  437. session evaluation) and only the =:results output= results are
  438. collected. Code blocks are compiled to a Java class file which
  439. are then evaluated and the values printed to STDOUT are returned.
  440. Java code blocks required a =:classname= header argument which is
  441. used by the compiler to name =.java= and =.class= files.
  442. Example Java code block:
  443. #+begin_src org
  444. ,#+begin_src java :classname myfirstjavaprog
  445. , class myfirstjavaprog
  446. , {
  447. , public static void main(String args[])
  448. , {
  449. , System.out.println("Hello World!");
  450. , }
  451. , }
  452. ,#+end_src
  453. ,#+results:
  454. ,: Hello World!
  455. #+end_src
  456. *** Babel: support for =fortran= code blocks by Sergey Litvinov
  457. The =contrib/babel/langs/= contains the new library
  458. =ob-fortran.el= by Sergey Litvinov.
  459. Thanks to him for this addition.
  460. *** Babel: support for the [[http://fomus.sourceforge.net/][fomus]] language by Torsten Anders
  461. =ob-fomus.el= has been added to =contrib/babel/langs/=.
  462. Thanks to Torsten Anders for contributing this functionality.
  463. *** Publish: hide .orgx files and use theindex.org directly
  464. When :makeindex is `non-nil' in the publishing options, Org will
  465. export an index. It populates the directory with .orgx files:
  466. those files are now hidden (.file.orgx). Also the index is
  467. directly stored in the file =theindex.org=, not in the file
  468. =theindex.inc= (which you can delete).
  469. Thanks to Nathan Neff and Carsten for pointing at the problems
  470. and solutions.
  471. *** Export: new variable =org-export-html-divs= to allow custom divs
  472. The default value of =org-export-html-divs= is =("preamble"
  473. "content" "postamble")= and is used to define the =<div "%s">=
  474. for the main structure of the exported HTML file.
  475. Note that modifying the default value will break compatibility
  476. with the =org-info.js= script.
  477. Also note that the variable =org-export-html-content-div= will
  478. still be checked for compatibility reasons but is not a custom
  479. variable anymore.
  480. Thanks to Sébastian Vauban for a preliminary version of this
  481. patch.
  482. *** Export: new variable =org-export-latex-quotes= to customize quotes in LaTeX export
  483. This allows users to define what quotes they want to use as a
  484. replacement of english double-quotes while exporting to LaTeX.
  485. In particular, if you use the csquote package, you can configure
  486. Org to output something like \endquote{some quoted text} instead
  487. of "some quoted text".
  488. Thanks to Frederik for bringing this issue up, and to Thomas S.
  489. Dye, Nick Dokos and Stefan Nobis for elaborating this solution.
  490. ** Important bugfixes
  491. *** Duration computations now work for complex ranges in tables
  492. Thanks to Christian Moe for signaling this problem.
  493. *** Handle recursive setup files correctly
  494. Thanks to Stefan Vollmar for mentioning this problem.
  495. ** Details
  496. *** =org-map-entries= can now have 'region as its scope
  497. Thanks to David Maus for suggesting related improvements to
  498. =org-map-entries=. This one prepares the possibility of letting
  499. some commands to loop over the active region.
  500. *** org-depend.el: new chain-find-next trigger option
  501. See the updated docstring of this file.
  502. Thanks a lot to Max Mikhanosha for this!
  503. *** Export: new experimental exporter to MoinMoin by Puneeth Chaganti.
  504. The =EXPERIMENTAL/= directory contains a new file org-mm.el that
  505. allows you to export an Org file to a MoinMoin file.
  506. Thanks to Puneeth Chaganti for this addition.
  507. *** Export: new default for =org-export-html-preamble=
  508. The default value included the title. It now defaults to the
  509. empty string, as the title is hardcoded and included in the
  510. "content" div. Including the title here is necessary to let
  511. =org-info.js= find it and display the page properly.
  512. *** Export: new variable =org-lparse-use-flashy-warning= defaulting to =nil=
  513. Flashy and verbose warnings while exporting to ODT have been
  514. disabled. Set this to =t= if you want it back.
  515. *** Export: new default value for =org-export-latex-image-default-option=
  516. This used to be =width=10em= and this is now width=.9\linewidth,
  517. which makes more sense.
  518. Thanks to Sebastien Vauban for this suggestion.
  519. *** Export: allow =org-export-latex-href-format= to have only one "%s"
  520. This is useful when you want to use \url{link} instead of the
  521. default \href{link}{path}.
  522. Thanks to Henri-Paul Indiogine for bringing this up.
  523. ** Known issues
  524. *** The ODT exporter will choke when using some Org-defined strings
  525. For example, using the hungarian version of the table of
  526. contents, as defined in =org-export-language-setup=, the ODT
  527. exporter will complain about a problem with the translated
  528. string.
  529. The workaround is to customize =org-export-language-setup=
  530. and to use accents directly.
  531. * Version 7.6
  532. ** Incompatible changes
  533. ** New features and user-visible improvements
  534. *** Integration of Jambunathan's OpenDocumentText Exporter
  535. **** Activation
  536. Org-mode 7.6 supports exporting to OpenDocument Text (=odt=)
  537. format using org-odt.el. Depending on how you installed Org,
  538. this module can be enabled in one of the following ways:
  539. 1. If you have downloaded the Org from the Web, either as a
  540. distribution =.zip= or =.tar.gz= file, or as a Git archive,
  541. enable the =odt= option in the variable =org-modules=.
  542. 2. If you are using Org-mode 7.6 that comes bundled with
  543. Emacs-24.0.50 (or future Emacs-24.1), then you can install the
  544. OpenDocumentText exporter using the package manager. Check
  545. the list of available packages with =M-x list-packages= and
  546. install the =org-odt= package.
  547. Thanks a lot to Jambunathan K for this great contribution.
  548. **** Keybindings
  549. The following interactive commands are provided:
  550. 1. =C-c C-e o= (=org-export-as-odt=): Export as an =odt= file.
  551. 2. =C-c C-e O= (=org-export-as-odt-and-open=): Export as an =odt=
  552. file and open the resulting file.
  553. See the =contrib/odt/README.org= file for further details; you
  554. may check in particular the commands =M-x org-lparse= and =M-x
  555. org-export-convert=.
  556. *** Ob-Lilypond -- new Babel language to allow score generation
  557. ob-lilypond - an org-babel language, provided to allow LilyPond
  558. music score generation, complete with optional auditioning via
  559. midi, whilst leveraging the full power of org mode, and literate
  560. programming. See https://github.com/mjago/ob-lilypond for more
  561. documentation.
  562. Thanks to Martyn Jago for this addition.
  563. *** Org-Bibtex -- major improvements
  564. Provides support for managing bibtex bibliographical references
  565. data in headline properties. Each headline corresponds to a
  566. single reference and the relevant bibliographic meta-data is
  567. stored in headline properties, leaving the body of the headline
  568. free to hold notes and comments. Org-bibtex is aware of all
  569. standard bibtex reference types and fields.
  570. The key new functions are
  571. - org-bibtex-check :: queries the user to flesh out all required
  572. (and with prefix argument optional) bibtex fields available
  573. for the specific reference =type= of the current headline.
  574. - org-bibtex-create :: Create a new entry at the given level,
  575. using org-bibtex-check to flesh out the relevant fields.
  576. - org-bibtex-yank :: Yank a bibtex entry on the kill ring as a
  577. formatted Org-mode headline into the current buffer
  578. - org-bibtex-export-to-kill-ring :: Export the current headline
  579. to the kill ring as a formatted bibtex entry.
  580. *** Spreadsheet computation of durations and time values
  581. If you want to compute time values use the =T= flag, either in
  582. Calc formulas or Elisp formulas:
  583. | Task 1 | Task 2 | Total |
  584. |--------+--------+---------|
  585. | 35:00 | 35:00 | 1:10:00 |
  586. #+TBLFM: @2$3=$1+$2;T
  587. Values must be of the form =[HH:]MM:SS=, where hours are
  588. optional.
  589. Thanks to Martin Halder, Eric Schulte and Carsten for code and
  590. feedback on this.
  591. *** Links within inlined footnotes.
  592. It as also possible to have footnotes side-by-side correctly
  593. exported. New variables =org-export-latex-footnote-separator=,
  594. =org-export-html-footnote-separator= and
  595. =org-export-docbook-footnote-separator= are used to separate them
  596. in that case.
  597. Fontification of footnotes is also more accurate.
  598. *** New variable =org-export-with-tasks=
  599. Non-nil means include TODO items for export.
  600. This may have the following values:
  601. - t include tasks independent of state.
  602. - todo include only tasks that are not yet done.
  603. - done include only tasks that are already done.
  604. - nil remove all tasks before export
  605. - list of TODO kwds keep only tasks with these keywords
  606. Thanks to Carsten for implementing this!
  607. *** New variable =org-export-latex-timestamp-inactive-markup=
  608. This variable allows the user to define the LaTeX markup for
  609. inactive timestamps. It defaults to the same markup than active
  610. timestamps. Thanks to Eric S Fraga for this patch.
  611. *** New =org-default= face
  612. =M-x customize-face RET org-default RET= will let you define the
  613. default face for =org-mode= buffers.
  614. *** Babel improvements
  615. **** In line code block call syntax
  616. It is now possible to call code blocks from within blocks of
  617. prose.
  618. The new syntax is exactly analogous to the existing =#+call:=
  619. line syntax, only it may be present embedded in a block of prose
  620. for example =call_double(num=8)= would call the =double= code
  621. block assigning the =num= variable to the value =8=.
  622. **** Optional variable names in code block calls
  623. Variable names are now optional when passing variables to a code
  624. block reference. Un-named variables will be assigned in order as
  625. shown below.
  626. : #+source: minus
  627. : #+begin_src emacs-lisp :var a=0 :var b=0
  628. : (- a b)
  629. : #+end_src
  630. :
  631. : #+call: minus(a=8, b=4)
  632. :
  633. : #+call: minus(8,4)
  634. **** Sub-tree ID as valid code block variable reference
  635. It is now possible to assign the textual contents of an Org-mode
  636. subtree to a code block variable using the ID of the subtree.
  637. Both custom IDs and Org-mode IDs may be used. For example;
  638. #+begin_src org
  639. ,#+begin_src sh :var text=foo
  640. , echo "$text"|wc
  641. ,#+end_src
  642. ,#+results:
  643. ,: 8 58 415
  644. ,* example foo
  645. , :PROPERTIES:
  646. , :CUSTOM_ID: foo
  647. , :END:
  648. ,Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Donec
  649. ,hendrerit tempor tellus. Donec pretium posuere tellus. Proin quam
  650. ,nisl, tincidunt et, mattis eget, convallis nec, purus. Cum sociis
  651. ,natoque penatibus et magnis dis parturient montes, nascetur ridiculus
  652. ,mus. Nulla posuere. Donec vitae dolor. Nullam tristique diam non
  653. ,turpis. Cras placerat accumsan nulla. Nullam rutrum. Nam vestibulum
  654. ,accumsan nisl.
  655. #+end_src
  656. **** =org-babel-tangle-body-hook= for reprocessing code block bodies during tangling
  657. **** =padline= header argument controls newline padding during tangling
  658. **** Maxima code blocks are now supported
  659. Thanks to Eric Fraga for contributing this support.
  660. **** =awk= code blocks are now supported
  661. **** Added =xmpfilter= to Ruby code blocks for annotated code output
  662. **** New =noweb-ref= header argument
  663. This header argument may be used to concatenate the bodies of
  664. many code blocks into a single noweb reference. This brings
  665. Org-mode's tangling functionality in line with traditional noweb
  666. tangling.
  667. A no web reference like the following
  668. #+begin_src org
  669. ,#+begin_src sh
  670. , <<the-ref>>
  671. ,#+end_src
  672. #+end_src
  673. will now expand to include the bodies of all code blocks which
  674. are named =the-ref=, as well as all code blocks which have a
  675. =:noweb-ref= header argument set to the value =the-ref=.
  676. *** New tests
  677. The =tests/= directory has been extensively updated.
  678. ** Important bugfixes
  679. *** Org-exp-blocks --- proper handling of recursively nested blocks
  680. During export pre-processing org-exp-blocks will now ensure that
  681. all matched blocks contain a proper balanced number of
  682. recursively nested blocks.
  683. Before this fix nested blocks such as the following would break
  684. during export.
  685. #+begin_src org
  686. ,#+begin_src org
  687. , ,#+begin_example
  688. , , nested example
  689. , ,#+end_example
  690. ,#+end_src
  691. #+end_src
  692. *** List handling
  693. Fix an infinite loop when a list has an end of block string
  694. without the corresponding beginning.
  695. Auto-filling cannot happen at a location where it would otherwise
  696. insert a new item.
  697. ** Details
  698. *** Footnotes have gone through some bug-fixing:
  699. - properly ignore footnotes in comments,
  700. - export calls to previously defined footnotes in LaTeX using
  701. \footnotemark,
  702. - export footnotes before first heading (LaTeX),
  703. - export footnotes when selecting a subtree not holding their
  704. definition (LaTeX).
  705. *** Many small bug fixes have been applied to list handling
  706. - fix `org-timer-item',
  707. - fix insertion of a new item with a non-nil `indent-tabs-mode',
  708. - fix use of `fill-region' in an item,
  709. - correct export lists within footnotes and footnotes within lists,
  710. - correctly export lists containing macros,
  711. - don't ignore with-case specification when sorting a list,
  712. - better indentation handling when changing an item to an headline
  713. or the other way,
  714. - fix check-boxes' cookies updating.
  715. * Version 7.5
  716. ** Incompatible changes
  717. *** Code block variable initialized with Emacs Lisp code in tables and lists
  718. It is no longer possible to assign code block variables using
  719. executable Emacs Lisp statements contained in tables or lists.
  720. As per the following example.
  721. #+tblname: table
  722. | (a b c) |
  723. #+begin_src perl :var data=table[0,0]
  724. $data
  725. #+end_src
  726. #+results:
  727. : (a b c)
  728. Thanks to Vladimir Alexiev for raising this issue.
  729. *** `org-bbdb-anniversary-format-alist' has changed
  730. Please check the docstring and update your settings accordingly.
  731. ** New features and user-visible improvements
  732. *** Implement formulas applying to field ranges
  733. Carsten implemented this field-ranges formulas.
  734. : A frequently requested feature for tables has been to be able to define
  735. : row formulas in a way similar to column formulas. The patch below allows
  736. : things like
  737. :
  738. : @3=
  739. : @2$2..@5$7=
  740. : @I$2..@II$4=
  741. :
  742. : as the left hand side for table formulas in order to write a formula that
  743. : is valid for an entire column or for a rectangular section in a
  744. : table.
  745. Thanks a lot to Carsten for this.
  746. *** Improved handling of lists
  747. Nicolas Goaziou extended and improved the way Org handles lists.
  748. 1. Indentation of text determines again end of items in
  749. lists. So, some text less indented than the previous item
  750. doesn't close the whole list anymore, only all items more
  751. indented than it.
  752. 2. Alphabetical bullets are implemented, through the use of the
  753. variable `org-alphabetical-lists'. This also adds alphabetical
  754. counters like [@c] or [@W].
  755. 3. Lists can now safely contain drawers, inline tasks, or various
  756. blocks, themselves containing lists. Two variables are
  757. controlling this: `org-list-forbidden-blocks', and
  758. `org-list-export-context'.
  759. 4. Improve `newline-and-indent' (C-j): used in an item, it will
  760. keep text from moving at column 0. This allows to split text
  761. and make paragraphs and still not break the list.
  762. 5. Improve `org-toggle-item' (C-c -): used on a region with
  763. standard text, it will change the region into one item. With a
  764. prefix argument, it will fallback to the previous behavior and
  765. make every line in region an item. It permits to easily
  766. integrate paragraphs inside a list.
  767. 6. `fill-paragraph' (M-q) now understands lists. It can freely be
  768. used inside items, or on text just after a list, even with no
  769. blank line around, without breaking list structure.
  770. Thanks a lot to Nicolas for all this!
  771. *** Modified link escaping
  772. David Maus worked on `org-link-escape'. See [[http://article.gmane.org/gmane.emacs.orgmode/37888][his message]]:
  773. : Percent escaping is used in Org mode to escape certain characters
  774. : in links that would either break the parser (e.g. square brackets
  775. : in link target oder description) or are not allowed to appear in
  776. : a particular link type (e.g. non-ascii characters in a http:
  777. : link).
  778. :
  779. : With this change in place Org will apply percent escaping and
  780. : unescaping more consistently especially for non-ascii characters.
  781. : Additionally some of the outstanding bugs or glitches concerning
  782. : percent escaped links are solved.
  783. Thanks a lot to David for this work.
  784. *** Simplification of org-export-html-preamble/postamble
  785. When set to `t', export the preamble/postamble as usual, honoring
  786. the =org-export-email/author/creator-info= variables.
  787. When set to a formatting string, insert this string. See the
  788. docstring of these variable for details about available
  789. %-sequences.
  790. You can set =:html-preamble= in publishing project in the same
  791. way: `t' means to honor =:email/creator/author-info=, and a
  792. formatting string will insert a string.
  793. *** New command `org-agenda-append-agenda'
  794. You can now use `org-agenda-append-agenda' to dynamically add new
  795. agendas views to the current one. It is particularily useful to
  796. compare multiple small agendas.
  797. *** Localized clock tables
  798. Clock tables now support a new new =:lang= parameter, allowing
  799. the user to customize the localization of the table headers. See
  800. the variable =org-clock-clocktable-language-setup= which controls
  801. available translated strings.
  802. *** New sorting options when publishing projects
  803. The =:sitemap-sort-file= option now allows sorting the sitemap
  804. file (anti-)alphabetically and (anti-)chronogically. Thanks a
  805. lot to Manuel Giraud for a patch to this effet.
  806. *** Testing with ERT
  807. Martyn Jago added new tests to =testing/= - thanks to him!
  808. *** New file in contrib/: org-notmuch.el
  809. Org is now distributed with =org-notmuch.el=, by Matthieu
  810. Lemerre. See explanations in the header of =org-notmuch.el=:
  811. : =org-notmuch.el= implements links to notmuch messages and
  812. : "searchs". A search is a query to be performed by notmuch; it is
  813. : the equivalent to folders in other mail clients. Similarly, mails
  814. : are refered to by a query, so both a link can refer to several
  815. : mails.
  816. *** org-gnus.el now allows link creation from messages
  817. You can now create links from messages. This is particularily
  818. useful when the user wants to stored messages that he sends, for
  819. later check. Thanks to Ulf Stegemann for the patch.
  820. ** Important bug fixes
  821. *** Capturing to narrowed buffers
  822. You can now safely capture entries to narrowed buffers. Thanks a
  823. lot to Memnon Anon for bringing this up.
  824. *** Better handling of the new `org-agenda-span' variable
  825. Agendas were a bit confused by the introduction of this variable,
  826. in particular block agendas. This is now fixed.
  827. Thanks to Julien and Carsten for helping find the right fix for
  828. this issue, and to Michael Brand and Matt Lundin for their
  829. patient testing and reporting.
  830. *** Security warning: using org-crypt with auto-save
  831. To prevent Emacs from auto-saving encrypted entries in clear
  832. text, the user should not use auto-save with org-crypt.el. We
  833. now send a warning when users are both using auto-saving and
  834. org-crypt.el. Thanks to Peter Jones for bringing this up.
  835. ** Details
  836. *** Babel
  837. **** :file argument causes results to be written to file for all languages
  838. :file <filename> should be understood as saying "write the result
  839. to <filename> and return a link to <filename>".
  840. This works for all languages. For graphics languages (e.g. ditaa, dot,
  841. gnuplot) there is no change in behavior: "result" in the above is the
  842. graphics, and a link to the image is placed in the org buffer. For
  843. general-purpose languages (e.g. emacs-lisp, python, R, ruby, shell),
  844. the "result" written to file is the normal org-babel result (string,
  845. number, table).
  846. In order to return a file link from a src block without telling babel
  847. to save any results to that file, use :results <filename> and do not
  848. use :file. The code block can of course write arbitrary content to
  849. <filename>.
  850. Some examples:
  851. Save the output of ls -l as a .csv file (recall that :results value is
  852. the default):
  853. #+begin_src sh :file dirlisting.csv :sep ,
  854. ls -l
  855. #+end_src
  856. Send the text output of ls -l directly to file:
  857. #+begin_src sh :results output :file dirlisting.txt
  858. ls -l
  859. #+end_src
  860. **** R requires :results graphics :file filename when generating graphics
  861. ":results graphics" is now required in addition to ":file
  862. filename" in order for graphical output to be sent automatically
  863. to file. If :file is supplied, but not ":results graphics", then
  864. non-graphical, "value" or "output" results are written to file,
  865. depending on which of those options is in effect.
  866. **** Calc code blocks can now accept vectors
  867. For example;
  868. #+begin_src calc :var y=[1 2 3]
  869. 3 y
  870. #+end_src
  871. #+results:
  872. : [3, 6, 9]
  873. Thanks to Eric S. Fraga for raising this issue
  874. **** Code blocks with empty bodies are now acceptable
  875. Previously these caused errors on export. Thanks to Martyn Jago
  876. for this patch.
  877. **** Emacs Lisp variable assignments which don't eval cleanly passed literally
  878. This makes it possible to easily pass through non-elisp variable
  879. assignments which may initially look like valid elisp.
  880. **** Unified naming of =c++= functions to =C++=
  881. Thanks to Martyn Jago for this patch.
  882. **** `org-babel-execute-buffer' and `org-babel-execute-subtree' now eval inline code blocks as well
  883. **** New :mkdirp header argument creates parent dirs of tangle targets
  884. **** New ":comments noweb" option for wrapping noweb references in comment links
  885. This can be useful to allow backward linking from tangle code
  886. files to the original code block holding noweb-expanded content.
  887. **** Allow detangling of text containing '\'s -- Thanks to Seth Burleigh
  888. **** =:sep= specifies table separator when opening or writing tabular results
  889. **** `org-edit-src-content-indentation' can now be a buffer-local variable
  890. *** All export configuration variables can now be buffer-local variables
  891. *** org-complete.el has been renamed to org-pcomplete.el
  892. In case you were manually loading =org-complete.el= (which is
  893. *not* necessary anyway), please be aware that the name of this
  894. library was changed to =org-pcomplete.el=.
  895. *** New user options for LaTeX source code export via minted and listings packages
  896. New variables `org-export-latex-listings-options' and
  897. `org-export-latex-minted-options' allow package options to be
  898. controlled; `org-export-latex-custom-lang-environments' allows
  899. arbitrary configuration on a per-language basis.
  900. *** Effort durations now support 2d, 2m, etc.
  901. Effort duration can now be set as 2h (for 2 hours), etc. This
  902. will be converted to minutes automatically when clocking in an
  903. entry with an effort property. See the =org-effort-durations=
  904. variable.
  905. Thanks a lot to Lawrence Mitchell for this patch.
  906. *** New option :clock-keep for capture templates
  907. A capture template with =:clock-keep t= will prevent the refiling
  908. process from clocking out the entry. If =:clock-resume= is also
  909. `t', =:clock-keep= will take precedence and =:clock-resume= will
  910. be ignored.
  911. So now =:immediate-finish t :clock-in t :clock-keep t= makes
  912. sense: it will capture a new task and clock it.
  913. *** Misc
  914. **** New command `org-agenda-bulk-mark-regexp'
  915. =M-x org-agenda-bulk-mark-regexp RET= will mark agenda entries
  916. which headings match against a regular expression. You can call
  917. this command with the `%' key from an agenda buffer.
  918. **** New command `org-agenda-reset-view'
  919. Julien Danjou implemented this:
  920. : This new command lets you switch to day/week/month/year view.
  921. :
  922. : When switching to day or week view, this setting becomes the default for
  923. : subsequent agenda refreshes. Since month and year views are slow to
  924. : create, they do not become the default. A numeric prefix argument may be
  925. : used to jump directly to a specific day of the year, ISO week, month, or
  926. : year, respectively. For example, `32 d' jumps to February 1st, `9 w' to
  927. : ISO week number 9. When setting day, week, or month view, a year may be
  928. : encoded in the prefix argument as well. For example, `200712 w' will jump
  929. : to week 12 in 2007. If such a year specification has only one or two
  930. : digits, it will be mapped to the interval 1938-2037. `v SPC'' will reset to
  931. : what is set in `org-agenda-span'.
  932. Thanks a lot to Julien for this.
  933. **** New options for ignoring past or future items in the global todo list
  934. This patch gives users greater control over which past or future items
  935. they would like to ignore in the global todo list. By setting
  936. org-agenda-todo-ignore-scheduled to 7, for instance, a user can ignore all
  937. items scheduled 7 or more days in the future. Similarly, by setting
  938. org-agenda-todo-ignore-scheduled to -1, a user can ignore all items that
  939. are truly in the past (unlike the 'past setting, which ignores items
  940. scheduled today).
  941. See the docstrings of these variables:
  942. - org-agenda-todo-ignore-deadlines
  943. - org-agenda-todo-ignore-scheduled
  944. - org-agenda-todo-ignore-timestamp
  945. Thanks a lot to Matt Lundin for implementing this and to Paul
  946. Sexton for the idea.
  947. **** New variable `org-export-table-remove-empty-lines'
  948. When set to `nil', don't remove empty tables when exporting
  949. tables. This was requested by Eric S Fraga.
  950. **** New variable `org-table-fix-formulas-confirm'
  951. Sometime, editing the structure of a table should not edit the
  952. corresponding formulas. This new variable lets the user decide
  953. whether he wants to confirm formula fixes or not.
  954. **** New variable `org-export-initial-scope'
  955. This variable controls the initial scope when exporting with `org-export'.
  956. It can be set to 'buffer or 'subtree. If there is an active region, tell
  957. it when prompting the user for an export command.
  958. **** Show and use the default refile location
  959. M-x org-refile RET now shows the default refile location. Thanks to
  960. Tassilo Horn for a patch to this effect.
  961. **** New variable `org-archive-subtree-add-inherited-tags'
  962. Non-nil means append inherited tags when archiving a subtree.
  963. **** New variable `org-export-current-backend'
  964. This variable is dynamically set by exporters. You can check
  965. against its value anytime in your code to see if you are
  966. exporting to HTML, LaTeX, etc. Possible values are 'html,
  967. 'latex, 'ascii, 'docbook. Thanks to Eric Schulte and Dan Davison
  968. for ideas and patches in this area.
  969. **** New hook `org-clock-before-select-task-hook'
  970. Hook called in task selection just before prompting the user.
  971. Thanks to Benjamin Drieu for the patch.
  972. **** = = emphasis now uses \protectedtexttt
  973. **** Author's email now included in the LaTeX title
  974. When `org-export-email-info' is non-nil, the LaTeX title will
  975. also include the author's email. Thanks to Lawrence Mitchell for
  976. the patch.
  977. **** Update contrib/scripts/ditaa.jar to ditaa v0.9 of 2009-11-24
  978. **** New variable `org-mobile-files-exclude-regexp'
  979. This variable lets you exclude files that you don't want in
  980. org-mobile-files.
  981. **** New variable `org-confirm-elisp-link-not-regexp'
  982. Set this to a regexp if you want to skip the confirmation step for
  983. Elisp/Shell code matching this regexp.
  984. **** New variable `org-attach-store-link-p'
  985. When set to `t', store link to the attached file, at its original location.
  986. **** `org-table-use-standard-references' now defaults to 'from
  987. **** Better `org-agenda-repeating-timestamp-show-all'
  988. When this is set to a list of TODO keywords, the agenda will only show
  989. occurrences of repeating stamps for these TODO keywords.
  990. **** New command `org-narrow-to-block'
  991. This command (`C-x n b') will narrow the buffer to the current block.
  992. * Version 7.4
  993. ** Incompatible changes
  994. *** Agenda: rework ndays and span handling
  995. The variable =org-agenda-ndays= is obsolete - please use
  996. =org-agenda-span= instead.
  997. Thanks to Julien Danjou for this.
  998. ** Details
  999. *** Improvements with inline tasks and indentation
  1000. There is now a configurable way on how to export inline tasks. See
  1001. the new variable =org-inlinetask-export-templates=.
  1002. Thanks to Nicolas Goaziou for coding these changes.
  1003. *** Agenda: Added a bulk "scattering" command
  1004. =B S= in the agenda buffer will cause tasks to be rescheduled a random
  1005. number of days into the future, with 7 as the default. This is useful
  1006. if you've got a ton of tasks scheduled for today, you realize you'll
  1007. never deal with them all, and you just want them to be distributed
  1008. across the next N days. When called with a prefix arg, rescheduling
  1009. will avoid weekend days.
  1010. Thanks to John Wiegley for this.
  1011. *** In-buffer completion is now done using John Wiegleys pcomplete.el
  1012. Thanks to John Wiegley for much of this code.
  1013. *** Sending radio tables from org buffers is now allowed
  1014. Org radio tables can no also be sent inside Org buffers. Also,
  1015. there is a new hook which get called after a table has been sent.
  1016. Thanks to Seweryn Kokot.
  1017. *** Command names shown in manual
  1018. The reference manual now lists command names for most commands.
  1019. Thanks to Andreas Röhler who started this project.
  1020. *** Allow ap/pm times in agenda time grid
  1021. Times in the agenda can now be displayed in am/pm format. See the new
  1022. variable =org-agenda-timegrid-use-ampm=. Thanks to C. A. Webber for
  1023. a patch to this effect.
  1024. *** Rewriten clock table code
  1025. The entire clocktable code has been rewritten to add more options and
  1026. to make hacking time reports easier.
  1027. Thanks to Erwin Vrolijk for a patch introducing clock tables for
  1028. quarters.
  1029. *** Babel
  1030. **** Add =msosql= engine to sql code blocks
  1031. SQL code blocks can now be executed using the =myosql= engine
  1032. using the osql command (from MS SQL Server) on Windows systems.
  1033. Thanks to Sébastien Vauban for this contribution.
  1034. **** Python code blocks now accept a =preamble= header argument
  1035. This allows specification of coding declarations and library imports
  1036. which must take place in the beginning of a file of executed python
  1037. code (note this header argument is used during code block evaluation
  1038. unlike the =shebang= header argument which is used during tangling).
  1039. For example
  1040. #+begin_src org
  1041. ,#+begin_src python :preamble # -*- coding: utf-8 -*- :return s
  1042. ,s = "é"
  1043. ,#+end_src
  1044. #+end_src
  1045. Thanks to Vincent Beffara for this idea.
  1046. **** Code block name is shown during evaluation query
  1047. When the user is queried about the evaluation of a named code block
  1048. the name of the code block is now displayed.
  1049. Thanks to Tom Dye for this suggestion.
  1050. **** Clojure code blocks results insertion
  1051. The results of Clojure code blocks have been improved in two ways.
  1052. 1. lazy sequences are now expanded for insertion into the Org-mode
  1053. buffer
  1054. 2. pretty printing of results is now possible with both "code" and
  1055. "data" pretty print formats
  1056. Thanks to Rick Moynihan for suggesting these changes.
  1057. **** Python code blocks now accept a =:return= header argument
  1058. This alleviates the need to explicitly insert return statements into
  1059. the bode of Python code blocks. This change both
  1060. - allows the same python code blocks to be run both in sessions and
  1061. externally
  1062. - removes the floating =return= statements which violated python
  1063. syntax
  1064. Thanks to Darlan Cavalcante for proposing this feature.
  1065. **** =:results wrap= header argument wraps code block results
  1066. The new =:results wrap= wraps code blocks results in a custom
  1067. environment making it possible to offset their contents during
  1068. export. For example
  1069. #+begin_src org
  1070. ,#+begin_src emacs-lisp :results wrap
  1071. , "code block results"
  1072. ,#+end_src
  1073. ,#+results:
  1074. ,#+BEGIN_RESULT
  1075. ,: code block results
  1076. ,#+END_RESULT
  1077. #+end_src
  1078. Thanks to Sébastien Vauban for persistently suggesting this enhancement.
  1079. **** Code block error buffer wiped clean between executions
  1080. Previously the code block error buffer accumulated errors making it
  1081. difficult to distinguish between previous and current errors. This
  1082. buffer is now cleaned before every interactive code block evaluation.
  1083. **** Lists now recognized by code blocks
  1084. It is now possible for code blocks to both read and write list
  1085. contents from and to Org-mode buffers. For example
  1086. #+begin_src org
  1087. ,#+results: a-list
  1088. ,- babel
  1089. ,- and
  1090. ,- org-mode
  1091. ,#+source: a-list
  1092. ,#+begin_src emacs-lisp :var lst=a-list :results list
  1093. , (reverse lst)
  1094. ,#+end_src
  1095. #+end_src
  1096. **** Calc added as a supported code block language
  1097. The Emacs Calc package can be used through =calc= code blocks allowing
  1098. both regular arithmetic operations as well as stack based
  1099. calculation. For example
  1100. #+begin_src org
  1101. ,#+source: calc-stack
  1102. ,#+begin_src calc
  1103. , 8
  1104. , 1
  1105. , '+
  1106. , 9
  1107. , '*
  1108. ,#+end_src
  1109. ,#+results: calc-stack
  1110. ,: 81
  1111. ,#+source: calc-arithmetic
  1112. ,#+begin_src calc :var in=calc-stack
  1113. , in / 9
  1114. ,#+end_src
  1115. ,#+results: calc-arithmetic
  1116. ,: 9
  1117. #+end_src
  1118. **** "org-babel-detangle" propagates change to source code files into code blocks
  1119. `org-babel-detangle' can be used to propagate changes to pure source
  1120. code files tangled from embedded code blocks in Org-mode files back to
  1121. the original code blocks in the Org-mode file. This can be used on
  1122. collaborative projects to keep embedded code blocks up to date with
  1123. edits made in pure source code files.
  1124. * Version 7.02
  1125. ** Incompatible Changes
  1126. *** Code block hashes
  1127. Due to changes in the code resolving code block header arguments
  1128. hashing of code block results should now re-run a code block when
  1129. an argument to the code block has changed. As a result of this
  1130. change *all* code blocks with cached results will be re-run after
  1131. upgrading to the latest version.
  1132. *** Testing update
  1133. Anyone using the org-mode test suite will need to update the jump
  1134. repository for test navigation by executing the following from
  1135. the root of the org-mode repository.
  1136. : git submodule update
  1137. Failure to update this repository will cause loading of
  1138. org-test.el to throw errors.
  1139. ** Details
  1140. *** Org-babel speed commands
  1141. All Org-babel commands (behind the C-c C-v key prefix) are now
  1142. available as speed commands when the point is on the first line of a
  1143. code block. This uses the existing Org-mode speed key mechanisms.
  1144. Thanks to Jambunathan K for implementation this new feature.
  1145. *** Fontify code in code blocks.
  1146. Source code in code blocks can now be fontified. Please customize the
  1147. varable =org-src-fontify-natively=. For very large blocks (several
  1148. hundreds of lines) there can be delays in editing such fontified
  1149. blocks, in which case C-c ' should be used to bring up a dedicated
  1150. edit buffer.
  1151. Thanks to Dan Davison for this.
  1152. *** Language-mode commands are available in the Org-buffer
  1153. The most general machinery for doing this is the macro
  1154. `org-babel-do-in-edit-buffer'. There is also the convenience
  1155. function `org-babel-do-key-sequence-in-edit-buffer' which makes
  1156. use of this macro, and is bound to C-c C-v C-x and C-c C-v x. If
  1157. there is an active region contained within the code block, then
  1158. this is inherited by the edit buffer. Some examples of the sorts
  1159. of usage this permits are
  1160. C-c C-v C-x M-; comment region according to language
  1161. C-c C-v C-x C-M-\ indent region according to language
  1162. Users can make these more convenient, e.g.
  1163. (defun my/org-comment-dwim (&optional arg)
  1164. (interactive "P")
  1165. (or (org-babel-do-key-sequence-in-edit-buffer "\M-;")
  1166. (comment-dwim arg)))
  1167. (define-key org-mode-map "\M-;" 'my/org-comment-dwim)
  1168. A common instance of this general pattern is built in to Org-mode,
  1169. controlled by the variable `org-src-tab-acts-natively': if this
  1170. variable is set, then TAB in a code block has the effect that it would
  1171. have in the language major mode buffer.
  1172. *** Org-babel commands are available in language-mode edit buffer
  1173. Mirroring the language-native commands in Org buffers above, a new
  1174. macro `org-src-do-at-code-block' and convenience function
  1175. `org-src-do-key-sequence-at-code-block' provide the converse. When
  1176. used in a language major-mode edit buffer (i.e. a buffer generated
  1177. by C-c '), `org-src-do-key-sequence-at-code-block' executes a key
  1178. sequence at the code block in the source Org buffer. The command
  1179. bound to the key sequence in the Org-babel key map is executed
  1180. remotely with point temporarily at the start of the code block in
  1181. the Org buffer.
  1182. The command is not bound to a key by default, to avoid conflicts
  1183. with language major mode bindings. To bind it to C-c @ in all
  1184. language major modes, you could use
  1185. (add-hook 'org-src-mode-hook
  1186. (lambda () (define-key org-src-mode-map "\C-c@"
  1187. 'org-src-do-key-sequence-at-code-block)))
  1188. In that case, for example, C-c @ t issued in code edit buffers
  1189. would tangle the current Org code block, C-c @ e would execute
  1190. the block and C-c @ h would display the other available
  1191. Org-babel commands.
  1192. *** Multi-line header arguments to code blocks
  1193. Code block header arguments can now span multiple lines using the
  1194. new =#+header:= or =#+headers:= lines preceding a code block or
  1195. nested in between the name and body of a named code block.
  1196. Examples are given below.
  1197. - multi-line header arguments on an un-named code block
  1198. : #+headers: :var data1=1
  1199. : #+begin_src emacs-lisp :var data2=2
  1200. : (message "data1:%S, data2:%S" data1 data2)
  1201. : #+end_src
  1202. :
  1203. : #+results:
  1204. : : data1:1, data2:2
  1205. - multi-line header arguments on a named code block
  1206. : #+source: named-block
  1207. : #+header: :var data=2
  1208. : #+begin_src emacs-lisp
  1209. : (message "data:%S" data)
  1210. : #+end_src
  1211. :
  1212. : #+results: named-block
  1213. : : data:2
  1214. *** Unified handling of variable expansion for code blocks
  1215. The code used to resolve variable references in code block header
  1216. arguments has now been consolidated. This both simplifies the
  1217. code base (especially the language-specific files), and ensures
  1218. that the arguments to a code block will not be evaluated multiple
  1219. times. This change should not be externally visible to the
  1220. Org-mode user.
  1221. *** Improved Caching
  1222. Code block caches now notice if the value of a variable argument
  1223. to the code block has changed, if this is the case the cache is
  1224. invalidated and the code block is re-run. The following example
  1225. can provide intuition for the new behavior.
  1226. #+begin_src org :exports code
  1227. ,#+srcname: random
  1228. ,#+begin_src R :cache yes
  1229. ,runif(1)
  1230. ,#+end_src
  1231. ,#+results[a2a72cd647ad44515fab62e144796432793d68e1]: random
  1232. ,: 0.4659510825295
  1233. ,#+srcname: caller
  1234. ,#+begin_src emacs-lisp :var x=random :cache yes
  1235. ,x
  1236. ,#+end_src
  1237. ,#+results[bec9c8724e397d5df3b696502df3ed7892fc4f5f]: caller
  1238. ,: 0.254227238707244
  1239. #+end_src
  1240. *** Added :headers header argument for LaTeX code blocks
  1241. This makes it possible to set LaTeX options which must take place in
  1242. the document pre-amble for LaTeX code blocks. This header argument
  1243. accepts either a single string or a list, e.g.
  1244. #+begin_src org
  1245. ,#+begin_src latex :headers \usepackage{lmodern} :file name1.pdf
  1246. , latex body
  1247. ,#+end_src
  1248. ,#+begin_src latex :headers '("\\usepackage{mathpazo}" "\\usepackage{fullpage}") :file name2.pdf
  1249. , latex body
  1250. ,#+end_src
  1251. #+end_src
  1252. *** New function `org-export-string'
  1253. Allows exporting directly from a string to the specified export format.
  1254. *** Code block header argument ":noweb tangle"
  1255. Only expands <<noweb>> syntax references when tangling, not during
  1256. export (weaving).
  1257. *** New function `org-babel-switch-to-session-with-code'
  1258. C-c C-v z (`org-babel-switch-to-session-with-code') is a variant of
  1259. C-c C-v C-z (`org-babel-switch-to-session'): instead of switching to
  1260. the session buffer, it splits the window between (a) the session
  1261. buffer and (b) a language major-mode edit buffer for the code block in
  1262. question. This can be convenient for using language major mode for
  1263. interacting with the session buffer.
  1264. *** Improvements to R sessions
  1265. R now uses standard ESS code evaluation machinery in the :results
  1266. value case, which avoids unnecessary output to the comint
  1267. buffer. In addition, the R command responsible for writing the
  1268. result to file is hidden from the user. Finally, the R code edit
  1269. buffer generated by C-c ' is automatically linked to the ESS
  1270. session if the current code block is using :session.
  1271. *** Temporary file directory
  1272. All babel temporary files are now kept in a single sub-directory in
  1273. the /tmp directory and are cleaned up when Emacs exits.
  1274. *** Function for demarcating blocks `org-babel-demarcate-block'
  1275. Can be called to wrap the region in a block, or to split the block
  1276. around point, bound to (C-c C-v d).
  1277. *** Function for marking code block contents `org-babel-mark-block'
  1278. Bound to C-M-h in the babel key map (i.e. C-c C-v C-M-h by
  1279. default). This can be useful in conjunction with
  1280. `org-babel-do-in-edit-buffer', for example for language-native
  1281. commenting or indenting of the whole block.
  1282. *** Lists of anniversaries are now handeled better
  1283. When several anniversaries are defined in the bbdb anniversaries
  1284. field (separated by semicolon), this is now handled nicely by the
  1285. agenda.
  1286. Thanks to Łukasz Stelmach for a patch to this effect.
  1287. *** Table fields are now aligned better, new <c> cookie.
  1288. In HTML export, table fields are now properly aligned in accord
  1289. with automatic alignment in org, or as set by the =<r>=, =<l>=, and
  1290. =<c>= cookies. The =<c>= cookie is new and has no effect in
  1291. Org, but it does do the right thing in HTML export. A LaTeX export
  1292. implementation will follow, but is currently still missing.
  1293. *** Update freemind converter to include body text
  1294. The freemind exporter now incorporates body text into the mind
  1295. map.
  1296. Thanks to Lennard Borgman for this patch.
  1297. *** Make footnotes work correctly in message-mode
  1298. The footnotes code now searches for =message-signature-separator=
  1299. (which is "-- " by default) in order to place footnotes before the
  1300. signature. Thanks to Tassilo Horn for this patch.
  1301. *** Improve XEmacs compatibility
  1302. Org-mode 7.02 now runs again in 21.4.22 if the new XEmacs base
  1303. package is installed.
  1304. Thanks to Uwe Bauer, Volker Ziegler, Michael Sperber and others
  1305. for a discussion that lead to this nice result.
  1306. *** Make it configurable wether agenda jumping prefers the future
  1307. When jumping to a date from the agenda using the =j= key, you may
  1308. or may not like the property of Org's date reader to prefer the
  1309. future when you enter incomplete dates. This can now be
  1310. configured using the variable =org-agenda-jump-prefer-future'.
  1311. *** Add publishing functions for ASCII, Latin-1 and UTF-8
  1312. There are now publishing functions =org-publish-org-to-ascii=,
  1313. =org-publish-org-to-latin1=, and =org-publish-org-to-utf8=.
  1314. Thanks to Matthias Danzl for showing how to do this.
  1315. *** Indentation and headline insertion after inline tasks
  1316. Indentation in inline tasks, and headline insertion after inline
  1317. tasks now behave as expected.
  1318. *** Encryption in MobileOrg finally works
  1319. As soon as MobilOrg 1.5 hits the Apple's AppStore, you can
  1320. encrypt your org files on public servers. Please see the
  1321. documentation of MobileOrg and Appendix B of the manual for more
  1322. details.
  1323. *** MobileOrg: Do not force to insert IDs
  1324. If you dislike the property of MobileOrg to insert ID properties
  1325. for in all entries being part of an agenda view, you can now turn
  1326. this off using the variable
  1327. =org-mobile-force-id-on-agenda-items=. When this variable is set
  1328. to =nil=, MobileOrg will use outline paths to identify entries.
  1329. Note that this may fail if several entries have identical outline
  1330. paths.
  1331. *** LaTeX minted package for fontified source code export
  1332. Patch by Dan Davison.
  1333. A non-nil value of `org-export-latex-minted' means to export source
  1334. code using the minted package, which will fontify source code
  1335. with color. If you want to use this, you need to make LaTeX use the
  1336. minted package. Add minted to `org-export-latex-packages-alist', for
  1337. example using customize, or with something like
  1338. (require 'org-latex)
  1339. (add-to-list 'org-export-latex-packages-alist '("" "minted"))
  1340. In addition, it is neccessary to install
  1341. pygments (http://pygments.org), and to configure
  1342. `org-latex-to-pdf-process' so that the -shell-escape option is
  1343. passed to pdflatex.
  1344. *** Allow to use texi2dvi or rubber for processing LaTeX to pdf
  1345. Please see the variable =org-export-latex-to-pdf-process= for
  1346. more information.
  1347. Thanks to Olivier Schwander for the rubber part.
  1348. *** New STARTUP keywords to turn on inline images
  1349. If you want to inline images whenever you visit an Org file, use
  1350. : #+STARTUP: inlineimages
  1351. *** Support for user-extensible speed commands.
  1352. There is a new hook =org-speed-command-hook=. Thanks to
  1353. Jambunathan for a patch to this effect.
  1354. *** Add macro to insert property values into exported text
  1355. you can use {{{property{NAME}}}} to insert the value of a
  1356. property upon export.
  1357. Thanks to David Maus for a patch to this effect.
  1358. *** LaTeX package fixes
  1359. We updated the list of default packages loaded by LaTeX exported
  1360. files.
  1361. *** Allow "#" and "%" in tags
  1362. Tags can now also contain the characters =#= and =%=, in addition
  1363. to =@= and letters.
  1364. *** Show command names in manual
  1365. Andreas Röhler is adding command names to keys in the manual.
  1366. This will take a while to complete, but a start has been made.
  1367. *** Make backslash escape "-" in property matches
  1368. When entering a tags/property query, "-" is a logical operator.
  1369. However, "-" is also allowed in property names. So you can now
  1370. write "SOME\-NAME" to work around this issue.
  1371. This was a request by Ilya Shlyakhter.
  1372. *** Document quick insertion of empty structural elements
  1373. Org-mode has a built-in template mechanism for inserting block
  1374. templates. This was undocumented until now.
  1375. Thanks to Jambunathan K for the patch.
  1376. *** Implement MathJax support
  1377. Org-mode now uses MathJax to display math on web pages. We serve
  1378. MathJax from the orgmode.org server, at least for the time being
  1379. (thanks Bastien!). If you are going to use this for pages which
  1380. are viewed often, please install MathJax on your own webserver.
  1381. To return to the old way of creating images and inserting them
  1382. into web pages, you would have to set
  1383. : (setq org-export-with-LaTeX-fragments 'dvipng)
  1384. or on a per-file basis
  1385. : #+OPTIONS: LaTeX:dvipng
  1386. *** Agenda: Allow compact two-column display in agenda dispatcher
  1387. If you have many custom agenda commands, you can have the display
  1388. in the dispatcher use two columns with the following settings
  1389. : (setq org-agenda-menu-show-match nil
  1390. : org-agenda-menu-two-column t)
  1391. This was a request by John Wiegley.
  1392. *** Add org-wikinodes.el as a contributed package
  1393. One frequent request has been to be able to use CamelCase words
  1394. for automatic cross links in a Wiki created by Org. THis is now
  1395. possible with org-wikinodes.el, which is available in the contrib
  1396. directory. We also have some [[http://orgmode.org/worg/org-contrib/org-wikinodes.php][documentation]] for this feature up
  1397. on Worg.
  1398. *** Timer/clock enhancements
  1399. =org-timer-set-timer= displays a countdown timer in the modeline.
  1400. From the agenda, `J' invokes =org-agenda-clock-goto=.
  1401. * Version 7.01
  1402. ** Incompatible Changes
  1403. *** Emacs 21 support has been dropped
  1404. Do not use Org mode 7.xx with Emacs 21, use [[http://orgmode.org/org-6.36c.zip][version 6.36c]] instead.
  1405. *** XEmacs support requires the XEmacs development version
  1406. To use Org mode 7.xx with XEmacs, you need to run the developer
  1407. version of XEmacs. I was about to drop XEmacs support entirely,
  1408. but Michael Sperber stepped in and made changes to XEmacs that
  1409. made it easier to keep the support. Thanks to Michael for this
  1410. last-minute save. I had hoped to be able to remove
  1411. xemacs/noutline.el from release 7 by moving it into XEmacs, but
  1412. this is not yet done.
  1413. *** Org-babel configuration changes
  1414. Babel took the integration into Org-mode as an opportunity to do
  1415. some much needed house cleaning. Most importantly we have
  1416. simplified the enabling of language support, and cleared out
  1417. unnecessary configuration variables -- which is great unless you
  1418. already have a working configuration under the old model.
  1419. The most important changes regard the /location/ and /enabling/
  1420. of Babel (both core functionality and language specific support).
  1421. - Babel :: Babel is now part of the core of Org-mode, so it is
  1422. now loaded along with the rest of Org-mode. That means that
  1423. there is /no configuration/ required to enable the main
  1424. Babel functionality. For current users, this means that
  1425. statements like
  1426. #+begin_src emacs-lisp
  1427. (require 'org-babel)
  1428. #+end_src
  1429. or
  1430. #+begin_src emacs-lisp
  1431. (require 'org-babel-init)
  1432. #+end_src
  1433. that may by lying around in your configuration must now be
  1434. removed.
  1435. - load path :: Babel (including all language specific files --
  1436. aside from those which are located in the =contrib/=
  1437. directory for reasons of licencing) now lives in the base of
  1438. the Org-mode lisp directory, so /no additional directories/
  1439. need to be added to your load path to use babel. For Babel
  1440. users this means that statements adding babel-specific
  1441. directories to your load-path should now be removed from
  1442. your config.
  1443. - language support :: It is no longer necessary to require
  1444. language specific support on a language-by-language basis.
  1445. Specific language support should now be managed through the
  1446. `org-babel-load-languages' variable. This variable can be
  1447. customized using the Emacs customization interface, or
  1448. through the addition of something like the following to your
  1449. configuration (note: any language not mentioned will /not/
  1450. be enabled, aside from =emacs-lisp= which is enabled by
  1451. default)
  1452. #+begin_src emacs-lisp
  1453. (org-babel-do-load-languages
  1454. 'org-babel-load-languages
  1455. '((R . t)
  1456. (ditaa . t)
  1457. (dot . t)
  1458. (emacs-lisp . t)
  1459. (gnuplot . t)
  1460. (haskell . nil)
  1461. (ocaml . nil)
  1462. (python . t)
  1463. (ruby . t)
  1464. (screen . nil)
  1465. (sh . t)
  1466. (sql . nil)
  1467. (sqlite . t)))
  1468. #+end_src
  1469. Despite this change it is still possible to add
  1470. language support through the use of =require=
  1471. statements, however to conform to Emacs file-name
  1472. regulations all Babel language files have changed
  1473. prefix from =org-babel-*= to =ob-*=, so the require
  1474. lines must also change e.g.
  1475. #+begin_src emacs-lisp
  1476. (require 'org-babel-R)
  1477. #+end_src
  1478. should be changed to
  1479. #+begin_src emacs-lisp
  1480. (require 'ob-R)
  1481. #+end_src
  1482. We have eliminated the =org-babel-tangle-w-comments= variable as
  1483. well as the two main internal lists of languages, namely
  1484. - =org-babel-interpreters= and
  1485. - =org-babel-tangle-langs=
  1486. so any config lines which mention those variables, can/should be
  1487. stripped out in their entirety. This includes any calls to the
  1488. =org-babel-add-interpreter= function, whose sole purpose was to
  1489. add languages to the =org-babel-interpreters= variable.
  1490. With those calls stripped out, we may still in some cases want to
  1491. associate a file name extension with certain languages, for
  1492. example we want all of our emacs-lisp files to end in a =.el=, we
  1493. can do this will the =org-babel-tangle-lang-exts= variable. In
  1494. general you shouldn't need to touch this as it already has
  1495. defaults for most common languages, and if a language is not
  1496. present in org-babel-tangle-langs, then babel will just use the
  1497. language name, so for example a file of =c= code will have a =.c=
  1498. extension by default, shell-scripts (identified with =sh=) will
  1499. have a =.sh= extension etc...
  1500. The configuration of /shebang/ lines now lives in header
  1501. arguments. So the shebang for a single file can be set at the
  1502. code block level, e.g.
  1503. #+begin_src org
  1504. ,#+begin_src clojure :shebang #!/usr/bin/env clj
  1505. , (println "with a shebang line, I can be run as a script!")
  1506. ,#+end_src
  1507. #+end_src
  1508. Note that whenever a file is tangled which includes a /shebang/
  1509. line, Babel will make the file executable, so there is good
  1510. reason to only add /shebangs/ at the source-code block level.
  1511. However if you're sure that you want all of your code in some
  1512. language (say shell scripts) to tangle out with shebang lines,
  1513. then you can customize the default header arguments for that
  1514. language, e.g.
  1515. #+begin_src emacs-lisp
  1516. ;; ensure this variable is defined defined
  1517. (unless (boundp 'org-babel-default-header-args:sh)
  1518. (setq org-babel-default-header-args:sh '()))
  1519. ;; add a default shebang header argument
  1520. (add-to-list 'org-babel-default-header-args:sh
  1521. '(:shebang . "#!/bin/bash"))
  1522. #+end_src
  1523. The final important change included in this release is the
  1524. addition of new security measures into Babel. These measures are
  1525. in place to protect users from the accidental or uninformed
  1526. execution of code. Along these lines /every/ execution of a code
  1527. block will now require an explicit confirmation from the user.
  1528. These confirmations can be stifled through customization of the
  1529. `org-confirm-babel-evaluate' variable, e.g.
  1530. #+begin_src emacs-lisp
  1531. ;; I don't want to be prompted on every code block evaluation
  1532. (setq org-confirm-babel-evaluate nil)
  1533. #+end_src
  1534. In addition, it is now possible to remove code block evaluation
  1535. form the =C-c C-c= keybinding. This can be done by setting the
  1536. =org-babel-no-eval-on-ctrl-c-ctrl-c= variable to a non-nil value,
  1537. e.g.
  1538. #+begin_src emacs-lisp
  1539. ;; I don't want to execute code blocks with C-c C-c
  1540. (setq org-babel-no-eval-on-ctrl-c-ctrl-c t)
  1541. #+end_src
  1542. An additional keybinding has been added for code block
  1543. evaluation, namely =C-c C-v e=.
  1544. Whew! that seems like a lot of effort for a /simplification/ of
  1545. configuration.
  1546. *** New keys for TODO sparse trees
  1547. The key =C-c C-v= is now reserved for Org Babel action. TODO
  1548. sparse trees can still be made with =C-c / t= (all not-done
  1549. states) and =C-c / T= (specific states).
  1550. *** Customizable variable changes for DocBook exporter
  1551. To make it more flexible for users to provide DocBook exporter
  1552. related commands, we start to use format-spec to format the
  1553. commands in this release. If you use DocBook exporter and use it
  1554. to export Org files to PDF and/or FO format, the settings of the
  1555. following two customizable variables need to be changed:
  1556. - =org-export-docbook-xslt-proc-command=
  1557. - =org-export-docbook-xsl-fo-proc-command=
  1558. Instead of using =%s= in the format control string for all
  1559. arguments, now we use /three/ different format spec characters:
  1560. - =%i=: input file argument
  1561. - =%o=: output file argument
  1562. - =%s=: XSLT stylesheet argument
  1563. For example, if you set =org-export-docbook-xslt-proc-command= to
  1564. : java com.icl.saxon.StyleSheet -o %s %s /path/to/docbook.xsl
  1565. in the past, now you need to change it to
  1566. : java com.icl.saxon.StyleSheet -o %o %i %s
  1567. and set a new customizable variable called
  1568. =org-export-docbook-xslt-stylesheet= to =/path/to/docbook.xsl=.
  1569. Please check the documentation of these two variables for more
  1570. details and other examples.
  1571. Along with the introduction of variable
  1572. =org-export-docbook-xslt-stylesheet=, we also added a new
  1573. in-buffer setting called =#+XSLT:=. You can use this setting to
  1574. specify the XSLT stylesheet that you want to use on a per-file
  1575. basis. This setting overrides
  1576. =org-export-docbook-xslt-stylesheet=.
  1577. ** Details
  1578. *** Org Babel is now part of the Org core
  1579. See [[#ob-configuration-changes][Org-babel configuration changes]] for instructions on how to
  1580. update your babel configuration.
  1581. The most significant result of this change is that Babel now has
  1582. documentation! It is part of Org-mode's documentation, see
  1583. Chapter 14 [[http://orgmode.org/manual/Working-with-source-code.html#Working-with-source-code][Working With Source Code]]. The Babel keybindings
  1584. are now listed in the refcard, and can be viewed from any
  1585. Org-mode buffer by pressing =C-c C-v h=. In addition this
  1586. integration has included a number of bug fixes, and a significant
  1587. amount of internal code cleanup.
  1588. *** The default capture system for Org mode is now called org-capture
  1589. This replaces the earlier system org-remember. The manual only
  1590. describes org-capture, but for people who prefer to continue to
  1591. use org-remember, we keep a static copy of the former manual
  1592. section [[http://orgmode.org/org-remember.pdf][chapter about remember]].
  1593. The new system has a technically cleaner implementation and more
  1594. possibilities for capturing different types of data. See
  1595. [[http://thread.gmane.org/gmane.emacs.orgmode/26441/focus%3D26441][Carsten's announcement]] for more details.
  1596. To switch over to the new system:
  1597. 1. Run
  1598. : M-x org-capture-import-remember-templates RET
  1599. to get a translated version of your remember templates into the
  1600. new variable =org-capture-templates=. This will "mostly" work,
  1601. but maybe not for all cases. At least it will give you a good
  1602. place to modify your templates. After running this command,
  1603. enter the customize buffer for this variable with
  1604. : M-x customize-variable RET org-capture-templates RET
  1605. and convince yourself that everything is OK. Then save the
  1606. customization.
  1607. 2. Bind the command =org-capture= to a key, similar to what you did
  1608. with org-remember:
  1609. : (define-key global-map "\C-cc" 'org-capture)
  1610. If your fingers prefer =C-c r=, you can also use this key once
  1611. you have decided to move over completely to the new
  1612. implementation. During a test time, there is nothing wrong
  1613. with using both system in parallel.
  1614. *** Implement pretty display of entities, sub-, and superscripts.
  1615. The command =C-c C-x \= toggles the display of Org's special
  1616. entities like =\alpha= as pretty unicode characters. Also, sub
  1617. and superscripts are displayed in a pretty way (raised/lower
  1618. display, in a smaller font). If you want to exclude sub- and
  1619. superscripts, see the variable
  1620. =org-pretty-entities-include-sub-superscripts=.
  1621. Thanks to Eric Schulte and Ulf Stegeman for making this possible.
  1622. *** Help system for finding entities
  1623. The new command =M-x org-entities-help= creates a structured
  1624. buffer that lists all entities available in Org. Thanks to Ulf
  1625. Stegeman for adding the necessary structure to the internal
  1626. entity list.
  1627. *** New module to create Gantt charts
  1628. Christian Egli's /org-taskjuggler.el/ module is now part of Org.
  1629. He also wrote a [[http://orgmode.org/worg/org-tutorials/org-taskjuggler.php][tutorial]] for it.
  1630. *** Refile targets can now be cached
  1631. You can turn on caching of refile targets by setting the variable
  1632. =org-refile-use-cache=. This should speed up refiling if you
  1633. have many eligible targets in many files. If you need to update
  1634. the cache because Org misses a newly created entry or still
  1635. offers a deleted one, press =C-0 C-c C-w=.
  1636. *** Enhanced functionality of the clock resolver
  1637. Here are the new options for the clock resolver:
  1638. : i/q/C-g Ignore this question; the same as keeping all the idle time.
  1639. :
  1640. : k/K Keep X minutes of the idle time (default is all). If this
  1641. : amount is less than the default, you will be clocked out
  1642. : that many minutes after the time that idling began, and then
  1643. : clocked back in at the present time.
  1644. : g/G Indicate that you \"got back\" X minutes ago. This is quite
  1645. : different from 'k': it clocks you out from the beginning of
  1646. : the idle period and clock you back in X minutes ago.
  1647. : s/S Subtract the idle time from the current clock. This is the
  1648. : same as keeping 0 minutes.
  1649. : C Cancel the open timer altogether. It will be as though you
  1650. : never clocked in.
  1651. : j/J Jump to the current clock, to make manual adjustments.
  1652. For all these options, using uppercase makes your final state
  1653. to be CLOCKED OUT. Thanks to John Wiegley for making these
  1654. changes.
  1655. *** A property value of "nil" now means to unset a property
  1656. This can be useful in particular with property inheritance, if
  1657. some upper level has the property, and some grandchild of it
  1658. would like to have the default settings (i.e. not overruled by a
  1659. property) back.
  1660. Thanks to Robert Goldman and Bernt Hansen for suggesting this
  1661. change.
  1662. *** The problem with comment syntax has finally been fixed
  1663. Thanks to Leo who has been on a year-long quest to get this fixed
  1664. and finally found the right way to do it.
  1665. *** Make it possible to protect hidden subtrees from being killed by =C-k=
  1666. This was a request by Scott Otterson.
  1667. See the new variable =org-ctrl-k-protect-subtree=.
  1668. *** New module org-mac-link-grabber.el
  1669. This module allows to grab links to all kinds of applications on
  1670. a mac. It is available in the contrib directory.
  1671. Thanks to Anthony Lander for this contribution.
  1672. *** LaTeX export: Implement table* environment for wide tables
  1673. Thanks to Chris Gray for a patch to this effect.
  1674. *** When cloning entries, remove or renew ID property
  1675. Thanks to David Maus for this change.
  1676. * Version 6.36
  1677. ** Details
  1678. *** Inline display of linked images
  1679. Images can now be displayed inline. The key C-c C-x C-v does toggle the
  1680. display of such images. Note that only image links that have no
  1681. description part will be inlined.
  1682. *** Implement offsets for ordered lists
  1683. If you want to start an ordered plain list with a number different from 1,
  1684. you can now do it like this:
  1685. : 1. [@start:12] will star a lit a number 12
  1686. *** Extensions to storing and opening links to Wanderlust messages
  1687. - Remove filter conditions for messages in a filter folder
  1688. If customization variable `org-wl-link-remove-filter' is non-nil, filter
  1689. conditions are stripped of the folder name.
  1690. - Create web links for messages in a Shimbun folder
  1691. If customization variable `org-wl-shimbun-prefer-web-links' is non-nil,
  1692. calling `org-store-link' on a Shimbun message creates a web link to the
  1693. messages source, indicated in the Xref: header field.
  1694. - Create web links for messages in a nntp folder
  1695. If customization variable `org-wl-nntp-prefer-web-links' is non-nil,
  1696. calling `org-store-link' on a nntp message creates a web link either to
  1697. gmane.org if the group can be read trough gmane or to googlegroups
  1698. otherwise. In both cases the message-id is used as reference.
  1699. - Open links in namazu search folder
  1700. If `org-wl-open' is called with one prefix, WL opens a namazu search
  1701. folder for message's message-id using `org-wl-namazu-default-index' as
  1702. search index. If this variable is nil or `org-wl-open' is called with
  1703. two prefixes Org asks for the search index to use.
  1704. Thanks to David Maus for these changes.
  1705. *** Org-babel: code block body expansion for table and preview
  1706. In org-babel, code is "expanded" prior to evaluation. I.e. the code that is
  1707. actually evaluated comprises the code block contents, augmented with the
  1708. extra code which assigns the referenced data to variables. It is now
  1709. possible to preview expanded contents, and also to expand code during
  1710. during tangling. This expansion takes into account all header arguments,
  1711. and variables.
  1712. A new key-binding C-c M-b p bound to `org-babel-expand-src-block' can be
  1713. used from inside of a source code block to preview its expanded contents
  1714. (which can be very useful for debugging). tangling
  1715. The expanded body can now be tangled, this includes variable values which
  1716. may be the results of other source-code blocks, or stored in headline
  1717. properties or tables. One possible use for this is to allow those using
  1718. org-babel for their emacs initialization to store values (e.g. usernames,
  1719. passwords, etc…) in headline properties or in tables.
  1720. Org-babel now supports three new header arguments, and new default behavior
  1721. for handling horizontal lines in tables (hlines), column names, and
  1722. rownames across all languages.
  1723. * Version 6.35
  1724. ** Incompatible Changes
  1725. *** Changes to the intended use of =org-export-latex-classes=
  1726. So far this variable has been used to specify the complete header of the
  1727. LaTeX document, including all the =\usepackage= calls necessary for the
  1728. document. This setup makes it difficult to maintain the list of packages
  1729. that Org itself would like to call, for example for the special symbol
  1730. support it needs. Each time I have to add a package, I have to ask people
  1731. to revise the configuration of this variable. In this release, I have
  1732. tried to fix this.
  1733. First of all, you can *opt out of this change* in the following way: You
  1734. can say: /I want to have full control over headers, and I will take
  1735. responsibility to include the packages Org needs/. If that is what you
  1736. want, add this to your configuration and skip the rest of this section
  1737. (except maybe for the description of the =[EXTRA]= place holder):
  1738. #+begin_src emacs-lisp
  1739. (setq org-export-latex-default-packages-alist nil
  1740. org-export-latex-packages-alist nil)
  1741. #+end_src
  1742. /Continue to read here if you want to go along with the modified
  1743. setup./
  1744. There are now two variables that should be used to list the LaTeX
  1745. packages that need to be included in all classes. The header
  1746. definition in =org-export-latex-classes= should then not contain
  1747. the corresponding =\usepackage= calls (see below).
  1748. The two new variables are:
  1749. 1. =org-export-latex-default-packages-alist= :: This is the
  1750. variable where Org-mode itself puts the packages it needs.
  1751. Normally you should not change this variable. The only
  1752. reason to change it anyway is when one of these packages
  1753. causes a conflict with another package you want to use.
  1754. Then you can remove that packages and hope that you are not
  1755. using Org-mode functionality that needs it.
  1756. 2. =org-export-latex-packages-alist= :: This is the variable
  1757. where you can put the packages that you'd like to use across
  1758. all classes. For example, I am putting =amsmath= and =tikz=
  1759. here, because I always want to have them.
  1760. The sequence how these customizations will show up in the LaTeX
  1761. document are:
  1762. 1. Header from =org-export-latex-classes=
  1763. 2. =org-export-latex-default-packages-alist=
  1764. 3. =org-export-latex-packages-alist=
  1765. 4. Buffer-specific things set with =#+LaTeX_HEADER:=
  1766. If you want more control about which segment is placed where, or
  1767. if you want, for a specific class, have full control over the
  1768. header and exclude some of the automatic building blocks, you can
  1769. put the following macro-like place holders into the header:
  1770. #+begin_example
  1771. [DEFAULT-PACKAGES] \usepackage statements for default packages
  1772. [NO-DEFAULT-PACKAGES] do not include any of the default packages
  1773. [PACKAGES] \usepackage statements for packages
  1774. [NO-PACKAGES] do not include the packages
  1775. [EXTRA] the stuff from #+LaTeX_HEADER
  1776. [NO-EXTRA] do not include #+LaTeX_HEADER stuff
  1777. #+end_example
  1778. If you have currently customized =org-export-latex-classes=, you
  1779. should revise that customization and remove any package calls that
  1780. are covered by =org-export-latex-default-packages-alist=. This
  1781. applies to the following packages:
  1782. - inputenc
  1783. - fontenc
  1784. - fixltx2e
  1785. - graphicx
  1786. - longtable
  1787. - float
  1788. - wrapfig
  1789. - soul
  1790. - t1enc
  1791. - textcomp
  1792. - marvosym
  1793. - wasysym
  1794. - latexsym
  1795. - amssymb
  1796. - hyperref
  1797. If one of these packages creates a conflict with another package
  1798. you are using, you can remove it from
  1799. =org-export-latex-default-packages-alist=. But then you risk
  1800. that some of the advertised export features of Org will not work
  1801. properly.
  1802. You can also consider moving packages that you use in all classes
  1803. to =org-export-latex-packages-alist=. If necessary, put the
  1804. place holders so that the packages get loaded in the right
  1805. sequence. As said above, for backward compatibility, if you omit
  1806. the place holders, all the variables will dump their content at
  1807. the end of the header.
  1808. Damn, this has become more complex than I wanted it to be. I
  1809. hope that in practice, this will not be complicated at all.
  1810. *** The constant =org-html-entities= is obsolete
  1811. Its content is now part of the new constant =org-entities=, which
  1812. is defined in the file org-entities.el. =org-html-entities= was
  1813. an internal variable, but it is possible that some users did
  1814. write code using it - this is why I am mentioning it here.
  1815. ** Editing Convenience and Appearance
  1816. *** New faces for title, date, author and email address lines.
  1817. The keywords in these lines are now dimmed out, and the title is
  1818. displayed in a larger font, and a special font is also used for
  1819. author, date, and email information. This is implemented by the
  1820. following new faces:
  1821. org-document-title
  1822. org-document-info
  1823. org-document-info-keyword
  1824. In addition, the variable =org-hidden-keywords= can be used to
  1825. make the corresponding keywords disappear.
  1826. Thanks to Dan Davison for this feature.
  1827. *** Simpler way to specify faces for tags and todo keywords
  1828. The variables =org-todo-keyword-faces=, =org-tag-faces=, and
  1829. =org-priority-faces= now accept simple color names as
  1830. specifications. The colors will be used as either foreground or
  1831. background color for the corresponding keyword. See also the
  1832. variable =org-faces-easy-properties=, which governs which face
  1833. property is affected by this setting.
  1834. This is really a great simplification for setting keyword faces.
  1835. The change is based on an idea and patch by Ryan Thompson.
  1836. *** <N> in tables now means fixed width, not maximum width
  1837. Requested by Michael Brand.
  1838. *** Better level cycling function
  1839. =TAB= in an empty headline cycles the level of that headline
  1840. through likely states. Ryan Thompson implemented an improved
  1841. version of this function, which does not depend upon when exactly
  1842. this command is used. Thanks to Ryan for this improvement.
  1843. *** Adaptive filling
  1844. For paragraph text, =org-adaptive-fill-function= did not handle the
  1845. base case of regular text which needed to be filled. This is now
  1846. fixed. Among other things, it allows email-style ">" comments
  1847. to be filled correctly.
  1848. Thanks to Dan Hackney for this patch.
  1849. *** `org-reveal' (=C-c C-r=) also decrypts encrypted entries (org-crypt.el)
  1850. Thanks to Richard Riley for triggering this change.
  1851. *** Better automatic letter selection for TODO keywords
  1852. When all first letters of keywords have been used, Org now assigns
  1853. more meaningful characters based on the keywords.
  1854. Thanks to Mikael Fornius for this patch.
  1855. ** Export
  1856. *** Much better handling of entities for LaTeX export
  1857. Special entities like =\therefore= and =\alpha= now know if
  1858. they need to be in LaTeX math mode and are formatted accordingly.
  1859. Thanks to Ulf Stegemann for the tedious work to make this
  1860. possible.
  1861. *** LaTeX export: Set coding system automatically
  1862. The coding system of the LaTeX class will now be set to the value
  1863. corresponding to the buffer's file coding system. This happens
  1864. if your setup sets up the file to have a line
  1865. =\usepackage[AUTO]{inputenc}= (the default setup does this).
  1866. *** New exporters to Latin-1 and UTF-8
  1867. While Ulf Stegemann was going through the entities list to
  1868. improve the LaTeX export, he had the great idea to provide
  1869. representations for many of the entities in Latin-1, and for all
  1870. of them in UTF-8. This means that we can now export files rich
  1871. in special symbols to Latin-1 and to UTF-8 files. These new
  1872. exporters can be reached with the commands =C-c C-e n= and =C-c
  1873. C-e u=, respectively.
  1874. When there is no representation for a given symbol in the
  1875. targeted coding system, you can choose to keep the TeX-macro-like
  1876. representation, or to get an "explanatory" representation. For
  1877. example, =\simeq= could be represented as "[approx. equal to]".
  1878. Please use the variable =org-entities-ascii-explanatory= to state
  1879. your preference.
  1880. *** Full label/reference support in HTML, Docbook, and LaTeX backends
  1881. =#+LABEL= definitions for tables and figures are now fully
  1882. implemented in the LaTeX, Docbook, and HTML interfaces.
  1883. =\ref{xxx}= is expanded to a valid link in all backends.
  1884. *** BEAMER export: Title of the outline frame is now customizable
  1885. The new option =org-outline-frame-title= allows to set the
  1886. title for outline frames in Beamer presentations.
  1887. Patch by Łukasz Stelmach.
  1888. *** BEAMER export: fragile frames are better recognized
  1889. A =lstlisting= environment now also triggers the fragile option in
  1890. a beamer frame, just like =verbatim= environments do.
  1891. Thanks to Eric Schulte for this patch.
  1892. *** BEAMER export: Protect <...> macro arguments
  1893. Macros for the BEAMER package can have arguments in angular
  1894. brackets. These are now protected just like normal arguments.
  1895. Requested by Bill Jackson.
  1896. *** HTML export: Add class to outline containers using property
  1897. The =HTML_CONTAINER_CLASS= property can now be used to add a
  1898. class name to the outline container of a node in HTML export.
  1899. *** New option =org-export-email-info= to turn off export of the email address
  1900. Default is actually off now.
  1901. *** Throw an error when creating an image from a LaTeX snippet fails
  1902. This behavior can be configured with the new option variable
  1903. =org-format-latex-signal-error=.
  1904. ** Index generation
  1905. Org-mode can now produce a 2-level subject index spanning an
  1906. entire publishing project. Write index entries in your files as
  1907. #+begin_src org
  1908. ,* What is org-mode?
  1909. #+index: Org-mode
  1910. #+index: Definitions!Org-mode
  1911. #+end_src
  1912. where the first line will produce an index entry /Org-mode/,
  1913. while the second line will create /Definitions/ with a sub-item
  1914. /Org-mode/. Three-level entries are not supported.
  1915. To produce the index, set
  1916. #+begin_src emacs-lisp
  1917. :makeindex t
  1918. #+end_src
  1919. in the project definition in =org-publish-project-alist=. You
  1920. may have to force re-export of all files to get the index by
  1921. using a =C-u= prefix to the publishing command:
  1922. #+begin_example
  1923. C-u M-x org-publish-all
  1924. #+end_example
  1925. Whenever an Org file is published in this project, a new file
  1926. with the extension "orgx" will be written. It contains the index
  1927. entries and corresponding jump target names. When all project
  1928. files are published, Org will produce a new file "theindex.inc"
  1929. containing the index as a to-level tree. This file can be
  1930. included into any project file using
  1931. #+begin_src org
  1932. ,#+include: "theindex.inc"
  1933. #+end_src
  1934. Org-mode will also create a file "theindex.org" with this include
  1935. statement, and you can build a more complex structure (for
  1936. example style definitions, top and home links, etc) around this
  1937. statement. When this file already exists, it will not be
  1938. overwritten by Org.
  1939. Thanks to Stefan Vollmar for initiating and driving this feature.
  1940. *** TODO Still need to do the LaTeX portion
  1941. ** MobileOrg
  1942. *** Encrypting stage files for MobileOrg
  1943. Since the use of (often pubic) servers is needed for MobileOrg,
  1944. it is now possible to encrypt the files to be staged for
  1945. MobileOrg. Version 1.2 of MobileOrg will be needed for this
  1946. feature, and Richard Moreland will show instructions on his
  1947. website once that is available. Basically, on the Org-side this
  1948. will require the following settings:
  1949. #+begin_src emacs-lisp
  1950. (setq org-mobile-use-encryption t
  1951. org-mobile-encryption-password "My_MobileOrg_Password")
  1952. #+end_src
  1953. So the password will be visible in your local setup, but since
  1954. the encryption is only for the public server, this seems
  1955. acceptable.
  1956. ** Agenda
  1957. *** Specify entry types as an option
  1958. Custom Agenda commands can now limit the sets of entry types
  1959. considered for this command by binding =org-agenda-entry-types=
  1960. temporarily in the options section of the command. This can lead
  1961. to significant speedups, because instead of laboriously finding
  1962. entries and then rejecting them, a whole search cycle is skipped.
  1963. For more information see the new section in
  1964. [[http://orgmode.org/worg/org-tutorials/org-custom-agenda-commands.php#sec-5][Matt Lundin's agenda custom command tutorial]].
  1965. Thanks to Matt Lundin for this feature.
  1966. *** Speed up multiple calls to org-diary by only doing buffer prep once
  1967. Also a patch by Matt Lundin.
  1968. *** Show and hide deadlines in the agenda
  1969. You can now hide all deadline entries in the agenda by pressing
  1970. =!=.
  1971. Thanks to John Wiegley for this feature.
  1972. *** Agenda: Allow to suppress deadline warnings for entries also scheduled
  1973. The the docstring of the variable
  1974. =org-agenda-skip-deadline-prewarning-if-scheduled=.
  1975. *** Expand file names in org-agenda-files (external file case)
  1976. If you are using a file to manage the list of agenda files, the
  1977. names in this file can now contain environment variables and "~"
  1978. to write them more compactly and portable.
  1979. Thanks to Mikael Fornius for a patch to this effect.
  1980. *** Agenda: Allow TODO conditions in the skip functions
  1981. The agenda skip function has now special support for skipping
  1982. based on the TODO state. Here are just two examples, see the
  1983. manual for more information.
  1984. #+begin_src emacs-lisp
  1985. (org-agenda-skip-entry-if 'todo '(\"TODO\" \"WAITING\"))
  1986. (org-agenda-skip-entry-if 'nottodo 'done)
  1987. #+end_src
  1988. Thanks to Łukasz Stelmach for this patch.
  1989. *** Extracting the time-of-day when adding diary entries
  1990. The time of day can now be extracted from new diary entries made
  1991. from the agenda with (for example) =i d=. When
  1992. =org-agenda-insert-diary-extract-time= is set, this is done, and
  1993. the time is moved into the time stamp.
  1994. Thanks to Stephen Eglen for this feature.
  1995. *** The customization group org-font-lock has been renamed
  1996. The new name is `org-appearance'.
  1997. Thanks to Dan Davison for a patch to this effect.
  1998. *** The TODO list: Allow skipping scheduled or deadlined entries
  1999. Skipping TODO entries in the global TODO list based on whether
  2000. they are scheduled or have a deadline can now be controlled in
  2001. more detail. Please see the docstrings of
  2002. =org-agenda-todo-ignore-scheduled= and
  2003. =org-agenda-todo-ignore-deadline=.
  2004. Thanks to Łukasz Stelmach for patches to this effect.
  2005. ** Hyperlinks
  2006. *** Make =org-store-link= point to directory in a dired buffer
  2007. When, in a dired buffer, the cursor is not in a line listing a
  2008. file, `org-store-link' will store a link to the directory.
  2009. Patch by Stephen Eglen.
  2010. *** Allow regexps in =org-file-apps= to capture link parameters
  2011. The way extension regexps in =org-file-apps= are handled has
  2012. changed. Instead of matching against the file name, the regexps
  2013. are now matched against the whole link, and you can use grouping
  2014. to extract link parameters which you can then use in a command
  2015. string to be executed.
  2016. For example, to allow linking to PDF files using the syntax
  2017. =file:/doc.pdf::<page number>=, you can add the following entry to
  2018. org-file-apps:
  2019. #+begin_example
  2020. Extension: \.pdf::\([0-9]+\)\'
  2021. Command: evince "%s" -p %1
  2022. #+end_example
  2023. Thanks to Jan Böcker for a patch to this effect.
  2024. ** Clocking
  2025. *** Show clock overruns in mode line
  2026. When clocking an item with a planned effort, overrunning the
  2027. planned time is now made visible in the mode line, for example
  2028. using the new face =org-mode-line-clock-overrun=, or by adding an
  2029. extra string given by =org-task-overrun-text=.
  2030. Thanks to Richard Riley for a patch to this effect.
  2031. ** Tables
  2032. *** Repair the broken support for table.el tables again.
  2033. Tables created with the table.el package now finally work again
  2034. in Org-mode. While you cannot edit the table directly in the
  2035. buffer, you can use =C-c '= to edit it nicely in a temporary
  2036. buffer.
  2037. Export of these tables to HTML seem to work without problems.
  2038. Export to LaTeX is imperfect. If fails if the table contains
  2039. special characters that will be replaced by the exporter before
  2040. formatting the table. The replacement operation changes the
  2041. length of some lines, breaking the alignment of the table fields.
  2042. Unfortunately this is not easy to fix. It is also not an option
  2043. to not do these replacements. The table.el LaTeX exporter will
  2044. for example not escape "&" in table fields, causing the exported
  2045. tables to be broken.
  2046. ** Misc
  2047. *** New logging support for refiling
  2048. Whenever you refile an item, a time stamp and even a note can be
  2049. added to this entry. For details, see the new option
  2050. =org-log-refile=.
  2051. Thanks to Charles Cave for this idea.
  2052. *** New helper functions in org-table.el
  2053. There are new functions to access and write to a specific table
  2054. field. This is for hackers, and maybe for the org-babel people.
  2055. #+begin_example
  2056. org-table-get
  2057. org-table-put
  2058. org-table-current-line
  2059. org-table-goto-line
  2060. #+end_example
  2061. *** Tables: Field coordinates for formulas, and improved docs
  2062. Calc and Emacs-Lisp formulas for tables can access the current
  2063. field coordinates with =@#= and =$#= for row and column,
  2064. respectively. These can be useful in some formulas. For
  2065. example, to sequentially number the fields in a column, use
  2066. ~=@#~ as column equation.
  2067. One application is to copy a column from a different table. See
  2068. the manual for details.
  2069. Thanks to Michael Brand for this feature.
  2070. *** Archiving: Allow to reverse order in target node
  2071. The new option =org-archive-reversed-order= allows to have
  2072. archived entries inserted in a last-on-top fashion in the target
  2073. node.
  2074. Requested by Tom.
  2075. *** Better documentation on calc accuracy in tables
  2076. Thanks to Michael Brand for this fix.
  2077. *** Clock reports can now include the running, incomplete clock
  2078. If you have a clock running, and the entry being clocked falls
  2079. into the scope when creating a clock table, the time so far spent
  2080. can be added to the total. This behavior depends on the setting
  2081. of =org-clock-report-include-clocking-task=. The default is
  2082. =nil=.
  2083. Thanks to Bernt Hansen for this useful addition.
  2084. *** American-style dates are now understood by =org-read-date=
  2085. So when you are prompted for a date, you can now answer like this
  2086. #+begin_example
  2087. 2/5/3 --> 2003-02-05
  2088. 2/5 --> <CURRENT-YEAR>-02-05
  2089. #+end_example
  2090. *** org-timer.el now allows just one timer
  2091. There is now only a single free timer supported by org-timer.el.
  2092. Thanks to Bastien for cleaning this up, after a bug report in
  2093. this area by Frédéric Couchet.
  2094. *** Remember: Allow to file as sibling of current clock
  2095. =C-3 C-c C-c= will file the remember entry as a sibling of the
  2096. last filed entry.
  2097. Patch by Łukasz Stelmach.
  2098. *** Org-reveal: Double prefix arg shows the entire subtree of the parent
  2099. This can help to get out of an inconsistent state produced for
  2100. example by viewing from the agenda.
  2101. This was a request by Matt Lundin.
  2102. *** Add org-secretary.el by Juan Reyero to the contrib directory
  2103. org-secretary.el is a possible setup for group work using
  2104. Org-mode.
  2105. Thanks to Juan Reyero for this contribution.
  2106. ** Babel
  2107. Eric and Dan have compiled the following list of changes in and
  2108. around org-babel.
  2109. - Added support for Matlab and Octave.
  2110. - Added support for C and C++ code blocks.
  2111. - Added support for the Oz programming language.
  2112. Thanks to Torsten Anders for this contribution
  2113. - Can now force literal interpretation of table cell contents
  2114. with extra "$" in table formula.
  2115. Thanks to Maurizio Vitale for this suggestion.
  2116. - Variable references which look like lisp forms are now
  2117. evaluated.
  2118. - No longer adding extension during tangling when filename is
  2119. provided.
  2120. Thanks to Martin G. Skjæveland and Nicolas Girard for prompting this.
  2121. - Added `org-babel-execute-hook' which runs after code block
  2122. execution.
  2123. - Working directories and remote execution
  2124. This introduces a new header argument :dir. For the duration of
  2125. source block execution, default-directory is set to the value
  2126. of this header argument. Consequences include:
  2127. - external interpreter processes run in that directory
  2128. - new session processes run in that directory (but existing
  2129. ones are unaffected)
  2130. - relative paths for file output are relative to that directory
  2131. The name of a directory on a remote machine may be specified
  2132. with tramp syntax (/user@host:path), in which case the
  2133. interpreter executable will be sought in tramp-remote-path, and
  2134. if found will execute on the remote machine in the specified
  2135. remote directory.
  2136. - Tramp syntax can be used to tangle to remote files.
  2137. Thanks to Maurizio Vitale and Rémi Vanicat.
  2138. - org-R removed from contrib.
  2139. - gnuplot can now return it's string output -- when session is
  2140. set to "none".
  2141. - Now including source code block arguments w/source name on
  2142. export.
  2143. - Now able to reference file links as results.
  2144. - Allow pdf/png generation directly from latex source blocks
  2145. with :file header argument.
  2146. * Version 6.34
  2147. ** Incompatible changes
  2148. *** Tags in org-agenda-auto-exclude-function must be lower case.
  2149. When defining an =org-agenda-auto-exclude-function=, you need to
  2150. be aware that tag that is being passed into the function is
  2151. always lower case - even if it was defined in upper case
  2152. originally.
  2153. ** Details
  2154. *** Support for creating BEAMER presentations from Org-mode documents
  2155. Org-mode documents or subtrees can now be converted directly in
  2156. to BEAMER presentation. Turning a tree into a simple
  2157. presentations is straight forward, and there is also quite some
  2158. support to make richer presentations as well. See the [[http://orgmode.org/manual/Beamer-class-export.html#Beamer-class-export][BEAMER
  2159. section]] in the manual for more details.
  2160. Thanks to everyone who has contributed to the discussion about
  2161. BEAMER support and how it should work. This was a great example
  2162. for how this community can achieve a much better result than any
  2163. individual could.
  2164. *** Hyperlinks
  2165. **** Add Paul Sexton's org-ctags.el
  2166. Targets like =<<my target>>= can now be found by Emacs' etag
  2167. functionality, and Org-mode links can be used to to link to
  2168. etags, also in non-Org-mode files. For details, see the file
  2169. /org-ctags.el/.
  2170. This feature uses a new hook =org-open-link-functions= which will
  2171. call function to do something special with text links.
  2172. Thanks to Paul Sexton for this contribution.
  2173. **** Add Jan Böcker's org-docview.el
  2174. This new module allows links to various file types using docview,
  2175. where Emacs displays images of document pages. Docview link
  2176. types can point to a specific page in a document, for example to
  2177. page 131 of the Org-mode manual:
  2178. : [[docview:~/.elisp/org/doc/org.pdf::131][Org-Mode Manual]]
  2179. Thanks to Jan Böcker for this contribution.
  2180. **** New link types that force special ways of opening the file
  2181. - =file+sys:/path/to/file= will use the system to open the file,
  2182. like double-clicking would.
  2183. - file+emacs:/path/to/file will force opening the linked file
  2184. with Emacs.
  2185. This was a request by John Wiegley.
  2186. **** Open all links in a node
  2187. When using =C-c C-o= on a headline to get a list of links in the
  2188. entry, pressing =RET= will open *all* links. This allows
  2189. something like projects to be defined, with a number of files
  2190. that have to be opened by different applications.
  2191. This was a request by John Wiegley.
  2192. *** Agenda Views
  2193. **** Improve the logic of the search view.
  2194. The logic of search views is changed a bit. See the docstring of
  2195. the function =or-search-view=.
  2196. These changes resulted from a discussion with Matt Lundin.
  2197. **** New face for entries from the Emacs diary
  2198. Entries that enter the Agenda through the Emacs diary now get the
  2199. face =org-agenda-diary=.
  2200. This was a request by Thierry Volpiatto.
  2201. **** New function `org-diary-class' to schedule classes with skipped weeks.
  2202. This was a request by Daniel Martins.
  2203. **** Empty matcher means prompt in agenda custom commands
  2204. When an agenda custom command has an empty string as MATCH
  2205. element, so far this would lead to a meaningless search using an
  2206. empty matcher. Now an empty (or white) string will be
  2207. interpreted just like a nil matcher, i.e. the user will be
  2208. prompted for the match.
  2209. **** Agenda: Selectively remove some tags from agenda display
  2210. If you use tags very extensively, you might want to exclude some
  2211. from being displayed in the agenda, in order to keep the display
  2212. compact. See the new option =org-agenda-hide-tags-regexp= for
  2213. details.
  2214. This was largely a patch by Martin Pohlack.
  2215. *** Export
  2216. **** Direct export of only the current subtree
  2217. Pressing =1= after =C-c C-e= and before the key that selects the
  2218. export backend, only the current subtree will be exported,
  2219. exactly as it you had selected it first with =C-c @=. So for
  2220. example, =C-c C-e 1 b= will export the current subtree to HTML
  2221. and open the result in the browser.
  2222. **** Direct export of enclosing node
  2223. Pressing =SPC= after =C-c C-e= and before the key that selects
  2224. the export backend, the enclosing subree that is set up for
  2225. subtree export will be exported, exactly as it you had selected
  2226. it first with =C-c @=. So for example, =C-c C-e SPC d= will find
  2227. the enclosing node with a LaTeX_CLASS property or an
  2228. EXPORT_FILE_NAME property and export that.
  2229. **** Caching export images
  2230. Images that are created for example using LaTeX or ditaa for
  2231. inclusion into exported files are now cached. This works by
  2232. adding a hash to the image name, that reflects the source code
  2233. and all relevant settings. So as long as the hash does not
  2234. change, the image does not have to be made again. His can lead
  2235. to a substantial reduction in export/publishing times.
  2236. Thanks to Eric Schulte for a patch to this effect.
  2237. **** Preserving line breaks for export no longer works
  2238. ASCII export always preserves them - no other export format
  2239. does. We had attempted to use =\obeylines= for this in LaTeX,
  2240. but that does create too many problems.
  2241. **** New symbols =\EUR= and =\checkmark=
  2242. =\EUR= symbols from Marvosym package, and =\checkmark= are now
  2243. supported symbols in Org-mode, i.e. they will be exported
  2244. properly to the various backends.
  2245. **** Allow LaTeX_CLASS_OPTIONS to set options, also from a property
  2246. You can set the options to the =\documentclass= command on a
  2247. per-file basis, using
  2248. : #+LaTeX_CLASS_OPTIONS: [11pt]
  2249. or on a per-tree basis using the corresponding property. The
  2250. defined string will replace the default options entirely.
  2251. **** The encoding of LaTeX files is now handled property
  2252. Org now makes sure that the encoding used by the file created
  2253. through the export mechanism is reflected correctly in the
  2254. : \usepackage[CODINGSYSTEM]{inputenc}
  2255. command. So as long as the =org-export-latex-classes= definition
  2256. contains an =\usepackage[utf8]{inputenc}= statement, that
  2257. statement will be modified so that the correct option is used.
  2258. If you wan to use special encodings, for example =utf8x= instead
  2259. of =utf8=, see the variable =org-export-latex-inputenc-alist=.
  2260. This was a request by Francesco Pizzolante.
  2261. *** Property API enhancements
  2262. **** Make a new special property BLOCKED, indicating if entry is blocked
  2263. A new special property BLOCKED returns "t" when the entry is
  2264. blocked from switching the TODO state to a DONE state.
  2265. This was a request by John Wiegley.
  2266. **** New hooks for external support for allowed property values
  2267. It is now possible to hook into Org in order to provide the
  2268. allowed values for any property with a lisp function. See the
  2269. docstring of the variable =org-property-allowed-value-functions=
  2270. **** Allow unrestricted completion on properties
  2271. When listing the allowed values for a property, for example with
  2272. a =:name_ALL:= property, completion on these values enforces that
  2273. one of the values will be chosen. Now, if you add ":ETC" to the
  2274. list of allowed values, it will be interpreted as a switch, and
  2275. the completion will be non-restrictive, so you can also choose to
  2276. type a new value.
  2277. *** Changes to Org-babel
  2278. - The documentation for Org-babel has been drastically improved
  2279. and is available on Worg at
  2280. http://orgmode.org/worg/org-contrib/babel/
  2281. - Source-code block names are now exported to HTML and LaTeX
  2282. - Org-babel functions are now bound to keys behind a common key
  2283. prefix (see
  2284. http://orgmode.org/worg/org-contrib/babel/reference.php#sec-5)
  2285. - Results are now foldable with TAB
  2286. - Header argument values can now be lisp forms
  2287. - Readable aliases for #+srcname: and #+resname:
  2288. - Sha1 hash based caching of results in buffer
  2289. - Can now index into variable values
  2290. - org-babel-clojure now supports multiple named sessions
  2291. *** Miscellaneous changes
  2292. **** Make =C-c r C= customize remember templates
  2293. =C-c r C= is now a shortcut for
  2294. : M-x customize-variable RET org-remember-templates RET
  2295. This was a proposal by Adam Spiers.
  2296. **** Use John Gruber's regular expression for URL's
  2297. We now use a better regexp to spot plain links in text. This
  2298. regexp is adopted from [[http://daringfireball.net/2009/11/liberal_regex_for_matching_urls][John Gruber's blogpost]].
  2299. Thanks to William Henney for the pointer.
  2300. **** Implement tag completion of all tags in all agenda files
  2301. The new option =org-complete-tags-always-offer-all-agenda-tags=
  2302. makes Org complete all tags from all agenda files if non-nil.
  2303. Usually, setting it locally to t in org-remember buffers is the
  2304. most useful application of this new feature.
  2305. Thanks to Tassilo Horn for a patch to this effect.