Commit Graph

66 Commits

Author SHA1 Message Date
Jonas Bernoulli
2c81b70bf8 Merge branch 'master' into layer/elisp 2021-09-08 18:00:39 +02:00
Jonas Bernoulli
c2bdcb337f Emacsg: init: Add "Tequila worms" section 2021-09-08 17:01:46 +02:00
Jonas Bernoulli
cee98bb063 Merge branch 'master' into layer/elisp 2021-01-27 13:04:01 +01:00
Jonas Bernoulli
0f9e8e769e Emacsg: Silence byte-compiler
Before this commit when running "touch init.el; emacs", then the
compilation triggered by `auto-compile-on-load-mode' resulted in:

  Warning (bytecomp): the following functions might not be defined at runtime:
      server-running-p, magit-add-section-hook
  Warning (bytecomp): the following functions are not known to be defined:
      indent-spaces-mode, indicate-buffer-boundaries-left

While "make build-init" only resulted in:

  init.el:193:1: Warning: the function ‘magit-add-section-hook’ might not be
      defined at runtime.

This commit addresses all of these warnings:

- Don't sharp quote functions, because they resulted in invalid
  warnings.

- Use the `use-package' keyword `:commands' to suppress the other
  warnings, because `:functions' fails to its job even though
  theoretically it is more suitable in these cases.
2021-01-27 12:22:40 +01:00
Jonas Bernoulli
70c1e2f11f Emacsg: Initialize borg at compile-time too
Without this `auto-compile-on-load-save' would file to re-compiling a
modified "init.el", which can be observed using "touch init.el; emacs".
2021-01-27 12:08:16 +01:00
Jonas Bernoulli
6e4701fdb0 Emacsg: Load essential libraries independently
Multiple packages require these libraries and we don't want to
attribute the time it takes to load these libraries to whatever
dependent package happens to be loaded first.

We don't do the same for `cl-lib' because `borg' itself requires,
which is done without `use-package', i.e. without timing how long
it takes.
2021-01-27 11:57:59 +01:00
Jonas Bernoulli
7cb4b86852 magit: Don't double down on default key bindings
This wasn't always the case, but now Magit
adds these key bindings out of the box.
2021-01-27 11:40:48 +01:00
Jonas Bernoulli
377b9065cb dash: Enable global-dash-fontify-mode
Instead of calling the obsolete `dash-enable-font-lock' function.
2021-01-27 11:36:10 +01:00
Jonas Bernoulli
aad6491a91 Merge branch 'master' into layer/elisp 2020-09-08 12:45:30 +02:00
Jonas Bernoulli
a0540f27d9 tramp: Use remotes PATH
Add `tramp-own-remote-path' to the front of `tramp-remote-path',
so that the configuration on the host that we are connecting to
is used when we are connecting to it.  That may be a tautology
but it's not the default.

This matters especially when connecting to an "usual" system,
such as Guix, as has been discussed a few times, including here:
https://lists.gnu.org/archive/html/help-guix/2016-10/msg00041.html
https://lists.gnu.org/archive/html/help-guix/2017-06/msg00106.html
https://lists.gnu.org/archive/html/help-guix/2017-07/msg00003.html
2020-09-08 12:35:08 +02:00
Jonas Bernoulli
2d31566d8c Merge branch 'master' into layer/elisp 2020-08-17 18:44:22 +02:00
Jonas Bernoulli
0fac0c05e5 Emacsg: Only disable scroll-bar-mode and tool-bar-mode if defined
The mode functions may not be defined when using an Emacs compiled
with "--without-x", in which case disabling these modes (1) isn't
necessary because they can't possibly be enabled and (2) trying to
call one of these undefined function would result in an error.

Closes #21.
2020-05-30 23:19:46 +02:00
Jonas Bernoulli
7891ad8f21 Merge branch 'master' into layer/elisp 2020-05-22 16:01:34 +02:00
Jonas Bernoulli
a1c54210d1 Emacsg: init: Setup auto-compile in early-init.el
That way "init.el" can also benefit from `auto-compile-on-load-mode'
and `load-prefer-newer'.  "early-init.el" still cannot of course,
but we already don't compile that file (for this very reason).
2020-05-22 15:17:47 +02:00
Jonas Bernoulli
5e2e40574b smerge-mode: Do not extend smerge-redefine-changed
By default this face is not neither used nor has a visible effect.
It is used if it does `face-differs-from-default-p', in which case
it replaces `smerge-refined-removed' and `smerge-refined-added'.

Setting `:extend' makes the `face-differs-from-default-p', but it does
not make it *look* different from `default', so doing that effectively
hides the refinements.
2020-05-22 15:10:48 +02:00
Jonas Bernoulli
3fbba9eef3 Merge branch 'master' into layer/elisp 2020-03-21 00:02:06 +01:00
Jonas Bernoulli
b0178cc65c tramp: Disable vc
Tramp's FAQ suggests this in order to speed things up.
2020-03-20 23:43:24 +01:00
Jonas Bernoulli
7c194efc8a smerge-mode: Continue to extend faces to edge of window
Due to a breaking change we have to request this explicitly in
Emacs 27.  Earlier Emacs versions do the right thing by default.
2020-03-20 23:42:44 +01:00
Jonas Bernoulli
b0e7499009 diff-mode: Continue to extend faces to edge of window
Due to a breaking change we have to request this explicitly in
Emacs 27.  Earlier Emacs versions do the right thing by default.

See https://debbugs.gnu.org/cgi/bugreport.cgi?bug=37774.
2020-03-20 23:42:39 +01:00
Jonas Bernoulli
cd0a0224c1 Emacsg: init: Add early-init.el 2020-03-20 23:37:24 +01:00
Jonas Bernoulli
9f7b6d77b6 Merge branch 'master' into layer/elisp 2019-04-19 21:38:20 +02:00
Jonas Bernoulli
c4d9338571 magit: Adjust key binding for use of Transient 2019-02-17 01:11:09 +01:00
Jonas Bernoulli
e8dfbcba3d Merge branch 'master' into layer/elisp 2018-12-27 13:42:47 +01:00
Jonas Bernoulli
1de7198d71 auto-compile: No longer inhibit when HEAD is detached 2018-12-27 12:47:34 +01:00
Jonas Bernoulli
5fc124ff6d Merge branch 'master' into layer/elisp 2018-06-23 22:51:55 -05:00
Jonas Bernoulli
ba5ffda542 Revert "Emacsg: init: Silence bogus warnings on newer Emacsen"
This reverts commit 17f4770a18.
2018-06-23 16:32:05 -05:00
Jonas Bernoulli
3d749dff30 Merge branch 'master' into layer/elisp 2018-03-02 22:35:40 +01:00
Jonas Bernoulli
5420d5312f custom: Do not require
This prevents `custom.el' from being loaded again when compiling
`init.el'.  Preventing that is necessary because the use face would
otherwise be reloaded, which would undo all changes to faces that
were done using `set-face-attribute' or similar.
2018-02-09 20:51:17 +01:00
Jonas Bernoulli
7bd2866746 Merge branch 'master' into layer/elisp 2018-01-29 11:24:01 +01:00
Jonas Bernoulli
308b112d18 save-place: don't enable save-place-mode on Emacs 24 2018-01-17 17:39:03 +01:00
Jonas Bernoulli
8248513177 eldoc: don't enable global-eldoc-mode on Emacs 24 2018-01-17 17:37:47 +01:00
Jonas Bernoulli
f4703c13c2 copyright: Defer loading 2018-01-11 12:15:54 +01:00
Jonas Bernoulli
522800b061 Merge branch 'master' into layer/elisp 2017-12-21 03:27:01 +01:00
Jonas Bernoulli
17f4770a18 Emacsg: init: Silence bogus warnings on newer Emacsen
I mean, what am I supposed to do here?  26.1 doesn't
want to use `if-let' and 25.3 doesn't have `if-let*'.
2017-12-21 03:15:00 +01:00
Jonas Bernoulli
a2973a87e1 Emacsg: init: Suppress package.el more reliably 2017-12-21 03:14:00 +01:00
Jonas Bernoulli
0b50919c3e Merge branch 'master' into layer/elisp 2017-11-27 12:53:15 +01:00
Jonas Bernoulli
8cf374b249 magit: add new magit-insert-modules to magit-status-sections-hook
Instead of adding various `magit-insert-modules-*' functions directly.
2017-11-27 12:29:56 +01:00
Jonas Bernoulli
1bd80dd58b copyright: add copyright-update to before-save-hook
You should also set `copyright-names-regexp' or this will quickly
get annoying.  Some other variables you might want to set include
`copyright-year-range' and `copyright-limit'.
2017-08-05 00:26:01 +02:00
Jonas Bernoulli
dd13e1db75 text-mode: fix configuration 2016-11-28 18:33:06 +01:00
Jonas Bernoulli
f08084b363 lisp-interaction-mode: indent using spaces
Many users set `indent-tabs-mode' global value to nil.  And I agree with
those users, this should have been the default.  But the reality is that
it isn't the default.

If you change the default locally, then your default is different from
the "default default", which is a problem because most files that were
authored by people who prefer to use tabs do NOT explicitly set the
file local value to t, because that doing so would (theoretically) be
redundant.

If you do set `indent-tabs-mode' to nil despite this, then you will end
up using spaces for indentation in files whose author decided to use
tabs.  What I do instead is to set the file-/buffer-local value for all
files whose author I am.  That's a bit inconvenient, but if I didn't do
that then I would have to check every contributions for tabs.
2016-05-17 18:46:00 +02:00
Jonas Bernoulli
34217222ed emacs-lisp-mode: enable outline-minor-mode and reveal-mode 2016-05-17 18:45:00 +02:00
Jonas Bernoulli
73d93703ce text-mode: indicate buffer boundaries 2016-05-17 18:44:00 +02:00
Jonas Bernoulli
bd04355f42 prog-mode: indicate buffer boundaries 2016-05-17 18:43:00 +02:00
Jonas Bernoulli
9e138065d8 isearch: allow scrolling while searching 2016-05-17 18:42:00 +02:00
Jonas Bernoulli
cb40ab046b man: limit line width 2016-05-17 18:41:00 +02:00
Jonas Bernoulli
6aba44db51 dired: show human-readable file sizes 2016-05-17 18:40:00 +02:00
Jonas Bernoulli
d8006b663e tramp: configure root-over-ssh proxy 2016-05-17 18:39:00 +02:00
Jonas Bernoulli
8e4b9e1d77 recentf: exclude tramp paths 2016-05-17 18:38:00 +02:00
Jonas Bernoulli
dec42814ff Enable global column-number-mode 2016-05-17 18:37:00 +02:00
Jonas Bernoulli
fabbd0cab4 Enable global temp-buffer-resize-mode 2016-05-17 18:36:00 +02:00