Eslint has become slow for some projects for reasons unknown. In an
attempt to speed up my linting process, I'm experimenting with eslint_d,
which keeps a process running. For the time being, I'd like to keep
linting and formatting separate from the Language Server Protocol (LSP)
to avoid the need to install every LSP. This way, I can have `shfmt`
without the bash LSP, for example.
For JavaScript, I may consider moving this into an LSP since I use it
for work, which would justify combining responsibilities. However, for
now, I'll be giving eslint_d a try.
In the shell prompt when you were in a directory it would commonly be
`~s/github.com/AdeAttwood/Dotfiles|branch ⇒`
This mapping will shorten this down to try and make the prompt a bit
less intrusive when in a subdirectory of a project.
`~gh/AdeAttwood/Dotfiles|branch ⇒`
When working on the start of a project its nice to know what you are
changing. Or when you are working on a refactor having points to get
back to is nice. When we are done we can go and clean up the history so
it makes sense, for review, or just give our points more descriptive
messages and you don't need to brake your flow when coding.
Custom plugin to check the .nvmrc file. When entering a directory, it
checks to see if you have the desired node version installed for the
current project. If it is, it will use it automatically, if not, then it
will ask you if you want to install it. After, it will install all the
JS developer tools for that version of NodeJS.
This is a different implementation than the default oh-my-zsh version.
The main difference is that it will not reset the node version when
leaving a directory. It will only preform an action if there is a
`.nvmrc` file in the current directory. It will not even use the
`nvm_find_nvmrc` command because any interaction with nvm make the
stranded `cd` command extremely sluggish.
This is to keep things consistent with how I have ivy.nvim working in
vim. All fuzzy finding is now done at the bottom of the terminal with
the preview on top. This prevents the eyes to jumping up and down and
keep the focus to the bottom of the terminal.
When running fshow we are piping it into less. This was interfering with delta
and loosing the formatting.
This removes the pipe and lets delta handle the paging in the default way with
all the highlighting.
This dose the same thing as the built in oh-my-zsh plugin but this one can
update the paths to emacs that it will be used.
This will allow you to use a custom compiled version of emacs for testing and /
or pinning the version you want with the features you need.
When cloning a repo I have all of the repertories structured on the file system
by "host" "group" then "name". This command will automatically clone the repo
into the correct directory based on the name and the move into the cloned repo
directory.
An example of a repo to be cloned is the dotfiles repo has the URL of
`git@gitlab.com:AdeAttwood/dotfiles.git` so on the file system it will be in the
source directory `gitlab.com/AdeAttwood/dotfiles`. This keep all of the repos
well structured and searchable.
When running git commit it was supposed to update the commit message you are
currently working on. When running commit with git hooks setup the commit may
fail due to a invalid message.
This now splits out the command so you can run `grc` (git recommit) to reedit
the commit message that failed rather then having to enter the message again in
a new commit message.
When using tools like commitlint to lint your commits there is always that time
you write an invalid commit. In this situation you are dumped back into the
terminal with an error message and your invalid commit.
This function will now load the invalid commit message back in to the editor so
you can fix the errors and commit successfully.
Now the `gs` command has be aliased to a git status alias. The original `gs`
would open up ghost script and I would open it everyday trying to run git
status.
ggpushmr has now been renamed to ggpushpr. The only place it is called a "Merge
Request" is in Gitlab. All the community has now decided to go with Github's
"Pull Request".
This also makes the branch param optional. If you don't pass a branch name it
will make the pull request against the repositories default branch.
When you run a shell command that is not found this will print out a
link to https://command-not-found.com to give more info on the
command and good docs on how to install the package that the command
came from. This can be built on to do other things like git suggestions
on common commands that are incorrect
This is the big re structure to all of the projects. I have decided to
go with the `GOPATH` format so all of the code is in one place and
organised inherently by code host / group / project
This lists all container on the system event stopped ones. This is different to
`dkps` that only displays running container. Some times it is helpfully to
display stopped container for getting the id and viewing logs when debugging
crashing containers
This is the first commit that brings the privet dotfiles to a public
reop previously this was all one puppet module. Now this has been split
out so I can put all of the private files in a private puppet module