Previous: 4 TeTEX, TEX, LATEX
Up: Applyx 045
Next: 6 Slides
  Contents
Subsections
- Nous avons pu contempler les versions suivantes (TAB. 1) :
TAB. 1:
Correspondance Suse LYX
|
|
- La compatibilité ascendante est bonne pour les fichiers (pas toujours
pour ce qui relève des fichiers .layout). Par contre, rien n'est prévu
pour la compatibilité descendante. Le passage LYX 1.3.5
LYX 1.2.0 ne tient pas compte des dimensions des images (mais ne
les supprime pas). Par contre, le passage LYX 1.3.7
LYX 1.3.5 nécessite une moulinette.
- Le mimetype d'un fichier *.lyx est application/x-lyx. Le
bon fonctionnement nécessite donc un fichier de typage /opt/kde3/share/mimelnk/application/x-lyx.desktop
et un fichier de lancement /usr/share/applications/lyx.desktop.
La version
de ces fichiers est donnée LISTING 6.
- Sous
, il était utile de modifier kEdit et kWrite pour leur
adjoindre le type x-lyx. Moyennant quoi, les fichiers *.lyx étaient
affichés avec des liens actifs sur klyx, kedit et kwrite, avec kedit
comme application par défaut.
- Avec
, le lien LYX est relégué en arrière plan si kedit
ou kwrite sont déclarés.
- Pour une installation automatisée, il faut recopier le répertoire
.../_modified de latex et les répertoires ~/.lyx/bind
et ~/.lyx/layout.
Les fichiers concernés se trouvent dans lyxdir (i.e. /usr/share/lyx)
et dans ~/.lyx. Nous avons choisi d'implémenter
le plus de choses possibles dans le répertoire ~/.lyx.
On recopie donc lyxdir/lyxrc.example vers ~/.lyx/lyxrc
et lyxdir/bind/* vers ~/.lyx/bind.
La valeur effective de lyxdir se lit par Help/Version. Laisser
lyxrc.default dans lyxdir. En cas de modification
de la configuration depuis un LYX en exécution, il se crée un fichier
.lyx/preferences. Dans lyxrc, configurer les points
suivants :
- [LookNfeel] interface=default, bind=my_own_binds, backup=5mn
- [Language] babel, aspell
- [Outputs] default_paper=A4,
- [Paths] temporaires=rien
- [Formats] dvi = xdvi -geometry 924x960 -browser konqueror -expertmode
4 -s 6 -linkstyle 2
- [Converters]
- Les fichiers temporaires vont dans /tmp/lyx_session/lyx_buffer.
On constate que LYX supprime "le plus souvent"
ces répertoires temporaires, contrairement à KLYX qui les laissait
"le plus souvent".
- (très vieille remarque) Ne pas oublier que rv_split (le découpage
en recto et verso) a besoin de l'existence d'au moins un fichier /tmp/*/*/*.ps...
- Visualisation : xdvi et surtout pas kdvi. Le format de fenêtre de
xdvi peut désormais être laissé pleine hauteur, puisque la barre des
tâches est rétractable (problème d'affichage du bas du texte). Pendant
que l'on y est, rapatrier le lien de xdvi depuis
/opt/kde/share/applnk/SuSE/prod/text/viewer/tetex.kdelnk
ou
/etc/opt/kde2/share/applnk/SuSE/Office/Viewer/te_etex.desktop
vers
/opt/kde/share/applnk/Graphics/xdvi.kdelnk.
- Fontes mathématiques. Pour accéder aux caractères blackboardbold,
c'est à dire à
, utiliser \usepackage{amsfonts}.
On appelle la fonte par
.
- Avant, on pouvait supprimer l'écran initial
- babel sucks (Subsection 4.4)
- LYX appelle babel y compris pour un document "american".
Sauf qu'un tel document est, par définition, dans la langue d'origine,
et que les auteurs des routines pré-babel n'en tiennent pas compte.
Bilan : on peut voir un magnifique "AMERICAN"
au début du titre courant des pages IEEEtrans.cls. Contournement basique :
ajouter une ligne
\renewcommand{\foreignlanguage}[1]{}
quelque part avant le \markboth.
- Bonne nouvelle : depuis
, on peut débrancher totalement
babel sous LYX en suivant /Edit/Preferences/Language/Language
: mettre %% devant les commandes babel et selectlanguage.
- Prettyref : nous avons réécrit ce package pour contourner la babel-merdification
du caractère
, cf. Subsection 8.2.
Sous LYX, la configuration des raccourcis-clavier s'effectue à
l'aide des fichiers *.bind. On a le choix entre partir
d'une version Emacs, ou d'une version cua, c'est à dire Window$.
Nous partons de cua. Le problème consiste à gérer les éventuels conflits
entre les diverses sortes de raccourcis-clavier utilisés par kde et
par LYX. On distingue :
- [globals] Ce sont les raccourcis permettant le dialogue avec le
système, ou en tout cas le gestionnaire de fenêtres. Dans
,
ils se positionnent à l'aide de kcmkeys, et sont stockés
dans ~/.kderc. Dans
, on peut en obtenir une
copie de sauvegarde, qui arrive dans ~/.kde2/share/apps/kcmkeys/global.
- [standard] Ce sont les raccourcis "standard",
destinés à implémenter un look uniforme entre les diverses applications.
- [ruses] Il s'agit des fameuses "ruses de clavier"
qui permettent à toutes ces peuplades étranges de dessiner les cécédillescirconflexes
qui les distinguent de leurs ennemis.
- [menu] Ce sont les raccourcis du menu à la Windows de l'application
en cours.
- [bind] Les raccourcis programmables de LYX (enfin).
Voici la liste des raccourcis utilisés :
- globals :
= pop-up menu,
= windows list,
= close (à la Win-xx),
= change de bureau,
= maximize vertical,
maximize horizontal.
- standard : avec
, context-menu est déjà positionné et on
laisse le reste.
On veut lister toutes les actions clavier réalisables depuis LYX.
- Avec
, les raccourcis-systèmes sont dans /.kde/share/config/kdeglobals.
Pour certaines versions antérieures, il était nécessaire d'enregistrer
les raccourcis
(kdecontrol -> look_and_feel/keys) sous
les noms respectifs de keys_glob et keys_apps.
- Créer un fichier aaa-lyx.bind pour marquer les combinaisons
utilisées par les menus de LYX. Cela est langage dépendant... d'où
l'intérêt de rester en globish.
- Puis créer le fichier all_binds.binds, à l'aide du batch
qyk_docs_keys (LISTING 8).
- Le résultat donne, trié alphabetiquement, toutes les combinaisons
clavier utilisées à un titre ou un autre... et donc celles qui restent
disponibles.
- Les commandes LYX changent tout le temps (à chaque livraison, il
y a de nouvelles surprises).
- Depuis
, les "maths-insert" sont suivis
de la commande latex complète (avec le
).
- Avec
(=LYX
), les sous-menus passent par "dialog-show"
(ainsi findreplace et spellchecker)
- Print : "buffer-print" ne donne plus rien. Le remplacer
par "dialog-show print".
- D'ailleurs, les LYXeurs n'arrivent pas à se suivre eux-mêmes :
"protected-space-insert" a disparu de LYX
,
mais aqua.bind s'en sert encore.
- Plus beau encore: les LYXeurs ont perdu la guerre des quotes (cf
11.11). Les différents binds, y compris cua.bind,
ne savent plus produire une quote "qui quote", et
non pas
\begin_inset Quotes elm
\end_inset
En effet, la commande "self-insert \""
(valable pour
) se contente d'insérer la touche clavier...
tandis que "command-sequence self-insert \"\";
char-backward ;" fait ce qu'il faut
- On peut rester compatible en laissant coexister différentes commandes
pour un même raccourci à condition qu'une seule soit valide pour chaque
version de LYX. Une ligne non reconnue donne alors un message d'erreur
quand on lance LYX dans un terminal.
- Pour disposer d'une liste des commandes possibles pour une livraison
donnée, le plus simple est d'archiver les provided.bind de
chaque livraison. Puis de les compiler trier avec LISTING 9.
- Et alors un diff entre les commandes possibles et les commandes implémentées...
- Depuis "un certain temps" (avant
), toute
frappe clavier est une commande, qui doit être interprétée. Être attentif
au fait que les codes-clavier utilisés dans les fichiers *.bind
ne sont pas les "scan-codes" sortis directement
du clavier, mais quelque chose qui ressemble à deux octets, l'un pour
coder l'état des modificateurs (shift, control, meta...), et l'autre
pour coder le caractère plus ou moins brut. Ainsi doit-on écrire M-m
M-S-greater. L'indifférence aux majuscules se code ~S-x.
- Par conséquent, ce codage dépend de la langue utilisée pour décoder
le clavier. Ainsi, 3 n'existe qu'au clavier us. Au clavier fr, il
n'existe que quotedbl, S-3 et KP_3, et il faut réécrire les *.bind
en conséquence, car les franchouillateurs du LYX-team ne semblent
pas s'être rendu compte de la chose.
- M-x (c'est à dire command-execute) envoie sur la ligne de commande
(vide) et alors [tab] fait défiler les commandes à partir du texte
en cours.
- Comment avoir le choix du nom d'exportation (par exemple en latex)
?
- [
] ouvre la liste des styles
de paragraphe, et on peut y naviguer par initiales.
- [
Récent] ouvre une liste des derniers
copier/coller
- [
Settings] permet d'accéder au dialogue
des propriétés de l'encadré [inset-settings]. C'est ainsi qu'un
ERT peut être inline. azor
- [
] Buffer-next
- [
] Buffer-previous
- Depuis le monde extérieur vers l'éditeur de texte : C-c / C-v ne donne
rien (C-v insère le dernier copier interne au klyx en cours). Par
contre, une sélection souris (de n'importe où) peut être collée par
le bouton central.
- Du monde extérieur vers l'éditeur d'équations ???
- De l'éditeur d'équations vers l'éditeur de textes, ou le contraire
???
- Depuis l'un des deux éditeurs vers le monde extérieur ?
5.8 Correcteur d'orthographe
- Utilise la langue du document et place les mots spéciaux dans le fichier
~/.ispell_langue
- Erreur
. Quand la langue est français, elle est codée "french"
et ispell ne trouve pas le dictionnaire "francais".
Contournement : placer des liens symboliques dans /usr/lib/ispell
sur les fichiers *.aff et *.hash (intégré dans nullix_config)
- Comment faire pour changer de langue en cours de document ?
- Comment isoler les passages que l'on ne veut pas corriger ?
- Comment modifier le texte en cours de correction, autrement qu'en
fermant le correcteur pour le rouvrir ensuite ?
- Les noms d'imprimantes proposés sont composés de la liste triée caps_first
des derniers alias dans /etc/printcap ... donc klein|so_und_so|Klein
.....
- Imprimer des multiples : il semble que klyx ne transmet pas la multiplicité
au spooler. En tout état de cause, les batchs rv* résolvent la question.
- Changer le format d'une table : copier le texte (on récupère des lignes
séparées par des retours spéciaux), puis le coller dans la nouvelle
structure (ajouter ou supprimer les retours nécessaires).
- Écrire une macro sed pour préparer la récupération d'un tableau ascii,
avec tabulations, dans une table lyx ...
Not yet written
- KLYX présentait (à l'époque de
) un certain nombre d'avantages
par rapport à LYX, en particulier le multifenêtrage. Nous l'avions
adopté pour cette raison.
- Le copier/coller de l'extérieur vers KLYX semblait un peu plus
efficace que vers LYX (il n'est toujours pas efficace).
- Cela dit, la dernière version de KLYX est KLYX 0.10.0 (1997-1999),
basée sur LYX-0.10-0.12. Cette version n'a pas évolué depuis, et
il semble que le projet n'est plus poursuivi. D'où un retour au programme
original... même si celui-ci semble plus difficile à configurer.
Remarques sur KLYX 0.12.0 :
- Les règles de non-indent en début de section ont été bricolées. Avec
"langage=american" , on a non-indent. Avec "langage=french"
, on a indent. Mais quand on repasse à "langage=american"
, on est toujours en indent.
- les boulettes changent de forme entre american et french
- Le paquetage algorithmic ne fonctionne pas correctement ("no
counter chapter" en langage=american). De toutes façons,
nous l'avons réécrit.
Previous: 4 TeTEX, TEX, LATEX
Up: Applyx 045
Next: 6 Slides
  Contents
douillet@ensait.fr
2007-12-06