ORG-NEWS 56 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481
  1. #+LINK: doc http://orgmode.org/worg/doc.html#%s
  2. ORG NEWS -- history of user-visible changes. -*- org -*-
  3. Copyright (C) 2012-2013 Free Software Foundation, Inc.
  4. See the end of the file for license conditions.
  5. Please send Org bug reports to emacs-orgmode@gnu.org.
  6. * Version 7.9.3
  7. ** Agenda speed up
  8. ** New option [[doc::org-agenda-use-tag-inheritance][org-agenda-use-tag-inheritance]]
  9. [[doc::org-use-tag-inheritance][org-use-tag-inheritance]] controls whether tags are inherited when
  10. org-tags-view is called (either in =tags=, =tags-tree= or =tags-todo=
  11. agenda views.)
  12. When generating other agenda types such as =agenda=, =todo= and
  13. =todo-tree=, tags inheritance is not used when selecting the entries
  14. to display. Still, you might want to have all tag information correct
  15. in the agenda buffer, e.g. for tag filtering. In that case, add the
  16. agenda type to this variable.
  17. Note that setting this variable to nil considerably speeds up the
  18. agenda generation.
  19. ** New default value nil for [[doc::org-agenda-dim-blocked-tasks][org-agenda-dim-blocked-tasks]]
  20. Using `nil' as the default value speeds up the agenda generation. You
  21. can hit `#' (or `C-u #') in agenda buffers to temporarily dim (or turn
  22. invisible) blocked tasks.
  23. ** New speedy keys for [[doc::org-speed-commands-default][org-speed-commands-default]]
  24. You can now use `:' (instead of `;') for setting tags---this is
  25. consistent with using the `:' key in agenda view.
  26. You can now use `=' for [[doc::org-columns][org-columns]].
  27. ** =org-float= is now obsolete, use =diary-float= instead
  28. ** No GPL manual anymore
  29. There used to be a GPL version of the Org manual, but this is not the
  30. case anymore, the Free Software Foundation does not permit this.
  31. The GNU FDL license is now included in the manual directly.
  32. ** Enhanced compatibility with Emacs 22 and XEmacs
  33. Thanks to Achim for his work on enhancing Org's compatibility with
  34. various Emacsen. Things may not be perfect, but Org should work okay
  35. in most environments.
  36. * Version 7.9.2
  37. ** New ELPA repository for Org packages
  38. You can now add the Org ELPA repository like this:
  39. #+BEGIN_SRC emacs-lisp
  40. (add-to-list 'package-archives '("org" . "http://orgmode.org/elpa/") t)
  41. #+END_SRC
  42. It contains both the =org-*.tar= package (the core Org distribution, also
  43. available through http://elpa.gnu.org) and the =org-plus*.tar= package (the
  44. extended Org distribution, with non-GNU packages from the =contrib/=
  45. directory.)
  46. See http://orgmode.org/elpa/
  47. ** Overview of the new keybindings
  48. | Keybinding | Speedy | Command |
  49. |-----------------+--------+-----------------------------|
  50. | =C-c C-x C-z= | | [[doc::org-clock-resolve][org-clock-resolve]] |
  51. | =C-c C-x C-q= | | [[doc::org-clock-cancel][org-clock-cancel]] |
  52. | =C-c C-x C-x= | | [[doc::org-clock-in-last][org-clock-in-last]] |
  53. | =M-h= | | [[doc::org-mark-element][org-mark-element]] |
  54. | =*= | | [[doc::org-agenda-bulk-mark-all][org-agenda-bulk-mark-all]] |
  55. | =C-c C-M-l= | | [[doc::org-insert-all-links][org-insert-all-links]] |
  56. | =C-c C-x C-M-v= | | [[doc::org-redisplay-inline-images][org-redisplay-inline-images]] |
  57. | =C-c C-x E= | =E= | [[doc::org-inc-effort][org-inc-effort]] |
  58. | | =#= | [[doc::org-toggle-comment][org-toggle-comment]] |
  59. | | =:= | [[doc::org-columns][org-columns]] |
  60. | | =W= | Set =APPT_WARNTIME= |
  61. | =k= | | [[doc::org-agenda-capture][org-agenda-capture]] |
  62. | C-c , | , | [[doc::org-priority][org-priority]] |
  63. ** New package and Babel langage
  64. *** =org-eshell.el= by Konrad Hinsen is now in Org
  65. =org-eshell.el= allows you to create links from [[http://www.gnu.org/software/emacs/manual/html_node/eshell/index.html][Eshell]].
  66. *** Support for execution of Scala code blocks (see ob-scala.el)
  67. *** Support for execution of IO code blocks (see ob-io.el)
  68. ** Incompatible changes
  69. - If your code relies on =org-write-agenda=, please use
  70. [[doc::org-agenda-write][org-agenda-write]] from now on.
  71. - If your code relies on =org-make-link=, please use =concat=
  72. instead.
  73. - =org-link-to-org-use-id= has been renamed to
  74. =org-id-link-to-org-use-id= and its default value is nil. The
  75. previous default was =create-if-interactive-and-no-custom-id=.
  76. ** New features and user-visible changes
  77. *** Org Element
  78. =org-element.el= is a toolbox for parsing and analyzing "elements"
  79. in an Org-mode buffer. This has been written by Nicolas Goaziou
  80. and has been tested for quite some time. It is now part of Org's
  81. core and many core functions rely on this package.
  82. Two functions might be particularly handy for users:
  83. =org-element-at-point= and =org-element-context=.
  84. See the docstrings for more details.
  85. Below is a list of editing and navigating commands that now rely
  86. on =org-element.el=.
  87. **** [[doc::org-fill-paragraph][org-fill-paragraph]] has been completely rewritten
  88. The filling mechanisms now rely on org-element, trying to do the
  89. right thing on each element in various contexts. E.g. filling in
  90. a list item will preserve indentation; filling in message-mode
  91. will fall back on the relevant filling functions; etc.
  92. **** [[doc::org-metaup][org-metaup]] and [[doc::org-metadown][org-metadown]] will drag the element backward/forward
  93. If you want to get the old behavior (i.e. moving a line up and
  94. down), you can first select the line as an active region, then
  95. =org-metaup= or =org-metadown= to move the region backward or
  96. forward. This also works with regions bigger than just one line.
  97. **** [[doc::org-up-element][org-up-element]] and [[doc::org-down-element][org-down-element]] (respectively =C-c C-^= and =C-c C-_=)
  98. This will move the point up/down in the hierarchy of elements.
  99. **** [[doc::org-backward-element][org-backward-element]] and [[doc::org-forward-element][org-forward-element]] (respectively =M-{= and =M-}=)
  100. This will move the point backward/forward in the hierarchy of
  101. elements.
  102. **** [[doc::org-narrow-to-element][org-narrow-to-element]] will narrow to the element at point
  103. **** [[doc::org-mark-element][org-mark-element]] will mark the element at point
  104. This command is bound to =M-h= and will mark the element at
  105. point. If the point is at a paragraph, it will mark the
  106. paragraph. If the point is at a list item, it will mark the list
  107. item. Etc.
  108. Note that if point is at the beginning of a list, it will mark
  109. the whole list.
  110. To mark a subtree, you can either use =M-h= on the headline
  111. (since there is no ambiguity about the element you're at) or
  112. [[doc::org-mark-subtree][org-mark-subtree]] (=C-c @=) anywhere in the subtree.
  113. Invoking [[doc::org-mark-element][org-mark-element]] repeatedly will try to mark the next
  114. element on top of the previous one(s). E.g. hitting =M-h= twice
  115. on a headline will mark the current subtree and the next one on
  116. the same level.
  117. *** Org Agenda
  118. **** New option [[doc::org-agenda-sticky][org-agenda-sticky]]
  119. There is a new option =org-agenda-sticky= which enables "sticky"
  120. agendas. Sticky agendas remain opened in the background so that
  121. you don't need to regenerate them each time you hit the
  122. corresponding keystroke. This is a big time saver.
  123. When [[doc::org-agenda-sticky][org-agenda-sticky]] is =non-nil=, the agenda buffer will be
  124. named using the agenda key and its description. In sticky
  125. agendas, the =q= key will just bury the agenda buffers and
  126. further agenda commands will show existing buffer instead of
  127. generating new ones.
  128. If [[doc::org-agenda-sticky][org-agenda-sticky]] is set to =nil=, =q= will kill the single
  129. agenda buffer.
  130. **** New option [[doc::org-agenda-custom-commands-contexts][org-agenda-custom-commands-contexts]]
  131. Setting this option allows you to define specific context where
  132. agenda commands should be available from. For example, when set
  133. to this value
  134. #+BEGIN_SRC emacs-lisp
  135. (setq org-agenda-custom-commands-contexts
  136. '(("p" (in-file . "\\.txt"))))
  137. #+END_SRC
  138. then the =p= agenda command will only be available from buffers
  139. visiting *.txt files. See the docstring and the manual for more
  140. details on how to use this.
  141. **** Changes in bulk actions
  142. The set of commands starting with =k ...= as been deleted and the
  143. features have been merged into the "bulk action" feature.
  144. After you marked some entries in the agenda, if you call =B s=,
  145. the agenda entries will be rescheduled using the date at point if
  146. on a date header. If you are on an entry with a timestamp, you
  147. will be prompted for a date to reschedule your marked entries to,
  148. using the timestamp at point as the default prompt.
  149. You can now use =k= to capture the marked entry and use the date
  150. at point as an overriding date for the capture template.
  151. To bind this behavior to =M-x org-capture RET= (or its
  152. keybinding), set the new option [[doc::org-capture-use-agenda-date][org-capture-use-agenda-date]] to
  153. =t=.
  154. **** =N= and =P= in the agenda will move to the next/previous item
  155. **** New command [[doc::org-agenda-bulk-mark-all][org-agenda-bulk-mark-all]] to mark all items
  156. This new command is bound to =*= in agenda mode.
  157. There is also a new option [[doc::org-agenda-bulk-mark-char][org-agenda-bulk-mark-char]] to set the
  158. character to use as a mark for bulk actions.
  159. **** New option [[doc::org-agenda-persistent-marks][org-agenda-persistent-marks]]
  160. When set to =non-nil=, marks will remain visible after a bulk
  161. action. You can temporarily toggle this by pressing =p= when
  162. invoking [[doc::org-agenda-bulk-action][org-agenda-bulk-action]]. Marks are deleted if your
  163. rebuild the agenda buffer or move to another date/span (e.g. with
  164. =f= or =w=).
  165. **** New option [[doc::org-agenda-skip-timestamp-if-deadline-is-shown][org-agenda-skip-timestamp-if-deadline-is-shown]]
  166. =Non-nil= means skip timestamp line if same entry shows because
  167. of deadline.
  168. In the agenda of today, an entry can show up multiple times
  169. because it has both a plain timestamp and has a nearby deadline.
  170. When this variable is t, then only the deadline is shown and the
  171. fact that the entry has a timestamp for or including today is not
  172. shown. When this variable is =nil=, the entry will be shown
  173. several times.
  174. **** New =todo-unblocked= and =nottodo-unblocked= skip conditions
  175. See the [[http://orgmode.org/w/?p%3Dorg-mode.git%3Ba%3Dcommit%3Bh%3Df426da][git commit]] for more explanations.
  176. **** Allow category filtering in the agenda
  177. You can now filter the agenda by category. Pressing "<" will
  178. filter by the category of the item on the current line, and
  179. pressing "<" again will remove the filter. You can combine tag
  180. filters and category filters.
  181. You can use =org-agenda-category-filter= in your custom agenda
  182. views and =org-agenda-category-filter-preset= in your main
  183. configuration.
  184. See also the new command [[doc::org-agenda-filter-by-top-category][org-agenda-filter-by-top-category]]:
  185. hitting =^= will filter by "Top" category: only show entries that
  186. are of the same category than the Top category of the entry at
  187. point.
  188. *** Org Links
  189. **** Inserting links
  190. When inserting links through [[doc::org-insert-link][org-insert-link]], the description is
  191. now displayed first, followed by the literal link, as the
  192. description is often more useful when you look for the link you
  193. want to insert.
  194. Completion now complete both literal links and description. If
  195. you complete a description, the literal link and its description
  196. will be inserted directly, whereas when you complete the literal
  197. link, you will be prompted for a description (as with Org 7.8.)
  198. In the completion buffer, links to the current buffer are now
  199. highlighted.
  200. **** New templates =%h= and =%(sexp)= for abbreviated links
  201. On top of =%s= template, which is replaced by the link tag in
  202. abbreviated links, you can now use =%h= (which does the same than =%s=
  203. but does not hexify the tag) and =%(sexp)= (which can run a function
  204. that takes the tag as its own argument.)
  205. **** New link type =help=
  206. You can now create links from =help= buffers.
  207. For example, if you request help for the command [[doc::org-agenda][org-agenda]] with
  208. =C-h f org-agenda RET=, creating a link from this buffer will let
  209. you go back to the same buffer.
  210. **** New command [[doc::org-insert-all-links][org-insert-all-links]]
  211. This will insert all links as list items. With a universal
  212. prefix argument, links will not be deleted from the variable
  213. =org-stored-links=.
  214. This new command is bound to =C-c C-M-l=.
  215. **** New option [[doc::org-url-hexify-p][org-url-hexify-p]]
  216. When set to =nil=, the =URL= part of a link will not be hexified.
  217. **** Org can now open multiple shell links
  218. **** New option [[doc::org-doi-server-url][org-doi-server-url]] to specify an alternate DOI server
  219. **** RET now follows time stamps links
  220. *** Org Editing
  221. **** [[doc::org-todo][org-todo]] and =org-archive-*= can now loop in the active region
  222. When [[doc::org-loop-over-headlines-in-active-region][org-loop-over-headlines-in-active-region]] is =non-nil=, using
  223. [[doc::org-todo][org-todo]] or =org-archive-*= commands in the active region will
  224. loop over headlines. This is handy if you want to set the TODO
  225. keyword for several items, or archive them quickly.
  226. **** You can now set tags for headlines in a region
  227. If [[doc::org-loop-over-headlines-in-active-region][org-loop-over-headlines-in-active-region]] is =non-nil=, then
  228. selecting the region and hitting =C-c C-q= will set the tags for
  229. all headlines in the region.
  230. **** New command [[doc::org-insert-drawer][org-insert-drawer]] to insert a drawer interactively
  231. **** Comments start with "^[ \t]*# " anywhere on a line
  232. Note that the space after the hashtag is mandatory. Comments
  233. with "^#+" are not supported anymore.
  234. **** New speed key =#= to toggle the COMMENT cookie on a headline
  235. **** =indent-region-function= is now set to [[doc::org-indent-region][org-indent-region]]
  236. =C-M-\= should now produce useful results.
  237. You can unindent the buffer with [[doc::org-unindent-buffer][org-unindent-buffer]].
  238. **** New option [[doc::org-allow-promoting-top-level-subtree][org-allow-promoting-top-level-subtree]]
  239. When =non-nil=, =S-M-<left>= will promote level-1 subtrees
  240. containing other subtrees. The level-1 headline will be
  241. commented out. You can revert to the previous state with =M-x
  242. undo RET=.
  243. *** Org Clock
  244. **** New keybinding =C-c C-x C-z= for [[doc::org-clock-resolve][org-clock-resolve]]
  245. **** New keybinding =C-c C-x C-q= for [[doc::org-clock-cancel][org-clock-cancel]]
  246. **** New command [[doc::org-clock-in-last][org-clock-in-last]] to clock in the last clocked item
  247. This command is bound to =C-c C-x C-x= and will clock in the last
  248. clocked entry, if any.
  249. **** =C-u M-x= [[doc::org-clock-out][org-clock-out]] =RET= now prompts for a state to switch to
  250. **** =S-M-<up/down>= on a clock timestamps adjusts the previous/next clock
  251. **** New option [[doc::org-clock-continuously][org-clock-continuously]]
  252. When set to =nil=, clocking in a task will first try to find the
  253. last clocked out task and restart from when that task was clocked
  254. out.
  255. You can temporarily activate continuous clocking with =C-u C-u
  256. C-u M-x= [[doc::org-clock-in][org-clock-in]] =RET= (three universal prefix arguments)
  257. and =C-u C-u M-x= [[org-clock-in-last][org-clock-in-last]] =RET= (two universal prefix
  258. arguments).
  259. **** New option [[doc::org-clock-frame-title-format][org-clock-frame-title-format]]
  260. This option sets the value of =frame-title-format= when clocking
  261. in.
  262. **** New options for controlling the clockreport display
  263. [[doc::org-clock-file-time-cell-format][org-clock-file-time-cell-format]]: Format string for the file time
  264. cells in clockreport.
  265. [[doc::org-clock-total-time-cell-format][org-clock-total-time-cell-format]]: Format string for the total
  266. time cells in clockreport.
  267. **** New options for controlling the clock/timer display
  268. [[doc::org-clock-clocked-in-display][org-clock-clocked-in-display]]: control whether the current clock
  269. is displayed in the mode line and/or frame title.
  270. [[doc::org-timer-display][org-timer-display]]: control whether the current timer is displayed
  271. in the mode line and/or frame title.
  272. This allows the clock and timer to be displayed in the frame
  273. title instead of, or as well as, the mode line. This is useful
  274. for people with limited space in the mode line but with ample
  275. space in the frame title.
  276. *** Org Appearance
  277. **** New option [[doc::org-custom-properties][org-custom-properties]]
  278. The visibility of properties listed in this options can be turn
  279. on/off with [[doc::org-toggle-custom-properties-visibility][org-toggle-custom-properties-visibility]]. This might
  280. be useful for properties used by third-part tools or that you
  281. don't want to see temporarily.
  282. **** New command [[doc::org-redisplay-inline-images][org-redisplay-inline-images]]
  283. This will redisplay all images. It is bound to =C-c C-x C-M-v=.
  284. **** New entities in =org-entities.el=
  285. There are these new entities:
  286. : ("tilde" "\\~{}" nil "&tilde;" "~" "~" "~")
  287. : ("slash" "/" nil "/" "/" "/" "/")
  288. : ("plus" "+" nil "+" "+" "+" "+")
  289. : ("under" "\\_" nil "_" "_" "_" "_")
  290. : ("equal" "=" nil "=" "=" "=" "=")
  291. : ("asciicirc" "\\textasciicircum{}" nil "^" "^" "^" "^")
  292. **** New face =org-list-dt= for definition terms
  293. **** New face =org-date-selected= for the selected calendar day
  294. **** New face value for =org-document-title=
  295. The face is back to a normal height.
  296. *** Org Columns
  297. **** New speed command =:= to activate the column view
  298. **** New special property =CLOCKSUM_T= to display today's clocked time
  299. You can use =CLOCKSUM_T= the same way you use =CLOCKSUM=. It
  300. will display the time spent on tasks for today only.
  301. **** Use the =:COLUMNS:= property in columnview dynamic blocks
  302. If the =:COLUMNS:= is set in a subtree, the columnview dynamic
  303. block will use its value as the column format.
  304. **** Consider inline tasks when computing a sum
  305. *** Org Dates and Time Stamps
  306. **** Enhanced [[doc::org-sparse-tree][org-sparse-tree]]
  307. =C-c /= can now check for time ranges.
  308. When checking for dates with =C-c /= it is useful to change the
  309. type of dates that you are interested in. You can now do this
  310. interactively with =c= after =C-c /= and/or by setting
  311. [[doc::org-sparse-tree-default-date-type][org-sparse-tree-default-date-type]] to the default value you want.
  312. **** Support for hourly repeat cookies
  313. You can now use
  314. : SCHEDULED: <2012-08-20 lun. 08:00 +1h>
  315. if you want to add an hourly repeater to an entry.
  316. **** =C-u C-u C-c .= inserts a time-stamp with no prompt
  317. **** When (setq [[doc::org-read-date-prefer-future][org-read-date-prefer-future]] 'time), accept days in the prompt
  318. "8am Wed" and "Wed 8am" are now acceptable values when entering a
  319. date from the prompt. If [[doc::org-read-date-prefer-future][org-read-date-prefer-future]] is set to
  320. =time=, this will produce the expected prompt indication.
  321. **** New option [[doc::org-datetree-add-timestamp][org-datetree-add-timestamp]]
  322. When set to =non-nil=, datetree entries will also have a
  323. timestamp. This is useful if you want to see these entries in a
  324. sparse tree with =C-c /=.
  325. *** Org Capture
  326. **** New command [[doc::org-capture-string][org-capture-string]]
  327. M-x [[doc::org-capture-string][org-capture-string]] RET will prompt for a string and a capture
  328. template. The string will be used as an annotation for the
  329. template. This is useful when capturing in batch mode as it lets
  330. you define the content of the template without being in Emacs.
  331. **** New option [[doc::org-capture-templates-contexts][org-capture-templates-contexts]]
  332. Setting this option allows you to define specific context where
  333. capture templates should be available from. For example, when
  334. set to this value
  335. #+BEGIN_SRC emacs-lisp
  336. (setq org-capture-templates-contexts
  337. '(("c" (in-mode . "message-mode"))))
  338. #+END_SRC
  339. then the =c= capture template will only be available from
  340. =message-mode= buffers. See the docstring and the manual for
  341. more details on how to use this.
  342. **** New =%l= template to insert the literal link
  343. **** New option [[doc::org-capture-bookmark][org-capture-bookmark]]
  344. Org used to automatically add a bookmark with capture a note.
  345. You can now turn this on by setting [[doc::org-capture-bookmark][org-capture-bookmark]] to
  346. =nil=.
  347. **** Expand =%<num>= escape sequences into text entered for <num>'th =%^{PROMPT}= escape
  348. See the manual for more explanations.
  349. **** More control over empty lines
  350. You can use =:empty-lines-before= and =:empty-lines-after= to
  351. control the insertion of empty lines. Check the manual for more
  352. explanations.
  353. **** New hook [[doc::org-capture-prepare-finalize-hook][org-capture-prepare-finalize-hook]]
  354. This new hook runs before the finalization process starts.
  355. *** Org Export
  356. **** New functions =orgtbl-to-table.el= and =orgtbl-to-unicode=
  357. =orgtbl-to-table.el= convert the table to a =table.el= table, and
  358. =orgtbl-to-unicode= will use =ascii-art-to-unicode.el= (when
  359. available) to print beautiful tables.
  360. **** [[doc::org-table-export][org-table-export]] now a bit clever about the target format
  361. When you specify a file name like =table.csv=, [[doc::org-table-export][org-table-export]]
  362. will now suggest =orgtbl-to-csv= the default method for exporting
  363. the table.
  364. **** New option [[doc::org-export-date-timestamp-format][org-export-date-timestamp-format]]
  365. The option allows to set a time string format for Org timestamps
  366. in the #+DATE option.
  367. **** LaTeX: New options for exporting table rules :tstart, :hline and :tend
  368. See [[doc::org-export-latex-tables-hline][org-export-latex-tables-hline]] and [[doc::org-export-latex-tables-tend][org-export-latex-tables-tend]].
  369. **** LaTeX: You can now set =:hfmt= from =#+ATTR_LaTeX=
  370. **** Beamer: Add support and keybinding for the =exampleblock= environment
  371. Add support for these languages in [[doc::org-export-language-setup][org-export-language-setup]].
  372. More languages are always welcome.
  373. **** Beamer: New option [[doc::org-beamer-inherited-properties][org-beamer-inherited-properties]]
  374. This option allows Beamer export to inherit some properties.
  375. Thanks to Carsten for implementing this.
  376. **** ODT: Add support for ODT export in org-bbdb.el
  377. **** ODT: Add support for indented tables (see [[http://orgmode.org/w/?p%3Dorg-mode.git%3Ba%3Dcommit%3Bh%3De9fd33][this commit]] for details)
  378. **** ODT: Improve the conversion from ODT to other formats
  379. **** ASCII: Swap the level-1/level-2 characters to underline the headlines
  380. **** Support for Chinese, simplified Chinese, Russian, Ukrainian and Japanese
  381. **** HTML: New option [[doc::org-export-html-date-format-string][org-export-html-date-format-string]]
  382. Format string to format the date and time in HTML export. Thanks
  383. to Sébastien Vauban for this patch.
  384. *** Org Babel
  385. **** New =:results drawer= parameter
  386. =:results drawer= replaces =:results wrap=, which is deprecated but still
  387. supported.
  388. **** =:results org= now put results in a =#+BEGIN_SRC org= block
  389. =:results org= used to put results in a =#+BEGIN_ORG= block but it now puts
  390. results in a =#+BEGIN_SRC org= block, with comma-escaped lines.
  391. =#+BEGIN_ORG= blocks are obsolete.
  392. **** Exporting =#+BEGIN_SRC org= blocks exports the code
  393. It used to exports the results of the code.
  394. *** Miscellaneous
  395. **** New menu entry for [[doc::org-refile][org-refile]]
  396. **** Allow capturing to encrypted entries
  397. If you capture to an encrypted entry, it will be decrypted before
  398. inserting the template then re-encrypted after finalizing the capture.
  399. **** Inactive timestamps are now handled in tables
  400. Calc can do computation on active time-stamps like <2012-09-29 sat.>.
  401. Inactive time-stamps in a table's cell are now internally deactivated so
  402. that Calc formulas can operate on them.
  403. **** [[doc::org-table-number-regexp][org-table-number-regexp]] can now accept comma as decimal mark
  404. **** Org allows a new property =APPT_WARNTIME=
  405. You can set it with the =W= speedy key or set it manually. When
  406. set, exporting to iCalendar and [[doc::org-agenda-to-appt][org-agenda-to-appt]] will use the
  407. value of this property as the number of minutes for the warning
  408. alarm.
  409. **** New command [[doc::org-inc-effort][org-inc-effort]]
  410. This will increment the effort value.
  411. It is bound to =C-c C-x E= and to =E= as a speedy command.
  412. **** Attach: Add support for creating symbolic links
  413. =org-attach-method= now supports a new method =lns=, allowing to
  414. attach symbolic links.
  415. **** Archive: you can now archive to a datetree
  416. **** New option [[doc::org-inlinetask-show-first-star][org-inlinetask-show-first-star]]
  417. =Non-nil= means display the first star of an inline task as
  418. additional marker. When =nil=, the first star is not shown.
  419. **** New option [[doc::org-latex-preview-ltxpng-directory][org-latex-preview-ltxpng-directory]]
  420. This lets you define the path for the =ltxpng/= directory.
  421. **** You can now use imagemagick instead of dvipng to preview LaTeX fragments
  422. **** You can now turn off [[doc::orgstruct++-mode][orgstruct++-mode]] safely
  423. **** =C-u C-c C-c= on list items to add check boxes
  424. =C-u C-c C-c= will add an empty check box on a list item.
  425. When hit from the top of the list, it will add check boxes for
  426. all top level list items.
  427. **** =org-list-ending-method= and =org-list-end-regexp= are now obsolete
  428. Fall back on using =org-list-end-re= only, which see.
  429. **** org-feed.el now expands =%(sexp)= templates
  430. **** New option [[doc::org-protocol-data-separator][org-protocol-data-separator]]
  431. **** New option [[doc::org-ditaa-jar-option][org-ditaa-jar-option]] to specify the ditaa jar file
  432. **** New possible value for [[doc::org-loop-over-headlines-in-active-region][org-loop-over-headlines-in-active-region]]
  433. When [[doc::org-loop-over-headlines-in-active-region][org-loop-over-headlines-in-active-region]] is set to
  434. =start-level=, the command will loop over the active region but
  435. will only act upon entries that are of the same level than the
  436. first headline in the region.
  437. **** New option [[doc::org-habit-show-all-today][org-habit-show-all-today]]
  438. When set to =t=, show all (even unscheduled) habits on today's
  439. agenda.
  440. ** Important bug fixes
  441. *** M-TAB on options keywords perform completion correctly again
  442. If you hit =M-TAB= on keywords like =#+TITLE=, Org will try to
  443. perform completion with meaningful values.
  444. *** Add licenses to javascript embedded and external code snippets
  445. Embedded javascript code produced when exporting an Org file to
  446. HTML is now licensed under GPLv3 (or later), and the copyright is
  447. owned by the Free Software Foundation, Inc.
  448. The javascript code for embedding MathJax in the browser mentions
  449. the MathJax copyright and the Apache 2.0 license.
  450. The javascript code for embedding =org-injo.js= in the browser
  451. mentions the copyright of Sebastian Rose and the GPLv3 (or later)
  452. license.
  453. =org-export-html-scripts= is now a variable, so that you can adapt
  454. the code and the license to your needs.
  455. See http://www.gnu.org/philosophy/javascript-trap.html for
  456. explanations on why these changes were necessary.
  457. * Version 7.8.11
  458. ** Incompatible changes
  459. *** Emacs 21 support has been dropped
  460. Do not use Org mode 7.xx with Emacs 21, use [[http://orgmode.org/org-6.36c.zip][version 6.36c]] instead.
  461. *** XEmacs support requires the XEmacs development version
  462. To use Org mode 7.xx with XEmacs, you need to run the developer
  463. version of XEmacs. We were about to drop XEmacs support entirely,
  464. but Michael Sperber stepped in and made changes to XEmacs that
  465. made it easier to keep the support. Thanks to Michael for this
  466. last-minute save.
  467. *** New keys for TODO sparse trees
  468. The key =C-c C-v= is now reserved for Org Babel action. TODO
  469. sparse trees can still be made with =C-c / t= (all not-done
  470. states) and =C-c / T= (specific states).
  471. *** The Agenda =org-agenda-ndays= is now obsolete
  472. The variable =org-agenda-ndays= is obsolete - please use
  473. =org-agenda-span= instead.
  474. Thanks to Julien Danjou for this.
  475. *** Changes to the intended use of =org-export-latex-classes=
  476. So far this variable has been used to specify the complete header
  477. of the LaTeX document, including all the =\usepackage= calls
  478. necessary for the document. This setup makes it difficult to
  479. maintain the list of packages that Org itself would like to call,
  480. for example for the special symbol support it needs.
  481. First of all, you can *opt out of this change* in the following
  482. way: You can say: /I want to have full control over headers, and I
  483. will take responsibility to include the packages Org needs/. If
  484. that is what you want, add this to your configuration and skip the
  485. rest of this section (except maybe for the description of the
  486. =[EXTRA]= place holder):
  487. #+begin_src emacs-lisp
  488. (setq org-export-latex-default-packages-alist nil
  489. org-export-latex-packages-alist nil)
  490. #+end_src
  491. /Continue to read here if you want to go along with the modified
  492. setup./
  493. There are now two variables that should be used to list the LaTeX
  494. packages that need to be included in all classes. The header
  495. definition in =org-export-latex-classes= should then not contain
  496. the corresponding =\usepackage= calls (see below).
  497. The two new variables are:
  498. 1. =org-export-latex-default-packages-alist= :: This is the
  499. variable where Org-mode itself puts the packages it needs.
  500. Normally you should not change this variable. The only
  501. reason to change it anyway is when one of these packages
  502. causes a conflict with another package you want to use. Then
  503. you can remove that packages and hope that you are not using
  504. Org-mode functionality that needs it.
  505. 2. =org-export-latex-packages-alist= :: This is the variable where
  506. you can put the packages that you'd like to use across all
  507. classes.
  508. The sequence how these customizations will show up in the LaTeX
  509. document are:
  510. 1. Header from =org-export-latex-classes=
  511. 2. =org-export-latex-default-packages-alist=
  512. 3. =org-export-latex-packages-alist=
  513. 4. Buffer-specific things set with =#+LaTeX_HEADER:=
  514. If you want more control about which segment is placed where, or
  515. if you want, for a specific class, have full control over the
  516. header and exclude some of the automatic building blocks, you can
  517. put the following macro-like place holders into the header:
  518. #+begin_example
  519. [DEFAULT-PACKAGES] \usepackage statements for default packages
  520. [NO-DEFAULT-PACKAGES] do not include any of the default packages
  521. [PACKAGES] \usepackage statements for packages
  522. [NO-PACKAGES] do not include the packages
  523. [EXTRA] the stuff from #+LaTeX_HEADER
  524. [NO-EXTRA] do not include #+LaTeX_HEADER stuff
  525. #+end_example
  526. If you have currently customized =org-export-latex-classes=, you
  527. should revise that customization and remove any package calls that
  528. are covered by =org-export-latex-default-packages-alist=. This
  529. applies to the following packages:
  530. - inputenc
  531. - fontenc
  532. - fixltx2e
  533. - graphicx
  534. - longtable
  535. - float
  536. - wrapfig
  537. - soul
  538. - t1enc
  539. - textcomp
  540. - marvosym
  541. - wasysym
  542. - latexsym
  543. - amssymb
  544. - hyperref
  545. If one of these packages creates a conflict with another package
  546. you are using, you can remove it from
  547. =org-export-latex-default-packages-alist=. But then you risk that
  548. some of the advertised export features of Org will not work
  549. properly.
  550. You can also consider moving packages that you use in all classes
  551. to =org-export-latex-packages-alist=. If necessary, put the place
  552. holders so that the packages get loaded in the right sequence. As
  553. said above, for backward compatibility, if you omit the place
  554. holders, all the variables will dump their content at the end of
  555. the header.
  556. *** The constant =org-html-entities= is obsolete
  557. Its content is now part of the new constant =org-entities=, which
  558. is defined in the file org-entities.el. =org-html-entities= was
  559. an internal variable, but it is possible that some users did write
  560. code using it.
  561. *** =org-bbdb-anniversary-format-alist= has changed
  562. Please check the docstring and update your settings accordingly.
  563. *** Deleted =org-mode-p=
  564. This function has been deleted: please update your code.
  565. ** Important new features
  566. *** New Org to ODT exporter
  567. Jambunathan's Org to ODT exporter is now part of Org.
  568. To use it, it `C-c C-e o' in an Org file. See the documentation
  569. for more information on how to customize it.
  570. *** org-capture.el is now the default capture system
  571. This replaces the earlier system org-remember. The manual only
  572. describes org-capture, but for people who prefer to continue to
  573. use org-remember, we keep a static copy of the former manual
  574. section [[http://orgmode.org/org-remember.pdf][chapter about remember]].
  575. The new system has a technically cleaner implementation and more
  576. possibilities for capturing different types of data. See
  577. [[http://thread.gmane.org/gmane.emacs.orgmode/26441/focus%3D26441][Carsten's announcement]] for more details.
  578. To switch over to the new system:
  579. 1. Run
  580. : M-x org-capture-import-remember-templates RET
  581. to get a translated version of your remember templates into the
  582. new variable =org-capture-templates=. This will "mostly" work,
  583. but maybe not for all cases. At least it will give you a good
  584. place to modify your templates. After running this command,
  585. enter the customize buffer for this variable with
  586. : M-x customize-variable RET org-capture-templates RET
  587. and convince yourself that everything is OK. Then save the
  588. customization.
  589. 2. Bind the command =org-capture= to a key, similar to what you did
  590. with org-remember:
  591. : (define-key global-map "\C-cc" 'org-capture)
  592. If your fingers prefer =C-c r=, you can also use this key once
  593. you have decided to move over completely to the new
  594. implementation. During a test time, there is nothing wrong
  595. with using both system in parallel.
  596. ** New libraries
  597. *** New Org libraries
  598. **** org-eshell.el (Konrad Hinsen)
  599. Implement links to eshell buffers.
  600. **** org-special-blocks (Carsten Dominik)
  601. This package generalizes the #+begin_foo and #+end_foo tokens.
  602. To use, put the following in your init file:
  603. #+BEGIN_EXAMPLE
  604. (require 'org-special-blocks)
  605. #+END_EXAMPLE
  606. The tokens #+begin_center, #+begin_verse, etc. existed
  607. previously. This package generalizes them (at least for the
  608. LaTeX and html exporters). When a #+begin_foo token is
  609. encountered by the LaTeX exporter, it is expanded
  610. into \begin{foo}. The text inside the environment is not
  611. protected, as text inside environments generally is.
  612. When #+begin_foo is encountered by the html exporter, a div with
  613. class foo is inserted into the HTML file. It is up to the user
  614. to add this class to his or her stylesheet if this div is to mean
  615. anything.
  616. **** org-taskjuggler.el (Christian Egli)
  617. Christian Egli's /org-taskjuggler.el/ module is now part of Org.
  618. He also wrote a [[http://orgmode.org/worg/org-tutorials/org-taskjuggler.php][tutorial]] for it.
  619. **** org-ctags.el (Paul Sexton)
  620. Targets like =<<my target>>= can now be found by Emacs' etag
  621. functionality, and Org-mode links can be used to to link to
  622. etags, also in non-Org-mode files. For details, see the file
  623. /org-ctags.el/.
  624. This feature uses a new hook =org-open-link-functions= which will
  625. call function to do something special with text links.
  626. Thanks to Paul Sexton for this contribution.
  627. **** org-docview.el (Jan Böcker)
  628. This new module allows links to various file types using docview, where
  629. Emacs displays images of document pages. Docview link types can point
  630. to a specific page in a document, for example to page 131 of the
  631. Org-mode manual:
  632. : [[docview:~/.elisp/org/doc/org.pdf::131][Org-Mode Manual]]
  633. Thanks to Jan Böcker for this contribution.
  634. *** New Babel libraries
  635. - ob-picolisp.el (Thorsten Jolitz)
  636. - ob-fortran.el (Sergey Litvinov)
  637. - ob-shen.el (Eric Schulte)
  638. - ob-maxima.el (Eric S Fraga)
  639. - ob-java.el (Eric Schulte)
  640. - ob-lilypond.el (Martyn Jago)
  641. - ob-awk.el (Eric Schulte)
  642. ** Other new features and various enhancements
  643. *** Hyperlinks
  644. **** Org-Bibtex -- major improvements
  645. Provides support for managing bibtex bibliographical references
  646. data in headline properties. Each headline corresponds to a
  647. single reference and the relevant bibliographic meta-data is
  648. stored in headline properties, leaving the body of the headline
  649. free to hold notes and comments. Org-bibtex is aware of all
  650. standard bibtex reference types and fields.
  651. The key new functions are
  652. - org-bibtex-check :: queries the user to flesh out all required
  653. (and with prefix argument optional) bibtex fields available
  654. for the specific reference =type= of the current headline.
  655. - org-bibtex-create :: Create a new entry at the given level,
  656. using org-bibtex-check to flesh out the relevant fields.
  657. - org-bibtex-yank :: Yank a bibtex entry on the kill ring as a
  658. formatted Org-mode headline into the current buffer
  659. - org-bibtex-export-to-kill-ring :: Export the current headline
  660. to the kill ring as a formatted bibtex entry.
  661. **** org-gnus.el now allows link creation from messages
  662. You can now create links from messages. This is particularly
  663. useful when the user wants to stored messages that he sends, for
  664. later check. Thanks to Ulf Stegemann for the patch.
  665. **** Modified link escaping
  666. David Maus worked on `org-link-escape'. See [[http://article.gmane.org/gmane.emacs.orgmode/37888][his message]]:
  667. : Percent escaping is used in Org mode to escape certain characters
  668. : in links that would either break the parser (e.g. square brackets
  669. : in link target oder description) or are not allowed to appear in
  670. : a particular link type (e.g. non-ascii characters in a http:
  671. : link).
  672. :
  673. : With this change in place Org will apply percent escaping and
  674. : unescaping more consistently especially for non-ascii characters.
  675. : Additionally some of the outstanding bugs or glitches concerning
  676. : percent escaped links are solved.
  677. Thanks a lot to David for this work.
  678. **** Make =org-store-link= point to directory in a dired buffer
  679. When, in a dired buffer, the cursor is not in a line listing a
  680. file, `org-store-link' will store a link to the directory.
  681. Patch by Stephen Eglen.
  682. **** Allow regexps in =org-file-apps= to capture link parameters
  683. The way extension regexps in =org-file-apps= are handled has
  684. changed. Instead of matching against the file name, the regexps
  685. are now matched against the whole link, and you can use grouping
  686. to extract link parameters which you can then use in a command
  687. string to be executed.
  688. For example, to allow linking to PDF files using the syntax
  689. =file:/doc.pdf::<page number>=, you can add the following entry
  690. to org-file-apps:
  691. #+begin_example
  692. Extension: \.pdf::\([0-9]+\)\'
  693. Command: evince "%s" -p %1
  694. #+end_example
  695. Thanks to Jan Böcker for a patch to this effect.
  696. *** Dates and time
  697. **** Allow relative time when scheduling/adding a deadline
  698. You can now use relative duration strings like "-2d" or "++3w"
  699. when calling =org-schedule= or =org-deadline=: it will schedule
  700. (or set the deadline for) the item respectively two days before
  701. today and three weeks after the current timestamp, if any.
  702. You can use this programmatically: =(org-schedule nil "+2d")=
  703. will work on the current entry.
  704. You can also use this while (bulk-)rescheduling and
  705. (bulk-)resetting the deadline of (several) items from the agenda.
  706. Thanks to Memnon Anon for a heads up about this!
  707. **** American-style dates are now understood by =org-read-date=
  708. So when you are prompted for a date, you can now answer like this
  709. #+begin_example
  710. 2/5/3 --> 2003-02-05
  711. 2/5 --> <CURRENT-YEAR>-02-05
  712. #+end_example
  713. *** Agenda
  714. **** =org-agenda-custom-commands= has a default value
  715. This option used to be `nil' by default. This now has a default
  716. value, displaying an agenda and all TODOs. See the docstring for
  717. details. Thanks to Carsten for this.
  718. **** Improved filtering through =org-agenda-to-appt=
  719. The new function allows the user to refine the scope of entries
  720. to pass to =org-agenda-get-day-entries= and allows to filter out
  721. entries using a function.
  722. Thanks to Peter Münster for raising a related issue and to
  723. Tassilo Horn for this idea. Also thanks to Peter Münster for
  724. [[git:68ffb7a7][fixing a small bug]] in the final implementation.
  725. **** Allow ap/pm times in agenda time grid
  726. Times in the agenda can now be displayed in am/pm format. See
  727. the new variable =org-agenda-timegrid-use-ampm=. Thanks to
  728. C. A. Webber for a patch to this effect.
  729. **** Agenda: Added a bulk "scattering" command
  730. =B S= in the agenda buffer will cause tasks to be rescheduled a
  731. random number of days into the future, with 7 as the default.
  732. This is useful if you've got a ton of tasks scheduled for today,
  733. you realize you'll never deal with them all, and you just want
  734. them to be distributed across the next N days. When called with
  735. a prefix arg, rescheduling will avoid weekend days.
  736. Thanks to John Wiegley for this.
  737. *** Exporting
  738. **** Simplification of org-export-html-preamble/postamble
  739. When set to `t', export the preamble/postamble as usual, honoring
  740. the =org-export-email/author/creator-info= variables.
  741. When set to a formatting string, insert this string. See the
  742. docstring of these variable for details about available
  743. %-sequences.
  744. You can set =:html-preamble= in publishing project in the same
  745. way: `t' means to honor =:email/creator/author-info=, and a
  746. formatting string will insert a string.
  747. **** New exporters to Latin-1 and UTF-8
  748. While Ulf Stegemann was going through the entities list to
  749. improve the LaTeX export, he had the great idea to provide
  750. representations for many of the entities in Latin-1, and for all
  751. of them in UTF-8. This means that we can now export files rich
  752. in special symbols to Latin-1 and to UTF-8 files. These new
  753. exporters can be reached with the commands =C-c C-e n= and =C-c
  754. C-e u=, respectively.
  755. When there is no representation for a given symbol in the
  756. targeted coding system, you can choose to keep the TeX-macro-like
  757. representation, or to get an "explanatory" representation. For
  758. example, =\simeq= could be represented as "[approx. equal to]".
  759. Please use the variable =org-entities-ascii-explanatory= to state
  760. your preference.
  761. **** HTML export: Add class to outline containers using property
  762. The =HTML_CONTAINER_CLASS= property can now be used to add a
  763. class name to the outline container of a node in HTML export.
  764. **** Throw an error when creating an image from a LaTeX snippet fails
  765. This behavior can be configured with the new option variable
  766. =org-format-latex-signal-error=.
  767. **** Support for creating BEAMER presentations from Org-mode documents
  768. Org-mode documents or subtrees can now be converted directly in
  769. to BEAMER presentation. Turning a tree into a simple
  770. presentations is straight forward, and there is also quite some
  771. support to make richer presentations as well. See the [[http://orgmode.org/manual/Beamer-class-export.html#Beamer-class-export][BEAMER
  772. section]] in the manual for more details.
  773. Thanks to everyone who has contributed to the discussion about
  774. BEAMER support and how it should work. This was a great example
  775. for how this community can achieve a much better result than any
  776. individual could.
  777. *** Refiling
  778. **** Refile targets can now be cached
  779. You can turn on caching of refile targets by setting the variable
  780. =org-refile-use-cache=. This should speed up refiling if you
  781. have many eligible targets in many files. If you need to update
  782. the cache because Org misses a newly created entry or still
  783. offers a deleted one, press =C-0 C-c C-w=.
  784. **** New logging support for refiling
  785. Whenever you refile an item, a time stamp and even a note can be
  786. added to this entry. For details, see the new option
  787. =org-log-refile=.
  788. Thanks to Charles Cave for this idea.
  789. *** Completion
  790. **** In-buffer completion is now done using John Wiegley's pcomplete.el
  791. Thanks to John Wiegley for much of this code.
  792. *** Tables
  793. **** New command =org-table-transpose-table-at-point=
  794. See the docstring. This hack from Juan Pechiar is now part of
  795. Org's core. Thanks to Juan!
  796. **** Display field's coordinates when editing it with =C-c `=
  797. When editing a field with =C-c `=, the field's coordinate will
  798. the displayed in the buffer.
  799. Thanks to Michael Brand for a patch to this effect.
  800. **** Spreadsheet computation of durations and time values
  801. If you want to compute time values use the =T= flag, either in
  802. Calc formulas or Elisp formulas:
  803. | Task 1 | Task 2 | Total |
  804. |--------+--------+---------|
  805. | 35:00 | 35:00 | 1:10:00 |
  806. #+TBLFM: @2$3=$1+$2;T
  807. Values must be of the form =[HH:]MM:SS=, where hours are
  808. optional.
  809. Thanks to Martin Halder, Eric Schulte and Carsten for code and
  810. feedback on this.
  811. **** Implement formulas applying to field ranges
  812. Carsten implemented this field-ranges formulas.
  813. : A frequently requested feature for tables has been to be able to define
  814. : row formulas in a way similar to column formulas. The patch below allows
  815. : things like
  816. :
  817. : @3=
  818. : @2$2..@5$7=
  819. : @I$2..@II$4=
  820. :
  821. : as the left hand side for table formulas in order to write a formula that
  822. : is valid for an entire column or for a rectangular section in a
  823. : table.
  824. Thanks a lot to Carsten for this.
  825. **** Sending radio tables from org buffers is now allowed
  826. Org radio tables can no also be sent inside Org buffers. Also,
  827. there is a new hook which get called after a table has been sent.
  828. Thanks to Seweryn Kokot.
  829. *** Lists
  830. **** Improved handling of lists
  831. Nicolas Goaziou extended and improved the way Org handles lists.
  832. 1. Indentation of text determines again end of items in
  833. lists. So, some text less indented than the previous item
  834. doesn't close the whole list anymore, only all items more
  835. indented than it.
  836. 2. Alphabetical bullets are implemented, through the use of the
  837. variable `org-alphabetical-lists'. This also adds alphabetical
  838. counters like [@c] or [@W].
  839. 3. Lists can now safely contain drawers, inline tasks, or various
  840. blocks, themselves containing lists. Two variables are
  841. controlling this: `org-list-forbidden-blocks', and
  842. `org-list-export-context'.
  843. 4. Improve `newline-and-indent' (C-j): used in an item, it will
  844. keep text from moving at column 0. This allows to split text
  845. and make paragraphs and still not break the list.
  846. 5. Improve `org-toggle-item' (C-c -): used on a region with
  847. standard text, it will change the region into one item. With a
  848. prefix argument, it will fallback to the previous behavior and
  849. make every line in region an item. It permits to easily
  850. integrate paragraphs inside a list.
  851. 6. `fill-paragraph' (M-q) now understands lists. It can freely be
  852. used inside items, or on text just after a list, even with no
  853. blank line around, without breaking list structure.
  854. Thanks a lot to Nicolas for all this!
  855. *** Inline display of linked images
  856. Images can now be displayed inline. The key C-c C-x C-v does
  857. toggle the display of such images. Note that only image links
  858. that have no description part will be inlined.
  859. *** Implement offsets for ordered lists
  860. If you want to start an ordered plain list with a number different
  861. from 1, you can now do it like this:
  862. : 1. [@start:12] will star a lit a number 12
  863. *** Babel: code block body expansion for table and preview
  864. In org-babel, code is "expanded" prior to evaluation. I.e. the
  865. code that is actually evaluated comprises the code block contents,
  866. augmented with the extra code which assigns the referenced data to
  867. variables. It is now possible to preview expanded contents, and
  868. also to expand code during during tangling. This expansion takes
  869. into account all header arguments, and variables.
  870. A new keybinding `C-c M-b p' bound to `org-babel-expand-src-block'
  871. can be used from inside of a source code block to preview its
  872. expanded contents (which can be very useful for debugging).
  873. tangling
  874. The expanded body can now be tangled, this includes variable
  875. values which may be the results of other source-code blocks, or
  876. stored in headline properties or tables. One possible use for this
  877. is to allow those using org-babel for their emacs initialization
  878. to store values (e.g. usernames, passwords, etc...) in headline
  879. properties or in tables.
  880. Org-babel now supports three new header arguments, and new default
  881. behavior for handling horizontal lines in tables (hlines), column
  882. names, and rownames across all languages.
  883. *** Editing Convenience and Appearance
  884. **** New command =org-copy-visible= (=C-c C-x v=)
  885. This command will copy the visible text in the region into the
  886. kill ring. Thanks to Florian Beck for this function and to
  887. Carsten for adding it to org.el and documenting it!
  888. **** Make it possible to protect hidden subtrees from being killed by =C-k=
  889. See the new variable =org-ctrl-k-protect-subtree=. This was a
  890. request by Scott Otterson.
  891. **** Implement pretty display of entities, sub-, and superscripts.
  892. The command =C-c C-x \= toggles the display of Org's special
  893. entities like =\alpha= as pretty unicode characters. Also, sub
  894. and superscripts are displayed in a pretty way (raised/lower
  895. display, in a smaller font). If you want to exclude sub- and
  896. superscripts, see the variable
  897. =org-pretty-entities-include-sub-superscripts=.
  898. Thanks to Eric Schulte and Ulf Stegeman for making this possible.
  899. **** New faces for title, date, author and email address lines
  900. The keywords in these lines are now dimmed out, and the title is
  901. displayed in a larger font, and a special font is also used for
  902. author, date, and email information. This is implemented by the
  903. following new faces:
  904. =org-document-title=
  905. =org-document-info=
  906. =org-document-info-keyword=
  907. In addition, the variable =org-hidden-keywords= can be used to
  908. make the corresponding keywords disappear.
  909. Thanks to Dan Davison for this feature.
  910. **** Simpler way to specify faces for tags and todo keywords
  911. The variables =org-todo-keyword-faces=, =org-tag-faces=, and
  912. =org-priority-faces= now accept simple color names as
  913. specifications. The colors will be used as either foreground or
  914. background color for the corresponding keyword. See also the
  915. variable =org-faces-easy-properties=, which governs which face
  916. property is affected by this setting.
  917. This is really a great simplification for setting keyword faces.
  918. The change is based on an idea and patch by Ryan Thompson.
  919. **** <N> in tables now means fixed width, not maximum width
  920. Requested by Michael Brand.
  921. **** Better level cycling function
  922. =TAB= in an empty headline cycles the level of that headline
  923. through likely states. Ryan Thompson implemented an improved
  924. version of this function, which does not depend upon when exactly
  925. this command is used. Thanks to Ryan for this improvement.
  926. **** Adaptive filling
  927. For paragraph text, =org-adaptive-fill-function= did not handle
  928. the base case of regular text which needed to be filled. This is
  929. now fixed. Among other things, it allows email-style ">"
  930. comments to be filled correctly.
  931. Thanks to Dan Hackney for this patch.
  932. **** `org-reveal' (=C-c C-r=) also decrypts encrypted entries (org-crypt.el)
  933. Thanks to Richard Riley for triggering this change.
  934. **** Better automatic letter selection for TODO keywords
  935. When all first letters of keywords have been used, Org now
  936. assigns more meaningful characters based on the keywords.
  937. Thanks to Mikael Fornius for this patch.
  938. *** Clocking
  939. **** Clock: Allow synchronous update of timestamps in CLOCK log
  940. Using =S-M-<up/down>= on CLOCK log timestamps will
  941. increase/decrease the two timestamps on this line so that
  942. duration will keep the same. Note that duration can still be
  943. slightly modified in case a timestamp needs some rounding.
  944. Thanks to Rainer Stengele for this idea.
  945. **** Localized clock tables
  946. Clock tables now support a new new =:lang= parameter, allowing
  947. the user to customize the localization of the table headers. See
  948. the variable =org-clock-clocktable-language-setup= which controls
  949. available translated strings.
  950. **** Show clock overruns in mode line
  951. When clocking an item with a planned effort, overrunning the
  952. planned time is now made visible in the mode line, for example
  953. using the new face =org-mode-line-clock-overrun=, or by adding an
  954. extra string given by =org-task-overrun-text=.
  955. Thanks to Richard Riley for a patch to this effect.
  956. **** Clock reports can now include the running, incomplete clock
  957. If you have a clock running, and the entry being clocked falls
  958. into the scope when creating a clock table, the time so far spent
  959. can be added to the total. This behavior depends on the setting
  960. of =org-clock-report-include-clocking-task=. The default is
  961. =nil=.
  962. Thanks to Bernt Hansen for this useful addition.
  963. *** Misc
  964. **** Improvements with inline tasks and indentation
  965. There is now a configurable way on how to export inline tasks.
  966. See the new variable =org-inlinetask-export-templates=.
  967. Thanks to Nicolas Goaziou for coding these changes.
  968. **** A property value of "nil" now means to unset a property
  969. This can be useful in particular with property inheritance, if
  970. some upper level has the property, and some grandchild of it
  971. would like to have the default settings (i.e. not overruled by a
  972. property) back.
  973. Thanks to Robert Goldman and Bernt Hansen for suggesting this
  974. change.
  975. **** New helper functions in org-table.el
  976. There are new functions to access and write to a specific table field.
  977. This is for hackers, and maybe for the org-babel people.
  978. #+begin_example
  979. org-table-get
  980. org-table-put
  981. org-table-current-line
  982. org-table-goto-line
  983. #+end_example
  984. **** Archiving: Allow to reverse order in target node
  985. The new option =org-archive-reversed-order= allows to have
  986. archived entries inserted in a last-on-top fashion in the target
  987. node.
  988. This was requested by Tom.
  989. **** Org-reveal: Double prefix arg shows the entire subtree of the parent
  990. This can help to get out of an inconsistent state produced for
  991. example by viewing from the agenda.
  992. This was a request by Matt Lundin.
  993. * License
  994. This file is part of GNU Emacs.
  995. GNU Emacs is free software: you can redistribute it and/or modify
  996. it under the terms of the GNU General Public License as published by
  997. the Free Software Foundation, either version 3 of the License, or
  998. (at your option) any later version.
  999. GNU Emacs is distributed in the hope that it will be useful,
  1000. but WITHOUT ANY WARRANTY; without even the implied warranty of
  1001. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  1002. GNU General Public License for more details.
  1003. You should have received a copy of the GNU General Public License
  1004. along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.