Coder Social home page Coder Social logo

edi's Introduction

Edi

Edi is a box for all your notes, thoughts, pictures, or any digital file. Although I use it for my daily use, I don't think it is ready for public consumption.

You can see a demo video of it. It was initially called dabba.

Why

There is a particular freedom in using plain text files to store notes and tasks. It frees you from the whims and fancies of the companies that make software for such. I have been using plain text files for a lot of things. Creating a list of groceries, keep track of the food I ate, or time I spent on some task. It is close to a paper notebook that doesn't have any format. You create the format. This was supplemented with Shell script like awk, sed, and grep. Looking at the tasks across the files were easy. But there was no cross platform way for me to use shell scripts. And thus Edi was born.

Edi does a few things. It is in the very early stage of development so don't expect every thing to work. There is no inherent system to organise, rather you are expected to use some system that works for you to organise them.

Install

You need a Go compiler. With the compiler ready you just need to run

go install github.com/satran/edi/cmd/edi-http

If you have the executable in the PATH directory you can start the server by

edi-http -addr "localhost:8080" -dir ~/docs 

Syntax

Edi has a custom syntax, some inspirations from markdown and creole.

  • Heading: A # can signify heading much like Markdown heading but it doesn't create a h1 tag. Rather it makes the line bold.

  • Code Block: The main feature of edi is that you can evaluate a block of text as a shell script. There are two ways to do it. One is to use a inline block. For example date will evaluate date and replace text with the current date. A multiline code block can be used when you want to write a long script. This is passed as stdin to the shell environment to be evaluated. A multiline code is passed on as a code fence:

   ```
   echo "hello world"
   echo "new line"
   ```

This would add "hello world" and "new line" to the text.

  • Links: Links can be created using [[url|optional description]]

  • Images: Images follow links with a !: [[!image url|optional alt text]]

edi's People

Contributors

satran avatar vniche 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  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

edi's Issues

Test on windows

I'm sure there are plenty of other windows users who would like to give this a try

undefined: Asset in edi.go

go get github.com/satran/edi
# github.com/satran/edi
workspace/gocode/src/github.com/satran/edi/edi.go:38: undefined: Asset

and

go test
# github.com/satran/edi
./edi.go:38: undefined: Asset

Possibly incorrect error handling in edi.go/writeFile()

Hi,
I don't know what Assert() does, but assuming that it does not (always) return data, if an error occured, it would currently still write empty/incorrect data, since the function continues after the error has been logged.
HTH and regards, Frank

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.