web-dev-qa-db-ja.com

中央のMuttページャーを水平方向に

Muttを使用して大きな端末でメールを読むときに、メールを水平方向に中央揃えにする方法はありますか?電子メールのテキストを中央揃えにすることには興味がありませんが、テキストのブロックを左揃え、幅78文字、120文字の端末の中央に配置することに興味があります。

たとえば、今私はおおよそ次のように見えるものを持っています:

+------------------------------------------------------------------------------+
| This is an email displayed in mutt.                                          |
| Let's say it's 78 characters wide,                                           |
| even though it's clearly not.  Let's                                         |
| also pretend that the width of this                                          |
| box is 120 characters, which is                                              |
| also not true.                                                               |
+------------------------------------------------------------------------------+

次のようなものに近くなるようにmuttのページャーを構成する方法はありますか?

+------------------------------------------------------------------------------+
|                     This is roughly centered text that's                     |
|                     left-aligned and (let's pretend) also                    |
|                     78 characters wide.  I'm not worried                     |
|                     about perfection as much as I am just                    |
|                     getting the text closer to the middle                    |
|                     of the screen.                                           |
+------------------------------------------------------------------------------+

標準のドキュメントを検索しましたが、何も見つかりませんでした。この効果を得るには、デフォルトのポケットベル以外のものを使用する必要がありますか?

3
Aaron Massey

Mutt内のソリューション

私はこれを行う方法について多くを見つけていません。 Muttには* _format変数があります。これらを使用して、pager_formatindex_formatを制御できると思います。例:

set index_format="%4C %Z %[!%y-%m%d]  %-18.18F  (%4c) %s"
set pager_format="%S [%C] %n (%l) %s" 

しかし、私はこれがあなたが望むものをあなたに与えるとは思わない。また、ここでパッチを当てたバージョンのmuttを見つけました: Muttサイドバー(フォルダーリスト)patch ですが、これもサイドバーを作成し、必要なものが表示されないようです。

ss of mutt

したがって、mutt自体のソースを変更する以外は、運が悪いかもしれないと思います。

外部ページャーを使用していますか?

別の方法として、代わりにvimをMuttのポケットベルとして利用することもできます。私はこの投稿のタイトルを見つけました: MarkのMuttファンとヒントページ

抜粋

私のお気に入りのテキストエディタと統合します。

Muttはメールに重点を置いているため、独自のメッセージエディタは含まれていませんが、自分で選択したものを使用できます。これは機能だと思います。エディターとしてvimを使用して、ヘッダー全体を編集できるようにMuttを構成し、件名のすぐ下にカーソルを置いてメッセージを開きます。そのために、.muttrcファイルに以下を追加しました。

   set edit_headers
    set editor="vim +/^$ ++1"

メッセージに標準または非標準のヘッダーを追加する方法を心配する必要がないので、完全なヘッダーを編集するのは素晴らしいことです。他のテキスト編集を簡単に実行して、それらすべてを編集できます。

Vim側では、Muttが作成する一時ファイルを「メール」ファイルとして認識し、それに応じて強調表示してフォーマットするように構成しました。 .vimrcファイルの関連行は次のようになります。

   " set up syntax highlighting for my e-mail
    au BufRead,BufNewFile .followup,.article,.letter,/tmp/pico*,nn.*,snd.*,/tmp/mutt* :set ft=mail 

代替のポケットベルを設定すると、次のようにfoldcolumnvimに設定できます。

:set foldcolumn=<width>

ss of vim

注:これは、折り畳み列のガタースペースをこのように利用するちょっとしたハックですが、機能します。ただし、このアプローチでは最大12スペースに制限されます。

これがうまくいかない場合は、vimでアライメントを実行するための他のいくつかの方法を見てくださいSO Q&Aタイトル: 変更方法gvimの左マージン

参考文献

3
slm

これは完全に理想的なソリューションではありませんが、 VimRoom をインストールすると、muttページャーをvimに設定して、Vimroomをアクティブにすることができます。これを~/.muttrcに設定します:

set pager="view -c 'set nomod nolist' -c 'runtime! macros/less.vim' -c ':VimroomToggle' -c ':map q :VimroomToggle<CR>:q<CR>'" set Prompt_after=no

ここでは、基本的にvimlessタイプのポケットベルとして動作するless.vimをソースします。このアプローチの欠点は、less.vimおよびVimroomで定義されているキーバインディングと競合しているように見えることです。 、およびmuttのメッセージリストに戻るためにvimを終了する場合は、追加のキーストロークが必要です。

0
Dominique