Você pode facilmente incluir um arquivo de script em outro em plugins do RKWard. O valor disso se torna imediatamente óbvio se algumas seções do seu código JS forem semelhantes entre os plugins. Você pode simplesmente definir essas seções em um arquivo .js separado e incluí-lo em todos os arquivos .js do plugin. Por exemplo, como em:
// este é um arquivo chamado "common_functions.js"
function doCommonStuff () {
// talvez recebe algumas opções, etc.
// ...
comment ("Este é o código R que você deseja incluir em diversos plugins\n");
// ...
}
// este é o do seu dos seus arquivos .js do plugin normal
// inclui as funções comuns
include ("common_functions.js");
function calculate () {
// faz alguma coisa
// ...
// inserir o código comum
doCommonStuff ();
}
Observe que, às vezes, é ainda mais útil inverter isso e definir o “esqueleto” das funçóes preprocess(), calculate() e printout() em um arquivo comum, e fazer com que essas funções chamem de volta as partes que são diferentes entre os plugins. Por exemplo:
// este é um arquivo chamado "common_functions.js"
function calculate () {
// faz algumas coisas que são o mesmo para todos os plugins
// ...
// adiciona algo que é diferente entre os plugins
getSpecifics ();
// ...
}
// este é o do seu dos seus arquivos .js do plugin normal
// inclui as funções comuns
include ("common_functions.js");
// nota: nenhuma função calculate() é definida aqui.
// está em common_functions.js, ao invés.
function getSpecifics () {
// imprime algum código R
}
Uma questão que você deve ter em mente ao usar essa técnica é o escopo de variáveis. Consulte o manual do JavaScript sobre escopos de variáveis.
Essa técnica é muito utilizada nos plugins de plotagem de distribuição e de distribuição CLT, então talvez você queira procurar exemplos lá.