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

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

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


Автор: SL4, Отправлено:16:46 12-12-2006
AdMuncher всё порезал )))
осталось только

[10.11.2006] Сборка (ядро 1.71 .23Ru)
Полное описание
[1.1MB]

[30.11.2006] Ядро 1.71 .27Ru
Список всех доработок
[270kB] (только измененные файлы)
[440kB]

и всё
ужас...

спасибо

ПС
кстати, в новой версии (27ру) не работает поиск выделенного текста В старой всё ок. Откатился
Автор: mirk, Отправлено:19:09 12-12-2006
lasc добавил обалденную заметку про подключение к SciTE phpCodeBeautifier.

Думаю, что она пригодиться всем использующим SciTE для редактирования PHP.

P.S. Очень удачно совпало, я как раз начал заниматься сайтом, его ждут некоторые надеюсь интересные изменения. И тут народ начал добавлять свои заметки, приятно
Автор: mozers, Отправлено:21:28 12-12-2006
Маленько переделал скрипт HSolo.
Теперь он находит формулы даже там, где их не находит человеческий взгляд
Находит и вычисляет. Дико удобно.[more]
Код:
-- Расчет выделенного текста как математического выражения
-- или открытие в браузере выделенного URL
-- Автор: HSolo, mozers™
-- http://forum.ru-board.com/topic.cgi?forum=5&topic=3215&start=1120#19
--------------------------------------------

local function FormulaDetect(str)
local PatternNum = "([\-\+\*\/%b()%s]*%d+[\.\,]*%d*[\)]*)"
local startPos, endPos, Num, Formula
startPos = 1
Formula = ''
while true do
startPos, endPos, Num = string.find(str, PatternNum, startPos) -- Находим числа, знаки, скобки (т.е. все что можно принять за часть формулы)
if startPos == nil then break end
startPos = endPos + 1
--~ print(Num)
Num = string.gsub (Num, '%s+', '') -- Убираем пробелы
Num = string.gsub (Num, '^([\(%d]+)', '+%1') -- Там, где перед числом нет знака, ставим "+" (т.е. пробелы и переводы строк заменяются на "+")
Num = string.gsub (Num, '^([\)]+)([%d]+)', '%1+%2') -- Добавляем знак "+" (при его отсутствии) между числом и скобкой
Formula = Formula..Num -- Склеиваем вновь преобразованную строку
end
Formula = string.gsub (Formula, '^[\+]', '') -- В самом начале получился лишний "+" - убиваем его
Formula = string.gsub(Formula,"[\,]+",'.') -- Не будем строги к символу - разделителю десятичных чисел
Formula = string.gsub(Formula,"([\+\*\/\-])([\+\*\/\-]+)",'%1') -- Удаляем сдвоенные знаки
Formula = string.gsub(Formula,"+",' + ') -- Разделяем суммы пробелами (имхо, нагляднее чем разделять все знаки)
return Formula
end

-- local str = props['CurrentSelection'] -- неверно работает с вертикальными блоками
-- Кстати - явный BUG ядра - может кто исправит?
local str = editor:GetSelText()
if (str == '') then
str = editor:GetCurLine()
end

if (string.len(str) > 2) then
if string.find(str,'http://(.*)') then
local browser = ('explorer ' .. str .. ' &')
os.execute(browser)
else
if string.find(str, "(math\.%w+)") then -- В случае сложных математических выражений форматирование оставляем на пользователя
str = string.gsub(str,"[=]",'')
else
str = FormulaDetect(str)
end

print('-> Расчет выражения: '..str)
local res = assert(loadstring('return '..str),str)()
editor:CharRight()
editor:LineEnd()
local sel_start = editor.SelectionStart + 1
local sel_end = sel_start + string.len(res)
editor:AddText('\n'..res)
editor:SetSel(sel_start, sel_end)
print('>> Результат: '..res)
end
end

-- Тесты типа
--~ 1/2 56/4 - 56 (8-6)*4 4,5*(1+2) 66
--~ 3/6 6.4/2 6 (7-6)*4 45/4.1 66

--~ dmfdmk v15*6dmd.ks skm4.37/3d(k)gm/sk+d skdmg(6,7+6)skdmgk

--~ Колбаса = 24.5кг. * 120руб./кг
--~ Бензин(ABC) = (2500км. / (11,5л./100км.)) * 18.4руб./л + Канистра =100руб.
--~ Штукатурка = 22.4 м2 /80руб./100 м2
[/more]

SL4
Цитата:
в новой версии (27ру) не работает поиск выделенного текста
Не подтверждаю. Все работает.

Автор: pythons, Отправлено:00:58 13-12-2006
А подскажите, взял последнюю сборку, стандартные настройки, но если открыт код HTML и его достаточно много то очень заметно моргает (перерисовывается) экран во время кликания курсором мышки куда-либо в код или когда набираешь чтото или двигаешь курсор стрелками.

это у всех так, и лечится или нет? Vsync может какойто есть
Автор: ALeXkRU, Отправлено:01:12 13-12-2006
pythons
найди в настройках (глобальных) и установи в 1

Цитата:
# Вывод данных непосредственно на экран (0) или сначала в буфер, и только потом на экран (1)
buffered.draw=1

Автор: pythons, Отправлено:01:18 13-12-2006

Цитата:
Вопрос к знатокам LUA:
Код:
local text = editor:GetText()
local filename=props["FileName"]..'.out'
-------------------------------------
--~ io.output(filename)
--~ io.write(text)
--~ io.close()
-------------------------------------
local file = io.open(filename, "w+")
file:write(text)
file:close()
Как сделать чтобы эта lua-шка сохраняла файл 1:1 а не добавляла лишние переводы строк между каждой строкой ?

Добавлено:
Уфф! Насилу допер
Надо перед записью обязательно преобразовывать символы перевода строки:
Код:
text = string.gsub (text, '\r\n', '\n')



а куда это прописать? или это уже в последнюю сборку включено? а то сегодня как раз столкнулся с подобной проблеммой, открыл файл - а там переносы добавились.

Добавлено:
ALeXkRU, спасибо, то что надо

а про переносы строк что-нибудь подскажете?


Добавлено:
----

никто не нашел толковой утилиты консольной для форматирования HTML ?
Автор: LASC, Отправлено:11:33 13-12-2006

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

спасибо что поправил форматирование

да, не стесняемся выкладываем свои наработки

у меня вопрос приходится работать с 2 языками переключаю такими настройками

Цитата:
#Russian Encoding Command
command.name.1.*=Russian
command.1.*=$(SciteDefaultHome)\SciTE.exe -character.set=204 -chars.accented=АаБбВвГгДдЕеЁёЖжЗзИиЙйКкЛлМмНнОоПпРрСсТтУуФфХхЦцЧчШшЩщЪъЫыЬьЭэЮюЯя -code.page=1251
command.is.filter.1.*=1
command.subsystem.1.*=2
#-----------------------------------------
#Japanese Encoding Command
command.name.2.*=Japanese
command.2.*=$(SciteDefaultHome)\SciTE.exe -character.set=128
command.is.filter.2.*=1
command.subsystem.2.*=2

но ,чтобы перерисовались символы, нада 2 раза нажать или попрыгать вкладка влево-вправо, как сделать чтобы с первого раза?

Автор: ALeXkRU, Отправлено:11:45 13-12-2006
pythons
01:18 13-12-2006
Цитата:
а про переносы строк что-нибудь подскажете?

а что с переносами строк?

Добавлено:
pythons
01:18 13-12-2006
Цитата:
а куда это прописать? или это уже в последнюю сборку включено? а то сегодня как раз столкнулся с подобной проблеммой, открыл файл - а там переносы добавились.

в приведенном случае, например, такой файлик SaveCopyFile.lua:

Код:
local text = editor:GetText()
local filename=props["FileName"]..'.out'
-------------------------------------
--~ io.output(filename)
--~ io.write(text)
--~ io.close()
-------------------------------------
text = string.gsub (text, '\r\n', '\n')
local file = io.open(filename, "w+")
file:write(text)
file:close()

Автор: SL4, Отправлено:17:54 13-12-2006

Цитата:
SL4
Цитата:в новой версии (27ру) не работает поиск выделенного текста

Не подтверждаю. Все работает.


странно, я ставлю последний сетап, открываю файл, выделяю текст, контекстное меню -"Поиск выделенного текста" и снизу открывается оутпут

Теперь апдейчу до новой версии (переписываю 2 файла) и не работает!

проверил ещё раз!
Автор: vladvro, Отправлено:20:31 13-12-2006
mozers, SL4

Цитата:
Цитата:
SL4

Цитата:
в новой версии (27ру) не работает поиск выделенного текста

Не подтверждаю. Все работает.

странно, я ставлю последний сетап, открываю файл, выделяю текст, контекстное меню -"Поиск выделенного текста" и снизу открывается оутпут

Теперь апдейчу до новой версии (переписываю 2 файла) и не работает!

похоже кто-то (я про mozers) забыл обновить сборку после апдейта затрагивающего файл конфига. ждем апдейта
Автор: mozers, Отправлено:23:19 13-12-2006
SL4
Так бы и сказал - "контекстное меню не работает", а ты - "поиск", "поиск",...
vladvro
Обновлю Отвлекся я тут маленько...
Вообще то и сейчас поправить это дело может любой желающий.
Из SciTE.Ru_kernel_changes.txt:
Цитата:
[ToolsMax] (Автор: Moon_aka_Sun, VladVRO)
Число допустимых пунктов в меню Tools увеличено до 200.
Для создания пользовательских команд в user.context.menu следует использовать формулу:
пользовательская команда = 2000 + номер этой команды в меню Tools

pythons
Цитата:
а куда это прописать? или это уже в последнюю сборку включено?
Это был просто кусок кода из одного скрипта... Не более того

Цитата:
а то сегодня как раз столкнулся с подобной проблеммой, открыл файл - а там переносы добавились.
Не там копаешь:
Цитата:
# 1 при сохранении удаляет символы пробелов и табуляции на концах строк
#strip.trailing.spaces=1
# 1 при сохранении добавляет в конец последней строки файла символ окончания строки (если он отсутствует)
#ensure.final.line.end=1
# 1 при сохранении файла устанавливает в окончание всех линий текущий символ окончания строки (CRLF, CR, LF)
ensure.consistent.line.ends=1

Цитата:
никто не нашел толковой утилиты консольной для форматирования HTML ?
А че tidy не удовлетворяет?

LASC
А че так сложно та? А если по простому?
Код:
command.name.120.*=Russian
command.120.*=dostring props["character.set"]=204
command.mode.120.*=subsystem:lua,savebefore:no

command.name.121.*=Japanese
command.121.*=dostring props["character.set"]=128
command.mode.120.*=subsystem:lua,savebefore:no
К сожалению проверить не могу - нема японского и оба варианта (и твой и мой) у меня только экран маленько дергают ничего не меняя вообще.
Автор: SL4, Отправлено:12:46 14-12-2006
mozers
спасибо!
Автор: pythons, Отправлено:03:46 15-12-2006
mozers, спасибо за tidy надо было самому догадаться
сделал так -

command.build.$(file.patterns.web)="$(SciteDefaultHome)\tools\tidy.bat" $(FileNameExt) "$(SciteDefaultHome)" "$(SciteDefaultHome)\tools\tidy.ini"

в батнике -
%2\tools\tidy.exe -m -config %3 %1

в инишнике для tidy прописал что хотел, но только возникла проблема с кодировками.
как передать в батник текущую кодировку документа? и надо ли вообще, может я заблуждаюсь?

просто щас получается как - открыт документ, в статусе win1251, пишу русскими буквами в нем и запускаю build, в измененном документе русские буквы меняются либо на свои коды либо на кракозябры...

Автор: SL4, Отправлено:13:41 15-12-2006
кстати, а нельзя сделать, чтобы в меню выбора подсветки показывать что именно сейчас выбрано? а то немного не красиво
Автор: mozers, Отправлено:14:36 16-12-2006
pythons
Если честно, то я обычно форматирую HTML по своим правилам, вручную.
Tidy подключал так, попробовать:
Код:
command.name.141.$(file.patterns.web)=Tidy HTML
command.141.$(file.patterns.web)="$(SciteDefaultHome)\test\tidy\tidy.exe" -config "$(SciteDefaultHome)\test\tidy\html.cfg" -m "$(FileNameExt)"
command.mode.141.$(file.patterns.web)=subsystem:windows,savebefore:yes

html.cfg
Код:
// HTML Tidy configuration file created by TidyGUI
doctype: "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"
indent: auto
indent-spaces: 2
tab-size: 2
vertical-space: 0
wrap: 0
char-encoding: raw
tidy-mark: no
quote-marks: yes
output-html: yes

Возможно, что настройки не слишком хороши - кто то предложит лучше, но работает, в целом - неплохо. Никаких проблем с кодировками нет и в помине.

SL4
Видимо это сложно сделать (я этот вопрос неоднократно задавал - никто из программеров не ответил
Смотри на статусную строку - в ней показывается текущий лексер (Я - про сборку Ru-Board).
Автор: Sanc4eZ, Отправлено:22:42 16-12-2006
Только недавно начал пользоваться SciTE
Есть такой вопрос:
Как осуществить перекодировку koi8<->win<->mac<->iso<->utf-8?
Автор: dB6, Отправлено:22:57 16-12-2006
Sanc4eZ

Цитата:
Как осуществить перекодировку koi8<->win<->mac<->iso<->utf-8?

UTF-8 - в меню Файл-> Кодировка есть.
Остальные - юзай xcode - http://www.rusf.ru/books/yo/xcode.html
Кстати, в Ru-сборке вроде он есть.
Автор: pythons, Отправлено:23:28 16-12-2006
mozers, еще раз спасибо, енкодинг RAW решает вопрос полностью

Автор: mozers, Отправлено:17:05 17-12-2006
Выкладываю 2 полезных файла - советую внимательно почитать
Про регулярные выражения в диалоге поиска: SciTERegEx_rus (перевод: s_mart)
и обновленный файл с командами SciTE и Scintilla
Автор: dB6, Отправлено:17:15 17-12-2006
mozers

Для лучшего понимания regexp лучше почитать еще http://citforum.ru/internet/perl/regexp/
Тут про perl-подобные и в скайте не совсем так, но чтение лишним не будет




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