Bagaimana cara menonaktifkan pembungkus baris di Spacemacs?

19

Saya memiliki pengalaman emacs terbatas. Mencoba mencari solusi untuk menonaktifkan pembungkus baris di Spacemacs tetapi tidak dapat menemukannya.

Solusi untuk masalah ini di Vim adalah dengan mengeksekusi set nowrap. Tapi itu tidak berfungsi di Spacemacs.

Solusi apa pun untuk ini akan sangat dihargai.

Vamsee
sumber
Saya belum pernah melihat Spacemacs sebelumnya, tapi sepertinya Anda ingin menonaktifkan auto-fill-mode. Coba M-x auto-fill-mode(yang akan menghidupkan dan mematikannya) dan, jika itu berfungsi dan itu yang Anda maksud, Anda dapat menonaktifkannya secara otomatis di file init Anda.
Dan
3
Coba yang berikut ini C-h v truncate-linessetelah memulai Spacemacs. Ini akan memberi tahu Anda apa yang diatur saat memulai.
Jonathan Leech-Pepin
@ JonathanLeech-Pepin Terima kasih, tip Anda membantu saya men-debug masalah ini.
Vamsee

Jawaban:

9

Tambahkan ini ke ~/.spacemacsfungsi konfigurasi Anda :

(add-hook 'hack-local-variables-hook (lambda () (setq truncate-lines t)))
syl20bnr
sumber
1
Saya dengan hormat tidak setuju dengan jawaban ini, karena pada dasarnya trumping (overriding) pengaturan sebelumnya (jika ada yang bertentangan) dan itu berfungsi dalam hal ini karena hack-local-variables-hookdipanggil nanti dalam proses pemuatan buffer. Solusi yang lebih baik adalah membuatnya spesifik mode-utama, atau merancang solusi global yang lebih baik yang tidak menggunakan hack-local-variables-hook.
hukum
@lawlist Saya setuju ini peretasan tetapi AFAIK tidak ada mode untuk garis terpotong. Jika Anda menginginkannya secara global, ini bisa rumit melalui mode kait utama, dan itu tidak akan lebih baik dari ini. Mungkin lebih baik menggunakan fungsi sakelar saja tetapi itu tidak menawarkan untuk memaksa aktivasi garis terpotong.
syl20bnr
29

Pada 23 November syl20bnr menambahkan toggle baru bernama spacemacs/toggle-truncate-lines, tersedia di SPC t l. Matikan lain yang juga berguna bagi Anda adalah spacemacs/toggle-visual-line-navigation, tersedia di SPC t L. Lihat Github melakukan .

Beginilah tampilan Anda dotspacemacs/user-configuntuk mengaktifkan kedua matikan:

(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)
)

Jika Anda tidak tahu di mana dotspacemacs/user-configitu, itu ada di .spacemacsfile Anda , tersedia dengan menekan SPC f e d.

The kait untuk spacemacs/toggle-visual-line-navigation-onini karena tidak bekerja secara global sebaliknya.

Mirzhan Irkegulov
sumber
Saya telah mencari hook mode itu sejak lama! Terima kasih!
hoosierEE
2
Ini setara dengan :set nowrap. Terima kasih!
shakerlxxv
1
SPC t Luntuk kemenangan mudah.
sjas
8

M-x toggle-truncate-lines RET adalah setara Emacs dari Vim :set wrap!

pengasuh
sumber
Dan secara terprogram:(setq truncate-lines t)
hukum
@nanny Terima kasih, saran Anda berfungsi untuk menonaktifkan pembungkus baris setelah memulai spacemacs. Tetapi saran @lawlist untuk menambahkan (setq truncate-lines t)~/ .spacemacs tidak berfungsi.
Vamsee
@Vamsee - Baris kode yang saya sarankan dimaksudkan untuk digunakan secara terprogram - misalnya, ketika menulis fungsi. Ini dapat digunakan sesuai permintaan dengan mengetik: M-x eval-expression RET (setq truncate-lines t) RET
lawlist
2
@Vamsee - truncate-linesadalah variabel buffer-local, yang berarti bahwa kode perlu dieksekusi saat fokus berada di dalam buffer target. Perpustakaan yang Anda kutip adalah kumpulan dari satu juta dan satu penyesuaian pengguna yang dipilih sebelumnya, termasuk pilihan tertentu berdasarkan berbagai mode utama. Untuk benar-benar melacak masalah Anda, Anda perlu menentukan mode utama apa yang Anda gunakan - maka perlu untuk memeriksa semua kait mode utama yang digunakan oleh perpustakaan yang bersangkutan, dan bahkan kemudian, mungkin Anda memiliki pengaturan di suatu tempat lain. Misalnya, visual-line-modememungkinkan pembungkus
hukum
1
@lawlist Akhirnya berhasil saya harus mengatur variabel khusus di dalam fungsi custom-set-variablesdan tidak dalam dotspacemacs/configfungsi. Terima kasih atas bantuan Anda.
Vamsee
2

Saya menambahkan ini ke file init saya di dalam dotspacemacs/user-configuntuk menonaktifkan pemutusan jalur otomatis:

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

Secara default, Anda dapat mengaktifkan / menonaktifkan dengan SPC t F.

Guy Gur-Ari
sumber
0

Saya akan berkomentar, tetapi saya tidak memiliki reputasi yang cukup, jadi saya hanya akan menulisnya di sini.

Ekspresi pertama Mirzhan Irkegulov bekerja, tetapi yang kedua tidak berhasil (add-hook 'text-mode-hook 'spacemacs/toggle-visual-line-navigation-on)

Sebaliknya, saya harus menggunakan (global-visual-mode t)

PENGGUNA INI MEMBUTUHKAN BANTUAN
sumber