Giter VIP home page Giter VIP logo

programming-editor's Introduction

Eadgyth Programming Editor

A text and code editor with the possibility to easily set up coding projects, first of all for Java. Setting a project means that it can be run (or compiled) by built-in functions that are invoked by menu selections, button clicks or with the keyboard. Additional project categories are C#, Python, R, Perl and HTML as well as a category 'Custom commands' to define own commands to run own batch files/scripts, for example.

The editor may be useful for writing applications for own use, learning or quickly trying out code in case that a more advanced code editor or an IDE is not necessary (examples for project settings can be found here). The program can be tried out by downloading the executable jar file in a release (requires a JDK, version 8 or higher). The additional idea is that other project categories can be implemented as needed (To do: add a guide for programming a project type).

Features for editing text are ...

  • Find/replace.
  • Clearing end-of-line (trailing) white spaces.
  • Choosing between spaces and tabs for indentation.
  • Auto-indentation which distinguishes "curly-bracket-indentation".
  • Block-wise increase or decrease of the indentation.
  • A 'notes' editor next to the main editor for notes, viewing text or facilitated exchange of text.
  • A basic syntax highlighting (for Java, Perl, Python, R, HTML, XML, CSS, Javascript, PHP, C#).

Features for running source code are ...

  • Compile and run Java code that may be organized in packages and create an executable jar file. Use external libraries and, if run with JDK 9+, library modules. Also, optionally run a module in Java 9+.
  • Compile and run C# code (v. 1.2.0) and use compiler options for the output target. The built-in compile command invokes csc compiler (Windows) or Mono mcs compiler (Linux/Mac). The PATH to these executables must be set (see Requirements).
  • Run scripts in Python, R or Perl.
  • Specify additional options or arguments for the built-in commands.
  • View HTML code in the default browser.
  • A console for showing output/error during running (or compiling) a program and entering input in interactive command-line programs.
  • Set up several projects which can be switched between and retrieve project settings after newly starting the editor.
  • View a project in a file view from where also files can be opened and project subdirectories created.

REQUIREMENTS

Compiling the program requires Java 8 or higher. It can be built by creating a Java project with existing sources in Netbeans or Eclipse using the src folder from the repository as sources directory. It can also be built by the program itself using the executable jar file in a release ๐Ÿ™‚.

To compile Java code by the built-in compile function it must be made sure that it is run using the JRE contained in a JDK (as of Java 11 only a JDK but no separate JRE is available anyway).

Important: To run code (or possibly to compile code as for C#) by the built-in functions the path variables that point to the executables of a programming language must be set in the OS as permanent environment variables.

LIMITATIONS

Apart from the fact that the syntax highlighting is rather simple the example of the Perl language shows that it cannot cover all kinds of syntax elememts (in this case: regex give an example).

The console of the editor may appear "frozen" in cases that the output of a process is buffered because its standard output is redirected to the 'console' of this program. Among the given project categories this applies to Perl (noticable in an interactive console program) and it may apply to custom commands. This block-buffering may be disabled (or auto-flushing enabled) by a command-line switch or a command in a script itself if available for a language (for comparison and for the time using this editor!).

THE NAME

The name of the program is 'Eadgyth' although it's the owner (me) of the repo and not the repo name. I haven't thought about it in the beginning but it shall not be changed. Eadgyth (as an Old English version of the name Edith) does not refer to Queen Eadgyth of Wessex but to MS-DOS Editor which was invoked by typing 'edit'.

CREDITS & ACKNOWLEDGEMENTS

  • William Gilreath for his advice, comments, enthusiasm
  • The program uses icons from Tango Desktop Project.
  • The dark-blue background uses the Dracula Color Palette and other the dark backgrounds have learned from it.

LICENSE

MIT, see LICENSE

SCREENSHOTS

An example for a command-line program in Java (Eadgyth run on Windows 10):



The 'Dracula' derived dark-blue background:

programming-editor's People

Contributors

eadgyth avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  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.