feat: assemble config and tools
This commit is contained in:
64
.gitignore
vendored
64
.gitignore
vendored
@@ -1,58 +1,58 @@
|
|||||||
# Gitignore file
|
# Gitignore file
|
||||||
# Remove backup files
|
# Remove backup files
|
||||||
|
|
||||||
|
!/tree-sitter/bin/
|
||||||
|
# Emacs tmp files & Misc
|
||||||
|
# Emacs packages
|
||||||
*#
|
*#
|
||||||
*.
|
*.
|
||||||
*.elc
|
*.elc
|
||||||
*.eln
|
*.eln
|
||||||
*~
|
*~
|
||||||
.#*
|
|
||||||
.lsp-session*
|
|
||||||
.
|
.
|
||||||
|
.#*
|
||||||
# Emacs packages
|
.dap-breakpoints
|
||||||
var/
|
.lsp-session*
|
||||||
|
.org-id-locations
|
||||||
# Emacs tmp files & Misc
|
|
||||||
/eln-cache
|
|
||||||
/bbdb
|
|
||||||
/.cache/
|
|
||||||
/emms
|
|
||||||
/recentf
|
|
||||||
/.mc-lists.el
|
|
||||||
/.DS_Store
|
/.DS_Store
|
||||||
/network-security.data
|
/.cache/
|
||||||
/.emacs.desktop
|
/.emacs.desktop
|
||||||
/.emacs.desktop.lock
|
/.emacs.desktop.lock
|
||||||
|
/.mc-lists.el
|
||||||
|
/.python-environments/
|
||||||
/.watsonresults
|
/.watsonresults
|
||||||
/ac-comphist.dat
|
/ac-comphist.dat
|
||||||
/auto-save-list
|
/auto-save-list
|
||||||
|
/bbdb
|
||||||
|
/bookmarks
|
||||||
|
/eln-cache
|
||||||
|
/elpa
|
||||||
|
/emms
|
||||||
|
/eshell
|
||||||
/eshell/history
|
/eshell/history
|
||||||
/eshell/lastdir
|
/eshell/lastdir
|
||||||
/newsticker/feeds/
|
|
||||||
/snippets/
|
|
||||||
/tramp
|
|
||||||
/transient/
|
|
||||||
/url/
|
|
||||||
/.python-environments/
|
|
||||||
/ido.last
|
|
||||||
/places
|
|
||||||
/secrets.el
|
|
||||||
/games/
|
/games/
|
||||||
/bookmarks
|
/ido.last
|
||||||
|
/image-dired
|
||||||
|
/network-security.data
|
||||||
|
/newsticker/feeds/
|
||||||
|
/places
|
||||||
/projectile-bookmarks.eld
|
/projectile-bookmarks.eld
|
||||||
/projectile.cache
|
/projectile.cache
|
||||||
/projects
|
/projects
|
||||||
|
/recentf
|
||||||
|
/secrets.el
|
||||||
|
/snippets/
|
||||||
|
/tramp
|
||||||
/transient
|
/transient
|
||||||
/image-dired
|
/transient/
|
||||||
.dap-breakpoints
|
|
||||||
.org-id-locations
|
|
||||||
p/.extension/
|
|
||||||
/eshell
|
|
||||||
/elpa
|
|
||||||
/tree-sitter/
|
/tree-sitter/
|
||||||
/tree-sitter/bin/*
|
/tree-sitter/bin/*
|
||||||
!/tree-sitter/bin/
|
/url/
|
||||||
|
custom-vars.el
|
||||||
gnus.el
|
gnus.el
|
||||||
history
|
history
|
||||||
|
ielm-history.eld
|
||||||
|
p/.extension/
|
||||||
savehist
|
savehist
|
||||||
ielm-history.eld
|
var/
|
||||||
137
README.org
Normal file
137
README.org
Normal file
@@ -0,0 +1,137 @@
|
|||||||
|
* Emacs-Kick(starter) for Vim/Neovim Users
|
||||||
|
|
||||||
|
Welcome to **Emacs-Kick**, a feature-rich Emacs configuration designed
|
||||||
|
for users familiar with **Vim**, **Neovim**, and **Vi**. With this
|
||||||
|
setup, you don't need to leave behind your favorite terminal or tools
|
||||||
|
like **yazi**, **starship**, **lazygit**, and **lazydocker** just to give
|
||||||
|
Emacs a try.
|
||||||
|
|
||||||
|
Use Emacs the same way you'd use **Neovim**, seamlessly integrating it
|
||||||
|
into your workflow inside terminal multiplexers like **tmux** or
|
||||||
|
**Zellij**, while also enjoying modern features such as **treesitter**
|
||||||
|
and **LSP**—no hassle.
|
||||||
|
|
||||||
|
TODO: [Insert nice screenshot here]
|
||||||
|
|
||||||
|
**Emacs-Kick** is not a distribution, but a starting point for your
|
||||||
|
own configuration. It’s designed to be accessible to Vim/Neovim users
|
||||||
|
without needing to adopt all of Emacs' ecosystem. You can still enjoy
|
||||||
|
the power of Emacs without having to learn every Emacs-specific
|
||||||
|
workflow.
|
||||||
|
|
||||||
|
**Minimum Requirements**:
|
||||||
|
- Emacs version **29+**
|
||||||
|
- You can verify your version by running:
|
||||||
|
|
||||||
|
#+BEGIN_SRC bash
|
||||||
|
emacs --version
|
||||||
|
#+END_SRC
|
||||||
|
|
||||||
|
**Installation Instructions**:
|
||||||
|
|
||||||
|
1. **Clone the repository**:
|
||||||
|
|
||||||
|
**Note**: If you already have an existing Emacs configuration in
|
||||||
|
`~/.emacs.d`, please back it up before proceeding. You can do this
|
||||||
|
by renaming the directory:
|
||||||
|
|
||||||
|
#+BEGIN_SRC bash
|
||||||
|
mv ~/.emacs.d ~/.emacs.d.backup
|
||||||
|
#+END_SRC
|
||||||
|
|
||||||
|
After backing up, clone the repository:
|
||||||
|
|
||||||
|
#+BEGIN_SRC bash
|
||||||
|
git clone https://github.com/LionyxML/emacs-kick.git ~/.emacs.d
|
||||||
|
#+END_SRC
|
||||||
|
|
||||||
|
|
||||||
|
2. **Run the setup**:
|
||||||
|
|
||||||
|
After cloning, install the configuration by running:
|
||||||
|
|
||||||
|
#+BEGIN_SRC bash
|
||||||
|
emacs -nw --eval="(ek/first-install)"
|
||||||
|
#+END_SRC
|
||||||
|
|
||||||
|
Alternatively, you can run the provided script `ek-reinstall.sh`
|
||||||
|
from inside `~/.emacs.d/`, which will achieve the same result:
|
||||||
|
|
||||||
|
#+BEGIN_SRC bash
|
||||||
|
cd ~/.emacs.d/ && ./ek-reinstall.sh
|
||||||
|
#+END_SRC
|
||||||
|
|
||||||
|
Both methods will install all necessary packages and apply the
|
||||||
|
configuration.
|
||||||
|
|
||||||
|
|
||||||
|
3. **Set terminal mode by default**:
|
||||||
|
|
||||||
|
**Note on Emacs modes**: Emacs automatically adapts to either
|
||||||
|
graphical or terminal mode depending on the environment. But if you're
|
||||||
|
in a graphical session and prefer terminal mode, just use:
|
||||||
|
|
||||||
|
#+BEGIN_SRC bash
|
||||||
|
emacs -nw
|
||||||
|
#+END_SRC
|
||||||
|
|
||||||
|
To ensure Emacs always opens in terminal mode, add the following to
|
||||||
|
your `.bashrc` or `.zshrc`:
|
||||||
|
|
||||||
|
#+BEGIN_SRC bash
|
||||||
|
alias emacs='emacs -nw'
|
||||||
|
#+END_SRC
|
||||||
|
|
||||||
|
Then, reload your shell configuration with:
|
||||||
|
|
||||||
|
#+BEGIN_SRC bash
|
||||||
|
source ~/.bashrc # for bash
|
||||||
|
source ~/.zshrc # for zsh
|
||||||
|
#+END_SRC
|
||||||
|
|
||||||
|
4. **Start Emacs**:
|
||||||
|
|
||||||
|
Once set up, start Emacs with:
|
||||||
|
|
||||||
|
#+BEGIN_SRC bash
|
||||||
|
emacs
|
||||||
|
#+END_SRC
|
||||||
|
|
||||||
|
**Usage Tips**:
|
||||||
|
- **Leader Key**: The leader key is set to `SPC` (spacebar), similar
|
||||||
|
to Vim.
|
||||||
|
- **Help Commands**:
|
||||||
|
- `SPC h i` opens the Emacs info documentation (`M-x info`).
|
||||||
|
- `SPC h v` allows you to explore available variables.
|
||||||
|
- `SPC h f` lets you explore functions.
|
||||||
|
- `SPC h k` displays keybindings.
|
||||||
|
|
||||||
|
**Troubleshooting**:
|
||||||
|
- If you encounter any issues during installation, check the
|
||||||
|
`*Messages*` buffer for more information. You can switch between
|
||||||
|
buffers with `SPC SPC`, and navigate options using `C-p` and `C-n`.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
This configuration is tailored for Vim/Neovim users looking to explore
|
||||||
|
Emacs while keeping their existing workflow intact. Feel free to
|
||||||
|
explore and customize it further as you go.
|
||||||
|
|
||||||
|
Enjoy your Emacs experience!
|
||||||
|
|
||||||
|
|
||||||
|
* Contributing
|
||||||
|
|
||||||
|
This package is intentionally designed with a specific vision in mind,
|
||||||
|
reflecting my own opinions and preferences. While contributions are
|
||||||
|
welcome, please understand that this configuration is quite
|
||||||
|
opinionated.
|
||||||
|
|
||||||
|
If you have suggestions or requests, they will be considered
|
||||||
|
carefully, but I cannot make any promises regarding implementation or
|
||||||
|
acceptance. Your input is valuable, and I appreciate any help or
|
||||||
|
feedback to improve the project.
|
||||||
|
|
||||||
|
To contribute, feel free to open an issue or submit a pull
|
||||||
|
request. Let's make this configuration even better together!
|
||||||
|
|
||||||
@@ -5,7 +5,8 @@
|
|||||||
;; Your init file should contain only one such instance.
|
;; Your init file should contain only one such instance.
|
||||||
;; If there is more than one, they won't work right.
|
;; If there is more than one, they won't work right.
|
||||||
'(custom-safe-themes
|
'(custom-safe-themes
|
||||||
'("691d671429fa6c6d73098fc6ff05d4a14a323ea0a18787daeb93fde0e48ab18b"
|
'("dfab4d4e2904967f208647d14b15015a613c4ab904db491116a7c0968e44a115"
|
||||||
|
"691d671429fa6c6d73098fc6ff05d4a14a323ea0a18787daeb93fde0e48ab18b"
|
||||||
"48042425e84cd92184837e01d0b4fe9f912d875c43021c3bcb7eeb51f1be5710"
|
"48042425e84cd92184837e01d0b4fe9f912d875c43021c3bcb7eeb51f1be5710"
|
||||||
default))
|
default))
|
||||||
'(package-selected-packages nil))
|
'(package-selected-packages nil))
|
||||||
@@ -14,4 +15,6 @@
|
|||||||
;; If you edit it by hand, you could mess it up, so be careful.
|
;; If you edit it by hand, you could mess it up, so be careful.
|
||||||
;; Your init file should contain only one such instance.
|
;; Your init file should contain only one such instance.
|
||||||
;; If there is more than one, they won't work right.
|
;; If there is more than one, they won't work right.
|
||||||
)
|
'(diff-hl-change ((t (:background nil :foreground "#89b4fa"))))
|
||||||
|
'(diff-hl-delete ((t (:background nil :foreground "#f38ba8"))))
|
||||||
|
'(diff-hl-insert ((t (:background nil :foreground "#a6e3a1")))))
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
|
|
||||||
clear
|
clear
|
||||||
echo ">>> (re)Istalling Emacs Kicks ..."
|
echo ">>> (re)Istalling Emacs Kick ..."
|
||||||
sleep 2
|
sleep 2
|
||||||
|
|
||||||
echo ">>> Deleting packages, grammars and native compilation cache ..."
|
echo ">>> Deleting packages, grammars and native compilation cache ..."
|
||||||
|
|||||||
Reference in New Issue
Block a user