Joy
所属分类:collect
开发工具:Julia
文件大小:0KB
下载次数:0
上传日期:2018-10-01 23:45:56
上 传 者:
sh-1993
说明: Modal Julia文本编辑器
(Modal Julia text editor)
文件列表:
.codecov.yml (15, 2018-05-09)
.travis.yml (1086, 2018-05-09)
LICENSE.md (1155, 2018-05-09)
REQUIRE (28, 2018-05-09)
TODO (1183, 2018-05-09)
appveyor.yml (2115, 2018-05-09)
assets/ (0, 2018-05-09)
assets/bootstrap.gif (25970, 2018-05-09)
assets/command.gif (48027, 2018-05-09)
assets/customwords.gif (20729, 2018-05-09)
assets/mappings.gif (26820, 2018-05-09)
assets/movement.gif (98759, 2018-05-09)
src/ (0, 2018-05-09)
src/Joy.jl (427, 2018-05-09)
src/base.jl (2367, 2018-05-09)
src/config.jl (1549, 2018-05-09)
src/editor.jl (1853, 2018-05-09)
src/modes/ (0, 2018-05-09)
src/modes/calls.jl (3918, 2018-05-09)
src/modes/command.jl (1184, 2018-05-09)
src/modes/extra_modes.jl (4538, 2018-05-09)
src/modes/insert.jl (1076, 2018-05-09)
src/modes/movements.jl (2455, 2018-05-09)
src/modes/normal.jl (2957, 2018-05-09)
src/modes/search.jl (1112, 2018-05-09)
src/spelling.jl (457, 2018-05-09)
src/string_utils.jl (1052, 2018-05-09)
src/syntax.jl (1303, 2018-05-09)
src/utils.jl (9026, 2018-05-09)
src/words.jl (4757, 2018-05-09)
test/ (0, 2018-05-09)
test/file (1309, 2018-05-09)
test/runtests.jl (3898, 2018-05-09)
# Joy
[![Build Status](https://travis-ci.org/lancebeet/Joy.jl.svg?branch=master)](https://travis-ci.org/lancebeet/Joy.jl)
[![Coverage Status](https://coveralls.io/repos/lancebeet/Joy.jl/badge.svg?branch=master&service=github)](https://coveralls.io/github/lancebeet/Joy.jl?branch=master)
[![codecov.io](http://codecov.io/github/lancebeet/Joy.jl/coverage.svg?branch=master)](http://codecov.io/github/lancebeet/Joy.jl?branch=master)
Joy is a modal line-based text editor written in Julia. This is a toy project; it is not a full-fledged text editor and parts of the foundation still need to be thought out. The goal of the project is a modal editor that is both implemented and extensible in Julia.
## How to install
```julia
julia> Pkg.clone("https://github.com/lancebeet/Joy.jl")
```
## How to use
To open existing text file:
```julia
julia> using Joy
julia> buffer = Joy.open("textfile")
```
To exit:
```julia
:quit()
```
To save:
```julia
:save("filename")
```
Reattaching to an existing buffer from the REPL:
```julia
julia> Joy.attach(buffer)
```
To edit files directly from the command line, add the following to your shell config file (.bashrc, .profile etc):
```bash
function joy() { julia -e "using Joy; Joy.open(\"$1\")"; }
```
Implemented features so far: Basic motions (stepping, word movements, find char, EOL, end/beginning of file), basic search, insert mode (with before/after/EOL init), replace single char, deleting/yanking/pasting with custom registers and arbitrary motions, command mode (very primitive), macro record/recall to custom registers, constructors for custom regex word movement functions, single-level undo, primitive syntax highlighting.
vi-like movement
Command mode for evaluation of Julia expressions
Applying arbitrary Julia maps to the entire buffer
Editing/sourcing of its own configuration
On-the-fly custom word types
近期下载者:
相关文件:
收藏者: