<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Editor Archives - Freigiebigkeit</title>
	<atom:link href="https://karsten-reincke.de/tag/editor/feed/" rel="self" type="application/rss+xml" />
	<link></link>
	<description>(Fach-) Informatik vom Dorf</description>
	<lastBuildDate>Sat, 10 Jan 2026 09:49:18 +0000</lastBuildDate>
	<language>de</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9.4</generator>
	<item>
		<title>Über tote Pferde: Atom vs. VSCod[e&#124;ium]</title>
		<link>https://karsten-reincke.de/vscodium/</link>
					<comments>https://karsten-reincke.de/vscodium/#respond</comments>
		
		<dc:creator><![CDATA[Karsten Reincke]]></dc:creator>
		<pubDate>Wed, 16 Nov 2022 19:53:39 +0000</pubDate>
				<category><![CDATA[Open-Source]]></category>
		<category><![CDATA[Tools]]></category>
		<category><![CDATA[Editor]]></category>
		<guid isPermaLink="false">http://127.0.0.1/kr/?p=4289</guid>

					<description><![CDATA[<p>Es heißt, “Atom and all repositories under Atom will be archived on December 15, 2022”. Denn der von GitHub entwickelte, editierbare Editor für das 21st Jahrhundert sei über die letzten Jahre nicht signifikant weiterentwickelt worden. Darum werde dieser Editor in den Ruhestand geschickt — zugunsten von “Microsoft Visual Studio Code. Und das, wo ich Atom [&#8230;]</p>
<p>The post <a href="https://karsten-reincke.de/vscodium/">Über tote Pferde: Atom vs. VSCod[e|ium]</a> appeared first on <a href="https://karsten-reincke.de">Freigiebigkeit</a>.</p>
]]></description>
										<content:encoded><![CDATA[<div class="wp-block-image"><figure class="alignleft size-medium is-resized is-style-default "><a href="https://karsten-reincke.de/wp-content/uploads/2023/05/dead-horse-pxh-1142556-600x900-1.png" data-fancybox><img decoding="async" src="https://karsten-reincke.de/wp-content/uploads/2023/05/dead-horse-pxh-1142556-600x900-1-200x300.png" alt="Riding a dead horse" width="60"></a></figure></div>



<p><a href="https://atom.io/">Es heißt</a>, “<em>Atom and all repositories under Atom will be archived on December 15, 2022”</em>. Denn <a href="https://en.wikipedia.org/wiki/Atom_(text_editor)">der von GitHub entwickelte</a>, <a href="https://atom.io/">editierbare Editor für das 21st Jahrhundert</a> sei <a href="https://github.blog/2022-06-08-sunsetting-atom/">über die letzten Jahre nicht signifikant weiterentwickelt worden</a>. Darum werde dieser Editor in den Ruhestand geschickt — <a href="https://github.blog/2022-06-08-sunsetting-atom/">zugunsten von “Microsoft Visual Studio Code</a>. Und das, wo ich <a href="https://karsten-reincke.de/atom-ubuntu/">Atom so geliebt</a> habe. Besonders <a href="https://karsten-reincke.de/atom-and-vim/">mit VI-Mode</a>! Was also tun?<span id="more-4289"></span></p>



<p class="has-text-align-right"></p><div class="container"><div class="d-flex justify-content-end sample-row"><div class="col-xs"><div class="text-right">[ de | <a href="http://127.0.0.1/wpd.fd/vscodium">en</a> ]</div></div></div></div>



<div style="height:27px" aria-hidden="true" class="wp-block-spacer"></div>



<p>Dass <a href="https://www.heise.de/newsticker/meldung/Uebernahme-von-GitHub-durch-Microsoft-abgeschlossen-4205119.html">Microsoft <em>GitHub</em> im Jahr 2018 gekauft hat</a>, dürfte diese vernünftige Entscheidung erleichtert haben: Denn ein Sponsor sollte seine Kräfte nicht auf zwei identische Produkte aufteilen — auch wenn ich mich dadurch wieder einmal auf einem toten Pferd wiederfinde. Also muss ich ein lebendiges umsteigen. <em>Visual Studio Code</em> ist mir ja schon oft genug von meinen Kollegen empfohlen worden. Aber es sollte mir dann auch all das ermöglichen, was ich in den letzten Jahren mit Atom machen konnte.</p>



<h2 class="wp-block-heading">2. Was stimmt nicht mit <em>Visual Studio Code</em>?</h2>



<p>“Microsoft Visual Studio Code” sei Open-Source-Software, heißt es. Doch die Situation ist kompliziert:</p>



<ul class="wp-block-list">
<li>Ja, <a href="https://github.com/microsoft/vscode">der Kern von “Visual Studio Code” — genannt <em>Code-OSS</em></a> — wird als Freie Software unter der <a href="https://github.com/microsoft/vscode/blob/main/LICENSE.txt">MIT-Lizenz</a> angeboten.</li>



<li>Aber zuletzt macht MS damit mehr: Es nimmt den Kern, reichert ihn an und bettet ihn in sein eigenes Produktbiotop ein: <a href="https://analyticsindiamag.com">*VS Code sei eine von Microsoft lizenzierte Distribution von *Code-OSS*</a>, die Microsoft-eigene Elemente wie die Integration des Visual Studio Marketplace und das Telemetriesystem enthalte, die in <em>Code-OSS</em> nicht verfügbar seien. <a href="https://code.visualstudio.com/License/">Dem entsprechend wird “VS Code” unter den Bedingungen einer spezifischen Microsoft-Lizenz vertrieben</a>.</li>



<li>Auch wenn man <a href="https://code.visualstudio.com/docs/getstarted/telemetry">das Senden der Telemetriedaten unterbinden</a> kann, bleibt der eigentliche Stein des Anstoßes bestehen: Die Funktionalität von <em>VSCode</em> kann durch <em>Extensionen</em> aus dem <a href="https://marketplace.visualstudio.com/VSCode"><em>Visual Studio Marketplace</em></a> erweitert werden. Allerdings seien diese Erweiterungen — wie es in den <a href="https://cdn.vsassets.io/v/M190_20210811.1/_content/Microsoft-Visual-Studio-Marketplace-Terms-of-Use.pdf">Nutzungsbedingungen des Microsoft Visual Studio Marketplace}</a> heißt — <em>nur für die Verwendung mit “In-Scope” Produkten und Diensten bestimmt</em> (<a href="https://cdn.vsassets.io/v/M190_20210811.1/_content/Microsoft-Visual-Studio-Marketplace-Terms-of-Use.pdf">§1.b</a>), wobei der Begriff <em>In-Scope Produkte</em> definiert ist als <em>Produkte und Dienste […], die von uns [Microsoft] und GitHub […] angeboten würden</em> (<a href="https://cdn.vsassets.io/v/M190_20210811.1/_content/Microsoft-Visual-Studio-Marketplace-Terms-of-Use.pdf">§0/Opening</a>).</li>
</ul>



<p>Selbst wenn also “VSCode” an sich Open Source ist und MS mit der Basis <em>Code-OSS</em> macht, was erlaubt ist, dürfen die von MS bereitgestellten Erweiterungen dennoch nicht in <em>Code-OSS</em>-Varianten anderer Anbieter verwendet werden, auch wenn diese Erweiterungen ihrerseits freie Software sind.</p>



<p>Rechtlich mag das in Ordnung sein, aber es müffelt. Also habe ich nach einer Alternative gesucht. Hier das Ergebnis meiner Bemühungen:</p>



<h2 class="wp-block-heading">3. Was stimmt nicht mir <em>VSCcodium</em>?</h2>



<p><em>VSCodium</em> will die Lizenzprobleme von VSCode lösen und liefert <a href="https://vscodium.com/"><em>Binaries […] lizenziert unter der MIT-Lizenz (mit deaktivierter) Telemetrie […]</em></a>. Folglich gehört <em>VSCodium</em> zu den Varianten, die Extensionen aus dem <em>Visual Studio Marketplace</em> gerade nicht installieren dürfen, <a href="https://github.com/VSCodium/vscodium/">selbst wenn das technisch möglich ist</a>.</p>



<p>Um das Problem zu entschärfen, wurde ein <a href="https://open-vsx.org/">anderer Marktplatz mit Extensionen <em>für VS Code kompatible Editoren</em></a> eingerichtet: OPEN VSX. Damit ist allerdings eine andere Herausforderung verbunden: <em>Da (Open VSX) ein recht neues Projekt ist, werden wahrscheinlich einige Erweiterungen fehlen, die man aus dem ‘VS Code Marketplace’ kennt</em>.</p>



<p>Es braucht also ein wenig Gehirnschmalz, Freude am Ausprobieren und Offenheit für Alternativen, um seine VSCodium-Instanz genauso zum Laufen zu bringen wie zuvor die Instanz von Atom.</p>



<h2 class="wp-block-heading">4. Was konnte mein Atom-Editor?</h2>



<p>Meine Atom-Instanz bot mir</p>



<ul class="wp-block-list">
<li>[x] die Textbearbeitung mit Vim-Befehlen</li>



<li>[x] Syntax-Hervorhebung für</li>



<li>[x] Markdown-Dateien (mit GitHub-Flavor)</li>



<li>[x] LaTeX-Dateien</li>



<li>[x] LilyPond-Dateien</li>



<li>[x] Javascript, CSS, HTML</li>



<li>[x] eine Markdown-Vorschau</li>



<li>[x] die Konvertierung von Markdown-Dateien ins PDF-Format</li>



<li>[x] eine Rechtschreibungprüfung, sogar in mehrsprachigen Dokumenten</li>



<li>[x] eine Einrückung mit Blanks statt Tabs</li>
</ul>



<p>Außerdem gab es viele weitere Optionen. Aber dies waren die, die ich regelmäßig benutzte.</p>



<h2 class="wp-block-heading">5. <em>VSCodium</em> als Ersatz für <em>Atom</em></h2>



<h3 class="wp-block-heading">5.1 <em>VSCodium</em> unter Ubuntu 22.04 installieren</h3>



<p>Der folgende Abschnitt folgt einem Artikel von linuxcapable.com((Stand 2023-07-21 leider nicht mehr engboten)):</p>



<ol class="wp-block-list">
<li>Aktualisiere Deine Installation mit <code>sudo apt update &amp;&amp; sudo apt upgrade</code></li>



<li>Installiere einen speziellen Layer per <code>sudo apt install apt-transport-https gnupg2 -y</code></li>



<li>Integriere den <em>VSCodium</em>-Schlüssel in Dein Schlüsselbund mit <code>wget -O- https://gitlab.com/paulcarroty/vscodium-deb-rpm-repo/raw/master/pub.gpg | sudo gpg --dearmor | sudo tee /usr/share/keyrings/vscodium.gpg</code></li>



<li>Integriere das <em>VSCodium</em>-Repository in Deine Quellenliste per <code>echo deb [signed-by=/usr/share/keyrings/vscodium.gpg] https://download.vscodium.com/debs vscodium main | sudo tee /etc/apt/sources.list.d/vscodium.list</code></li>



<li>Aktualisiere den jetzt zugänglichen Paketbestand per <code>sudo apt update</code></li>



<li>Installiere <em>VSCodium</em> mit <code>sudo apt install codium -y</code></li>
</ol>



<h3 class="wp-block-heading">5.2 VSCodium anpassen</h3>



<p>Eins vorab: <em>VSCodium</em> ist von sich aus mit dem <em>OPEN VSX Marketplace</em> verknüpft. So kann frau installieren, was sie will, ohne die Microsoft-Regeln zu verletzen</p>



<h4 class="wp-block-heading">5.2.1 VSCodium konfigurieren</h4>



<p>Als Erstes sollte frau <em>VSCodium</em> mit den vorhandenen Mitteln konfigurieren, indem sie <code>File/Preferences/Settings</code> aufruft und die folgenden Werte einträgt</p>



<ol class="wp-block-list">
<li><code>Text-Editor: Tab Size =&gt; 2</code> <em>(keine Platzverschwendung)</em></li>



<li><code>Text-Editor: Insert Spaces =&gt; true</code> <em>(Gleiches Erscheinungsbild in verschiedenen Editoren)</em></li>



<li><code>Text-Editor: Word Wrap =&gt; on</code> <em>(keine manuell eingefügten Zeilenumbrüche in Absätzen)</em></li>



<li><code>Text-Editor: Bracket Pair Colorization =&gt; true</code> <em>(verirre Dich nicht in Deinem Code)</em></li>



<li><code>Text-Editor: Code Lense =&gt; true</code> <em>(erlaube Kontextinformationen)</em></li>
</ol>



<p>Für die folgende Schritte rufe dann <code>File/Preferences/Extensions</code> auf, suche im Marketplace nach den folgenden Erweiterungen und drücke dort <code>install</code>:</p>



<h4 class="wp-block-heading">5.2.2 Ein guter VIM-Modus</h4>



<p>Der <em>Open VSX Marketplace</em> bietet einige VIM-Erweiterungen an. Ich persönlich empfand einen großen Unterschied zwischen dem ursprünglichen Verhalten von <code>vim</code> und dem von denjenigen, die behaupten, <code>vim</code> zu emulieren: einige davon beschränken sich auf Syntax-Highlighting, andere implementieren die <code>:</code>-Befehle nicht (angemessen). Letztendlich landete ich bei <em>VSode Neovim</em>. Diese Erweiterung erfordert jedoch eine Vorbereitung auf Ubuntu-Ebene:</p>



<ul class="wp-block-list">
<li>Öffne eine Linux-Shell und gib <code>sudo apt-get remove vim</code> und <code>sudo apt-get install neovim</code> ein.</li>



<li>Öffne in <em>VSCodium</em> <code>File/Preferences/Extensions</code>, gib <em>vim</em> in das Suchfeld ein und installiere <em>VSCode Neovim</em></li>
</ul>



<h4 class="wp-block-heading">5.2.3 Eine gute Markdown-Umgebung</h4>



<ul class="wp-block-list">
<li>Öffne in VSCodium <code>File/Preferences/Extensions</code>, gib Markdown ins Suchfeld ein und installiere</li>



<li><em>Markdown All in One</em> (yzhang)</li>



<li><em>Markdown Checkbox</em> (PKief)</li>



<li><em>Markdown Converter</em> (manuth)</li>
</ul>



<p>Die Vorschaufunktionalität erreichst Du über</p>



<ul class="wp-block-list">
<li>über das Fenstersymbol in der oberen rechten Ecke oder</li>



<li>über <code>View/Command Palette</code> und den Suchtext <code>&gt;Markdown preview</code></li>
</ul>



<p>Um das md-Dokument nach PDF zu konvertieren, nutze <code>View/Command Palette</code> und den Suchtext <code>&gt;Markdown convert</code></p>



<p>Beim ersten Mal wirst Du aufgefordert, eine ‘chromium Instanz’ in den Extensionordner laden zu lassen. Wenn das bei Dir nicht geht, kannst Du ersatzweise in den <code>Settings/Extensions/MarkdownConverter-Options</code> die Variable <em>Chromium Executable Path</em> mit dem Pfad zum Deinem Chromium belegen</p>



<h4 class="wp-block-heading">5.2.4 Eine gute LaTeX-Umgebung</h4>



<p><em>VSCodium</em> hat ein eingebautes Syntaxhighlighting für LaTeX. (Es gibt zwar noch eine explizite Erweiterung für die LaTeX-Sprachunterstützung, aber die ist nur für ältere VSCodium-Versionen relevant)</p>



<p>Für die Konvertierung von LaTeX-Dateien nach PDF (usw.) verwende ich die Mittel und Werkzeuge auf Ubuntu-Ebene.</p>



<h4 class="wp-block-heading">5.2.5 Eine gute Lilypond-Umgebung</h4>



<ul class="wp-block-list">
<li>Öffne in VSCodium <code>File/Preferences/Extensions</code>, gib <em>LilyPond</em> ins Suchfeld ein und installiere <em>LilyPond Syntax (jeandeaual)</em></li>
</ul>



<h4 class="wp-block-heading">5.2.6 Eine gute Web-Entwickler-Umgebung</h4>



<p><em>VSCodium</em> bringt ein eingebautes Syntaxhighlighting für <em>HTML</em>, <em>Javascript</em> und <em>CSS</em> mit</p>



<h4 class="wp-block-heading">5.2.7 Eine gute Rechtschreibprüfung für LaTex, Markdown usw.</h4>



<ul class="wp-block-list">
<li>Öffne <code>File/Preferences/Extensions</code> in VSCodium, gib <em>LTeX</em> ein und installiere <em>LTeX LanguageTool …</em> (valentjn) [Hinweis: LTeX ist kein Tippfehler!]</li>



<li>Öffnen <code>File/Preferences/Settings/Extensions/LTeX</code> und trage <code>LTeX:Language =&gt; de-DE</code> ein oder welche Sprache Du auch immer bevorzugst.</li>



<li>Wenn Du ein Dokument in einer anderen Sprache schreiben willst, lasse es mit einem entsprechenden magischen Kommentar beginnen:</li>



<li>in LaTeX: <code>% LTeX:Sprache=en-US</code></li>



<li>in Markdown: <code>&lt;!-- LTeX:Language=en-US --&gt;</code></li>



<li>Wenn Du dann einen fremdsprachigen Abschnitt in Dein Dokument einbinden willst, füge den entsprechenden magischen Kommentar oberhalb dieses Textes eine Zeile danach den entsprechenden ‘Reset-Kommentar’ ein.</li>
</ul>



<h4 class="wp-block-heading">5.2.8 Einige andere hilfreiche Erweiterungen</h4>



<ul class="wp-block-list">
<li><em>Auto Close Tag</em> (formulahendry) (Automatisches Hinzufügen eines HTML/XML-Close-Tags,)</li>



<li><em>Auto Rename Tag</em> (formulahendry) (Automatisches Umbenennen gepaarter HTML/XML-Tags)</li>



<li><em>Better Comments</em> (aaron-bond) (Einfärben und Klassifizieren Ihrer Kommentare: Wichtig, TODO, …)</li>



<li><em>CodeSnap</em> (adpyke) (Schöne Screenshots vom Code über das erweiterte Kontextmenü)</li>



<li>File Utils (sleistner) (Umbenennen, Verschieben, … von Dateien über das erweiterte Kontextmenü)</li>



<li><em>Prettier</em> (esbenp) (Lasse Deine Dokumente einheitlich formatieren)</li>



<li><em>Scheme</em> (jeandeaual) ) (Umgang mit den in Lilypond verwendeten ‘Scheme’-Dokumenten)</li>



<li><em>TODO Highlight</em> (wayou) (Hervorhebung der TODOs in einem Dokument)<br>vscode-pdf (tomoki1207) (Anzeige von PDFs innerhalb von VSCodium)</li>



<li><em>YAML</em> (redhat) (Umgang mit YAML-Dateien)</li>



<li><em>YAML &amp; JSON</em> (hilleer) (Konvertiere YAML nach JSON und umgekehrt)</li>
</ul>



<hr class="wp-block-separator has-alpha-channel-opacity">



<p class="has-text-align-right">Im Übrigen: <i class=" fa-solid fa-venus-mars"></i> <a href="https://karsten-reincke.de/maenner-sind-mitgemeint/">Männer</a> sind <a href="https://karsten-reincke.de/genderismus/">mitgemeint</a>.</p>


<hr class="wp-block-separator has-alpha-channel-opacity">
<h5 class="wp-block-heading"><i class="fa-solid fa-heart-pulse"></i> Und in welchem größere Zusammenhang …</h5> 
  <p class="myPageContext">… steht dieser Text? Nun, <a href="http://127.0.0.1/wpd.kr/kreincke/">mein Leben</a> 
  ist eingebettet in <a href="http://127.0.0.1/wpd.kr/skills/">freie Software</a>, 
  <a href="http://127.0.0.1/wpd.kr/category/lovlyak/">Natur</a> und <a href="http://127.0.0.1/wpd.kr/workshops/">Musik</a>. 
  Manchmal finde ich da abseitigere Wege und <a href="http://127.0.0.1/wpd.kr/cwa/">Tools</a>, die es trotzdem wert 
  sind, geteilt zu werden. Und sei es nur mit meinem vergesslichen zukünftigen ‘ich’. Dem ich gerne immer 
  wieder einmal <a href="http://127.0.0.1/wpd.kr/strato-wordpress-per-ssh/">ein Strato über die Shell</a> ans Herz lege. 
  Oder <a href="http://127.0.0.1/wpd.kr/atom-ubuntu/">passend</a> 
  <a href="http://127.0.0.1/wpd.kr/atom-and-vim/">erweiterte</a> <a href="http://127.0.0.1/wpd.kr/vscodium/">Editoren</a>. 
  Oder uralte <a href="http://127.0.0.1/wpd.kr/gtgt/">Vorarbeiten</a>.
  Manchmal möchte ich dieses ‘ich’ aber auch nur an <a href="http://127.0.0.1/wpd.kr/kippasolidaritaet/">Haltungen</a>, 
  <a href="http://127.0.0.1/wpd.kr/maenner-sind-mitgemeint/">Standpunkte</a> und 
  <a href="http://127.0.0.1/wpd.kr/genderismus/">Einstellungen</a> erinnern. 
  Damit ich nicht hinter mich zurückfalle. Denn gesagt ist gesagt. 
  Darum geht es auch in hier.</p>
<hr class="wp-block-separator has-alpha-channel-opacity">
<p class="has-text-align-right">Im Übrigen: <i class="fa-solid fa-venus-mars"></i> 
<a href="http://127.0.0.1/wpd.kr/wpd.kr/maenner-sind-mitgemeint/">Männer</a> 
sind <a href="http://127.0.0.1/wpd.kr/genderismus/">mitgemeint</a>.</p>
<p>The post <a href="https://karsten-reincke.de/vscodium/">Über tote Pferde: Atom vs. VSCod[e|ium]</a> appeared first on <a href="https://karsten-reincke.de">Freigiebigkeit</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://karsten-reincke.de/vscodium/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Atom und Vi(m)-Plugin: ein Traum wird wahr</title>
		<link>https://karsten-reincke.de/atom-and-vim/</link>
					<comments>https://karsten-reincke.de/atom-and-vim/#comments</comments>
		
		<dc:creator><![CDATA[Karsten Reincke]]></dc:creator>
		<pubDate>Mon, 31 Aug 2020 08:35:26 +0000</pubDate>
				<category><![CDATA[Open-Source]]></category>
		<category><![CDATA[Tools]]></category>
		<category><![CDATA[Editor]]></category>
		<guid isPermaLink="false">http://127.0.0.1/kr/?p=2968</guid>

					<description><![CDATA[<p>Ich liebe den vi(m), insbesondere wenn ich in einem Repository arbeite. Es ist so leicht, schnell mal eben eine Datei per Konsole zu ändern, so einfach alle Trumps durch Biden zu ersetzen: :1,$ s/[Tt]rump/Biden/g. Das hilft sogar bei Strato per ssh. Aber am Desktop habe auch ich bisher natürlich GUI basierte Editoren genutzt, Gedit z.B. [&#8230;]</p>
<p>The post <a href="https://karsten-reincke.de/atom-and-vim/">Atom und Vi(m)-Plugin: ein Traum wird wahr</a> appeared first on <a href="https://karsten-reincke.de">Freigiebigkeit</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>Ich liebe den <strong>vi</strong>(<strong><em>m</em></strong>), insbesondere wenn ich in einem Repository arbeite. Es ist so leicht, schnell mal eben eine Datei per Konsole zu ändern, so einfach alle <em>Trumps</em> durch <em>Biden</em> zu ersetzen: <code>:1,$ s/[Tt]rump/Biden/g</code>. Das hilft <a href="https://karsten-reincke.de/strato-wordpress-per-ssh/">sogar bei Strato per ssh</a>. Aber am Desktop habe auch ich bisher natürlich GUI basierte Editoren genutzt, <em>Gedit</em> z.B. Oder — seit einigen Monaten — <em>Atom</em>. Daher rutschten mir manchmal <em>vi-Befehle</em> wie <code>xi</code> in meine Texte — weil ich vergessen hatte, dass ich einen Desktop-Editor benutzte. Das wird jetzt anders, Atom mit Vi(m)-Plugin sei Dank:<span id="more-2968"></span></p>



<p>Das Plugin <a href="https://github.com/t9md/atom-vim-mode-plus">atom-vim-mode-plus</a> — zu installieren mit dem Shell-Kommando <code>apm install vim-mode-plus</code> — erlaubt uns, die <em>vi(m)</em>-Befehle im <em>Atom</em> zu nutzen!</p>



<h2 class="wp-block-heading">Zu erst ein kleiner Vorbehalt …</h2>



<p>Hat man das Package <em>vim-mode-plus</em> in <em>Atom</em> installiert, kann man nicht mehr direkt mit dem Tippen loslegen. Man muss vorher ein wenig mit den <em>vi-modes</em> vertraut werden: Lädt man eine Datei oder legt, eine neu an startet <em>Atom</em> im <em>visual-mode</em>. Das ist ein <em>vi(m)-</em>Modus, der Kommandos akzeptiert und auf den angezeigten Text anwendet. <code>i</code> ist einer dieser Befehle. Er stößt den Wechsel in den <em>insert-mode</em> an und erlaubt uns, Text einzugeben. Um dann Befehle auf den gerade eingegebenen Text anzuwenden, müssen wir allerdings per <code>esc</code> in den <em>visual mode</em> zurückkehren.</p>



<h2 class="wp-block-heading">… dann einige beruhigende Worte …</h2>



<p><em>Atom</em> bietet von sich aus schon Optionen, seinen Text zu bearbeiten: Man kann Passagen selektieren, ausschneiden, kopieren und wieder einfügen, ganze Zeilen verschieben, Wörter in Großbuchstaben verwandeln u.Ä.m. All diese Möglichkeiten können auch mit installiertem <em>vim-mode-plus</em> genutzt werden, und zwar unabhängig davon, ob man im <em>visual mode</em> or in the <em>insert mode</em> arbeitet. Selbst das <em>Atom</em> eigene ‘Suchen-und-Ersetzen’ funktioniert wie erwartet. Das <em>vim-mode-plus</em>-Plugin erweitert also die Möglichkeiten unseres Editors ’nur’, es verändert sie nicht — außer dass man eben bei der Eingabe von Text den aktuellen Arbeitsmodus im Hinterkopf haben muss.</p>



<h2 class="wp-block-heading">… und schließlich eine Liste neuer Möglichkeiten:</h2>



<p>Der Nachteil der reinen <em>Atom</em>-Fähigkeiten ist, dass man die Maus benutzen muss. Das bremst. <em>vi(m)</em> bietet dagegen den Vorteil, alles über die Tastatur machen zu können. Das erhöht die Arbeitsgeschwindigkeit — selbst wenn man nur mit einem 3‑Fingersystem tippt. Hier ein paar zentrale Eigenschaften vom <em>vi(m)</em>, die jetzt auch im <em>Atom</em> nutzbar sind:</p>



<h3 class="wp-block-heading">Den Cursor platzieren:</h3>



<p>Die vertrauten Pfeiltasten funktionieren wie erwartet, im <em>visual-mode</em> und im <em>insert-mode</em>). Die anderen Kommandos wirken dagegen nur im <em>visual-mode</em>:</p>



<ul class="wp-block-list">
<li>Mit den <em>vim</em>-‘Pfeilersatztasten’ <code>h</code>, <code>j</code> , <code>k</code>, <code>l</code> kann man den Cursor ebenso <strong>nach links</strong>, <strong>nach unten</strong>, <strong>nach oben</strong> und <strong>nach rechts</strong> bewegen. Legt man den Zeigefinger auf einer QWERTZ-Tastatur aufs <em>h</em> und die restlichen drei daneben, merkt man, wie organisch das funktioniert. Wenn man allerdings mit den Pfeiltasten so vertraut ist wie ich, wird man diese Option trotzdem eher selten benutzen.</li>
</ul>



<p>Nützlicher sind da schon die Tasten</p>



<ul class="wp-block-list">
<li><code>w</code> := ein Wort vorwärts</li>



<li><code>b</code> := ein Wort zurück</li>



<li><code>e</code> := zum Ende des Wortes, auf dem der Cursor steht</li>



<li><code>(</code> := zum Anfang des nächsten Satzes</li>



<li><code>)</code> := zum Anfang des aktuellen Satzes</li>
</ul>



<p>Je größer die Distanz ist, die so ein Sprungbefehl zurücklegt, um so stärker die Arbeitsersparnis: Wenn man lange Zeilen mit weichem ‘Word-Wrapping’ als Quasi-Paragraphen verwendet, um dem Nutzer die Zeilen in einer zur gewählten Fensterbreite passenden Länge anzeigen zu lassen — wie es heutzutage oft bei <em>md</em>-Dateien oder in Mails geschieht — dann wird man es begrüßen, nicht mittels der Pfeiltasten Buchstabe für Buchstabe in einer Zeile vor oder zurück navigieren zu müssen. Die folgenden Tasten biete andere große Sprünge:</p>



<ul class="wp-block-list">
<li><code>0</code> := zurück zum Zeilenanfang</li>



<li><code>$</code> := vorwärts zum Zeilenende</li>



<li><code>H</code> := zurück zur ersten im Fenster sichtbaren Zeile</li>



<li><code>M</code> := in die Zeile in der Mitte des Fenster</li>



<li><code>L</code> := vorwärts in die letzte sichtbare Zeile</li>
</ul>



<h3 class="wp-block-heading">Text einfügen und ändern</h3>



<ul class="wp-block-list">
<li><code>i</code> := <strong>unter dem Cursor</strong> Text <em>einfügen</em></li>



<li><code>a</code> := <strong>nach dem Cursor</strong> Text <em>einfügen</em></li>



<li><code>r</code> := das Zeichen <strong>unter dem Cursor</strong> <em>ersetzen</em></li>



<li><code>cw</code> := das Wort <strong>unter dem Cursor</strong> <em>ersetzen</em></li>



<li><code>cc</code> := die Zeile <strong>unter dem Cursor</strong> <em>ersetzen</em></li>



<li><code>R</code> := der Reihe nach alle Zeichen <strong>unter dem Cursor</strong> <em>ersetzen</em> bis man mit <code>esc</code> wieder in den <em>visual-mode</em> wechselt</li>
</ul>



<p>Mit den Kommandos <em>i</em>, <em>a</em>, <em>cw</em>, and <em>cc</em> geht ein Wechsel in den <em>insert-mode</em> einher.</p>



<h3 class="wp-block-heading">Text löschen</h3>



<ul class="wp-block-list">
<li><code>x</code> := <em>löscht</em> das Zeichen <strong>unter dem Cursor</strong></li>



<li><code>dw</code> := <em>löscht</em> das Wort <strong>unter dem Cursor</strong></li>



<li><code>dd</code> := <em>löscht</em> die Zeile <strong>unter dem Cursor</strong></li>



<li><code>D</code> := <em>löscht</em> den Rest der Zeile <strong>vom Cursor bis zu ihrem Ende</strong></li>
</ul>



<p>Der Vorteile der Befehle <em>dw</em> und <em>dd</em> ist, dass sie die gelöschten Teile in einen Puffer kopieren, von wo aus sie mittels <em>p</em> oder <em>P</em> auch an anderer Stelle wieder eingefügt werden können.</p>



<h3 class="wp-block-heading">Kopieren und Einfügen</h3>



<ul class="wp-block-list">
<li><code>yw</code> := <em>kopiert</em> das Wort <strong>unter dem Cursor</strong> in den Puffer</li>



<li><code>yy</code> := <em>kopiert</em> die Zeile <strong>unter dem Cursor</strong> in den Puffer</li>



<li><code>p</code> := <em>fügt</em> den Puffer <strong>nach dem Cursor</strong> ein</li>



<li><code>P</code> := <em>fügt</em> den Puffer <strong>vor dem Cursor</strong> ein</li>
</ul>



<h3 class="wp-block-heading">Rückgängig machen</h3>



<ul class="wp-block-list">
<li><code>u</code> := <strong>die letzte(n) Veränderung(en)</strong> <em>rückgängig machen</em></li>



<li><code>U</code> := <strong>die Zeile unter dem Cursor</strong> <em>wieder herstellen</em></li>
</ul>



<h3 class="wp-block-heading">Suchen</h3>



<ul class="wp-block-list">
<li><code>/ XYZ</code> := nach dem String <em>XYZ</em> <em>suchen</em></li>
</ul>



<h3 class="wp-block-heading">Regex basierte Ersetzungen</h3>



<p>Der <em>vi(m)</em> bietet zusätzlichen einen <em>executing-mode</em>. Drückt man die Taste <code>:</code> und gibt eine Zeilennummer samt Befehl ein, dann wird dieser Befehl auf den Text an der angegebenen Stelle angewendet. So würde z.B. der Befehl <code>: 1,$ s/[Tt]rump/Biden/g</code> alle Vorkommen von <em>Trump</em> oder <em>trump</em> durch <em>Biden</em> ersetzen (<em>s</em>), und zwar von der ersten (<em>1</em>) bis zur letzten Zeile (<em>$</em>).</p>



<p>Solche Ersetzungen ausführen zu können, ist oft hilfreich. Unglücklicherweise kann <em>vim-mode-plus</em> selbst mit dieser Art von Kommandos nichts anfangen. Und sein Autor <a href="https://github.com/t9md/atom-vim-mode-plus/issues/52">hat Vorbehalte, den <em>ex-mode</em> zu implementieren</a>. Stattdessen empfiehlt er, zusätzlich das <a href="https://atom.io/packages/ex-mode">Plugin / Package <em>ex-mode</em> </a>per <code>apm install ex-mode</code> zu installieren.</p>



<p>Und tatsächlich funktioniert das bestens.</p>



<h2 class="wp-block-heading">Fazit:</h2>



<p>Die Plugins <em>vim-mode-plus</em> und <em>ex-mode</em> in <em>Atom</em> zu installieren, bietet uns wirklich die Möglichkeit, die Fähigkeiten eines graphischen Editors wie <em>Atom</em> und die <em>vi(m)</em>-Eigenschaften kombiniert zu nutzen. Mit anderen Worten: ein Traum ist wahr geworden.</p>


<hr class="wp-block-separator has-alpha-channel-opacity">
<h5 class="wp-block-heading"><i class="fa-solid fa-heart-pulse"></i> Und in welchem größere Zusammenhang …</h5> 
  <p class="myPageContext">… steht dieser Text? Nun, <a href="http://127.0.0.1/wpd.kr/kreincke/">mein Leben</a> 
  ist eingebettet in <a href="http://127.0.0.1/wpd.kr/skills/">freie Software</a>, 
  <a href="http://127.0.0.1/wpd.kr/category/lovlyak/">Natur</a> und <a href="http://127.0.0.1/wpd.kr/workshops/">Musik</a>. 
  Manchmal finde ich da abseitigere Wege und <a href="http://127.0.0.1/wpd.kr/cwa/">Tools</a>, die es trotzdem wert 
  sind, geteilt zu werden. Und sei es nur mit meinem vergesslichen zukünftigen ‘ich’. Dem ich gerne immer 
  wieder einmal <a href="http://127.0.0.1/wpd.kr/strato-wordpress-per-ssh/">ein Strato über die Shell</a> ans Herz lege. 
  Oder <a href="http://127.0.0.1/wpd.kr/atom-ubuntu/">passend</a> 
  <a href="http://127.0.0.1/wpd.kr/atom-and-vim/">erweiterte</a> <a href="http://127.0.0.1/wpd.kr/vscodium/">Editoren</a>. 
  Oder uralte <a href="http://127.0.0.1/wpd.kr/gtgt/">Vorarbeiten</a>.
  Manchmal möchte ich dieses ‘ich’ aber auch nur an <a href="http://127.0.0.1/wpd.kr/kippasolidaritaet/">Haltungen</a>, 
  <a href="http://127.0.0.1/wpd.kr/maenner-sind-mitgemeint/">Standpunkte</a> und 
  <a href="http://127.0.0.1/wpd.kr/genderismus/">Einstellungen</a> erinnern. 
  Damit ich nicht hinter mich zurückfalle. Denn gesagt ist gesagt. 
  Darum geht es auch in hier.</p>
<hr class="wp-block-separator has-alpha-channel-opacity">
<p class="has-text-align-right">Im Übrigen: <i class="fa-solid fa-venus-mars"></i> 
<a href="http://127.0.0.1/wpd.kr/wpd.kr/maenner-sind-mitgemeint/">Männer</a> 
sind <a href="http://127.0.0.1/wpd.kr/genderismus/">mitgemeint</a>.</p>
<p>The post <a href="https://karsten-reincke.de/atom-and-vim/">Atom und Vi(m)-Plugin: ein Traum wird wahr</a> appeared first on <a href="https://karsten-reincke.de">Freigiebigkeit</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://karsten-reincke.de/atom-and-vim/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
			</item>
		<item>
		<title>Atom unter Ubuntu 20.04</title>
		<link>https://karsten-reincke.de/atom-ubuntu/</link>
					<comments>https://karsten-reincke.de/atom-ubuntu/#comments</comments>
		
		<dc:creator><![CDATA[Karsten Reincke]]></dc:creator>
		<pubDate>Sun, 09 Aug 2020 11:46:48 +0000</pubDate>
				<category><![CDATA[Open-Source]]></category>
		<category><![CDATA[Tools]]></category>
		<category><![CDATA[Editor]]></category>
		<guid isPermaLink="false">http://127.0.0.1/kr/?p=2887</guid>

					<description><![CDATA[<p>Eigentlich bin ich eine treue Seele. Aber auch meine Geduld ist begrenzt: Die Tipps von Eclipse werden unter Ubuntu 20.04 schwarz auf schwarz angezeigt. Hmm. Markdown-Editoren sind umständlich. Oopps. Und der ‘Spellcheck’ für deutsch-englische Texte geht immer noch nicht. Grrr. Also auf zu neuen Ufern: Geben wir ‘Atom’ unter Ubuntu 20.04 eine Chance, selbst wenn [&#8230;]</p>
<p>The post <a href="https://karsten-reincke.de/atom-ubuntu/">Atom unter Ubuntu 20.04</a> appeared first on <a href="https://karsten-reincke.de">Freigiebigkeit</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>Eigentlich bin ich eine treue Seele. Aber auch meine Geduld ist begrenzt: Die Tipps von Eclipse werden unter Ubuntu 20.04 schwarz auf schwarz angezeigt. Hmm. Markdown-Editoren sind umständlich. Oopps. Und der ‘Spellcheck’ für deutsch-englische Texte geht immer noch nicht. Grrr. Also auf zu neuen Ufern: Geben wir ‘<a href="https://atom.io/">Atom</a>’ unter Ubuntu 20.04 eine Chance, selbst wenn wir dafür einige Klippen umschiffen müssen.<span id="more-2887"></span></p>


<div class="container"><div class="d-flex justify-content-end sample-row"><div class="col-xs"><div class="text-right">[ de | <a href="http://127.0.0.1/wpd.fd/atom-ubuntu">en</a> ]</div></div></div></div>



<div style="height:25px" aria-hidden="true" class="wp-block-spacer"></div>



<p>Legen wir zuerst genauer fest, was Atom bieten muss, um (uns) zu gefallen:</p>



<ul class="wp-block-list">
<li>Rechtschreibprüfung für deutsch-englische Texte</li>



<li>bei gleichzeitigem Syntax-Highlighting</li>



<li>und Code-Completion für Latex, Markdown, HTML PHP, C/C++, Java, bash</li>



<li>Nahtlose Integration in eine mobile Laptop-Arbeitsumgebung</li>



<li>Gute Markdown-Unterstützung.</li>
</ul>



<p>Und machen wir uns dann daran, den Editor zu installieren und zu konfigurieren:</p>



<h2 class="wp-block-heading">Die Standard-Ubuntu-Methode: Geradeaus klappt’s nicht!</h2>



<p>Mit der Version 20.04 wird das neue Snap-Paketformat zum kaum zu umgehenden Standardformat. Viele Programme — darunter ‘Atom’ — werden schon gar nicht mehr als Debian-Pakete angeboten, sondern müssen via Ubuntu-Software-Center als Snap-Pakete installiert werden. Das klappt auf den ersten Blick — und ’scheitert’ beim nächsten Hinsehen:</p>



<ul class="wp-block-list">
<li>So wurde meine erste Installation nach einigen Tagen nicht mehr im Bestand geführt: weder <code>snap list atom</code> noch <code>snap list --all</code> listete ‘Atom’ noch auf, obwohl ich den Editor doch immer noch aufrufen konnte. Systemisch war das Paket damit auch von allen Updates abgeschnitten. Die Lösung war ’simple’: ‘Atom’ einfach noch einmal per Ubuntu-Software-Center installieren. Danach lies sich der Editor auch wieder finden und rückstandslos per <code>snap remove atom</code> entfernen (und wieder installieren)</li>



<li>Nur reagierte die Version — <a href="ttps://github.com/atom/atom/issues/20942">wie im Netz beschrieben</a> — immer noch unschön: Sie öffnete — unverhinderbar — bei jedem Aufruf zwei völlig nutzlose Dokumente.</li>
</ul>



<p>Damit schied diese Variante aus: Wenn ich mich weiter nerven lassen wollte, hätte ich auch bei Eclipse bleiben können.</p>



<h2 class="wp-block-heading">Auch der .deb-Umweg scheitert.</h2>



<p>Die offizielle <a href="https://flight-manual.atom.io/getting-started/sections/installing-atom/">Atom-Dokumentation</a> beschreibt zwei Wege zur Installation von Atom. Beim einfacheren Weg lädt man sich das .deb-Paket herunter und installiert es mit <code>sudo dpkg -i atom-amd64.deb</code>. Leider scheitert das unaufgelöster Abhängigkeiten wegen.</p>



<h2 class="wp-block-heading">Aber wenigstens der komplexe Weg führt weiter …</h2>



<p>Dabei lädt man zuerst den Schlüssel runter, erweitert die <em>apt sources</em>, macht ein update und installiert das Paket:</p>



<pre class="wp-block-code"><code>1. wget -qO - https://packagecloud.io/AtomEditor/atom/gpgkey | sudo apt-key add -
2. sudo sh -c 'echo "deb [arch=amd64] https://packagecloud.io/AtomEditor/atom/any/ any main" &gt; /etc/apt/sources.list.d/atom.list'
3. sudo apt-get update
4. sudo apt-get install atom</code></pre>



<p>Und tatsächlich erhält man ein in den Ubuntu GNOME 3 Desktop integrierten Editor.</p>



<h2 class="wp-block-heading">… bedarf aber noch zusätzlicher Pakete …</h2>



<p>Offiziell lässt sich Atom über ein integriertes Interface erweitern, das frau per <code>Edit/Preferences/Install</code> (Linux) bzw. <code>File/Settings/Install</code> (Windows) erreicht: Über das obere Textfeld lässt man das gewünschte Package suchen, über die dann erscheinende ‘Karteikarte’ installieren.</p>



<p>Gelegentlich funktioniert die integrierte Suche nicht. Jeder Aufruf endet im Fehler <code>i.filter is not a function [object Object]</code>, was nicht Ubuntu geschuldet ist, sondern dem <a href="https://stackoverflow.com/questions/63029449/getting-i-filter-is-not-a-function-in-atom-while-searching-for-a-package">Atom Server</a>. In solchen Fällen kommt frau auf Umwegen zum Ziel: Sie sucht per <em>Google</em> nach dem Paket und wird (meist) auf einen Treffer unter <a href="https://atom.io/packages/">https://atom.io/packages/</a> geleitet. Dort findet sich jeweils auch eine Hinweis zur manuellen Installation. In der Regel braucht man auf der Konsole nur <code>apm install $packagename</code> einzugeben. Das Paket wird dann unter <code>.atom/packages</code> installiert und bei jedem Neustart geladen.</p>



<p>Damit können wir uns die zusätzlichen Pakete holen, die wir brauchen:</p>



<ul class="wp-block-list">
<li>Zum ersten wollen wir ‘Atom’ als LaTeX-Editor verwenden. Dafür müssen wir ihm die LaTeX-Syntax beibringen: <code>apm install language-latex</code></li>



<li>Dann wollen wir ‘Atom’ u.U. auch als LaTeX-IDE verwenden, also müssen wir ihm die LaTeX-Build-Kommandos zugänglich machen: <code>apm install latex</code></li>



<li>Außerdem soll ‘Atom’ unsere Rechtschreibung überprüfen, und zwar in deutschen und englischen Texten. Die Mehrsprachigkeit werden wir später konfigurativ aktivieren. ‘Atom’ darf uns aber nicht jeden LaTeX-Befehl als Fehler ankreiden. Und es soll unseren Code überprüfen. Das müssen wir ihm per <em>Linter</em> und Submodule beibringen <code>apm install linter linter-spell linter-ui-default linter-spell-latex</code>. Für die anderen Sprachen gibt es entsprechendes, z.B. <code>apt install linter-php</code></li>



<li>Schließlich wollen wir ‘Atom’ auch nutzen, wenn wir mit dem Laptop auf der sonnigen Terrasse sitzen. Dabei hindert der Dark-Mode sehr. Glücklicherweise gibt es ein Package, mit dem man schnell mal zwischen Hell-und-Dunkel-Ansicht wechseln kann: <code>apm install dark-mode</code>. Den Toggle-Befehl findet man — wie üblich — unter <code>Packages/dark mode</code>.</li>



<li>Für unsere Markdown-Aktivitäten brauchen wir fast nichts zu tun: Das Syntax-Highlighting läuft out-of-the-box. Und über <code>Packages/Markdown Preview</code> können wir uns das nach html konvertierte Dokument direkt ansehen. Um es in eine PDF-Datei umzuwandeln, ohne in die Shell zu <em>pandoc</em> zu wechseln, brauchen wir noch ein Package: <code>apm install markdown-pdf</code>. Nach dem Neustart können wir das Package unter <code>File/Settings/Packages#markdown-pdf</code> konfigurieren und finden unter <code>Packages/Markdown To PDF</code> das Umwandlungskommando.</li>
</ul>



<h2 class="wp-block-heading">… und Anpassungen der Konfiguration:</h2>



<p>Konfigurieren lässt sich ‘Atom’ über zwei Wege: Unter <code>Edit/Preferences</code> (Linux) bzw. <code>File/Settings/</code> (Windows) können unter <code>Core</code> und <code>Editor</code> allgemeine Eigenschaften eingestellt werden. Unter <code>Edit/Preferences/Packages</code> (Linux) bzw. <code>File/Settings/Packages</code> (Windows) erreicht man die installierten Pakete und deren spezifische Konfigurationsmöglichkeiten.</p>



<p>Wir benötigen beide Methoden:</p>



<ul class="wp-block-list">
<li>Zum ersten soll unser ‘Atom’ ein <em>Softwrap</em> verwenden, also eine lange Textteile automatisch umbrechen, ohne die Zeile wirklich mit einen <code>LF</code> (Linux) bzw. <code>CR LF</code> (Windows) umzubrechen. Dazu aktivieren wir unter <code>Edit/Preferences#Editor</code> das <em>Soft Wrap</em> mittels eines Hakens. Dazu legen wir dann auch noch fest, dass der virtuelle Umbruch nicht am Fensterrand erfolgt, sondern an der maximalen Zeilenbreite <em>Soft Wrap At Preferred Line Length</em></li>



<li>Dann soll unser ‘Atom’ die Rechtschreibung in gemischtsprachigen Texten überprüfen können. Dazu konfigurieren wir das Package <code>Edit/Preferences/Packages/spell-check</code> entsprechend:
<ul class="wp-block-list">
<li>Wir aktivieren <code>Use Locales</code> per Häkchen.</li>



<li>Und wir tragen in das Feld <em>Locales</em> <code>en-US, de_DE</code> ein.</li>
</ul>
</li>
</ul>



<h2 class="wp-block-heading">Und damit haben wir, was wir wollten:</h2>



<p>‘Atom’ tritt als <a href="https://atom.io/">hackable text editor</a> an. Das Netz weiß um <a href="https://www.google.de/search?q=best&amp;q=atom&amp;q=package">seine besten Erweiterung</a>. Man braucht sich nur inspirieren zu lassen. Die Methoden bleiben die, die wir hier angewendet und mit denen wir unsere Ziele erreicht haben:</p>



<figure class="wp-block-table"><table><thead><tr><th></th><th>Feature</th><th>Status</th></tr></thead><tbody><tr><td>1.)</td><td>Rechtschreibprüfung für gemischtsprachige Texte</td><td>✓</td></tr><tr><td>2.)</td><td>Kontextsensitive Rechtschreibprüfung in Programmiersprachen</td><td>✓</td></tr><tr><td>3.)</td><td>Syntax-Highlighting für Latex, HTML PHP, C/C++, Java, bash</td><td>✓</td></tr><tr><td>4.)</td><td>Code-Completion für Latex, HTML PHP, C/C++, Java, bash</td><td>✓</td></tr><tr><td>5.)</td><td>Integration in ein Laptop auch für sonnige Arbeitsplätze</td><td>✓</td></tr><tr><td>6.)</td><td>Markdown-Unterstützung</td><td>✓</td></tr></tbody></table></figure>



<h2 class="wp-block-heading">Ein letztes Geständnis</h2>



<p>Ganz weglegen werde ich <em>Eclipse</em> nicht. Denn kein Tool bietet mit den Modulen <em>XText</em> und <em>XTend</em> einen besseren Support für die Entwicklung domänenspezifischer Sprachen.</p>


<hr class="wp-block-separator has-alpha-channel-opacity">
<h5 class="wp-block-heading"><i class="fa-solid fa-heart-pulse"></i> Und in welchem größere Zusammenhang …</h5> 
  <p class="myPageContext">… steht dieser Text? Nun, <a href="http://127.0.0.1/wpd.kr/kreincke/">mein Leben</a> 
  ist eingebettet in <a href="http://127.0.0.1/wpd.kr/skills/">freie Software</a>, 
  <a href="http://127.0.0.1/wpd.kr/category/lovlyak/">Natur</a> und <a href="http://127.0.0.1/wpd.kr/workshops/">Musik</a>. 
  Manchmal finde ich da abseitigere Wege und <a href="http://127.0.0.1/wpd.kr/cwa/">Tools</a>, die es trotzdem wert 
  sind, geteilt zu werden. Und sei es nur mit meinem vergesslichen zukünftigen ‘ich’. Dem ich gerne immer 
  wieder einmal <a href="http://127.0.0.1/wpd.kr/strato-wordpress-per-ssh/">ein Strato über die Shell</a> ans Herz lege. 
  Oder <a href="http://127.0.0.1/wpd.kr/atom-ubuntu/">passend</a> 
  <a href="http://127.0.0.1/wpd.kr/atom-and-vim/">erweiterte</a> <a href="http://127.0.0.1/wpd.kr/vscodium/">Editoren</a>. 
  Oder uralte <a href="http://127.0.0.1/wpd.kr/gtgt/">Vorarbeiten</a>.
  Manchmal möchte ich dieses ‘ich’ aber auch nur an <a href="http://127.0.0.1/wpd.kr/kippasolidaritaet/">Haltungen</a>, 
  <a href="http://127.0.0.1/wpd.kr/maenner-sind-mitgemeint/">Standpunkte</a> und 
  <a href="http://127.0.0.1/wpd.kr/genderismus/">Einstellungen</a> erinnern. 
  Damit ich nicht hinter mich zurückfalle. Denn gesagt ist gesagt. 
  Darum geht es auch in hier.</p>
<hr class="wp-block-separator has-alpha-channel-opacity">
<p class="has-text-align-right">Im Übrigen: <i class="fa-solid fa-venus-mars"></i> 
<a href="http://127.0.0.1/wpd.kr/wpd.kr/maenner-sind-mitgemeint/">Männer</a> 
sind <a href="http://127.0.0.1/wpd.kr/genderismus/">mitgemeint</a>.</p>
<p>The post <a href="https://karsten-reincke.de/atom-ubuntu/">Atom unter Ubuntu 20.04</a> appeared first on <a href="https://karsten-reincke.de">Freigiebigkeit</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://karsten-reincke.de/atom-ubuntu/feed/</wfw:commentRss>
			<slash:comments>2</slash:comments>
		
		
			</item>
	</channel>
</rss>
