Comments (11)
Just FYI guys. cargo install --no-default-features --features "crossterm-backend"
work perfectly fine on Win 10 1909. Thank you for shipping this on the Windows platform :-)
from dijo.
@ntqr the cursive
crate uses ncurses
as a default feature, which I have disabled as of 02bba5. This should work fine with either crossterm
or pancurses
.
I am working towards setting up CI and a testing suite for all platforms, please put up with my trial and error until then 😅.
from dijo.
@rafamerlin sweet, that seems to be working as expected. I have released v0.2.3 that fully supports windows with the crossterm backend. The installation process is similar:
cargo build --release --no-default-features --features "crossterm-backend"
This might seem a little clunky, but enabling features (on target os basis) for a dependency is a nightly only feature at the moment :/
Alternatively, you can download pre-compiled binaries from the release page.
Cheers.
from dijo.
It looks like ncurses isn't supported on Windows:
error: failed to run custom build command for `ncurses v5.99.0`
...
c1: fatal error C1083: Cannot open source file: 'D:\apps\dijo\target\release\build\ncurses-a01b84948c9e0b70\out\chtype_size.c': Permission denied
Maybe consider using pancurses?
from dijo.
I haven't tried it with Crossterm. I will try it tonight and will get back to you.
from dijo.
Thank you for all the help :)
from dijo.
dijo
does not support windows at the moment, because termion
does not support windows at the moment. However, using the crossterm
backend for cursive could help dijo
run on windows, so I have made a branch specifically for this. You can try it out with:
$ git clone -b feature/windows https://github.com/NerdyPepper/dijo/
$ cargo install --force --path ./dijo
crossterm
is not built for powershell, but it has been tested console host on Win 10 and Win 8.1. Let me know how it goes, this would help make dijo
truly cross platform.
The only reason I am not using crossterm
because it flashes the screen while redrawing.
from dijo.
similarly maybe add a note in the WIKI about the ncurses library requirement for building from source in 18.04 solved this with: apt install libncursesw5-dev
from dijo.
It did work now, but it does look a bit weird.
I can just see the highlighted text and the others just show if I use the arrows on my keyboard.
from dijo.
@rafamerlin was the text rendering fine with crossterm
?
from dijo.
So, I'm still a beginner on rust and I wasn't used to TUIs before.
Gave a quick look and saw that currently the one being used is pancurses-backend
so on windows it will use pdcurses-sys
so I checked out this commit which was in theory still using crossterm:
d7c303d
However, when I try to build this one it will give me this issue:
error[E0432]: unresolved import `cursive::crossterm`
--> src\main.rs:20:5
|
20 | use cursive::crossterm;
| ^^^^^^^^^^^^^^^^^^ no `crossterm` in the root
I tried to add crossterm as a dependency just as a test but still doesn't work. Googled it but couldn't find anything as well. Maybe I'm missing something on my box?
Edit:
Oh, just realised that the windows/linux is not something that happens automatically, we have to tell which features we are using when we build:
So just built it with: cargo build --all --no-default-features --features windows
And then ran it the same way and now it looks much better, not as good as the image on your readme.md but still much better than the other one:
from dijo.
Related Issues (20)
- Use $XDG_... folders on macOS HOT 1
- Configure the number of columns HOT 2
- can't find dijo config file HOT 2
- Man pages has not been released HOT 2
- Customisation: Ability to change cursor colour HOT 2
- Make the view scrollable HOT 1
- Compilation error on OpenBSD
- Set hour at which day ends
- Request: Use `BTreeMap` instead of `HashMap` for serialization
- Wrong weekdays position on calendar
- Mobile phone integration? HOT 1
- Unclear documentation HOT 1
- Add `habit` to tags
- After the new day begins, the cursor cannot update.
- failed to select a version for the requirement `ahash = "^0.6"` HOT 1
- How do you use the `false` values? HOT 1
- The build for this broke, due to external crate change. HOT 2
- Man pages? HOT 2
- v0.2.4 build problem HOT 2
- Failed to install HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from dijo.