Coder Social home page Coder Social logo

edith's Introduction

Edith Text Editor

For whatever reason, I've always wanted to write a text editor. Maybe it's because it's a pretty complicated class of program, involving the creation of a user interface, the management of files and large sections of memory and lots of other system resources; Maybe it's because I feel like I could bring something new to the table in the accessibility department; Maybe I think it'll be fun; Perhapse I'm even insane!

Whatever the reason, this is Edith, my interpretation of the perfect text editor. It's written in C17 using the ncurses library for terminal display, and the CMake build system. I ultimately intend for this project to be cross-platform to any system supporting ncurses and an ISO C / POSIX compliant libc, but some of those GNU extensions ... they're just so useful! :p

Inspiration

  • I didn't even consider doing this until I read The Craft of Text Editing by Craig A. Finseth.
  • vim / neovim, which I use on a daily basis to write everything from code to class notes.
  • Emacs and especially Emacspeak (yes, I like both text editors, I just don't like Lisp, sorry!).
  • The GLibC Reference Manual, if you can believe it! I've found that reading the standard library documentation for any language always provokes ideas of programs you can build with it, and ways in which you can implement them.

Why the Name

Simple. "Edith" has the word "Edit" in it,, and performing an admittedly cursory search through the Debian repos yielded no results for programs called "edith" (I suppose the rest of the world isn't as crazy as me lol).

Contributing

Any contributions are welcome and much appreciated, but do bare in mind that this is my passion project, and I have a pretty rigid idea of exactly how Edith should be designed and operate.

This project is also the latest in a series of projects I'm using to teach myself C and the ins and outs of libc, so if you spot something I'm doing wrong, I would much appreciate it if you submitted an issue or a PR to tell me.

License

Copyright © 2021 Michael Connor Buchan

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see https://www.gnu.org/licenses/.

Author: Michael Connor Buchan

edith's People

Contributors

mcb2003 avatar

Stargazers

Putin avatar

Watchers

 avatar

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.