ดินถล่มสร้างสไลด์โชว์โดยใช้จาก markdown, ReST หรือสิ่งทอ สร้างจากเทมเพลต html5slides ของ Google
มาร์กดาวน์ต่อไปนี้จะสร้างสไลด์โชว์นี้
# Landslide
---
# Overview
Generate HTML5 slideshows from markdown, ReST, or textile.
![python](http://i.imgur.com/bc2xk.png)
Landslide is primarily written in Python, but it's themes use:
- HTML5
- Javascript
- CSS
---
# Code Sample
Landslide supports code snippets
!python
def log(self, message, level='notice'):
if self.logger and not callable(self.logger):
raise ValueError(u"Invalid logger set, must be a callable")
if self.verbose and self.logger:
self.logger(message, level)
python
และโมดูลต่อไปนี้:
jinja2
pygments
สำหรับการระบายสีไวยากรณ์ของบล็อกโค้ด markdown
สำหรับมาร์กดาวน์docutils
สำหรับข้อความที่มีโครงสร้างใหม่textile
สำหรับสิ่งทอ watchdog
สำหรับการรับชม / การสร้างใหม่อัตโนมัติด้วยแฟล็ก -w
ติดตั้ง Landslide เวอร์ชันเสถียรล่าสุดด้วยตัวจัดการแพ็คเกจ python เช่น pip
:
$ pip install landslide
หากคุณต้องการที่จะอยู่บนขอบ:
$ git clone https://github.com/adamzap/landslide.git
$ cd landslide
$ python setup.py build
$ sudo python setup.py install
.md
, .markdn
, .mdwn
, .mdown
หรือ .markdown
h1
เดียว (เช่น # My Title
)---
ในมาร์กดาวน์) ยกเว้นที่ส่วนท้ายของไฟล์ mdh1
!lang
โดยที่ lang
คือตัวระบุภาษาที่รองรับ pygment เป็นบรรทัดแรกที่เยื้อง.rst
หรือ .rest
( ไม่รองรับ .txt
)----
ใน RST) ยกเว้นที่ส่วนท้ายของไฟล์ RST---
เช่นเดียวกับใน markdown landslide slides.md
หรือ landslide slides.rst
presentation.html
ที่สร้างขึ้นใหม่ของคุณหรือรับเป็นเอกสาร PDF หาก Prince ได้รับการติดตั้งและพร้อมใช้งานในระบบของคุณ:
$ landslide README.md -d readme.pdf
$ open readme.pdf
h
เพื่อสลับการแสดงวิธีใช้left arrow
และ right arrow
เพื่อนำทางt
เพื่อสลับสารบัญสำหรับการนำเสนอของคุณ ชื่อสไลด์เป็นลิงค์ESC
เพื่อแสดงภาพรวมการนำเสนอ (Exposé)n
เพื่อสลับการมองเห็นหมายเลขสไลด์b
เพื่อสลับการทำให้หน้าจอว่างเปล่าc
เพื่อสลับบริบทสไลด์ปัจจุบัน (สไลด์ก่อนหน้าและถัดไป)e
เพื่อสร้างสไลด์ให้เต็มพื้นที่ว่างทั้งหมดภายในเนื้อหาเอกสารS
เพื่อสลับการแสดงลิงก์ไปยังไฟล์ต้นฉบับสำหรับแต่ละสไลด์มีหลายตัวเลือกให้เลือกโดยใช้บรรทัดคำสั่ง:
-h, --help show this help message and exit
-c, --copy-theme Copy theme directory into current presentation source
directory
-b, --debug Will display any exception trace to stdin
-d FILE, --destination=FILE
The path to the to the destination file: .html or .pdf
extensions allowed (default: presentation.html)
-e ENCODING, --encoding=ENCODING
The encoding of your files (defaults to utf8)
-i, --embed Embed stylesheet and javascript contents,
base64-encoded images in presentation to make a
standalone document
-l LINENOS, --linenos=LINENOS
How to output linenos in source code. Three options
availables: no (no line numbers); inline (inside
tag); table (lines numbers in another cell, copy-paste
friendly)
-o, --direct-output Prints the generated HTML code to stdout; won't work
with PDF export
-q, --quiet Won't write anything to stdout (silent mode)
-r, --relative Make your presentation asset links relative to current
pwd; This may be useful if you intend to publish your
html presentation online.
-t THEME, --theme=THEME
A theme name, or path to a landlside theme directory
-v, --verbose Write informational messages to stdin (enabled by
default)
-w, --watch Watch the source directory for changes and
auto-regenerate the presentation
-x EXTENSIONS, --extensions=EXTENSIONS
Comma-separated list of extensions for Markdown
-m, --math-output Enable mathematical output using mathjax
Landslide ช่วยให้สามารถกำหนดค่าการนำเสนอของคุณโดยใช้ไฟล์การกำหนดค่า cfg
ดังนั้นจึงทำให้การรวมไดเร็กทอรีต้นทางและการนำไดเร็กทอรีต้นทางไปใช้ซ้ำในงานนำเสนอต่างๆ ง่ายขึ้น ไฟล์การกำหนดค่าถล่มทลายใช้ไวยากรณ์ cfg
หากคุณรู้จักไฟล์ ini
คุณจะได้ภาพ ด้านล่างนี้เป็นไฟล์การกำหนดค่าตัวอย่าง:
[landslide]
theme = /path/to/my/beautiful/theme
source = 0_my_first_slides.md
a_directory
another_directory
now_a_slide.markdown
another_one.rst
destination = myWonderfulPresentation.html
css = my_first_stylesheet.css
my_other_stylesheet.css
js = jquery.js
my_fancy_javascript.js
relative = True
linenos = inline
อย่าลืมประกาศมาตรา [landslide]
ครับ ไฟล์การกำหนดค่าทั้งหมดจะต้องลงท้ายด้วยนามสกุล .cfg
หากต้องการสร้างงานนำเสนอตามที่กำหนดค่าไว้ ให้เรียกใช้:
$ cd /path/to/my/presentation/sources
$ landslide config.cfg
คุณสามารถใช้มาโครเพื่อปรับปรุงการนำเสนอของคุณได้:
เพิ่มบันทึกลงในสไลด์ของคุณโดยใช้ .notes:
เช่น:
# My Slide Title
.notes: These are my notes, hidden by default
My visible content goes here
คุณสามารถสลับการแสดงบันทึกได้โดยกดปุ่ม 2
มาโครอื่นๆ บางตัวยังใช้งานได้ตามค่าเริ่มต้น: เพิ่มรหัส QR ในงานนำเสนอของคุณโดยใช้คำสำคัญ คุณยังสามารถเพิ่มบันทึกย่อของผู้นำเสนอลงในแต่ละสไลด์ได้โดยติดตามเนื้อหาสไลด์ที่มีหัวข้อว่า "บันทึกย่อของผู้นำเสนอ" กดปุ่ม 'p' เพื่อเปิดมุมมองผู้นำเสนอ มาโครใช้ในการแปลงเนื้อหา HTML ของสไลด์ของคุณ คุณสามารถลงทะเบียนมาโครของคุณเองได้โดยการสร้างคลาสที่ได้รับ plop สิ่งนี้จะแสดงสไลด์ใด ๆ ดังต่อไปนี้: ดูเอกสารประกอบเกี่ยวกับส่วนขยาย Markdown ที่มีอยู่ที่นี่: ธีม Landslide คือไดเร็กทอรีที่มีโครงสร้างเรียบง่ายนี้: หากธีมไม่มีไฟล์ HTML และ JS ไฟล์เหล่านั้นจากธีมเริ่มต้นจะถูกนำมาใช้ CSS ไม่ใช่ทางเลือก สุดท้าย คุณยังสามารถคัดลอกไดเร็กทอรีธีมทั้งหมดไปยังงานนำเสนอของคุณได้โดยส่งตัวเลือก หากคุณไม่ต้องการยุ่งยากกับการสร้างธีมของคุณเอง คุณสามารถรวมไฟล์ css และ js ของผู้ใช้ของคุณเองลงในงานนำเสนอที่สร้างขึ้นได้ คุณลักษณะนี้จะใช้ได้เฉพาะเมื่อคุณใช้ไฟล์การกำหนดค่าแบบถล่มทลาย โดยการตั้งค่าแฟล็ก สิ่งเหล่านี้จะเชื่อมโยงสไตล์ชีต หมายเหตุ: เส้นทางไปยังไฟล์ css และ js จะต้องสัมพันธ์กับไดเร็กทอรีที่คุณเรียกใช้คำสั่ง หากคุณตั้งใจจะเผยแพร่งานนำเสนอ HTML ของคุณทางออนไลน์ คุณจะต้องใช้ตัวเลือก ด้วยวิธีนี้ คุณเพียงแค่ต้องโฮสต์ไดเร็กทอรีการนำเสนอทั้งหมดไว้ที่เว็บเซิร์ฟเวอร์ แน่นอนว่าไม่จำเป็นต้องใช้ Python หรือ PHP หรือสิ่งอื่นใดนอกจากเว็บเซิร์ฟเวอร์ HTTP (เช่น Nginx) เพื่อโฮสต์การนำเสนออย่างถล่มทลาย ดู https://github.com/adamzap/landslide/contributors.fx: foo bar
จะเพิ่มคลาส foo
และ bar
ให้กับองค์ประกอบสไลด์ รหัส QR
.qr
:
.qr: 450|http://github.com/adamzap/landslide
หมายเหตุของผู้นำเสนอ
การลงทะเบียนมาโคร
landslide.macro.Macro
ใช้เมธอด process(content, source=None)
และส่งคืนทูเพิลที่มีเนื้อหาที่แก้ไขและคลาส css บางคลาสที่คุณอาจต้องการเพิ่มลงในสไลด์ของคุณ
!python
import landslide
class MyMacro(landslide.Macro):
def process(self, content, source=None):
return content + '
!html
การใช้งานขั้นสูง
การตั้งค่าไฟล์ปลายทางที่กำหนดเอง
$ landslide slides.md -d ~/MyPresentations/presentation.html
การทำงานกับไดเร็กทอรี
$ landslide slides/
การทำงานกับเอาต์พุตโดยตรง
$ landslide slides.md -o | tidy
การใช้ธีมถล่มทลายสำรอง
$ landslide slides.md -t mytheme
$ landslide slides.md -t /path/to/theme/dir
การฝังภาพที่เข้ารหัส Base-64
$ landslide slides.md -i
ส่งออกเป็น PDF
$ landslide slides.md -d presentation.pdf
การเปิดใช้งานสัญกรณ์ทางคณิตศาสตร์
Note that this require writing the slides in ReST format as well as
using Docutils 0.8 or newer.
$ landslide slides.rst -m
การเปิดใช้งานส่วนขยาย Markdown
$ landslide slides.md -x abbr
ธีม
mytheme/
|-- base.html
|-- css
| |-- print.css
| `-- screen.css
`-- js
`-- slides.js
--copy-theme
ไปยังคำสั่ง landslide
:
$ landslide slides.md -t /path/to/some/theme --copy-theme
สไตล์ชีตผู้ใช้และ Javascript
css
และ/หรือ js
:
[landslide]
theme = /path/to/my/beautiful/theme
source = slides.mdown
css = custom.css
js = jquery.js
powerpoint.js
custom.css
และทั้งไฟล์ jquery.js
และ powerpoint.js
ภายในส่วน ของไฟล์ html การนำเสนอ
landslide
การเผยแพร่งานนำเสนอของคุณทางออนไลน์
--relative
เช่นเดียวกับ --copy-theme
เพื่อให้มีลิงก์เนื้อหาทั้งหมดที่เกี่ยวข้องกับรากของงานนำเสนอของคุณ
$ landslide slides.md --relative --copy-theme
ตัวแปรธีม
base.html
ต้องเป็นไฟล์เทมเพลต Jinja2 ซึ่งคุณสามารถใช้ควบคุมตัวแปรเทมเพลตต่อไปนี้:css
: เนื้อหาสไตล์ชีท พร้อมใช้งานผ่านสองปุ่ม print
และ screen
ทั้งสองมี:path_url
จัดเก็บ url ไปยังเส้นทางไฟล์เนื้อหาcontents
ที่เก็บเนื้อหาเนื้อหาjs
: เนื้อหาจาวาสคริปต์โดยมี:path_url
จัดเก็บ url ไปยังเส้นทางไฟล์เนื้อหาcontents
ที่เก็บเนื้อหาเนื้อหาslides
: รายการสไลด์ โดยแต่ละรายการมีคุณสมบัติเหล่านี้:header
: ชื่อสไลด์content
: เนื้อหาสไลด์number
: หมายเลขสไลด์embed
: เอกสารปัจจุบันเป็นแบบสแตนด์อโลนหรือไม่num_slides
: จำนวนสไลด์ในการนำเสนอปัจจุบันtoc
: สารบัญ แสดงรายการส่วนของเอกสาร แต่ละส่วนมีคุณสมบัติเหล่านี้:title
: ชื่อส่วนnumber
: หมายเลขสไลด์ของส่วนsub
: ส่วนย่อย ถ้ามี ขอบเขตสไตล์
css/screen.css
ที่มาพร้อมกับธีมที่คุณใช้css/print.css
ผู้เขียน
ผู้เขียนต้นฉบับและหัวหน้าฝ่ายพัฒนา
ผู้เขียนร่วม
ผู้ร่วมให้ข้อมูล
ผู้เขียนและผู้มีส่วนร่วมเทมเพลตฐาน (html5-สไลด์)