<para>L'éditeur de &kate; est la zone d'édition de la fenêtre de &kate;. Cet éditeur est également employé par &kwrite; et peut également l'être dans &konqueror; pour afficher des fichiers texte depuis votre ordinateur local ou depuis le réseau.</para>
<para>Les barres de défilement indiquent la position de la partie visible du texte du document et peuvent être utilisées pour se déplacer dans le document. Faire glisser les barres de défilement ne provoque pas de déplacement du curseur d'insertion.</para>
<para>Les barres de défilement sont affichées ou cachées selon les besoins.</para>
<para>La bordure d'icônes est une petite zone sur la gauche de l'éditeur affichant une petite icône à côté des lignes marquées.</para>
<para>Vous pouvez placer ou supprimer un <link linkend="kate-part-bookmarks">signet</link> dans une ligne visible en cliquant avec le &BGS; sur la bordure d'icônes à côté de cette ligne.</para>
<para>L'affichage de la bordure d'icônes peut être (dés)activée à l'aide de l'élément de menu <menuchoice><guimenu>Affichage</guimenu> <guimenuitem>Afficher la bordure d'icônes</guimenuitem></menuchoice>.</para>
<para>La zone de numéros de lignes affiche les numéros de lignes de toutes les lignes visibles dans le document.</para>
<para>L'affichage de la zone de numéros de lignes peut être (dés)activé à l'aide de l'élément de menu <menuchoice><guimenu>Affichage</guimenu> <guimenuitem>Afficher les numéros de ligne</guimenuitem></menuchoice>.</para>
<para>La zone de pliage permet de replier ou de déplier des blocs de lignes repliables. Le calcul des régions repliables est réalisé en fonction de règles dans la définition de coloration syntaxique du document.</para>
<para>Dans &kate;, on navigue dans le texte comme dans la plupart des éditeurs de texte graphiques. On déplace le curseur à l'aide des touches fléchées et des touches de défilement vers le <keycap>haut</keycap> et vers le <keycap> bas</keycap>, des touches <keycap>Début</keycap> et <keycap> Fin</keycap> en combinaison avec les modificateurs <keycap>Ctrl</keycap> et <keycap>Maj</keycap>. La touche<keycap> Maj</keycap> est toujours utilisée pour générer une sélection, alors que la touche<keycap>Ctrl</keycap> a effets différents sur des touches différentes: <itemizedlist>
<listitem><para>Pour les touches <keycap>Haut </keycap>et <keycap>Bas</keycap>, cela signifie faire défiler plutôt que déplacer le curseur.</para></listitem>
<listitem><para>Pour les touches <keycap>Gauche</keycap> et <keycap>Droite</keycap>, cela signifie sauter des mots plutôt que des caractères.</para></listitem>
<listitem><para>Pour les touches <keycap>Page précédente</keycap> et <keycap>Page suivante</keycap>, cela signifie de déplacer vers le bord visible de la vue plutôt que parcourir.</para>
<listitem><para>Pour les touches <keycap>Début</keycap> et <keycap>Fin</keycap>, cela signifie se déplacer au début ou à la fin du document plutôt qu'au début ou à la fin de la ligne.</para></listitem>
<para>&kate; offre également un moyen d'aller rapidement à une accolade ou une parenthèse correspondante. Placez le curseur à l'intérieur de la parenthèse ou de l'accolade et appuyez sur les touches <keycombo><keycap>Ctrl</keycap><keycap>6</keycap></keycombo> pour aller à l'accolade ou la parenthèse correspondante.</para>
<para>De plus, vous pouvez utiliser un <link linkend="kate-part-bookmarks">signet</link> pour aller rapidement sur des emplacements que vous aurez défini vous-même.</para>
<para>Pour sélectionner à l'aide de la souris, maintenez le &BGS; enfoncé tout en faisant glisser le curseur de la souris à partir de l'endroit où la sélection doit commencer, jusqu'au point final souhaité. Le texte est sélectionné au fur et à mesure que vous faites glisser le curseur de la souris.</para>
<para>Lorsque vous sélectionnez du texte en faisant glisser la souris, le texte sélectionné est copié dans le presse-papiers. Vous pouvez le coller en cliquant avec le &BCS; dans l'éditeur ou dans n'importe quelle application dans laquelle vous voulez coller le texte. </para>
<para>Pour sélectionner à l'aide du clavier, maintenez la touche &Maj; enfoncée tout en utilisant les touches de navigation (les touches fléchées, <keycap>Page précédente</keycap>, <keycap>Page suivante</keycap>, <keycap>Début</keycap> et <keycap>Fin</keycap>, éventuellement combinées avec la touche &Ctrl; pour étendre le déplacement du curseur de texte).</para>
<para>Reportez-vous également à la section <link linkend="kate-part-navigation">Naviguer dans le texte</link> dans ce chapitre.</para>
<para>Pour <action>copier</action> la sélection actuelle, utilisez l'élément de menu <menuchoice><guimenu>Édition</guimenu> <guimenuitem>Copier</guimenuitem></menuchoice> ou le raccourci clavier (par défaut, <keycombo action="simul">&Ctrl;<keycap>C</keycap></keycombo>).</para>
<para>Pour <action>désélectionner</action> la sélection actuelle, utilisez l'élément de menu <menuchoice><guimenu>Édition</guimenu> <guimenuitem>Désélectionner</guimenuitem></menuchoice> ou le raccourci clavier (par défaut, <keycombo action="simul">&Ctrl;&Maj;<keycap>A</keycap></keycombo>)ou bien cliquez avec le &BGS; dans l'éditeur.</para>
<para>Lorsque la sélection en bloc est activée, vous pouvez faire des «sélections verticales» dans le texte, &cad; sélectionner des colonnes limitées sur plusieurs lignes. C'est pratique pour travailler avec des lignes séparées par des tabulations, par exemple.</para>
<para>Vous pouvez (dés)activer la sélection par bloc à l'aide de l'élément de menu <menuchoice><guimenu>Édition</guimenu> <guimenuitem>Activer/désactiver la sélection par bloc</guimenuitem></menuchoice>. Le raccourci clavier par défaut est <keycap>F4</keycap>.</para>
<para>Si l'option «Écraser les sélections» est cochée, la fonction saisir ou coller du texte dans la sélection remplace le texte sélectionné. Si elle n'est pas cochée, le nouveau texte est ajouté à la position du curseur de texte.</para>
<para>Pour changer le paramétrage de cette option, utilisez la page <link linkend="config-dialog-editor-cursor-selection">Curseur et sélection</link> de la boîte de dialogue <link linkend="config-dialog">Configuration</link>.</para>
<para>Lorsque la sélection persistante est activée, la saisie des caractères ou le déplacement du curseur ne désélectionne pas la sélection. Cela signifie que vous pouvez sortir le curseur de la sélection et saisir du texte.</para>
<para>La sélection persistante peut être activée dans la page <link linkend="config-dialog-editor-cursor-selection">Curseur et sélection</link> de la boîte de dialogue <link linkend="config-dialog">Configuration</link>.</para>
<para>Si es options «Sélection persistante» et «Écraser les sélections» sont toutes deux activées, la fonction saisir ou coller du texte, lorsque le curseur est à l'intérieur d'une sélection, remplace et désélectionne le texte.</para>
<para>Pour copier du texte, sélectionnez-le et utilisez l'élément de menu <menuchoice><guimenu>Édition</guimenu> <guimenuitem>Copier</guimenuitem></menuchoice>. De plus, la fonction sélectionner du texte à la souris copie le texte dans le presse-papiers.</para>
<para>Pour coller le texte actuellement dans le presse-papiers, utilisez l'élément de menu <menuchoice><guimenu>Édition</guimenu> <guimenuitem>Coller</guimenuitem></menuchoice>.</para>
<para>De plus, le texte sélectionné à la souris peut être collé à la position souhaitée en cliquant avec le bouton <mousebutton>central</mousebutton> de la souris.</para>
<para>Si vous utilisez l'environnement de bureau &kde;, vous pouvez récupérer du texte copié précédemment depuis n'importe quelle application à l'aide de l'icône de &klipper; dans la boîte à miniatures de &kicker;.</para>
<para>Les boîtes de dialogue «Chercher du texte»et «Remplacer du texte» de &kate; sont très semblables, excepté que la boîte de dialogue «Remplacer du texte» offre le moyen de saisir une chaîne de caractères de remplacement, ainsi que quelques options supplémentaires.</para>
<term><guilabel>Texte à chercher</guilabel></term>
<listitem><para>C'est ici que vous devez saisir la chaîne de caractères à rechercher. L'interprétation de la chaîne dépend de quelques options décrites ci-dessous.</para></listitem>
<para>Si cette case est cochée, la chaîne de caractères est interprétée comme une expression rationnelle. Un bouton pour utiliser un outil graphique permettant de créer ou modifier l'expression sera activé.</para>
<para>Reportez-vous à la section <link linkend="regular-expressions">Expressions rationnelles</link> pour plus de détails à ce propos.</para>
<para>Si cette case est cochée, la recherche ne correspond que s'il y a un séparateur de mots aux deux extrémités de la chaîne recherchée, &cad; autre chose qu'un caractère alphanumérique - soit un autre caractère visible, soit un saut de ligne.</para>
<para>Si cette case est cochée, la recherche trouvera la première correspondance avant le point de départ, soit la position du curseur, soit le début du document, si l'option <guilabel>Depuis le début</guilabel> est cochée.</para>
<para>Cette option est décochée si aucun texte n'est sélectionné ou si l'option <guilabel>Demander lors du remplacement</guilabel> est cochée. Si cette case est cochée, toutes les occurrences de la chaîne de recherche dans le texte sélectionné sont remplacées par la chaîne de remplacement.</para>
<term><guilabel>Demander lors du remplacement</guilabel></term>
<listitem><para>Si cette option est cochée, une petite boîte de dialogue vous demande ce qu'il faut faire chaque fois qu'une occurrence est trouvée. Elle offre les options suivantes: <variablelist>
<para>Il n'y a actuellement aucun moyen d'utiliser une correspondance minimale lorsqu'on recherche une expression rationnelle. Cette option sera ajoutée dans les versions futures de &kate;.</para>
<para>Pour chercher du texte, lancez <guilabel>l'interface de recherche </guilabel> avec <keycombo action="simul">&Ctrl;<keycap>F</keycap></keycombo> ou via le menu <menuchoice><guimenu>Édition</guimenu> <guimenuitem>Chercher...</guimenuitem></menuchoice>, saisissez une chaîne de caractères à rechercher, paramétrez les <link linkend="find-replace-dialog">options</link> à votre convenance et cliquez sur <guibutton>OK</guibutton>. Si aucune occurrence n'est trouvée entre le point de départ de la recherche (soit la position du curseur dans le texte, soit le début du document) et la fin du document, le programme vous demande si vous souhaitez relancer la recherche depuis le début du document (ou depuis la fin, si vous faites une recherche arrière). </para>
<para>Si une occurrence est trouvée, elle est sélectionnée et la boîte de dialogue <guilabel>Chercher du texte</guilabel> est cachée, mais n'abandonnez pas, il est très facile de trouver les autres occurrences:</para>
<para>Pour trouver la prochaine occurrence dans la direction de la recherche, utilisez la commande <menuchoice><guimenu>Édition</guimenu> <guimenuitem>Poursuivre la recherche</guimenuitem></menuchoice> ou appuyez sur <keycap>F3</keycap>.</para>
<para>Pour trouver la prochaine occurrence dans la direction opposée, utilisez la commande <menuchoice><guimenu>Édition</guimenu> <guimenuitem>Trouver l'occurrence précédente</guimenuitem></menuchoice> ou appuyez sur <keycombo action="simul">&Maj;<keycap>F3</keycap></keycombo>.</para>
<para>Si aucune occurrence n'est trouvée avant d'atteindre la fin du document (ou le début du document si vous effectuez une recherche en arrière), le programme vous demande si vous souhaitez relancer une recherche. </para>
<para>Pour remplacer du texte, ouvrez la boîte de dialogue <guilabel>Remplacer du texte</guilabel> à l'aide de la commande <menuchoice><guimenu>Édition</guimenu> <guimenuitem>Remplacer</guimenuitem></menuchoice> ou du raccourci clavier <keycombo action="simul">&Ctrl;<keycap>R</keycap></keycombo>. Saisissez une chaîne de caractères à rechercher et, optionnellement, une chaîne de remplacement (si aucune chaîne de remplacement n'est saisie, chaque correspondance sera supprimée), paramétrez les <link linkend="find-replace-dialog">options</link> à votre convenance et cliquez sur le bouton <guibutton>OK</guibutton>.</para>
<para>Si vous employez une expression rationnelle pour trouver le texte à remplacer, vous pouvez faire appel àdes références arrières pour réutiliser le texte capturé dans des sous-motifs entre parenthèses de l'expression.</para>
<para>Reportez-vous à la section <xref linkend="regular-expressions"/> pour plus de détails à ce propos.</para>
<tip><para>Vous pouvez <command>chercher</command>, <command>remplacer </command>et effectuer une <command>recherche incrémentale </command> en <link linkend="advanced-editing-tools-commandline">ligne de commande</link>.</para>
<para>En déplaçant le curseur d'insertion sur cette ligne, puis en activant le menu <menuchoice><guimenu>Signets</guimenu><guimenuitem>(Dés)Activer les signets</guimenuitem></menuchoice> (<keycombo action="simul">&Ctrl;<keycap>B</keycap></keycombo>).</para>
<para>Les signets sont disponibles dans le menu <guimenu>Signets</guimenu>. Les signets individuels sont accessibles en tant qu'éléments de menu, le numéro de ligne de la ligne étant étiqueté avec le signet, ainsi que les premiers caractères du texte de la ligne. Pour déplacer le curseur d'insertion au début d'une ligne comportant un signet, ouvrez le menu et sélectionnez le signet.</para>
<para>Pour vous déplacer rapidement entre les signets ou vers le signet suivant et/ou précédent, utilisez les commandes <menuchoice><guimenu>Signets</guimenu><guimenuitem>Suivant</guimenuitem> </menuchoice> (<keycombo action="simul"><keycap>Ctrl</keycap> <keycap>Page suivante</keycap></keycombo>) ou <menuchoice> <guimenu>Signets</guimenu><guimenuitem>Précédent</guimenuitem></menuchoice> (<keycombo action="simul"><keycap>Ctrl</keycap><keycap>Page précédente</keycap> </keycombo>).</para>
<para>Cette fonctionnalité permet de formater le texte d'une façon très simple: le texte va à la ligne, de manière à ce qu'aucune ligne n'excède un nombre maximal de caractères par ligne, à moins qu'il ne s'agisse d'une très longue chaîne de caractères accolés sans blancs.</para>
<para>Pour (dés)activer cette fonctionnalité, (dé)cochez la case <guibutton>Retour à la ligne automatique</guibutton> dans la page <link linkend="config-dialog-editor-edit">Édition</link> de la boîte de dialogue <link linkend="config-dialog">Configuration</link>.</para>
<para>Pour définir la longueur maximale d'une ligne (le nombre maximal de caractères par ligne), utilisez l'option <link linkend="config-dialog-editor-wrap-words-at"><guibutton>Couper à la colonne</guibutton></link> dans la page <link linkend="config-dialog-editor-edit">Édition</link> de la boîte de dialogue <link linkend="config-dialog">Configuration</link>.</para>
<para>Si cette option est cochée, elle a les effets suivants: <itemizedlist>
<listitem><para>Lorsqu'on effectue une saisie, l'éditeur insère automatiquement un saut de ligne forcé après le dernier blanc à une position avant d'atteindre la largeur de ligne maximale.</para></listitem>
<listitem><para>Lorsqu'un document est chargé, l'éditeur génère des retours à la ligne d'une manière similaire, de sorte qu'aucune ligne ne dépasse la largueur de ligne maximale, si elle contient des blancs qui le permettent.</para></listitem>
<note><para>Il n'y a actuellement aucun moyen de régler le retour à la ligne en fonction du type de document. Ce paramètre sera ajouté dans une future version de &kate;.</para></note>
<para>Le composant éditeur de &kate; prend en charge différents modes d'indentation automatique, conçus pour différents formats de texte. Vous pouvez choisir parmi les modes disponibles à l'aide du menu <menuchoice><guimenu>Outils</guimenu><guisubmenu>Indentation</guisubmenu></menuchoice>. Les modules d'indentation fournissent également une fonction par le biais du menu <menuchoice><guimenu>Outils</guimenu><guimenuitem>Alignement</guimenuitem></menuchoice> qui recalcule l'indentation de la ligne sélectionnée ou de la ligne actuelle. Ainsi, vous pouvez réindenter entièrement votre document en sélectionnant tout le texte et en activant cette action.</para>
<para>Tous les modes d'indentation utilisent les paramètres d'indentation associés au document actif.</para>
<tip><para>Vous pouvez définir toutes les sortes de variables de configuration, y compris celles relatives à l'indentation, à l'aide du menu <link linkend="config-variables">Variables de document</link> et <link linkend="config-dialog-editor-filetypes">Types de fichiers</link>.</para></tip>
<listitem><para>Cet indenteur se contente de garder la même indentation que celle de la ligne précédente ayant un contenu autre qu'un caractère d'espacement. Vous pouvez combiner celle-ci à l'aide des actions d'indentation et de désindentation pour indenter selon votre gré. </para></listitem>
<listitem><para>Il existe un indenteur pour le C et les langages similaires, tels que C++, C#, java, javascript, etc. Celui-ci ne fonctionne pas avec des langages de scriptage tels que Perl ou PHP.</para></listitem>
<listitem><para>Un indenteur automatique XML très convivial. À tester toutefois, n'essayez pas de l'utiliser avec du HTML autre que le XHTML, car il ne fonctionne pas avec les anciennes balises HTML (ouvre des balises comme <br> par exemple).</para></listitem>
<para>L'indenteur variable est spécial en ce qu'il peut être configuré à l'aide de variables dans le document (ou dans la configuration d'un type de fichier). Les variables suivantes sont lues: <variablelist>
<para>Une expression rationnelle qui amène la désindentation d'une ligne d'une unité, si le premier non-espace-une ligne au-dessus correspond. var-indent-indent: une expression rationnelle qui provoque l'indentation d'une ligne correspondante d'une unité.</para>
<para>Une liste d'ensembles de parenthèses à gérer. Toute combinaison de 'parenthèses', 'accolades' et 'crochets'. Chaque type d'ensemble est géré de la manière suivante: s'il y a des instances d'ouverture non concordantes sur la ligne au-dessus, une unité d'indentation est ajoutée. S'il y a des instances de fermetures non concordantes sur la ligne au-dessus, une unité d'indentation est supprimée.</para>
<para>Lorsqu'on cherche des paires ouvertures/fermetures non concordantes, seuls les caractères ayant cet attribut sont pris en compte. La valeur doit être le nom d'attribut du fichier de syntaxe xml, par exemple «Symbole». Si elle n'est pas spécifié, l'attribut0 est utilisé (habituellement «Texte normal»).</para>