Zobrazit plnou verzi příspěvku: CUI - příkazy a jejich načítání

PepaR
14.12.2007, 23:10
Dobrý den,
 
rád bych se zeptal zkušenějších, co již v CUI nějakou dobu pracují:
 
Dotaz 1:
Který varianta zápisu je pro položku v CUI lepší?
varianta A: ^C^C^P(if  (not C:EO) (load "extendedOpen"));^PEO
nebo
varianta B: ^C^C(if (not C:K_zkld) (load "K_POCITEJ"));k_zkld;
 
Dotaz 2:
V případě načtení funkce při spuštění AutoCADu by jste preferovali cestu přes MNL nebo to přidat přímo do CUI?
 
Předem moc děkuji za rady

Mantlík
17.12.2007, 09:11
Dobrý den
 
Ad 1)  Osobně používám variantu B (na konci ale bez středníku)
          Co prosím znamená to ^P?
 
Ad 2) Asi to bude dle osobních sympatií nebo podle toho, jaká se očekává frekvence použití příkazu. Když často, tak možná lépe do MNL (ale já jsem "ustrnul" na variantě v CUI (dříve MNS) a žádnou prodlevu nepozoruji)

chlebovsky
17.12.2007, 09:56
Částečně se budu opakovat, ale já jsem spíš pro to aby se to načítání provedlo v mnl, vono totiž ta podmínka by se neustále volala každým stiskem ikony, což je příkaz navíc, v tom mnl se to načte jednou a dost, na druhou stranu pokud to chcete nějak chránit proti odstranení nějaké podmínky (klíče) tak bych to dal do toho CUI, z tama už to málokdo dostane ven, z toho mnl to každý může odstranit. Takže záleží na situaci.
 
A co se týče toho prvního dotazu, tak obdoba, předchozí odpovědi, s tím že když to mám v mnl tak je jen to načtení:
(if  (not C:EO) (load "extendedOpen"))
 
a pak v cui jen volání příkazu :
^C^CEO  dle vašeho psaní
ale radši píši  :
^C^C(c:EO) a někdy to ^C^C vynechávám dle potřeby zrušení příkazů a ponechání, pokud je to jen doplňková funkce ke zvolenému příkazu, třeba nový uchop mod....

Ferdinand
17.12.2007, 13:15
[QUOTE=chlebovsky]...že když to mám v mnl tak je jen to načtení:
(if  (not C:EO) (load "extendedOpen"))
 ...[/QUOTE]
Možná přesněji
(if  (not C:EO) (load (findfile "extendedOpen")))Ferdinand2007-12-17 13:15:51

PepaR
19.12.2007, 10:42
[QUOTE=chlebovsky]
A co se týče toho prvního dotazu, tak obdoba, předchozí odpovědi, s tím že když to mám v mnl tak je jen to načtení:
(if  (not C:EO) (load "extendedOpen"))
 
a pak v cui jen volání příkazu :
^C^CEO  dle vašeho psaní
[/QUOTE]
Moc jsme to nepobral, chápu to správně, že do MNL napíšu na řádek:
(if  (not C:EO) (load "extendedOpen")) a V CUI postačí pak jen ^C^CEO?
 
Zatím to mám vše v jednom řádku v CUI
 

[QUOTE=Ferdinand]

Možná přesněji
(if  (not C:EO) (load (findfile "extendedOpen")))[/QUOTE]
Předpokládám, že to findfile je tam pouze v případě, že nemám adresář s daným lispem mezi podporovanými adresáři anbo je to prostě jen tak lepší?
 
[QUOTE=Mantlík]Dobrý den
 
Ad 1)  Osobně používám variantu B (na konci ale bez středníku)
          Co prosím znamená to ^P?
 
Ad 2) Asi to bude dle osobních sympatií nebo podle toho, jaká se očekává frekvence použití příkazu. Když často, tak možná lépe do MNL (ale já jsem "ustrnul" na variantě v CUI (dříve MNS) a žádnou prodlevu nepozoruji)[/QUOTE]
Souhlasili byste tedy s podobou: ^C^C(if  (not C:EO) (load (findfile "extendedOpen")));EO;?
 
^P důvod určitě mělo, vytkl mi jej jeden kolega, ovšem bylo to před drahným časem a nevím zda někdě dohledá jeho argumenty, které mi přišly emailem.
 
Děkuji za rady
 
 PepaR2007-12-19 10:43:32

chlebovsky
19.12.2007, 13:46
Ano správně, do mnl na jeden řádek bych napsal :
(if  (not C:EO) (load (findfile "extendedOpen")))
a to zaručí že se funkce určitě načte, celou cestu psát nemusíte pokud to budete mít uložené někde kde cad hledá (např support) pak stačí to findfile, jinak doporučuji celou cestu
Tím se to načte, a máte jistotu že to tam je.
 
A pak už jen do CUI
^C^CEO

PepaR
19.12.2007, 14:22
No jo, ale neni to tentýž případ, jako kdybych napsal: (LOAD "acettxt.lsp")
Nechtěl bych tak jako psal pan Mantlík aby se mi řpi suštění AutoCADu načítalo moc funkcí do paměti, což hrozně zdržuje.
 

Seiner
19.12.2007, 14:29
a co v mnl použít funkci AUTOLOAD?
 
Pak se to načítá při prvním použití

chlebovsky
19.12.2007, 15:16
Jo to je taky možnost a pak by to teda bylo v mnl takto:
(autoload "extendedOpen" '("EO"))
 
a nahrálo by se to při prvním volání funkce. Nepletu-li se.

PepaR
19.12.2007, 16:17
Ptám se především kvůli GGmenu.
Co byste mi doporučili teda použít a který zprůsob byste pro GGmenu preferovali Vy (pokud jej používáte)?