.emacs
File konfigurasi saya menjadi lebih besar dan lebih besar dan saya ingin mendapatkan gambaran dan penataan yang lebih baik dengan menambahkan judul, subpos dan mampu menyembunyikan atau menunjukkannya seperti yang dapat saya lakukan dengan Emacs org-mode
.
Saya perhatikan bahwa saya dapat mengaktifkan org-mode
juga di .emacs
buffer dan memungkinkan untuk menambahkan heading dan menutupnya. Tetapi apakah Emacs / Aquamacs masih dapat memuat kode Elisp dari dokumen jika saya menambahkan org-mode
judul (yaitu, baris yang dimulai dengan satu tanda bintang atau lebih)?
Bisakah saya memiliki semua itu dalam satu file atau saya harus memiliki satu .*org
file dan kemudian secara teratur mengekspor kode Elisp ke file lain?
sumber
org
dari elpa, alih-alihorg
yang tersedia di emacs bersih? Tampaknyapackage
kode inisialisasi perlu ditarik keluarsettings.org
dan dimasukkan ke dalaminit.el
?init.el
:(require 'package) (package-initialize) (setq custom-file "~/.emacs.d/custom.el") (when (file-exists-p custom-file) (load custom-file)) (require 'org) (org-babel-load-file (expand-file-name "settings.org" user-emacs-directory))
Jika semua yang Anda inginkan adalah tampilan bagian dan navigasi selektif di antara judul, Anda tidak perlu mode Organisasi. Yang Anda butuhkan hanyalah mode Outline . Mode outline pada dasarnya adalah level header dan manajemen visibilitas bagian mode Org. Bahkan, mode Org pada awalnya adalah ekstensi penulis ke mode Outline, dan tumbuh, tumbuh, dan tumbuh ... Bahkan hari ini,
org-mode
berasal darioutline-mode
.Mode outline ada sebagai mode utama dan sebagai mode minor. Mode minor dapat digunakan dalam mode mayor apa pun. Anda dapat mengonfigurasinya untuk menggunakan format tajuk yang kompatibel dengan sintaks program Anda, dan banyak mode utama melakukannya, dengan mengatur
outline-regexp
variabel ke regexp yang cocok dengan awal tajuk. Misalnya, ini adalah nilai default dalam mode Emacs Lisp:yaitu header bagian dimulai dengan tiga atau lebih titik koma dan satu ruang, atau tanda kurung buka di margin kiri. Variabel
outline-level
berisi nama fungsi untuk menentukan kedalaman header; nilai default adalah panjang string yang cocok denganoutline-regexp
, dan mode Emacs Lisp menimpanya untuk menetapkan kedalaman yang lebih besar ke(
dan;;;###autoload
.Jika Anda tidak menyukai format tajuk default, setel variabel
outline-regexp
dalam file deklarasi variabel lokal . Ini yang saya gunakan - semua header bagian saya terdiri dari;;;
diikuti oleh urutan klasik bintang:Jika Anda ingin mode kecil Garis besar diaktifkan secara otomatis saat Anda memuat file, tambahkan baris berikut di bagian Variabel Lokal - perhatikan bahwa ini akan memperingatkan Anda tentang kode tidak aman di Emacs ≤23.x.
Perintah untuk outline mode minor menggunakan
C-c @
awalan yang agak tidak nyaman secara default. Saya memindahkannya keM-o
(saya tidak pernah menggunakan binding facemenu), Anda dapat memilih kunci lain, atau untuk mereplikasi binding mode Org (yang telah sedikit berbeda dari mode Outline).sumber
Pemrograman melek membawa Anda paling jauh ke sana, mode-org mendukungnya melalui org-babel . Dua solusi yang mungkin dijelaskan di blog @malabarba :
Cara paling sederhana adalah memuat mode-org, lalu menggunakan fitur unangling untuk memuat konfigurasi Emacs melek:
Atau (untuk menghindari pemuatan org sepenuhnya), penguraian dapat dilakukan dengan primitif Emacs Lisp:
sumber
Satu lagi suara untuk mode-outline. Sebagai contoh untuk pengorganisasian
.emacs
saya menggunakan sintaks berikut:bagian penting adalah
;;;
dan:\n
Berikut ini contohnya
.emacs
:Satu harus mengaktifkan
outline-minor-mode
dan kemudian dua stroke kunci yang diperlukan adalah:C-c @ C-t - menunjukkan struktur tingkat atas
menjadi di atas
C-c @ C-a - tampilkan lagi
Penggunaan khas adalah untuk menunjukkan struktur tingkat atas, pindah ke judul yang menarik, dan menunjukkan semua lagi.
sumber
#+STARTUP: overview
ataushow all
ataucontents
opsi.#
bukan tanda komentar, jadi penerjemah elisp bawaan emacs akan bingung ketika mengenai#+STARTUP
atau seperti ini. (atau apakah saya salah paham dengan komentar Anda?)STARTUP
direktif di dalamorgstruct-mode
, misalnya ini adalah buffer R tetapi ide yang sama: emacs.stackexchange.com/a/8065/2443Pada jawaban SO berikut Anda akan melihat bagaimana melakukannya, contoh proyek menggunakan satu file org tunggal atau banyak, apa manfaat menggunakan Tong dan tautan ke dokumentasi.
https://stackoverflow.com/questions/25430029/whats-the-best-way-to-package-my-emacs-installation-packages-and-config-so-tha/25430745#25430745
Saya mengubah konfigurasi saya ke org beberapa bulan yang lalu, dan saya tidak sepenuhnya puas dengannya. Dibutuhkan konfigurasi dan pembacaan manual org untuk memiliki file org berguna yang membuatnya mudah untuk mengedit kode elisp. Kita harus mengaktifkan font src block (dinonaktifkan secara default -> menggunakan variabel per-file), periksa apakah mode lain tidak bertentangan untuk mengedit blok src (mode isi-otomatis), dll. Kita tidak ingin menggunakan Cc
(backtick) (
org-edit-src-block`) untuk mengedit blok src. Dan itu sedikit menghalangi untuk debug.Saran saya adalah: mulai dengan memecah file init Anda menjadi potongan kecil, coba beberapa paket penyempitan di luar sana, gunakan
helm-swoop
untuk navigasi cepat, dan kemudian pertimbangkan untuk menggunakannyaorg-mode
.sumber
Saya baru-baru ini menginvestasikan waktu untuk melakukan hal itu. Saya telah berakhir dengan konfigurasi yang - dipertahankan dengan mode-org - menggunakan 'paket-pakai' untuk menginstal secara otomatis paket-paket yang hilang - adalah repo github yang sejenis instal-otomatis (plug-shameless plug: https://github.com / pascalfleury / emacs-config )
Saya telah 'bootstrap' beberapa mesin (Linux dan Mac) dengan mengkloning repo dan menambahkan satu baris di ~ / .emacs et voila. Saya siap sesuai keinginan saya.
sumber