散文を書くときにテキストをアウトライン/非表示/表示するにはどうすればよいですか?


9

Emacsを使って散文(具体的にはフィクション)を書きたいのですが。

私は過去にScrivenerとUlyssesを使用しましたが、それらには満足していません。Emacsを試したいのですが、慣れているワークフローを複製する方法がわかりません。

writeroom-modeは気晴らしのない環境を得るために使用しますが、それはパズルのほんの一部にすぎません。UlyssesとScrivenerを使用してテキストのチャンクに集中できる方法が好きです。この機能を複製する方法を知りたいのですが。org-modeまたは別のアウトライナーを使用して、テキストの一部に焦点を当て、残りを非表示にしたいと考えています。理想的には、次のスクリーンショットのように、手動でテキストの一部を配置できるサイドバー(Ulyssesなど)が欲しいです。

ユリシーズ

PS私は「Emacs for Writers PDF」を読みましたが、テキストの整理と構造化の必要性については触れていません。


4
実際に必要なものについて質問して投稿を明確にしてください(なお、投稿ごとに1つの個別の質問をし、必要に応じて複数の投稿を行います)。 org-modeアウトラインを作成します。これにより、特定のテキストに焦点を当て、残りの部分を移動できます。狭めると、画面からテキストが削除されます。
ダン

1
これは、これらの「ビッグリスト」質問の1つの候補になる可能性があります:)(この種の質問がSEで適切かどうかに関して、Metaに関する議論がありました:meta.emacs.stackexchange.com/questions/305/…)。トピックの詳細:Orgモードに再度アクセスする必要があります。それは巨大であり、テキストを構造化することに関しては、それは多くのことをすることがわかっています。しかし、Emacsはあなたが書くテキストの文法を理解することに欠けています。スペルチェックは、この点に関して提供する必要があるすべてです。
wvxvw 2015

1
@lawlistの作成者は常にメモの形で「サイドバー」を使用しています。これはデジタル版です。
Jason Mirk、2015

2
これは、emacsで本を書く方法 というタイトルの興味深い記事です。masteringemacs.org/article/how-to-write-a-book-in-emacselispと時間への投資の 例として、私が使用したさまざまなワードプロセッサを模倣するための基本的な動きを取得するために数日を費やしました私の専門職での長年にわたる(例:左/右の単語、上/下の段落、単語の削除)。Emacsの良い点は、強迫性障害が少しから多く、特定の方法で物事を必要とする人に最適です。
弁護士

1
Scrivenerには多すぎるものがあり、私が覚えている限り、プレーンテキストで書いてはいけません。Ulysses 3はかなり良いですが、クラッシュします。また、バッファを分割したり、マウスを使用したりせずにテキストの段落を移動したりすることができます。
Jason Mirk、2015

回答:


6

これが私があなたの目標とするものです:

  • 残りの部分を邪魔にならないようにしながら、特定のテキストのチャンクに集中する機能
  • 大きなテキストのチャンクをすばやく移動する機能。

このソリューションは、標準のEmacs機能のみを使用します。

  • org-mode
  • 狭める
  • 分割ウィンドウ
  • 間接バッファ

まず、ドキュメントをorg-mode(またはEmacsのoutline機能を利用する任意のモードで)作成すると、ヘッダー、サブヘッダーなどを使用してドキュメントを構造化し、次に本文を非表示または表示できます。それらの要素。散文の場合は、非常に要素的であることが役立つ場合があります。章のヘッダー、セクションのサブヘッダー、サブセクションのサブサブヘッダー、サブサブに至るまで... -個々の段落のヘッダー。

次に、org-modeヘッダーの本文を非表示にして、目の前の本文にのみ焦点を当てることができても、セクションヘッダーは画面に残ります。気が散ることがあります。その場合は、narrowそのヘッダーだけにバッファリングして(残りのすべてのヘッダーを一時的に非表示にして)widen、他のテキストをもう一度表示したいときにもう一度バッファリングできます。

3番目に、簡単なアウトラインビューとテキストをすばやく移動する機能を実現するために、分割ウィンドウと間接バッファーの組み合わせを使用できます。Emacsフレームを2つのウィンドウに対応するのに十分な幅にします(フレーム/ウィンドウの用語については、この投稿を参照してください)。やるM-x split-window-horizontallyあなたのフレーム内に二つのウィンドウのサイド・バイ・サイドを取得します。ドキュメントのあるウィンドウで、を実行しますM-x clone-indirect-buffer

これで、2つの異なるバッファに同じドキュメントの2つのリンクされたコピーができました。それらを2つのウィンドウに配置します。どちらにも同じテキストが含まれますが、2つのウィンドウで異なるように表示できます。

この機能を使用する1つの非常に便利な方法は、実際に文章を入力して編集するメイン編集ウィンドウを用意し、もう1つのウィンドウをアウトラインビューとして使用することです。本文を非表示にして、特定のセクション/サブセクション/のヘッダーのみを表示しますドキュメントの構造の概要を自分に与えるものは何でも。あなたが使用している場合-あなたは、その後の周りに迅速チャンクを移動することができorg-modeM-<up>そしてM-<down>実行org-metaupし、org-metadownこの文脈では、文書内のサブツリー(それ以下のヘッダおよびすべて)を上下に移動しますこれ、それぞれ。


1
これはほぼ完璧です。私はelispをいくつか書いて、私の好みに合わせてすべてをカスタマイズしました。結局それほど難しくなかった。もう1つは、サイドバーに配置し、キーを押してメインバッファーにロードする方法です。しかし、それは別の問題だと思います。
Jason Mirk、2015

2
あなたも楽しむかもしれませんclone-indirect-buffer-other-window
白熱

9

これは素晴らしい質問だと思います。フィクションの作家が必要と知らない超役立つモードがたくさんあると思います。偶然にもパリンプセストモードに遭遇しましたが、それなしでは生きられませんでした。他のフィクション作家がどのようなパッケージが役立つと思うか知りたいです。

ここに私が毎日使用するいくつかがあります:

  • palimpsest-mode。選択したテキストをファイルの下部に送信します。たぶん1時間に20回くらい使っています。
  • 器用な。@ttscoffのnvALTに似た、ディレクトリ内のテキストファイルのインクリメンタル検索。
  • オリベッティ。テキスト領域を小さくし、見栄えを良くします。
  • 噴水。あなたが脚本家なら。
  • 物事をすばやく見つけるためのHelm-swoop
  • 自動大文字化。自分で大文字を書く必要はありません。
  • Org-pomodoroが軌道に乗っています。
  • 必要に応じて単語をカウントするwcモード
  • そして何よりも、組織化する組織モード。私のトリックは、組織モードのコメントを使用して自分自身にメモ(たとえば、「このセクションにはより良いイントロが必要です」)を書くことです。そのため、エクスポートするときにコメントは含まれません。ああ、コマンドorg-narrow-to-subtreeを使用して、作業中のセクションだけに焦点を当てます。

2
これは素晴らしい!私は自分がpalimpsest-modeを何千回も使用しており、org-narrow-to-subtreeも使用しています。
Jason Mirk、2015

1
私はこれも探していました:github.com/titaniumbones/org-writers-roomを再現しているようですが、まだ正しく動作していません。これも興味深いです:github.com/theironsamurai/scribemacs
Jason

1
私の知る限り、org-writers-roomはまだ機能していません。それは素晴らしいアイデアですが、誰かがコードを書く必要があります。
白熱症者

1
ボランティアはいますか?
白熱灯

1

この回答は完全ではありませんが、画像があるため、コメントに投稿することはできません。あなたが話している目次は以下のようになりますか?

ここに画像の説明を入力してください

アウトラインを作成する別の方法は、実行することですM-s o^\s-*\*(これはと同等ですM-xoccur)。これは適切なアウトラインではありませんが、たいていの場合、ドキュメントのセクションの検索とナビゲートの問題に対する適切な解決策であると思います。


1
はい、私はスピードバーを試しましたが、それがフローティングウィンドウであるのが好きではありません。それは時代遅れのようです。
Jason Mirk、2015

2
@JasonMirkウィンドウではなくバッファをSpeedbarにするプロジェクトがありましたが、最終的にはそれを埋め込んだり、内容を置き換えたりする可能性があるさまざまなバッファコマンドが原因で、「正常に」動作するようにするのは困難です。以前はECBのようなバッファー構成マネージャーがあり、固定されたバッファーレイアウトを作成し、固定された場所にアウトラインを表示することもできましたが、私のECBでの作業経験は、多くの場合、私の邪魔になります。しかし、バッファを頻繁に操作する必要がない場合は、おそらくそのようなものがうまくいくでしょう。
wvxvw 2015

1
emacswiki.org/emacs/SrSpeedbarこれは私が話していたプロジェクトです。
wvxvw 2015

1
スピードバーのコンセプトが元のポスターが好きなものである場合、元のポスターが望むように動作させるために時間をかける価値があるかもしれません。elispライブラリを独自のカスタムセットアップにして、すべてのフレームを取り除き、それを任意のウィンドウに表示できるオンデマンドバッファーに変換するのに、約1時間(2年間は私のベルトの下でサルをして)かかりました。これは、Emacsを扱うときに時間を費やすところです。好きなもの(つまり、操作できるもの)を見つけ、それをニーズに合ったものに変更します。たとえば、generate-speedbar-noselect+ display
法律家、2015

使ったことはありませんが、ネオツリーはどうですか?
白熱症者
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.