From: wael-zwaiter@gmx.com
To: Omar Polo <op@omarpolo.com>
Cc: help-gnu-emacs@gnu.org
Subject: Re: Elisp - Store path only once
Date: Sat, 9 Jan 2021 13:55:48 +0100 [thread overview]
Message-ID: <trinity-fe511206-12ec-466b-a1e4-5d94e7f14bf6-1610196948663@3c-app-mailcom-bs15> (raw)
In-Reply-To: <B52F836E-7C27-4A0E-A9B5-D7CE99106087@omarpolo.com>
How can enable Rainbow Delimiters on all files (not just programming
language files)?
> Sent: Saturday, January 09, 2021 at 11:53 PM
> From: "Omar Polo" <op@omarpolo.com>
> To: wael-zwaiter@gmx.com
> Cc: help-gnu-emacs@gnu.org
> Subject: Re: Elisp - Store path only once
>
> On 9 January 2021 12:30:57 CET, wael-zwaiter@gmx.com wrote:
> >Am unsure whether I can require on the elisp files I have written.
> >
> >(require 'g-eshell)
> >(require 'g-utils)
> >
> >Aw getting confused, as I was simply doing
> >
> >(setq g-eshell
> > "/home/bard/Genadm/build/gadin-1.0/elisp/g-eshell.el")
> >
> >(setq g-utils
> > "/home/bard/Genadm/build/gadin-1.0/elisp/g-utils.el")
> >
> >(load 'g-eshell)
> >(load 'g-utils)
> >
> >> Sent: Saturday, January 09, 2021 at 10:54 PM
> >> From: "Omar Polo" <op@omarpolo.com>
> >> To: wael-zwaiter@gmx.com
> >> Cc: help-gnu-emacs@gnu.org
> >> Subject: Re: Elisp - Store path only once
> >>
> >>
> >> wael-zwaiter@gmx.com writes:
> >>
> >> > I have a lot of customisation files for emacs stored in the
> >> > directory /home/bard/Genadm/build/gadin-1.0/elisp/.
> >> >
> >> > Would like to store the path so that I can define it only once.
> >> > How can I do this in Emacs Lisp.
> >> >
> >> >
> >> > (setq g-eshell
> >> > "/home/bard/Genadm/build/gadin-1.0/elisp/g-eshell.el")
> >> >
> >> > (setq g-utils
> >> > "/home/bard/Genadm/build/gadin-1.0/elisp/g-utils.el")
> >>
> >> Couldn't you just
> >>
> >> (add-to-list 'load-path
> >"/home/bard/Genadm/build/gadin-1.0/elisp")
> >>
> >> and then
> >>
> >> (require 'g-eshell)
> >> (require 'g-utils)
> >>
> >> when needed?
> >>
> >>
>
> you should definitely check the manual for more detailed information, but the gist of it is that when you
>
> (require 'something)
>
> emacs will search for something.el in all the directories listed in load-path. This is like the UNIX $PATH variable if you're familiar, only for elisp files instead.
>
> Now, you can require any file, given that they contains a provide at the bottom. i.e. your g-eshell.el should ends with
>
> (provide 'g-shell)
>
> this way you can avoid typing the full path every time, and is also easier to move those files without braking you configuration.
>
> (Also, require is better than load because it won't evaluate the same file two times)
> --
> Sent from my Android device with K-9 Mail. Please excuse my brevity.
>
next prev parent reply other threads:[~2021-01-09 12:55 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-01-09 10:47 Elisp - Store path only once wael-zwaiter
2021-01-09 10:54 ` Omar Polo
2021-01-09 11:30 ` wael-zwaiter
2021-01-09 11:53 ` Omar Polo
2021-01-09 12:55 ` wael-zwaiter [this message]
2021-01-09 17:34 ` Omar Polo
2021-01-09 21:34 ` Drew Adams
2021-01-09 21:56 ` Stefan Monnier
2021-01-09 22:07 ` Drew Adams
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://www.gnu.org/software/emacs/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=trinity-fe511206-12ec-466b-a1e4-5d94e7f14bf6-1610196948663@3c-app-mailcom-bs15 \
--to=wael-zwaiter@gmx.com \
--cc=help-gnu-emacs@gnu.org \
--cc=op@omarpolo.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).