132 lines
5.2 KiB
Text
132 lines
5.2 KiB
Text
@c This is part of the Emacs manual.
|
|
@c Copyright (C) 2021--2024 Free Software Foundation, Inc.
|
|
@c See file emacs.texi for copying conditions.
|
|
@node Haiku
|
|
@appendix Emacs and Haiku
|
|
@cindex Haiku
|
|
|
|
Haiku is a Unix-like operating system that originated as a
|
|
re-implementation of the operating system BeOS.
|
|
|
|
This section describes the peculiarities of using Emacs built with
|
|
the Application Kit, the windowing system native to Haiku. The
|
|
oddities described here do not apply to using Emacs on Haiku built
|
|
without windowing support, or built with X11.
|
|
|
|
@menu
|
|
* Haiku Basics:: Basic Emacs usage and installation under Haiku.
|
|
* Haiku Fonts:: The various options for displaying fonts on Haiku.
|
|
@end menu
|
|
|
|
@node Haiku Basics
|
|
@section Installation and usage peculiarities under Haiku
|
|
@cindex haiku application
|
|
@cindex haiku installation
|
|
|
|
Emacs installs two separate executables under Haiku; it is up to the
|
|
user to decide which one suits him best: A regular executable, with
|
|
the lowercase name @code{emacs}, and a binary containing
|
|
Haiku-specific application metadata, with the name @code{Emacs}.
|
|
|
|
@cindex launching Emacs from the tracker
|
|
@cindex tty Emacs in haiku
|
|
If you are launching Emacs from the Tracker, or want to make the
|
|
Tracker open files using Emacs, you should use the binary named
|
|
@code{Emacs}; if you are going to use Emacs in the terminal, or wish
|
|
to launch separate instances of Emacs, or do not care for the
|
|
aforementioned system integration features, use the binary named
|
|
@code{emacs} instead.
|
|
|
|
@cindex modifier keys and system keymap (Haiku)
|
|
@cindex haiku keymap
|
|
On Haiku, unusual modifier keys such as the Hyper key are
|
|
unsupported. By default, the super key corresponds with the option
|
|
key defined by the operating system, the meta key with the command
|
|
key, the control key with the system control key, and the shift key
|
|
with the system shift key. On a standard PC keyboard, Haiku should
|
|
map these keys to positions familiar to those using a GNU system, but
|
|
this may require some adjustment to your system's configuration to
|
|
work.
|
|
|
|
It is impossible to type accented characters using the system super
|
|
key map.
|
|
|
|
You can customize the correspondence between modifier keys known to
|
|
the system, and those known to Emacs. The variables that allow for
|
|
that are described below.
|
|
|
|
@cindex modifier key customization (Haiku)
|
|
@table @code
|
|
@vindex haiku-meta-keysym
|
|
@item haiku-meta-keysym
|
|
The system modifier key that will be treated as the Meta key by Emacs.
|
|
It defaults to @code{command}.
|
|
|
|
@vindex haiku-control-keysym
|
|
@item haiku-control-keysym
|
|
The system modifier key that will be treated as the Control key by
|
|
Emacs. It defaults to @code{control}.
|
|
|
|
@vindex haiku-super-keysym
|
|
@item haiku-super-keysym
|
|
The system modifier key that will be treated as the Super key by
|
|
Emacs. It defaults to @code{option}.
|
|
|
|
@vindex haiku-shift-keysym
|
|
@item haiku-shift-keysym
|
|
The system modifier key that will be treated as the Shift key by
|
|
Emacs. It defaults to @code{shift}.
|
|
@end table
|
|
|
|
The value of each variable can be one of the symbols @code{command},
|
|
@code{control}, @code{option}, @code{shift}, or @code{nil}.
|
|
@code{nil} or any other value will cause the default value to be used
|
|
instead.
|
|
|
|
@cindex tooltips (haiku)
|
|
@cindex haiku tooltips
|
|
On Haiku, Emacs defaults to using the system tooltip mechanism.
|
|
This usually leads to more responsive tooltips, but the tooltips will
|
|
not be able to display text properties or faces. If you need those
|
|
features, customize the variable @code{use-system-tooltips} to the
|
|
@code{nil} value, and Emacs will use its own implementation of
|
|
tooltips.
|
|
|
|
@cindex X resources on Haiku
|
|
Unlike the X window system, Haiku does not have a system-wide
|
|
resource database. Since many important options are specified via
|
|
X resources (@pxref{X Resources}), an emulation is provided: upon
|
|
startup, Emacs will load a file named @file{GNU Emacs} inside the user
|
|
configuration directory (normally @file{/boot/home/config/settings}),
|
|
which should be a flattened system message where keys and values are
|
|
both strings, and correspond to attributes and their values
|
|
respectively.
|
|
|
|
You can create such a file with the @command{xmlbmessage} tool.
|
|
|
|
@subsection What to do when Emacs crashes
|
|
@cindex crashes, Haiku
|
|
@cindex haiku debugger
|
|
@vindex haiku-debug-on-fatal-error
|
|
If the variable @code{haiku-debug-on-fatal-error} is non-@code{nil}, Emacs
|
|
will launch the system debugger when a fatal signal is received. It
|
|
defaults to @code{t}. If GDB cannot be used on your system, please
|
|
attach the report generated by the system debugger when reporting a
|
|
bug.
|
|
|
|
@node Haiku Fonts
|
|
@section Font and font backend selection on Haiku
|
|
@cindex font backend selection (Haiku)
|
|
|
|
Emacs, when built with Haiku windowing support, can be built with
|
|
several different font backends. You can specify font backends by
|
|
specifying @kbd{-xrm Emacs.fontBackend:BACKEND} on the command line
|
|
used to invoke Emacs, where @kbd{BACKEND} is one of the backends
|
|
specified below, or on a per-frame basis by changing the
|
|
@code{font-backend} frame parameter.
|
|
|
|
Two of these backends, @code{ftcr} and @code{ftcrhb} are identical
|
|
to their counterparts on the X Window System. There is also a
|
|
Haiku-specific backend named @code{haiku}, that uses the App Server to
|
|
draw fonts, but does not at present support display of color font and
|
|
emoji.
|