Jika saya menulis sesuatu seperti *shrug*
dalam mode org, itu akan secara otomatis dikategorikan sebagai teks tebal . Bagaimana saya bisa mencegah itu, yaitu benar-benar telah *shrug*
muncul kata demi kata ketika diekspor?
Edit:
Saya masih ingin dapat menggunakan font tebal (tanpa harus mengubah sintaks bintang standar untuk teks tebal), dan seharusnya tidak masalah dengan format file apa file org saya diekspor, mis. Itu harus berfungsi untuk penurunan harga dan juga HTML ekspor.
Ini adalah beberapa hal penting , itu sebabnya ditulis dengan huruf tebal. Tetapi untuk hal lain, saya tidak punya Ide * mengangkat bahu *.
\ast{}shrug\ast{}
atau\star{}shrug\star{}
, mirip, dengan HTML Anda bisa menggunakan pengkodean entitas:,a;
atau jika menambahkan spasi sebelum atau setelah tanda bintang adalah pilihan, itu juga akan berfungsi.code
-tag, dan dalam penurunan harga memiliki backticks. Saya ingin itu tidak diformat dengan cara apa pun.\ast{}shrug\ast{}
disebutkan oleh wvxvw mungkin adalah pilihan terbaik Anda. itu mengekspor ke html sebagai∗shrug∗
dan ke lateks sebagai$\ast$shrug$\ast$
menggunakan entitas karakter yang sesuai.org-toggle-pretty-entities
menampilkannya sebagai karakter UTF8 dalam buffer org.Jawaban:
Jawaban ini terinspirasi setelah saran kolektif pada daftar GNU emacs-org-mode untuk menggunakan
org-entity
(C-h i g
(org) Special symbols
)\ast{}
alih-alih karakter spasi nol lebar (yang saya sarankan dalam jawaban saya yang lain di sini ).Di bawah ini adalah solusi umum di mana pengguna tidak perlu mengingat entitas org untuk berbagai simbol. Ini memasukkan entitas org (jika tersedia) ketika pengguna melakukannya
C-u SYMBOL
; bekerja untukC-u *
,C-u /
,C-u =
, dllJadi ketika pengguna mengetik
C-u *
,\ast{}
dimasukkan dan pesan di bawah ini ditampilkan di area gema,Jika
org-pretty-entities
diatur ket
atas, yang disisipkan\ast{}
akan ditampilkan sebagai*
.Jika
org-entity
tidak ada untuk karakter X dan jika penggunaC-u
X , X hanya dimasukkan 4 kali (sepertiC-u
biasanya).sumber
\*thisisnotbold\*
ada?org-entities
dokumentasinya.Menggunakan char unicode SPACE ZERO WIDTH SPACE
Anda dapat gagal penekanan parsing tebal dengan menambahkan karakter spasi nol-lebar (ditunjukkan oleh [ZWS] di cuplikan di bawah) sebelum tanda bintang pertama atau setelah tanda bintang kedua.
Cuplikan di bawah ini diekspor dengan baik ke HTML di pengujian saya:
[ZWS] sebelum tanda bintang pertama
[ZWS] setelah tanda bintang kedua
Anda dapat memasukkan ZERO WIDTH SPACE (nama unicode) dengan melakukan
C-x 8
RET200b
RET.Saya menggunakan ini sangat sering, jadi saya telah mengikat ini
C-x 8 0
.Memperbarui
Sesuai diskusi di milis emacs-org-mode , tidak disarankan menggunakan karakter non-ASCII; sebaliknya
org-entities
harus digunakan jika berlaku. Saya juga setuju dengan itu dan datang dengan ini solusi lain yang membuat memasukkanorg-entities
sangat mudah (C-u *
dalam hal ini).sumber
[email protected]
milis. Jika tertarik, Anda bisa mengikuti / menambah diskusi di sini .\ast{}
dalam file. Solusi saya yang lain hanya membuat memasukkan\ast{}
lebih cepat dan lebih mudah diingat.Dengan kata demi kata, jika Anda benar-benar bermaksud menggunakan beberapa markup di LaTeX yang diekspor, maka Anda bisa menggunakannya
=*shrug*=
. Namun jika Anda hanya ingin diekspor sebagai*shrug*
, dan Anda ingin melakukan ini setiap saat, saya akan merekomendasikan filter . Namun, jika Anda hanya memerlukan ini untuk beberapa contoh*shrug*
, Anda harus menggunakan alternatif yang disarankan oleh @wvxvw. Anda bisa melakukan ini dengan bersih menggunakan makro . Beberapa contoh mengikuti.Filter
Pada dasarnya filter di atas mencari
\textbf{..}
markup dalam string yang ditranskode, dan menggantinya\ast{}..\ast{}
, tanpa mengubah apa pun yang dibungkus di dalamnya{..}
. Saya belum menguji ekspresi reguler dan string pengganti, jadi mungkin ada kesalahan, tetapi Anda mendapatkan idenya. Demikian pula untuk menutupi backend lainnya, seseorang dapat memasukkan cuplikan tambahan seperti ini:Peringatan yang sama berlaku untuk ekspresi reguler di atas.
Makro
Sumber organisasi:
ekspor ke LaTeX sebagai:
dan ke HTML sebagai:
Tentu saja Anda dapat menambahkan backend sebanyak yang Anda inginkan ke makro.
Sunting: seperti yang ditunjukkan Kaushal dalam komentar, cuplikan ekspor untuk lateks adalah opsional dalam hal ini. Namun saya lebih suka menggunakannya setiap kali lateks telanjang terlibat, karena saya merasa agak sulit untuk melacak daftar
org-entities
dan aturan khusus di balik mengidentifikasi lateks telanjang di sumber Org.catatan:
HTML
, jadi mungkin ada beberapa kesalahan di bit masing-masing.sumber
#+macro: nobold \ast{}$1\ast{}
?ast
adalah salah satu anggotaorg-entities
daftar, yang menentukan seperti apa ekspor lateks, html, ascii, dll("ast" "\\ast" t "∗" "*" "*" "*")
. : . Urutan elemen dalam daftar itu adalah "nama, penggantian LaTeX, LaTeX mathp, penggantian HTML, penggantian ASCII, penggantian Latin1, penggantian utf-8".Ini dikendalikan oleh variabel org-penekanan-alist, dan dapat dengan mudah dimodifikasi.
org-emphasis
.customize-group
dan cari penekanan-orgsumber