использование пакета Faktor в документе Lyx

использование пакета Faktor в документе Lyx

Я пытаюсь использовать пакет faktor в LyX для оператора частного. Однако LyX не распознает команду \faktor, хотя я установил пакет с помощью Tex Live.

Я новичок в LyX и LaTeX, так что я могу делать что-то неправильно. Вот что я сделал:

  1. Я скачал пакет с помощью Tex Live Shell.
  2. Перезапустил Lyx.
  3. В своем документе я перешел в Документ -> Настройки -> Преамбула LaTeX и добавил \usepackage{faktor}.

Теперь, когда я пытаюсь использовать \faktor в математической среде, Lyx не распознает команду, поэтому я получаю красный знак \faktor, который ничего не делает.

после консультации с chatgpt по этому вопросу он предложил мне перейти в Document -> Settings -> Document Class там он сказал написать \usepackage{faktor} в Class Options -> Custom и это должно сделать работу. К сожалению, это ничего не изменило.

Вот дополнительная информация, которая, по моему мнению, может помочь решить эту проблему:

  1. Этот документ написан в виде статьи (стандартный класс с дополнительными размерами шрифта).
  2. Документ, над которым я работаю, в основном написан на иврите, но содержит также немного английского.
  3. Этот документ представляет собой краткий обзор курса математики, поэтому примерно половина его посвящена математике.
  4. Я использую 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

Связанный контент