# Menú configurable per l'usuari

## Configuració

El &kile; implementa un menú configurable per l'usuari, el qual apareixerà com a part del menú del &kile;. Aquest menú es pot configurar utilitzant el diàleg de configuració del &kile; amb Arranjament Configura el &kile;...Menú d'usuari.

Configurant el menú d'usuari Configurant el menú d'usuari

Teniu dues opcions on col·locar aquest menú:

- Ja sigui l'entrada de menú Menú d'usuari que apareixerà a la barra de menús principal entre els menús LaTeX i Assistent com l'assistent de configuració Edita el menú d'usuari al menú Assistent.

  El menú d'usuari es troba en el menú principal El menú d'usuari es troba en el menú principal

- O ambdós elements apareixeran a la part inferior del menú LaTeX.

  El menú d'usuari com una part del menú LaTeX El menú d'usuari com una part del menú LaTeX

Les etiquetes definides per l'usuari ja existents de versions anteriors del &kile; es transformaran automàticament en el menú nou configurable per l'usuari. Les etiquetes es desen en un fitxer anomenat `usertags.xml` i igual que tots els fitxers de definició del menú, es poden trobar al directori de menú d'usuari local del &kile;: `KILE_APP_DIR/usermenu/`, &pex; `/home/usuari/.kde/share/apps/kile/usermenu/`.

Podeu utilitzar diferents fitxers de definició del menú per a les diferents tasques. Crideu l'assistent de menú d'usuari Assistent Edita el menú d'usuari o LaTeX Edita el menú d'usuari per a instal·lar o modificar un fitxer de definició de menú.

## Assistent

Podeu crear o modificar menús existents amb un confortable assistent de configuració del menú d'usuari que es troba a Assistent Edita el menú d'usuari.

El menú d'usuari de l'Assistent El menú d'usuari de l'Assistent

A la part esquerra veureu un menú en arbre existent. Com un menú estàndard, estaran disponibles tres tipus diferents d'elements de menú:

- Entrades de menú estàndard, que s'assignen a una acció.

- Submenús, que contenen més elements de menú.

- Separadors, per a aconseguir una estructura visible de totes les entrades.

Per a modificar aquest menú, utilitzeu els sis botons al costat esquerre. Són possibles més accions, disponibles al menú contextual dels elements de menú ja existents.

El menú en arbre definit per l'usuari El menú en arbre definit per l'usuari

Cada element de menú estàndard s'assigna a un dels tres tipus d'acció, on cadascun d'ells té atributs diferents, que es poden establir:

- Text: el &kile; ofereix la capacitat de crear les vostres pròpies etiquetes. Una etiqueta és similar a una drecera que llança alguna ordre o que escriu textos d'ús freqüent, &pex;, en Joe Sixpack utilitza sovint les frases `Hi, I have been inserted ...`. Aquesta etiqueta serà inserida a la posició actual del cursor, quan es cridi aquesta acció (vegeu a dalt). També estan disponibles els metacaràcters (vegeu id_usermenu_placeholders).

- Insereix el contingut del fitxer: Insereix tot el contingut d'un fitxer donat.

  Inserint el contingut d'un fitxer Inserint el contingut d'un fitxer

- Executa un programa extern: La sortida d'aquest programa es pot inserir en el document obert. El metacaràcter `%M` també és possible a la línia d'ordres d'aquest programa, atès que el text seleccionat es desarà en un fitxer temporal. Utilitzeu `%M` per al nom de fitxer d'aquest fitxer temporal.

  Executant un programa extern Executant un programa extern

Si no està present alguna informació important per a una acció, els elements de menú seran de color vermell. Aquesta pot tractar d'un fitxer inexistent.

El fitxer no existeix El fitxer no existeix

O un títol que falti per a l'entrada de menú, el qual es mostrarà amb signes d'interrogació com `???`.

Falta el títol d'una entrada de menú Falta el títol d'una entrada de menú

Si obriu el menú contextual d'un element de menú en color vermell, obtindreu una opció addicional per a obtenir més informació sobre aquest error.

Informació addicional Informació addicional

Més informació també pot estar disponible utilitzant la característica Què és això? de la majoria de ginys.

## Marcadors de posició

### Inserir text

Hi ha alguns marcadors de posició que podeu utilitzar en les etiquetes definides per l'usuari: `%C`, `%B`, `%M`, `%E`, `%R` i `%T`.

- `%C`: indica a on se situarà el cursor després d'inserir una etiqueta definida per l'usuari.

  Posició del cursor (%C) Posició del cursor (%C)

- `%B`: serà substituït per un pic (vegeu editing_bullets).

  Pic (%B) Pic (%B)

- `%M`: serà substituït pel text seleccionat.

  Text seleccionat (%M) Text seleccionat (%M)

- `%E`: indica la profunditat del sagnat del text dins d'un entorn.

  Sagnat del text d'entorn (%E) Sagnat del text d'entorn (%E)

- `%R`: cridarà a un diàleg de referència per a escollir una etiqueta que ja s'ha definit. Això es pot utilitzar per a referir-se a una etiqueta predefinida, que podreu escollir des d'una llista desplegable (vegeu LaTeX Referències ref o LaTeX Referències ref_pàgina).

  Referències (%R) Referències (%R)

- `%T`: cridarà un diàleg de cita per a escollir una cita ja definida. El mateix que utilitzar LaTeX Referències cita una llista amb totes les claus de cita que apareixen.

  Claus de citació (%T) Claus de citació (%T)

Considerem un altre exemple, amb la macro `\frac{%M}{%C}`. En primer lloc, seleccionem un nombre en el nostre text, diguem `42`. Ara invocarem aquesta macro i obtindrem `\frac{42}{}` amb el cursor situat en el segon parell de claus.

### Inserir el contingut d'un fitxer

Si voleu inserir el contingut d'un fitxer de text, podeu utilitzar els mateixos marcadors de posició.

### Executar un programa

Si voleu executar un programa extern, a la línia d'ordres només es reconeixerà la `%M` per al text seleccionat. La selecció es desarà en un fitxer temporal i el marcador de posició `%M` serà substituït amb aquest nom de fitxer.

Executant un programa extern (%M) Executant un programa extern (%M)

Un altre marcador de posició és `%S`, que serà substituït pel nom base complet del document actual sense el camí d'accés. Aquest nom base es compon de tots els caràcters al fitxer fins a (però sense incloure) l'últim caràcter «.».

## Paràmetre

La majoria de les entrades al menú poden tenir altres paràmetres autoexplicatius, que es poden seleccionar. Si algun d'aquests paràmetres no estan disponibles per a algun tipus d'acció, aquestes restaran desactivades.

El menú d'usuari de Paràmetre El menú d'usuari de Paràmetre

Heus aquí un exemple de l'execució d'un programa extern:

Paràmetre d'exemple Paràmetre d'exemple

Podeu veure que es crida un script `perl`, que ha de treballar amb la selecció actual. El paràmetre Necessitats el text seleccionat es marca per a assegurar una selecció. La sortida d'aquest script s'inserirà (Insereix la sortida del programa escollit) i substituirà a la selecció actual (Substitueix el text seleccionat), però no serà seleccionat per si mateix.

Per descomptat, també podeu cridar als vostres propis programes o scripts. Per exemple, seleccioneu una llista de números, separats per espais, i crideu a un script o programa en Perl, el qual transformarà aquesta selecció en un codi en &latex; per a una matriu. Siguin quines siguin les vostres idees, podreu adonar-vos utilitzant la següent entrada del menú d'usuari.

Paràmetre d'exemple 2 Paràmetre d'exemple 2

## Fitxers de definició del menú

Podeu instal·lar diferents menús en temps d'execució per a diferents tasques. Quan crideu l'assistent menú d'usuari, el fitxer de definició de menú actual serà carregat. Si el modifiqueu i tanqueu el diàleg amb D'acord, els canvis es desaran i s'instal·laran com el menú nou d'usuari. Tanqueu el diàleg amb Cancel·la i es descartaran tots els canvis.

Fitxers de definició del menú Fitxers de definició del menú

També sou lliure per a desar el fitxer modificat al directori del menú d'usuari o per a carregar un altre fitxer de definició del menú i instal·lar-lo. Tots els fitxers de definició del menú d'usuari s'han de desar al directori de menú d'usuari del &kile;: `KILE_APP_DIR/usermenu/`.

Mireu l'exemple del fitxer de definició del menú `exemple.xml` per a veure més entrades de menú amb els seus paràmetres.