Я пытаюсь использовать пакет faktor в LyX для оператора частного. Однако LyX не распознает команду \faktor, хотя я установил пакет с помощью Tex Live.
Я новичок в LyX и LaTeX, так что я могу делать что-то неправильно. Вот что я сделал:
- Я скачал пакет с помощью Tex Live Shell.
- Перезапустил Lyx.
- В своем документе я перешел в Документ -> Настройки -> Преамбула LaTeX и добавил \usepackage{faktor}.
Теперь, когда я пытаюсь использовать \faktor в математической среде, Lyx не распознает команду, поэтому я получаю красный знак \faktor, который ничего не делает.
после консультации с chatgpt по этому вопросу он предложил мне перейти в Document -> Settings -> Document Class там он сказал написать \usepackage{faktor} в Class Options -> Custom и это должно сделать работу. К сожалению, это ничего не изменило.
Вот дополнительная информация, которая, по моему мнению, может помочь решить эту проблему:
- Этот документ написан в виде статьи (стандартный класс с дополнительными размерами шрифта).
- Документ, над которым я работаю, в основном написан на иврите, но содержит также немного английского.
- Этот документ представляет собой краткий обзор курса математики, поэтому примерно половина его посвящена математике.
- Я использую Lyx2.3
Любая помощь будет очень признательна. Спасибо.
Если кто-то знает какой-либо альтернативный способ (в пакете или как-то иначе) использования оператора частного, похожего на тот, что в пакете faktor, пожалуйста, не стесняйтесь и репостите. Это тоже было бы очень полезно.
решение1
LyX имеет функционал для добавления новых математических макросов, которые он будет распознавать в уравнениях (он имеет свои ограничения, но в большинстве случаев работает вполне нормально). Он описан в разделе 20.2 руководства в Help->Math
.
В вашем случае я бы предпринял следующие шаги:
Загрузите
faktor
пакет, добавив строку\usepackage{faktor}
вDocument->Settings->LaTeX Preamble
.Загрузите
amssymb
пакет (чтоfaktor
требует без его загрузки), выбравalways
вDocument->Settings->Math Options->amssymb
.Вставьте вставку математического макроса
Insert->Math->Macro
, нажав на кнопку с изображением\foo
на панели инструментов.выберите неиспользуемое имя (например, не Faktor) для имени макроса (я выберу
foo
, но вам, вероятно, следует выбрать имя, которое вам подойдет) и введите его в поле Имя макросаВ поле TeX вставки введите
\faktor
+,\{
затем внутри поля в фигурных скобках введите\#
+1
, и еще раз для второго аргумента, но2
уже с1
.В поле LyX введите
\nicefrac
, затем в верхнем поле введите\#
+1
и в нижнем поле введите\#
+2
.
Обратите внимание, что в LyX 2.4, который должен выйти в ближайшее время, вы сможете использовать имя faktor
в качестве имени макроса и оставить поле TeX пустым.
После этих шагов при вводе \foo
пробела в уравнении вы должны увидеть следующее:
Вот пример файла
#LyX 2.3 created this file. For more info see http://www.lyx.org/
\lyxformat 544
\begin_document
\begin_header
\save_transient_properties true
\origin unavailable
\textclass article
\begin_preamble
\usepackage{faktor}
\end_preamble
\use_default_options true
\maintain_unincluded_children false
\language english
\language_package default
\inputencoding auto
\fontencoding global
\font_roman "default" "default"
\font_sans "default" "default"
\font_typewriter "default" "default"
\font_math "auto" "auto"
\font_default_family default
\use_non_tex_fonts false
\font_sc false
\font_osf false
\font_sf_scale 100 100
\font_tt_scale 100 100
\use_microtype false
\use_dash_ligatures true
\graphics default
\default_output_format default
\output_sync 0
\bibtex_command default
\index_command default
\paperfontsize default
\spacing single
\use_hyperref false
\papersize default
\use_geometry false
\use_package amsmath 1
\use_package amssymb 2
\use_package cancel 1
\use_package esint 1
\use_package mathdots 1
\use_package mathtools 1
\use_package mhchem 1
\use_package stackrel 1
\use_package stmaryrd 1
\use_package undertilde 1
\cite_engine basic
\cite_engine_type default
\biblio_style plain
\use_bibtopic false
\use_indices false
\paperorientation portrait
\suppress_date false
\justification true
\use_refstyle 1
\use_minted 0
\index Index
\shortcut idx
\color #008000
\end_index
\secnumdepth 3
\tocdepth 3
\paragraph_separation indent
\paragraph_indentation default
\is_math_indent 0
\math_numbering_side default
\quotes_style english
\dynamic_quotes 0
\papercolumns 1
\papersides 1
\paperpagestyle default
\tracking_changes false
\output_changes false
\html_math_output 0
\html_css_as_file 0
\html_be_strict false
\end_header
\begin_body
\begin_layout Standard
\begin_inset FormulaMacro
\newcommand{\foo}[2]{\faktor{#1}{#2}}
{\nicefrac{#1}{#2}}
\end_inset
\end_layout
\begin_layout Standard
\begin_inset Formula
\[
\foo ab
\]
\end_inset
\end_layout
\end_body
\end_document
решение2
Вы последовали совету изучить и скомпилировать LaTeX вне LyX? Это значительно облегчит вам задачу...
Вот один из способов сделать это.
Проявка с помощью латекса
Вот как это выглядит в латексе. Ключевые моменты:
- попытка стандарта
\frac{}{}
: не очень хорошо - следующийподход рейзбокса, с некоторыми упрощениями
- положить его в
\newcommand
и попробовать его - так что
\newcommand\faktor[2]{\raisebox{5pt}{#1} / \raisebox{-5pt}{#2}}
, похоже, справляется со своей задачей (на данный момент достаточно хорошо)
\documentclass[10pt,a4paper]{article}
% ~~~ mimicking: https://tex.stackexchange.com/a/27735/245790
\newcommand\faktor[2]{\raisebox{5pt}{#1} / \raisebox{-5pt}{#2}}
% ~~~~~~~~~~~~~~~~~~
\begin{document}
\begin{tabular}{lll}
for reference & $\frac{\Re}{m_1 \Re}$ & math mode\\
\textit{(empty line)}\\
trying raisboxes& X\ \raisebox{5pt}{$\Re$} / \raisebox{-5pt}{$m_1 \Re$} & X for reference of baselines\\
moving it into a newcommand& X\ \faktor{$\Re$}{$m_1 \Re$} & see preambel\\
trying math mode&$A = \faktor{$\Re$}{$m_1 \Re$}$ & at least this works\\
\end{tabular}
\end{document}
Использование с Lyx
Приготовьтесь к щелчку.
Чтобы скопировать эту \newcommand в преамбулу, используйте Documents/Settings
:
Введите КРАСНЫЙ ЯЩИК (боль? ужас? нет: не-Gui-ed Latex-код ...)
$A = \faktor{$\Re$}{$m_1 \Re$}$
Окончательный файл Lyx (к сожалению, моя установка не может его запустить, так что...) *** скопируйте, сохраните и загрузите в Lyx:
#LyX 2.3 created this file. For more info see http://www.lyx.org/
\lyxformat 544
\begin_document
\begin_header
\save_transient_properties true
\origin unavailable
\textclass article
\begin_preamble
\newcommand\faktor[2]{\raisebox{5pt}{#1} / \raisebox{-5pt}{#2}}
\end_preamble
\use_default_options true
\maintain_unincluded_children false
\language english
\language_package default
\inputencoding auto
\fontencoding global
\font_roman "default" "default"
\font_sans "default" "default"
\font_typewriter "default" "default"
\font_math "auto" "auto"
\font_default_family default
\use_non_tex_fonts false
\font_sc false
\font_osf false
\font_sf_scale 100 100
\font_tt_scale 100 100
\use_microtype false
\use_dash_ligatures true
\graphics default
\default_output_format default
\output_sync 0
\bibtex_command default
\index_command default
\paperfontsize default
\spacing single
\use_hyperref false
\papersize default
\use_geometry false
\use_package amsmath 1
\use_package amssymb 1
\use_package cancel 1
\use_package esint 1
\use_package mathdots 1
\use_package mathtools 1
\use_package mhchem 1
\use_package stackrel 1
\use_package stmaryrd 1
\use_package undertilde 1
\cite_engine basic
\cite_engine_type default
\biblio_style plain
\use_bibtopic false
\use_indices false
\paperorientation portrait
\suppress_date false
\justification true
\use_refstyle 1
\use_minted 0
\index Index
\shortcut idx
\color #008000
\end_index
\secnumdepth 3
\tocdepth 3
\paragraph_separation indent
\paragraph_indentation default
\is_math_indent 0
\math_numbering_side default
\quotes_style english
\dynamic_quotes 0
\papercolumns 1
\papersides 1
\paperpagestyle default
\tracking_changes false
\output_changes false
\html_math_output 0
\html_css_as_file 0
\html_be_strict false
\end_header
\begin_body
\begin_layout Standard
\begin_inset ERT
status open
\begin_layout Plain Layout
$A =
\backslash
faktor{$
\backslash
Re$}{$m_1
\backslash
Re$}$
\end_layout
\end_inset
\end_layout
\end_body
\end_document