Difference between revisions of "SynEdit/es"

From Lazarus wiki
Jump to navigationJump to search
(New page: {{SynEdit}} SynEdit is a package containing a source editor component named TSynEdit, several syntax highlighters and other components used for surce editing. It is based on SynEdit 1.3, ...)
 
Line 1: Line 1:
 
{{SynEdit}}
 
{{SynEdit}}
  
SynEdit is a package containing a source editor component named TSynEdit, several syntax highlighters and other components used for surce editing. It is based on SynEdit 1.3, and was adapted and extended quite a lot. For example UTF-8 support and code folding were added.
+
SynEdit es un paquete que contiene un componente editor de código fuente llamado TSynEdit, varios resaltadores de sintaxis y otros componentes utilizados para la edición de código fuente. Está basado en SynEdit 1.3 a partir del cual fué adaptado y extendido con característica tales como soporte UTF-8 y code folding.
  
== SynEdit in the IDE ==
+
== SynEdit en el IDE ==
  
The SynEdit in lazarus is a built-in package, because the IDE uses it itself. That's why there is no .lpk file.
+
 
 +
The SynEdit in lazarus is a built-in package, because the IDE uses it itself. Es por esto que no existe un fichero .lpk.
 
The components can be found on the component palette on the 'SynEdit' page.
 
The components can be found on the component palette on the 'SynEdit' page.
  

Revision as of 00:22, 4 September 2009

Deutsch (de) English (en) español (es) français (fr) 日本語 (ja) polski (pl) русский (ru) 中文(中国大陆)‎ (zh_CN)

SynEdit es un paquete que contiene un componente editor de código fuente llamado TSynEdit, varios resaltadores de sintaxis y otros componentes utilizados para la edición de código fuente. Está basado en SynEdit 1.3 a partir del cual fué adaptado y extendido con característica tales como soporte UTF-8 y code folding.

SynEdit en el IDE

The SynEdit in lazarus is a built-in package, because the IDE uses it itself. Es por esto que no existe un fichero .lpk. The components can be found on the component palette on the 'SynEdit' page.

Examples

An example can be found at lazarus/examples/synedit1.lpi.

How to add support to Copy, Paste, Cut, Undo, Redo, etc

These features can be implemented by using SynEdit commands.

<delphi> uses

 ...
 SynEdit, SynEditKeyCmds;

procedure TfrmPrincipal.HandleCodigoKeyDown(Sender: TObject; var Key: Word;

 Shift: TShiftState);

begin

 if (Shift = [ssCtrl]) then
 begin
   case Key of
   VK_C: synCodigo.CommandProcessor(TSynEditorCommand(ecCopy), ' ', nil);
   VK_V: synCodigo.CommandProcessor(TSynEditorCommand(ecPaste), ' ', nil);
   VK_X: synCodigo.CommandProcessor(TSynEditorCommand(ecCut), ' ', nil);
   end;
 end;

end; </delphi>


Further development, discussions

  • RTL (right-to-left): started by Mazen
  • automatic monospace font selection: At the moment SynEdit starts with a font 'courier'. But it would be better, if SynEdit would start with a monospace font (meaning: every character has the same width). At the moment the LCL TFont does not provide such a property. At the moment the user has to choose the right font.
  • automatic UTF-8 font selection: Same as above monospace, but also with an UTF-8 font, so that for example umlaute are shown correctly. At the moment the user has to choose the right font.
  • Dead keys. Most keyboards support typing two or more keys to create one special character (like accented or umlaut characters).
  • Redesign of the SynEdit component. The primary goal is more reliable display and navigation in the text. A more modular approach also allows for better integration of extensions, and for specialized controls, for use outside of Lazarus.