Hi all, using org-mode for quite some time now I always look at operations (key sequences) I repeat a lot of times. A lot of times I start a list with an item and immediately indent the next item as subitem. From - item 1 - subitem 11 I go to - item 1 - subitem 11 via "M-right". Then I always want to change the style of the subitem list to "*". I do this via "S-right-right". I wonder how others work. I would like to automatically have changed the subitem list type to "*" as soon as I indent via "Alt-right". Next indentation should go back to "-". etc. Maybe we could introduce a variable that sets the order of standard list item types, in my case: "- * - * - * - *" as in - item 1 * subitem 11 - subitem 111 * subitem 111 ... very special I know but I try to reduce the keypressings as much as possible. Any other suggestions? Rainer
Hi all,
I wonder if my question was too complicated or too stupid?
Any of the "power users" telling me "too special" or similar would be ok for me ...
Thanks for considering.
Rainer
Rainer Stengele schrieb:
> Hi all,
>
> using org-mode for quite some time now I always look at operations (key
> sequences) I repeat a lot of times.
>
> A lot of times I start a list with an item and immediately indent the
> next item as subitem.
>
> From
>
> - item 1
> - subitem 11
>
> I go to
>
> - item 1
> - subitem 11
>
> via "M-right". Then I always want to change the style of the subitem
> list to "*". I do this via "S-right-right".
>
> I wonder how others work. I would like to automatically have changed the
> subitem list type to "*" as soon as I indent via "Alt-right". Next
> indentation should go back to "-". etc.
>
> Maybe we could introduce a variable that sets the order of standard list
> item types, in my case: "- * - * - * - *" as in
>
>
> - item 1
> * subitem 11
> - subitem 111
> * subitem 111
> ...
>
> very special I know but I try to reduce the keypressings as much as
> possible. Any other suggestions?
>
>
> Rainer
>
>
>
> _______________________________________________
> Emacs-orgmode mailing list
> Remember: use `Reply All' to send replies to the list.
> Emacs-orgmode@gnu.org
> http://lists.gnu.org/mailman/listinfo/emacs-orgmode
>
At Mon, 29 Jun 2009 09:51:10 +0200,
Rainer Stengele wrote:
>
> Hi all,
>
> I wonder if my question was too complicated or too stupid?
Neither, I guess. The simplest answer, and this applies to Emacs in
general, is that if you find you have a sequence of keystrokes that
you repeat often, save them as a keyboard macro:
C-x ( ... C-x )
where the ... are the keystrokes you repeat and then save the keyboard
macro (look at kmacro-name-last-macro). You can then put this saved
keyboard macro in your .emacs (look at insert-kbd-macro) to have it
defined every time. The Emacs info pages on keyboard macros should
help.
There are other solutions, of course, including writing a simple elisp
function which does the steps you want.
HTH.
No comment on the idea itself, but a couple for generality. If your demote idea is implemented as a variable, it would be useful to have an imagined first node, so that people (like myself) who always put the top level item in column 2 have effectively demoted to that from an imaginary parent in column 0. Also, I think any such implementation would need to modify org-toggle-item (something I've been thinking about for a while anyway). On Tue, Jun 23, 2009 at 14:23, Rainer Stengele<rainer.stengele@online.de> wrote: > Hi all, > > using org-mode for quite some time now I always look at operations (key > sequences) I repeat a lot of times. > > A lot of times I start a list with an item and immediately indent the next > item as subitem. > > From > > - item 1 > - subitem 11 > > I go to > > - item 1 > - subitem 11 > > via "M-right". Then I always want to change the style of the subitem list to > "*". I do this via "S-right-right". > > I wonder how others work. I would like to automatically have changed the > subitem list type to "*" as soon as I indent via "Alt-right". Next > indentation should go back to "-". etc. > > Maybe we could introduce a variable that sets the order of standard list > item types, in my case: "- * - * - * - *" as in > > > - item 1 > * subitem 11 > - subitem 111 > * subitem 111 > ... > > very special I know but I try to reduce the keypressings as much as > possible. Any other suggestions? > > > Rainer > > > > _______________________________________________ > Emacs-orgmode mailing list > Remember: use `Reply All' to send replies to the list. > Emacs-orgmode@gnu.org > http://lists.gnu.org/mailman/listinfo/emacs-orgmode > -- Myalgic encephalomyelitis denialism is causing death and severe suffering, worse than MS. Conflicts of interest are destroying research. /You/ can get the disease at any time permanently. Do science and justice matter to you? http://www.meactionuk.org.uk/What_Is_ME_What_Is_CFS.htm
I've written a very quick and dirty derived mode for org that
implements the following keystrokes:
Tab is demote.
Shift-tab is promote.
Enter is org-insert-heading.
C-tab is the old Shift-Tab
C-j is the old Return.
I know it messes with the default org configuration, which is part of
why I have not posted it anywhere, but it works *extremely* well for
me when I'm taking notes e.g. in lecture, and I find myself using
jot-mode (what I named it) just as often as org-mode proper.
If people are interested, I'd be glad to email it/post it on EmacsWiki
or Worg (although I should warn you, it is probably very unstylish
Elisp, too!).
On Mon, Jun 29, 2009 at 8:51 PM, Samuel Wales<samologist@gmail.com> wrote:
> No comment on the idea itself, but a couple for generality.
>
> If your demote idea is implemented as a variable, it would be useful
> to have an imagined first node, so that people (like myself) who
> always put the top level item in column 2 have effectively demoted to
> that from an imaginary parent in column 0.
>
> Also, I think any such implementation would need to modify
> org-toggle-item (something I've been thinking about for a while
> anyway).
>
> On Tue, Jun 23, 2009 at 14:23, Rainer Stengele<rainer.stengele@online.de> wrote:
>> Hi all,
>>
>> using org-mode for quite some time now I always look at operations (key
>> sequences) I repeat a lot of times.
>>
>> A lot of times I start a list with an item and immediately indent the next
>> item as subitem.
>>
>> From
>>
>> - item 1
>> - subitem 11
>>
>> I go to
>>
>> - item 1
>> - subitem 11
>>
>> via "M-right". Then I always want to change the style of the subitem list to
>> "*". I do this via "S-right-right".
>>
>> I wonder how others work. I would like to automatically have changed the
>> subitem list type to "*" as soon as I indent via "Alt-right". Next
>> indentation should go back to "-". etc.
>>
>> Maybe we could introduce a variable that sets the order of standard list
>> item types, in my case: "- * - * - * - *" as in
>>
>>
>> - item 1
>> * subitem 11
>> - subitem 111
>> * subitem 111
>> ...
>>
>> very special I know but I try to reduce the keypressings as much as
>> possible. Any other suggestions?
>>
>>
>> Rainer
>>
>>
>>
>> _______________________________________________
>> Emacs-orgmode mailing list
>> Remember: use `Reply All' to send replies to the list.
>> Emacs-orgmode@gnu.org
>> http://lists.gnu.org/mailman/listinfo/emacs-orgmode
>>
>
>
>
> --
> Myalgic encephalomyelitis denialism is causing death and severe suffering,
> worse than MS. Conflicts of interest are destroying research. /You/ can
> get the disease at any time permanently. Do science and justice matter to
> you? http://www.meactionuk.org.uk/What_Is_ME_What_Is_CFS.htm
>
>
> _______________________________________________
> Emacs-orgmode mailing list
> Remember: use `Reply All' to send replies to the list.
> Emacs-orgmode@gnu.org
> http://lists.gnu.org/mailman/listinfo/emacs-orgmode
>
At Sun, 5 Jul 2009 10:57:34 -0400,
Raffi R wrote:
>
> I've written a very quick and dirty derived mode for org that
> implements the following keystrokes:
> Tab is demote.
> Shift-tab is promote.
> Enter is org-insert-heading.
> C-tab is the old Shift-Tab
> C-j is the old Return.
>
> I know it messes with the default org configuration, which is part of
> why I have not posted it anywhere, but it works *extremely* well for
> me when I'm taking notes e.g. in lecture, and I find myself using
> jot-mode (what I named it) just as often as org-mode proper.
>
> If people are interested, I'd be glad to email it/post it on EmacsWiki
> or Worg (although I should warn you, it is probably very unstylish
> Elisp, too!).
I cannot speak for others but I'm interested, especially having
recently acquired a Nokia N800 internet tablet... where keystrokes are
to be minimised and your bindings sound quite appropriate for note
taking. Please post here or on wiki/worg sites.
[-- Attachment #1: Type: text/plain, Size: 1457 bytes --] Hello, Here is the current jot-mode (I think...the latest version is at my lab and is, I think, much less buggy when it comes to showing levels) along with some documentation and a lot of TODOs. It's pretty dirty, and I'd greatly appreciate input. When people think it's at a releasable state, I'll put it up on Worg/EmacsWiki. Thanks, - Raffi. On Sun, Jul 5, 2009 at 3:12 PM, Eric S Fraga<ucecesf@ucl.ac.uk> wrote: > At Sun, 5 Jul 2009 10:57:34 -0400, > Raffi R wrote: >> >> I've written a very quick and dirty derived mode for org that >> implements the following keystrokes: >> Tab is demote. >> Shift-tab is promote. >> Enter is org-insert-heading. >> C-tab is the old Shift-Tab >> C-j is the old Return. >> >> I know it messes with the default org configuration, which is part of >> why I have not posted it anywhere, but it works *extremely* well for >> me when I'm taking notes e.g. in lecture, and I find myself using >> jot-mode (what I named it) just as often as org-mode proper. >> >> If people are interested, I'd be glad to email it/post it on EmacsWiki >> or Worg (although I should warn you, it is probably very unstylish >> Elisp, too!). > > I cannot speak for others but I'm interested, especially having > recently acquired a Nokia N800 internet tablet... where keystrokes are > to be minimised and your bindings sound quite appropriate for note > taking. Please post here or on wiki/worg sites. > [-- Attachment #2: jot-mode.org --] [-- Type: application/octet-stream, Size: 2138 bytes --] * Jot Mode Jot mode is a collection of keyboard shortcuts and layout settings (mostly forcing show-all more often than not) designed to make org-mode more amenable to rapid notetaking (e.g. in lectures or brainstorming sessions). It is a derived mode of org-mode. * Jot Mode is derived from org-mode Jot mode is extremely short. This is because it is a derivation of org-mode which allows for the full power of org-mode with keyboard shortcuts more amenable to certain use cases. However, since it is not necessarily desirable to use these shortcuts all the time, they are not just hooks into org-mode itself. This means that you can use jot-mode when it is appropriate (e.g. rapid notetaking sessions) and org-mode when it is appropriate (a million other things). * Usage ** Keyboard shortcuts: - Enter/Return :: Insert new heading beneath current one. - C-j :: insert text below current heading without creating new heading first. - Tab :: Demote current heading. - Shift-Tab :: Promote current heading. - C-Tab :: Cycle through expansion options for buffer. * TODOS ** Make default header export level 0. This is doable with C-0 org-export-this-file. I'm not sure how to pass the digit, though. This would be useful because most headings in jot-mode tend to have no text underneath them (in my use, anyways). ** Create keyword recognized by org-export as a heading Since the default export level should be 0, it would be nice to have some way to indicate a section heading. ** Fix jot-kill-current-heading and bind it to a key. ** show-all on load. In fact, you know what? show-all everywhere. ** Figure out consistent behaviour for level collapse. I figure show-all should be the default behaviour. Not sure how/when to enable to enable level collapse. Right now, level collapsing is all messed up. ** Redefine modified functions as advice. Some of the modified org-functions should probably just be defadvice wrappers around the existing functions instead of defuns proper. ** Bind return to org-insert-heading instead of org-insert-heading-after-current. ** Promote/demote non-*s with Tab/S-Tab [-- Attachment #3: jot.el --] [-- Type: application/octet-stream, Size: 3117 bytes --] ;;; jot-mode.el -- Notetaking mode that extends org-mode for Emacs. ;; Copyright (C) 2009 Raffi Rush <raffir@gmail.com> ;; Maintainer: Raffi Rush ;; Version: 0.1 ;; Keywords: outlines, lecture notes, notetaking, notes, jot ;; This file is not part of GNU Emacs ;; This program is free software; you can redistribute it and/or modify ;; it under the terms of the GNU General Public License as published by ;; the Free Software Foundation; either version 3, or (at your option) ;; any later version. ;; ;; This program is distributed in the hope that it will be useful, ;; but WITHOUT ANY WARRANTY; without even the implied warranty of ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ;; GNU General Public License for more details. ;; ;; You should have received a copy of the GNU General Public License ;; along with this program; if not, write to the Free Software ;; Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. ;;; Commentary: ;; This file implements some extensions for org-mode to make it ;; more amenable to being used to construct an outline very rapidly ;; (e.g. for lecture notes). ;; Put this file into your load-path and put the following into your ~/.emacs: ;; (require 'jot) ;; Using jot-mode: ;; Jot-mode modifies org-mode to make it more amenable to rapid notetaking. ;; First of all, by default all headings are expanded. ;; Second of all, key remappings: ;; [Return/enter]: creates a new bullet at the same level as the current heading. To edit text under the current heading, use C-j or C-return ;; TAB: demotes the current heading. It can be used anywhere with the current heading. In org-mode, this is done using Meta-[right arrow] ;; Shift-TAB: outdents (promotes the current heading) ;; C-TAB: is the new org-shifttab ;;; Code: (require 'org) (define-derived-mode jot-mode org-mode "Jot" "Major mode for jottable notes. Derived from org-mode." ) ;(defadvice org-insert-heading-after-current (after jot-insert-heading-after-current) ; (show-all)) (defun jot-insert-heading-after-current () "Same as org-insert-heading-after-current, but shows all headings." (interactive) (org-insert-heading-after-current) (show-all)) (defun (jot-metaup) () "Same as org-metaup, but shows all headings." (interactive) (org-metaup) (show-all)) (defun jot-metadown () "Same as org-metadown, but shows all headings." (interactive) (org-metadown) (show-all)) ;; jot-kill-current-headline: This doesn't work properly yet. (defun jot-kill-current-headline () (interactive) (save-excursion) (org-beginning-of-line) (or (replace-regexp "*+ " "") (replace-regexp "[0-9]\. " "")) ) (define-key jot-mode-map (kbd "RET") 'jot-insert-heading-after-current) (define-key jot-mode-map [(tab)] 'org-do-demote) (define-key jot-mode-map [(shift tab)] 'org-do-promote) (define-key jot-mode-map [(control tab)] 'org-shifttab) (define-key jot-mode-map [(control return)] 'org-return-indent) ;;; Finish up (provide 'jot-mode) (provide 'jot) [-- Attachment #4: Type: text/plain, Size: 204 bytes --] _______________________________________________ Emacs-orgmode mailing list Remember: use `Reply All' to send replies to the list. Emacs-orgmode@gnu.org http://lists.gnu.org/mailman/listinfo/emacs-orgmode
At Sun, 5 Jul 2009 18:26:48 -0400,
Raffi R wrote:
>
> Hello,
>
> Here is the current jot-mode (I think...the latest version is at my
Thanks! I'll give this a try over the next few days (I have a big
meeting tomorrow where this could come in quite useful) and will get
back to you.
eric
On Jun 29, 2009, at 9:51 AM, Rainer Stengele wrote: > Hi all, > > I wonder if my question was too complicated or too stupid? Not at all. It is only that the implementation should still allow flexibility to change list types if you wish and not immediately get this change reversed. I have now implemented the following which does follow your request: (setq org-list-demote-modify-bullet '(("-" . "*") ("*" . "-"))) This works for entering lists as you describe it. It does not work for modifying lists by demotion/promotion, so you mileage may vary. It allows you to enter an ordered list and not have it messed up. Comments are welcome..... - Carsten > > Thanks for considering. > > Rainer > > Rainer Stengele schrieb: >> Hi all, >> >> using org-mode for quite some time now I always look at operations >> (key >> sequences) I repeat a lot of times. >> >> A lot of times I start a list with an item and immediately indent the >> next item as subitem. >> >> From >> >> - item 1 >> - subitem 11 >> >> I go to >> >> - item 1 >> - subitem 11 >> >> via "M-right". Then I always want to change the style of the subitem >> list to "*". I do this via "S-right-right". >> >> I wonder how others work. I would like to automatically have >> changed the >> subitem list type to "*" as soon as I indent via "Alt-right". Next >> indentation should go back to "-". etc. >> >> Maybe we could introduce a variable that sets the order of standard >> list >> item types, in my case: "- * - * - * - *" as in >> >> >> - item 1 >> * subitem 11 >> - subitem 111 >> * subitem 111 >> ... >> >> very special I know but I try to reduce the keypressings as much as >> possible. Any other suggestions? >> >> >> Rainer >> >> >> >> _______________________________________________ >> Emacs-orgmode mailing list >> Remember: use `Reply All' to send replies to the list. >> Emacs-orgmode@gnu.org >> http://lists.gnu.org/mailman/listinfo/emacs-orgmode >> > > > > _______________________________________________ > Emacs-orgmode mailing list > Remember: use `Reply All' to send replies to the list. > Emacs-orgmode@gnu.org > http://lists.gnu.org/mailman/listinfo/emacs-orgmode
Carsten Dominik schrieb:
>
> On Jun 29, 2009, at 9:51 AM, Rainer Stengele wrote:
>
>> Hi all,
>>
>> I wonder if my question was too complicated or too stupid?
>
> Not at all. It is only that the implementation should still
> allow flexibility to change list types if you wish and not
> immediately get this change reversed.
>
> I have now implemented the following which does follow your request:
>
> (setq org-list-demote-modify-bullet
> '(("-" . "*") ("*" . "-")))
>
> This works for entering lists as you describe it. It does not
> work for modifying lists by demotion/promotion, so you mileage may
> vary. It allows you to enter an ordered list and not have it
> messed up.
>
> Comments are welcome.....
>
> - Carsten
>
>>
>> Thanks for considering.
>>
>> Rainer
>>
>> Rainer Stengele schrieb:
>>> Hi all,
>>>
>>> using org-mode for quite some time now I always look at operations (key
>>> sequences) I repeat a lot of times.
>>>
>>> A lot of times I start a list with an item and immediately indent the
>>> next item as subitem.
>>>
>>> From
>>>
>>> - item 1
>>> - subitem 11
>>>
>>> I go to
>>>
>>> - item 1
>>> - subitem 11
>>>
>>> via "M-right". Then I always want to change the style of the subitem
>>> list to "*". I do this via "S-right-right".
>>>
>>> I wonder how others work. I would like to automatically have changed the
>>> subitem list type to "*" as soon as I indent via "Alt-right". Next
>>> indentation should go back to "-". etc.
>>>
>>> Maybe we could introduce a variable that sets the order of standard list
>>> item types, in my case: "- * - * - * - *" as in
>>>
>>>
>>> - item 1
>>> * subitem 11
>>> - subitem 111
>>> * subitem 111
>>> ...
>>>
>>> very special I know but I try to reduce the keypressings as much as
>>> possible. Any other suggestions?
>>>
>>>
>>> Rainer
>>>
>>>
>>>
Carsten,
thanks a lot for considering this and implementing.
Trying it out with the latest git version I simply end up with
call-interactively: Wrong type argument: listp, 2
or
call-interactively: Wrong type argument: listp, 4
and so on, depending on the depth of the parent element,
when trying to demote with "M-right".
my .emacs config looks like (created by org-customize):
'(org-list-demote-modify-bullet (quote (("*" . "-") ("-" . "+") ("+" . "*") ("*" . "-"))))
How can I trace the mechanism?
Rainer
Just a typo, it is fixed, thanks.
On Jul 7, 2009, at 1:20 PM, Rainer Stengele wrote:
> How can I trace the mechanism?
In general, turn on debug-on-error fro the Options menu, load
uncompiled code and hit the error.
- Carsten
Carsten Dominik schrieb:
> Just a typo, it is fixed, thanks.
>
>
> On Jul 7, 2009, at 1:20 PM, Rainer Stengele wrote:
>> How can I trace the mechanism?
>
> In general, turn on debug-on-error fro the Options menu, load uncompiled
> code and hit the error.
>
> - Carsten
>
>
>
> _______________________________________________
> Emacs-orgmode mailing list
> Remember: use `Reply All' to send replies to the list.
> Emacs-orgmode@gnu.org
> http://lists.gnu.org/mailman/listinfo/emacs-orgmode
>
excellent, thanks!
having
'(org-list-demote-modify-bullet (quote (("*" . "+") ("-" . "*") ("+" . "-") ("1." . "-"))))
it works, but not for demotong from "1." to "-" or from "1.)" to "-"
Result:
2. foo
1. bar
- Rainer
On Jul 7, 2009, at 1:44 PM, Rainer Stengele wrote:
> Carsten Dominik schrieb:
>> Just a typo, it is fixed, thanks.
>>
>>
>> On Jul 7, 2009, at 1:20 PM, Rainer Stengele wrote:
>>> How can I trace the mechanism?
>>
>> In general, turn on debug-on-error fro the Options menu, load
>> uncompiled
>> code and hit the error.
>>
>> - Carsten
>>
>>
>>
>> _______________________________________________
>> Emacs-orgmode mailing list
>> Remember: use `Reply All' to send replies to the list.
>> Emacs-orgmode@gnu.org
>> http://lists.gnu.org/mailman/listinfo/emacs-orgmode
>>
>
>
> excellent, thanks!
>
> having
> '(org-list-demote-modify-bullet (quote (("*" . "+") ("-" . "*")
> ("+" . "-") ("1." . "-"))))
>
> it works, but not for demotong from "1." to "-" or from "1.)" to "-"
> Result:
> 2. foo
> 1. bar
It does now. Thanks for testing.
- Carsten
Carsten Dominik schrieb:
>
> On Jul 7, 2009, at 1:44 PM, Rainer Stengele wrote:
>
>> Carsten Dominik schrieb:
>>> Just a typo, it is fixed, thanks.
>>>
>>>
>>> On Jul 7, 2009, at 1:20 PM, Rainer Stengele wrote:
>>>> How can I trace the mechanism?
>>>
>>> In general, turn on debug-on-error fro the Options menu, load uncompiled
>>> code and hit the error.
>>>
>>> - Carsten
>>>
>>>
>>>
>>> _______________________________________________
>>> Emacs-orgmode mailing list
>>> Remember: use `Reply All' to send replies to the list.
>>> Emacs-orgmode@gnu.org
>>> http://lists.gnu.org/mailman/listinfo/emacs-orgmode
>>>
>>
>>
>> excellent, thanks!
>>
>> having
>> '(org-list-demote-modify-bullet (quote (("*" . "+") ("-" . "*") ("+" .
>> "-") ("1." . "-"))))
>>
>> it works, but not for demotong from "1." to "-" or from "1.)" to "-"
>> Result:
>> 2. foo
>> 1. bar
>
> It does now. Thanks for testing.
>
> - Carsten
>
>
>
> _______________________________________________
> Emacs-orgmode mailing list
> Remember: use `Reply All' to send replies to the list.
> Emacs-orgmode@gnu.org
> http://lists.gnu.org/mailman/listinfo/emacs-orgmode
>
Dear Carsten,
thanks again! In the meantime I did not expect to have this feature in
hands at all.
I am amazed! It is and stays plain fun to use an ever improving orgmode.
Just this morning I told my colleague that the real fun is using the
right tool (emacs + orgmode). The contents of a documentation/project
plan really is secondary ...
- Rainer