ORGの使い方メモ
ORG使いましょ
orgを使うための設定
設定はあちこちのwebサイトを参照
orgの起動方法
- 方法1. C-c cでorg-captureモードを起こして、[t]Todo,[m]memoを選んで記 述 memo開く。バッファにはCAPTURE-memo.orgと現れるが、保存時はelで設定したfile名になる。
- 方法2. 拡張子orgのファイルを開く
書く
| 修飾内容 | Orgの記法 | Markdownの記法 |
| 見出し | * 見出し | # 見出し |
| コメント | # コメント | <!-- コメント --> |
| 強調(太字) | **強調(太字)** | **強調(太字)** |
| 斜体(イタリック) | /斜体(イタリック)/ | *斜体(イタリック)* |
| 下線 | _下線_ | <u>下線</u> |
| 打ち消し | +打ち消し+ | ~~打ち消し~~ |
| インラインコード | ~インラインコード~ | `インラインコード` |
| 見た目そのまま(文字は等幅) | =そのまま= | `そのまま` |
行頭に:をつけると、マークアップを無視してそのまま表示
引用元:https://www.mhatta.org/wp/2018/08/23/org-mode-101-3/
見出しをつける
アスタリスク(*,**,***,..)で見出し(段組み)ができます。
箇条書き
- まずは「-」
- M-RET (Alt-RET)を入力
- shift+右矢印すると、順に数字1,1),*などの候補が現れて変換される。
または、先頭に-をつけて書き並べ、最後に箇条書き範囲内で、shift+右矢印して候補を確定
名前付き
- 名前1 :: 内容1 - 名前2 :: 内容2
チェックボックスもつけれるらしい。
理科系の勉強日記 Emacs org-modeで快適タスク管理 入門
- [ ] チェック項目
と入力する。
チェックボックス[1/3]
- [X] [/]と手入力
- [ ] 「-」を入力後,M-S-RETを入力しボックスを増やす
- [ ] ボックスの上でC-cとするとチェックが入る
+ [ ] 子もつくることができる
+ [ ] 子のチェックがうまると親にチェックが入る
ブロック環境
いろいろなブロック環境があります。
C-c C-, (org-insert-structure-template)
a ‘#+BEGIN_EXPORT ascii’ … ‘#+END_EXPORT’ c ‘#+BEGIN_CENTER’ … ‘#+END_CENTER’ C ‘#+BEGIN_COMMENT’ … ‘#+END_COMMENT’ e ‘#+BEGIN_EXAMPLE’ … ‘#+END_EXAMPLE’ E ‘#+BEGIN_EXPORT’ … ‘#+END_EXPORT’ h ‘#+BEGIN_EXPORT html’ … ‘#+END_EXPORT’ l ‘#+BEGIN_EXPORT latex’ … ‘#+END_EXPORT’ q ‘#+BEGIN_QUOTE’ … ‘#+END_QUOTE’ s ‘#+BEGIN_SRC’ … ‘#+END_SRC’ v ‘#+BEGIN_VERSE’ … ‘#+END_VERSE’
ソースコードなどを書く
前述のブロック環境を用います。
テキスト文書の中に、ソースコードも混在できます。
example環境は,言語指定できない。 ソースコードはsrc環境 #+BEGIN_SRC ソースコード種類(言語指定) #+END_SRC
BEGIN_SRCの後ろでC-M-i(Ctrl+Alt+i)を押すとOrgが対応している言語の一覧がでてくる。
ハイライト表示される。
C,R,emacs-lisp,latex,octave,org,shell,など
ただし、ここに現れなくても、言語名書けばハイライト表記される場合もある。
Org-babelを用いると、コードブロック内のコード(pytho,R,C++,sh,etc.)を実行できる。
TODOをつける
- アスタリスクの次に「1文字スペース」+「TODO」とtypeします。
- または、 アスタリスクの次に「1文字スペース」+「shift+右矢印」とkey入力すると、 TODOが現れ、shift+右矢印を順次繰り返すと、 TODO/DONE/無印の状態がトグルできます。
- またはorgのファイル内で、C-c C-tとすると、その場所に近いアスタリスクの項目にTODOが付きます。
優先順位の印をつける
アスタリスクの次に「1文字スペース」+「shift+上矢印」とすると、
[#A] [#B] [#C]が順次現れ、優先順位の印としてつけることができます
- agendaの表示に#A,#B,#Cが現れ、優先順位のメモになる
日付や時刻を記入する
- C-c .で日付,時刻は自分で入力可: active time:(矢印カッコ)
<2021-08-23 月>
- C-u C-c .で操作時の時刻(編集可)+と日付: active time:(矢印カッコ)
<2021-08-23 月 11:00>
- C-c !で日付: inactive time , inactive time(カギカッコ), agendaに表示されない,
[2021-08-23 月]
- C-u C-c !で書いたときの時刻と日付, inactive time,agendaに表示されない,
[2021-08-23 月 11:00]
- C-c C-dでDEADLINEの時刻と日付が見出しに付きます。
DEADLINE: <2021-08-23 月 12:00>
- C-c C-sでSCHEDULEDの時刻と日付が見出しに付きます。
SCHEDULED: <2021-08-23 月 03:00>
が記入できます。
日付はカレンダーが現れ、shift+矢印で移動して所要の日付を 選ぶこともできます。 時刻は手入力もできます。
- 矢印(三角)カッコ<>はactive time: agendaに現れる
- カギカッコ[]はinactive time: agendaに現れない
- カッコ上にカーソル動かしてshift+上矢印でトグルできる
- in|active,日付や時間はshift+矢印(上下左右)で編集できる
<2024-03-04 月 16:40>
見る
- C-a aでagenda(todo.org:(agend-fileで設定):の内容)
- C-M-^(ctrl+alt+^)でmemo(elで設定)
折りたたむ
- shift-tabで SHOW-ALL/OVERVIEW/CONTENTSをトグル
- 文書全体の折りたたみ C-u C-i または C-u tab
- アスタリスク行位置での折りたたみ tab または Ctrl-i
ショートカット
alt + 左右矢印:: *を増減
alt + 上下矢印:: まるごと上下に移動
Ctrl-c Ctrl-n:: 次の項目にジャンプ
Ctrl-c Ctrl-p:: 前の項目にジャンプ
C-c C-x C-w:: 項目ごとcut
C-c C-x C-y:: 項目ごとpaste
アスタリスクのある行でShift-左右矢印::無印/ToDo/DONEの切り替えがてきる
C-c . 日(active time)<2025-02-26 水>/ C-c !, inactive time[2025-02-26 水]
C-u C-c . 日時,active time<2025-02-26 水 11:09> /C-u C-c !, 日時, inactive time[2025-02-26 水 11:08]
C-c C-sでschedule Date+time
C-c C-dでdeadline Date+time
作業時間計測
C-c C-x TABでclock in: 作業開始前
C-c C-x C-oでclock out: 作業終了
作業時のorgの項目(*)のなかにLOGBOOKの項目が追記され、
C-c C-x TABで開始時刻
C-c C-x C-oで終了時刻
が追記され、終了時に作業時間も同時に追記される
LINKの貼り方
参考サイト 内部リンクもできる
[[エクスポートする]]
のように記述すれば,同一ファイル内の「文字列」を含む最初の行にリンクできる
[#ID] [*ID]
エイリアスを用いてリンクを表現する:フルパスを書かずに、下記例だとdocで省略できます
#+link: doc file+sys:/Users/hoge/Documents/PDF/ [ [doc:a.pdf ] [ 手法1 ] ] [ [doc:b/c.pdf] [手法2] ]
テキストファイルへのリンク
同一emacs内でリンク可:別emacsプロセスで引用先ファイルを開いたら、リンクできない
引用元ファイルで、C-c lでstored
引用先ファイルで、C-c C-lで貼り付け
[[file:MOvie-Howto::Layer毎にD&Dして取り込む。][MOVIE_howto]]
URLへのリンク
[ [ URL ] [ テキスト ] ] としたら 文書中にリンクを埋め込めて、 C-c C-oするとブラウザが開いてジャンプできる。(要ブラウザ設定)。
リンクを編集するには、ハイパーリンクの後ろでBackSpaceをtypeする(]を削除)か、 OrgメニューのHyperlinksを開き,Literal linksを選択する.
C-c C-l tabで リンク補完が効くので
[[https:google.co.jp][gg]]
も簡単に入力できる
参考URL: リンクの仕方
図へのリンク
同様に簡単な方法で貼り込みできます。
[[./foga.png]]
Hugo-Github/actions使用時のリンク:ページ内リンク
htmlのタグを書きました。
リンク元 @@html:<a href="#tojump">@@ここからジャンプ@@html:</a>@@ リンク先 @@html:<div id="tojump">@@ジャンプ受け@@html:</div>@@
HTMLタグを書くと、もう少し自由になります。
htmlにexportした文字に色を付ける
orgでの方法がわからなかったので、htmlのタグを利用
htmlのタグをそのままexportするときは
@@html:<font color='red'>@@ hoge @@html:</font>@@
hoge
のようにタグを
@@html: tag @@
で囲む 。
または、html環境にする?
hoge fuga上記は以下ソース
#+begin_export html <font color='red'>hoge fuga </font> #+end_export
改行する。
html出力時に改行したいときは上記のようにしました。
@@html:<br>@@
特殊文字
バッファ中での設定の要約
キーワードには
ARCHIVE,LINK,PROPATIESTITLE,AUTHORなど TBLFM STARTUP LATEX_HEADER
などなど、 たくさんある
TeXの数式を書く(整理中)
以下の2つの方法があるようで、整理中です。
- org文書をhtmlにexportした時に表示
- org文書中の数式をHugoのサイトで表示
- org文書中に数式を表示
orgをhtmlにexportした時に表示
13.9.11 Math formatting in HTML export
最初の行に
#+HTML_MATHJAX: align: left indent: 5em tagside: left font: Neo-Euler
または
#+OPTIONS:LaTeX: t
を書くとhtmlにexportしたときに数式が現れましたが、 なくてもできました!???
org文書中の数式をHugoのサイトで表示
katexを用いる場合、 params.tomlとmath.htmlを設定したらなんとかなるようです。
$\int _0^\infty f(x) \dfrac{d g(t)}{dt}dx$
org文書中にinline表記するには、dvipngが必要です。
検索できるようにタグやプロパティをつける
タグ
見出しには複数のタグをつけることができる C-c C-c
タグは手入力もできるけど、初期指定できます。 https://maskaw.hatenablog.com/entry/2018/09/21/205910
1;; タグリスト
2(setq org-tag-alist '(("meeting" . ?m) ("office" . ?o) ("document" . ?d) ("kitting" . ?k) ("study" . ?s) ("travel" . ?t) ))プロパティ
プロパティは名前と値をもつことができる :(コロン)で前後を囲まれたキー(語句)と、その後に値をもつ1行で記述
C-c C-x p
* 見出し :PROPERTIES: :name: 1 :END:
見出し(* hoge / ** uga)に空行を挟まずに続けて記入する。
:Xyz_ALL:のようにすることで、:Xyz:の許容値を定義できる
とされているけどまだ理解できていない
プロパティの名前はデフォルトで
ARCHIVE CATEGORY CLOCK_MODELINE_TOTAL COLUMNS COOKIE_DATA CUSTOM_ID DESCRIPTION EXPORT_AUTHOR EXPORT_DATE EXPORT_FILE_NAME EXPORT_OPTIONS EXPORT_TEXT EXPORT_TITLE Effort HTML_CONTAINER_CLASS LOCATION LOGGING LOG_INTO_DRAWER NOBLOCKING ORDERED REPEAT_TO_STATE STYLE SUMMARY TABLE_EXPORT_FILE TABLE_EXPORT_FORMAT UNNUMBERED VISIBILITY
自分でつけた名前も自動登録される
タグやプロパティを検索する
C-c / は M-x org-sparse-tree が割り当てられています。 C-c / で 検索のルートに行き、 検索できるメニュー[/,m , p ,d ]などが現れる。
- タグの検索は C-c / m
- プロパティの検索は C-c / p
検索語に+をつけるとAND, | をつけるとOR -をつけると否定
プロパティの検索条件も指定できる. たとえば,以下はPROJECTタグを持ち, LOCATIONプロパティが「第1会議室」に一致する見出しを検索する.
* 第1回ORG会議 <2010-02-26 金 13:30-14:30> :PROJECT: :PROPERTIES: :LOCATION: 第1会議室 :END:
+PROJECT+LOCATION="第1会議室"
検索には以下の特殊プロパティ名も利用できる.
TODO TODOキーワード TAGS タグ(見出しに指定されているもの) ALLTAGS タグ(継承されたものも含む) CATEGORY カテゴリー PRIORITY 優先度 DEADLINE DEADLINEの日時 SCHEDULED SCHEDULEDの日時 CLOSED CLOSEDの日時 TIMESTAMP タイムスタンプ TIMESTAMP_IA 非活性なタイムスタンプ CLOCKSUM CLOCKの合計 ITEM 見出しの内容
数値の比較
数値の比較については,<, <=, > >= を使用できる. 日時の比較は,
「DEADLINE<"<2010-03-01>"」のように記述する. 「"<2010-03-01>"」のように直接日時を指定するのでなく,「"<now>"」,「"<today>"」,「"<tomorrow>"」,「"<+5d>"」のようにも記述できる.
検索結果を見やすくする
るびきちさんちでは、indirect-bufferを用いて、検索結果表示を見やすくす る方法あり
Emacs org-modeの検索機能を16倍パワーアップする方法
タグとプロパティ参考URL:屯遁のパズルとプログラミングの日記
エクスポートする
C-c C-eの後、dispatcherが開く。
defaultでExport可能な形式は,ASCII, HTML, iCalendar, LaTeX, and ODT.
hhならHTML, llとしたらtex(pdflatexが標準)に変換したファイルが保存される。
M-x org-latex-export-to-latex
または
M-x org-latex-export-as-latex
エクスポートオプション
ヘッダ部(frontmatter?)に以下を書くと便利かも
#+TITLE: HOGE
#+AUTHOR: HOGEFUGA
#+DATE: 1999/9/9
#+EMAIL: hoge@fuga
#+LANGUAGE: ja
#+OPTIONS: author:nil email:nil creator:nil toc:nil timestamp:nil ^:{} \n:t
OPTIONS行は以下をよく用います。
#+OPTIONS: toc:nil ^:{} timestamp:nil \n:t
^:{}はアンダーバーをそのまま表示する(下付き上付きを行わない。混在する ときは波括弧で囲む)ときは必須です。 \n:tはorgで書いた見た目の改行を有効にする。
export形式を増やす
init.elで(require 'ox-md)しておけば md形式、 (require 'ox-beamer)して おけば beamer形式にexportできる
ox-gfm(github flavored),ox-hugo,ox-pandoc,ox-reportなどいろいろあり
あとがき
2025.4.21頃:
- githubはorgに対応していることがわかったので、ほとんどのコンテンツを変換せずに orgのまま掲載
2025.4.7:
hugo-github/actionsでhtml表示するので、ox-pandocを用いてpandoc/gfm経由でmdに変換した。
srcの言語指定も落ちず、frontmatterも追記される。- 直接mdにexportしたら、src環境は全部pre扱いになる。
- ox-hugoを用いる場合、frontmatterに#+HUGO_BASE_DIR: ./と設定しておくと、 content/posts/に落ちる。 frontmatterは追記されない。
このhtmlはorgで作成後、exportしたもので、cssやindexも自動で追加されている。
参考URL:
[[file:MOvie-Howto::Layer毎にD&Dして取り込む。][MOVIE_howto]