1664778240
This package aims to be a fast, minimal, and correct TIFF reader and writer written in Julia.
Colors.jl
and the Julia Array ecosystemTiffImages.jl
is available through Julia's general repository. You can install it by running the following commands in the Julia REPL:
using Pkg
Pkg.install("TiffImages")
Please see the documentation above for usage details and examples
Author: Tlnagy
Source Code: https://github.com/tlnagy/TiffImages.jl
License: MIT license
1664778240
This package aims to be a fast, minimal, and correct TIFF reader and writer written in Julia.
Colors.jl
and the Julia Array ecosystemTiffImages.jl
is available through Julia's general repository. You can install it by running the following commands in the Julia REPL:
using Pkg
Pkg.install("TiffImages")
Please see the documentation above for usage details and examples
Author: Tlnagy
Source Code: https://github.com/tlnagy/TiffImages.jl
License: MIT license
1665622200
This is a work-in-progress Julia package that reimplements MPFI. in pure Julia. The goal is to provide an interface as close as possible of MPFI.jl, in order to allow users to quickly migrate code between the two packages if the need arises.
Example
# For convenience, let's just use 53 bits (as a Float64)
julia> set_bigfloat_precision(53)
53
# The following creates an interval centered on 1.1.
# Since 1.1 isn't exactly representable as a floating-point number,
# the shortest interval that includes it is returned.
julia> x = Interval("1.1")
[1.0999999999999999e+00, 1.1000000000000001e+00] with 53 bits of precision
# It is also possible to create an interval through its endpoints.
julia> Interval("1", "2")
[1e+00, 2e+00] with 53 bits of precision
julia> x + y
[2.0999999999999996e+00, 3.1000000000000001e+00] with 53 bits of precision
# Intervals with Float32 or Float64 endpoints are also available
julia> x = Interval(2.5)
[2.5, 2.5]
julia> typeof(x)
Interval{Float64} (constructor with 2 methods)
julia> x = Interval(1f0, 6.125f0)
[1.0, 6.125]
julia> typeof(x)
Interval{Float32} (constructor with 2 methods)
Author: Andrioni
Source Code: https://github.com/andrioni/Intervals.jl
License: LGPL-2.1 license
1660795708
Acorn.jl
Acorn.jl
is a small text editor written purely in julia.
Note: This project was written to learn more about and demonstrate julia as a general purpose language, it was not originally intended to be a practical solution to editing text within the REPL (considering one can just type ;vim
for a feature complete text editor in the REPL).
Creating a new text file and writing contents from the julia REPL.
Features include:
find
, help
, save
+ easy to create your own.Acorn's command mode allows users to change settings and execute commands on the fly. It also provides a way to easily add, remove, or change keybindings from within the application
Installing
Pkg.clone("https://github.com/nick-paul/Acorn.jl.git")
Usage
From within the REPL:
julia> using Acorn
julia> acorn("filename")
From the command line
$ julia -E "using Acorn;acorn()" filename
Use an alias to make command line easier:
$ alias acornjl='julia -E "using Acorn;acorn()"'
$ acornjl filename
Commands
Press Ctrl-P
to enter command mode. Type 'help COMMAND' for more information on that command.
arguments in [brackets]
are optional
help [CMD]
: display help information for CMDquit
: quit the editoropen FILE
: open a file, create a new one if neededsave [FILE]
: save the file, if a new filename is provided, save as that namefind [STR]
: start interactive find. if STR
is provided, start interactive search with STR
. Use the up and down arrows to go to the prev/next occurance in the test.echo STR
: display STR
as a messageset param_name param
: set parameter param_name
to param
. ex: set tab_stop 4
bind char command
: bind Ctrl-(char)
to the command command
. ex: bind s save
, bind h echo Hello world!
. Type bind char ~
to unbind.Settings
Change settings by pressing ctrl-p
to enter command mode and then typing set <cmd name> <value>
. All settings remain for the duration of the editor session. When opening a new editor, the default configuration is used.
To change the default values, use the following in your .juliarc.jl
:
using Acorn
Acorn.configSet(:param_name, value)
where :param_name
is a symbol with the parameter's name and value
is the new default value.
Acorn currently supports the following settings:
tab_stop
: Tab width in number of spaces. (default: 4,)expandtab
: If true, insert spaces when pressing the tab key.status_fullpath
: If true, display the full path to the file in the status bar. If false, just display the name.Customization / Contributing
Commands are easy to create and allow for greater editor usability. To create your own command, create a julia file in the cmds
folder, name it after your command, and include it in the Acorn module. Below is an example definition of the command sample
. For more examples, see the cmds/
folder. If you have written a command that you would like to see implemented in Acorn, feel free to send a pull request.
cmds/sample.jl
# The command must have the signature
# function(::Editor, ::String)
function sampleCommand(ed::Editor, args::String)
# Perform operation here
# If you need to store state variables use ed.params
# ed.params[:YOUR CMD NAME][VAR NAME]
ed.params[:sample][:var_name] = some_val
# If you need to request input from the user:
editorPrompt(ed, "Enter your name: ",
callback=sampleCallback # Callback function: function(ed::Editor, buf::String, key::Char
buf="", # Starting point for the input buffer. This text is
# 'automatically' typed into the input when the
# prompt loads
showcursor=true) # Move the cursor to the prompt
end
# Optional: If you request input from the user and need a
# callback function, use the following format:
function sampleCallback(ed::Editor, buf::String, key::Char)
# Perform callback action here...
end
# Call `addCommand` to add
addCommand(:sample, # The command name
sampleCommand, # The command function
help="description of sample") # Displayed when user runs 'help sample'
Include your command in Acorn.jl
# Load commands
#...
include("cmds/save.jl")
include("cmds/find.jl")
include("cmds/sample.jl") # Add this line
#...
Please also create a test file test/cmds/test_sample.jl
and include it in test/runtests.jl
.
include("cmds/test_sample.jl")
Many features have not yet been implemented. I will slowly be adding features and I will try to keep up with issues and pull requests so feel free to add whatever you like to the editor. Some things I may eventually add to the editor are:
Acorn has not been tested on OSX and currently has compatibility issues with Windows. If you run into any problems on your platform feel free to patch it and send a pull request.
If you experience any bugs, please submit an issue or patch it and send a pull request.
Credits
src/editor.jl
is based off of antirez's kilo.Author: Nick-paul
Source Code: https://github.com/nick-paul/Acorn.jl
License: View license
1662012360
A Julia implementation of google flatbuffers
The package is registered in METADATA.jl
and so can be installed with Pkg.add
.
julia> Pkg.add("FlatBuffers")
The package is tested against Julia 1.0
, 1.1
, 1.2
, 1.3
, and nightly on Linux, OS X, and Windows.
Contributions are very welcome, as are feature requests and suggestions. Please open an issue if you encounter any problems or would just like to ask a question.
Author: JuliaData
Source Code: https://github.com/JuliaData/FlatBuffers.jl
License: View license
1658322420
This package will only work on very old version of Julia. As of 2020 May, https://github.com/JuliaGraphs/GraphPlot.jl might be what you want. Good luck!
GraphLayout.jl
Graph layout and visualization algorithms, implemented in Julia.
The package currently implements the following layout methods:
The visualizations are created using Compose.jl, enabling output to a variety of vector and raster image formats. The hierarchical drawing algorithm has multiple components, some of which can use exact algorithms instead of heuristics. To use these components JuMP and a suitable solver should be installed - JuMP will be automatically installed, but a solver will not.
GraphLayouts.jl is not a comprehensive graph visualization option yet, and may never be. Please consider using a more mature library. Some related packages may meet your needs:
GraphViz
library.lualatex/tikz
.If you have it installed you can plot the resulting graph layouts:
MIT License. Copyright (c) 2016 Iain Dunning and contributors.
Author: IainNZ
Source code: https://github.com/IainNZ/GraphLayout.jl
License: MIT license