1
0
mirror of https://github.com/SpaceVim/SpaceVim.git synced 2025-04-13 22:59:15 +08:00
Olliver Schinagl 9e80d9bbfa
feat:(XDG): add XDG support
* fonts: Ensure mkfontscale is installed

When installing fonts, we have a silent igored error about missing
`mkfontscale` (and `mkfontdir`). Add a requirements check for it, and
'need' it when actually attempting to install fonts.


* fetch_repo: Never change a directory

It is bad practice to change the currents shell working directory. E.g.
never use 'cd' in a script.

For example, if `git pull` crashes, it would leave the user in the git
directory 'somewhere' on his filesystem, potentially causing confusion,
as the following `cd -` command is never executed.

There are of course always exceptions, such as when tooling does not
(easily) support out of tree invocation.

To solve this, run the command in a subshell, which won't touch the
current working directory as the exit of the subshell kept the previous
working directory.

A more difficult alternative would be to pass `--git-dir` and
`--work-tree` along to git, but this would make it far harder to read.

* fetch_repo: Do not duplicate code all over

There is no reason to put `need 'git'` all over the place, when the only
time we truly need it, is if we pull the repo. Make the code a little
less cluttered and a bit easier to read.

* install: Support XDG_CONFIG_HOME

Add support for the XDG specification for XDG_CONFIG_HOME. NeoVIM
already follows this, regular vim needs a bit of help there.

Closes: #3517

* SpaceVim.d: Support XDG paths

Signed-off-by: Olliver Schinagl <oliver@schinagl.nl>

Signed-off-by: Olliver Schinagl <oliver@schinagl.nl>
2022-12-28 14:19:06 +08:00
2022-10-25 23:59:26 +08:00
2022-12-28 14:19:06 +08:00
2022-03-27 13:38:54 +08:00
2022-03-27 13:38:54 +08:00
2022-11-01 00:21:03 +08:00
2022-05-27 12:49:17 +08:00
2022-12-28 14:19:06 +08:00
2017-05-12 22:41:06 +08:00
2022-03-27 13:38:54 +08:00
2022-03-27 13:38:54 +08:00
2022-11-14 15:01:20 +08:00
2017-02-10 00:02:00 +08:00
2022-03-21 23:51:34 +08:00
2022-11-20 12:33:55 +08:00
2022-10-16 17:29:55 +08:00
2022-04-11 16:04:35 +08:00
2022-11-14 15:01:20 +08:00
2022-12-28 14:19:06 +08:00

SpaceVim

Quick Start Guide | Chat | Twitter

build Codecov coverage Release GPLv3 License Docker Pulls

SpaceVim is a vim configuration inspired by spacemacs, it is compatible with Vim and Neovim.

The latest release v2.0.0 was released at 2022-07-02, check out following-HEAD page for what happened since last release.

Features

  • Modularization: plugins and functions are organized in layers.
  • Compatible api: a series of compatible APIs for Vim/Neovim.
  • Great documentation: online documentation and :h SpaceVim.
  • Better experience: rewrite core plugins using lua
  • Beautiful UI: you'll love the awesome UI and its useful features.
  • Mnemonic key bindings: key binding guide will be displayed automatically
  • Fast boot time: Lazy-load 90% of plugins with dein.vim
  • Lower the risk of RSI: by heavily using the space bar instead of modifiers.
  • Consistent experience: consistent experience between terminal and gui

Screenshots

welcome page

Project Layout

├─ .ci/                           build automation
├─ .github/                       issue/PR templates
├─ .SpaceVim.d/                   project specific configuration
├─ after/                         overrule or add to the distributed defaults
├─ autoload/SpaceVim.vim          SpaceVim core file
├─ autoload/SpaceVim/api/         Public APIs
├─ autoload/SpaceVim/layers/      available layers
├─ autoload/SpaceVim/plugins/     builtin plugins
├─ autoload/SpaceVim/mapping/     mapping guide
├─ colors/                        default colorscheme
├─ docker/                        docker image generator
├─ bundle/                        bundle plugins
├─ lua/spacevim/plugin            builtin plugins(lua)
├─ doc/                           help(cn/en)
├─ docs/                          website(cn/en)
├─ wiki/                          wiki(cn/en)
├─ bin/                           executable
└─ test/                          tests

Contribute

This project wouldn't exist without all the people who contributed, We are thankful for any contributions from the community.

Credits

Description
A community-driven modular vim/neovim distribution - The ultimate vimrc
Readme GPL-3.0 96 MiB
Languages
Vim script 45.9%
Lua 41.1%
Python 3.9%
JavaScript 3.5%
Scheme 2.1%
Other 3%