Veuillez lire les règles et les zones en gras également .
Écrivez un programme dans n'importe quelle langue, tant qu'il prend en charge l'interface graphique d'un système de fenêtres (ne peut pas être des consoles de texte, etc., et doit être une interface graphique / boîte à outils / fenêtre).
Le programme doit dire bonjour au monde de quelque manière que ce soit (image de démarrage, barre de menus, barre d'état, titre, vidéo, boîte de message, autres éléments de widget, etc.), tant qu'une fenêtre compatible avec l'interface graphique apparaît et affiche ce texte pendant trois secondes. . La personne qui peut coder cela dans le moins de code utilisé, compté en octets, prendra le gâteau.
Réponses:
Shell Unix, 31 caractères
Ce programme nécessite l' utilitaire xmessage (1) de X.Org. Il utilise les widgets traditionnels X Athena en noir et blanc (Xaw).
la source
timeout
etzenity
mais c'était plus long ...zenity
réponse par n.1 à codegolf.stackexchange.com/a/28451/4065timeout
commande. Peut-être que quelqu'un d'autre peut poster une nouvelle réponse qui l'utilise?Shell et gedit - 27 caractères
Si Hello World doit être affiché comme une seule chaîne, alors ses 28 caractères:
timeout
l'utilitaire exécute une commande pendant la durée spécifiée. Il garantit que gedit fonctionne pendant 3 secondes, en supposant un temps de démarrage minimal.N'importe quel éditeur peut être utilisé à la place de
gedit
. Si un éditeur nommé plus court est utilisé commegvim
, la longueur peut être réduite de 1 ou plusieurs caractères.Utilisation d'un éditeur initialement pensé par user80551 .
la source
Hello\ World
Hello <space> <close icon> <Document icon> World
kate
cela fonctionnerait au lieu degedit
?Applescript, 45 octets:
Pas souvent Applescript est l'une des réponses les plus courtes:
Collez dans l'éditeur Applescript et exécutez ou exécutez à l'aide
osascript
de la ligne de commande:la source
HTML + Javascript,
7360 caractèresCela fonctionne dans Chrome, mais peut ne pas être portable sur d'autres navigateurs.
Les suggestions des commentaires vont plus loin:
la source
108
caractères à73
. Du coup, tout le code est visible.<body onload=open('','_self'),setTimeout(close,3e3)>Hello world
semble enregistrer quelques caractères supplémentaires.<body onload=open('',name=setTimeout(close,3e3))>Hello world
script shell, 31
Je ne sais pas s'il est admissible. Requiert
notify-send
. Fonctionne au moins sur Ubuntu 12.04.la source
zenity
est beaucoup plus longue.coque + gedit / geany, 34
Cela suppose que gedit apparaît instantanément puisque les 3 secondes sont comptées à partir du début de l'émission de la commande. Peut être plus petit s'il existe un éditeur de texte GUI plus court que
gedit
.geany
fonctionne aussi pour le même nombre de caractères, justes/gedit/geany/g
EDIT: L'utilisation
timeout
est plus courte. /codegolf//a/28477/8766EDIT2: Quelqu'un peut-il confirmer si cela fonctionne avec
kate
?fusion, 32
Si exactement
Hello World
n'est pas requis, alorsmeld
peut être utilisé.la source
gedit
essaie d'ouvrir un fichier avec ce nom même s'il n'y a pas de fichier.gvim
il n'aura besoin que de 33 caractèreshalt
serait plus court mais je ne sais pas si être destructeur est autorisé. En outre, il nécessite des autorisations root, nous devons donc supposer que nous sommes root ou utilisersudo
ce qui coûte plus cher (et nécessite que l'utilisateur tape le mot de passe).VBScript, 58
la source
Python (pygame), 87
la source
[999,999]
tkinter
se révèle être plus courte.Tcl - 32 octets
J'ai remarqué que certaines de ces soumissions, comme celles du shell ou du javascript, vous permettent de taper le code dans la console. Si tel est le cas, je peux le raccourcir en:
Doit être tapé dans la console après avoir exécuté wish. Autrement dit, exécutez
wish
sans arguments qui vous donnera une console REPL puis tapez le code ci-dessus. Cela utilise le fait que tcl peut être des noms de commande / fonction indulgents et à saisie semi-automatique, mais uniquement en mode interactif. Donc, celaaf
exécute réellement laafter
commande etexi
s'exécuteexit
. Je voulais utiliserex
mais mon système a l'ex
éditeur installé.Soumission d'origine - 36 octets
Exécutez en utilisant
wish
au lieu detclsh
.la source
5251 caractères avec Mathematica(J'espère que cela compte comme une interface graphique compatible.)
la source
Java, 136 octets
Affiche le message
Hello World
comme titre d'un cadre. Après3
quelques secondes, le programme se ferme.Ressemble à ça:
Faites-le glisser plus grand:
Code étendu (c'est-à-dire lisible):
la source
enum
au lieu declass
pour enregistrer un autre personnage.R, 44
la source
PowerShell -
6352la source
Visual FoxPro - 23 caractères
Cela abuse du fait que VFP permet de ne pas mettre d'espace entre la chaîne à imprimer (que je viens de découvrir) et qu'il permet de raccourcir chaque mot-clé jusqu'à ses 4 premiers caractères.
Version non golfée:
la source
GTK +,
4745Ancienne version (score 47):
Pour une raison quelconque, zenity affiche un texte qui peut être traduit lorsque toutes les mises à jour sont terminées .
la source
--title
à--text
"Hello World"
pourHello\ World
C, 151 caractères
Pas la plus petite réponse. Je l'aime bien.
la source
'SAFE'
n'est pas un seul caractère.C #
101151Ce ne sera certainement pas la réponse la plus courte (car il existe déjà d'autres bonnes réponses étant beaucoup plus courtes) mais codegolf.SE a besoin de beaucoup plus de contributions C # à mon avis!
C # 121
Une alternative basée sur la réponse de Bob , mais avec WPF au lieu de WinForms:
Enregistre 3 caractères grâce à l'espace de noms plus court ...
la source
using
déclarations dans le nombre de caractères. Alternativement, vous pouvez les laisser de côté, mais vous devrez alors faire des choses commeSystem.Windows.Forms.MessageBox.Show
(un peu moins de caractères si ce n'est qu'une seule utilisation). Tel que votre code l'est actuellement, il ne se compilera ni ne s'exécutera.System.Windows.Forms.dll
, qui fait partie de la configuration de msbuild / de la ligne de commande de compilation. Cependant, le consensus général semble être que lorsqu'un programme complet est demandé,using
/import
/#include
/ etc. lorsque cela est nécessaire pour que le code compile et s'exécute sont requis, et tenter d'utiliser des astuces de ligne de commande du compilateur pour esquiver est mauvais.Lot (24)
Testé sur Windows 7, mais devrait fonctionner sur n'importe quelle version NT de Windows, en supposant que vous avez MSG.EXE dans votre dossier System32.
EDIT: Apparemment, MSG.EXE n'est pas disponible par défaut sur les versions domestiques de Windows. Sur Windows 7, par exemple, cela n'est disponible que dans les éditions Ultimate ou Business. Cependant, vous pouvez copier le fichier dans votre dossier System32 et le faire fonctionner. (Vous devez également copier le fichier MSG.EXE.MUI approprié pour obtenir les messages d'erreur appropriés, mais mon "script" fonctionne sans eux.)
Vous devez également installer un logiciel pour que la plupart de ces autres réponses fonctionnent, donc je ne pense pas que cela devrait être une disqualification.
la source
time:3
dans un dossier appelémsg
dans le répertoire courant?\
./
également en charge/
en charge à certains endroits, mais danscmd
,/xxx
est interprété comme un argument.APL (40)
la source
X.Close⊣⎕DL⍴⍕'X'⎕WC'Form' 'Hello World'
Lua + LÖVE, 67 octets
la source
Perl sur Windows (56)
la source
Perl 5, 47
Utilisation de Perl / Tk :
la source
-MTk
drapeau?Vue Rebol (r3gui), 49
Non golfé:
la source
Traitement, 77
Capture d'écran:
Édition 1: la position Y du texte peut être 9 au lieu de 10, comme indiqué par @ace.
Edit 2: 3000 peut être représenté comme 3e3 pour raser un personnage, également noté par @ace
la source
3e3
au lieu de3000
pour enregistrer un autre caractèrebash + ImageMagick (36 octets)
Testé sur Ubuntu 14.04 LTS et sur Fedora 20.
Plus joli, mais 10 octets de plus:
la source
CMD / Lot - 33 octets
Je crois que la fenêtre dans laquelle le terminal Windows CMD s'exécute compte comme GUI compatible.
Si vous n'avez pas la
sleep
commande sur votre système - alors vous pouvez utilisertimeout
ce qui vient par défaut dans Windows 7. Pour deux octets supplémentaires.Démarre une nouvelle fenêtre CMD avec le titre "Hello World" ( NON affiché dans le terminal lui-même, mais en tant que titre de la fenêtre GUI dans laquelle le terminal s'exécute), cette fenêtre se fermera dès que toutes les commandes analysées auront été exécutées - donc après
sleep 3
outimeout 3
a terminé.La fenêtre ressemble à ceci -
Remarque;
start
exécute les commandes données dans une nouvelle fenêtre - pas la fenêtre à partir de laquelle vous exécutez les commandes ci-dessus.la source
cmd "Hello world" cmd /ctimeout 3
Hello world dans la barre de titre pendant 3 secondes, mais cela ne compte probablement pas.start "Hello world"
Vous monsieur, êtes un génie.Python 3,
8372 octetsÉconomisez des octets en utilisant
tkinter
.L'ancienne méthode ajoutait un
Label
au cadre. Cette méthode définit le titre du cadre surHello World
.f.after(3000,exit)
s'exécuteexit()
après que les3000
millisecondes se soient écoulées.la source
turtle
a moins d'octets. = D codegolf.stackexchange.com/a/28548/14506Cobra - 180
la source
Rubis [avec chaussures] (44 caractères)
la source
C # 124
Loin du plus court :(
la source