You are here: PSPad forum > Bug report / Hlášení chyb > Re: DIFF z kontextového menu porovnává jiné soubory

Re: DIFF z kontextového menu porovnává jiné soubory

Goto Page: 1 2 Next

#1 DIFF z kontextového menu porovnává jiné soubory

Posted by: Vany | Date: 2022-04-29 14:24 | IP: IP Logged

Ahoj, pokud jsem měl otevřený PSPad (5.0.7.731) s pár soubory a dal jsem z TotalCommanderu porovnat vybrané dva soubory, tak porovnání proběhlo proti druhému z nich a souborem, co byl naposledy aktivní před zahájením porovnávání. Až následně po otevření okna porovnávání se otevřel první ze zamýšlených porovnávaných souborů.

image
image

--
Vany
(PSPad 5.0.7 (741) x32, W10h/p x64 en/cs)

Options: Reply | Quote | Up ^


#2 Re: DIFF z kontextového menu porovnává jiné soubory

Posted by: Vany | Date: 2022-11-22 13:35 | IP: IP Logged

tak koukám, že verze 741 tím trpí stále.
Pokud v TotalCommanderu označím dva soubory, přes pravé myšítko vyberu PSPad Diff, tak se otevře první z označených souborů, po něm okno porovnávání dvou předchozích, tedy prvního označeného a posledního dříve otevřeného souboru, a teprve po nich následuje druhý označený soubor...

--
Vany
(PSPad 5.0.7 (741) x32, W10h/p x64 en/cs)

Options: Reply | Quote | Up ^


#3 Re: DIFF z kontextového menu porovnává jiné soubory

Posted by: pspad | Date: 2022-11-22 14:06 | IP: IP Logged

Jak je nastavena integrace do systému? Přes registry nebo přes DLL?
V případě registrů spustí Windows PSpad 2x (to neovlivním) a každý dostane jeden soubor. Pak se to fakt špatně vyhodnocuje co s čím se má porovnávat.

V případě integrace přes DLL (context handler) se spouští pouze jeden PSpad a dostane jako parametr oba soubory najednou

Options: Reply | Quote | Up ^


#4 Re: DIFF z kontextového menu porovnává jiné soubory

Posted by: Vany | Date: 2022-11-28 09:10 | IP: IP Logged

Integrace přes registry a zároveň pouze jedna instance programu.

Takže pokud to správně chápu, tak
1) k již běžícímu PSPadu se nastartuje další (druhá) instance s prvním souborem,
2) zjistí, že má běžet pouze jedna instance a sloučí se s první instancí
3) a pustí porovnání posledních dvou souborů (tj. posledního otevřeného v první instanci a s prvním porovnávaným v druhé instanci)
4) a následně nastartuje další (třetí) instance, sloučí se s první a už neprovede nic.

To je ale pěkné naděleníčko...

--
Vany
(PSPad 5.0.7 (741) x32, W10h/p x64 en/cs)

Options: Reply | Quote | Up ^


#5 Re: DIFF z kontextového menu porovnává jiné soubory

Posted by: Vany | Date: 2022-11-28 09:14 | IP: IP Logged

PS: doma pod DLL to funguje cajk

--
Vany
(PSPad 5.0.7 (741) x32, W10h/p x64 en/cs)

Options: Reply | Quote | Up ^


#6 Re: DIFF z kontextového menu porovnává jiné soubory

Posted by: pspad | Date: 2022-11-28 11:20 | IP: IP Logged

Vany:
Integrace přes registry a zároveň pouze jedna instance programu.

Takže pokud to správně chápu, tak
1) k již běžícímu PSPadu se nastartuje další (druhá) instance s prvním souborem,
2) zjistí, že má běžet pouze jedna instance a sloučí se s první instancí
3) a pustí porovnání posledních dvou souborů (tj. posledního otevřeného v první instanci a s prvním porovnávaným v druhé instanci)
4) a následně nastartuje další (třetí) instance, sloučí se s první a už neprovede nic.

To je ale pěkné naděleníčko...

Jo, jenže tohle nedělá PSpad, ale Windows. Když označím 10 souborů a dám otevřít v PSpadu, tak Windows spustí 10x PSpad a každému předá jeden soubor.
A přesně, je to pěkné naděleníčko - první se spustí, ostatní musí počkat. Až jim ten první dá pokyn, že naběhl, tak mu pošlou jednotlivé soubory a on je postupně zpracuje.
Nedá se říct, v jakém pořadí soubory přijdou, to záleží na systému, protože pořadí označených souborů uživatelem nic neznamená.

Options: Reply | Quote | Up ^


#7 Re: DIFF z kontextového menu porovnává jiné soubory

Posted by: Vany | Date: 2022-11-29 14:37 | IP: IP Logged

hem, jedině mi napadá si názvy souborů k porovnání "odkládat" do nějakého TEMP texťáku a další instance, co dostane pokyn /D se podívá, jestli čistě náhodou neexistuje porovnávací seznam a v něm již existující otevřený soubor a na něj by směřovalo porovnání aktuálního otevíraného souboru...

--
Vany
(PSPad 5.0.7 (741) x32, W10h/p x64 en/cs)

Options: Reply | Quote | Up ^


#8 Re: DIFF z kontextového menu porovnává jiné soubory

Posted by: pspad | Date: 2022-11-29 14:39 | IP: IP Logged

Zkusim popremyslet - treba pokud bude parametr /D, tak vzit posledni 2 otevrene.

Options: Reply | Quote | Up ^


#9 Re: DIFF z kontextového menu porovnává jiné soubory

Posted by: Vany | Date: 2022-11-29 14:51 | IP: IP Logged

no, to už dělá teď, jen to udělá hned u prvního souboru a při otevírání nové instance s druhým souborem je předchozí záložka to porovnávání a s ním se už ten druhý soubor neporovná...

--
Vany
(PSPad 5.0.7 (741) x32, W10h/p x64 en/cs)

Options: Reply | Quote | Up ^


#10 Re: DIFF z kontextového menu porovnává jiné soubory

Posted by: pspad | Date: 2022-12-04 12:59 | IP: IP Logged

Bude to horší, než jsem si myslel v případě integrace přes registry a již běžícího programu
Mám spuštěný PSPad
Napřed Windows pošle -D + soubor do nové instance
Pak Windows pošle druhý soubor do další nové instance
První instance pošle běžícímu PSPadu příkaz na porovnání, ale neví s čím. Pak možná pošle druhá instance další soubor
Navíc jeden nebo oba soubory už mohou být v PSPadu otevřené, takže by se měl PSpad na ně pouze přepnout

Options: Reply | Quote | Up ^


Goto Page: 1 2 Next





Editor PSPad - freeware editor, © 2001 - 2022 Jan Fiala, Hosted by Webhosting TOJEONO.CZ, design by WebDesign PAY & SOFT, code Petr Dvořák, Privacy policy and GDPR