[Notes2-team] Re: =?ISO-8859-1?Q?c=F3digo_p/_a_shellextension=2E=2E=2E?=
Brought to you by:
andersonrb
|
From: Anderson R. B. <no...@ig...> - 2003-12-06 02:59:02
|
Ah! Beleza! Vou te passar um monte de c=F3digo/informa=E7=E3o... cuida ae=
:
Daniel Roma wrote:
> "Salvar como template do Notes"
> ?????
Retira isto por que agora vai ser mais complicado de implementar...=20
estou reestruturando
todas as pastas e arquivos das configura=E7=F5es para que fique bem f=E1c=
il=20
adicionar suporte
a novos tipos de arquivos no Notes. Para isto, cada linguagem (php,=20
delphi, js) tem a sua
pr=F3pria pasta. A pasta de cada lingaugem cont=E9m: o parser XML da=20
linguagem, as op=E7=F5es
do editor para aquela linguagem, uma pasta contendo os templates da=20
linguagem e mais
uma pasta que cont=E9m os itens da biblioteca para a linguagem. Assim,=20
para salvar como
template, seria preciso deixar o usu=E1rio selecionar para qual linguagem=
=20
o template vai servir
(ou seja, teria q usar um di=E1logo, VCL e aumentaria mt o peso do=20
DLL...). Quero escrever
um texto sobre como estaum as pastas e arquivos de configura=E7=E3o do=20
Notes, mas ainda
naum tive tempo pra isto...
> -----------------Separador----------------------------
> "Informa=E7=F5es do arquivo"
> Ainda n=E3o implementado, mas parece que =E9 Notes.exe -i
> =E9 isso mesmo??
N=E3o tem ainda par=E2mentro para isto, mas acho que "-i" =E9 perfeito. P=
ode usar
que vou implementar (vou ter que reescrever todo o 'parser' dos=20
par=E2mentros mesmo! hhehheheh)
>
> os items abaixo, exceto o da Home Page, n=E3o sei se j=E1 est=E3o=20
> implementados no Notes... algu=E9m ae me informa, please??
> =20
> //7: -----------------Separador----------------------------
> //8: //Compilar arquivo
Naum existe mais a op=E7=E3o "compilar arquivo'... existe o menu executar=
...=20
acho que =E9
melhor tirar esta op=E7=E3o...
> //9: //Comprimir HTML
Segue o c=F3digo (removi as depend=EAncias que haviam com as units do Not=
es,=20
deve
ter ficado um pouco mais lento, mas ainda assim r=E1pido o suficiente. Eu=
=20
to reescrevendo
as rotinas direto no mozilla mail, entaum erros podem ocorrer, hahhahaha)=
:
//////////////////////////////////////////////
// COMPRIME HTML
////////////////////////////////////////////////
function compHTML(const S): string;
begin
Result:=3D S;
// fins de linha
strReplaceAll(Result, #13#10#13#10,'');
strReplaceAll(Result, #13#13,'');
strReplaceAll(Result, #10#10,'');
// tabs duplos
strReplaceAll(Result, #9#9, #9);
// espa=E7os duplos
strReplaceAll(Result, #32#32, #32);
// espa=E7os e tabs ao in=EDcio da linha
strReplaceAll(Result, #10#32, #10);
strReplaceAll(Result, #13#32, #13);
strReplaceAll(Result, #10#9, #10);
strReplaceAll(Result, #13#9, #13);
// repte-se tudo, pois ao fazer a primeira compress=E3o
// =E9 poss=EDvel que apare=E7am novos caracteres a serem comprimidos
// fins de linha
strReplaceAll(Result, #13#10#13#10,'');
strReplaceAll(Result, #13#13,'');
strReplaceAll(Result, #10#10,'');
// tabs duplos
strReplaceAll(Result, #9#9, #9);
// espa=E7os duplos
strReplaceAll(Result, #32#32, #32);
// espa=E7os e tabs ao in=EDcio da linha
strReplaceAll(Result, #10#32, #10);
strReplaceAll(Result, #13#32, #13);
strReplaceAll(Result, #10#9, #10);
strReplaceAll(Result, #13#9, #13);
end;
/////////////////////////////////////////
///// SUBSTITUI TODAS AS OCORR=CANCIAS DE UMA STRING
////// MESMO (o que quer dizer que se depois da primeira substitui=E7=E3o
////// as altera=E7=F5es fa=E7am que o mesmo padr=E3o de caracteres ressu=
rja,
////// ele ser=E1 substitu=EDdo tb=E9m...
//////////////////////////////////////////////////
procedure StrReplaceAll(var S: string; const aSearch, aReplace: string);
begin
While Pos(aSearch, S) > 0 do
S:=3D StringReplace(S, aSearch, aReplace, [rfReplaceAll]);
end;
////////////////////////////////
/// SALVA STRING EM ARQUIVO
//////////////////////////////////////////////////////////
procedure nStrToFile(const nArq: string; const oQporNoArq: string);
begin
with TFileStream.Create(nArq, fmCreate) do
try
Write(Pointer(oQporNoArq)^, Length(oQporNoArq));
finally
Free;
end;
end;
/// o jonas passou j=E1 uma fun=E7=E3o para carregar o arquivo pruma stri=
ng :)
> //10:-----------------Separador----------------------------
> //11://Adicionar aos favoritos do Notes
Basta adicionar o nome do arquivo na =FAltima linha do arquivo que cont=E9=
m
os favoritos...o Notes remove entradas duplicadas, ent=E3o a shell extens=
ion
naum precisa fazer isto, heheheh. Acho que termos que ter o caminho para
este arquivo no registro, naum? Pq a localiza=E7=E3o dele depender=E1 das=
op=E7=F5es
de isntala=E7=E3o do usu=E1rio...
Mais alguma coisa?
Anderson
--=20
Anderson Rodrigues Barbieri
--------------------------------------------
#Equipe do Notes - Coordenador/Desenvolvedor
{ TAndInfo }
ICQ #149391850 / no...@ig...
Notes - http://notes.codigolivre.org.br
NotesDev - http://notes2.sf.net/dev
F=F3rum - http://notes2.sf.net/forum
|