Skip to content

search_and_replace FR

ispyisail edited this page Sep 11, 2026 · 1 revision

Rechercher et remplacer

Modifier en masse des propriétés dans tout un projet : titres de folio, étiquettes et informations d'éléments, texte de conducteur, texte indépendant. Malgré son nom, ce n'est pas une recherche/remplacement de texte — voir §2 pour ce que cela fait réellement.

Source : sources/SearchAndReplace/ — searchandreplaceworker.{cpp,h} (la logique), ui/searchandreplacewidget.cpp (l'arbre de portée principal), ui/replace*dialog.cpp (les éditeurs par catégorie).


1. Délimiter ce qui est modifié

Le dialogue principal est un arbre de tout ce qui correspond, groupé par type :

  • Folios
  • Champs texte (texte indépendant)
  • Éléments, subdivisés en simple / maître / esclave / renvoi de folio / bornier — les mêmes catégories que documente Lier des éléments
  • Conducteurs

Clic droit sur un folio dans l'arbre pour Sélectionner les éléments/conducteurs/textes de ce folio — passe directement d'un résultat de recherche à une vraie sélection sur le canevas, utile pour vérifier une correspondance avant de s'engager à la modifier.


2. Cela fixe des valeurs, ce n'est pas un rechercher-remplacer de texte

Chaque catégorie ouvre un dialogue avec un champ par propriété (étiquette, commentaire, titre de folio, couleur de conducteur…). Laissez un champ vide et cette propriété reste totalement intacte sur tout ce qui correspond. Remplissez-le, et il remplace intégralement la valeur — pas une substitution de sous-chaîne, tout le champ devient ce que vous avez saisi.

Cette distinction compte : il n'y a ici aucune reconnaissance de motif « trouver X, remplacer par Y » pour le contenu textuel. Si c'est ce que vous voulez, vous fixez le champ de chaque élément correspondant à exactement la même nouvelle valeur.

Effacer un champ délibérément

Comme une case vide signifie déjà « ne pas toucher », vider un champ pour de bon nécessite un signal distinct — une case à cocher à côté de chaque champ s'en charge : cochez-la et le champ se désactive, et cette propriété est effacée sur toute correspondance plutôt que laissée intacte. En interne, cela passe par une chaîne sentinelle réservée (SearchAndReplaceWorker::eraseText()) que la case à cocher définit pour vous ; vous ne la tapez jamais vous-même.

Chaque champ a donc trois états réels : vide (ne pas toucher), coché (effacer), ou rempli (remplacer) — pas les deux habituels.


3. Ce qui est modifiable par catégorie

Correspond aux quatre types de cible de SearchAndReplaceWorker :

Catégorie Champs typiques
Folio titre, auteur, indice de révision, et autres champs de cartouche
Élément étiquette et les champs d'information d'élément standard
Conducteur texte, fonction, tension/protocole, couleur, section, alignement
Texte indépendant le contenu du texte lui-même

Un mode Avancé combine plusieurs de ces catégories en une seule opération sur des sélections mixtes, plutôt que de traiter folios/éléments/ conducteurs un dialogue à la fois.


4. Remarques pratiques

  • Cela modifie beaucoup de choses en une fois, sans annulation fine par élément — c'est une opération groupée unique. Vérifiez l'arbre de portée avant de valider.
  • Un champ vide étant un no-op, vous pouvez ouvrir le dialogue, ne toucher que la seule propriété qui vous intéresse, et tout le reste sur chaque élément correspondant reste garanti intact — sûr à lancer largement tant que vous ne remplissez que ce que vous comptez changer.
  • C'est une fonction propre à l'interface graphique ; il n'y a pas d'équivalent en ligne de commande. Pour des modifications groupées scriptées, voir Automatiser QElectroTech — éditer le XML directement.

Voir aussi : Lier des éléments · Variables et formules

Getting Started

Home

🌐 Languages — English · Français · Deutsch

Downloads

Windows without admin rights — the portable archive, no installer

Quick Start Guide

User Manual

FAQ

Tips & Tricks

Guides

Conductors — wire properties, what feeds which export, cables, and hops where wires cross

Wires per terminal — limit the wires on a terminal, chain wiring instead of stars

Printing and exporting — paper, PDF, images, and what each path does differently

Linking elements — master, slave, terminal

PLC modules — I/O tables and linking a wire to a specific point

Using the element editor — drawing tools, saving, checks

Grid size and element size — why symbols aren't all the same scale, and scaling one without leaving the grid

Preferences reference — what each settings page does

Saving and loading settings — your whole setup in one file, to copy or keep

Keyboard-only control — mouseless QET, and what still needs a mouse

Mouse modifiers — what Shift, Ctrl and Alt change while you drag

3D mouse — SpaceMouse pan, zoom and buttons

Aligning items — snap symbols back to the grid, or line them up

Pictures on a sheet — labels, crop, transparency, what they cost in the file

Arcs and curved wires — the Arc tool, pulling an arc in or out, rounding a corner with a fillet, dashed arcs for lighting layouts

Grouping items — select, move and copy several items as one

Finding your place on a sheet — go to a cell like B13 or 4-B7, keep the headers in sight, show the cell limits, zoom and pan

Showing and hiding kinds of items — hide texts, wire numbers, shapes, pictures, tables or cross-references on every sheet

Drawing faster — place without dragging, the S shortcut bar, command search, gestures

Customising QElectroTech — keys, toolbar size and contents, the gesture ring (partly pending)

Managing collections — folders, writability, building your own shortlist

Templates — reusable multi-element blocks, placed by double-click or drag

Search & Replace — bulk property changes

Building a nomenclature query — the BOM/summary table builder

Linking wires across pages — sheet reports

Variables & formulas — %f, %{label}, sequences

Auto-numbering — schemes, sequences, freezing

Terminal strips — strips, levels, bridges

Title block templates — the .titleblock format

Importing EPLAN parts (.edz) — EPLAN Data Portal

DXF import & export — two unrelated features, one format; command-line export and layers

The project database — the in-memory SQLite cache

File formats
Elements XML
Project XML
Development

Building from Source

Contributing Code

Automating QET — CLI, XML formats, external tools

CLI Reference — command line usage

JavaScript Scripting — --run, geometry editing, undo

MCP server — let an AI assistant read, verify and edit projects

Connecting an AI assistant — setup for Claude, Copilot, Gemini, Codex, Cursor, LM Studio

Script buttons — stored scripts with an icon, by hand or by an assistant

Live mode — an assistant working in the open project while you watch

Macro recorder — record a task by hand, for an assistant to script

Development Roadmap

Vision — proposal, under discussion

Developer Tools

About

Features

History

Community

License

Contributing to this Wiki

Clone this wiki locally