¿Una forma rápida de escribir personajes divertidos de Scalaz?


13

¿Hay alguna forma fácil y rápida de escribir los personajes divertidos (como ⊛, ≟, ∘, ∨, etc.) de Scalaz? (Estoy usando Ubuntu 9.04)


44
En serio, no puedo entender por qué los diseñadores de la biblioteca eligieron usar símbolos tan divertidos en primer lugar. ¿Alguna razón válida?

2
De acuerdo, hasta que veamos al menos un poco de soporte de teclado

Hay una gran cantidad de formas de imprimir personajes divertidos, pero la mayoría de ellos son específicos del sistema operativo y de la distribución. Creo que tales preguntas deberían hacerse mejor en superusuario.
P Shved

1
@Pavel: espero respuestas de los creadores de Scalaz. Es por eso que publiqué la pregunta en StackOverflow.

Echa un vistazo a xmodmap.
Debilski

Respuestas:


12
  1. Utilice los alias ASCII proporcionados por la biblioteca. Por ejemplo, |+|es un alias para .
  2. Use IntelliJ IDEA, con estas plantillas en vivo. Luego puedes escribir x mapmap<TAB>para obtener x ∘∘. Las instrucciones de instalación están cubiertas en esta pregunta reciente . IntelliJ tiene una edición comunitaria gratuita, y es mi elección personal y recomendación para la codificación Scala.
  3. Creo que el acceso directo en Gnome para ingresar un carácter Unicode es CTRL-SHIFT-U, Hex Code, Enter.
  4. Crea plantillas para tu editor favorito.

¿Por qué usar estos símbolos en absoluto?

  1. Confiamos en el patrón Pimp-my-Library, pero en lugar de ajustar un tipo en particular, proporcionamos funciones adicionales que funcionan para cualquier tipo con instancias de clase de tipo adecuadas. El uso de caracteres no estándar minimiza los conflictos de nombres con los métodos proporcionados por los tipos originales.
  2. Algunas operaciones, como Functor map, Monadic bind y Applicative Functor apply, son realmente de uso común y fundamentales. Scala construye algunos de estos en el lenguaje con comprensiones. Entonces le damos la opción de usar las versiones de Scalaz con un mínimo de desorden sintáctico, casi como si fueran parte del lenguaje en sí.

Ejemplo:

some(7) ∘ {1 +} 
List(1, 2, 3) ∗ {x => List(7, x)} 
case class Person(age: Int, name: String)
some(10) ⊛ none[String] apply Person.apply

No sabía sobre plantillas en vivo. Gracias.

1
¿Me puede recomendar alguna fuente de programación que cubra todos esos caracteres Unicode? - Personalmente, me gustaría usar una fuente que tenga caracteres de ancho variable (ya no alineo mi código en columnas), pero desafortunadamente, IntelliJ IDEA solo puede manejar bien el movimiento del cursor para fuentes de ancho fijo.
Madoc

esto está un poco fuera de alcance, pero ¿por qué los caracteres especiales (o incluso | + |), qué hay de malo en dar un nombre significativo a la función? Estoy tratando de entrar en scalaz, pero cada vez que veo un ejemplo some(7) ∘ {1 +}, es imposible entender qué se supone que debe hacer. Podría argumentar que es para guardar las pulsaciones de teclas, pero si tiene que escribir "mapmap <TAB>" para obtener el carácter correcto, ¿por qué no llamar a la función mapmap?
Mortimer

0

Prueba esto -

Asegúrese de que el bloqueo numérico esté desactivado
Mantenga presionada la tecla ALT
en el teclado numérico - presione +y luego el número decimal Unicode del carácter que desea.
Suelte la tecla ALT

Este es un viejo truco que funcionó en DOS con códigos ASCII (sin el +) y funciona en ventanas en cuadros de edición que toman Unicode. Debería funcionar en algunos Linux, creo.

También es posible que desee probar el método descrito aquí .


2
Esto no es algo que yo llamaría rápido. Y no puedo recordar números unicode de tantos caracteres. Estoy buscando algo más rápido y menos exigente.

0

Es más fácil en Linux que en cualquier otro sistema operativo que conozco.

Consulte este enlace para obtener información de fondo / detalles: https://help.ubuntu.com/community/ComposeKey

Primero, puede presionar Ctrl + Shift + U seguido de con el código Unicode. Por ejemplo, Ctrl + Shift + U + 2203 = ∃. Puede que no sea tan conveniente, pero lo necesitará para el siguiente paso.

La mejor manera es utilizar la clave de redacción, AKA Multi_key. Como se describe en el artículo anterior, puede componer caracteres con Multi_key + char1 + char2. Por ejemplo, Multi_key 'e es é.

Me parece que la tecla Bloq Mayús es una espléndida Multi_key. Puede configurarlo con Preferencias del sistema -> Teclado -> Diseño -> Opciones.

Para hacer tus propias secuencias de teclas compuestas. haga un archivo ~ / .XCompose y agregue entradas como

: "∃"

(usando el truco Ctrl + Shift + U, o simplemente con copiar / pegar)

Cierre la sesión y vuelva a iniciarla (o, para probar, simplemente ejecute ssh -X localhost xterm).

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.