сделать стартовой  |  добавить в избранное

   SciTE - редактор кода для программистов

Архив SciTE-форума


Автор: Fraerok, Отправлено:18:10 24-04-2009
Релизить-то, спустя полгода, не собираетесь?
Автор: BioInfo, Отправлено:19:54 24-04-2009
Victor_Dobrov

Цитата:
При открытии .iss файла подсветка работает только для строк, которые видно на экране. Если начать правку кода, то подсветка пропадает для всего текста после курсора.

Поправил
Автор: juvaforza, Отправлено:15:59 28-04-2009
SciTE 1.78 + Scintilla 1.78

История изменений

Страница загрузки
Автор: ChronoAngel, Отправлено:16:28 28-04-2009

Цитата:
SciTE 1.78

Скажите пожалуйста,а версию Ru-Board Edition на основе 1.78,долго ждать придётся?
Автор: mozers, Отправлено:22:26 28-04-2009
Fraerok ChronoAngel
Регулярно выкладывающиеся "бетты" содержат на порядок больше изменений чем в официальном релизе 1.78. Все труднее сливать официальную версию и SciTe-Ru - слишком уж сильно они отличаются. Сейчас это делает VladVRO. Вот сольет, ALeXkRU переведет History, BioInfo обещал поправить лексер Inno, еще тут кой чего доделать надо... В общем - все своим чередом... Сроки зависят от обстоятельств...
А просящих я бы попросил подумать про себя: так ли внетерпеж им нужна циферка в номере версии?...


Добавлено:
Интересную фичу нарыл тут BioInfo:
Оказывается, SciTE позволяет создавать раскрывающиеся списки, украшенные произвольными иконками.
Вот, выложил в коллекцию пример такого списка. Иконки (в формате xpm) выдраны из самого SciTE (он их использут для построения тулбара в gtk).
Сам формат xpm - очень наглядный и позволяет описать любую иконку в текстовом виде, что позволяет записать его прямо в скрипте.
Теретически можно вручную описать любую иконку, но практически, конечно, муторно. Вот пытаюсь разыскать какую нить тулзу или (лучше) скрипт для преобразования...
Ведь так можно и наш тулбар создавать lua-скриптом! И вместо dll которую можно изменять только редактором ресурсов или компилить заново был бы полностью открытый для редактирования скрипт.
Ну, как идея?
Автор: Victor_Dobrov, Отправлено:02:35 29-04-2009
BioInfo

Цитата:
Поправил (ошибку с подсветкой Inno Setup)

Скачал SciTE 1.78 + Scintilla 1.78, раскомментировал поддержку Inno Setup и загрузил вот этот [more=iss-файл]
Код:

#define MyAppName "ISHint Demo Full"
#define MyAppVerName "ISHint 0.5.4.48 by South (htuos)"
#define MyAppPublisher "created by South (htuos)"

[Setup]
AppName={#MyAppName}
AppVerName={#MyAppVerName}
CreateAppDir=false
OutputBaseFilename=ISHintDemoFull
OutputDir=.

[Files]
Source: ISHint.dll; DestDir: {tmp}; Flags: ignoreversion dontcopy

[CustomMessages]

Hint0=Balloon / Без иконки / Без заголовка %nа это вторая строчка
Hint1=$200|Title 2|Balloon / Без иконки / + Ваш заголовoк %nа это вторая строчка
Hint2=$218|Balloon / + Иконкa / Стандартный заголовок %nа это вторая строчка

Hint3=$100|Классический / Без иконки / Без заголовка %nа это вторая строчка
Hint4=$100|Title|Классический / Без иконки / + Ваш заголовoк %nа это вторая строчка
Hint5=$318|Классический / + Иконкa / Стандартный заголовок %nа это вторая строчка

BackGround=$800|если окно развернуть и перемещать мышь, то мастер скрывается%nклик мышью покажет Мастер
Info=Информация

;6 стиль и размер текста=
;5 цвет фона=
;4 цвет заголовка=
;3 цвет текста=
;2 бит0 - тип хинта=
;    $000 - Balloon=
;    $100 - classic=
; бит1 - файл иконок=
;    $000 - Icons.icl=
;    $200 - shell32.dll=
; бит2=
;    $000 - без кнопки закрыть=
;    $400 - с кнопкой=
; бит3=
;    $000 - неподвижный=
;    $800 - следовать за мышью=
;1 № иконки=
;0 № иконки / если > 0, то хинт с иконкой=

[Code]
const
DefBackColor = $E3FFFF;
DefTextColor = $000000;

var
i:integer;
r:TRect;

function HintCreate(hControl:THandle; IconIndex:integer; Title,Text:PChar; IsBalloonStyle,WithCloseBtn:boolean):integer; external 'HintCreate@files:ISHint.dll stdcall';
procedure HintShow(X,Y:integer; TimeShow:integer); external 'HintShow@files:ISHint.dll stdcall';
procedure HintRefresh(hControl:THandle); external 'HintRefresh@files:ISHint.dll stdcall';
procedure HintSetParam(hControl:THandle; BackColor,FrameColor:Longint; FontName:PChar; FontSize:integer); external 'HintSetParam@files:ISHint.dll stdcall';
procedure HintSetTextParam(hControl:THandle; Text:PChar; TextColor:Longint; Italic,Underline:boolean); external 'HintSetTextParam@files:ISHint.dll stdcall';
procedure HintSetTitleParam(hControl:THandle; Title:PChar; TitleColor:Longint; Italic,Underline:boolean); external 'HintSetTitleParam@files:ISHint.dll stdcall';
procedure HintSetIcon(hControl:THandle;const IconFileName:PChar; IconIndex:integer); external 'HintSetIcon@files:ISHint.dll stdcall';
procedure HintSetWidth(hControl:THandle; Width:integer); external 'HintSetWidth@files:ISHint.dll stdcall';
procedure HintHide(hControl:THandle); external 'HintHide@files:ISHint.dll stdcall';
procedure HintSetInitTime(hControl:THandle; Time:integer); external 'HintSetInitTime@files:ISHint.dll stdcall';
procedure HintSetShowTime(hControl:THandle; Time:integer); external 'HintSetShowTime@files:ISHint.dll stdcall';
function HintExists(hControl:THandle):boolean; external 'HintExists@files:ISHint.dll stdcall';
procedure HintDelete(hControl:THandle); external 'HintDelete@files:ISHint.dll stdcall';
procedure HintsDestroy; external 'HintsDestroy@files:ISHint.dll stdcall';

function GetClientRect(hWnd: HWND; var lpRect: TRect): BOOL; external 'GetClientRect@user32.dll stdcall';
function GetDesktopWindow: HWND; external 'GetDesktopWindow@user32.dll stdcall';

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////
#define    BeginColor    170*65536 + 148*256 + 70    ;Blue Green Red
#define    FinishColor    180*65536 + 224*256 + 230

type    hDC = Longint; TSize = record cx: UINT; cy: UINT; end;
var Point, hPoint: TPoint; CrLf: String; HintLockKey: bool; BackgroundForm: TForm; BackgroundLabel: TLabel; BackgroundImage: TBitmapImage; n: Integer; aRect: TRect; aLabel: TLabel; aText, Capt, st: String;
    hHint, sHint: Integer; tHint:string; Panels: array[0..31] of TLabel; Lines: array of String;
const SRCCOPY = $CC0020;

function ShowWindow(hWnd, nCmdShow: LongWord): LongWord; external 'ShowWindow@user32';
function MulDiv(Number, Numerator, Denominator: Integer): Integer; external 'MulDiv@kernel32';    //    Умножает Numerator на Number и делит pезультат на Denominator, окpугляя получаемое значение до ближайшего целого. Результат 32767 или -32767, если пеpеполнение или Denominator pавен нулю.
function SetBkMode(DC: hDC; BkMode: Integer): Integer; external 'SetBkMode@gdi32';
procedure GetCursorPos(var Point: TPoint); external 'GetCursorPos@user32 stdcall delayload';

Function cm(Message: String): String; Begin Result:= ExpandConstant('{cm:'+ Message +'}') End;

    var Debug: TForm; Dl: TMemo; cDebug: boolean;
Procedure D(S: string); Begin
    if not cDebug then begin Debug:= CreateCustomForm;    Debug.SetBounds(10, 10, 400, 200) Debug.Show; Dl:=TMemo.Create(Debug); Dl.Align:= alClient; Dl.ScrollBars:= ssVertical; Dl.WantReturns:= False; Dl.Parent:= Debug; cDebug:= true; end;
    if Dl.Lines.Text = '' then Dl.Lines.Text:= S else Dl.Lines.Insert(Dl.Lines.Count, S); Debug.BringToFront
End;
Procedure Df(s: Extended); begin D(FloatToStr(s)) End;

Function RGB(r, g, b: Longint): Longint; Begin Result:= (r or (g shl 8) or (b shl 16)) End;
Function GetBValue(rgb: DWord): Byte; Begin Result:= Byte(rgb shr 16) End;
Function GetGValue(rgb: DWord): Byte; Begin Result:= Byte(rgb shr 8) End;
Function GetRValue(rgb: DWord): Byte; Begin Result:= Byte(rgb) End;

Procedure GradientFill(WorkBmp: TBitmapImage; BeginColor, FinishColor: TColor);    var ColorBand: TRect; Begin
    WorkBmp.Bitmap.Width:= WorkBmp.Width; WorkBmp.Bitmap.Height:= WorkBmp.Height;
n:= 255; for i:=0 to n do begin
    ColorBand.Right:= WorkBmp.Width; ColorBand.Top:= MulDiv(i, WorkBmp.Height, n); ColorBand.Bottom:= MulDiv(i+1, WorkBmp.Height, n);
    WorkBmp.Bitmap.Canvas.Brush.Color:= RGB(GetRValue(BeginColor) + MulDiv(I, GetRValue(FinishColor) - GetRValue(BeginColor), n-1), GetGValue(BeginColor) + MulDiv(I, GetGValue(FinishColor) - GetGValue(BeginColor), n-1), GetBValue(BeginColor) + MulDiv(I, GetBValue(FinishColor) - GetBValue(BeginColor), n-1));
    WorkBmp.Bitmap.Canvas.FillRect(ColorBand); end;
End;

Function StringToArray(Text, Cut: String): array of String; var t, i, k: Integer; Begin    {создать массив из текста}
SetArrayLength(Result, 0);
Repeat SetArrayLength(Result, GetArrayLength(Result) + 1); t:= 1; k:= Pos(Cut, Text);
if k > 0 then t:= Length(Cut) {else k:= Pos(#10, Text);} i:= GetArrayLength(Result) - 1;
if k > 0 then begin Result[i]:= Copy(Text, 1, k - 1); Text:= Copy(Text, k + t, Length(Text)) end else begin Result[i]:=Text; SetLength(Text, 0) end;
Until Length(Text) = 0;
End;

Function CreateLabel(Parent: TWinControl; AutoSize, WordWrap, Transparent: Boolean; FontName: String; FontStyle: TFontStyles; FontColor: TColor; Left, Top, Width, Height: Integer): TLabel; var tmpLabel: TLabel; Begin
tmpLabel:=TLabel.Create(Parent)
    if Top > 0 then tmpLabel.Top:=Top; if Left > 0 then tmpLabel.Left:= Left; if Width > 0 then tmpLabel.Width:= Width; if Height > 0 then tmpLabel.Height:= Height
    tmpLabel.AutoSize:= AutoSize; tmpLabel.WordWrap:= WordWrap; tmpLabel.Transparent:=Transparent; tmpLabel.ShowHint:= 0 = {#Defined(ImprovedHints)}
    if FontName <> '' then tmpLabel.Font.Name:= FontName; if FontColor > 0 then tmpLabel.Font.Color:= FontColor; if FontStyle <> [] then tmpLabel.Font.Style:= FontStyle
tmpLabel.Parent:= Parent; Result:= tmpLabel
End;

Function TextOnBitmap(Bmp: TBitmapImage; Text, FontName: String; Style, Left, Top, Bevel, Size, Between: Integer; Color, Back: TColor): TRect; var X, Y, tWidth, tHeight: Integer; Messages: array of String; Begin {позицию текста указывать в процентах}
Messages:= StringToArray(Text, CrLf); with Bmp.Bitmap.Canvas do begin
    Font.Name:= FontName; case Style of 1: Font.Style:= [fsBold]; 2: Font.Style:= [fsItalic]; 3: Font.Style:= [fsBold, fsItalic]; end;
    SetBkMode(Handle, 1);    Font.Height:= round((Bmp.Width+Bmp.Height)/1000*Size)    // попытка подстроить шрифт под размер окна
for n:= 0 to GetArrayLength(Messages) -1 do begin
    if TextWidth(Messages[n]) > tWidth then tWidth:= TextWidth(Messages[n])
    tHeight:= tHeight + Between + TextHeight(Messages[n]) {! при разных стилях текста значения не меняются}
    if Bmp.Width/100*Left + tWidth + TextWidth(' ') > Bmp.Width then X:= Bmp.Width - tWidth - TextWidth(' ') else X:= Bmp.Width/100*Left;
    if Bmp.Height/100*Top + tHeight + Between + TextHeight(' ')/2 > Bmp.Height then Y:= Bmp.Height - tHeight - Between - TextHeight(' ')/2 else Y:= Bmp.Height/100*Top;
end;    Result.Left:= X; Result.Top:= Y; Result.Right:= tWidth; Result.Bottom:= tHeight
for n:= 0 to GetArrayLength(Messages) -1 do begin
    Font.Color:= Back;    TextOut(X, Y + Font.Height*n + Between*n, Messages[n]);
    Font.Color:= Color;    TextOut(X - Bevel, Y - Bevel + Font.Height*n + Between*n, Messages[n]); end;
end; End;

Procedure BackgroundClick(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
Begin
    WizardForm.Visible:= not(WizardForm.Visible) if WizardForm.Visible then WizardForm.Show;
End;

Procedure BackgroundOnResize(Sender: TObject); var Font, iFont: String; Left, Top, Size, Style: Byte; Color, Color2: TColor;    Begin
    GradientFill(BackgroundImage, {#BeginColor}, {#FinishColor});
    Left:= 50; Top:= 95; Font:= 'Times'; Size:= 18; Style:= 3; Color:= $C0A070; Color2:= $302818;
    TextOnBitmap(BackgroundImage, WizardForm.Caption, Font, Style, Left, Top, 1, Size, 0, Color, Color2);
End;

Procedure GetStyle(Text: String; var hText, hTitle, IconFile: String; var Style: Integer);
Begin
    Lines:= StringToArray(Text,'|');    hText:= Lines[GetArrayLength(Lines)-1] {last text}
    Style:= StrToIntDef(Lines[0], 0); if GetArrayLength(Lines) > 1 then
        if (Style > 0) and (GetArrayLength(Lines) = 2) then hTitle:= '' else hTitle:= Lines[GetArrayLength(Lines)-2] {prev of last}
    if Style and $200 > 0 then IconFile:= ExpandConstant('{sys}\shell32.dll')
    if (Style and $FF > 0) {иконка} and (GetArrayLength(Lines) = 2) {но заголовок не указан} then hTitle:= cm('Info')
End;

Function GetHintColor(Color: Integer): Integer; Begin
case Color and $F000 shr 12 of
    0: result:= clBlack
    1: result:= clBlue
    2: result:= $D0    //red
    3: result:= clGreen
    4: result:= clNavy
    5: result:= clPurple
    6: result:= clMaroon
    7: result:= clGray
End; end;

Function SetHintStyle(Text: String; Color: Integer): String; var Style: Integer; Begin
    Result:= Text; Lines:= StringToArray(Text,'|');
     Style:= StrToIntDef(Lines[0], 0) and $FFF + Color * $1000
    Delete(Result, 1, (Length(Lines[0]) +1) * ord(StrToIntDef(Lines[0], 0) > 0));
    Result:= IntToStr(Style) +'|'+ Result
End;

Procedure NowHint(Sender: TObject; Text: String); var hText, hTitle, IconFile: String; Handle, Style: Integer; fast: Boolean; Begin    {hPoint - позиция свободного хинта}
    if Sender <> Nil then begin Handle:=TWinControl(Sender).Handle; GetCursorPos(Point) end else Handle:= 0;
if (hHint = Handle) and (tHint = Text) and (hPoint.X = Point.X) and (hPoint.Y = Point.Y) then Exit; {данные не изменились}
if HintLockKey then begin HintLockKey:= false Exit; end;    {выйти, если предыдущий хинт был свободный}
    if HintExists(hHint) and (hHint <> Handle) then HintDelete(hHint) {удалить старый хинт}
GetStyle(Text, hText, hTitle, IconFile, Style); {раскодирование строки вида $105|Название|Текст}
fast:= (Handle <> 0) and ((Point.X > hPoint.X+1) or (Point.X < hPoint.X-1) or (Point.Y > hPoint.Y+1) or (Point.Y < hPoint.Y-1))
    if fast and (Style and $800 = 0) or (tHint <> Text) and HintExists(Handle) then HintDelete(Handle) {текст изменился / мышь быстро перемещают}
     if not fast and not HintExists(Handle) then begin
        HintCreate(Handle, ord(Style and $FF > 0), hTitle, hText, Style and $100 = 0, Style and $400 > 0);
            if Handle > 0 then HintSetInitTime(Handle, 500)
            HintSetWidth(Handle, WizardForm.ClientWidth - 32);
        if Style and $FF > 0 then HintSetIcon(Handle, IconFile, Style and $FF -1) {с иконкой}
        HintSetTitleParam(Handle, hTitle, -1, false, false);
        HintSetTextParam(Handle, hText, GetHintColor(Style and $F000), false, false);
     end else if Style and $800 > 0 then HintRefresh(Handle)    {следовать за мышью}
    if Handle = 0 then HintShow(Point.X+2, Point.Y+2, Length(Text)/15)
    hHint:= Handle; tHint:=Text; hPoint:= Point; HintLockKey:= hHint = 0; {не показывать новый хинт сразу после свободного}
End;

Procedure LabelOnShot(Sender: TObject; Shift: TShiftState; X, Y: Integer); Begin
    NowHint(TControl(Sender).Parent, TLabel(Sender).Hint);
//    df(x)
End;

Procedure DelHints(Sender: TObject; Shift: TShiftState; X, Y: Integer); Begin
    if HintExists(hHint) then HintDelete(hHint); hHint:= 0; tHint:='';
End;

procedure AddSamples; begin
    WizardForm.OuterNotebook.Hide; WizardForm.Bevel.Hide; CrLf:= #13#10;
Panels[0]:= CreateLabel(WizardForm, false, false, false, '', [], 0, 190, 190, 70, 30)
Panels[0].Hint:= cm('Hint0')
Panels[0].Caption:= 'Time'
Panels[0].Color:= clWhite
// Panels[0].ShowHint:= true
Panels[0].OnMouseMove:= @LabelOnShot;

Panels[1]:= CreateLabel(WizardForm, false, false, false, '', [], 0, 270, 190, 70, 30)
Panels[1].Hint:= cm('Hint1')
Panels[1].Color:= clWhite
// Panels[1].ShowHint:= true
Panels[1].OnMouseMove:= @LabelOnShot;

Panels[2]:= CreateLabel(WizardForm, false, false, false, '', [], 0, 350, 190, 70, 30)
Panels[2].Hint:= cm('Hint2')
Panels[2].Color:= clWhite
// Panels[2].ShowHint:= true
Panels[2].OnMouseMove:= @LabelOnShot;

Panels[3]:= CreateLabel(WizardForm, false, false, false, '', [], 0, 190, 230, 70, 30)
Panels[3].Hint:= cm('Hint3')
Panels[3].Color:= clWhite
// Panels[3].ShowHint:= true
Panels[3].OnMouseMove:= @LabelOnShot;

Panels[4]:= CreateLabel(WizardForm, false, false, false, '', [], 0, 270, 230, 70, 30)
Panels[4].Hint:= cm('Hint4')
Panels[4].Color:= clWhite
// Panels[4].ShowHint:= true
Panels[4].OnMouseMove:= @LabelOnShot;

Panels[5]:= CreateLabel(WizardForm, false, false, false, '', [], 0, 350, 230, 70, 30)
Panels[5].Color:= clWhite
Panels[5].Hint:= cm('Hint5')
// Panels[5].ShowHint:= true
Panels[5].OnMouseMove:= @LabelOnShot;

Panels[6]:= CreateLabel(WizardForm, false, false, false, '', [], 0, 190, 270, 230, 30)
Panels[6].Color:= clWhite
Panels[6].Caption:= 'Скрыть все хинты (сброс)'
// Panels[5].ShowHint:= true
Panels[6].OnMouseMove:= @DelHints;

Panels[7]:= CreateLabel(WizardForm, false, false, false, '', [], 0, 190, 150, 230, 30)
Panels[7].Color:= clWhite
Panels[7].Caption:= 'Скрыть все хинты (сброс)'
// Panels[5].ShowHint:= true
Panels[7].OnMouseMove:= @DelHints;

BackgroundForm:=TForm.Create(WizardForm)
//    BackgroundForm.BorderStyle:= bsNone
//    BackgroundForm.OnActivate:= @BackgroundOnActivate;
BackgroundImage:= TBitmapImage.Create(BackgroundForm);
    BackgroundImage.Align:= alClient;    //    BackgroundImage.Enabled:= False;
    BackgroundImage.Parent:= BackgroundForm;
    BackgroundForm.OnResize:= @BackgroundOnResize;
BackgroundLabel:= CreateLabel(BackgroundForm, false, false, true, '', [], 0, 0, 0, BackgroundForm.Width, BackgroundForm.Height)
    BackgroundLabel.OnMouseMove:= @LabelOnShot;
    BackgroundLabel.Hint:= cm('BackGround')
    BackgroundLabel.OnMouseUp:= @BackgroundClick;
//    CreateHint(BackgroundForm, '', BackgroundLabel.Hint, 0);    //иначе при первом показе хинта окно мастера скрывается

ShowWindow(BackgroundForm.Handle, SW_SHOWNORMAL)    // фоновое окно на полный экран
end;
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////
procedure InitializeWizard;
begin
    AddSamples
end;

procedure DeInitializeSetup;
begin
HintsDestroy; //это обязательно для освобождения памяти
    BackgroundForm.Free;
end;
[/more].

Не совсем понятно, что поправлено, при правке кода подсветка по-прежнему исчезает...
Автор: ALeXkRU, Отправлено:02:57 29-04-2009
mozers

Цитата:
Интересную фичу нарыл тут BioInfo

в history 1.78 есть малопонятный пункт про символы-маркеры.. мож это как раз про них?

Автор: mozers, Отправлено:20:53 29-04-2009
Victor_Dobrov
BioInfo внес исправления только в наш SVN (откомпилированного варианта еще нет). BioInfo не будет до 9 мая. Вот что он говорит по поводу лексера Inno:
Цитата:
Оригинальная версия 1.78 работает херово (собственно баги эти на лицо) и по задумке делает тоже самое что и мой вариант лексера. Я сделал первый раз тоже так, но всё оказалось не так просто
...
приеду поправлю если надо будет.


ALeXkRU
Цитата:
в history 1.78 есть малопонятный пункт про символы-маркеры.. мож это как раз про них?
Нет. Это - о другом.
Возможность вставлять картинки в формате xpm имелась давным-давно. Это только мы ее только что обнаружили (подозреваю что это не единственное белое пятно в наших знаниях о SciTE)

Все таки выложу твой предварительный вариант перевода History:

Released 1.78 on 28 April 2009.
Версия 1.78 от 28 апреля 2009 г.

Annotation lines may be added to each line.
В каждую строку можно добавить комментарий/пояснение

A text margin may be defined with different text on each line.
Граница текста может быть задана другим текстом в каждой строке

Application actions may be added to the undo history.
Действия приложения могут быть добавлены в историю отмены

Can query the symbol defined for a marker. An available symbol added for applications to indicate that plugins may allocate a marker.
Можно запросить символ, определенный маркером. Доступный символ, добавленный для приложений, показывает, что плагины могут разместить маркер ???

Can increase the amount of font ascent and descent.
Можно увеличить для шрифта размер вертикальных границ: параметров превышения и снижения
(см. http://www.umade.ru/resources/specifications/CSS2/fonts.html#descdef-ascent
пример: http://www.umade.ru/resources/specifications/CSS2/fonts.html#ascent)

COBOL lexer added. Feature #2127406.
Добавлен лексер COBOL. (запрос #2127406)

Nimrod lexer added. Feature #2642620.
Добавлен лексер Nimrod (запрос #2642620)

PowerPro lexer added. Feature #2195308.
Добавлен лексер PowerPro (запрос #2195308)

SML lexer added. Feature #2710950.
Добавлен лексер SML (запрос #2710950)

SORCUS Installation file lexer added. Feature #2343375.
Добавлен лексер файлов инсталляции SORCUS (запрос #2343375)

TACL lexer added. Feature #2127406.
Добавлен лексер TACL (запрос #2127406)

TAL lexer added. Feature #2127406.
Добавлен лексер TAL (запрос #2127406)

Rewritten Pascal lexer with improved folding and other fixes. Feature #2190650.
Переписан лексер Pascal. Улучшен фолдинг и другие исправления (запрос #2190650)

INDIC_ROUNDBOX translucency level can be modified. Feature #2586290.
Уровень прозрачности может изменяться с помощью свойства INDIC_ROUNDBOX (запрос #2586290)

C++ lexer treats angle brackets in #include directives as quotes when styling.within.preprocessor. Bug #2551033.
В лексере C++ угловые скобки в директиве #include рассматривались как кавычки при заданном параметре styling.within.preprocessor. Ошибка #2551033

Inno Setup lexer is sensitive to whether within the [Code] section and handles comments better. Bug #2552973.
Для лексера Inno Setup улучшена чувствительность к содержанию секции [Code] и идентификаторам комментариев. Ошибка #2552973.

HTML lexer does not go into script mode when script tag is self-closing.
Лексер HTML не переходил в режим скрипта в одинарных закрытых тегах

HTML folder fixed where confused by comments when fold.html.preprocessor off. Bug #2532774.
Исправлена ошибка в блоках HTML с перепутанным комментарием при значении off параметра fold.html.preprocessor. Ошибка #2532774

Perl lexer fixes problem with string matching caused by line endings. Bug #2648342.
В лексере Perl исправлена проблема поиска совпадений строк в конце строки. Ошибка #2648342

Progress lexer fixes problem with "last-event:function" phrase. Bug #2483619.
В лексере Progress исправлена проблема с фразой "last-event:function". Ошибка #2483619.

Properties file lexer extended to handle RFC2822 text when lexer.props.allow.initial.spaces on.
Лексер файлов Properties расширен для поддержки текста стандарта RFC2822 при значении on параметра lexer.props.allow.initial.spaces.

Python lexer adds options for Python 3 and Cython.
В лексер Python добавлены опции для поддержки Python 3 и Cython.

Shell lexer fixes heredoc problem caused by line endings. Bug #2635257.
В лексере Shell исправлена проблема в конструкциях heredocs в конце строк. Ошибка #2635257

TeX lexer handles comment at end of line correctly. Bug #2698766.
В лексере TeX исправлена ошибка с идентификатором комментариев в конце строки. Ошибка #2698766.

SciTE retains selection range when performing a replace selection command. Feature #2339160.
В SciTE сохраняется область выделения при выполнении команды замены выделенного. Запрос #2339160

SciTE definition of word characters fixed to match documentaiton. Bug #2464531.
В SciTE определение символов слова исправлено в соответствии с документацией. Ошибка #2464531

SciTE on GTK+ performing Search or Replace when dialog already shown now brings dialog to foreground. Bug #2634224.
Для SciTE в GTK+ при выполнении Поиска или Замены, если диалог уже открыт он становится активным. Ошибка #2634224.

Fixed encoding bug with calltips on GTK+.
В GTK+ исправлена ошибка кодировки в всплывающих подсказках.

Block caret drawn in correct place on wrapped lines. Bug #2126144.
Знак переноса строки отображается корректно в свёрнутых строках. Ошибка #2126144

Compilation for 64 bit Windows works using MinGW. Bug #2515578.
Компиляция для 64-битной Windows работает с использованием MinGW. Ошибка #2515578

Incorrect memory freeing fixed on OS X. Bug #2354098, #2671749.
Исправлено некорректное освобождение памяти в ОС X. Ошибки #2354098, #2671749

SciTE on GTK+ crash fixed on startup when child process exits before initialisation complete. Bug #2716987.
Исправлена ошибка SciTE в GTK+ при запуске, если выход из дочернего процесса выполняется до инициализации. Ошибка #2716987

Crash fixed when AutoCompleteGetCurrent called with no active autocompletion.
Исправлена ошибка при вызове функции AutoCompleteGetCurrent с неактивным автозавершением.

Flickering diminished when pressing Tab. Bug #2723006.
Уменьшено мигание при нажатии Tab. Ошибка #2723006.

Namespace compilation issues with GTK+ on OS X fixed.
Исправлена проблема с компиляцией пространства имён для GTK+ в ОС X.

Increased maximum length of SciTE's Language menu on GTK+ to 100 items. Bug #2528241.
В SciTE для GTK+ увеличена максимальная длина меню Language до 100 элементов. Ошибка #2528241.

Fixed incorrect Python lexing for multi-line continued strings. Bug #2450963.
Исправлена некорректная работа с Python для многострочных продолжающихся строк. Ошибка #2450963.


Если поправок не будет - так и войдет в релиз SciTE-Ru вместе с вопросительными знаками.

Автор: vladvro, Отправлено:13:45 30-04-2009
mozers

Цитата:
Can query the symbol defined for a marker.
An available symbol added for applications to indicate that plugins may allocate a marker.

Можно запросить символ, определенный в качестве маркера.
Добавлен новый маркер, которым могут пользоваться плагины для разметки.

Цитата:
INDIC_ROUNDBOX translucency level can be modified. Feature #2586290.

Можно менять уровень прозрачности INDIC_ROUNDBOX (запрос #2586290).

Автор: Psorokin, Отправлено:23:22 01-05-2009
1)Почему при закрытии SciTE с несколькими открытыми страницами и повторном открытии из контекстного меню сессии не сохраняются?
SciTE 1.77 63
2)Как убрать подчёркивание ссылок? Tools » Подсветить ссылки не даёт ни какого результата.
Автор: LiMan, Отправлено:20:38 02-05-2009
Добрый день

Последняя SciTE версия которой я пользовался 1.75 .54Ru
Решил обновить и столкнулся с неприятной паузой (1-3 секунды) при загрузке 2-го и последующих файлов.... (1.77 .61Ru) В старой версии все ок.

Если убрать проверку что файл уже открыт или нет
check.if.already.open=0

То каждый следующий файл открывается мгновенно (в новом окне естественно).

Нелюблю огромное кол-во окон . Но уже и откатываться на старую версию нехочется чисто ради циферки .

Какие параметры ещё влияют на эту проверку открытости файла? Есть возможность это ускорить?

ЗЫ WinXP.

Автор: mozers, Отправлено:22:25 02-05-2009
Psorokin
Цитата:
Почему при закрытии SciTE с несколькими открытыми страницами и повторном открытии из контекстного меню сессии не сохраняются?
Потому что сессии сохраняются только при закрытии редактора (при save.session=1), а не одного из открытых файлов. Или можно вручную сохранить сессию через меню "Файл"-"Сохранить сессию...".

Цитата:
Как убрать подчёркивание ссылок?
HighlightLinks.lua [строка 24] :
Код:
Задать файлы для которых при открытии и при сохранении файла будет автоматически выполняться подсветка:
в виде списка имен лексеров через запятую (для файлов без лексера имя null)
highlight.links.lexers=null
или списка расширений файлов через запятую:
highlight.links.exts=txt,htm


LiMan
Странно это... Никогда такого не замечал
А в последней "бетте" у тебя тоже самое?
В любом случае поиск проблемы я бы начал с отключения загрузки всех скриптов...
Автор: Psorokin, Отправлено:22:59 02-05-2009
mozers
У меня save.session=1
Если открыть SciTE из ярлыка на рабочем столе, то сессии открываются. Если при открытом SciTE открыть файл из контекстного меню «Открыть в SciTE», то файл добавится к сессии. А если SciTE закрыт и открыть файл из контекстного меню «Открыть в SciTE», то откроется только этот файл, а хотелось бы, чтобы открывались и файлы прошлой сессии.
Автор: mozers, Отправлено:02:21 03-05-2009
Psorokin
Ну тогда надо просто в строке запуска записать вначале открытие последней сессии, а затем уже открытие самого файла.
Только слеши в путях необходимо удваивать, поэтому без скрипта нам не обойтись:
open_file_with_session.js :
Код:
var scite = "C:\\SciTE\\SciTE.exe";
var
WshShell = new ActiveXObject("WScript.Shell");
var
filename = WScript.Arguments(0);
var
cmd = '"C:\\SciTE\\SciTE.exe" ' + '"-loadsession:C:\\\\SciTE\\\\home\\\\SciTE. session" "-open:' + filename.replace(/\\/g,"\\\\") + '"';
WshShell.Run(cmd, 0, false);
Строку вызова редактора через контекстное меню, естественно, надо заменить на вызов нашего скрипта:
setup.reg :
Код:
REGEDIT4

[HKEY_CLASSES_ROOT\*\shell\Open with SciTE\command]
@="wscript \"C:\\SciTE\\tools\\open_file_with_session.js\" \"%1\""


Автор: LiMan, Отправлено:00:58 04-05-2009
Вычислил.

В обоих версиях
и в 1.77 .61Ru
и в 1.78 .63Ru

Эту задержку вызывал параметр

строка ~ 1262 (1.78 .63Ru) ~ 1268 (1.77 .61Ru) в SciTEGlobal.properties

Код:

# Сохранять в файле сессии позицию и размеры окна SciTE
save.position=1


В старой версии его вообще небыло судя по всему

Вобщем избавится от тормозов оказалось оч просто .

Однако они могут отпугнуть новичков может стоит по умолчанию не запоминать позицию?
Автор: israel_rider, Отправлено:06:24 04-05-2009
Блин! Пользовался любимым редактором SciTE-Любимый-Форум-Эддишен!!!!!
И естественно накалолся, как и всё, на любимую ошибку ""Cannot add header information ..... " . Потому что любимый редактор "Byte Order Mark" ни хрена не показывает!!!!!!!!!! Блин!

Добавлено:
Теперь надо искать редактор, который этот хренов ВОМ показывает....
Автор: mozers, Отправлено:12:39 04-05-2009
israel_rider
Цитата:
любимый редактор "Byte Order Mark" ни хрена не показывает!!!!!!!!!!
Почему это "не показывает"? В строке состояния либо [UTF-8] либо [UTF-8 BOM].

Автор: israel_rider, Отправлено:12:54 04-05-2009
Точно!!!!! Блин!!!! Сейчас!!!! Посмотрел и увидел!!!! Огромный сенкс!!!!
Пипл, а ещё вопрос тогда, плиз.... Как мне тогда этот ВОМ убрать? Или хотя бы ссылочку где объясняют. Я конечно Гуглом уже нашёл это место в сабжевом русском мануале, оно называется "кодировки" но.... блин.... что то ни как самому....
Автор: mozers, Отправлено:14:01 04-05-2009
israel_rider
Цитата:
Как мне тогда этот ВОМ убрать?
Открыть файл. Меню "Файл"-"Кодировка"-"UTF-8"(без заголовка). Сохранить как...

Автор: israel_rider, Отправлено:16:37 04-05-2009
Блин.... Всё то оказалось просто и обычно.... Я должен был просто чуть подумать сам...



1 / 2 / 3 / 4 / 5 / 6 / 7 / 8 / 9 / 10 / 11 / 12 / 13 / 14 / 15 / 16 / 17 / 18 / 19 / 20 / 21 / 22 / 23 / 24 / 25 / 26 / 27 / 28 / 29 / 30 / 31 / 32 / 33 / 34 / 35 / 36 / 37 / 38 / 39 / 40 / 41 / 42 / 43 / 44 / 45 / 46 / 47 / 48 / 49 / 50 / 51 / 52 / 53 / 54 / 55 / 56 / 57 / 58 / 59 / 60 / 61 / 62 / 63 / 64 / 65 / 66 / 67 / 68 / 69 / 70 / 71 / 72 / 73 / 74 / 75 / 76 / 77 / 78 / 79 / 80 / 81 / 82 / 83 / 84 / 85 / 86 / 87 / 88 / 89 / 90 / 91 / 92 / 93 / 94 / 95 / 96 / 97 / 98 / 99 / 100 / 101 / 102 / 103 / 104 / 105 / 106 / 107 / 108 / 109 / 110 / 111 / 112 / 113 / 114 / 115 / 116 / 117 / 118 / 119 / 120 / 121 / 122 / 123 / 124 / 125 / 126 / 127 / 128 / 129 / 130 / 131 / 132 / 133 / 134 / 135 / 136 / 137 / 138 / 139 / 140 / 141 / 142 / 143 / 144 / 145 / 146 / 147 / 148 / 149 / 150 / 151 / 152 / 153 / 154 / 155 / 156 / 157 / 158 / 159 / 160 / 161 / 162 / 163 / 164 / 165 / 166 / 167 / 168 / 169 / 170 / 171 / 172 / 173 / 174 / 175 / 176 / 177 / 178 / 179 / 180 / 181 / 182 / 183 / 184 / 185 / 186 / 187 / 188 / 189 / 190 / 191 / 192 / 193 / 194 / 195 / 196 / 197 / 198 / 199 / 200 / 201 / 202 / 203 / 204 / 205 / 206 / 207 / 208 / 209 / 210 / 211 / 212 / 213 /
SciTE © 2004 - 2011