Sublime Forum

Sublimious - a full st3 configuration system focused on VIM

#1

Hey Guys!

Since my previous post has been deleted by accident, I’m creating this announcement again.

I’d like to introduce my vim-based, spacemacs-inspired SublimeText configuration system sublimious.

What is it?
sublimious is a configuration system for Sublime Text aiming to replace the way you interact with the editor. This starts at keybindings, includes package/plugin management and ends with editor configuration

Key system
Instead of hammering awkward *cmd+shift+p* commands, you are now using vim-centric keybindings for everything.

Each set of your editor has a special mnemonic assigned to it, starting with the space key. *<space> w* for example executes actions on the current window. *<space> w v* will split the window vertically and *<space> g s* will bring up git status.

A few categories are:

  • *<spc> p* for project commands
  • *<spc> b* for actions on the current buffer
  • *<spc> g* for git actions
  • *<spc> w* for window
  • *<spc> s* for selections
  • *<spc> e* for errors (linting)
  • *<spc> t* for toggles

sublimious also comes with a built-in keyboard helper that tells you exactly what you can perform on the current category:

Configuration System
sublimious will replace your entire configuration system. Each setting you do will happen through sublimious. Instead of editing 20 different sublime-settings files, you now only edit one - ~/.sublimious.
Here you can add packages to install, keybindings, layers (more later on that) and configurations for packages.

.sublimious is very dotfile friendly and doesn’t require you to check in a entire folder. Once sublimious is loaded, your .sublimious file will get read and a bunch of sublime-setting files generated.
This also makes sure that no other settings are messing with how you want the editor to perform. sublimious makes sure that only setting files generated by it will be present and that each .sublimious file results in an exact configuration state of your editor.

sublimious comes out of the box with a beautiful theme, pre-configured shortcuts, color-scheme and optimal settings ready for a hyper productive usage. Everything you see in the screenshot is included.

Layer-based packages
sublimious adapts spacemacs’ layer system taking full advantage of crowd-contributed settings.
Imagine the following scenario: You want to work on javascript. You open your command pallete and search for ‘javascript’ packages and install everything.
The problem: You have no idea which packages are good and how to configure them without spending a good amount of reading. What if the packages conflict each other? Or introduce duplicate functionality?

In sublimious, you open your .sublimious file and enable the javascript layer. The javascript layer is a contributed piece of software written by people that actually use javascript a lot. The layer defines which packages should be installed, how they should be set up and how you will interact with them.
Layers also add vim-based keybindings for everything. Remember the git command from before? That is a layer contributed keybinding and only available if the git layer is installed.
Don’t feel like you want git anymore? Remove the layer and sublimious purges it’s settings, packages and keybindings.

Check out which layers are currently available here - github.com/dvcrn/sublimious/tree/master/layers

Installation
Install sublimious through package control, that’s it.

But careful: sublimious is a entire configuration system and will take over your editor. Make sure to backup all your sublime-settings before trying it out as it will wipe everything clean.

Please let me know what you guys think :smile: I’d be super happy to see some contributions to the repository here github.com/dvcrn/sublimious. Let’s make sublimetext even better!

etc
Q: What if my packages aren’t available in a layer?
A: Check out github.com/dvcrn/sublimious/blo … sublimious. In there you have a ‘additional_packages’ list. Just add your package inside here and sublimious will install it. To configure it, check out package_settings inside user_config.

Q: Where can I contribute?
A: Fork github.com/dvcrn/sublimious/ and create a pull request on develop.

Q: Why no windows?
A: I don’t have a windows machine to test on. Feel free to add windows support yourself.

1 Like

#2

I just discovered your work and thanks for putting all the effort. Sad that the package is shelved now but the concept is great. This could be an answer to my several unsuccessful attempts to get into (spac)emacs.
I am not a programmer but I just forked the repo and am looking forward to put together some of my hacks into a literate programming layer that might appeal to academics.

0 Likes