Emacs

Org-Mode Deel 2 - code uitvoeren

Org-Mode Deel 2 - code uitvoeren
Als je code wilt leren en onderwijzen, kan het handig zijn om de code in een document te schrijven. Dit is ook handig voor de planningsfase van een project. U denkt misschien dat u alleen opmerkingen in de code plaatst, maar dat kan lastig zijn, omdat opmerkingen moeten laten zien hoe deze code werkt. In het document kunt u projectideeën, planning en abstracte ideeën plaatsen die niet in het codecommentaar thuishoren. Het document kan ook resultaten van de uitvoering bevatten, wat krachtig is voor het trekken van conclusies maar geen plaats heeft in de uiteindelijke code.

Code in Emacs

Veel ontwikkelaars gebruiken Emacs om software te ontwikkelen, het is een krachtige code-editor. Velen beschouwen het zelfs als een IDE, mits correct geconfigureerd. Maar documenten staan ​​meestal los van de code. Als u code wilt demonstreren of een nieuw project wilt plannen, kunt u codefragmenten gebruiken. Om te laten zien hoe je denkt dat het moet werken, kun je zo'n document schrijven. Een krachtige manier om dit te doen is door een organisatiedocument te maken. Om code aan uw document toe te voegen, moet u een codeblok toevoegen. Een codeblok is een standaard set code die u hieronder kunt zien.

#+begin_src javascript
const app, BrowserWindow = vereisen ('elektron')
const pad = vereisen('pad')
#+end_src

Het resultaat kan naar het document gaan.

Dit voorbeeld maakt geen uitvoer, de eenvoudigste manier om uitvoer te krijgen is door shell te gebruiken. Als u een opdracht wilt uitvoeren en de resultaten wilt weergeven, moet u een header-parameter toevoegen.

#+begin_src shell :exporteert beide
uname -a
#+end_src
uname -a
Linux-matten-Ubuntu 5 ".0.0-20-generiek #21-Ubuntu SMP ma 24 juni 09:32:09
UTC 2019 x86_64 x86_64 x86_64 GNU/Linux

Het resultaat wordt door Emacs toegevoegd in een blok onder de uitvoerende code. Als u meer geavanceerde resultaten wilt of als u blokken wilt combineren, moet u uw broncodeblok een naam geven. Voeg de optionele #+NAME: tag toe. Deze tag werkt zowel voor tabellen als voor code.

tafel 1.3.1:

X ja z
0 1 4
1 3 6
2 4 8

Met de calc-module kunt u gegevens invoeren en de resultaten in het document laten weergeven.

#+begin_src calc :var x=5 :var y=2 :export beide
2+a**x**y
#+end_src

Eerst wordt de code weergegeven, in de vorm die u opgeeft. Direct hieronder worden de resultaten getoond.

2+a**x**y
25 a + 2

Dit is een heel eenvoudig voorbeeld, met ondersteuning voor LaTeX kun je elke gewenste formule krijgen met het resultaat in een zeer goed opgemaakt document. EEN

\beginvergelijking
x=\sqrtb
\endvergelijking

Als u plots met uw code maakt, kunt u die in het document weergeven. Hieronder zie je een heel eenvoudige code die gnuplot gebruikt om het resultaat van x2 . te plotten.

f(x) = x**2
plot f(x)

Om dit te laten werken, moet gnuplot op uw systeem zijn geïnstalleerd. Deze functies worden allemaal vanuit het systeem aangeroepen en gepresenteerd in Emacs. Hetzelfde geldt voor alle programmeertalen die Emacs ondersteunt.

Niet alle code wordt standaard ondersteund

Omwille van de efficiëntie zijn niet alle ondersteunde talen actief in een vanille-installatie van Emacs. Om er zeker van te zijn dat het actief is, kun je code toevoegen aan je emacs-configuratie, init.el is het standaardbestand.

'(org-babel-load-talen
(citaat
((Python . t)
(emacs-lisp . t)
(schelp . t)
(js . t)
(sqlite . t)
(berekend . t))))

De bovenstaande code maakt zes talen mogelijk door ze in te stellen op 't'. de 't' is de gebruikelijke manier in Lisp om waar te zeggen. Je kunt er ook voor kiezen om deze waarde in te stellen met de 'M-x customize-variable' methode. Wanneer u dit doet, moet u de naam van de variabele of groep typen. In dit geval is de variabele 'org-babel-load-languages'. Wanneer u naar de pagina komt, kunt u zien wat wordt ondersteund en de gewenste activeren.

Een taal toevoegen

Als uw taal niet in de lijst staat, kunt u taal zoeken op https://orgmode.org/worg/org-contrib/babel/talen.Momenteel.html De lijst met ondersteunde talen is al lang en groeit met de dag. Let op: ondersteuning voor een taal is alleen vereist voor de evaluatie. Bekijken, exporteren en in de war raken wordt zonder dit ondersteund. Op de genoemde webpagina heb je ook talen bijgedragen die wat meer werk vergen om te installeren. Als je je taal nog steeds niet kunt zien, is er een sjabloon om deze zelf toe te voegen. Dit vereist wat lisp-programmeervaardigheden, maar als je naar de andere talen kijkt, zou je het moeten kunnen toevoegen, zelfs met een kleine ervaring.

Conclusie

Dit artikel heeft slechts het oppervlak bekrast van wat u kunt doen met de org-modus. Er zijn meer functies beschikbaar en Emacs een eenvoudige editor noemen, bewijst jezelf een slechte dienst.

Beste spellen om te spelen met handtracking
Oculus Quest introduceerde onlangs het geweldige idee van handtracking zonder controllers. Met een steeds toenemend aantal games en activiteiten die f...
OSD-overlay tonen in Linux-apps en -games op volledig scherm
Het spelen van games op volledig scherm of het gebruik van apps in de modus volledig scherm zonder afleiding kan u afsnijden van relevante systeeminfo...
Top 5 Game Capture-kaarten
We hebben allemaal gezien en genoten van streaming gameplays op YouTube. PewDiePie, Jakesepticye en Markiplier zijn slechts enkele van de beste gamers...