Giter VIP home page Giter VIP logo

mazu-editor's Introduction

Mazu Editor

Mazu Editor is a minimalist text editor with syntax highlight, copy/paste, and search.

Usage

Command line: (filename is optional)

  • me <filename>

Supported keys:

  • Ctrl-S: Save
  • Ctrl-Q: Quit
  • Ctrl-F: Find string in file
    • ESC to cancel search, Enter to exit search, arrows to navigate
  • Ctrl-C: Copy line
  • Ctrl-X: Cut line
  • Ctrl-V: Paste line
  • PageUp, PageDown: Scroll up/down
  • Up/Down/Left/Right: Move cursor
  • Home/End: move cursor to the beginning/end of editing line

Mazu Editor does not depend on external library (not even curses). It uses fairly standard VT100 (and similar terminals) escape sequences.

Acknowledge

Mazu Editor was inspired by excellent tutorial Build Your Own Text Editor.

License

Mazu Editor is freely redistributable under the BSD 2 clause license. Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.

mazu-editor's People

Contributors

brlin-tw avatar chiacyu avatar dlintw avatar jserv avatar npes87184 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

mazu-editor's Issues

100% CPU usage

it's a pity because the editor is really nice.
i think the thread should'nt be used at all and screen redrawn only after user input.
this would also fix that the cursor is practically invisible due to the rapid screen refreshes.

Perform static analysis for potential weakness

I've tried to use cpplint(just copy the cpplint.py and it often workable).

The CPPLINT.cfg which fit for current coding style as

filter=-legal/copyright,-whitespace/comments,-readability/multiline_comment,-whitespace/braces,-readability/braces
linelength=132

The output of cpplint.py me.c

me.c:514:  Almost always, snprintf is better than strcpy  [runtime/printf] [4]
me.c:778:  Consider using localtime_r(...) instead of localtime(...) for improved thread safety.  [runtime/threadsafe_fn] [2]

In formal secure coding, strcpy is not suggest to use anymore.

Snap ownership transfer inquiry

Hello. First of all thanks for your kind review of the pull request(#9).

As I'm currently the publisher of the Mazu Editor snap I would like to ask if you're willing to take over the snap's ownership and have direct control of this distribution? Here's the snap ownership transfer process:

  1. Merge the snapcraft build recipe
  2. Acquire a developer account on the Snap Store (which is essentially an Ubuntu One SSO account) and optionally, a Snapcraft Forum account.
  3. Post a snap name transfer request under the store-requests topic category of the Snapcraft Forum, you'll have to mention either your snap account id listed in https://dashboard.snapcraft.io/dev/account/ or the associated e-mail address. Here's an example: Transfer brook - store - snapcraft.io
    I can also make the forum post for you, in this case simply mention the aforementioned account details here.
  4. After the name transfer is completed, you can start using the snapcraft build service to set up automatic snap build and publishing right from this repository and manage the release details at the snap's releases page

I've added your gmail.com e-mail address to the snap's collaborator list, by logging in with the Ubuntu One account associated with that address you can access the snap's administration pages on https://snapcraft.io/mazu-editor/listing.

It's totally fine if you're not willing to take over the snap maintenance, in this case I'll set up Launchpad to sync this repository and build the snap from it periodically.

Thanks for your time and attention.

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.