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 2article 3article 4LyX; utilisation des fichiers .js
La principale caractéristique des fichiers avec l'extension
.js
, ce qui les rend intéressants en termes d'application dans le programme LyX, est la possibilité de simuler des frappes dans ces fichiers. À savoir, par exemple, comment rendre possible l'insertion d'une photo située dans le même dossier avec ce fichier
.lyx
fichier
.lyx
(si ce fichier n'a pas encore été enregistré, sa fenêtre est ouverte via
Fichier> Nouveau , eh bien, sa fenêtre est ouverte pour la première fois littéralement lorsque vous utilisez le programme LyX cette fois, puis la photo insérée doit être dans le dossier spécifié dans
Outils> Paramètres ...> Chemins , dans la zone de texte du
répertoire utilisateur ) sans utiliser la souris, sans prendre vos mains Claudia. L'idée principale pour résoudre ce problème est la suivante. Supposons que, dans le dossier que j'ai mentionné ci-dessus, il y ait une photo
photo.png . Pour l'insérer à la position actuelle du curseur dans la fenêtre du programme LyX, vous pouvez exécuter la commande suivante dans le tampon de commandes:
inset-apply graphics filename photo.png
Ainsi, dans le fichier
.js
, appelons-le
vstavka-grafiki.js , vous devrez simuler en appuyant sur
Alt
+
X
(pour que le curseur commence à clignoter dans le tampon de commande) et en appuyant sur
i
,
n
,
s
,
e
,
t
,
-
,
a
,
p
,
p
,
l
,
y
,
,
g
,
r
,
a
,
p
,
h
,
i
,
c
,
s
,
,
f
,
i
,
l
,
e
,
n
,
a
,
m
,
e
,
Espace . Après cela, la fenêtre du programme LyX commence à ressembler à ceci:

En même temps, si je commence à saisir quelque chose à partir du clavier, cela sera entré non pas dans la fenêtre principale du programme LyX, mais dans le tampon de commande, et en plus, les lettres ne seront pas saisies à partir des touches qui sont enfoncées lorsque ces touches sont enfoncées lorsque Disposition russe et celles qui sont saisies lorsque ces touches sont enfoncées lorsque la disposition du clavier est commutée sur l'anglais. Super, ce dont vous avez besoin! Mais ici, comme il s'est avéré plus tard, il y a un problème, à savoir: au début, j'ai pensé à visser ce fichier
.js
à LyX via le fichier
default.def
, en y écrivant la ligne
\define "vstgr" "vc-command U \"$$p\" \"vstavka-grafiki.js\""
et en créant dans LyX la touche de raccourci pour l'expression
call vstgr
. Tout irait bien, mais il s'est avéré que les fichiers
.js
ne pouvaient pas être lancés à partir de LyX. Mais à partir de là, il s'avère que vous exécutez des fichiers avec l'extension
.bat
(fichiers batch banaux). C'est pourquoi j'ai écrit dans le fichier
default.def
\define "vstgr" "vc-command U \"$$p\" \"vstavka-grafiki.bat\""
en créant le fichier
vstavka-grafiki.bat comme suit:
start vstavka-grafiki.js
Et directement pour simplifier l'appel de la commande que j'ai créée dans la fenêtre LyX, j'ai, comme je l'avais prévu, alors que je ne savais pas que j'aurais également besoin d'utiliser un fichier batch, créé un raccourci clavier pour l'expression
appel vstgr . En même temps, le fichier
vstavka-grafiki.bat et le fichier
vstavka-grafiki.js doivent être dans le dossier ajouté à PATH. Alors, continuez. Lors de la création du format d'exportation
pdflatex-v-papke , je suis tombé sur cela. Lorsque vous insérez des graphiques, par exemple, avec le nom mentionné ci-dessus avec l'extension
photo.png dans la partie de la fenêtre du programme LyX qui apparaît après avoir cliqué sur
View> View Source (ou
View> View code - le nom de l'élément de menu correspondant
View dépend du fichier
.mo
localisation utilisé) à la place , correspondant à la position des graphiques insérés dans la fenêtre principale du programme LyX, le code suivant sera:
\includegraphics{photo}
Et le même code sera enregistré dans le fichier
.tex
correspondant qui apparaît dans le répertoire temporaire correspondant à la suite de l'action du fichier batch sélectionné comme moteur de ce format à l'une des toutes premières étapes de ce fichier batch. Par conséquent, suite à l'exécution de l'une des commandes suivantes de ce fichier batch - traitement du fichier
.tex
reçu - une erreur se produira et rien ne fonctionnera. Et le problème ici est que dans le fichier
.tex
résultant, le nom du fichier graphique inséré (l'argument de la commande
\includegraphics
) est écrit sans extension. Que faire? Hmm, car en plus de recevoir le fichier
.tex
, dont le traitement par pdflatex ne provoquerait pas une seule erreur, je voudrais également garder la visibilité dans la fenêtre du programme LyX. En revanche, lorsque vous insérez des graphiques dans la fenêtre du programme LyX dans notre cas russophone, les caractères insérés lorsque vous appuyez sur les touches du clavier seront très probablement cyrilliques, tandis que les extensions de fichier en général, en particulier celles graphiques, sont écrites en anglais. D'un autre côté, le lecteur qui a lu ce blog à cet endroit est probablement déjà au courant de la très savoureuse fonction du programme LyX -
Utilisez la disposition du clavier et
utilisez-la avec puissance et main. Eh bien, si c'est le cas, la tâche est grandement simplifiée. À savoir, ici, nous avons ouvert le fichier dans le programme LyX, changé la mise en page en anglais, et nous avons commencé à écrire en appuyant sur les lettres dont nous avons besoin, comme si la mise en page était définie en russe, les caractères qui sont entrés dans la fenêtre du programme LyX sont des caractères cyrilliques, situé sur les touches enfoncées. Tout va bien ici. Nous avons donc écrit, écrit, hop, nous devions insérer des graphiques. Jusque-là, les caractères cyrilliques ont été introduits, et maintenant il nous a fallu saisir les lettres anglais (pour saisir l'extension). Nous la prenons donc et passons en mode mathématique, dans lequel nous écrivons le nom de la photo insérée avec son extension, puis nous la lançons en utilisant le raccourci clavier que nous avons créé spécialement pour cela (j'ai ce
Ctrl
+
0
+
V
+
G
( car l'insertion de graphiques)) la commande
vstgr1 spécifiquement définie dans le fichier
default.def .
Cette commande est définie comme suit:
\define "vstgr1" "vc-command U \"$$p\" \"vstavka-grafiki1.bat\""
(et le raccourci clavier précédent est affecté à la phrase
appeler vstgr1 ). Comme vous pouvez le deviner, cette commande lance le
fichier batch
vstavka-grafiki1.bat avec le contenu suivant:
start vstavka-grafiki1.js
Comme vous pouvez le deviner, ce fichier batch exécute le fichier
vstavka-grafiki1.js , qui, par essence, fait tout. Que fait-il?
.lyx
abord quelle construction nous voulons dans le fichier
.lyx
actuellement édité. Nous voulons que là d'une nouvelle ligne (si nous avons déjà écrit quelque chose avant, sinon, nous n'avons pas besoin d'une nouvelle ligne, voir ci-dessous) la photo dont nous avons besoin est insérée, puis, à nouveau d'une nouvelle ligne, elle sera insérée un bloc de code TeX (ce qui apparaît généralement dans la fenêtre du programme LyX lorsque vous
appuyez sur
Ctrl +
L ) et dans ce bloc, il indiquerait
\includegraphics{}
, où le nom de la photo insérée, puis le point, puis l'extension de la photo insérée seraient entre accolades . En fait, nous rendons la photo insérée dans la fenêtre du programme LyX affichée uniquement pour la décoration dans la fenêtre du programme LyX, nous n'avons pas besoin que cette photo soit affichée dans le
.pdf
final
.pdf
: la photo qui y apparaît à la suite de la commande sera affichée dans le
.pdf
final
.pdf
situé dans le bloc TeX, par conséquent, pour éviter l'apparition des graphiques
.pdf
finaux résultant du traitement des graphiques visuels à partir de la fenêtre du programme LyX, nous commenterons ce graphique visuel dans cette fenêtre du programme LyX, en mettant un signe de pourcentage devant ce graphique intégré dans le bloc de code teX. En un mot, nous voulons obtenir, par exemple, la construction suivante:

Je fais essentiellement la même chose que dans le premier cas: de la même manière, je vis le
fichier vstavka-grafiki1.bat sur LyX via le fichier
default.def , créant une nouvelle commande
vstgr1 dans ce fichier, puis créant une commande à chaud dans la fenêtre du programme LyX
touchez la phrase
appeler vstgr1 , tout est clair. La différence se trouvera uniquement dans le fichier
vstavka-grafiki1.js , qui est lancé par le fichier
vstavka-grafiki1.bat . Avant de
lister le contenu du fichier
vstavka-grafiki1.js , je vais
lister le contenu des deux fichiers auxiliaires utilisés dans ce fichier. À savoir, pour faire tout cela, nous aurions besoin de simuler en appuyant sur le signe de pourcentage dans le fichier
vstavka-grafiki1.js également . Et, puisque nous utilisons la disposition du clavier kazakh (j'utilise la disposition du clavier kazakh, j'écris donc en fonction du fait que mon lecteur l'utilise également) et, parce qu'avec cette disposition du clavier, le caractère entré, par exemple, dans le cahier, lorsque vous appuyez sur la touche sur laquelle se trouve ce signe de pourcentage, se trouve la lettre de l'alphabet kazakh, puis dans la commande qui simule le signe de pourcentage du fichier
vstavka-grafiki1.js , nous aurions besoin d'écrire cette lettre kazakhe, qui, comme je l'ai écrit dans un autre message sur ce billet de blog provoque une erreur. Par conséquent, le fichier
vstavka-grafiki1.js utilise le fichier de commandes procent.bat avec le contenu suivant:
echo LYXCMD:vvod:command-sequence:self-insert %%> \\.\pipe\lyxpipe.in
En se souvenant de l'histoire de \\. \ Pipe \ lyxpipe.in, il est facile de comprendre que ce fichier de commandes insère vraiment un signe de pourcentage à la position actuelle du curseur dans le programme LyX (naturellement, pour pouvoir l'utiliser, dans
Outils> Paramètres ...> Chemins dans le texte le champ du
canal du serveur LyX: doit être
\\.\pipe\lyxpipe
, et lorsque vous essayez d'utiliser le fichier
procent.bat tel qu'appliqué à LyX en dehors du fichier
vstavka-grafiki1.js, vous devez suivre l'ordre correct pour lancer la fenêtre d'invite de commandes à partir de laquelle le fichier
vstavka sera appelé
grafiki1.js et fenêtres du programme LyX, dans lequel ce même signe de pourcentage sera entièrement Pour plus de détails, je renvoie le lecteur à la narration mentionnée ci-dessus, mais lors de l'appel de
procent.bat à partir de
vstavka-grafiki1.js, tout se passe comme il se doit). Un autre fichier auxiliaire utilisé dans le fichier
vstavka-grafiki1.js est le fichier
Ostanovka.js avec le contenu suivant:
WshShell=WScript.CreateObject("WScript.Shell") WshShell.Popup(" , \"\", \"\"", 0, " ",1);
Mais qu'en est-il du judo miracle? Le fait est que lorsque j'ai créé le fichier
vstavka-grafiki1.js qui s'exécute sans arrêt, pendant son fonctionnement, apparemment, également en raison du lancement d'autres fichiers à partir de celui-ci avec des commandes qui devraient être exécutées dans la même fenêtre de programme LyX , dans lequel le
fichier vstavka-grafiki1.js exécute lui
- même des commandes, des erreurs se sont produites à différents endroits, ces commandes du fichier
vstavka-grafiki1.js n'ont pas collectivement fait ce qui était nécessaire. Pour résoudre ce problème, j'ai trouvé cela. Expérimentalement identifié de tels endroits dans le fichier
vstavka-grafiki1.js . À savoir, les commandes de ce fichier qui provoquent des erreurs. Et devant ces endroits, je voulais suspendre le
fichier vstavka-grafiki1.js jusqu'à ce que j'appuie
sur une touche. Qui - ne savait pas encore. J'ai pensé et pensé que l'équipe n'est pas une équipe, peu importe, en général,
WshShell.Run(
il y a un tel argument que si sa valeur est spécifiée comme
vraie , alors lorsque cette commande est exécutée, le travail principal à partir duquel cette commande est exécutée, le fichier est mis en pause jusqu'à ce que le fichier ouvert par cette commande se ferme. Eh bien, quelque chose déjà ... D'un autre côté, je me suis souvenu qu'en jscript, il y a une commande qui ouvre une boîte de dialogue avec des boutons vraiment fonctionnels. J'ai décidé avant les problèmes fichier
vstavka-grafiki1.js coller commande zap fichier ska
Ostanovka.js avec les attentes de la fin de l'opération du fichier comme
Ostanovka.js va créer une boîte de dialogue avec deux boutons -.
Ok et
Annuler en même temps après vyplyvaniya cette fenêtre , l'accent sera mis sur le bouton
Ok, donc de fermer cette boîte de dialogue fenêtre, il suffira d'appuyer sur
Entrée . J'ai donc créé le fichier
Ostanovka.js du contenu ci-dessus. Je voulais également accrocher le bouton
Annuler et annuler toutes les actions effectuées par le
fichier vstavka-grafiki1.js après la dernière exécution du fichier
Ostanovka.js , mais pour l'instant Je ne sais pas comment faire. Donc bon, c’est tout, après les remarques préliminaires, le lecteur est capable de comprendre le processus du
fichier vstavka-grafiki1.js . J'écrirai dans le commentaire de chaque ligne ce qu'elle fait. N'oubliez pas qu'avant de démarrer le
fichier vstavka-grafiki1.js, le curseur dans la fenêtre du programme LyX est en mode mathématique, après le nom du fichier graphique inséré, le point séparant son nom de l'extension et de l'extension elle-même. À savoir, je l'ai fait comme suit:
WshShell=WScript.CreateObject("WScript.Shell") WshShell.SendKeys("%"); WshShell.SendKeys("+{HOME}"); // . // , WshShell.SendKeys("^"); // , WshShell.SendKeys("{LEFT}"); // . , // WshShell.SendKeys("{END}"); // //. , WshShell.SendKeys("{ENTER}"); // . , // WshShell.Run("Ostanovka.js",1,true); // //vstavka-grafiki1.js WshShell.SendKeys("^"); // TeX WshShell.SendKeys("^"); // TeX WshShell.Run("Ostanovka.js",1,true); // WshShell.Run("Ostanovka.js",1,true); // //vstavka-grafiki1.js WshShell.Run("procent.bat"); // TeX WshShell.Run("Ostanovka.js",1,true); // //vstavka-grafiki1.js WshShell.SendKeys("{RIGHT}"); // // TeX WshShell.SendKeys("%"); // WshShell.SendKeys("- "); // // //inset-apply graphics filename filename WshShell.SendKeys("^"); // // , // WshShell.SendKeys("{ENTER}"); // ENTER, // // LyX //WshShell.SendKeys("{UP}"); // LyX // , , // . , , // . WshShell.SendKeys("{LEFT}"); // . , // WshShell.SendKeys("+{HOME}"); // , // , WshShell.SendKeys("^"); // , WshShell.SendKeys("^"); // , WshShell.SendKeys("{LEFT}"); // WshShell.SendKeys("{DELETE}"); // // , // , WshShell.SendKeys("{DELETE}"); // // WshShell.SendKeys("{END}"); // // , //. , // , // LyX WshShell.SendKeys("{ENTER}"); // WshShell.SendKeys("^"); // // WshShell.SendKeys("\"); // , //, \includegraphics WshShell.SendKeys("+"); // // WshShell.SendKeys("^"); // // , // WshShell.SendKeys("+"); // // WshShell.SendKeys("{RIGHT}"); //
Je vais dire quelques mots sur le code ci-dessus. Tout d'abord, les commentaires en jscript sont indiqués par le signe
//
et tout ce qui apparaît dans la ligne après ce signe est ignoré par l'exécuteur de ce code, il est destiné à expliquer à la personne les actions effectuées par cette ligne. Et s'il n'y a rien avant
//
dans la ligne, alors cette ligne continue le commentaire commencé quelque part au-dessus. Deuxièmement, la première fois que j'ai copié le nom de la photo insérée avec son extension, séparé par un point de son nom, et la deuxième fois j'ai découpé ce dessin au lieu de ce qui semble possible de le couper une fois. Pourquoi? Oui, car lorsque j'ai essayé de le faire, avant de coller ce dessin du presse-papiers une deuxième fois dans la position actuelle, il est mystérieusement devenu vide et rien ne m'en est venu. Je ne peux pas expliquer pourquoi cela se produit, cependant, j'ai trouvé une telle solution au problème qui s'est posé. Encore une fois, je tiens à vous rappeler que pendant le fonctionnement du
vstavka-grafiki1.js
lorsqu'une boîte de dialogue avec le titre Contrôle du processus apparaît, pour continuer le fonctionnement du
fichier vstavka-grafiki1.js, vous devez appuyer sur
Entrée (ou cliquer avec le bouton gauche sur un bouton quelconque de la boîte de dialogue contextuelle ce qui me semble moins pratique).
LyX: Grande lettre e
Maintenant, lorsque dans le programme LyX, utilisé sous la forme dans laquelle il a été créé, vous appuyez sur
Maj +
E (c'est le cas lorsque, lorsque la fonction
Utiliser la disposition
du clavier est activée,
la disposition
du clavier passe en anglais), au lieu de la lettre majuscule attendue " Euh », une citation inversée apparaît dans la fenêtre du programme LyX. La solution à ce problème consiste à affecter la
touche de raccourci
Maj + " à la
séquence de commandes auto-insérée E.LyX: comment ajouter / supprimer des messages d'un groupe de messages dans Afficher les messages
Ainsi, lorsque via
View> View Meseages (ou via
View> View messages - cela dépend du fichier de localisation
LyX2.0.mo utilisé ) vous ouvrez la zone de
messages Progress / Debug en bas de la fenêtre du programme LyX, il y a trop de messages affichés dans cette partie de la fenêtre, il se trouve que vous déplacez simplement la souris, et il affiche une séquence de lignes de plusieurs kilomètres dans laquelle trouver quelque chose dont vous avez besoin (par exemple, pour obtenir un indice sur la façon d'entrer telle ou telle commande via le tampon de commande, là, bien sûr, elle ne sera pas sous une forme littérale, mais un indice ça peut donner, moi, peut-être bientôt je vais vous parler un peu de ce que j'ai réussi à creuser à ce sujet) ça peut être extrêmement difficile. Pour réduire (ou, inversement, ajouter des messages à n'importe quel groupe de messages), nous le faisons. Dans cette zone inférieure de la fenêtre, cliquez avec le bouton gauche de la souris sur la souris
Paramètres , nous avons défini le commutateur
Messages de débogage sur En
surbrillance :

Et puis juste là sur le côté droit, double-cliquez (à la vitesse à laquelle cela se fait lors de l'ouverture d'un fichier, cette vitesse peut être modifiée si nécessaire dans les paramètres de l'ordinateur lui-même, en dehors du programme LyX) en fonction du groupe de messages, les messages dont nous voulons faire en sorte qu'il ne s'affiche pas dans la zone
Messages de progression / débogage ou, inversement, les messages de ce groupe de messages que nous souhaitons afficher dans cette zone. , ,
,
, :
,
LyX . ,
, , .
LyX: -
> ... . ,
Preview
… , , ,
.tex
- , , pstricks. , , pstricks,
.tex
, , LyX, - « LaTeX», , TeXworks, ..
\begin{pspicture}
,
\end{pspicture}
, ,
\begin{pspicture}
-
\psset{xunit=1.0cm,yunit=1.0cm,algebraic=true,dimen=middle,dotstyle=o,dotsize=3pt
… , , pstricks, , . ,
.tex
, . LyX. -
>...> LaTeX , ,
.tex
, - « LaTeX», LyX
> (
>Preview .mo
). . .
> ,
.... . :
.tex
,
.
, ,
. ,
OK :

,
OK : , , ,
.tex
. —
—
.lyx
.tex
, , . , ,
OK
Preview ,
.tex
, LyX. , ???
LyX: ,
, , - , :

, . ,
>...> , ,
(.) , ,
(.) , , , , , . ( , ) :

LyX: Local layout,
, LyX. , , , , , , , , , , , ,
, LyX , , , . , . ? .
>> (
.mo
Local layout ), :
Provides amsmath 0 PageStyle plain Style Standard Font Color blue EndFont End Style Enumerate Font Color red EndFont End Style Theorem Font Color green Shape ital EndFont End
Cliquez sur le bouton Vérifier , après un certain temps, si tout y a été écrit comme il se doit, l'inscription Mise en page sans erreur apparaît à droite de ce bouton ! , tous, cliquez sur OK (enfin, ou sur Appliquer ). La fenêtre du programme LyX commence à ressembler à ceci: