[m-users.] Best way to implement constants ?
Sean Charles (emacstheviking)
objitsu at gmail.com
Sat Aug 19 00:44:54 AEST 2023
If by nano-scale you mean 'nano', then yes, that editor. I took a snapshot and put it here, I have no ida how long it remains alive:
https://pasteboard.co/37SlORCNzgln.png
nano with mercury syntax highlighting - Image on Pasteboard
pasteboard.co
I modified the Prolog mode to work a little better with Mercury, it's by no means perfect, there are some odd colouring issues when I have a string containing certain escape sequences, but bearing in mind nano uses simple regex filters to figure out what to colour, I am still very happy with the way it works.
I wrote a tool to use the 'formatter hook' in nano, so that, after a compile, if there are errors, I just do 'Meta-F' and it inserts the errors messages into the source file, as a comment, and the hook I wrote (in Mercury) adjusts the errors to work with my syntax highlighting, another small image:
https://pasteboard.co/Uu5jsXV8YqEX.png
Mercury with nano - Image on Pasteboard
pasteboard.co
The custom formatter hook is here on github: https://github.com/emacstheviking/mercury-pberr
I have some other stuff that's mercury related there, I think I've troubled this list with it before?! :D
Cheers!
--- mercury nano configuration file, ~/.nano/mercury.nanorc ---
--- BEGIN ---
## Mercury, ported and adjusted from Prolog mode.
syntax "mercury" "\.m$"
comment "%"
## Written in Mercury for Nano+Mercury, this will interleave
## a FOO.err file when called from FOO.m via Meta-F (formatter)
formatter pberr nanoformatter
# Integers and floats
color yellow "(^| |=)[0-9]+\.?[0-9]*"
# Variables
color magenta "(^|[[:blank:]]|\(|,)[A-Z_!][a-zA-Z0-9_\.\:]*($|[[:blank:]]|,|\))"
# Anonymous variable '_'
color yellow "(^|[[:blank:]]|\(|,)_($|[[:blank:]]|,|\))"
# Functions
color cyan "(^|[[:blank:]])\w+\("
color cyan "\(|\)|\[|\]|,|=|\\="
# Comments
color green "(^|[[:blank:]])%.*$"
# Strings
color yellow "\".*\""
# compiler :-
color cyan "^:- .*$"
# custom errors for pberr
color red "^%E.*$"
# Reminders
color yellow "(BUG|DEBUG|FIXME|IDEA|NOTE|REVIEW|TEMP|TODO|WARNING|XXX|TOFU)"
# Spaces in front of tabs
color ,red " + +"
--- END ---
> On 18 Aug 2023, at 14:35, Volker Wysk <post at volker-wysk.de> wrote:
>
> Am Freitag, dem 18.08.2023 um 14:25 +0100 schrieb Sean Charles
> (emacstheviking):
>> LOL! I am a lapsed emacs user of 30 years... vscode stole my affections,
>> saying that, I use nano exclusivly for Mercury, I've written a few tools
>> to help me out, and all in all, nano is just fine!
>
> You mean that nano-scale editor? For real? Does it even have a Mercury (or
> Prolog) mode with syntax highlighting, like Emacs does?
>
>>
>>> On 18 Aug 2023, at 14:24, Mark Brown <mark at mercurylang.org> wrote:
>>>
>>> On Fri, Aug 18, 2023 at 6:26 PM Sean Charles (emacstheviking)
>>> <objitsu at gmail.com> wrote:
>>>> My question is simple this: is what I have done 'ok' or is it a diabolical insult to all that as beautiful and holy in the Mercury world?
>>>
>>> You mean the planet? :-P
>>>
>>> To answer your question in general, the measure of what you write
>>> depends on your intended audience. It's the same for programming as it
>>> is for other kinds of writing. Having said that, I hate it when I
>>> can't use tags in vim.
>>>
>>> Mark
>>
>> _______________________________________________
>> users mailing list
>> users at lists.mercurylang.org <mailto:users at lists.mercurylang.org>
>> https://lists.mercurylang.org/listinfo/users
>
> _______________________________________________
> users mailing list
> users at lists.mercurylang.org <mailto:users at lists.mercurylang.org>
> https://lists.mercurylang.org/listinfo/users
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mercurylang.org/archives/users/attachments/20230818/120bc62e/attachment-0001.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 37SlORCNzgln.png
Type: image/png
Size: 337587 bytes
Desc: not available
URL: <http://lists.mercurylang.org/archives/users/attachments/20230818/120bc62e/attachment-0002.png>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: Uu5jsXV8YqEX.png
Type: image/png
Size: 129669 bytes
Desc: not available
URL: <http://lists.mercurylang.org/archives/users/attachments/20230818/120bc62e/attachment-0003.png>
More information about the users
mailing list