{"id":20757901,"url":"https://github.com/amdmi3/ee","last_synced_at":"2026-04-20T08:02:26.186Z","repository":{"id":30405794,"uuid":"33958582","full_name":"AMDmi3/ee","owner":"AMDmi3","description":"Attempt to add unicode support to Hugh Mahon's ee (easy editor)","archived":false,"fork":false,"pushed_at":"2015-04-15T03:46:46.000Z","size":228,"stargazers_count":2,"open_issues_count":0,"forks_count":1,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-03-11T16:24:13.634Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/AMDmi3.png","metadata":{"files":{"readme":"README.ee","changelog":"Changes","contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2015-04-14T21:42:20.000Z","updated_at":"2023-11-08T13:58:43.000Z","dependencies_parsed_at":"2022-09-08T09:02:47.543Z","dependency_job_id":null,"html_url":"https://github.com/AMDmi3/ee","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/AMDmi3/ee","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AMDmi3%2Fee","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AMDmi3%2Fee/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AMDmi3%2Fee/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AMDmi3%2Fee/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/AMDmi3","download_url":"https://codeload.github.com/AMDmi3/ee/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AMDmi3%2Fee/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32038456,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-20T00:18:06.643Z","status":"online","status_checked_at":"2026-04-20T02:00:06.527Z","response_time":94,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-17T09:46:15.564Z","updated_at":"2026-04-20T08:02:26.152Z","avatar_url":"https://github.com/AMDmi3.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"Copyright (c) 2009, Hugh Mahon\nAll rights reserved.\n\nRedistribution and use in source and binary forms, with or without\nmodification, are permitted provided that the following conditions\nare met:\n\n    * Redistributions of source code must retain the above copyright\n      notice, this list of conditions and the following disclaimer.\n    * Redistributions in binary form must reproduce the above\n      copyright notice, this list of conditions and the following\n      disclaimer in the documentation and/or other materials provided\n      with the distribution.\n\nTHIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS\n\"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT\nLIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS\nFOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE\nCOPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,\nINCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,\nBUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;\nLOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER\nCAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT\nLIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN\nANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE\nPOSSIBILITY OF SUCH DAMAGE.\n\n\nThe editor 'ee' (easy editor) is intended to be a simple, easy to use \nterminal-based screen oriented editor that requires no instruction to \nuse.  Its primary use would be for people who are new to computers, or who \nuse computers only for things like e-mail.\n\nee's simplified interface is highlighted by the use of pop-up menus which \nmake it possible for users to carry out tasks without the need to \nremember commands.  An information window at the top of the screen shows \nthe user the operations available with control-keys.\n\nee allows users to use full eight-bit characters.  If the host system has \nthe capabilities, ee can use message catalogs, which would allow users to \ntranslate the message catalog into other languages which use eight-bit \ncharacters.  See the file ee.i18n.guide for more details.\n\nee relies on the virtual memory abilities of the platform it is running on \nand does not have its own memory management capabilities.\n\nI am releasing ee because I hate to see new users and non-computer types \nget frustrated by vi, and would like to see more intuitive interfaces for \nbasic tools (both character-based and graphical) become more pervasive.\nTerminal capabilities and communication speeds have evolved considerably \nsince the time in which vi's interface was created, allowing much more \nintuitive interfaces to be used.  Since character-based I/O won't be \ncompletely replaced by graphical user interfaces for at least a few more \nyears, I'd like to do what I can to make using computers with less \nglamorous interfaces as easy to use as possible.  If terminal interfaces \nare still used in ten years, I hope neophytes won't still be stuck with \nonly vi.\n\nFor a text editor to be easy to use requires a certain set of abilities.  In \norder for ee to work, a terminal must have the ability to position the cursor \non the screen, and should have arrow keys that send unique sequences \n(multiple characters, the first character is an \"escape\", octal code \n'\\033').  All of this information needs to be in a database called \"terminfo\" \n(System V implementations) or \"termcap\" (usually used for BSD systems).  In \ncase the arrow keys do not transmit unique sequences, motion operations are \nmapped to control keys as well, but this at least partially defeats the \npurpose.  The curses package is used to handle the I/O which deals with the \nterminal's capabilities.  \n\nWhile ee is based on curses, I have included here the source code to \nnew_curse, a subset of curses developed for use with ee.  'curses' often  \nwill have a defect that reduces the usefulness of the editor relying upon \nit.  \n\nThe file new_curse.c contains a subset of 'curses', a package for \napplications to use to handle screen output.  Unfortunately, curses \nvaries from system to system, so I developed new_curse to provide \nconsistent behavior across systems.  It works on both SystemV and BSD \nsystems, and while it can sometimes be slower than other curses packages, \nit will get the information on the screen painted correctly more often \nthan vendor supplied curses.  Unless problems occur during the building \nof ee, it is recommended that you use new_curse rather than the curses \nsupplied with your system.\n\nIf you experience problems with data being displayed improperly, check \nyour terminal configuration, especially if you're using a terminal \nemulator, and make sure that you are using the right terminfo entry \nbefore rummaging through code.  Terminfo entries often contain \ninaccuracies, or incomplete information, or may not totally match the \nterminal or emulator the terminal information is being used with.  \nComplaints that ee isn't working quite right often end up being something \nelse (like the terminal emulator being used).  \n\nBoth ee and new_curse were developed using K\u0026R C (also known as \"classic \nC\"), but it can also be compiled with ANSI C.  You should be able to \nbuild ee by simply typing \"make\".  A make file which takes into account \nthe characteristics of your system will be created, and then ee will be \nbuilt.  If there are problems encountered, you will be notified about \nthem. \n\nee is the result of several conflicting design goals.  While I know that it \nsolves the problems of some users, I also have no doubt that some will decry \nits lack of more features.  I will settle for knowing that ee does fulfill \nthe needs of a minority (but still large number) of users.  The goals of ee \nare: \n\n        1. To be so easy to use as to require no instruction.\n        2. To be easy to compile and, if necessary, port to new platforms \n           by people with relatively little knowledge of C and UNIX.\n        3. To have a minimum number of files to be dealt with, for compile \n           and installation.\n        4. To have enough functionality to be useful to a large number of \n           people.\n\nHugh Mahon              |___|     \nhugh4242@yahoo.com      |   |     \n                            |\\  /|\n                            | \\/ |\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Famdmi3%2Fee","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Famdmi3%2Fee","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Famdmi3%2Fee/lists"}