Difference between revisions of "Talk:Source code"

From NetHackWiki
Jump to navigation Jump to search
m (Nethack software architecture)
m (organize)
 
(One intermediate revision by one other user not shown)
Line 9: Line 9:
 
I'd like to see something that gives an overview of how the different source files work together.  I'd like to see a diagram of the [[wikipedia:Software architecture|software architecture]] of Nethack.  I'd be happy to work on a page like that, for my own understanding.  I suppose a computer scientist could frame this question in a better way.  Does this make sense?  Where to start? [[User:Wikid|Wikid]] ([[User talk:Wikid|talk]]) 08:08, 15 August 2019 (UTC)
 
I'd like to see something that gives an overview of how the different source files work together.  I'd like to see a diagram of the [[wikipedia:Software architecture|software architecture]] of Nethack.  I'd be happy to work on a page like that, for my own understanding.  I suppose a computer scientist could frame this question in a better way.  Does this make sense?  Where to start? [[User:Wikid|Wikid]] ([[User talk:Wikid|talk]]) 08:08, 15 August 2019 (UTC)
 
Here's a snapshot of a mind map of the *.c files, what do you think? The map itself expands to show the *.h files, I can post that later. [[User:Wikid|Wikid]] ([[User talk:Wikid|talk]]) 19:57, 18 August 2019 (UTC) </p> [[File:Nethack.6.2.MindMap.jpg]]
 
Here's a snapshot of a mind map of the *.c files, what do you think? The map itself expands to show the *.h files, I can post that later. [[User:Wikid|Wikid]] ([[User talk:Wikid|talk]]) 19:57, 18 August 2019 (UTC) </p> [[File:Nethack.6.2.MindMap.jpg]]
 +
 +
== Syntax highlight ==
 +
 +
Looks like this Mediawiki version allready supports C syntax highlight:
 +
 +
<syntaxhighlight lang="c">
 +
void
 +
newedog(mtmp)
 +
struct monst *mtmp;
 +
{
 +
    if (!mtmp->mextra)
 +
        mtmp->mextra = newmextra();
 +
    if (!EDOG(mtmp)) {
 +
        EDOG(mtmp) = (struct edog *) alloc(sizeof(struct edog));
 +
        (void) memset((genericptr_t) EDOG(mtmp), 0, sizeof(struct edog));
 +
    }
 +
}
 +
</syntaxhighlight>
 +
 +
How could we have the annotated source code look like that? It would be so much easier to read!
 +
 +
--[[User:Tonttu4|Tonttu4]] ([[User talk:Tonttu4|talk]]) 19:57, 8 July 2023 (UTC)

Latest revision as of 20:02, 8 July 2023

Function hyperlinking at 100% (?)

For ages, the function-linking feature of the src/*.c pages was broken and incomplete. Finally, all files from the src/ subdirectory have had their function definitions identified, and when you click on a function call, it *should* link you to the relevant function definition. If you see a function call not marked or a link not properly working (for example, sending you to the respective function in the 3.4.3 source), please make the relevant edit or hit me up, dizzylizzy in #nethackwiki on Freenode. It's been a long time coming and now it's all pretty. Props to DizzyBot for being a champ.

-Dizzylizzy (talk) 01:03, 18 May 2018 (UTC)

Nethack software architecture

I'd like to see something that gives an overview of how the different source files work together. I'd like to see a diagram of the software architecture of Nethack. I'd be happy to work on a page like that, for my own understanding. I suppose a computer scientist could frame this question in a better way. Does this make sense? Where to start? Wikid (talk) 08:08, 15 August 2019 (UTC)

Here's a snapshot of a mind map of the *.c files, what do you think? The map itself expands to show the *.h files, I can post that later. Wikid (talk) 19:57, 18 August 2019 (UTC)

Nethack.6.2.MindMap.jpg

Syntax highlight

Looks like this Mediawiki version allready supports C syntax highlight:

void
 newedog(mtmp)
 struct monst *mtmp;
 {
     if (!mtmp->mextra)
         mtmp->mextra = newmextra();
     if (!EDOG(mtmp)) {
         EDOG(mtmp) = (struct edog *) alloc(sizeof(struct edog));
         (void) memset((genericptr_t) EDOG(mtmp), 0, sizeof(struct edog));
     }
 }

How could we have the annotated source code look like that? It would be so much easier to read!

--Tonttu4 (talk) 19:57, 8 July 2023 (UTC)