¿Cómo ingresar caracteres especiales, como el símbolo Celsius y las letras griegas comunes?

15

Quiero ingresar:

  • Símbolo de grado Celsius
  • Letra griega común: Alpha, Theta, Omega
Mella
fuente
44
-1: Haga una investigación de antecedentes antes de publicar. Una búsqueda en Google de "letras griegas de emacs" muestra el hilo SO titulado "Cómo ingresar caracteres griegos en Emacs" como primer hit. Una búsqueda en Google de "caracteres especiales de emacs" o "emacs unicode" muestra tutoriales, EmacsWiki y el manual.
Dan

Respuestas:

14

Si está familiarizado con TeX, encontrará TeXútil el método de entrada. Solo haz

M-x set-input-method TeX

luego escriba algo como \alpha: se reemplazará con el carácter Unicode correspondiente. Puede desactivar el método de entrada escribiendo C-\.

Puede encontrar todos los comandos TeX compatibles con

M-x describe-input-method
jch
fuente
Sí, sé algo de TeX. Este método también resolvió todos los símbolos matemáticos de manera unificada. ¡Gracias!
Nick
19

La forma estándar de Emacs de hacer esto es C-x 8 RETseguida por el punto de código Unicode (un número natural) o el nombre Unicode del personaje. La finalización está disponible para el nombre.

Si usa la biblioteca Icicles , puede completar el nombre usando partes de él, con múltiples patrones que coincidan con diferentes partes, si lo desea. Y puede ver los propios personajes, junto a sus nombres de candidatos, en el búfer *Completions*.

Por ejemplo, C-x 8 RET cels S-RETse completa con DEGREE CELSIUS 2103 ℃e inserciones que carácter, .

Dibujó
fuente
7

Además de C-x 8 RET, mencionado aquí que le permite insertar cualquier carácter por nombre, C-x 8también tiene muchos accesos directos para insertar caracteres comunes. En este caso, C-x 8 oinserta "°". Véalos a todos conC-x 8 C-h

El C-x 8mapa de teclas también es un buen lugar para definir sus propios atajos para insertar los caracteres que usa con más frecuencia. Las letras griegas no están vinculadas a teclas de forma predeterminada, pero podemos agregarlas con líneas como

(global-set-key (kbd "C-x 8 a") (lambda () (interactive) (insert "α")))

que hará C-x 8 ainsertar a GREEK SMALL LETTER ALPHA. Obtuve el alfa inicial en la global-set-keylínea usando C-x 8 RETy buscando "alpha"

erikstokes
fuente
2

Estoy usando esto:

(defun helm-insert-char ()
  (interactive)
  (helm :sources
      `((name . "Unicode char name")
        (candidates . ,(ucs-names))
        (action . insert))))
abo-abo
fuente