Як змінити розмір шрифту в списках кодів в Org-Mode / Beamer


11

Я хотів би зменшити розмір шрифту, який використовується для блоків коду, включених до моєї програми Org-Mode / Beamer. Яку команду можна використовувати, щоб впливати лише на вміст srcблоку?

Ось мінімальний робочий приклад: блок коду підходить до кінця:

#+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

Відповіді:


12

Це залежить від того, завантажуєте ви listingsпакет у свій .emacsфайл. Ви можете перевірити вміст змінної Emacs org-latex-default-packages-alist(скористайтесь комбінацією клавіш, C-h vщоб переглянути довідку та вміст змінної).

Якщо listingsпакет не завантажений, в режимі org використовуватиме verbatimсередовище LaTeX для набору коду. У цьому випадку ви можете використовувати fancyvrbпакет LaTeX для набору коду меншим шрифтом. Наприклад, додайте у файл org-mode таке:

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

Це переосмислює verbatimсередовище за замовчуванням .

Якщо listingsпакет завантажений, ви можете додати наступний код LaTeX у свій файл org, щоб отримати менший шрифт для коду:

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

Це встановить стиль для використання однобічного шрифту за розміром \scriptsize.

\tiny- найменший відносний розмір шрифту в LaTeX. Для збільшення розміру ви можете спробувати: \scriptsize, \footnotesize, \small, які все менше \normalsize.


Як я можу зробити латексний вбудований $F=ma$формат меншого розміру - для експорту HTML чи латексу?
147 вечора

Питання: в чому різниця між RequirePackageі usepackage? (У мене є куча usepackageмого поточного файлу)
Дейв,

@Dave: різниці немає. Офіційно usepackageвикористовується в звичайному документі LaTeX і RequirePackageвикористовується в пакетах ( .styфайлах) LaTeX .
ph0t0nix

1

Якщо припустимо, що ви використовуєте пакет лістингу, це означає, що ви маєте в своєму органі режим преамбули

#+LATEX_HEADER: \usepackage{listings}

ви можете встановити будь-яку конкретну опцію, наявну в \lstset{}команді. Щоб встановити шрифт сценарію для латексу для певного фрагмента, ви можете змінити параметри за замовчуванням lstset, такі як:

#+ATTR_LATEX: :options basicstyle=\ttfamily\scriptsize
#+begin_src C
   some code
#+end_src
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.