Configuración de uso compartido entre métodos en el complemento jQuery de espacios de nombres

Estoy escribiendo un complemento y siguiendo la práctica recomendada de la documentación de jQueryhttp: //docs.jquery.com/Plugins/Authorin cuando se trata de espacios de nombres y múltiples métodos.

Mi init () se encarga de fusionar las configuraciones predeterminadas y personalizadas usando $ .extend (), sin embargo, no puedo entender cómo hacer que esas opciones estén disponibles fuera del método init (). Diga esa llamada e inicialice mi complemento usando

$("a").myplugin({debug:false}); 

¿cómo puedo hacer referencia a la propiedad de depuración más tarde cuando llamo a

$("a").myplugin("someMethod")?  

Un ejemplo aproximado es:

   (function( $ ){
        var methods = {
            init: function(customSettings) {
                var options = {
                    debug: true
                }
                return this.each(function () {
                   if (customSettings) {
                       $.extend(options, customSettings);
                   }
                });
            },
            someMethod: function() {
               if(options.debug) { // <-- How can I access options here?
                   // do something
               }
            }
         }
    })( jQuery );

    $.fn.myplugin = function (method) {
                if (methods[method]) {
                    return methods[method].apply(this, Array.prototype.slice.call(arguments, 1));
                }
                else if (typeof method === 'object' || !method) {
                     return methods.init.apply(this, arguments);
                }
                else {
                     $.error('Method ' + method + ' does not exist on jQuery.tbwaga');
                }
            };

Respuestas a la pregunta(2)

Su respuesta a la pregunta