はじめてのorg-mode: 特定の見出しだけ表示する

特定の見出しだけ表示する。 言い換えれば、特定の見出し以外を非表示にする。 一度に特定の見出し以外を非表示にすることはできないが、 次の手順をふめば可能だ。 今カーソルのある見出しのみを新しいバッファに表示する。 C-c C-x b (org-tree-to-indirect-buffer) バッファに移動する C-x o 今のバッファのみ表示 C-x 1 そのバッファで編集すると元のファイルにも反映される。 その見出しの内容で集中したい場合や、誰かに見せる場合に他のものを非表示にしたいときに便利だ。 元のバッファに戻る際は今いるバッファを消す(C-x k)かバッファを切り替えよう(C-x b RET)

2024年2月24日

はじめてのorg-mode: 見た目そのままテキストエキスポート

org-mode画面で誰かに説明した後、テキストを共有することがある。 しかしorgファイルのまま渡すと、orgファイルを知らない人に嫌がられるかもしれない。 ここではなるべくorg-mode画面の見た目そのままテキストファイルにする方法を考える。 前提 Org mode version 9.6.6 <p> 以下の設定をしていて、<br /> 見出しのアスタリスクは1つ表示。<br /> org-indent-modeが有効になっているものとする。 </p> <p> <em></em> </p> <pre class="example" id="nil"> (custom-set-variables ‘(org-hide-leading-stars t) ‘(org-startup-indented t) ) エクスポート前のorg-modeでの表示は以下のようになっているとする * サンプルorg top * レベル1 * レベル2-1 * レベル3-1 * レベル4 * レベル5-1 本文1 * レベル5-2 本文2 * レベル2-2 * レベル3-2 テキストファイルへのエクスポート方法 C-c C-e t u org-export-dispatch text UTF-8 デフォルトの場合 エクスポート結果。色々ごてごて出力されてしまう。 ...

2024年2月23日

はじめてのorg-mode:org2blogで自動アイキャッチ画像設定

WordPressテーマのCocoonには「アイキャッチ自動設定を有効にする」機能があり、記事内の一番はじめの画像をアイキャッチ画像に登録してくれる機能がある。 しかし、org2blogで画像入りの記事を投稿してもアイキャッチ画像は「NO IMAGE」になってしまう。 今回はその解決策。 プラグイン追加(推奨) プラグイン「XO Featured Image Tools」をインストールして有効化。以上! プラグイン追加せず、Cocoonだけでなんとかする方法(非推奨) プラグインを入れる前に色々調べたところ、Cocoon単体だけでもなんとかできた方法をメモしておく。 影響範囲がやや不明なのと、Cocoonがアップデートする度に修正が必要になるので非推奨。 <p> cocoon本体のphpファイルを修正する。<br /> 何かあったら戻せるようにしておこう。 </p> <p> 修正ファイル:wp-content/themes/cocoon-master/lib/auto-post-thumbnail.php </p> <p> <em></em> </p> <pre class="example" id="nil"> if (!$post) { return; } 上記のreturn文をコメントアウトしよう。(または全部削除) if (!$post) { //return; } $postについては関数内で参照していないし、アイキャッチ画像を設定するだけの関数なので 他に悪い影響は無いと思うが無いとは言い切れない。 本対応後、org2blogからの投稿でも無事にアイキャッチ画像が設定された。 環境情報 WordPress 6.3.3 Cocoon 2.7.0 XO Featured Image Tools 1.13.1

2024年2月10日

はじめてのorg-mode:Enterだけで新規項目

通常、新規項目として見出しを作る場合にはC-RET(Controlキーを押しながらEnterキー)またはM-RET(Altキーを押しながらEnterキー、またはEscキーを押した後、Enterキー)が必要になる。 Controlキーを使った操作は慣れているとはいえ、頻回Controlキーに左手小指を伸ばすのもつらい。 PowerPointなどはEnterを押すだけで新規見出しが作られる。 今回はorg-modeでこの動作が可能になるカスタマイズ方法を紹介する。 .emacsなどに以下を追加しよう。 __ (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)))) (with-eval-after-load 'org (define-key org-mode-map (kbd "RET") 'scimax/org-return)) (参考サイト) https://emacs.stackexchange.com/questions/24574/org-mode-default-to-alt-enter-for-bullets なお、こちらに改良版があるがbuffer-substringで警告が出るので当面は上のほうを使うことにする。 ...

2024年2月5日

はじめてのorg-mode: org-babelと組み合わせる

記事内にorg-babel org-babelを使うと記事内でコードが実行できて便利かもしれない。 以前作ったアイキャッチ画像コードを記事編集と同じ感じで作成する。 <ol class="org-ol"> <li> M-x org-insert-structure-template </li> <li> s (src) </li> </ol> <p> でブロックのテンプレートが挿入される。<br /> シェルを実行したい場合はshellを追加 </p> <ol class="org-ol"> <li> C-c C-cで実行 </li> </ol> <div class="org-src-container"> <label class="org-src-name"></label></p> <pre id="nil" class="src src-shell">convert -interline-spacing 15 -pointsize 110 -background <span style="color: #e9b96e;">"#70acce"</span> -fill white -font kiloji -size 1200x314 -gravity center label:<span style="color: #e9b96e;">'はじめてのorg-mode'</span> org007-1.png convert -interline-spacing 15 -background "#101841" -fill white -font TakaoGothic -size 1200x314 -gravity center label:‘org2babelと組み合わせる’ org007-2.png convert -append org007-1.png org007-2.png org007.png ...

2024年1月30日

はじめてのorg-mode: org2blogの使い方(復習)

org2blogのメニュー起動 M-x org2blog-user-interface キーボードショートカット C-c M-p g <p> New Bufferを選択(eキー) </p> New Bufferを選んだ時の初期テンプレートの内容を変更する org2blogメニューでValiables(Vキー)を選択 <p> ag: org2blog/wp-buffer-template を選択(agキー) </p> <p> customizeのところでEnter </p> <p> 内容を編集してC-x C-s </p> 画像を添付 リンクを編集(キーボードショートカット C-c C-l) ローカルのファイルの場合は file: を選択 その後ファイル名を入力 ドラフトに保存 org2blogメニューで Save Post Draft (jキー) 投稿 org2blogメニューで Publish Post(lキー)

2024年1月29日

はじめてのorg-mode: サブツリーで投稿する

サブツリー形式のメリット 1見出し1投稿とすることで、1つのファイルで複数の記事を管理することができる。 シリーズ物を投稿するときに便利そう。 ファイルの中身 * 007 org2blogでサブツリー形式で投稿する2 :PROPERTIES: :BLOG: myblog :OPTIONS: \n:t :CATEGORY: org-mode :TITLE: はじめてのorg-mode: サブツリーで投稿する2 :PERMALINK: org-mode-org2blog-use-subtree2 :END: ** サブツリー形式のテスト2 testdesu2 * 008 org2blogでサブツリー形式で投稿する3 :PROPERTIES: :BLOG: myblog :OPTIONS: \n:t :CATEGORY: org-mode :TITLE: はじめてのorg-mode: サブツリーで投稿する3 :PERMALINK: org-mode-org2blog-use-subtree3 :END: サブツリー形式のテスト3 testdesu3 見出しのところでorg2blog-user-interfaceを呼び出し、Subtreeのところの Save Post Draftを呼び出すと、その見出しの投稿がドラフトに保存される。 注意点 記事の中の見出しのところでコマンド実行すると、その見出し以下が違う記事 として扱われてしまう。何度もやってしまう・・・。 <p> 上記のように各投稿のPROPERTIESの中にOPTIONSで改行設定しても改行されなかった。<br /> 以下のようにファイル先頭に書いたところ、無事改行された。 </p> <div class="org-src-container"> <label class="org-src-name"></label></p> <pre id="nil" class="src src-org"><span style="color: #73d216;">#+OPTIONS: \n:t</span> ...

2022年4月19日

はじめてのorg-mode: アイキャッチ画像をコマンドから作成する

org2blogで使うアイキャッチ画像をコマンドから作成する org2blogでは画像のリンクを記述しておけば投稿時に画像をアップロードしてくれる。 さらにWordPressのテーマによっては本文中の画像をアイキャッチ画像に設定してくれる。 これでorg2blogでアイキャッチ画像も設定できるようになり、WordPressのGUIでアイ キャッチ画像を設定する煩わしさから解放される。 <p> 画像編集ツールでアイキャッチ画像を作成するのもいいが、シンプルにサクッと<br /> 作りたいこともある。 </p> <p> 今回はコマンドラインで画像を操ることができるImageMagickを使って、<br /> ゼロから(元画像不要で)アイキャッチ画像を作ってみる。 </p> 使用ツール <div class="outline-text-3" id="text-org6da37b3"> <p> <a href="https://imagemagick.org/">ImageMagick</a><br /> (コマンド名はconvert。紛らわしいけど) </p> </div> 使用したフォント <div class="outline-text-3" id="text-org4229759"> <ul class="org-ul"> <li> fonts-takao </li> <li> fonts-kiloji <p> ImageMagickで使用可能なフォントは以下のコマンドで一覧が出せる。 </p> <div class="org-src-container"> <label class="org-src-name"><em></em></label></p> <pre class="src src-sh" id="nil">convert -list font Font:の後に表示されるフォント名を指定すること。 日本語出力のためには日本語のフォントが必要なのでお好みのものを使おう。 はじめにfonts-notoを使おうとしたがインストールに755MB必要と言われて断念した。 上記のフォントはそれぞれ数十MB程度。 コマンド例 <div class="outline-text-3" id="text-org4a3336c"> <p> 今回のアイキャッチ画像は以下のコマンドで作成した。 </p> <div class="org-src-container"> <label class="org-src-name"><em></em></label></p> <pre class="src src-sh" id="nil">convert -interline-spacing 15 -pointsize 30 -background <span style="color: #e9b96e;">"#70acce"</span> -fill white -font kiloji -size 350x125 -gravity center <span style="color: #e9b96e;">\</span> label:<span style="color: #e9b96e;">'はじめてのorg-mode'</span> org005-1.png convert -interline-spacing 15 -background "#101841" -fill white -font TakaoGothic -size 350x125 -gravity center </span> label:‘org2blogで使うアイキャッチ画像を\nコマンドから作成する’ org005-2.png convert -append org005-1.png org005-2.png org005.png ...

2022年4月18日

はじめてのorg-mode: org2blogで構造ブロックはどのように表示されるか

org2blogでの構造ブロックの表示 org-modeではソースなどを構造ブロックで表現することができる(org-insert-structure-template)。 これをorg2blogで投稿したときにどのように表示されるか試してみた。 WordPressやテーマ、org2blogのバージョンによっては動作が異なる可能性あり。 <p> 参考 <a href="https://orgmode.org/manual/Structure-Templates.html">org公式マニュアル</a> </p> 結果 <div class="outline-text-3" id="text-org4a74c44"> </div> <div id="outline-container-orge5d0ea9" class="outline-4"> <h4 id="orge5d0ea9"> ASCII </h4> <div class="outline-text-4" id="text-orge5d0ea9"> </div> <ul class="org-ul"> <li> <a id="org5bb9f2e"></a>入力 <div class="outline-text-5" id="text-org5bb9f2e"> <div class="org-src-container"> <label class="org-src-name"><em></em></label></p> <pre class="src src-org-mode" id="nil">ascii #+begin_export ascii test1 1行目 2行目 test2 #+end_export ascii 結果 ascii <p> ascii </p> CENTER 入力 <pre class="example" id="nil">center #+begin_center test1 1行目 2行目 test2 #+end_center center ...

2022年4月16日

はじめてのorg-mode: org2blogでの改行の設定

改行しているのに改行にならない org2blogで文章を書いて投稿すると、改行しているのに文章がつながってしまう。 ダメな例 <div id="text-org0578b1e" class="outline-text-3"> <pre id="nil" class="example">1行目 2行目 上記のように書いて投稿すると、以下のように改行されない。 1行目 2行目 解決策 ファイル冒頭でオプションを追記する。 これによってorgファイルの改行がそのまま改行されるようになる。 <div class="org-src-container"> <label class="org-src-name"></label></p> <pre id="nil" class="src src-org"><span style="color: #73d216;">#+OPTIONS: \n:t</span> 1行目 2行目 上記のように書いて投稿すると、以下のように改行される。 1行目 2行目

2022年4月16日

はじめてのorg-mode: 見出しの操作

見出しの操作 今回はorg-modeの肝である見出しの操作について。 見出しの作成 <div id="text-org67bac23" class="outline-text-3"> <p> 見出し記号である*をそのまま入力してスペース、<br /> 文字を入力すれば見出しが作成できる。 </p> <pre id="nil" class="example">* 見出し1 せっかくキーバインドがあるのでそれを利用したい。 C-c RET または M-RET または C-RET※ ※Ctrlキーと検索キーを入れ替えたChromebookの場合、 入れ替え前のキーじゃないと動作しなかった。 今と同じレベルの見出し記号が入力されるので、続けて文字を入力すれば見出しが作成できる。 見出しのレベル変更 見出し作成前の手順 <div id="text-org9d574de" class="outline-text-4"> <p> 上記の手順で同じレベルの見出し記号を入力した後にTABキーを1回押すと1レベル下の見出し<br /> になり、さらにもう1回押すと1レベル上の見出しになる。<br /> その状態でさらにもう1回押すと元のレベルに戻る。(org-cycle) </p> </div> 見出し作成後の手順 <div id="text-org8e9d399" class="outline-text-4"> <p> 見出し記号の後に文字を打って見出しを作った後にレベルを変更することもできる。<br /> M-→ または C-c C-x l で見出しのレベルを1つ下げる。(org-metaleft)<br /> Mー← または C-c C-x r で見出しのレベルを1つ上げる。(org-metaright) </p> </div>

2022年4月14日

はじめてのorg-mode: 見出し記号の見た目を変える

org-modeをはじめよう Emacsは使っていてもorg-modeは駆け出し。 そんな私が日々学んだことを書き出し、 誰かの参考になれば幸いです。 こんな人向け <div id="text-orgc4e50b5" class="outline-text-3"> <ul class="org-ul"> <li> 色々なものをテキストで整理したい </li> <li> Emacsを使っている </li> <li> 最初はとっつきにくくても、最終的に自分に合ったものがいい </li> </ul> <p> テキストなので動きがサクサク。<br /> テキストなのでキーボードでの操作がしやすい。<br /> ホームポジションを保つことができ、整理に集中できる。 </p> <p> アウトライナー、アウトラインエディタとして文章を整理。ブログ記事執筆や書籍執筆に。<br /> タスク管理としてTODO整理。GTDの実践にも使える。 </p> <p> テキストファイルでなんでもこなす。それがorg-mode。<br /> なんでもできすぎて迷子になる。それがorg-mode。 </p> <p> なので日々少しずつ学んでいきます。 </p> </div> 見出し記号の見た目のカスタマイズ <div id="text-org806e788" class="outline-text-3"> <p> 扱う対象がテキストファイルというシンプルなものでも、<br /> 日々使うものだから、自分の感覚に馴染む表示にしたい。 </p> <div class="org-src-container"> <label class="org-src-name"></label></p> <pre id="nil" class="src src-emacs-lisp">M-x customize-option ...

2022年4月13日