La mia prima semplice Palette è supponiamo di:problema Ombra quando ottenere un pacchetto da un azione tavolozza
- Aggiunge il mio pacchetti Path to
$Path
ActionMenu["test",{"The Simple Packages Path":> AppendTo[$Path, ToFileName[{NotebookDirectory[], "02 Simple Packages"}]]}]
- Prendi i miei pacchetti
ActionMenu["Load Packages", {"Get my package":> Get["myPackage`"]}]
- Posizionare sulla cella ingresso selezionato (o ad una nuova cella di input), una data espressione ingresso, contenente diversi segnaposti.
OpenerView[{"my Package", Button["construct", Paste[[email protected]@construct[Placeholder["description"],Placeholder["another description"]]]]}]
Il problema è che io continuo a ricevere messaggi "ombra" quando si fa clic sulla voce di menu azione "ottenere il mio pacchetto". E sono sicuro che non sto caricando due volte il pacchetto intenzionalmente. Quando clicco su "costruisci", scrive Global`construct["description","another description"]
. Ma sono sicuro di non averlo definito prima di ottenere il pacchetto (ho ucciso il kernel sui miei test).
Sai cosa c'è che non va?
(io uso Get
sui miei pacchetti, invece di Needs
, al fine di garantire un avvio pulito del contesto pacchetto)
anche: fai a sapere di un modo più semplice di fare la Paste[[email protected]
che assicura sia che l'espressione di essere la pasta non viene valutata e viene inserita in una cella di input, anche quando non è selezionata alcuna cella?
Ho corretto alcuni errori nelle parentesi, probabilmente dovute al copia-incolla. C'era un 'invece di un 'nella tua istruzione Get. Ho cambiato anche questo. Potrebbe aver fatto parte del tuo problema? –
No. In realtà ho avuto problemi con il copia incolla, e anche per mostrare il testo con un formato "codice". Sorrey per la leggera incongruenza del codice (in realtà è un pacchetto di un codice che ha molte più cose nel mezzo, con Item, Style, ecc ...) –