Commit graph

12 commits

Author SHA1 Message Date
Ade Attwood
ebd73bcc38 feat(emacs): add file operation functions
This adds file operation command to emacs so you can quickly rename and copy
files.

The problem with the normal copy file if that it misses removing the old buffer
if its a rename and dose not move to the new buffer. This leads to (more than I
like to admit) editing the new file thinking its the old file.

By updating the buffers and automatically switching this prevents this.
2021-11-21 10:38:43 +00:00
Ade Attwood
1270157bdf feat(emacs): completely refactor company and lsp mode
Update the lsp to improve the performance and editing experience. The completion
has been disabled so we can configure it manually to include snippets and file
paths into the company code completion.

Company has been configured to override the tab behaviour to always expand
snippets whenever there is a available snippet. The default behaviour is to
cycle through the completion.
2021-07-10 20:42:41 +01:00
Ade Attwood
ea87574031 chore(emacs): set column width to 80 chars 2021-07-10 20:36:32 +01:00
Ade Attwood
bb66289983 feat(shell): integrate the emacs better into the terminal
There a quite a few fixes and feature here to make the terminal experience of
emacs better. Most of this is only enabled when running in the terminal.

1) Better tmux integration with navigating between splits and also highlighting
the active window between emacs and tmux so you can better see the active window
you are working in.

2) Mouse and clipboard support through the x window manager so "yank" copies
text into the system clipboard

3) Changing the cursor style between insert and normal mode inside the terminal
this is not the case in default evil mode.
2021-07-08 09:03:27 +01:00
Ade Attwood
a5c86ed6f2 fix(emacs): disable web-mode-enable-auto-quoting
This was really annoying when using JSX. When adding a `=` it would always add
in the quotes to make `=""`, this is not good when writing JSX when a lot of the
time you want `={}`. Now that this is disabled I can make the decision of what I
want to add
2021-06-26 21:06:02 +01:00
Ade Attwood
471fb9168d feat(emacs): binding to CTRL-; to add semi colon at the end of the line
Now in insert mode when editing you can add a semi colon at the end of the
current line my pressing CTRL-;. This will then put the cursor after that ready
to continue the line or press enter to start a new line. This is inspired by
some old vim key bindings I had and a vscode plugin called coloniser.
2021-06-26 21:00:10 +01:00
Ade Attwood
6976cfe1fa feat(emacs): add c-sharp support
This is only initial support. Most of the features are built-in to lsp-mode. I
have added some snippets to make my life a bit easier.

There a more tweaks coming but they are general in improving the editing
experience not just targeted at c-sharp.
2021-06-26 20:34:21 +01:00
a3b0be161d feat(emacs): improve vterm config
This forces vterm buffers to be in the evil emacs state to basically
disable evil-mode to make vterm function more like a native terminal
emulator. I have also bound `C-o` to move to the previous buffer to
simulate the jump backward functionality of evil-mode. This seams to
be working better at the moment due to this always exiting the
buffer. Sometimes jump back can move in the same buffer and this is
not want we want when we are in a vterm buffer.
2021-05-16 20:13:11 +01:00
e48e616c6e fix(emacs): create typescript-tsx-mode
When editing typescript jsx files I was previously using rjsx-mode to
get the jsx highlighting and emmet `className` support. This now
splits out the tsx to ts like other packages like spacemacs and doom
do. This gives me better jsx support with typescript and not impacting
the ts mode that dose not play nicely with jsx.

This seems to be working better with the snippets I created for
spacemacs that works with rjsx-mode and override any functions that
need it for typescript-tsx-mode
2021-05-01 14:26:21 +01:00
2562204827 fix(emacs): move custom-set-variables out of the init.el
This is to stop the generated code from cluttering the init.el and it
can now be ignored by git
2021-04-16 20:49:53 +01:00
4296160d7d feat(emacs) add org reveal package 2021-04-16 19:58:03 +01:00
7cf8c3fa53 feat(emacs): add code files to move away from spacemacs
This is the start to move away from spacemacs and to a custom emacs
config
2021-03-16 20:12:46 +00:00