SynEdit/es

From Lazarus wiki
Revision as of 01:36, 10 September 2009 by Iskraelectrica (talk | contribs)
Jump to navigationJump to search

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ísticas tales como soporte UTF-8 y plegado de código (code folding).

SynEdit en el IDE

El componente SynEdit es un paquete que ya viene integrado con Lazarus debido a que lo utiliza el propio IDE. Es por ello que no existe un fichero .lpk. Estos componentes se pueden encontrar dentro de la paleta de componentes en la solapa 'SynEdit'.

Ejemplos

Se puede encontrar un ejemplo en lazarus/examples/synedit1.lpi.

Como añadir soporte para Copy, Paste, Cut, Undo, Redo, etc

Estas características se pueden implementar utilizando mandatos SynEdit.

<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>


Documentación

El usuario bubulemaster ha realizado un documento sobre SynEdit disponible en el site:

http://www.bubulemaster.fr/downloads.php?cat_id=7

A priori se ve que está en francés, no se si más adelante lo traducirá al inglés.

Further development, discusiones

  • RTL (de derecha a izquierda (Right-To-Left)): comenzado por Mazen
  • Selección automática de fuente monoespacio: Por el momento SynEdit comienza con el tipo de fuente 'courier'. But it would be better, if SynEdit would start with a monospace font (significando: todos los caracteres tienen la misma anchura). Por el momento el LCL TFont no aporta tal propiedad. Por el momento el usuario tiene que escoger la fuente correcta.
  • Selección automática de fuente UTF-8: Same as above monospace, but also with an UTF-8 font, so that for example los umlaute se muestran correctamente. Por el momento el usuario tiene que escoger la fuente correcta.
  • Dead keys. Most keyboards support typing two or more keys to create one special character (como en los caracteres acentuados (á,é,í,...) o con umlaut).
  • 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, y por controles especializados, para su utilización fuera de Lazarus.