Giter Club home page Giter Club logo

magic-kit's Introduction

Magic Kit

Neovim starter kit for working with Conjure and Aniseed, contains everything you need to get started. The goal is for you to take this and modify it to fit your needs, it is not a distribution I’ll constantly tweak, it’s a starting point you should change as you see fit.

Requirements

  • git (for cloning the project and managing plugins)

  • Neovim 0.7+

Installation

# Clone the project into your Neovim configuration directory.
# Make sure you don't have anything here already! Back it up if so!
git clone [email protected]:Olical/magic-kit.git ~/.config/nvim

# Perform the initial sync which will fetch all of the plugins.
# Run then whenever you change the plugin configuration.
~/.config/nvim/script/sync.sh

Once done, have a look at ~/.config/nvim/init.lua to learn about the bootstrap process then ~/.config/nvim/fnl/magic/init.fnl for the real beginning of your Fennel based configuration. Good luck! Have fun!

Mappings

If you press a key and then wait, which-key will pop up with suggestions of what you can press next. Here’s a few key mappings defined in the configuration to get you started.

  • <space> is the leader key (<leader>)

  • , is the local leader key (<localleader>)

  • <leader>f…​ finds things with telescope

    • Try <leader>ff to find files and <leader>fb to find buffers, there’s a bunch of mappings so you’ll have to experiment and rely on which-key

  • <leader>ut opens undotree

Unlicenced

You can change this in your own repository, I don’t care! Do what you want with this repository, attribution is appreciated but not required.

Find the full unlicense in the UNLICENSE file, but here’s a snippet.

This is free and unencumbered software released into the public domain.

Anyone is free to copy, modify, publish, use, compile, sell, or distribute this software, either in source code form or as a compiled binary, for any purpose, commercial or non-commercial, and by any means.

magic-kit's People

Contributors

hi-im-buggy avatar olical avatar zetashift avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

magic-kit's Issues

Plugin recommendation: folke/which-key.nvim

Instead of liuchengxu/vim-which-key, i'd strongly recommend using https://github.com/folke/which-key.nvim
Reasons:

  • Written and configured in lua - Lua API means nicer API in fennel in addition to the performance gains
  • Support for mapping keys to functions directly - no more <cmd>lua something()<cr> on the right side of mappings
  • Support for showing the contents of registers and marks directly
  • Folke is super active, and all of his plugins are amazing - Active and epic maintainers are always a plus

Windows errors with invalid string

On a new Windows install, I installed neovim using scoop and put magic-kit's init.lua in the AppData folder so neovim can load it. It errors out with:

 C:\Users\gebruiker\AppData\Local\nvim-data\site\pack\packer\start\aniseed\plugin\aniseed.vim:
line   2:
Parse error in C:/Users/gebruiker/AppData/Local/nvim/fnl\magic\init.fnl:1
  Invalid string: "C:/Users/gebruiker/AppData/Local/nvim/fnl\magic\init.fnl"
(module magic.init
-----------------------------------------------------------------------^
Parse error in C:/Users/gebruiker/AppData/Local/nvim/fnl\magic\keybindings.fnl:1
  Invalid string: "C:/Users/gebruiker/AppData/Local/nvim/fnl\magic\keybindings.fnl"
(module magic.keybindings
------------------------------------------------------------------------------^
E5108: Error executing lua ...a\site\pack\packer\start\aniseed\lua\aniseed\compile.lua:131: Could not open file: C:/Users/gebruiker/AppData/Local/nvim/lua\magic\macros.fnl: No such file or directory

Looking at the string it has to do with path handling but I thought that was solved with: Olical/aniseed@ab8ef06

Provide a true eager config loading system

The existing config systems that packer exposes seem to always load things too late / async which means you can't set things before the plugins are loaded. We need a simple and obvious way to load plugin config as early as possible.

Screen flickering with which-key enabled?

flicker.mov

Hey, @Olical. I'm playing with this repo, it's very cool config to start from. However I've been experiencing constant screen flickering during cursor movements, disabling which-key setup (remove :mod) solves this completely. I wonder what is the real reason for this issue.

Is adding janet.vim necessary?

After cloning this repo (which is great by the way; thanks!) to make a brand new nvim config, I noticed that if I opened a .janet file I did get syntax highlighting but ConjureConnect wouldn't work.

After installing janet.vim everything worked correctly. Maybe it would be a good idea to add it as one of the pre-packaged plugins? Or add a note about it in the readme.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.