弾丸の組織モードのデフォルトはAlt-Enterです


9

箇条書きの場合、org-modeのデフォルトをalt-enterにしたいので、箇条書きの場合はEnterキーを押すだけで新しい箇条書きを作成できます。

たとえば:

  • バナナ
  • 林檎
  • キウイ[ここにマウスカーソル]

Enterキーを押すと、次の動作が必要になります(M-Enterキーを押すと発生します)。

  • バナナ
  • 林檎
  • キウイ
  • [ここにマウスカーソル]

の代わりに:

  • バナナ
  • 林檎
  • キウイ

[ここにマウスカーソル]

それが他のほとんどのアプリケーションのデフォルトですが、なぜorg-modeでないのですか?

これは私のワークフローを大幅に改善します。しかし、私は方法がわかりません!前もって感謝します。


1
Emacs.SEへようこそ!これまでに何を試みたのか(そして、あなたが立ち往生しているどのような参照を調べたのか)を説明できれば、助かります。まず、Emacsのキーバインディングに関する以下の説明を参照してください。
ダン

1
前者はorg-modeのデフォルトの動作だと思います。org-modeのみをロードしてemacsを起動して、もう一度試すことができますか?
Leu_Grady

リストをどのように終了しますか?
SabreWolfy 2016

1
解決策ではありませんが、私の経験では、慣れるM-RETことの方がはるかに有益です。M-RETポイントは、(i)リストにあるときに正しいことを行う(II)の見出し(III)ORG表のセル(iv)が...時間によって、あなたが好きに開始するとM-RET、あなたが発見しC-u M-RET、さらにそれのように、そしてあなた!:)
Kaushal Modi 2016

回答:


3

このバージョンを試してみてください。通常のリターンでアイテムと見出しを追加し、空のエントリでダブルリターンするとリストが終了します。また、テーブルのリターンを変更して、行を追加したり、空の行でテーブルを終了したりします。その軽くテストされた;)

(defun scimax/org-return ()
  "Add new list or headline "
  (interactive)
  (cond
   ((org-in-item-p)
    (if (org-element-property :contents-begin (org-element-context))
    (org-insert-heading)
      (beginning-of-line)
      (kill-line)
      (org-return)))
   ((org-at-heading-p)
    (if (not (string= "" (org-element-property :title (org-element-context))))
    (org-insert-heading)
      (beginning-of-line)
      (kill-line)
      (org-return)))
   ((org-at-table-p)
    (if (-any?
     (lambda (x) (not (string= "" x)))
     (nth
      (- (org-table-current-dline) 1)
      (org-table-to-lisp)))
    (org-return)
      ;; empty row
      (beginning-of-line)
      (kill-line)
      (org-return)))
   (t
    (org-return))))

(define-key org-mode-map (kbd "RET")
  'scimax/org-return)

同じ著者によるさらなる先進応答kitchingroup.cheme.cmu.edu/blog/2017/04/09/...
joelostblom


0

あなたはこのようにそれを行うことができます:

 (defun my/org-list-new-item ()
   (interactive)
   (if (org-in-item-p) (org-insert-heading) (org-return)))
 (define-key org-mode-map (kbd "RET") 'my/org-list-new-item)

しかし、私はこのようにそれを使用することを本当にお勧めしません。


また、mswordのような動作はありません(空のリスト項目をクリアして「通常の」テキストに移動するには、ダブルエンターを押します)。もちろん、elispを追加するだけで実行できます。
Maxim Kim
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.