61 lines
5.2 KiB
Org Mode
61 lines
5.2 KiB
Org Mode
#+TITLE: Dotfiles
|
|
#+AUTHOR: Oreodave
|
|
#+DESCRIPTION: README for Dotfiles
|
|
|
|
* Preclude
|
|
Hello and welcome to my Dotfiles repo! Though I'm not sure why you're here (this
|
|
is literally just for me).
|
|
* Tools
|
|
- Git: how...what are you doing without this?
|
|
- Emacs: My editor for everything (using it right now), incredibly powerful. Is
|
|
used with [[https://github.com/hlissner/doom-emacs][Doom Emacs]].
|
|
- Vim: my configuration makes it a nice editor, with plugins for C# and Python
|
|
already prebuilt and ready to use with external dependencies installed.
|
|
Developed to be used with Tmux
|
|
- Tmux: Used in conjunction with Vim to produce a powerful workspace. Has
|
|
bindings for quick switching between Vim and tmux panes, as well as full on vi bindings
|
|
- ZSH: Great shell, with amazing theming options, that I use for everything
|
|
- Pass: Password manager/generator which I strongly recommend
|
|
- Zeal/Dash: Documentation manager/reader. Absolute necessity when doing offline work
|
|
|
|
* Dependencies
|
|
|--------------------------+-----------------------------------------------------------------------------------+----------------+------------|
|
|
| Dependency | Why? | Version | Link |
|
|
|--------------------------+-----------------------------------------------------------------------------------+----------------+------------|
|
|
| Vim | Obvious. Plugins need async, thus version 8 or above. Has to be compiled w/python | 8 | [[https://www.vim.org/download.php][Vim]] |
|
|
| Emacs | Obvious. Doom Emacs on Straight needs 26.2 | 26.2+ | [[https://www.gnu.org/software/emacs/download.html][Emacs]] |
|
|
| Tmux | Obvious. Used for most terminal related things | 1.5+ | [[https://github.com/tmux/tmux][Tmux]] |
|
|
| Omnisharp Roslyn Server | Used by vim and Emacs. For C# tooling | Latest | [[https://github.com/omnisharp/omnisharp-roslyn][Omnisharp]] |
|
|
| Python | Used by some plugins in Vim | 3.6.8 and 2.7+ | [[https://www.python.org/downloads/][Python]] |
|
|
| Zeal | Used for downloading/reading documentation | 0.6.0+ | [[https://zealdocs.org][Zeal]] |
|
|
| .NET Core | Needed for Omnisharp to work. For C# | 2.2.3+ | [[https://dotnet.microsoft.com/download][.NET]] |
|
|
| Ag | Used by quickly searching code bases in Emacs and vim | 2.1+ | [[https://github.com/ggreer/the_silver_searcher][Ag]] |
|
|
| Fzf | Used by vim. For insanely fast searches in the interface | 0.18.0 | [[https://github.com/junegunn/fzf][Fzf]] |
|
|
| cargo/rust | Used for fd/ripgrep. Also a nice lang | 1.3.6+ | [[https://github.com/rust-lang/cargo/][Rust]] |
|
|
| fd | Used by doom for super quick file searches. | 7.3.0+ | [[https://github.com/sharkdp/fd][Fd]] |
|
|
| ripgrep | Used for insanely fast searches (sometimes faster than ag) | 11.0.1+ | [[https://github.com/BurntSushi/ripgrep][RipGrep]] |
|
|
| tmuxinator (optional) | Used to help with tmux scripting and window handling | 1.0+ | [[https://github.com/tmuxinator/tmuxinator][tmuxinator]] |
|
|
| LSP servers of some kind | Used for language support with C, C++, C#, Python, etc | N/A | N/A |
|
|
|--------------------------+-----------------------------------------------------------------------------------+----------------+------------|
|
|
|
|
* How to use
|
|
- Use ZSH as your default shell environment.
|
|
- Set tmux as your default shell in your console emulator. Use tmux for
|
|
everything console based, and try to move more stuff towards a console based
|
|
environment (such as music). Setup zsh to be your default tmux env
|
|
- Use vim for quick edits and light development. Stuff like scripts. Use when
|
|
resources are limited
|
|
- Use emacs for project work (large scale development) and writing. Always keep
|
|
an instance open. See how much of your life you could stick into emacs
|
|
- Use fd/ripgrep/ag as much as possible outside, in the terminal. They're
|
|
insanely useful. Integrating them with your editors is cool, but using them
|
|
raw has benefits as well
|
|
** Project by project
|
|
Setup a README.org in the root, with a notes.org and todo.org in .git (to not be
|
|
tracked by git unless you want it to of course). Write up some documentation in
|
|
README.org. Use notes for quick note taking about the project, todo.org for
|
|
todos recording. For scripting languages or learning a language, use .org files
|
|
and source code blocks to generate code, writing descriptions and other things
|
|
around them to explain them better (with an added benefit to compile to a PDF
|
|
for a nice document)
|