Cách thay đổi kích thước phông chữ trong danh sách mã trong Org-Mode / Beamer


11

Tôi muốn giảm kích thước phông chữ được sử dụng cho các khối mã được bao gồm trong cài đặt trước Org-Mode / Beamer của tôi. Tôi có thể sử dụng lệnh nào để chỉ ảnh hưởng đến nội dung của srckhối?

Đây là một ví dụ hoạt động tối thiểu: khối mã gần cuối:

#+TITLE:     <<title>>
#+AUTHOR:    Dave
#+EMAIL:     
#+DATE:      <<date>>
#+DESCRIPTION:
#+KEYWORDS:
#+LANGUAGE:  en
#+OPTIONS:   H:3 num:t toc:t \n:nil @:t ::t |:t ^:t -:t f:t *:t <:t
#+OPTIONS:   TeX:t LaTeX:t skip:nil d:nil todo:t pri:nil tags:not-in-toc toc:nil \n:nil
#+INFOJS_OPT: view:nil toc:t ltoc:t mouse:underline buttons:0 path:http://orgmode.org/org-info.js
#+EXPORT_SELECT_TAGS: export
#+EXPORT_EXCLUDE_TAGS: noexport
#+LINK_UP:   
#+LINK_HOME: 
#+XSLT:




#+startup: beamer
#+LATEX_CLASS: beamer
#+LATEX_CLASS_OPTIONS: [bigger]
#+LATEX_HEADER: \usepackage{pgfpages}
#+LATEX_HEADER: \pgfpagesuselayout{resize to}[letterpaper,border shrink=5mm,landscape]
#+LATEX_HEADER: \usetheme{Dresden}
#+LATEX_HEADER: \usepackage[utf8x]{inputenc}
#+LATEX_HEADER: \setbeamertemplate{itemize items}[default]
#+LATEX_HEADER: \setbeamertemplate{enumerate items}[default]
#+LATEX_HEADER: \institute{} 

#+BEAMER_FRAME_LEVEL: 2
#+COLUMNS: %40ITEM %10BEAMER_env(Env) %9BEAMER_envargs(Env Args) %4BEAMER_col(Col) %10BEAMER_extra(Extra)


* Presentation

** Code Example
*** Text
:PROPERTIES:
:BEAMER_env: ignoreheading 
:BEAMER_col:0.5
:END:

- Text describing code
- More text

*** Graphics
:PROPERTIES:
:BEAMER_env: ignoreheading 
:BEAMER_col:0.5
:END:

% LOOK HERE!
% I want the text in this code block to be smaller
#+begin_src python
import sys
import os
import super_cool_module

value=super_cool_module.evalauate(42)
#+end_src

Câu trả lời:


12

Nó phụ thuộc vào việc bạn tải listingsgói trong .emacstệp của bạn . Bạn có thể kiểm tra nội dung của biến Emacs org-latex-default-packages-alist(sử dụng tổ hợp phím C-h vđể xem trợ giúp và nội dung của biến).

Nếu listingsgói không được tải, chế độ org sẽ sử dụng verbatimmôi trường LaTeX để gõ mã. Trong trường hợp đó, bạn có thể sử dụng fancyvrbgói LaTeX để sắp xếp mã theo phông chữ nhỏ hơn. Ví dụ: thêm phần sau vào tệp chế độ tổ chức của bạn:

#+LATEX_HEADER: \RequirePackage{fancyvrb}
#+LATEX_HEADER: \DefineVerbatimEnvironment{verbatim}{Verbatim}{fontsize=\scriptsize}

Điều này xác định lại verbatimmôi trường mặc định .

Nếu listingsgói được tải, bạn có thể thêm mã LaTeX sau vào tệp org của mình để lấy phông chữ nhỏ hơn cho mã:

#+LaTeX_HEADER: \lstset{basicstyle=\scriptsize\ttfamily}

Điều này sẽ đặt kiểu để sử dụng phông chữ đơn sắc có kích thước \scriptsize.

\tinylà cỡ chữ tương đối nhỏ nhất trong LaTeX. Theo thứ tự tăng kích thước mà bạn có thể thử: \scriptsize, \footnotesize, \small, mà tất cả đều nhỏ hơn \normalsize.


Làm cách nào tôi có thể đặt latex nội tuyến $F=ma$thành cỡ chữ nhỏ hơn - để xuất HTML hoặc latex?
147 giờ tối

Câu hỏi: sự khác biệt giữa RequirePackagevà là usepackagegì? (Tôi có một loạt usepackagetrong tập tin hiện tại của mình)
Dave

@Dave: không có nhiều khác biệt. Chính thức, usepackageđược sử dụng trong tài liệu LaTeX bình thường và RequirePackageđược sử dụng trong các gói ( .stytệp) LaTeX .
ph0t0nix

1

Giả sử bạn sử dụng gói danh sách, có nghĩa là bạn có trong phần mở đầu tệp chế độ org

#+LATEX_HEADER: \usepackage{listings}

bạn có thể đặt bất kỳ tùy chọn cụ thể có sẵn trong \lstset{}lệnh. Để đặt phông chữ latex scriptize cho một đoạn cụ thể, bạn có thể ghi đè các lstsettùy chọn mặc định như thế này:

#+ATTR_LATEX: :options basicstyle=\ttfamily\scriptsize
#+begin_src C
   some code
#+end_src
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.