Code Monkey home page Code Monkey logo

sublime-text-fennel's Introduction

Fennel Support for Sublime Text 3 & 4 Syntax Tests

"Fennel is a programming language that brings together the speed, simplicity, and reach of Lua with the flexibility of a lisp syntax and macro system." fennel-lang.org

Heavily tested against Fennel 1.3.0 and Lua 5.4.4 specifications.

Screenshot of a Fennel code highlighted.

Installing

  • Install Package Control
  • ctrl + shift + p
    • Package Control: Install Package
    • Fennel

Completions

One hundred ninety-nine completions are available for Fennel 1.3.0 and Lua 5.4.4.

Fennel Completions

Screenshot of a Fennel code with a completions list.

Lua Completions

Screenshot of a Fennel code with a completions list.

Snippets

14 snippets are available:

  • fn lambda λ
  • and or not
  • -> ->> -?> -?>>
  • while do if do while

Screenshot of a Fennel code highlighted.

References

Development

Uninstall your current Fennel package.

Clone the repository inside Packages/Fennel (symbolic link doesn't work):

git clone \
  https://github.com/gbaptista/sublime-text-fennel.git \
  /home/me/.config/sublime-text/Packages/Fennel

Check the files under tests/ and:

ctrl + shift + p:

  • Build With: Syntax Tests
  • Build With: Syntax Tests - Performance
  • Build With: Syntax Tests - All Syntaxes
  • Build With: Syntax Tests - Regex Compatibility

To debug the current scope of a character: ctrl + alt + shift + p

The project Sublime Text Colors may be helpful.

Screenshots

Material Theme Darker Screenshots

Screenshot of a Fennel code highlighted.

Screenshot of a Fennel code highlighted.

Screenshot of a Fennel code highlighted.

Monokai Screenshots

Screenshot of a Fennel code highlighted.

Screenshot of a Fennel code highlighted.

Screenshot of a Fennel code highlighted.

Solarized (Light) Screenshots

Screenshot of a Fennel code highlighted.

Screenshot of a Fennel code highlighted.

Screenshot of a Fennel code highlighted.

Completions Screenshots

Screenshot of a Fennel code highlighted.

Screenshot of a Fennel code highlighted.

Screenshot of a Fennel code highlighted.

Snippets Screenshots

Screenshot of a Fennel code highlighted.

Screenshot of a Fennel code highlighted.

Acknowledgments

The Clojure Package inspired this package.

sublime-text-fennel's People

Contributors

gbaptista avatar imolein avatar turbo avatar

Stargazers

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

Watchers

 avatar  avatar  avatar  avatar

Forkers

turbo imolein

sublime-text-fennel's Issues

Issues with Comments-Aware Enter

First off, thanks for making first-class support for Fennel possible in Sublime!

I have a very minor issue. I use another package, Comments-Aware Enter to improve the editing experience with comments (auto-indentation, split & join comments, etc.). It works with all languages (even weird ones like MoonScript, but also standard Lua), but it seems to fail with this Fennel package. All its smart features don't function.

Now, I don't know if the root cause for this is with the Fennel package or the comments one, but I'm also not knowledgeable enough about Sublime packages to debug this.

Inline Table Destructuring Breaks Highlighting in local Form

The following snippets are equivalent code, but sample C is only partially highlighted

; sample A, correct
(local b (require :b))
(local { : a } b)

; sample B, correct
(let [{ : a } (require :b)])

; sample C, incorrect
(local { : a } (require :b))

produces:

image

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.