Spacemacsで行の折り返しを無効にする方法は?


19

emacsの経験は限られています。Spacemacsで行の折り返しを無効にする解決策を見つけようとしましたが、見つかりませんでした。

Vimでこの問題を解決するには、を実行しset nowrapます。しかし、Spacemacsでは機能していません。

これに対する解決策は大歓迎です。


Spacemacsを初めて見たことがありますが、無効にしようとしているようですauto-fill-mode。試してみてM-x auto-fill-mode(オンとオフを切り替えます)、それが機能し、それが意図したとおりであれば、initファイルで自動的に無効にすることができます。
ダン

3
C-h v truncate-linesSpacemacsを起動した後、次を試してください。これにより、起動時に設定される内容がわかります。
ジョナサンリーチペピン14年

@ JonathanLeech-Pepinあなたのヒントが問題のデバッグを助けてくれてありがとう。
ヴァムゼー14年

回答:


9

これを~/.spacemacs設定関数に追加します。

(add-hook 'hack-local-variables-hook (lambda () (setq truncate-lines t)))

1
これは以前の設定(本質的に矛盾する場合)よりも本質的に優先(オーバーライド)さhack-local-variables-hookれており、バッファのロードプロセスの後半で呼び出されるため、このインスタンスで機能するため、この回答には敬意を表しません。より良い解決策は、メジャーモード固有にするか、を使用しないより良いグローバルソリューションを設計することhack-local-variables-hookです。
法律家14年

@lawlistハックだとは思いますが、知る限りでは行を切り捨てるモードはありません。あなたがそれをグローバルに望むなら、それはメジャーモードフックを介してトリッキーになる可能性があり、これより良くなることはありません。代わりにトグル機能を使用する方が良いかもしれませんが、切り捨てられた行を強制​​的にアクティブにすることはできません。
syl20bnr 14年

29

11月23日syl20bnrはと呼ばれる新しいトグル追加spacemacs/toggle-truncate-lines、上で利用可能にSPC t l。あなたトグル別にも便利です見つけることができspacemacs/toggle-visual-line-navigation、利用可能にしますSPC t LGithub commitをご覧ください。

これはdotspacemacs/user-config、両方のトグルを有効にする方法です。

(defun dotspacemacs/user-config ()
  "Configuration function for user code.
This function is called at the very end of Spacemacs initialization after
layers configuration. You are free to put any user code."
  (spacemacs/toggle-truncate-lines-on)
  ;; Visual line navigation for textual modes
  (add-hook 'text-mode-hook 'spacemacs/toggle-visual-line-navigation-on)
)

どこにあるかわからない場合dotspacemacs/user-configは、.spacemacsファイル内にあり、を押すと利用できますSPC f e d

フックのためには、spacemacs/toggle-visual-line-navigation-onそれが世界的にそうでない場合は機能しないためです。


私は昔からそのモードフックを探していました!ありがとう!
hoosierEE

2
これはと同等です:set nowrap。ありがとう!
shakerlxxv

1
SPC t L簡単な勝利のために。
sjas

8

M-x toggle-truncate-lines RET Vimと同等のEmacsです :set wrap!


プログラムにより:(setq truncate-lines t)
14年

@nannyありがとう、spacemacsを起動した後に行の折り返しを無効にするように提案します。しかし(setq truncate-lines t)、〜/ .spacemacs に追加する@lawlistの提案は機能しません。
ヴァムゼー14年

@Vamsee-私が提案したコードの行は、プログラムで使用することを意図しています -例えば、関数を書くとき。それは次のように入力して、必要に応じて使用することができます M-x eval-expression RET (setq truncate-lines t) RET
lawlist

2
@Vamsee- truncate-linesは、バッファローカル変数です。つまり、フォーカスがターゲットバッファ内にある間にコードを実行する必要があります。あなたが引用したライブラリは、さまざまな主要なモードに基づいた特定の選択を含む、100万および1つの事前選択されたユーザーカスタマイズのコレクションです。実際に問題を追跡するには、使用しているメジャーモードを指定する必要があります。その後、問題のライブラリで使用されているすべてのメジャーモードフックを確認する必要があります。そうしないと。たとえば、visual-line-modeラッピングを有効にします
ローリスト14年

1
@lawlist最後に、​​関数custom-set-variablesではなく関数内でカスタム変数を設定する必要がありましたdotspacemacs/config。ご協力いただきありがとうございます。
ヴァムゼー14年

2

dotspacemacs/user-config自動改行を無効にするために、これを内部のinitファイルに追加しました。

(spacemacs/toggle-auto-fill-mode-off)

デフォルトでは、でオン/オフを切り替えることができますSPC t F


0

私はコメントしただろうが、私は十分な評判を持っていないので、私はそれをここに書きます。

Mirzhan Irkegulovの最初の表現は機能しましたが、2番目の表現は機能しませんでした (add-hook 'text-mode-hook 'spacemacs/toggle-visual-line-navigation-on)

代わりに、私は使用する必要がありました (global-visual-mode t)

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.