emacs lisp elisp dot-emacs

emacs - En Lisp, evite "No se puede abrir el archivo de carga" cuando se usa require



elisp dot-emacs (1)

Si solo desea evitar require emita un error, puede hacer lo siguiente:

; third arg non-nil means to not signal an error if file not found ; a symbol provides documentation at the invocation (and is non-nil) (require ''darkroom-mode nil ''noerror)

De la documentación ( Ch f requiere RET ):

require is a built-in function in `C source code''. (require feature &optional filename noerror) If feature feature is not loaded, load it from filename. If feature is not a member of the list `features'', then the feature is not loaded; so load the file filename. If filename is omitted, the printname of feature is used as the file name, and `load'' will try to load this name appended with the suffix `.elc'' or `.el'', in that order. The name without appended suffix will not be used. If the optional third argument noerror is non-nil, then return nil if the file is not found instead of signaling an error.

Estoy trabajando en un archivo .emacs personalizado que podré usar en varias computadoras diferentes. Me gustaría poder cargar un modo si existe en el sistema. Si no existe, me gustaría que Emacs dejara de mostrar el error: File error: Cannot open load file, X

Por ejemplo:

(require ''darkroom-mode)

Resultados en:

File error: Cannot open load file, darkroom-mode

Estoy usando file-exists-p para comprobar si existen otros archivos, pero para esta prueba supongo que necesito buscar en mi ruta de carga. Soy nuevo en Lisp, así que esto me está parando.