Copié de
mon blog afin de créer une autre source d'information en russe sur ce sujet.
Cet article est la continuation des articles suivants en un seul cycle:
article 1article 2LyX: Branche
Le menu
Insertion comporte un sous-menu nommé
Branche . Qu'est ce que c'est Je suis donc arrivé à ce sous-menu, il s'est ouvert. Là, avec le bouton gauche de la souris, cliquez sur
Ajouter un nouvel élément de
branche (il y a 2 points, je clique sur celui du bas). Dans la boîte de dialogue qui apparaît, entrez le nom de la branche à créer, cliquez sur
OK . Si je comprends bien, il ne devrait pas y avoir d'espaces dans le nom de la branche créée. Après avoir cliqué sur
OK dans la fenêtre LyX, dans laquelle tout cela est fait, la zone suivante apparaît:

Cette branche semble
inactive . Cela signifie que si j'écris quelque chose devant la branche, j'écris du texte dans le rectangle de la branche et continue la narration après la branche, puis dans le
.pdf
formé à partir de ce fichier
.lyx
, la partie du texte dans le rectangle rouge sera juste être absent. Pour inclure cette partie en
.pdf
, je survole le mot Vetka, là, plus ou moins à côté de ce mot, je clique avec le bouton droit et sélectionne
Activer la branche avec le bouton gauche de la souris. Selon le fichier
.mo
utilisé, cet élément peut être appelé différemment, mais il vient toujours en premier dans le menu déroulant.
LyX: Math Aperçu
Dans
Outils> Préférences> Affichage, la seconde en haut est une
liste déroulante . Selon le fichier
.mo
utilisé dans la traduction russe des noms des éléments d'interface, il a des noms différents. Dans cette copie du programme LyX que j'utilisais auparavant, on l'appelait, si je ne me trompe pas,
Aperçu des mathématiques . Dans la copie actuelle de LyX, il s'appelle
Instant Preview . Et son essence est la suivante. Si je
la valeur de cette liste, après que le curseur quitte le mode mathématique (formule de ligne) ou désactivé, la formule dans la fenêtre LyX ressemble à ceci:

Et avec la valeur de cette liste
activée, la formule commence à ressembler à ceci:

Mais cela en soi n'a que peu d'intérêt. L'utilisation de cette liste déroulante avec le compteur de
taille d'aperçu semble beaucoup plus intéressante. À savoir, définissez la valeur de la liste déroulante
sur On et la valeur du compteur sur une valeur supérieure à 1, par exemple 3,8, cliquez sur le bouton
Enregistrer . Ensuite, après avoir redémarré les formules LyX commencent à s'afficher comme suit:

Mais c'est quelque chose. Je l'ai utilisé, par exemple, lorsque j'ai peint des exposants fractionnaires à plusieurs étages en étudiant la preuve d'un théorème de la théorie des groupes: cela s'est avéré déroutant à la main, mais cela s'est avéré juste dans LyX en utilisant cette lotion.
Comment utiliser Asymtote dans LyX?
Mais très simple: ouvrez le programme LyX. Accédez à
Document> Paramètres> Préambule LaTeX . On y entre
\usepackage{asymptote}
peut-être avec certaines options de package asymptote, cliquez sur
Enregistrez . Voilà, nous commençons à écrire le texte dont nous avons besoin dans la fenêtre principale du programme LyX. Dès qu'il s'agit d'insérer le code asymptote, insérez la branche, activez-la (voir la section
LyX: branche de cet article), insérez le code Tex dans la branche (
Ctrl +
l ) et commencez seulement à écrire dans ce bloc
\begin{asy} ... \end{asy}
où à la place des points de suspension, nous écrivons le code Asymptote exactement de la même manière que nous le faisons dans un fichier
.asy
. Par exemple, cela pourrait ressembler à ceci:

La photo a été prise après la première exportation au format PDF (pdflatex). Faites attention au chemin d'accès au dossier entouré en bas de la fenêtre du programme LyX en rouge. C'est alors que je traite un fichier
.tex
ordinaire dans un autre éditeur ordinaire aussi
, par exemple, dans TeXworks, tous les fichiers se produisant simultanément en même temps, tels que
.log
,
.aux
, etc., sont créés dans le même dossier avec ce fichier
.tex
. Dans le cas de l'exportation vers un certain format dans le programme LyX, dans le même dossier avec le fichier
.lyx
traité, seuls tous les autres fichiers qui en résultent sont générés
.pdf
(et d'abord exporter vers
.tex
, puis certains
.tex
une implémentation binaire disponible sur un ordinateur
connecté (bien que facultatif) au programme LyX. Par exemple, cette fois, j'ai installé LyX après le programme MiKTeX. La connexion de LyX à MiKTeX s'exprimait donc par le fait que lorsque j'ai installé LyX, je suis monté dans
Outils> Paramètres ...> Chemins , là, dans la zone de texte du
préfixe PATH : entre autres, il y avait un chemin
C:\Program Files\MiKTeX 2.9\miktex\bin
- le chemin vers le dossier binaires que j'ai mentionné ci-dessus installé sur mon ordinateur
. Cependant, la présence du chemin d'accès à ce dossier dans ce champ de texte n'est pas obligatoire: j'ai installé LyX dans le système précédent, également Windows7, lorsque MiKTeX n'était pas déjà installé, donc malgré le fait qu'il n'y avait pas de chemin vers ce dossier dans ce champ de texte à la fois avant l'installation et la configuration de MiKTeX, et après ces opérations, LyX a fonctionné normalement. Ainsi, lorsqu'un fichier binaire est
.tex
fichier
.tex
, tous les fichiers se produisant simultanément, tels que
.log
,
.aux
, etc., sont également créés dans le même dossier avec ce fichier
.tex
.)
.tex
placés dans le dossier, le chemin d'accès à qui est contenue dans la fenêtre du programme LyX qui apparaît après avoir cliqué sur
Affichage> Afficher la source . Pour illustrer le format du chemin d'accès à un tel dossier, j'ai représenté une bordure rouge autour de ce chemin. Nous allons dans ce dossier, exécutons la ligne de commande à partir de ce dossier, exécutons la commande dans cette ligne
asy *.asy
Et nous faisons encore une exportation au format PDF (pdflatex). Maintenant, tout est prêt: ouvrez le
.pdf
créé et profitez de la qualité des graphiques, généralement attendue là où Asymptote est utilisé. Et nous avons besoin d'une branche dans toute cette histoire car parfois sans graphisme, le graphisme
.pdf
n'est pas à l'endroit où se trouve le code le générant en
.lyx
. Cependant, j'ai récemment trouvé un moyen d'insérer du code Asymptote dans un fichier
.lyx
sans utiliser de branches, mais je vais en parler sur une page plus proche de ce sujet.
LyX: changer les noms, info-bulles pour les éléments d'interface
Maintenant, lorsque vous utilisez LyX dans une langue autre que l'anglais, les noms affichés de divers menus, éléments de menu, barres d'outils, etc. en un mot, les noms affichés de presque tous les éléments d'interface, à l'exception de la liste déroulante des environnements et, éventuellement, d'autre chose, les traductions de divers messages sont extraites par LyX du fichier
.mo
correspondant à la langue utilisée. Donc, peu importe comment je mets diverses copies de LyX, ces fichiers
.mo
, en tout cas, dans le cadre de la copie LyX utilisée pour différentes langues, ont le même nom. Dans une copie du programme que j'utilise maintenant, ces fichiers sont appelés
LyX2.0.mo. Ces fichiers pour différentes langues diffèrent, en plus de leur contenu, en ce qu'ils se trouvent dans différents sous-dossiers du même dossier. Pour le russe, le fichier
LyX2.0.mo correspondant se trouve dans
C:\Program Files\LyX 2.0\Resources\locale\ru\LC_MESSAGES
. Cependant, si dans le but d'essayer de remplacer LyX dans la fenêtre du programme, le nom affiché est là, de n'importe quelle barre d'outils de n'importe quel élément de menu, changez l'emplacement correspondant dans le fichier
.mo
(comment trouver cet endroit est décrit ci-dessous), ceci, après avoir enregistré les changements dans le fichier .mo au redémarrage de LyX, contrairement aux attentes, n'entraîneront pas un changement du nom de l'élément d'interface correspondant, mais l'affichage de tous les noms et infobulles en anglais: l'édition du fichier
.mo
n'a pas de sens directement. Et vous devez modifier le fichier
.po
, à partir duquel, à l'aide du programme
gettext , après chaque modification (avec enregistrement ultérieur de cette modification), vous obtenez à nouveau le fichier
.mo
et déplacez le fichier
.mo
nouvellement reçu dans le dossier nommé ci-dessus avec remplacement. Arrêtons-nous sur ce processus. Tout d'abord, obtenez
gettext. J'ai cliqué sur le lien ci-dessus pour télécharger le statique 32 bits, et non pas l'icône avec un ordinateur et un disque, mais l'icône du dossier avec une fermeture éclair. Téléchargez l'archive, décompressée n'importe où. Afin de ne pas ajouter le dossier bin de ce programme en raison de telles bagatelles, nous ferons ce qui suit: allez
ici . De là, téléchargez le fichier lyx-2.3.2.tar.gz. Ouvrez-le, copiez le fichier
ru.po du dossier po dans le dossier bin du programme gettext précédemment décompressé, renommez-le
LyX2.0.po. Ensuite, nous ouvrons ce fichier
.po
dans un éditeur de texte. Alors Nous avons donc voulu modifier, par exemple, le nom d'affichage de l'élément Signets de la navigation des signets: affichage modifié. Ouais, ouvrez le menu Navigation, regardez le nom des éléments de ce menu à côté de
Signets . Ces éléments, par exemple, sont les suivants:
note suivante ,
prochaine modification, ... cela est nécessaire car dans le fichier
.po
il peut y avoir des traductions identiques des noms affichés de divers éléments d'interface à plusieurs endroits différents, à cause desquels les mêmes seront dans le fichier résultant
.mo
, ce qui conduira au fait que dans la fenêtre LyX plusieurs éléments d'interface à différents endroits auront les mêmes noms affichés. Ainsi, afin de modifier la traduction de certains éléments d'interface dans le fichier
.po , afin que les noms affichés exactement des éléments d'interface dont les noms d'affichage doivent être modifiés dans le fichier
.mo , nous devons examiner les noms affichés des éléments adjacents à ces éléments d'interface, nous allons changer les noms affichés. Si un élément a une info-bulle dans la fenêtre du programme LyX, le texte de cette info-bulle affiché dans la langue correspondante dans le fichier
.po sera situé non loin du nom affiché de cet élément d'interface. Un autre signe de l'emplacement du fichier
.po qui doit être modifié pour que cela entraîne une modification du nom d'affichage de l'élément d'interface pour lequel le nom d'affichage doit être changé. Donc, nous allons dans la fenêtre de l'éditeur avec le fichier ouvert
LyX2.0.po , y trouvons les
signets , regardons les sections voisines en russe. Voici l'un des résultats de la recherche avec votre environnement:
#: src/frontends/qt4/ui/PDFSupportUi.ui:249 msgid "Bibliographical backreferences" msgstr " " #: src/frontends/qt4/ui/PDFSupportUi.ui:252 msgid "B&ackreferences:" msgstr "& :" #: src/frontends/qt4/ui/PDFSupportUi.ui:281 msgid "&Bookmarks" msgstr "&" #: src/frontends/qt4/ui/PDFSupportUi.ui:293 msgid "G&enerate bookmarks (toc)" msgstr "& " #: src/frontends/qt4/ui/PDFSupportUi.ui:314 msgid "&Numbered bookmarks" msgstr "& "
Ce mot favori trouvé correspond au numéro 3144. À en juger par les mots voisins en russe, ce n'est pas ce dont vous avez besoin. Et voici un autre résultat de recherche pour le mot signet avec certains de ses environs dans le fichier
LyX2.0.po :
#: lib/ui/stdmenus.inc:559 msgid "Reject All Changes|e" msgstr " " #: lib/ui/stdmenus.inc:560 msgid "Show Changes in Output|S" msgstr " " #: lib/ui/stdmenus.inc:567 msgid "Bookmarks|B" msgstr "|" #: lib/ui/stdmenus.inc:568 msgid "Next Note|N" msgstr " |" #: lib/ui/stdmenus.inc:569 msgid "Next Change|C" msgstr " |"
Cette entrée du mot Signet est située en ligne avec le numéro 19619 et, à en juger par les mots de la langue russe, située à proximité de cette entrée, c'est ce dont vous avez besoin. Nous remplaçons cette occurrence du mot par cette phrase, la phrase que nous voulons servir comme nom d'affichage de l'élément d'interface correspondant. Ainsi, ce morceau de code, avec certains de ses environs dans le fichier LyX2.0.po, commence à ressembler à ceci:
#: lib/ui/stdmenus.inc:559 msgid "Reject All Changes|e" msgstr " " #: lib/ui/stdmenus.inc:560 msgid "Show Changes in Output|S" msgstr " " #: lib/ui/stdmenus.inc:567 msgid "Bookmarks|B" msgstr ": |" #: lib/ui/stdmenus.inc:568 msgid "Next Note|N" msgstr " |" #: lib/ui/stdmenus.inc:569 msgid "Next Change|C" msgstr " |"
Enregistrez les modifications dans
LyX2.0.po. Nous lançons la ligne de commande dans le dossier bin dans lequel nous nous trouvons. Dans la fenêtre de cette ligne, écrivez la commande suivante:
msgfmt LyX2.0.po --o LyX2.0.mo
, appuyez sur la touche
Entrée . Après cela, comme prévu, le fichier
LyX2.0.mo apparaît dans le dossier bin. Personnellement, pour ne pas entrer cent fois la même commande dans la ligne de commande, j'ai créé un fichier batch du contenu suivant dans le dossier bin du programme gettext:
cd /d %0\.. msgfmt LyX2.0.po --o LyX2.0.mo
Et maintenant, lorsque je l'ouvre après avoir enregistré les modifications dans le fichier
LyX2.0.po , le même fichier
LyX2.0.mo est créé
exactement dans mon dossier bin, comme si je l'avais obtenu à partir de la ligne de commande. Ensuite, déplacez, répétez avec le remplacement, le fichier
.mo
résultant dans le dossier
C:\Program Files\LyX 2.0\Resources\locale\ru\LC_MESSAGES
. Après avoir redémarré LyX, nous obtenons ce qui suit:

LyX: à propos du fichier default.def
Dans
C:\Program Files\LyX 2.0\Resources\commands
il y a un fichier
default.def
. À quoi sert ce fichier? Le 19 août, j'ai découvert que les modifications que j'ai apportées le 12 juin 19 à ce dossier n'étaient entrées en vigueur. En juin, ces modifications de ce fichier ne sont pas apparues. Apparemment, pendant cette période, j'ai fait quelque chose en rapport avec le programme LyX, mais je ne peux pas dire exactement quoi. Mais ensuite, ils sont immédiatement entrés et les modifications prennent désormais effet dans le fichier du même nom, mais uniquement dans un dossier différent - dans le dossier
C:\Users\\AppData\Roaming\LyX2.0\commands
. Donc, ce fichier est nécessaire pour nommer les combinaisons de commandes que nous utilisons habituellement dans le tampon de commandes de ce fichier, afin que nous puissions ensuite appeler à nouveau l'une de ces combinaisons de commandes via le tampon de commandes en utilisant le nom attribué à cette combinaison. . Voici des exemples pour définir de tels noms pour de telles combinaisons dans ce fichier:
\define "corpi" "command-sequence math-mode; math-insert {\displaystyle \intop_{-\infty}^{\infty}e^{-x^{2}}dx=\dfrac{\sqrt{\pi}}{2}}; char-right; char-right;" \define "vstgr" "command-sequence vc-command U \"$$p\" \"vstavka-grafiki.bat\""
Un appel à une commande spécifique, par exemple,
vstgr , est effectué dans le tampon de commande comme suit:
call vstgr
En utilisant cette commande, j'insère des graphiques dans la fenêtre du programme LyX sans retirer mes mains du clavier. Le fichier
vstavka-grafiki.bat entre en
jeu . Que contient ce fichier et comment il fonctionne, je vais vous le dire dans un autre article de cette série d'articles: cela n'a presque rien à voir avec ce dont je parle ici. Je note également ici seulement que, si je comprends bien, l'équipe
command-sequence
il est utilisé ici lorsque, dans une certaine combinaison de commandes, il existe plusieurs commandes pour combiner ces commandes dans un ensemble, mais en général, cette commande peut être utilisée dans le même but directement pour entrer une commande dans le tampon avec vos mains lorsqu'il est nécessaire d'exécuter plusieurs commandes à partir d'elle en une seule entrée et lorsque Les touches de raccourci sont affectées à une séquence de plusieurs commandes.
LyX: ajout de boutons aux menus, barres d'outils
Tout d'abord, je vais vous montrer comment ajouter un bouton à un menu. Par exemple, je vais montrer comment ajouter un bouton au menu
Edition , lorsque vous cliquez dessus, le mode mathématique démarre, la formule y est entrée
et après cela, le curseur se déplace 2 fois vers la gauche, de sorte qu'après la fin de cette commande, le curseur commence à clignoter à gauche de la formule que vous venez de saisir. En même temps, je veux que ce bouton se tienne entre les boutons
Récent et
Insérer , une bande a été placée au-dessus de ce bouton, comme, vous savez, il y a des bandes dans le menu qui les divisent en blocs dans lesquels elles sont en quelque sorte connectées les unes aux autres boutons amis. Et le nom d'affichage de ce bouton devrait être
chislitelem de drob . Pour effectuer cette tâche - un cas particulier des tâches indiquées dans le titre de cette rubrique, nous devrons modifier les fichiers situés dans le dossier
C:\Program Files\LyX 2.0\Resources\ui
. À savoir, pour changer un menu, nous devons modifier le fichier
stdmenus.inc situé dans ce dossier. Nous l'ouvrons dans un éditeur, je fais tout dans un bloc-notes banal. Où intuitivement, où regarder le code et garder à l'esprit les touches de raccourci que j'utilisais dans LyX, quand je commençais à peine à étudier ce programme et qu'il n'était pas question de créer mes propres touches de raccourci, j'ai réalisé que je devais modifier le bloc code de ce fichier commençant par
# # EDIT MENU # Menu "edit"
A savoir: après la ligne
Item "Paste" "paste"
ajouter 2 lignes
Separator Item "drob' s chislstelem" "command-sequence math-mode; math-insert \dfrac{\sqrt{\pi}}{2}; char-left; char-left;"
La première des lignes ajoutées donne simplement la bande de séparation décrite ci-dessus. Enregistrez les modifications dans
stdmenus.inc , redémarrez) LyX. Le résultat est le suivant:

Alors maintenant, ajoutons les boutons dans la barre des tâches. J'avoue que, comment ajouter des boutons sur la barre des tâches, j'ai espionné
ici . Et la procédure d'ajout de boutons au menu décrit ci-dessus a déjà été pensée par moi sur la base de ce matériel reconnu. Et, bien sûr, je ne revendique aucune paternité. Eh bien, et maintenant ... Probablement, le lecteur attentif
du deuxième article de cette série d'articles, sur les dessins simplifiés flottants, a déjà remarqué la différence d'une barre d'outils dans la fenêtre du programme LyX, que j'utilise (elle, ce panneau différent, se trouve exactement sur la photo là-bas) sur l'espace de travail dans lequel j'écris) à partir d'une barre d'outils similaire dans le programme LyX encore inchangé. À savoir, la différence entre ce panneau est immédiatement frappante avec un énorme bouton, sur lequel il n'y a que l'inscription
Moyacom partiellement entrée sur la photo
[Ctrl + 0 1] . Cependant, je ne me suis pas limité à ce bouton, car il n'était pas clair comment attacher les images que vous souhaitez aux boutons créés par l'utilisateur. J'ai donc créé un autre bouton. Sur la photo suivante, les boutons que j'ai créés sur cette barre d'outils sont indiqués par des flèches rouges:

Pour commencer, je vais vous dire comment créer un bouton recouvert de l'image souhaitée (
l'image doit avoir l'extension .png
), lorsque vous cliquez dessus, la commande définie dans les commandes
C:\Users\\AppData\Roaming\LyX2.0\commands\default.def
. Donc, nous entrons ce qui suit dans ce fichier à partir d'une nouvelle ligne:
\define "pina2" "command-sequence math-mode; math-insert \dfrac{\pi}{2}; char- right; char-right;"
Nous fermons le fichier default.def, enregistrons les modifications. Ensuite, dans le dossier
C:\Users\\AppData\Roaming\LyX2.0\images\commands
copions la photo (je répète, l'extension
.png
est
nécessaire ) sous laquelle nous voulons que le bouton que nous créons apparaisse dans la fenêtre du programme LyX, renommez-le photo dans
pina2 . Convenons que nous ajoutons le bouton au panneau
Avancé (la photo ci-dessus montre la barre d'outils
Avancée modifiée). Mais le programme LyX lui-même ne connaît pas la barre d'outils portant ce nom. Dans la compréhension de LyX, ce panneau s'appelle
Extra (j'ai découvert cela en regardant les messages dans la série d'histoires mentionnées à plusieurs reprises dans mes histoires sur LyX en progressant dans la zone de sa fenêtre
Messages de progression / débogage lorsque ce panneau était activé / désactivé via
Affichage> Barres d'outils ).
Super. Nous allons dans le dossier
C:\Program Files\LyX 2.0\Resources\ui
déjà mentionné ci-dessus. Ouvrez le fichier
stdtoolbars.inc , recherchez quelque chose qui commence par le mot
supplémentaire (éventuellement avec une majuscule) ou quelque chose de similaire à, là, un en-tête ou quelque chose comme ça contenant ce mot.
Afin de ne pas aller loin, nous ajouterons notre bouton au tout début de cette commande. À savoir, voici l'extrait de code de ce fichier avant mon intervention: ................................................................... StickyPopupMenu "update-others" "Update other formats" End Toolbar "extra" "Extra" Item "Default" "layout" Item "Numbered list" "layout Enumerate" ...................................................................
Et voici comment j'ai créé ce morceau de code: ................................................................... StickyPopupMenu update-others Update other formats End Toolbar "extra" "Extra" Item "Privet moim chitatelyam" "call pina2" Item "Default" "layout" Item "Numbered list" "layout Enumerate" ...................................................................
, où les ellipses sont les lignes du fichier stdtoolbars.inc avant et après le code de ce fichier. En principe, tout se ferme avec l'enregistrement du fichier stdtoolbars.inc . Ensuite, après avoir redémarré LyX, lorsque le panneau Avancé est activé , un nouveau bouton de fonctionnement apparaît sur ce panneau avec l'image que nous avons affectée et exécute la fonction que nous avons définie. Comme vous pouvez le voir sur la dernière photo, l'infobulle est déterminée par ce que nous avons écrit dans la première paire de citations liées à l'élément correspondant. En conclusion, je dirai que le deuxième bouton que j'ai ajouté a été défini sans la participation du fichier default.def et, comme je l'ai dit ci-dessus, sans intention, lui assigner une image sous laquelle ce bouton serait affiché dans la fenêtre du programme LyX: je viens d'insérer une ligne vide et insérée dans cette vide avant la dernière ligne du bloc de code dans lequel je viens de décrire les manipulations La ligne est le code suivant: item "Moyacom" "command-sequence math-mode; math-insert \dfrac{\sqrt{\pi}}{2}; char-left; char-left;"
Et [Ctrl + 0 1] sur le bouton que j'ai créé dans la photo que j'ai apportée est visible parce que j'ai un mode mathématique de séquence de commandes; math-insert \ dfrac {\ sqrt {\ pi}} {2}; char-left; char-left; Ctrl + 0 + 1 (je dois admettre que je ne m'attendais pas du tout à ce message à cet endroit.À suivre ...