La meilleure solution que j'ai trouvée est d'utiliser le bijou de linguiste dans une application Ruby on Rails. C'est une façon un peu particulière de le faire, mais ça marche. Cela a été mentionné plus haut par @nisc mais je vais vous dire comment je l'utilise. (Certaines des commandes de ligne de commande suivantes sont spécifiques à ubuntu mais devraient être facilement traduites pour d'autres OS)
Si vous avez une application rails que vous ne voyez pas d'inconvénient à manipuler temporairement, créez un nouveau fichier pour y insérer le bout de code en question. (Si rails n'est pas installé sur votre ordinateur, il existe un bon guide. aquí bien que pour ubuntu je recommande ce . Ensuite, exécutez rails new <name-your-app-dir>
et cd dans ce répertoire. Tout ce dont vous avez besoin pour exécuter une application rails est déjà là).
Une fois que vous avez une application rails avec laquelle vous pouvez l'utiliser, ajoutez gem 'github-linguist'
à votre Gemfile (littéralement juste appelé Gemfile
dans votre répertoire d'applications, sans ext).
Ensuite, installez ruby-dev ( sudo apt-get install ruby-dev
)
Ensuite, installez cmake ( sudo apt-get install cmake
)
Maintenant, vous pouvez exécuter gem install github-linguist
(si vous obtenez une erreur qui dit que l'icu est nécessaire, faites sudo apt-get install libicu-dev
et réessayer)
(Vous devrez peut-être faire un sudo apt-get update
o sudo apt-get install make
o sudo apt-get install build-essential
si ce qui précède n'a pas fonctionné)
Maintenant, tout est en place. Vous pouvez maintenant l'utiliser à chaque fois que vous voulez vérifier des extraits de code. Dans un éditeur de texte, ouvrez le fichier que vous avez créé pour insérer votre extrait de code (disons qu'il s'agit de app/test.tpl
mais si vous connaissez l'extension de votre snippet, utilisez-la au lieu de .tpl
. Si vous ne connaissez pas l'extension, n'en utilisez pas). Maintenant, collez votre extrait de code dans ce fichier. Allez à la ligne de commande et exécutez bundle install
(doit se trouver dans le répertoire de votre application). Ensuite, exécutez linguist app/test.tpl
(plus généralement linguist <path-to-code-snippet-file>
). Il vous indiquera le type, le type mime et la langue. Pour plusieurs fichiers (ou pour une utilisation générale avec une application ruby/rails) vous pouvez exécuter bundle exec linguist --breakdown
dans le répertoire de votre application.
Cela semble représenter beaucoup de travail supplémentaire, surtout si vous n'avez pas déjà rails, mais vous n'avez en fait pas besoin de savoir QUELQUE CHOSE à propos de rails si vous suivez ces étapes et je n'ai pas vraiment trouvé de meilleur moyen de détecter la langue d'un fichier ou d'un extrait de code.
1 votes
Il existe pratiquement un nombre infini de langues... voulez-vous en détecter une seule ? Ou est-ce qu'on parle seulement des langues les plus populaires ?
0 votes
Seulement les plus populaires (C/C++, C#, Java, Pascal, Python, VB.NET. PHP, JavaScript et peut-être Haskell).
13 votes
Haskell ne doit pas être populaire puisque je n'en ai jamais entendu parler ;-)
23 votes
Vous ne connaissez probablement pas grand-chose aux langages de programmation si vous n'avez pas entendu parler de Haskell.
4 votes
Il y a ce service en ligne qui le fait : algorithmia.com/algorithmes/PetiteProgrammer/
0 votes
Il est clair que la popularité de Haskell ne cesse de croître...