mirror of
https://github.com/embarklabs/neo-blessed.git
synced 2025-01-10 19:16:20 +00:00
readme
This commit is contained in:
parent
2b425eec4f
commit
c3257e29dc
69
README.md
69
README.md
@ -22,8 +22,9 @@ the changes (damage) to the screen.
|
||||
Blessed is arguably as accurate as ncurses, but even more optimized in some
|
||||
ways. The widget library gives you an API which is reminiscent of the DOM.
|
||||
Anyone is able to make an awesome terminal application with blessed. There are
|
||||
terminal widget libraries for other platforms (primarily python and perl), but
|
||||
blessed is the most DOM-like.
|
||||
terminal widget libraries for other platforms (primarily [python][urwid] and
|
||||
[perl][curses-ui]), but blessed is possibly the most DOM-like (dare I say the
|
||||
most user-friendly?).
|
||||
|
||||
Blessed has been used to implement other popular libraries and programs.
|
||||
Examples include: the [slap text editor][slap] and [blessed-contrib][contrib].
|
||||
@ -1207,42 +1208,47 @@ program.feed();
|
||||
## FAQ
|
||||
|
||||
1. Why doesn't the Linux console render lines correctly on Ubuntu?
|
||||
- You need to install the `ncurses-base` package __and__ the `ncurses-term`
|
||||
package. (#98)
|
||||
- You need to install the `ncurses-base` package __and__ the `ncurses-term`
|
||||
package. (#98)
|
||||
2. Why do vertical lines look chopped up in iTerm2?
|
||||
- All ACS vertical lines look this way in iTerm2.
|
||||
- All ACS vertical lines look this way in iTerm2.
|
||||
3. Why can't I use my mouse in Terminal.app?
|
||||
- Terminal.app does not support mouse events.
|
||||
- Terminal.app does not support mouse events.
|
||||
4. Why doesn't the Image element appear in my terminal?
|
||||
- The Image element uses w3m to display images. This generally only works on
|
||||
X11+xterm/urxvt, but it *may* work on other unix terminals.
|
||||
- The Image element uses w3m to display images. This generally only works on
|
||||
X11+xterm/urxvt, but it *may* work on other unix terminals.
|
||||
5. Why can't my mouse clicks register beyond 255-287 cells?
|
||||
- Older versions of VTE do not support any modern mouse protocol. On top of
|
||||
that, the old x10 protocol it does implement is bugged. Through several
|
||||
workarounds we've managed to get the cell limit from 127 to 255/287. If
|
||||
you're not happy with this, you may want to look into using xterm or
|
||||
urxvt, or a terminal which uses a modern VTE, like gnome-terminal.
|
||||
- Older versions of VTE do not support any modern mouse protocol. On top of
|
||||
that, the old x10 protocol it does implement is bugged. Through several
|
||||
workarounds we've managed to get the cell limit from 127 to 255/287. If
|
||||
you're not happy with this, you may want to look into using xterm or
|
||||
urxvt, or a terminal which uses a modern VTE, like gnome-terminal.
|
||||
6. Is blessed efficient?
|
||||
- Yes. Blessed implements CSR and uses the painter's algorithm to render the
|
||||
screen. It maintains two screen buffers so it only needs to render what
|
||||
has changed on the terminal screen.
|
||||
- Yes. Blessed implements CSR and uses the painter's algorithm to render the
|
||||
screen. It maintains two screen buffers so it only needs to render what
|
||||
has changed on the terminal screen.
|
||||
7. Will blessed work with all terminals?
|
||||
- Yes. blessed has a terminfo/termcap parser and compiler that was written
|
||||
from scratch. It should work with every terminal as long as a terminfo
|
||||
file is provided. If you notice any compatibility issues in your termial,
|
||||
do not hesitate to post an issue.
|
||||
- Yes. blessed has a terminfo/termcap parser and compiler that was written
|
||||
from scratch. It should work with every terminal as long as a terminfo
|
||||
file is provided. If you notice any compatibility issues in your termial,
|
||||
do not hesitate to post an issue.
|
||||
8. What is "curses" and "ncurses"?
|
||||
- ["curses"][curses] was an old library written in the early days of unix
|
||||
which allowed a programmer to not have to worry about terminal
|
||||
compatibility. ["ncurses"][ncurses] is a free reimplementation of curses.
|
||||
It improved upon it quite a bit and is now the standard library for
|
||||
implementing terminal programs. Blessed uses neither of these, and instead
|
||||
handles terminal compatibility itself.
|
||||
- ["curses"][curses] was an old library written in the early days of unix
|
||||
which allowed a programmer to not have to worry about terminal
|
||||
compatibility. ["ncurses"][ncurses] is a free reimplementation of curses.
|
||||
It improved upon it quite a bit and is now the standard library for
|
||||
implementing terminal programs. Blessed uses neither of these, and instead
|
||||
handles terminal compatibility itself.
|
||||
9. What is the difference between blessed and blessed-contrib?
|
||||
- blessed is a major piece of code which reimplements curses from the ground
|
||||
up. A UI API is then layered on top of this. blessed-contrib is a popular
|
||||
library built on top of blessed which makes clever use of modules to
|
||||
implement useful widgets like graphs, ascii art, and so on.
|
||||
- blessed is a major piece of code which reimplements curses from the ground
|
||||
up. A UI API is then layered on top of this. blessed-contrib is a popular
|
||||
library built on top of blessed which makes clever use of modules to
|
||||
implement useful widgets like graphs, ascii art, and so on.
|
||||
10. Are there blessed-like solutions for non-javascript platforms?
|
||||
- Yes. There are some fantastic solutions out there.
|
||||
- Perl: [Curses::UI][curses-ui]
|
||||
- Python: [Urwid][urwid]
|
||||
- Go: [termui][termui] & [termbox-go][termbox]
|
||||
|
||||
|
||||
## Contribution and License Agreement
|
||||
@ -1263,3 +1269,6 @@ See LICENSE for more info.
|
||||
[termui]: https://github.com/gizak/termui
|
||||
[curses]: https://en.wikipedia.org/wiki/Curses_(programming_library)
|
||||
[ncurses]: https://en.wikipedia.org/wiki/Ncurses
|
||||
[urwid]: http://urwid.org/reference/index.html
|
||||
[curses-ui]: http://search.cpan.org/~mdxi/Curses-UI-0.9609/lib/Curses/UI.pm
|
||||
[termbox]: https://github.com/nsf/termbox-go
|
||||
|
Loading…
x
Reference in New Issue
Block a user