2014-11-30 7 views
3

Для примера. Как напечатать что-то вроде этого:Как символы новой строки, символы табуляции представлены в purescript?

showEntry entry = entry.lastName ++ "\t" ++ 
        entry.firstName ++ "\t" ++ 
        entry.phone 
print(showEntry {lastName: 'Doe', firstName: 'John', phone: '555-555-5555'}) 

Это просто печатает Doe\tJohn\t555-555-5555.

+0

Как вы используете эту функцию? Если вы используете 'psci', экземпляр« Show »выйдет из символа табуляции, поэтому вы видите' \ t' в выводе. –

+0

Да, я использую 'psci'. Что объясняет его. Я думаю, вы упомянули об этом в книге где-то. Могу ли я убедиться, что во время печати «\ t» не экранируется, например, предотвращение стандартного поведения Show экземпляра? Или, если вместо 'print' использовать другую функцию? –

+0

Вызов 'print' вызывается в' psci'. Вы можете взломать вызов 'console.log' с помощью небезопасного примитива FFI: трассировка функции« foreign import notafeTracing »(x) {console.log (x); return x;}" :: forall a. a -> a' –

ответ

1

Использование

\n\

Изменения в

showEntry entry = entry.lastName \n\ 
        entry.firstName \n\ 
        entry.phone 
+0

Да, я думаю, '\ t' тоже должен работать. Но по какой-то причине, когда я печатаю, я получаю '\ t' вместо табуляторов. –

+0

попробуйте код, который я положил. Прекратите использовать ++ – Rafael

+0

Ahhhh Я вижу вашу проблему. одна секунда – Rafael

Смежные вопросы