Il existe de nombreux éditeurs de texte ainsi que des outils de développement et il est difficile de choisir celui qui leur convient. Je vous propose de vous familiariser avec les meilleurs représentants de cette classe de programmes parmi ceux qui sont disponibles pour Linux OS et qui sont open source.

L'ouverture de la saison, ou plutôt des saisons, est Atom, en raison de l'incroyable combinaison de design moderne, de flexibilité et d'extensions. Cependant, à la recherche de fonctionnalités, les développeurs ont négligé un détail petit mais important à cause duquel il y a beaucoup d'inconvénients.
L'installation
D'une certaine manière, ils ont écrit à son sujet sur Habré dans le contexte de la comparaison des éditeurs de texte et des outils de développement pour Windows, mais depuis, beaucoup d'eau a coulé et les utilisateurs du système d'exploitation Linux ne seront pas surpris par le fait qu'un bon éditeur est également gratuit.
L'installation de l'éditeur n'est pas différente de l'installation de tout autre package à partir des référentiels, mais pour Gentoo Atom n'est pas encore stabilisé.
(2:53)$ eix -e atom * app-editors/atom : (0) ~1.23.3 (beta) [M]~1.24.0_beta3 {test PYTHON_TARGETS="python2_7"} : https://atom.io : A hackable text editor for the 21st Century
Vous pouvez installer une option instable en pré-enregistrant
app-editors/atom ~amd64
dans le fichier /etc/portage/package.accept_keywords
. Cependant, cela vous permet uniquement d'installer l'ancienne version.
(2:56)$ sudo emerge -av app-editors/atom These are the packages that would be merged, in order: Calculating dependencies... done! ... < > app-editors/atom-1.23.3::gentoo
Par conséquent, je propose un petit coin coupé. Téléchargez le dernier fichier deb et installez la commande dpkg
, qui est également disponible dans Gentoo.
(2:62)$ sudo dpkg --no-force-depends -i atom-amd64.deb
L'équipe émet un nuage d'avertissements, mais l'éditeur est donc installé silencieusement.
Caractéristiques du projet nucléaire
La ligne courte du projet est le slogan d' un éditeur de texte piratable pour le 21e siècle . Cela peut être traduit comme un éditeur de texte facilement reprogrammable pour le 21e siècle .
C'est précisément sa caractéristique qui est probablement la clé. Atom a non seulement des outils puissants pour les besoins d'un rédacteur technique et développeur, mais a également la possibilité de changer et de personnaliser quoi que ce soit.
Vous pouvez même changer l'apparence de l'éditeur, si vous connaissez JavaScript, pour une partie importante des lecteurs Habré ce n'est pas une question à en juger par le nuage de tags . En fait, tout est un peu différent.
Presque tous les paramètres sont stockés dans des fichiers CSON et ressemblent à ceci:
"*": core: telemetryConsent: "limited" themes: [ "one-dark-ui" "base16-tomorrow-light-theme" ] "exception-reporting": userId: "b5dd74b8-b105-47ef-b89b-4e0f21b8d946"

Si cela vous rappelle JSON, alors vous n'êtes pas si loin de la vérité, c'est son cousin, pour ainsi dire. Peut-être CSON pas si vyrviglazny plus lisible du fait qu'il a moins de crochets, il n'est pas nécessaire de tout citer et de s'échapper. A titre de comparaison, le même objet dans deux dialectes.
Objet JSON { "greatDocumentaries": [ "earthlings.com", "forksoverknives.com", "cowspiracy.com" ], "importantFacts": { "emissions": "Livestock and their byproducts account for at least 32,000 million tons of carbon dioxide (CO2) per year, or 51% of all worldwide greenhouse gas emissions.\nGoodland, R Anhang, J. “Livestock and Climate Change: What if the key actors in climate change were pigs, chickens and cows?”\nWorldWatch, November/December 2009. Worldwatch Institute, Washington, DC, USA. Pp. 10–19.\nhttp://www.worldwatch.org/node/6294", "milk": "1,000 gallons of water are required to produce 1 gallon of milk.\n“Water trivia facts.” United States Environmental Protection Agency.\nhttp://water.epa.gov/learn/kids/drinkingwater/water_trivia_facts.cfm#_edn11", "more": "http://cowspiracy.com/facts" } }
Et la même chose dans CSON.
Objet CSON # !!! # ! greatDocumentaries: [ 'earthlings.com' 'forksoverknives.com' 'cowspiracy.com' ] # ! importantFacts: # ! ! emissions: ''' Livestock and their byproducts account for at least 32,000 million tons of carbon dioxide (CO2) per year, or 51% of all worldwide greenhouse gas emissions. Goodland, R Anhang, J. “Livestock and Climate Change: What if the key actors in climate change were pigs, chickens and cows?” WorldWatch, November/December 2009. Worldwatch Institute, Washington, DC, USA. Pp. 10–19. http://www.worldwatch.org/node/6294 ''' milk: ''' 1,000 gallons of water are required to produce 1 gallon of milk. “Water trivia facts.” United States Environmental Protection Agency. http://water.epa.gov/learn/kids/drinkingwater/water_trivia_facts.cfm#_edn11 ''' more: 'http://cowspiracy.com/facts'
Les styles sont modifiés grâce aux modifications apportées aux fichiers *.less
. Par exemple, pour changer l'apparence de l'état d'une barre, il est nécessaire d'enregistrer ~/.atom/styles.less
dans le fichier.
.status-bar { color: white; background-color: black; }

Au fait, pourquoi *.less
au lieu de *.css
? Less est un préprocesseur CSS. Cependant, vous pouvez écrire des styles CSS ordinaires avec *.less
calm soul dans des fichiers *.less
, le gestionnaire perçoit les deux options également.
Les raccourcis clavier sont également modifiés en modifiant le fichier CSON, les paramètres sont stockés dans le fichier ~./atom/keymap.cson
'atom-text-editor': 'enter': 'editor:newline' 'atom-text-editor[mini] input': 'enter': 'core:confirm'
Cela définit le paramètre pour deux contextes différents de la touche Enter
: en mode édition et en mode sélection à partir de plusieurs options d'invite.
Les paramètres globaux sont définis dans le fichier ~./atom/config.cson

De plus, vous pouvez définir les paramètres séparément pour chaque PL ou langage de balisage à partir du même fichier ~./atom/config.cson
. Quelque chose peut être configuré via l'interface graphique.

Contrairement aux paramètres globaux et ponctuels, le script d'initialisation ~./atom/init.coffee
est écrit en CoffeeScript . Dans les captures d'écran 2-4, vous pouvez voir d'où appeler le script: Edit ⇒ Init Script
. Le code dans le script d'initialisation a un accès complet à l' API Atom , il peut également être écrit en JavaScript simple et appelé ~./atom/init.js
Packages et modularité
Aucun éditeur n'est parfait, mais s'il a une API claire pour les extensions, alors il peut être suffisamment approché de l'idéal. Il me manquait des extensions pour éditer des textes techniques:
- asciidoc-preview
- nombre de mots
et ils volent même sans redémarrer le programme.

Les extensions Atom sont pratiques non seulement pour consommer, mais aussi pour créer. Il y a un package-generator
, dans le menu, vous pouvez l'appeler depuis Packages ⇒ Package Generator
. L'appel de l'utilitaire d'extension entraînera la création de la structure squelettique d'un nouveau projet dans ~/.atom/packages
.
my-package/ ├─ grammars/ ├─ keymaps/ ├─ lib/ ├─ menus/ ├─ spec/ ├─ snippets/ ├─ styles/ ├─ index.js └─ package.json
Github
Un autre point fort de l'éditeur est que son auteur sciage pas n'importe qui sur GitHub, mais GitHub lui-même. Pour cette raison, Atom est initialement intégré à GItHub via l'extension du même nom.

La liste des fonctions git
disponibles via l'onglet Git :
- Initialiser
- Clone
- Succursale
- Stage
- Jeter
- Valider
- Modifier
- Poussez
- Tirer
- Résoudre les conflits
- Afficher les demandes de tirage
Grâce à la liaison des touches, les mêmes fonctions sont disponibles.
L'éditeur lui-même
La modification de code ou de texte technique dans Atom est très pratique, à l'exception d'un malentendu, dont je parlerai dans la sous-rubrique d'une mouche dans la pommade. Il y a tous les outils nécessaires: ajout et substitutions automatiques, extraits, vérification de la syntaxe.

Pour les auteurs Habr nécessaires, Markdown a un aperçu, une coloration syntaxique et la création de tableaux volant à travers le table+tab
.
| Header One | Header Two | | :------------- | :------------- | | Item One | Item Two |
Inconvénients
Le plus important d'entre eux est la vérification orthographique en désordre, hélas, cela ne peut pas être appelé autrement. La vérification orthographique est une couture complète en ce qui concerne non pas le PJ, mais le langage ordinaire. Pour une raison que je ne comprends pas, la vérification orthographique ne fonctionne pas pour la langue russe pour les textes Markdown, Asciidoc et autres types de fichiers. Cela semblerait un petit inconvénient, mais à cause de cela, vous ne pouvez pas utiliser l'éditeur normalement.
Il y a aussi un manque de support R , Vim lui-même n'a pas les inconvénients énumérés, bien qu'il ne soit pas un «éditeur du 21e siècle».
En général, je considère Atom comme un éditeur approprié et utile qui arrivera à la bonne étape et pourra devenir, sinon remplacer Vim, au moins son assistant principal.