วิธีการเปลี่ยนสีใน markdown cells สมุดบันทึก ipython / jupyter


109

ฉันต้องการจัดรูปแบบสตริงเฉพาะภายในเซลล์เท่านั้น ฉันเปลี่ยนรูปแบบของเซลล์นั้นเป็น "Markdown" แต่ฉันไม่แน่ใจว่าจะเปลี่ยนสีข้อความของคำเดียวได้อย่างไร

ฉันไม่ต้องการเปลี่ยนรูปลักษณ์ของสมุดบันทึกทั้งหมด (ผ่านไฟล์ CSS)

คำตอบ:


147

คุณสามารถใช้แท็ก html ดิบเช่น

foo <font color='red'>bar</font> foo

โปรดทราบว่าสิ่งนี้จะไม่รอดจากการแปลงโน้ตบุ๊กเป็นลาเท็กซ์

เนื่องจากมีข้อร้องเรียนเกี่ยวกับการเลิกใช้งานโซลูชันที่เสนอ พวกเขาถูกต้องโดยสิ้นเชิงและสก็อตต์ได้ตอบคำถามด้วยวิธีการล่าสุดนั่นคือ CSS อย่างไรก็ตามคำตอบนี้แสดงให้เห็นถึงวิธีการทั่วไปในการใช้แท็ก html ภายใน IPython เพื่อจัดรูปแบบเนื้อหาของเซลล์ที่มาร์กดาวน์เกินความสามารถในการมาร์กดาวน์บริสุทธิ์ที่มีอยู่


1
@jayarjo ใน IPython 2.1 นี้ยังใช้งานได้อย่างไม่มีที่ติ! คุณสามารถให้ข้อมูลเพิ่มเติมเกี่ยวกับสิ่งที่คุณพยายามได้หรือไม่?
Jakob

ใช้งานได้กับ Jupyter NB เวอร์ชัน 4.3.1
Austin

67

เช่นเดียวกับคำตอบของจาคอบคุณสามารถใช้แท็ก HTML เพียงแค่ทราบว่าcolorแอตทริบิวต์ของfont( <font color=...>) จะเลิกใช้ใน HTML5 ไวยากรณ์ต่อไปนี้จะเป็นไปตาม HTML5:

This <span style="color:red">word</span> is not black.

ข้อควรระวังเดียวกันกับที่จาคอบทำอาจยังคงมีผล:

โปรดทราบว่าสิ่งนี้จะไม่รอดจากการแปลงโน้ตบุ๊กเป็นลาเท็กซ์


@jayarjo ฉันเพิ่งลองใช้วิธีแก้ปัญหาใน IPython 1.1.0 และมันก็ใช้ได้ดีสำหรับฉัน คุณสามารถให้ข้อมูลเพิ่มเติมเกี่ยวกับสิ่งที่คุณพยายามและวิธีการตั้งค่าสภาพแวดล้อมของคุณได้หรือไม่? อย่าลืมเปลี่ยนประเภทเซลล์เป็น Markdown ซึ่งสามารถทำได้ผ่านเมนู Cell> Cell Type
Scott H

ฉันกำลังลองสิ่งนี้ใน github
jayarjo

@jayarjo คำถามนี้เกี่ยวกับการระบายสีข้อความในสมุดบันทึก IPython โดยเฉพาะซึ่งอนุญาตให้ใช้ข้อความแบบ markdown สำหรับลักษณะการทำงานของสีในไฟล์ GitHub markdown โปรดดูคำถามต่อไปนี้โดยเฉพาะในประเด็นนั้น คำตอบสั้น ๆ คือตอนนี้ดูเหมือนจะไม่มีวิธีระบุสีสำหรับข้อความในเอกสาร GitHub markdown stackoverflow.com/questions/11509830/…
Scott H

@ScottH: ฉันไม่เข้าใจว่าคุณหมายถึงอะไรโดย 'การแปลงสมุดบันทึกเป็นลาเท็กซ์' ฉันสามารถแปลงส่วนหนึ่งของข้อความในสแปนเป็นลาเท็กซ์และจูปิเตอร์ทำให้น้ำยางเป็นสีแดง
Shishir Pandey

@ShishirPandey: สิ่งที่ฉันอ้างถึงใน "การแปลงสมุดบันทึกเป็นลาเท็กซ์" คือโดยปกติคุณสามารถแปลงสมุดบันทึกเป็น LaTex (ภาษาเรียงพิมพ์) โดยใช้ipython nbconvert --to latex mynotebook.ipynb. หรือในสมุดบันทึกที่เปิดอยู่คุณสามารถไปที่ไฟล์> ดาวน์โหลดเป็น ... > PDF ผ่าน LaTex แต่ฉันเชื่อว่าข้อกำหนดสีผ่านสไตล์ html / css อาจแปลไม่ถูกต้องใน LaTex ฉันไม่ได้ติดตั้ง LaTex ในขณะนี้ดังนั้นฉันจึงไม่สามารถยืนยันอีกครั้งได้ แต่ฉันคิดว่าเป็นเช่นนั้น
Scott H


13

อีกวิธีหนึ่งในการทำเช่นนั้นคือการเข้าสู่สภาพแวดล้อม LaTeX ภายในโน้ตบุ๊กและเปลี่ยนสีจากที่นั่น (ซึ่งดีมากถ้าคุณใช้ LaTeX ได้คล่องกว่า HTML) ตัวอย่าง:

$\color{red}{\text{ciao}}$

จะแสดงเป็นciaoสีแดง



1

หากคำแนะนำข้างต้นไม่เหมาะกับคุณให้ลองใช้styleแอตทริบิวต์

**Notes**
<p style="color:red;">ERROR: Setting focus didn't work for me when I tried from jupyter. However it worked well when I ran it from the terminal</p>

สิ่งนี้ทำให้ฉันได้ผลลัพธ์ดังต่อไปนี้

ป้อนคำอธิบายภาพที่นี่


โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.