Compare commits

...

143 Commits

Author SHA1 Message Date
87b37aadbe
Install the orgit and orgit-forge packages 2023-12-04 05:18:22 +01:00
a87bcffba7
Add shortcut for org-road-dailies-capture-date 2023-12-04 05:18:07 +01:00
4cdb694132
Make Org agenda not show a warning for schedule+deadline items 2023-12-04 05:16:35 +01:00
7606482c8e
Add the rg package 2023-11-02 17:23:45 +01:00
c5dd1e4aa8
Add the ag package 2023-11-02 17:23:34 +01:00
4f741497d1
Add the ebnf-mode package 2023-11-02 17:23:10 +01:00
47c0d61301
Change the default font size 2023-11-02 17:22:55 +01:00
10faa3b170
Change fill column to 120 2023-11-02 17:22:24 +01:00
f4ecdb518e
Add sp-rewrap-sexp to mc list 2023-11-02 17:21:46 +01:00
b1f2df7e75
Remove the flycheck-rust package
It’s not maintained since 2019 and it throws a lot of errors.
2023-10-27 06:12:40 +02:00
828448680a
Disable undo-tree saving
It writes a lot of files which might sound handy but since i don’t always use
Emacs to edit files, they can easily become obsolete.
2023-10-27 06:02:04 +02:00
519f7acf1a
Add the yuck-mode package 2023-10-27 06:01:55 +02:00
d975584e25
Add forge-database-v*.sqlite to gitignore
It seems forge now simply backs up the whole sqlite file instead of dumping it.
2023-10-24 15:53:04 +02:00
6a50199652
Final touches 2023-10-24 09:28:20 +02:00
5351cde10d
Fix a source link for one of my commands 2023-10-24 09:28:01 +02:00
5cd85a35ca
Make sure we use orderless exclusively during completion 2023-10-24 09:28:01 +02:00
f9b50a7af7
Fine tune Rust and Cargo related packages 2023-10-24 09:28:01 +02:00
3130097949
Globally enable undo-tree 2023-10-24 09:28:01 +02:00
0f7935da32
Reduce the default font size 2023-10-24 09:28:01 +02:00
1cf60c50ef
Remove some unused key bindings 2023-10-24 09:28:01 +02:00
38c2dacedc
Get rid of gpolonkai/isearch-regexp
isearch is good in itself, so this also rebinds isearch commands to their
rightful bindings.
2023-10-24 09:28:00 +02:00
d8eb235b25
Remove some unused functions 2023-10-24 09:28:00 +02:00
2c18b4c70a
Only load fish-mode for fish files 2023-10-24 09:28:00 +02:00
c39e8c2bbf
Only load systemd-mode for specific file types 2023-10-24 09:28:00 +02:00
6987cb93dc
Add a new feed to my TwTxt settings 2023-10-24 09:28:00 +02:00
07725bdf2f
Only load elpher when it is used 2023-10-24 09:28:00 +02:00
d9dd5acd15
Only enable hl-todo mode in programming modes 2023-10-24 09:28:00 +02:00
5b55077411
Only load tidal for tidal files 2023-10-24 09:27:59 +02:00
47abe6c958
Prevent open-line-above/below from doing completion if no indentation is needed 2023-10-24 09:27:59 +02:00
60307f6432
Add and configure the cape package 2023-10-24 09:27:59 +02:00
5b0156d951
Add and configure the corfu package 2023-10-24 09:27:59 +02:00
4d59042b60
Add and configure the consult-projectile package 2023-10-24 09:27:59 +02:00
927753fbd5
Add and configure the org-appear package 2023-10-24 09:27:59 +02:00
847c65ddc0
Add and configure the consult-org-roam package 2023-10-24 09:27:59 +02:00
fe79b09035
Add and configure the spdx package 2023-10-24 09:27:58 +02:00
a2635593e8
Add and configure the string-inflection package 2023-10-24 09:27:58 +02:00
75342a80fc
Add a key binding for sp-rewrap-sexp 2023-10-24 09:27:58 +02:00
8e320b2db6
Minor adjustment for using corfu, so tab always tries to complete 2023-10-24 09:27:58 +02:00
e66540149d
Refactor gpolonkai/goto-next-char for a bit more performance 2023-10-24 09:27:58 +02:00
3011905d2b
Make gpolonkai/org-space-key customizable 2023-10-24 09:27:58 +02:00
4d7a2795a4
Remap dabbrev stuff so it’s more useful 2023-10-24 09:27:58 +02:00
12a66c6ee7
Change my hidden modeline implementation to hide-mode-line 2023-10-24 09:27:56 +02:00
93851abbe2
Refactor my key bindings into submaps 2023-10-24 09:25:05 +02:00
76d99e522a
Move key bindings to their final place 2023-10-24 09:25:04 +02:00
d2c81b01f5
Move programming related packages to their own section 2023-10-24 09:24:13 +02:00
b66589eb83
Move utility packages to their own section 2023-10-24 09:21:25 +02:00
1ab3596465
Move coding related packages to their own section 2023-10-24 09:21:25 +02:00
02fe027e61
Move mailing related configuration to its own section 2023-10-24 09:21:25 +02:00
c058cfe853
Move completion related configuration to its own section 2023-10-24 09:21:25 +02:00
3539accfb1
Move Org related packages and settings to their own section 2023-10-24 09:21:23 +02:00
ade76106df
Move Git related packages to their own section 2023-10-24 09:10:21 +02:00
6f51d5133f
Move dired related packages to their own section 2023-10-24 09:10:20 +02:00
7faa3b099a
Move usability packages to their own section 2023-10-24 09:10:20 +02:00
38fdccda58
Move Projectile config to its own section 2023-10-24 09:10:20 +02:00
e17223828e
Configure built-in packages before everything else 2023-10-24 09:10:20 +02:00
cde06cd98d
Move Emacs default settings to (almost) the top 2023-10-24 09:10:20 +02:00
224c12a060
Move some custom functions to their new place
Others will be either deleted or moved later.
2023-10-24 09:10:19 +02:00
2ab396a5fe
Move package manager configuration to a new place 2023-10-24 08:58:47 +02:00
4c11f8190d
Move pre-initialization steps to the top of my config 2023-10-24 08:58:47 +02:00
1a90cb599f
Remove the func-region function 2023-10-24 08:58:35 +02:00
9873a7d3ed
Remove the un/hex-region commands 2023-10-24 08:40:30 +02:00
f46f550efb
Remove the mbork/copy-current-location function 2023-10-24 06:26:05 +02:00
71ccdfc43b
Remove the jinja-mark-translatable function 2023-10-24 06:26:05 +02:00
f7c91a882d
Remove Zim wiki editing commands
I no longer use Zim (but even if i will, i probably won’t need these).
2023-10-24 06:26:04 +02:00
87e0fb1b74
Remove the python-add-docstring function 2023-10-24 06:26:04 +02:00
8290095a01
Fix mu4e’s completing read setting
Vertico doesn’t have such a function but hooks into the built-in one.
2023-10-24 06:26:04 +02:00
05052c21c6
Remove the pacfiles-mode package 2023-10-24 06:25:56 +02:00
9abf160081
Remove the ansible package 2023-10-24 06:24:09 +02:00
afc5474af6
Remove the edit-server package 2023-10-24 06:21:22 +02:00
f068563eae
Remove restclient and ob-restclient 2023-10-24 06:07:08 +02:00
86cc519270
Remove the gobgen package
The GObject boilerplate changed a lot since i wrote this package, so it’s pretty
much useless now.
2023-10-24 06:01:09 +02:00
eb1d6af07e
Remove the coffee-mode package 2023-10-23 07:54:05 +02:00
5379c3ab13
Remove the csharp-mode package 2023-10-23 07:51:45 +02:00
e7b1422f62
Remove the go-mode package 2023-10-23 07:50:26 +02:00
db1d1dd95d
Remove the clojure-mode package 2023-10-23 07:44:10 +02:00
52bcb80a3f
Remove the graphql package 2023-10-23 07:38:31 +02:00
4709929f5b
Remove the consult-ag package 2023-10-23 07:36:44 +02:00
67acc6c258
Remove the org-caldav package 2023-10-23 07:31:57 +02:00
c7a948c9da
Remove the ag package 2023-10-23 07:15:04 +02:00
b5132f05b5
Remove the sphinx-doc package 2023-10-23 07:00:40 +02:00
ea6c5549cb
Remove the bibtex-completion package 2023-10-23 06:55:38 +02:00
fe3a358900
Remove the fancy-narrow package 2023-10-23 06:51:04 +02:00
984f2146e2
Remove the loccur package 2023-10-23 06:45:50 +02:00
b0879b8b91
Remove the keyfreq package
I don’t do anything with this data, so there’s no real use here.
2023-10-22 08:19:18 +02:00
875dd97786
Remove command-log-mode
Because that “occasional screen casting” basically means “never”.
2023-10-22 08:15:16 +02:00
d2d5f8e267
Remove the ement package
Adding a new device to my Matrix account and syncing rooms takes a lot of time
on my HS, which makes it pretty unusable.
2023-10-22 08:11:56 +02:00
6e0b245d34
Remove the feature-mode package 2023-10-22 08:08:13 +02:00
989125b0b2
Remove the expand-region package 2023-10-22 07:04:00 +02:00
e0367111d2
Remove the electric-case package 2023-10-22 06:32:00 +02:00
31bb9c922f
Remove the open-this-file-as-other-user function 2023-10-22 05:52:57 +02:00
1849204a57
Remove the delete-current-line function
I don’t use it.
2023-10-22 05:46:27 +02:00
53876320dc
Remove the origami package 2023-10-21 17:13:46 +02:00
ec2818c4b9
Remove the general package
It might make a comeback later, but for now, i can’t see how it could be useful.
2023-10-21 17:05:52 +02:00
71a2ff9022
Remove the neotree package 2023-10-21 16:29:09 +02:00
15da1c7d85
Remove the achievements package
It was fun initially, but it grew old…
2023-10-21 16:26:03 +02:00
f8bbc15cd5
Remove the kanban package 2023-10-21 16:23:13 +02:00
c91421c3f8
Remove the sx package 2023-10-21 16:21:26 +02:00
32e07598b7
Remove the emamux package
I never ever used it.
2023-10-21 16:19:38 +02:00
365a2a00f4
Remove dark/bright mode switching functions
With doom-themes, it’s much easier to switch between different themes.
2023-10-21 16:05:14 +02:00
0682d7df78
Remove the focus package 2023-10-21 08:04:11 +02:00
a301db6205
Remove yasnippets
I never use them, why install it then?
2023-10-21 07:55:55 +02:00
715a53f417
Remove Python f-string font locking hack
It is now supported by python-mode natively.
2023-10-21 07:50:10 +02:00
0645426162
Remove the ponylang-mode package 2023-10-20 16:00:04 +02:00
17263b41fd
Remove the gnugo package 2023-10-20 15:58:27 +02:00
2bc338371e
Remove the camel-to-snake-case function
string-inflection (soon to be added) already does this for me.
2023-10-20 15:55:20 +02:00
f006617927
Remove the mediawiki package 2023-10-20 15:53:01 +02:00
8be18afab7
Remove dangling ace-popup-menu configuration
It is not working for a while now, why keep it?
2023-10-20 15:51:39 +02:00
ebcaf1c6da
Remove visit-init-file and visit-org-index 2023-10-20 15:46:29 +02:00
23b8a3a2ac
Remove gpolonkai/undo-buffer-kill and companion functions 2023-10-20 15:27:03 +02:00
0fdc67dffe
Remove org-tempo configuration
I don’t use it, as `C-c C-,` is easier.
2023-10-20 15:03:54 +02:00
0d9deef614
Remove nyan-prompt 2023-10-20 14:50:38 +02:00
f9028e6c9c
Remove insert-pair-alist configuration
It seems to cause more problems than solutions.
2023-10-20 14:49:02 +02:00
0b00baff99
Remove gpolonkai/enclose-region
I never really used this command.
2023-10-20 14:43:15 +02:00
87137be645
Remove my own implementation of duplicate-line
Emacs has it built in now.
2023-10-20 14:38:37 +02:00
e13a6d9173
Remove the æ-kill-or-copy-whole-line command
I never used, not even bound it.
2023-10-20 14:37:42 +02:00
2c490cfc36
Remove the get-number-at-point function
thing-at-point already has `number-at-point`.
2023-10-20 14:37:42 +02:00
a6bd9c62c2
Remove zoning related commands and packages 2023-10-20 14:37:42 +02:00
c43df73208
Remove Company and its subpackages 2023-10-20 14:37:42 +02:00
354d1ea52d
Remove my transient keymap
With which-key it’s no longer needed.
2023-10-20 14:37:37 +02:00
5f08005ef2
Remove LSP related packages (including lsp-dart) 2023-10-20 10:40:50 +02:00
67fc81169a
Fix smartparens config 2023-10-16 14:09:54 +02:00
9eac9766cb
Fix saveplace configuration 2023-10-16 10:04:07 +02:00
8f00b92bcf
Replace tabs with spaces 2023-10-15 07:00:07 +02:00
d6e8e7000f
Update key frequency table 2023-10-15 05:14:16 +02:00
857d01b3d0
Don’t turn on zoning upon startup 2023-10-06 05:56:28 +02:00
c1d777c365
Move calendar settings into :custom directives 2023-10-06 05:02:15 +02:00
ee064eed75
Remove the editorconfig package 2023-10-06 04:39:11 +02:00
bdb9a52357
Update key frequency table 2023-10-06 04:37:13 +02:00
aa930b3aff
Update twtxt configuration 2023-10-06 04:37:12 +02:00
57771a1c91
Remove the mu4e-maildirs-extension package
It seems to be gone from MELPA.
2023-10-05 16:00:54 +02:00
b77b8d63bd
Add gpolonkai/numeric-sort-lines 2023-10-03 10:33:05 +02:00
c971892569 Remove the golden-ratio package
As good as it seemed, it gets worse now that i use Emacs more in full-screen mode.
2023-09-29 10:41:18 +02:00
5ab0061e2e Fix CRM indicator regexp 2023-09-29 10:41:18 +02:00
c8a4c1587f Update key frequency database 2023-09-29 10:40:57 +02:00
904704668f
Update key frequency table 2023-09-29 08:15:22 +02:00
2ceecc5a21
Display horizontal rulers in Org files as a full-width line 2023-09-29 08:15:06 +02:00
16e31aec48
Remove the docker-tramp package
It is deprecated in favour of the builting tramp-container.
2023-09-29 08:15:06 +02:00
4adf6f702d
Move from Ivy to Consult+Vertico+Orderless 2023-09-29 08:15:05 +02:00
86eee97bd1
Install and configure the visual-fill-column package 2023-09-29 08:15:05 +02:00
f875a518ee
Update mu4e configuration 2023-09-29 08:15:05 +02:00
7796a31ee5 Update key frequency table 2023-09-16 06:16:09 +02:00
6779653716 Improve Org Roam configuration 2023-09-03 21:03:52 +02:00
9723c30269 Update key frequency table 2023-08-28 23:57:24 +02:00
9 changed files with 2259 additions and 14083 deletions

File diff suppressed because one or more lines are too long

1
.gitignore vendored
View File

@ -47,6 +47,7 @@
# Forge database
/forge-database.sqlite
/forge-database-v*.sql
/forge-database-v*.sqlite
# request.el cookie jars
/request/curl-cookie-jar

View File

@ -19,6 +19,7 @@
gpolonkai/duplicate-line
gpolonkai/move-to-beginning-of-line
gpolonkai/move-to-end-of-line
gpolonkai/org-space-key
hungry-delete-backward
hungry-delete-forward
indent-for-tab-command
@ -35,7 +36,6 @@
org-meta-return
org-return
org-self-insert-command
org-space-key
org-yank
overwrite-mode
sp-backward-delete-char
@ -45,6 +45,7 @@
sp-kill-region
sp-kill-word
sp-remove-active-pair-overlay
sp-rewrap-sexp
sp-unwrap-sexp
toggle-char-case
upcase-region

File diff suppressed because it is too large Load Diff

10678
keyfreq

File diff suppressed because it is too large Load Diff

View File

@ -1,75 +0,0 @@
# git show :stage:filename
# common ancestor: 1
# HEAD: 2
# MERGE_HEAD: 3
import re
from subprocess import Popen, PIPE
import sys
BASE = 1
HEAD = 2
MERGE_HEAD = 3
FINAL = 0
outputs = {}
for stage in (BASE, HEAD, MERGE_HEAD):
p = Popen(['git', 'show', f':{stage}:keyfreq'], stdout=PIPE, stderr=PIPE)
output, err = p.communicate()
if p.returncode:
print(output)
sys.exit(1)
outputs[stage] = {}
output = output.decode('utf-8')[1:-1].split('\n')
for line in output:
line = line.strip()
if not line:
continue
if '"' in line:
continue
m = re.match(r'^\(\(([^) ]+) .\ ([^) ]+)\) \. ([0-9]+)\)$', line)
if not m:
raise ValueError(f'Invalid cons cell: {line}')
mode, command, count = m.groups()
count = int(count)
outputs[stage].setdefault(mode, {})
outputs[stage][mode][command] = count
outputs[FINAL] = {}
for stage in (BASE, HEAD, MERGE_HEAD):
for mode in outputs[stage]:
outputs[FINAL][mode] = {}
for command, count in outputs[stage][mode].items():
base_mode = outputs[BASE].get(mode, {})
base_count = base_mode.get(command, 0)
this_count = outputs[stage][mode][command]
outputs[FINAL][mode].setdefault(command, base_count)
if stage != BASE:
outputs[FINAL][mode][command] += this_count - base_count
output = '('
for mode in outputs[FINAL]:
for command, count in outputs[FINAL][mode].items():
output += f'(({mode} . {command}) . {count})\n'
output = output[:-1] + ')'
with open('keyfreq', 'w') as f:
f.write(output)

View File

@ -1,20 +0,0 @@
# Installing
Add the following hook to your emacs conf:
```elisp
(add-hook 'eshell-load-hook 'nyan-prompt-enable)
```
# Why
James J Porter showed me nyan-mode. I love nyan cat but hate scroll bars. I wanted to bring nyan-cat to my emacs so I found a middle way.
# How could you enhance the awesomeness.
* Make nyan-cat move!
* Make it a multline prompt with the rainbow taking up the folder space
* Unite with nyan-mode and see where else can we stick nyan cat in?
# License
Copying is an act of Love, please copy.
# Author
Javier Olaechea (<pirata@gmail.com>), 2013.

View File

@ -1,167 +0,0 @@
/* XPM */
static char * nyan_xpm[] = {
"25 15 149 2",
" c None",
". c #522244",
"+ c #3F1E31",
"@ c #403326",
"# c #2C2F32",
"$ c #002D5B",
"% c #003366",
"& c #BF1119",
"* c #7C0B10",
"= c #947256",
"- c #FFCC99",
"; c #FFBBBB",
"> c #FFB3CC",
", c #FFC7A2",
"' c #D8AD82",
") c #3A3C3E",
"! c #F52A02",
"~ c #490C00",
"{ c #F0C090",
"] c #FFBCB9",
"^ c #FF9DF7",
"/ c #FF99FF",
"( c #FF5FC5",
"_ c #FF6BD1",
": c #FF8DF3",
"< c #FFA6E6",
"[ c #745D46",
"} c #002850",
"| c #FC7800",
"1 c #4C2400",
"2 c #F0B6A2",
"3 c #FF66CC",
"4 c #FF92F8",
"5 c #D882D8",
"6 c #C576C5",
"7 c #FF8AF0",
"8 c #FF94FA",
"9 c #FFA8E0",
"0 c #02284E",
"a c #FBA500",
"b c #4C3100",
"c c #D17DD1",
"d c #614C61",
"e c #514C51",
"f c #AA66AA",
"g c #FF79DF",
"h c #FF90F6",
"i c #001428",
"j c #494949",
"k c #1F265A",
"l c #F0D300",
"m c #483F00",
"n c #FF68CE",
"o c #A261A2",
"p c #5D5D5D",
"q c #969696",
"r c #AE68AE",
"s c #999999",
"t c #00264C",
"u c #6F7509",
"v c #262626",
"w c #1D1F00",
"x c #868F00",
"y c #292B00",
"z c #FF86EC",
"A c #575757",
"B c #2B2525",
"C c #646464",
"D c #131313",
"E c #727272",
"F c #4F4F4F",
"G c #2A2A2A",
"H c #000000",
"I c #FF72D8",
"J c #F069C9",
"K c #6D4C6D",
"L c #7B7B7B",
"M c #122539",
"N c #20980E",
"O c #236119",
"P c #242424",
"Q c #FF80E6",
"R c #E073CD",
"S c #383838",
"T c #A0A0A0",
"U c #A6A6A6",
"V c #686868",
"W c #CFCFCF",
"X c #464646",
"Y c #20D15C",
"Z c #1AAF4D",
"` c #083417",
" . c #020F06",
".. c #FF8FF5",
"+. c #E086E0",
"@. c #A89999",
"#. c #A68F8F",
"$. c #20262C",
"%. c #666666",
"&. c #4C4646",
"*. c #B09999",
"=. c #0EA7CB",
"-. c #04323D",
";. c #F0BB99",
">. c #FF77DD",
",. c #FF85EB",
"'. c #D79999",
"). c #F69999",
"!. c #7F7F7F",
"~. c #5F5F5F",
"{. c #B59999",
"]. c #FF9999",
"^. c #3E2525",
"/. c #1E80F7",
"(. c #1354A2",
"_. c #020912",
":. c #FF95D5",
"<. c #FF97FD",
"[. c #F794F7",
"}. c #885788",
"|. c #7B6C6C",
"1. c #161616",
"2. c #232323",
"3. c #0C0C0C",
"4. c #070B0F",
"5. c #0F2643",
"6. c #5247F7",
"7. c #39329C",
"8. c #251E17",
"9. c #BF9973",
"0. c #4B3C2D",
"a. c #616161",
"b. c #737373",
"c. c #54575A",
"d. c #001D3A",
"e. c #5536D9",
"f. c #222126",
"g. c #241856",
"h. c #191919",
"i. c #001932",
"j. c #000A14",
"k. c #414141",
"l. c #333333",
"m. c #000E1D",
"n. c #002040",
"o. c #263498",
"p. c #08090C",
"q. c #23308F",
"r. c #002B56",
". . . . . . + @ @ @ @ @ @ @ @ @ @ @ @ # $ % % % % ",
"& & & & & * = - ; > > > > > > > > > , ' ) $ % % % ",
"! ! ! ! ! ~ { ] ^ / / / ( / _ : / / < - [ } % % % ",
"| | | | | 1 2 / 3 4 / / / / 5 6 ^ 7 8 9 [ } 0 $ % ",
"a a a a a b 2 / / / / / / c d e f g h 9 [ i j k $ ",
"l l l l l m 2 / / / / n h o p q p r ^ 9 [ p s j t ",
"u v v w x y 2 / / z / / / o p s s A B B C s s j t ",
"D E s F G H 2 / / I / / J K L s s s s s s s s E M ",
"N O v v j P 2 g Q / / / R S s T U V s s s W X s v ",
"Y Y Y Z ` .2 / / / ..h +.S @.#.$.V s L %.) &.*.B ",
"=.=.=.=.=.-.;.9 >.8 ,.z +.S '.).= !.q C s ~.{.].^.",
"/./././.(._.{ , :.<./ / [.}.|.*.C 1.2.3.$.4.s |.5.",
"6.6.6.7.v v 8.9.9.9.9.9.9.9.0.a.E E b.b.b.b.c.d.% ",
"e.e.e.f.s C g.h.F 4.i.i.i.i.j.k.l.m._.F v i n.% % ",
"o.o.o.p.v k q.k v _.% % % % r.$.h.d.0 v D } % % % "};

View File

@ -1,60 +0,0 @@
;;; nyan-prompt.el --- Nyan Cat on the eshell prompt.
;; Author: Javier "PuercoPop" Olaechea <pirata@gmail.com>
;; URL: http://github.com/PuercoPop/nyan-prompt
;; Version: 0.2.0
;; Keywords: nyan, cat, lulz, eshell, rainbow
;; Dependencies ((rx 0))
;;; Commentary:
;; Usage: (add-hook 'eshell-load-hook 'nyan-prompt-enable)
;; Inspired by from Jacek "TeMPOraL" Zlydach nyan-mode, to make Porter happy.
;; Copying is an act of love, please copy. ♡
;; The xpm taken awesome nyan-mode
;;; Code:
(require 'rx)
(defconst nyan-prompt-dir (file-name-directory
(or load-file-name buffer-file-name)))
(defconst nyan-prompt-nyan-cat-image
(create-image (concat nyan-prompt-dir "img/nyan.xpm")
'xpm nil :ascent 'center))
(defconst nyan-prompt-nyan-cat-emoticon "~=[,,_,,]:3"
"ASCII art representing the nyan-cat.")
(defconst nyan-prompt-nyan-cat-string
(propertize nyan-prompt-nyan-cat-emoticon
'display nyan-prompt-nyan-cat-image))
(defvar nyan-prompt-original-prompt nil
"The eshell prompt function before enabling nyan-prompt")
(defvar nyan-prompt-enabled nil
"t if nyan-prompt is enabled")
(defun eshell-nyan-prompt ()
(concat nyan-prompt-nyan-cat-string " " (funcall nyan-prompt-original-prompt)))
(defun nyan-prompt-disable ()
(when nyan-prompt-enabled
(setq nyan-prompt-enabled nil
eshell-prompt-function nyan-prompt-original-prompt)))
;;;###autoload
(defun nyan-prompt-enable ()
(when (not nyan-prompt-enabled)
(setq nyan-prompt-enabled t
nyan-prompt-original-prompt eshell-prompt-function
eshell-prompt-function 'eshell-nyan-prompt)))
(provide 'nyan-prompt)
;;; nyan-prompt.el ends here